4D v14.3

OB FIXER

Accueil

 
4D v14.3
OB FIXER

OB FIXER 


 

OB FIXER ( objet ; propriété ; valeur {; propriété2 ; valeur2 ; ... ; propriétéN ; valeurN} ) 
Paramètre Type   Description
objet  Objet in Objet structuré
propriété  Texte in Nom de la propriété à définir
valeur  Texte, Date, Booléen, Pointeur, Numérique, Objet in Nouvelle valeur de la propriété

La commande OB FIXER permet de créer ou de modifier une ou plusieurs paires de propriété/valeur dans l’objet de langage désigné par le paramètre objet.

objet doit avoir été défini via la commande C_OBJET.

Passez dans le paramètre propriété le libellé de la propriété à créer ou à modifier. Si la propriété existe déjà dans objet, sa valeur sera mise à jour. Si elle n’existe pas, elle est créée.
Attention, le paramètre propriété tient compte des majuscules/minuscules. 

Passez dans le paramètre valeur la valeur de la propriété à définir. Plusieurs types de données sont pris en charge. A noter que :

  • si vous passez un pointeur, il est conservé tel quel, il est évalué à l’aide de la commande JSON Stringify,
  • les dates doivent être au format "\"YYYY-MM-DDTHH:mm:ssZ\""
  • si vous passez une heure, elle est automatiquement convertie en réel dans objet.
  • si vous passez un objet de langage, la commande utilise la référence de l’objet et non une copie.

Création d’un objet et ajout d’une propriété de type texte :

 C_OBJET($Object)
 OB FIXER($Object ;"prénom";"John";"nom";"Smith")
     //$Object = {"prénom":"John","nom":"Smith"}

Création d’un objet et ajout d’une propriété de type booléen :

 C_OBJET($Object)
 OB FIXER($Object ;"nom";"smith";"age";42;"client";Vrai)
     //$Object = {"nom":"smith","age":42,"client":true}

Modification d’une propriété :

     //$Object = {"prénom":"John","nom":"Smith"}
 OB FIXER($Object ;"prénom";"Paul")
     //$Object = {"prénom":"Paul","nom":"Smith"}

Ajout d’une propriété :

     //$Object = {"prénom":"John","nom":"Smith"}
 OB FIXER($Object ;"service";"Comptabilité")
     //$Object = {"prénom":"Paul","nom":"Smith","service":"Comptabilité"}

Renommage d’une propriété :

 C_OBJET($Object)
 OB FIXER($Object ;"nom";"James";"age";35)
     //$Object = {"nom":"James","age":35}
 OB FIXER($Object ;"prénom";OB Lire($Object ;"nom"))
     //$Object = {"prénom":""James","nom":"James","age":35}
 OB SUPPRIMER($Object ;"nom")
     //$Object = {"prénom":""James","age":35}

Utilisation d’un pointeur :

     //$Object = {"prénom":"Paul","nom":"Smith"}
 C_TEXTE($nom)
 OB FIXER($Object ;"nom";->$nom)
     //$Object = {"prénom":"Paul","nom":"->$nom"}
 $JsonString:=JSON Stringify($Object)
     //$JsonString="{"prénom":"Paul","nom":""}
 $nom:="Wesson"
 $JsonString:=JSON Stringify($Object)
     //$JsonString="{"prénom":"Paul","nom":"Wesson"}

Utilisation d’un objet :

 C_OBJET($ref_smith)
 OB FIXER($ref_smith ;"nom";"Smith")
 C_OBJET($ref_emp)
 OB FIXER($ref_emp ;"employé";$ref_smith)
 $Json_string :=JSON Stringify($ref_emp)
     // $ref_emp = {"employé":{"nom":"Smith"}} (objet)
     // $Json_string = "{"employé":{"nom":"Smith"}}" (chaîne)

Vous pouvez également changer une valeur à la volée :

 OB FIXER($ref_smith ;"nom";"Smyth")
     // $ref_smith = {"employé":{"nom":"Smyth"}}
 $string :=JSON Stringify($ref_emp
     // $string = "{"employee":{"nom":"Smyth"}}"

Utilisation d’un tableau d’objets :

 C_TEXTE($jsonString)
 C_OBJET($Contact)
 OB FIXER($Contact;"prénom";"Alan")
 OB FIXER($Contact;"nom";"Monroe")
 OB FIXER($Contact;"age";40)
 OB FIXER($Contact;"téléphone";"[0140879200,0140879201]")
 
 $jsonString:=JSON Stringify($Contact)
 
     // Valeur de $Contact :
     // {"nom":"Monroe","téléphone":"[0140879200,0140879201]","age":40,
     // "prénom":"Alan"}
 
     // Valeur $jsonString :
     // "{"nom":"Monroe","téléphone":"[0140879200,0140879201]",
     // "age":40,"prénom":"Alan"}"

 
PROPRIÉTÉS 

Produit : 4D
Thème : Objets (Langage)
Numéro : 1220
Nom intl. : OB SET

 
HISTORIQUE 

New
Créé : 4D v14

 
VOIR AUSSI  

OB FIXER NULL
OB FIXER TABLEAU
OB SUPPRIMER

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)