The purpose of this document is to explain what happens when report RBDAPP01 run as part of a scheduled background job encounters an error when it tries to post a selected IDoc.
Here it will be shown what happens to the processing of selected IDocs within packets when report RBDAPP01 encounters an error with a specific IDoc.
You have scheduled a background job which calls report RBDAPP01 to post inbound Idocs.
In the selection criteria specified for report RBDAPP01 the packet size is set to 5
When the job runs RBDAPP01 will check to see how many Idocs match the selection criteria specified in the job variant. The main criteria used for RBDAPP01 are:
So lets say that using the selection criteria there are 100 status 64 Idocs for posting.
As the packet size is set to 5 this means 20 packets (each packet with 5 Idocs) required to post all the selected Idocs in this background job.
- What happens if there is an error posting the 2nd IDoc in the 10th packet?
- How does this impact the running of the job?
- Will the remaining Idocs be posted?
What RBDAPP01 does when it encounters an error posting an IDoc within packets in a scheduled background job?
What happens when you run RBDAPP01 is that the report will select IDocs which satisfy the specified selection criteria and send them to dialog work processes in packets for processing (how many Idocs are in each packet for processing in an individual DIA work process is controlled by the "Packet Size" parameter).
RBDAPP01 sends the packet to the DIA work process and then goes to the next packet and sends it. In the example above if there is a problem with the 10th packet then this will not prevent or stop the report from sending packets 11 to 20. Each packet of Idocs is processed in a separate DIA LUW so if there is a problem in an individual packet it will not impact the processing of subsequent packets.
So in our example let's say there is a problem posting the 3rd Idocs in the 10th packet due to a lock at application level. Historically this would have meant that RBDAPP01 would not process Idoc 4 & 5 from this packet but would continue to process all Idocs in packets 11 - 20 (the remaining packets selected). However now there is a fix to help ensure that in this situation the report will process the remaining Idocs within the packet. See SAP note 902806 :
"....................................................... you still want all IDocs in a package to be processed even if one IDoc has not been processed due to a lock problem (or has already been processed in
parallel) then you need to implement a program correction. Implement the correction instructions using the Note Assistant"