| 4D v20.1Null | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v20.1
 Null 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Null -> Résultat | ||||||||
| Paramètre | Type | Description | ||||||
| Résultat | Null |   | Valeur Null | |||||
Null retourne la valeur null, de type Null.
Cette fonction vous permet d'affecter ou de comparer la valeur null aux élements du langage 4D suivants :
| Eléments du langage 4D | Commentaire | 
| Valeurs de propriétés d'objets | La comparaison de Null avec une propriété d'objet vaut Vrai si la valeur de la propriété est null et Faux dans les autres cas. Par soucis de simplicité, comparer Null sera également Vrai si la propriété n'existe pas dans l'objet (i.e. est Indefinie), voir exemple 4. | 
| Eléments de collections | Lorsqu'une collection est étendue automatiquement par l'ajout d'éléments non adjacents, tous les éléments intermédiaires ajoutés prennent la valeur null par défaut. | 
| Variables de type objet (C_OBJET) | Voir (*) ci-dessous | 
| Variables de type collection (C_COLLECTION) | Voir (*) ci-dessous | 
| Variables de type pointeur (C_POINTEUR) | Voir (*) ci-dessous | 
| Variables de type image (C_IMAGE) | (*) Affecter la valeur null à une variable de ce type efface son contenu. Cela a le même effet qu'appeler la commande EFFACER VARIABLE | 
| variables variant (C_VARIANT) | 
Note : Cette commande ne peut pas être utilisée avec les champs scalaires de la base de données. Les valeurs Null dans les champs de la base sont prises en charge par le moteur SQL, et sont gérés via les commandes Valeur champ Null et FIXER VALEUR CHAMP NULL,
Exemples d'affectation et de test de la valeur null avec des propriétés d'objets :
 C_OBJET(vEmp)
 vEmp:=Creer objet
 vEmp.name:="Smith"
 vEmp.children:=Null
 
 Si(vEmp.children=Null) //vrai
 Fin de si
 Si(vEmp.name=Null) //faux
 Fin de si
 Si(vEmp.parent=Null) //vrai
 Fin de siNote : Cet exemple requiert que la notation objet soit activée dans la base.
Exemple d'affectation et de test de la valeur null avec une collection d'éléments :
 C_COLLECTION(myCol)
 myCol:=Creer collection(10;20;Null)
 ...
 Si(myCol[2]=Null)
  // si le 3e élément est null
    ...
 Fin de siNote : Cet exemple requiert que la notation objet soit activée dans la base.
Ces exemples illustrent les diverses manières d'affecter ou de comparer la valeur null à des variables :
  //Variable objet
 C_OBJET($o)
 $o:=Creer objet
 $o:=Null //équivaut à EFFACER VARIABLE($o)
 Si($o#Null) //équivaut à Si(OB Est defini($o))
 Fin de si  //Variable collection
 C_COLLECTION($c)
 $c:=Creer collection
 $c:=Null //équivaut à EFFACER VARIABLE($c)
 Si($c#Null)
 Fin de si  //Variable pointeur
 C_POINTEUR($p)
 $p:=->$v
 $p:=Null //équivaut à EFFACER VARIABLE($p)
 Si($p=Null) //équivaut à Si(Pointeur nil($p))
 Fin de si  //Variable image
 C_IMAGE($i)
 $i:=$vpicture
 $i:=Null //équivaut à EFFACER VARIABLE($i)
 Si($i#Null) //équivaut à Si(Taille image($i)#0)
 Fin de siCet exemple compare les différents résultats de la commande Indefinie et de la commande Null appliquées aux propriétés d'objets, en fonction du contexte :
 C_OBJET(vEmp)
 vEmp:=Creer objet
 vEmp.name:="Smith"
 vEmp.children:=Null
 
 $undefined:=Indefinie(vEmp.name) // Faux
 $null:=(vEmp.name=Null) // Faux
 
 $undefined:=Indefinie(vEmp.children) // Faux
 $null:=(vEmp.children=Null) // Vrai
 
 $undefined:=Indefinie(vEmp.parent) // Vrai
 $null:=(vEmp.parent=Null) // Vrai
	Produit :  4D
	Thème :  Langage
	Numéro :  
        1517
        
        
        
	Nom intl. :  Null
	Créé :  4D v16 R4
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	4D - Langage ( 4D v20)
	
	
	4D - Langage ( 4D v20.1)
	
	
	
 Ajouter un commentaire
Ajouter un commentaire