Top 37 Sap Idocs Interview Questions You Must Prepare 19.Mar.2024

To be able to communicate with a partner via an IDoc interface, each system needs to maintain a partner profile. A partner profile is a mechanism by which the system can specify what kind of messages (message types) it can send or receive.

Partner profiles can be maintained in WE20.

An IDoc (Intermediate document) is a vehicle that is used to transfer data from one system to another.

IDoc is not a technology of some sort , but it is just a container that holds data . 

It holds data in a structured format i.e. in the Fields of the Segments.

you will find that a Message type is always associated with an IDoc type. , a Message type is used just to specify the kind of information that a system can send or receive to or from another system.

IDOC type specifies Data Structure and IDOC is the instance based on IDOC type.

ALE/IDocs are used for asynchronous information interchange.while BAPIs are used for synchronous information interchange

Open the IDOC in error in WE02 Transaction.

Expand the status records, and see which segment is in error.

Replace the error value with the correct value and click on the save button.

Now go to transaction BD87, enter the IDOC number and click on execute. It will re-process the IDOC with the modified data and display the success message if there are no errors in the edited data.

Used to define the characteristics of communication links to a remote system on which a functions needs to be executed.

  • EDIDC stores control/header record.
  • EDIDD/EDID4 stores data records.
  • EDIDS stores status records.

EDI stands for Electronic Data Interchange.It related to the electronic exchange of business data in a structured format between two systems. The EDI subsystem generally converts the Idoc data into one of the many EDI formats and generates an EDI file in an X12 format. The middleware then translates the X12 file to an IDOC format and the IDOC is sent to the SAP system.

The distribution model describes how ALE messages flow between different logical systems.

You can mention the sender and receiver logical systems, the message type to be distributed and also distribute data(IDocs) based on certain conditions by using the distribution model.

  1. Application document is created.
  2. IDOC is generated
  3. Idoc is transferred from SAP to Operating system layer
  4. Idoc is converted into EDI standards
  5. Edi document is transmitted to the business partner
  6. The Edi Subsystem report status to SAP

If we have any error in IDOC then we can edit it by using WE02 Tcode,after that you can reprocess the corrected IDOC by using BD87tcode.

  1. EDI transmission received
  2. EDI document is converted into an IDOC
  3. IDOC is transferred to the SAP layer
  4. The application document is created
  5. The application document can be viewed.

The message control component enables us to encapsulate business rules with out having to write ABAP programs.

Imagine ,If both the systems have different configurations then we need to convert the measurements like Unit of measure/Text id that is converting field value from one value to another.

A port is a communication channel through which Messages can be sent or received in SAP .

The common port types are the TRFC Port and the File Port.

If both sender and receiver mention TRFC ports, data is exchanged via RFC connections.

If however , a file port is mentioned , the IDOC is written in a flat file at the specified location at the sender system.Then a FTP transfer should be done from that location to the receiver system or a Middleware that will send the file to the receiver system.

The transaction to maintain ports is WE21.

Data in IDOc is stored in segments, the output from Idoc is obtained by reading the data stored in its respective segments.

Common configurations on both sides:

  • Creating Logical System Names SALE
  • Setup RFC destinations SM59
  • Defining Port Destinations WE21 

In Source system:

  • Segment Creation WE31
  • Basic IDOC Type Creation WE30
  • Message Type Creation WE81
  • Assign Message Type To Basic IDOC Type WE82
  • Distribution Model BD64
  • Writing Report Program SE38
  • Partner Profile WE20
  • Message control NACE
  • Check IDOCs WE02, WE05

In Destination System:

  • Creating FM SE37
  • Assign FM to Logical Message WE57
  • Define I/P method for Inbound FM BD51
  • Create Process Code WE42
  • Generate Partner Profile BD64 

IDocs are created, sent and posted in a specific order. This prevents errors occurring when inbound IDocs are processed. Interdependent messages can be distributed serially in different ways, as described in the following sections.

Serialization Using Message Types

Serialization Using Business Objects.

You can even have an IDoc extension in which you can use the existing Basic IDoc type and add extra segments and fields to it. Usually we extend an IDoc when the standard SAP IDoc type is not able to cater to the business process. 

EDI has two process:

  1. Outbound process
  2. Inbound process

We can use BD87 ,if you want to reprocess same idoc number.

SAP memory  is Global Memory is available to a user during the entire duration of a terminal session. Its contents are retained across transaction boundaries as well as external and internal sessions.

The contents of the ABAP/4 memory are retained only during the lifetime of an external session.

IDoc Type vs. IDoc: 

An IDoc Type is nothing but a collection of one or more structures defined in a system with specific fields. It does not hold Data.

However, an IDoc is something that holds the values in the fields of the structure defined by IDOC type. 

The transaction code to view an IDoc type (Basic and extension) is WE30.

Examples: ORDERS04, DEBMAS04, MATMAS04, CREMAS04.

These are all SAP standard Basic IDoc Types. 

When an IDoc is sent from one system to another , it goes through variuos stages.The IDoc status indicates the stage that the Idoc in currently in.

There about 75 IDoc statuses.

0-49 indicates an Outbound IDoc and 50-75 as Inbound IDoc. 

01  IDoc generated

02  Error passing data to port

03  Data passed to port OK

51  Application document not posted

52  Application document not fully posted

53  Application document posted

When it comes to debugging, I believe we can make use of WE19

We can reprocess edited IDOC's using program RBDAGAIE (Se38 prorgram)

  • Creation of Segment Types
  • Run T-code ‘WE31’ to create segment type
  • Creation of IDoc type
  • Run T-code ‘WE30’ to create custom IDoc type
  • Creation of logical message types 
  • Run T-code ‘WE81’ to create the logical message types.
  • Linking Message type and IDoc type.
  • Run T-Code ‘WE82’. Now we have to link these created IDoc types and Message types.

We can generate IDOC using function module MASTER_IDOC_DISTRIBUTE

The system provides several filter objects for each message type to filter data. We have to choose the appropriate filter for our business needs and add it to our distribution model.

We can create filter objects for a receiver in Distribution Model View: Tcode BD64.

There are three types of records in SAP ALE Idocs:

Control Records: IDoc is stored in standard table EDIDC.

Data Records:  IDoc is stored in standard table EDIDD.

Status Records: IDoc is stored in standard table EDIDS.

We can reprocess error IDOC's(status 51) using program RBDAGAIN

We are trying to generate the idocs with 12 records, and u find only 10 records idocs created remaining records are missing.We have to check with the filter set up for the records for its receiving partner system logical system . Correct the filters then try regenerating the idocs(missing records).

IDOC has three type of records:

  1. Control Record -- contains control info ex: receiver port etc
  2. Data record -- Contains IDOC data
  3. Status -- holds IDOC status.

  • Reduced Data entry errors
  • Reduced processing time
  • Availability of data in electronic form
  • Reduced inventories and better planning
  • Standard means of communications
  • Better business process

ALE stands for Application Link Enabling which links two systems.

ALE is a technology that can enable exchange of data between two different Systems ( Sap - Sap OR Sap - Non Sap).

ALE architecture has the  3 layers : 

  • Application layer related to the application data ( SD , MM , FI or data for any SAP application ) . 
  • Distribution layer decides to whom should the data generated by the application layer has to be distributed
  • Communication layer responsible for  delivering the Idoc to the receiving system and communicates to the receiving system via tRFC , File ports , FTP or TCP/IP etc.

ALE uses IDoc as a vehicle to transfer data between two systems.

If you are sending one idoc to more systems  ,then  we have to create one sender logical system and more receiver logical systems in Tcode is SALE. After then we will send In Tcode BD64.