Nouveau type supporté par 4D : Null

Traduit automatiquement de Deepl

4D introduit un nouveau type Null pour faciliter la gestion des objets et des collections. Grâce au type null vous pouvez représenter une valeur manquante et vérifier facilement si votre objet ou votre collection est correctement paramétré.

Le type null représente une valeur inconnue ou manquante. Ce type est spécial car il est impossible de faire un cast vers le type null ou de déclarer une variable de ce type et il ne peut être utilisé qu’avec des variables de type objet, collection, pointeur et image.

Attention à ne pas confondre la valeur null avec une chaîne vide ou un entier avec 0 par exemple, car 0 ou «  » sont des valeurs.

Null est très utile dans le cas d’une collection. Examinons un exemple concret : puisque les éléments de la collection ne sont pas typés par défaut, il n’est pas possible pour 4D de définir les éléments avec des valeurs par défaut. Pas de panique ; la valeur nulle à la rescousse !

C_COLLECTION($c)
$c:=Nouvellecollection
$c[3]:=10

//Résultats
//$c[0]=null
//$c[1]=null
//$c[2]=null
//$c[3]=10

Comment définir une valeur null?

Vous pouvez simplement utiliser la nouvelle commande : Null.

C_OBJECT($o)
$o:=Nouvelobjet
$o.quantity:=Null

Comment tester les valeurs null?

Vous pouvez tester les valeurs nulles avec la commande Null:

If ($o.quantity=Null)
ALERT("Please enter a quantity")
end if

Fabrice Mainguené
- Product Owner -Fabrice Mainguené a rejoint l'équipe du programme 4D en novembre 2016. En tant que Product Owner, il est en charge de rédiger les user stories puis de les traduire en spécifications fonctionnelles. Son rôle est également de s'assurer que l'implémentation de la fonctionnalité livrée répond au besoin du client.Après avoir obtenu une licence en informatique au CNAM, Fabrice a rejoint une petite société d'édition de logiciels en tant que développeur Windev. Il a ensuite travaillé pour différentes entreprises dans les domaines de l'industrie et du commerce en tant que développeur Windev et web ainsi que conseiller technique sur les nouvelles fonctionnalités.