Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
entitySelection.extract
|
entitySelection.extract ( propertyPath {; targetPath}{; propertyPath2 ; targetPath2 ; ... ; propertyPathN ; targetPathN}{; option}) -> Funktionsergebnis | ||||||||
Parameter | Typ | Beschreibung | ||||||
propertyPath | Text |
![]() |
Pfad der Eigenschaft, deren Werte in die neue Collection extrahiert werden | |||||
targetPath | Text |
![]() |
Pfad oder Name der Eigenschaft im Ziel | |||||
option | Lange Ganzzahl |
![]() |
ck keep null: Null Eigenschaften in die zurückgegebene Collection einbinden (wird standardmäßig ignoriert). Wird nicht berücksichtigt, wenn targetPath übergeben ist. |
|||||
Funktionsergebnis | Collection |
![]() |
Collection mit den extrahierten Werten | |||||
Die Methode entitySelection.extract gibt eine Collection mit den Werten von propertyPath zurück, die aus der Entity-Selection extrahiert wurden.
propertyPath kann sich beziehen auf:
Ist propertyPath ungültig, wird eine leere Collection zurückgegeben.
Diese Methode akzeptiert zwei Syntaxarten:
Mit dieser Syntax füllt entitySelection.extract die zurückgegebene Collection mit den Werten von propertyPath der Entity-Selection.
Standardmäßig werden Entities, für die propertyPath null oder undefiniert ist, in der zurückgegebenen Collection ignoriert. Sie können die Konstante ck keep null im Parameter Option übergeben, damit diese Werte in der zurückgegebenen Collection als Null Elemente eingefügt werden.
Mit dieser Syntax füllt entitySelection.extract die zurückgegebene Collection mit den Eigenschaften von propertyPath und jedes Element der Collection ist ein Objekt mit den Eigenschaften von targetPath, gefüllt mit den entsprechenden Eigenschaften von propertyPath. Null Werte werden beibehalten (der Parameter option wird mit dieser Syntax ignoriert).
Bei mehreren propertyPath muss für jede ein targetPath übergeben sein. Nur gültige Paare [propertyPath, targetPath] werden extrahiert.
Hinweis: Entities einer Collection von Entities, die über [ ] zugänglich sind, werden nicht erneut aus der Anwendung geladen.
Gegeben sind folgende Tabelle und Verknüpfung:
C_COLLECTION($firstnames;$addresses;$mailing;$teachers)
C_OBJECT($status)
//
//
//$firstnames ist eine Collection von Strings
$firstnames:=ds.Teachers.all().extract("firstname")
//
//$addresses ist eine Collection von Entities verknüpft mit der Dataclass Address
//Null Werte für address werden extrahiert
$addresses:=ds.Teachers.all().extract("address";ck keep null)
//
//
//$mailing ist eine Collection von Objekten mit Eigenschaften "who" und "city"
//Inhalt der Eigenschaft "who" ist vom Typ String
//Inhalt der Eigenschaft "city" ist vom Typ String
$mailing:=ds.Teachers.all().extract("lastname";"who";"address.city";"city")
//
//$teachers ist eine Collection von Objekten mit Eigenschaften "where" und "who"
//Inhalt der Eigenschaft "where" ist String
//Inhalt der Eigenschaft "who" ist eine Entity-Selection (Dataclass Teachers)
$teachers:=ds.Address.all().extract("city";"where";"teachers";"who")
//
//$teachers ist eine Collection von Entity-Selections
$teachers:=ds.Address.all().extract("teachers")
Produkt: 4D
Thema: ORDA - EntitySelection
Erstellt: 4D v18 R3
4D Programmiersprache ( 4D v19)
4D Programmiersprache ( 4D v19.1)
4D Programmiersprache ( 4D v19.4)
4D Programmiersprache ( 4D v19.5)
4D Programmiersprache ( 4D v19.6)
4D Programmiersprache ( 4D v19.7)
4D Programmiersprache ( 4D v19.8)