Aller au contenu principal
Version: 20 R6

Boolean

Un champ, une variable ou une expression de type booléen peut être soit VRAI soit FAUX.

Fonctions booléennes

Les fonctions booléennes de 4D traitent des valeurs telles que Vrai, Faux et Non dans le thème Booléens consacré. Pour plus d'informations, veuillez vous reporter à la description de ces commandes.

Exemple

L'exemple suivant retourne Vrai dans la variable monBooléen si l'utilisateur a cliqué sur le bouton monBouton et Faux s'il n'a pas cliqué dessus. . Lorsqu'un bouton reçoit un clic, la variable du bouton prend la valeur 1.

 If(monBouton=1) // Si le bouton a reçu un clic
monBooléen:=True// monBooléen prend la valeur True
Else // Si le bouton n'a pas reçu de clic,
monBooléen:=False //monBooléen prend la valeur False
End if

L'exemple ci-dessus peut être simplifié et écrit en une seule ligne .

monBooléen:=(monBouton=1)

Opérateurs logiques

4D supporte deux opérateurs logiques : l'opérateur d'intersection (AND) et l'opérateur de réunion inclusive (OR). Le AND logique retourne TRUE si les deux expressions sont VRAIES. Le OR logique retourne TRUE si au moins une des expressions est VRAIE. Le tableau suivant décrit les opérateurs logiques :

OpérationSyntaxeRetourneExpressionValeur
ANDBooléen & BooléenBoolean("A" = "A") & (15 # 3)True
("A" = "B") & (15 # 3)False
("A" = "B") & (15 = 3)False
OUBooléen & BooléenBoolean("A" = "A") | (15 # 3)True
("A" = "B") | (15 # 3)True
("A" = "B") | (15 = 3)False

Voici la "table de vérité" pour l'opérateur logique "AND" :

Expr1Expr2Expr1 & Expr2
TrueTrueTrue
TrueFalseFalse
FalseTrueFalse
FalseFalseFalse

Voici la "table de vérité" pour l'opérateur logique "OR" :

Expr1Expr2Expr1 | Expr2
TrueTrueTrue
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse

Astuce : Si vous devez calculer une réunion exclusive (le "Ou" exclusif) entre Expr1 et Expr2, écrivez :

 (Expr1|Expr2) & Not(Expr1 & Expr2)  

Dans les contextes booléens, le langage 4D prend également en charge les opérateurs de court-circuit (&& et ||) et le concept de truthy et falsy.