Input message from client and passed to message exit

Input messages from the client consist of the IMS TM Resource Adapter and user-written IMS Connect client application message structures.

This topic contains Product-sensitive Programming Interface information.

IMS TM Resource Adapter message structure - type 1

The following table shows the input message format supported by IMS Connect from an IMS TM Resource Adapter client.
Table 1. IMS Connect message format for IMS TM Resource Adapter client applications
Field Length Meaning
llll 4 bytes Length of entire message, including llll field.
IRM 28 bytes The common, fixed portion of the IRM.
IRM_MAP 0 bytes Position of the XID map when it is present.
OTMA HDRs 466 bytes Mapped by the HWSOMPFX macro in the IMS.SDFSMAC data set. For a description of the fields see OTMA header fields used by IMS Connect.
LL 2 bytes Length of data segment.
zz 2 bytes Reserved (set to binary zeros).
DATA n bytes User data with the transaction code first.
OTMA CTL HDR 32 bytes Mapped by the HWSOMPFX macro in the IMS.SDFSMAC data set. For a description of the fields see OTMA header fields used by IMS Connect.
LL 2 bytes Length of second data segment.
zz 2 bytes Reserved (set to binary zeros).
DATA n bytes User data in the second data segment (no transaction code).
...    
OTMA CTL HDR 32 bytes Mapped by the HWSOMPFX macro in the IMS.SDFSMAC data set. For a description of the fields see OTMA header fields used by IMS Connect.
LL 2 bytes Length of this and last data segment.
zz 2 bytes Reserved (set to binary zeros).
DATA n bytes User data with this data segment (no transaction code).
  ORG IRM_MAP  
IRM_XID 140 bytes Global transaction ID for two-phase commit processing.

User-written message structure - type 2

The following table shows the input message format supported by IMS Connect for user-written client applications.

The message format is supported by the HWSSMPL0 and HWSSMPL1 user message exit routines, as well as user-written user message exit routines. This message format is not supported by HWSJAVA0, HWSSOAP1, HWSCSLO0, or HWSCSLO1.

If you are using a user-written message exit routine, you can structure the message fields as required by the user exit. You can include fields that are used only by the user message exit or other fields that can be passed in the OTMA headers, such as the MID name.

The following is the data structure for all user-written client applications.

The transaction data in input messages from user-written IMS Connect client applications follows the user-defined IRM, or IRM extensions if extensions are defined, and is contained in one or more data segments. The data segments must conform to the format of LLZZDATA, where LL contains the total length of the data segment, ZZ contains binary zeros, and DATA contains the transaction code and transaction data or an IMS command.

The transaction data in input messages from user-written IMS Connect client applications follows the user-defined IRM and is contained in one or more data segments. The data segments must conform to the format of LLZZDATA, where LL contains the total length of the data segment, ZZ contains binary zeros, and DATA contains the transaction code and transaction data or an IMS command.

IMS command input must be submitted in a single data segment followed by EOM.
Table 2. IMS Connect message format for user-written client applications
Field Length Meaning
llll 4 bytes Length of entire message, including llll field.
Fixed IRM prefix 28 bytes The common, fixed portion of the IRM mapped by the HWSIMSCB macro in the IMS.SDFSMAC data set. For a description of the fields see Format of fixed portion of IRM in messages sent to IMS Connect.
User-defined IRM Variable length User-defined part of the IRM mapped by the HWSIMSCB macro in the IMS.SDFSMAC data set. For a description of the fields see Format of user portion of IRM for HWSSMPL0, HWSSMPL1, and user-written message exit routines.

HWSJAVA0, HWSSOAP1, HWSCSLO0, and HWSCSLO1 do not support the user-defined part of the IRM.

IRM extension Variable length The portion of the IRM that allows information to be sent to IMS Connect without requiring the IRM DSECT to expand. For a description of the fields see Format of IRM extensions.
LL 2 bytes Length of first data segment.
zz 2 bytes Reserved (set to binary zeros).
DATA n bytes User data with the transaction code first.
LL 2 bytes Length of second data segment.
zz 2 bytes Reserved (set to binary zeros).
DATA n bytes User data second data segment (no transaction code).
...    
LL 2 bytes Length of this data segment.
zz 2 bytes Reserved (set to binary zeros).
DATA n bytes User data segment (no transaction code).
LL 2 bytes End of message (set to binary 0000 0000 0000 0100).
zz 2 bytes Reserved (set to binary zeros).