Data Transformation Engine Functions and Expressions Reference Guide

Chapter 1 - Expressions and Evaluations Expressions That Evaluate to NONE
Functions and Expressions Reference Guide
38
If you want OrderMap to be evaluated even when SummaryRecord is missing,
use the entire Order as an input argument, rather than SummaryRecord. This
will ensure that OrderMap will be evaluated, even if SummaryRecord is missing.
Then, in the map OrderMap, you can still map from SummaryRecord.
The rule you should use is this:
OrderMap ( OrderRecord:Order:Input , Order:Input )
When an Input of an Executable Map Evaluates to NONE
The evaluation of a map referenced in an expression differs from the evaluation of
that map when it is executed as a functional map and the evaluation of a function
because of how the NONE is treated.
The evaluation of a map used as a function is different from the evaluation of that
map when it is run as an executable map. When a map is run as an executable, if
any input card data object has no content, the map will still run. This is not true
when that map is referenced as a function. If any input argument of a functional
map evaluates to NONE, the map will not evaluate.
Impact of Track Setting on Order of Output
This property setting determines whether objects are tracked according to content
or according to their position within a series. This setting will determine the
sequence in which those objects are evaluated when referenced.
For example, assume that RunsByInning is a component of BallGame.
BallGame is defined as an explicit format, delimited (by a colon) group. The data
for BallGame is as follows:
:2::1:1::1::3
Track Content. If BallGame has a Track setting of Content, all instances of
RunsByInning with content will be mapped before any empty instances. So, if
BallGame was mapped to itself, the output would be:
2:1:1:1:3
Track Places. If BallGame has a Track setting of Places, instances of
RunsByInning will be mapped in the sequence in which they occur, including
those instances that are empty. So, if BallGame was mapped to itself, the
output would match the input.
:2::1:1::1::3