IDOC parser and domain

The IDOC domain can be used to process messages that are sent to the integration node by SAP R3 clients across the WebSphere® MQ link for R3. Such messages are known as SAP ALE IDocs.

Note: The IDOC domain is deprecated and is not recommended for developing new message flows. Instead use the MRM domain with a TDS physical format. See MRM parser and domain.
A typical ALE IDoc message that has been sent from SAP to the WebSphere MQ link for R3 consists of an MQMD header, an MQSAPH header, and the ALE IDoc itself. The IDoc is made up of fixed size structures:
  • The first structure is the Control Structure (DC). This is a complex element 524 bytes long that contains a fixed set of SAP-defined simple elements.
  • One or more Data Structures (DDs). Each DD is a complex element 1063 bytes long that contains a fixed set of SAP-defined simple elements that occupies 63 bytes, followed by 1000 bytes of user-defined segment data.

IBM® Integration Bus uses the IDOC parser to read and write ALE IDocs that belong to the IDOC domain. When reading a message, the IDOC parser constructs a message tree from a bit stream. When writing a message, the IDOC parser creates a bit stream from a message tree.

The IDOC parser processes the SAP-defined elements in the DC, then, for each DD, the IDOC parser processes the SAP-defined elements, then calls the MRM parser to process the user-defined segment data, using its CWF physical format. The IDOC parser is therefore a model-driven parser, and requires that you create a message model in which to model the IDoc message, and deploy it to the integration node.

If you want the IDOC domain to parse a particular message, you must:
  1. Create a new message set with a CWF physical format, or locate an existing message set.
  2. Ensure that either the message set has its Default message domain project set to IDOC, or the IDOC check box (under Supported message domains) is selected, to indicate that the message set supports the IDOC domain.
  3. Create message definition files in the message set to represent your message. See Building the message model for the IDOC parser for the steps involved.
  4. Add the message set to a BAR file which generates a message dictionary for use by the MRM parser, and deploy the BAR file to the integration node.
  5. Select Message Domain as IDOC on the appropriate node in your message flow.
  6. Additionally, select Message model and Physical Format on the node. (You do not need to select Message).