ORDA – Verabschieden Sie sich von leeren Räumen in Ihren Entitätsauswahlen

Wir alle kennen das. Sie haben eine schöne Oberfläche erstellt, die dem Benutzer eine Auswahl von Objekten anzeigt. Sie können Entitäten ablegen, um ihre Auswahl zu verfeinern, aber dann… erscheinen diese leeren Stellen, wo die abgelegten Entitäten waren.

 

Die Auswahl der Entitäten nach dem Ablegen neu aufbauen? Das war einmal! 4D 20 R6 führt eine praktische Funktion ein, die dieses Problem mit nur einer Zeile Code beseitigt.

 

Lesen Sie weiter, um zu erfahren, wie diese Funktion Ihre Oberfläche sauber und Ihre Benutzer zufrieden hält.

 

 

HDI_CleanEntitySelection

 

die Clean-Funktion für das Entity Selection Objekt

 

Schauen wir uns an, wie diese Funktion funktioniert.

 

Eine Entitätsauswahl wird angezeigt, und der Benutzer kann einige Entitäten löschen.

 

Das Listenfeld unten zeigt die Entitätsauswahl Form.persons an. Der Benutzer wählt einige von ihnen aus (Form.selected ) und klickt auf die Schaltfläche „Drop“. Wenn wir nur diesen Code ausführen:

 

Form.selected.drop()

Form.persons:=Form.persons

 

Wir erhalten dies:

 

 

Mit nur einer Zeile Code, dank der neuen Funktion clean() :

 

Form.persons:=Form.persons.clean()

 

Die leeren Stellen sind wie von Zauberhand verschwunden, so dass Ihre Schnittstelle sauber und benutzerfreundlich ist:

 

blank

 

Der saubere Parameter in der REST-API $entityset

 

Wenn Ihre Anwendung auf REST-APIs angewiesen ist, können Sie den clean-Parameter auch mit der $entityset-REST-API verwenden.

 

Wenn Sie ein Entityset haben, das gelöschte Entitäten enthält (erkennbar an dem blauen Objekt, das die __STAMP-Eigenschaft enthält), wie dieses:

 

{

"__DATACLASS": "Persons",

"__entityModel": "Persons",

"__GlobalStamp": 0,

"__COUNT": 3,

"__FIRST": 0,

"__ENTITIES": [

{


"__STAMP":
0


}
,

{

"__KEY": "2",

"__TIMESTAMP": "2024-05-23T09:26:19.658Z",

"__STAMP": 1,

"ID": 2,

"firstname": "Broddy",

"lastname": "Cristofanini"

},

{

"__KEY": "3",

"__TIMESTAMP": "2024-05-23T09:26:19.658Z",

"__STAMP": 1,

"ID": 3,

"firstname": "Candie",

"lastname": "Figin"

}

],

"__SENT": 3

}

 

Sie können ein neues Entitätsset ohne die gelöschten Entitäten erhalten, indem Sie die folgende Anfrage ausführen (949062617AF6408CB198B3CB41FB72FB ist die Entitätsset-ID):

 

/$entityset/949062617AF6408CB198B3CB41FB72FB?$clean=true&$method=entityset

 

Das Ergebnis? Ein Entityset ohne die gelöschten Einträge:

 

{

"__ENTITYSET": "/rest/Persons/$entityset/8F658F3BA1884DE6BEC1FCFF4A7938F0", xml-ph-0000@deepl.internal
"__DATACLASS": "Personen",

"__entityModel": "Personen",

"__GlobalStamp": 0,

"__COUNT": 2,

"__FIRST": 0,

"__ENTITIES": [

{

"__KEY": "2",

"__TIMESTAMP": "2024-05-23T09:47:50.933Z",

"__STAMP": 1,

"ID": 2,

"firstname": "Broddy",

"lastname": "Cristofanini"

},

{

"__KEY": "3",

"__TIMESTAMP": "2024-05-23T09:47:50.933Z",

"__STAMP": 1,

"ID": 3,

"firstname": "Candie",

"lastname": "Figin"

}

],

"__SENT": 2

}

 

Mit dieser neuen Funktion war es noch nie so einfach, die Auswahl von Entitäten zu verwalten. Sorgen Sie für eine aufgeräumte Benutzeroberfläche und zufriedene Benutzer!

Avatar
- Product Owner - Marie-Sophie Landrieu-Yvert ist seit 2017 als Product Owner im 4D Produktteam tätig. Als Product Owner ist sie für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen zuständig. Ihre Aufgabe ist es auch, sicherzustellen, dass die Implementierung der Funktionen den Anforderungen des Kunden entspricht. Marie-Sophie ist Absolventin der ESIGELEC Ingenieurschule und begann ihre Karriere als Ingenieurin bei IBM im Jahr 1995. Sie nahm an verschiedenen Projekten teil (Wartungs- oder Build-Projekte) und arbeitete als Cobol-Entwicklerin. Dann arbeitete sie als UML-Designerin und Java-Entwicklerin. In letzter Zeit bestand ihre Hauptaufgabe darin, funktionale Anforderungen zu analysieren und zu schreiben sowie Geschäfts- und Entwicklungsteams zu koordinieren.