| 4D v18OB GET PROPERTY NAMES | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v18
 OB GET PROPERTY NAMES 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| OB GET PROPERTY NAMES ( objet ; tabPropriétés {; tabTypes} ) | ||||||||
| Paramètre | Type | Description | ||||||
| objet | Objet |   | Objet structuré | |||||
| tabPropriétés | Tableau texte |   | Noms des propriétés | |||||
| tabTypes | Tableau entier long |   | Types des propriétés | |||||
La commande OB GET PROPERTY NAMES retourne dans tabPropriétés les noms des propriétés contenues dans l’objet de langage désigné par le paramètre objet.
objet doit avoir été défini via la commande C_OBJECT ou désigner un champ objet 4D.
Passez dans le paramètre tabPropriétés un tableau texte. Si le tableau n’existe pas, la commande le crée et le dimensionne automatiquement.
Optionnellement, vous pouvez passer dans tabTypes un tableau entier long. Pour chaque élément de tabPropriétés, la commande retournera dans tabTypes le type de la valeur stockée dans la propriété. Vous pouvez comparer les valeurs reçues aux constantes suivantes du thème Types champs et variables :
| Constante | Type | Valeur | 
| Is Boolean | Entier long | 6 | 
| Is collection | Entier long | 42 | 
| Is null | Entier long | 255 | 
| Is object | Entier long | 38 | 
| Is real | Entier long | 1 | 
| Is text | Entier long | 2 | 
| Object array | Entier long | 39 | 
Vous souhaitez tester qu’un objet n’est pas vide :
 ARRAY TEXT(tabNoms;0)
 ARRAY LONGINT(tabTypes;0)
 C_OBJECT($ref_richard)
 OB SET($ref_richard;"nom";"Richard";"age";7)
 OB GET PROPERTY NAMES($ref_richard;tabNoms;tabTypes)
     //tabNoms{1}="nom", tabNoms{2}="age"
     //tabTypes{1}=2, tabTypes{2}=1
 If(Size of array(tabNoms)#0)
        //...
 End ifUtilisation d’un élément de tableau d’objets :
 C_OBJECT($Children;$ref_richard;$ref_susan;$ref_james)
 ARRAY OBJECT($arrayChildren;0)
 
 OB SET($ref_richard;"nom";"Richard";"age";7)
 APPEND TO ARRAY($arrayChildren;$ref_richard)
 OB SET($ref_susan;"nom";"Susan";"age";4;"fille";True) //attribut supplémentaire
 APPEND TO ARRAY($arrayChildren;$ref_susan)
 OB SET($ref_james;"nom";"James")
 OB SET NULL($ref_james;"age") //attribut null
 APPEND TO ARRAY($arrayChildren;$ref_james)
 
 OB GET PROPERTY NAMES($arrayChildren{1};$tabNoms;$tabTypes)
  // $arrayChildren{1} = {"nom":"Richard","age":7}
  // $tabNoms{1}="nom"
  // $tabNoms{2}="age"
  // $tabTypes{1}=2
  // $tabTypes{2}=1
 
 OB GET PROPERTY NAMES($arrayChildren{2};$tabNoms;$tabTypes)
  // $arrayChildren{3} = {"nom":"Susan","age":4,"fille":true}
  // $tabNoms{1}="nom"
  // $tabNoms{2}="age"
  // $tabNoms{3}="fille"
  // $tabTypes{1}=2
  // $tabTypes{2}=1
  // $tabTypes{3}=6
 
 OB GET PROPERTY NAMES($arrayChildren{3};$tabNoms;$tabTypes)
  // $arrayChildren{3} = {"nom":"James","age":null}
  // $tabNoms{1}="nom"
  // $tabNoms{2}="age"
  // $tabTypes{1}=2
  // $tabTypes{2}=255
	Produit :  4D
	Thème :  Objets (Langage)
	Numéro :  
        1232
        
        
        
	
	Créé :  4D v14
	Modifié :  4D v15
	Modifié :  4D v16 R4
	
	
	
	
	
	
	
	
	
	
	
	4D - Langage ( 4D v18)
	
	
	
	
	
 Ajouter un commentaire
Ajouter un commentaire