Including RTL variables in PXML expressions
You may want your PXML expression to specify a variable. For this, we use RTL expressions embedded in curly braces.
Note: We are now mixing two languages. The content within the braces is RTL, the content
outside the braces is a PXML expression.
The rules for embedding RTL in PXML are:
- wherever a numeric constant is allowed in PXML, you can insert an RTL numeric expression (enclosed in curly braces) instead.
- wherever a string constant is allowed in PXML, you can insert an RTL string expression (enclosed in curly braces) instead.
For example, consider this expression:
max(10cm,width("HELLO"))
This PXML
expression contains one numeric constant ("10") and one string constant ("HELLO"). These constants
can be replaced by data variables, enclosed in curly
braces:max({orderline.orders.shipcity.trim().length()}cm,width("{orderline.orders.shipcity}"))
Tip: It is good practice to use the
trim()
function to remove extra whitespace from a string
expression.For this expression to be legal, the variable order_line.titlewidth has to be of type Numeric, and the variable order_line.title has to be of type String.
Note: You cannot construct a dynamic expression where the function names (such as
max
or width
) or the unit names (such as cm
) are
dynamic.