Previous Topic: Data Mapping for NCL Tokens

Next Topic: Send Data When Data Mapping Is Not Supported

Data Mapping and Mapping Services

When sending data from an MDO, the MDO name specified determines the length of the data unit to be sent. The map name sent by default is the fully qualified map name hierarchy as defined to Mapping Services.

For example, if a CNM alert record was in an MDO named NEWS, mapped by the map named CNM, then the second Product Set Identifier sub-vector within that record might be referenced from NCL as:

NEWS.NMVT.ALERT.PSID{2}

If the Product Identifier sub-vector within it was the subject of a send operation it can be sent by:

&APPC SEND_DATA MDO=NEWS.NMVT.ALERT.PSID{2}.PRODID

However, the fully qualified map name hierarchy for the object is:

CNM.NMVT.ALERT.PSID.PRODID

as defined to Mapping Services, and this will be the map name sent. If the target system understands this mapping hierarchy it will reconstruct the MDO and map it accordingly. For example a receive request of:

&APPC RECEIVE_AND_WAIT MDO=NEWSREC

would result in the object being:

NEWSREC.NMVT.ALERT.PSID.PRODID

Note: All name instances are now implied to be 1, as only the second PSID instance was selected for the send. No data existing in any of the elements of the intervening name segments is sent, however the qualified names are sent to provide the context of the actual data transmitted.

If the entire MDO had been sent, for example:

&APPC SEND_DATA MDO=NEWS

then both PSIDs would be received and the entire NEWSREC structure received would be identical to the NEWS structure sent.

Again, you can choose to override the map name sent, allowing the target system to implement data interpretation independently.