Expression evaluator
Calculate the result of an expression with integers, decimals, numeric variables, string variables for string comparisons, arithmetic and Boolean operators, or a set of functions.
Properties
Property  Description 

Expression  The expression to be calculated. The expression can contain an unlimited number of correctly opened and closed parentheses. If the expression does not follow the correct syntax, the converter will not perform the calculation. 
Mode  The direction of the dynamic link:

Source
One or more variables, identified by a placeholder with an index number in the following format {index}. The index number is progressive, must be an integer greater than zero {0}.
The placeholders can appear in any order in the expression.
Valid literal values
 Boolean true and false.
 Integers.
 Decimals where the decimal separator must be a point.
 Hexadecimal numbers with the prefix "0x".
 Text such as a string delimited by double quotation marks.TIP: Double quotation marks repeated twice ("") are interpreted as an escape sequence.
Valid operators
 Arithmetical:+,,*,/,%, and the unary operator
 Bitwise:&,,^,~
 Shift:<<,>>
 Logics:&&,,!
 Unary casting of(<data_type>)type
 Comparison<,<=,>,>=,==,!=NOTE:The comparison operators apply to:
 The numeric data
 DateTime data
 Duration data
The operators:==and!=also apply to String and LocalizedText data types.
Data type conventions
 Literal integers areInt32.
 Decimal literals areDouble.
 Numerical values are considered to beInt32.
 Literals true and false are interpreted asBoolean.
 The / operator always returns aDoublevalue.
 The % operator generates an exception when there is division by modulo zero.
 The % operator acceptsFloatandDoubleoperands.
 All functions return aDoublevalue except for sign, which returns anInt32value.
 The unary casting operator accepts data types:
 bool, Boolean
 sbyte, SByte
 short, Int16
 int, Int32
 long, Int64
 byte, Byte
 ushort, UInt16
 uint, UInt32
 ulong, UInt64
 float, Single
 double, Double
Available functions
The following mathematical functions are available:
Function  Calculated value  Example 

max  Maximum of two values.  max ({0}, {1}) 
min  Minimum of two values.  min ({0}, {1}) 
avg  Average of given values.  avg ({0}, {1}) 
abs  Absolute value.  abs ({0}) 
trunc  Integer part of a decimal number.  trunc ({0}) 
ceil  Approximated value by excess.  ceil (({0} + {1})/2) 
floor  Approximated value by defect.  floor (({0} + {1})/2) 
round  Approximation to the nearest integer.  round (({0} + {1})/2) 
sqrt  Square root.  sqrt ({1}) 
sign  0 if the argument value is greater than zero.1 if the argument value is less than zero.  sign ({1}) 
Output
The resulting value of the expression.
Logical representation
Example of a logical conversion in the
Complex Dynamic Link Editor:
Provide Feedback