Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Inbound IDOC with function modules

Former Member
0 Kudos

HI experts,

in inbound IDOC where exactly the process will start can any one explain with all steps ,

when will the fuction modules are called

how the sap system knows IDOC is came

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

1) process in the communication layer

The INBOUND_IDOC_PROCESS program, triggered as a result of an RFC from the sending system, acts as the entry point for all inbound ALE processes.

2)process in the ALE layer

Basic integrity check. A basic integrity check is performed on the control record data such as direction, message type, and IDoc type. The user ID used to start the process is validated to make sure it has appropriate authorizations.

Segment filtering and conversion. Unwanted segments can be filtered out at this stage, and any required conversion of field values can be carried out.

Application IDoc is created. The application IDoc is stored in the database and a syntax check is performed on it. If it fails the syntax check, it gets a status code of 60 (Error during syntax check of IDoc—inbound). At this point a tangible IDoc, which can be monitored via one of the monitoring transactions, is created in the system. The IDoc gets a status code of 50 (IDoc added).

The IDoc is marked ready for dispatch. After some housekeeping in SAP, the IDoc is marked ready for processing. It gets a status code of 64 (IDoc ready to be passed to application), signifying that the follow-on process can continue.

The IDoc is passed to the posting program. The partner profile table is read. If the value of the Processing field is set to Process Immediately, the IDoc is passed to the posting program immediately using the program RBDAPP01. If the field is set to Background Processing, the IDoc is buffered in the system until RBDAPP01 is executed explicitly. RBDAPP01 is usually scheduled to run on a regular basis when IDocs are buffered.

3)Processing in the posting module

The process code in the partner profile points to a posting module for the specific message in the IDoc. The posting program, implemented as a function module, either calls a standard SAP transaction by using the Call Transaction command for posting the document or invokes a direct input function module.

The results of execution are passed back via the function module’s output parameters. If the posting is successful, an application document is created. The IDoc gets a status code of 53 (Application document posted). If the IDoc contains errors, it gets a status of 51 (Error: Application document not posted).

Thanks,

Krishna Rao

4 REPLIES 4

Former Member
0 Kudos

Hi,

1) process in the communication layer

The INBOUND_IDOC_PROCESS program, triggered as a result of an RFC from the sending system, acts as the entry point for all inbound ALE processes.

2)process in the ALE layer

Basic integrity check. A basic integrity check is performed on the control record data such as direction, message type, and IDoc type. The user ID used to start the process is validated to make sure it has appropriate authorizations.

Segment filtering and conversion. Unwanted segments can be filtered out at this stage, and any required conversion of field values can be carried out.

Application IDoc is created. The application IDoc is stored in the database and a syntax check is performed on it. If it fails the syntax check, it gets a status code of 60 (Error during syntax check of IDoc—inbound). At this point a tangible IDoc, which can be monitored via one of the monitoring transactions, is created in the system. The IDoc gets a status code of 50 (IDoc added).

The IDoc is marked ready for dispatch. After some housekeeping in SAP, the IDoc is marked ready for processing. It gets a status code of 64 (IDoc ready to be passed to application), signifying that the follow-on process can continue.

The IDoc is passed to the posting program. The partner profile table is read. If the value of the Processing field is set to Process Immediately, the IDoc is passed to the posting program immediately using the program RBDAPP01. If the field is set to Background Processing, the IDoc is buffered in the system until RBDAPP01 is executed explicitly. RBDAPP01 is usually scheduled to run on a regular basis when IDocs are buffered.

3)Processing in the posting module

The process code in the partner profile points to a posting module for the specific message in the IDoc. The posting program, implemented as a function module, either calls a standard SAP transaction by using the Call Transaction command for posting the document or invokes a direct input function module.

The results of execution are passed back via the function module’s output parameters. If the posting is successful, an application document is created. The IDoc gets a status code of 53 (Application document posted). If the IDoc contains errors, it gets a status of 51 (Error: Application document not posted).

Thanks,

Krishna Rao

Former Member
0 Kudos

the function module EDI_DATA_INCOMING is invoked by the startrfc program in case of EDI . This function module informs the SAP system that there is an incoming idoc.now the idoc is passed into ale/edi interface layer. it gets saved in the database . noe the RBDAPP01 reads the process code from partner profile and the application document gets posted,

Former Member
0 Kudos

>

> HI experts,

>

> in inbound IDOC where exactly the process will start can any one explain with all steps ,

> when will the fuction modules are called

> how the sap system knows IDOC is came

Hi,

The idoc contains threee records,

1..control record,

2..data record

3..status record.

the data is stored in idoc type.idoc type contains segments and the segments contain fields.

the data is actually stroed in fields.when we process the idoc the data existing in idoc type is being proceessed through idoc_outbound_idoctype function module.

the same will happen at in bound side once the idoc recieves

inbound and sucessfully saved in data base.

regards,

swami.