Question1 : How to achieve serialization in ALE / IDOCS
Serialization is the concept of sending IDOCS of different message types in particular sequence . This can be achieved by creating a serialization groups both in sending and receiving systems.


While creating the outbound partner profile add SERDAT and for all the message types below should be clicked

Enable Change pointers globally using BD61 and for the message types BD50
Partner Profile in the receiving system should appear as below all the message types from the serialization group should have "Trigger by Background program" and SERDAT alone should have "Trigger Immediately"


1. Creating of IDOCs : The report RBDSER01 creates the IDocs for a serialization group. The serialization group to be created is specified as a parameter in this report. The report selects all the master data change pointers assigned to this serialization group. The IDocs are then created from the change pointers.
2. Dispatch of the IDOCs : After the IDocs have been created the report RBDSER02 dispatches the IDocs belonging to a serialization group. The name of the serialization group to be sent is specified as a parameter in this report. You can also specify the receiving systems and in the time period that IDocs can be created/changed.
3. Report RBDSER02 schedules a report RBDSER03 that checks whether all the IDOCS from the serialization group have been sucessfully sent to the receiving system .If they have, a control message of message type SERDAT is sent to the receiving system and posts the serialization group there. To do this specify in the parameters of report RBDSER02 the time that should be scheduled after sending report RBDSER03.
You also have the option to always dispatch the control message. This means dispatch it even if all the IDocs have not been passed to the receiving system. This means that IDocs arriving in the receiving system can be processed even if some IDocs are still being transferred. However, serialization difficulties may occur.
The processing of inbound IDocs of a serialzation group can be directly started by the Report RBDSER04.
Question2 : What happens when one of the IDOCs in the serialization group fails ?
Scenario : MATMAS and CLFMAS are in the serialization group with sequence 1 and 2 respectively .
If the Material IDOC(MATMAS) fails it will not allow the classification IDOC(CLFMAS) to get processed as they are serialized.
If the Material IDOC(MATMAS) goes through and gets posted and if the classification IDOC(CLFMAS) fails later it doesent cause the material idoc posting to be rolled back .The material idoc remains posted as such and the material values will be updated successfully in the destination.
The idocs are serialized to send the idocs in a specific order. The failure of one idoc will not cause the other to rollback.Any gaps in the sequence will mean that IDocs are missing, either because the transfer did not work, or because earlier IDocs were not posted successfully. In this case the IDoc is assigned status 66 and must be posted again with the program RBDAPP01.
Question3 : How do you reprocess an IDOC
BD87 - It will process the same IDOC in error
If you are using WE19 it will create a new IDOC .
Question4 : How to improve the performance of Inbound IDOC processing
This is how:
A) Switch from immediate IDoc processing to batch
A) Switch from immediate IDoc processing to batch
Program that transfers the IDOCS is "RBDAPP01"
B) Use parallel processing option: Program Name : "RBDAPP01"
C) Use IDoc packets rather than single IDoc posts
Question5 : IDOC filtration process , Tcodes and example
The technique of filtering at the IDoc level enables to send a subset of data that is relevant for a receiving system
For IDOC Filtration we have to search for a suitable filtering object in transaction BD59.
In the distribution model select the Filter Object , provide the values.
Like MRP view of one plant should be sent to other plant while the material master distribution through BD10.
Question 6 : What is an Idoc status? What are the different types of Idoc statuses that you know ?
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.There is no way you can remember those all .
Don't even try to ! You will probably remember only those on which you have worked .
But here are a few that you should know:
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
Question 7 : Explain about Change pointers :
Change Pointers are log entries to remember all modified records relevant for ALE. Change pointers are log entries to table BDCP, which are written every time a transaction modifies certain fields.
A) TCODE: BD50 (Activate change pointer for message type)
Below screen shows Activating change pointer for Message Type 'MATMAS'

B) TCODE: BD66 (Segment Field-Change Document field)
Change Document field should exist in this TCODE align particular Segment type.
The above screen shows the fields in change document.
Message Type: MATMAS
Segment Type: E1MAKTM

The below screen shows actual fields in segment.

C) TCODE: BD61 (Activate change pointers generally)
The Below screen shows how to activate change Pointers generally.

Creating IDOC with change pointers.
TCODE: BD21
Purpose: Create IDOC type from change pointers
Program: RBDMIDOC
We can create IDOCS from change pointers with the report RBDMIDOC
The report tells how many master and communication IDocs have been created. 

Question 8 : What is the main difference between ALE/IDOCs and BAPI
Question 9 : I have to send same IDOC to multiple receiving systems , how to achieve the same .
Some Theoretical Questions :
ALE stands for Application Link Enabling. As it's name indicates , it links two systems.
ALE is a technology that can enable exchange of data between two different Systems ( Sap - Sap OR Sap - Non Sap). ALE technology enables distributed yet integrated installation of SAP systems.
ALE architecture comprises of 3 layers :
Application layer refers to the application data ( SD , MM , FI or data for any SAP application ) . In this layer the data is collected to be distributed and then sent to the distribution layer.
Distribution layer determines to whom should the data generated by the application layer has to be distributed i.e. it is in the distribution layer that the recipient is determined , the data is formatted or filtered and then an actual is created.
Communication layer takes the responsibility of 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.
There are three types of records in SAP ALE Idocs:
Control Records: Control record information for an IDoc is stored in standard table EDIDC.
Data Records: Control record information for an IDoc is stored in standard table EDIDD.
Status Records: Control record information for an IDoc is stored in standard table EDIDS.


Please post more interview questions and I will add them to the list.
ReplyDeleteCan you please explain me how can we send the same idoc to multiple systems ? email me at subhant.banerjee@gmail.com
ReplyDeleteThanks for sharing!
ReplyDelete