4D v16.3OB GET PROPERTY NAMES |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
OB GET PROPERTY NAMES
|
OB GET PROPERTY NAMES ( Objekt ; arrEigenschaften {; arrTypen} ) | ||||||||
Parameter | Typ | Beschreibung | ||||||
Objekt | Objekt, Objektfeld |
![]() |
Strukturiertes Objekt | |||||
arrEigenschaften | Array Text |
![]() |
Namen der Eigenschaft | |||||
arrTypen | Array Lange Ganzzahl |
![]() |
Typen der Eigenschaft | |||||
Der Befehl OB GET PROPERTY NAMES gibt in arrEigenschaften die Namen der Eigenschaften im Objekt zurück, das im Parameter Objekt definiert ist.
Objekt muss zuvor über den Befehl C_OBJECT definiert werden oder ein 4D Objektfeld angeben.
Im Parameter arrEigenschaften übergeben Sie ein Array Text. Ist das Array nicht vorhanden, erstellt es der Befehl und passt die Größe automatisch an.
In arrTypen können Sie optional auch ein Array Lange Ganzzahl übergeben. Für jedes Element von arrEigenschaften gibt der Befehl in arrTypen den Typ des Werts zurück, der in der Eigenschaft gespeichert ist. Sie können die empfangenen Werte mit den folgenden Konstanten unter dem Thema Feld und Variablentypen vergleichen:
Konstante | Typ | Wert |
Is Boolean | Lange Ganzzahl | 6 |
Is JSON null | Lange Ganzzahl | 255 |
Is object | Lange Ganzzahl | 38 |
Is real | Lange Ganzzahl | 1 |
Is text | Lange Ganzzahl | 2 |
Object array | Lange Ganzzahl | 39 |
Testen, ob ein Objekt nicht leer ist:
ARRAY TEXT(arrNames;0)
ARRAY LONGINT(arrTypes;0)
C_OBJECT($ref_richard)
OB SET($ref_richard;"name";"Richard";"age";7)
OB GET PROPERTY NAMES($ref_richard;arrNames;arrTypes)
// arrNames{1}="name", arrNames{2}="age"
// arrTypes{1}=2, arrTypes{2}=1
If(Size of array(arrNames)#0)
// ...
End if
Das Element eines Objekt Array verwenden:
C_OBJECT($Children;$ref_richard;$ref_susan;$ref_james)
ARRAY OBJECT($arrayChildren;0)
OB SET($ref_richard;"name";"Richard";"age";7)
APPEND TO ARRAY($arrayChildren;$ref_richard)
OB SET($ref_susan;"name";"Susan";"age";4;"girl";True) //zusätzliches Attribut
APPEND TO ARRAY($arrayChildren;$ref_susan)
OB SET($ref_james;"name";"James")
OB SET NULL($ref_james;"age") //Attribut Null
APPEND TO ARRAY($arrayChildren;$ref_james)
OB GET PROPERTY NAMES($arrayChildren{1};$arrNames;$arrTypes)
// $arrayChildren{1} = {"name":"Richard","age":7}
// $arrNames{1}="name"
// $arrNames{2}="age"
// $arrTypes{1}=2
// $arrTypes{2}=1
OB GET PROPERTY NAMES($arrayChildren{2};$arrNames;$arrTypes)
// $arrayChildren{3} = {"name":"Susan","age":4,"girl":true}
// $arrNames{1}="name"
// $arrNames{2}="age"
// $arrNames{3}="girl"
// $arrTypes{1}=2
// $arrTypes{2}=1
// $arrTypes{3}=6
OB GET PROPERTY NAMES($arrayChildren{3};$arrNames;$arrTypes)
// $arrayChildren{3} = {"name":"James","age":null}
// $arrNames{1}="name"
// $arrNames{2}="age"
// $arrTypes{1}=2
// $arrTypes{2}=255
Produkt: 4D
Thema: Objekte (Sprache)
Nummer:
1232
Erstellt: 4D v14
Geändert: 4D v15
4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)