Input argument to a functional map evaluates to NONE

If an occurrence of input argument is missing, the functional map is not evaluated.

A file that has no content will still allow the functional map to execute.

For example, in the following functional map expression the GroupInfo object is optional with a component range of (0:3):

MakeForm (EntryForm:Input, GroupInfo:Input)

If there are no occurrences of GroupInfo in the source data object, the specified MakeForm functional map is not evaluated.

In the following map rule, the OrderMap functional map is specified with the (DetailRecord:Order:Input, SummaryRecord:Order:Input) arguments:

OrderMap (DetailRecord:Order:Input, SummaryRecord:Order:Input)

The data object SummaryRecord has an optional component range of (0:1). For the first Order, SummaryRecord is present. The functional map OrderMap is evaluated. In the second Order, SummaryRecord is missing. The map OrderMap is not evaluated for that second Order.

To evaluate the entire OrderMap if SummaryRecord may be absent from the source data, specify the entire Order as an input argument, rather than SummaryRecord. Specifying the entire Order ensures that OrderMap is evaluated, even when SummaryRecord is missing. Then, in the functional map OrderMap, you can still map from SummaryRecord.