Saltar al contenido principal
Versión: 20 R5

Boolean

Un campo, variable o expresión booleana puede ser TRUE o FALSE.

Funciones booleanas

4D ofrece las funciones booleanas True, False y Not en el tema dedicado Booleanos. Para más información, consulte las descripciones de estos comandos.

Ejemplo

Este ejemplo define una variable booleana basada en el valor de un botón. Devuelve True en myBoolean si el botón myButton fue presionado y False si el botón no fue presionado. Cuando se hace clic en un botón, la variable del botón toma el valor 1.

 If(myButton=1) //Si se ha presionado el botón
myBoolean:=True //myBoolean toma el valor True
Else //Si el botón no fue pulsado
myBoolean:=False //myBoolean toma el valor False
End if

El ejemplo anterior puede simplificarse en una línea.

myBoolean:=(myButton=1)

Operadores lógicos

4D soporta dos operadores lógicos que trabajan sobre expresiones booleanas: la conjunción (AND) y la disyunción inclusiva (OR). Un AND lógico devuelve TRUE si ambas expresiones son TRUE. Un OR lógico devuelve TRUE si al menos una de las expresiones es TRUE. La siguiente tabla muestra los operadores lógicos:

OperaciónSintaxisDevuelveExpressionValor
ANDBooleano & BooleanoBoolean("A" = "A") & (15 # 3)True
("A" = "B") & (15 # 3)False
("A" = "B") & (15 = 3)False
OBooleano | BooleanoBoolean("A" = "A") | (15 # 3)True
("A" = "B") | (15 # 3)True
("A" = "B") | (15 = 3)False

La siguiente es la tabla de verdad del operador lógico AND:

Expr1Expr2Expr1 & Expr2
TrueTrueTrue
TrueFalseFalse
FalseTrueFalse
FalseFalseFalse

La siguiente es la tabla de verdad del operador lógico OR:

Expr1Expr2Expr1 | Expr2
TrueTrueTrue
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse

Consejo: si necesita calcular la conjunción exclusiva entre Expr1 y Expr2, escriba:

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

En contextos booleanos, el lenguaje 4D también soporta los operadores cortocircuitos (&& y ||) y el concepto truthy y falsy.