SAP IDOC structure tutorial

Data Records  |  Control Record  |  Status Record  |  Tutorials

The full form of IDoc is Intermediate Document. It’s a SAP standard document format for exchanging data between different application servers. The Idoc interface will contain the data structure and processing logic. The data structure is known as IDoc.Using IDoc different application servers can be connection via a message based interface. It has an extensive exception handling before the data is stored in the application server. Electronic Data Interchange (EDI) and Application Link Enabling (ALE) are the main techniques using IDoc to exchange data between systems.

Segments are the basic building blocks of Idoc and store the actual data. SAP supplies some IDocs by default and they are known as basic types of idoc. We can add additional data to the existing basic types using reference segments. We can define our own IDoc types if the basic types won’t fit for our requirements.

Structure of an IDOC

Every IDoc consist 3 records they are

Control Record: It contains the general information about that IDoc. It stores the sender identification, receiver identification and IDoc type.Cotrol Records are stored in the data dictionary table EDIDC and it can be views by transaction code SE11.Idoc type is the key information for IDoc processor to interpret the data containing in that IDoc.

Important Fields containing in Control records are

  • Mestyp: (Logical message type)
  • Idoctp: (Idoc type -Basic structure of the IDoc)
  • Cimtyp: (Structure of customer extension)
  • Rcvprt: (Partner type of the receiver)
  • Rcvprn: (Partner number of the receiver)
  • Rcvpfc: (Partner function of the receiver)

Data Records: It contains the actual data to process.Data records are stored in the data dictionary table EDIDD.Data records consists with two parts segment name and segment data. For each segment type of the IDoc structure, there is a DDIC structure with the same name. A field string with this structure is used for creating a data record. The application data is mapped to the field string. The segment type is written to the field SEGNAM, and the field string is written to the field SDATA. This data record is then included in the internal table with the structure edidd.

The fields in data records are

  • Segnam: (Segment type)
  • Sdata: (Actual data with maximum 1000 byte-long character)

Status Record: It stores the status of IDOC. The status records are stored in the data dictionary table EDIDS.

The important fields in these records are