Booleans
Applies To: Microsoft Dynamics AX 2012 R3, Microsoft Dynamics AX 2012 R2, Microsoft Dynamics AX 2012 Feature Pack, Microsoft Dynamics AX 2012
The boolean data type contains a value that evaluates to either true or false. You can use the X++ reserved literals true and false where ever a Boolean expression is expected.
Boolean expressions are also named logical expressions.
Boolean Values are Represented as Integers
In X++ the internal representation of a boolean is an integer. You can assign any integer value to a variable declared of type boolean. The integer value 0 (zero) evaluates to false, and all others evaluate to true.
The X++ literal false is the integer value 0, and true is 1.
The following table lists several expressions and indicates whether they evaluate to true or false.
Expression |
Boolean value |
---|---|
1 |
True |
44 |
True |
true |
True |
(false == 0) |
True |
(true == 1) |
True |
(true == 8) |
False |
false |
False |
0 |
False |
Declaring Booleans
Boolean declaration |
= |
boolean variable { , variable } ; |
variable |
= |
identifier [ option ] |
option |
= |
Arrayoptions | initialization |
// Simple declaration of a boolean variable, b
boolean b;
// Multiple declaration
boolean b1,b2;
// Boolean variable is initialized to true
boolean b3 = true;
// Declares a dynamic array of Booleans
boolean b4[];
Automatic Conversions
Because the internal representation of a boolean is an integer, boolean values are automatically converted into integers and reals.
Using Booleans in Expressions
You usually use Booleans in conditional statements, or as parts or results of logical expressions. The following example shows both.
void main()
{
//Declares a boolean called exprValue
boolean exprValue;
//Assigns ExprValue the truth value of (7*6 == 42)
exprValue = (7*6 == 42);
;
if (exprValue)
{
print "OK";
}
}
Here, the variable exprValue contains the value true, because 7*6 is equal to 42; so, the expression is true. The conditional statement is true; the word "OK" is displayed on the screen.
Overview of Booleans
Keyword |
boolean |
Size of data type |
Byte |
Scope of data type |
false (0) and true (1) |
Default value |
false |
Implicit conversions |
Automatically converted to int, date, and real |
Explicit conversions |
none |
See also
Announcements: New book: "Inside Microsoft Dynamics AX 2012 R3" now available. Get your copy at the MS Press Store.