Technical Articles
Generation of Outbound delivery order with Zero Quantity.
Purpose:
To understand why it is required to zero out the outbound delivery in EWM and how a corresponding confirmation message is sent to ERP delivery documents to adjust it to zero. In decentralized EWM, once an outbound delivery is distributed to EWM, it is not possible to make adjust in ERP.
Overview:
A delivery is communication object between ERP and EWM, and once delivery is distributed to EWM( Decentralized), it becomes impossible to edit or make any changes in ERP delivery document. This blog will unravel the mechanism, process steps, configurations and Abap class to troubleshoot and makes it explicit for consultants to carry out ”Delivery document Adjustments from EWM.
Replication Steps:
- Create a sales order in ERP and create a outbound delivery for the same. I start from delivery directly. The material is batch managed, so highlighted.
- Delivery is distributed to EWM.
–> Picking and Goods Issue status are-”Not Started”. As a thumb rule, only those deliveries can be zeroed out which have status not started. Detailed explanation will follow in latter section of blog.
- Zero out the delivery with Available Process Code. Since delivery quantity is of 50, we mention in minus sign to zero it out with process code.
- A message pops up after this event.
- Check the delivery in EWM, quantity is Zeroed out and all status have been completed.
- Check the Outbound delivery in ERP.
–>ERP delivery document is still open and it is not zeroed out.?
Important point: The confirmation message to update ERP delivery document to zero can only be conducted after clicking button ” Outbound Delivery”
- Now, check the ERP delivery.
The delivery is zeroed out and completed.
When an outbound delivery is created for the outbound delivery order in EWM, the EWM system sends a message about the zero quantity to the ERP system, so outbound delivery button is utmost mandatory to click else ERP delivery will not be zeroed out.
Configuration required for this process:
To carry out zero quantity leveling in both system, below are configuration required.
- The Item category customizing (transaction OVLP) in set up to allow the delivery creation with Zero stock.
- Field “check quantity 0″ (V_TVLP-MNG0P) should can have all values other than “B” : Dismiss situation with error message in create/change mode. If you keep value as B, ERP delivery cannot be zeroed.
- The standard item category TAN is delivered with value A (Note about the situation), which means only a warning.
- The process code given by SAP to zero out the quantity is O001, however you can customize yours also. In customizing, process code profile, there are process codes.
Lets take another cases.
Case-1: When there multiple delivery items and requirement is to zero out partial items,
- Create delivery having 2 line items in it.
- Try to reduce the Quantity to zero.
- On clicking the outbound delivery order, system triggers a message. The picking status is Partially completed, hence we cannot carry out partial reduction of 1 line item in delivery.
Lets debug this error to understand in detail.
System checks DCI indicator which is picking and only those delivery can be zeroed out whose DCI indicator is finished which is equal to 9 in below abap code.
- If we look at current delivery status, here DCI status=2
- So, we need to make all the items zero, then only corresponding ERP delivery can be reduced to zero. So, EWM other line item is also reduced to zero.
- Check ERP delivery document, both item is reduced to zero
ABAP Development for Reducing partial items from Delivery to Zero
If customer seek for alternate solution and ask for partial quantity reduction in ODO line items, then it is required to use a BADi. SAP has given a solution to implement the BADI mentioned in note “1281404 – Customer message log determination”
The class used in this Badi is /SCWM/IF/MAPPING/CONSTANTS.
After the BADI implementation, a change message (OBDLV_CHANGE) will be sent to the ERP system in case of any quantity changes on the outbound delivery item on EWM side, and hence partial items concatenated in a single delivery can be reduced to zero.
Case II: What if you have activated Automatic WT after Outbound delivery distribution in EWM?
A delivery is created and Automatic WT is created due to PPF actions.
- Open WO exists
- Try to zero out delivery having Open WTs.
Immediately, an error is thrown.
- So, we need to cancel the open WT, then only system allows to reduce ODO quantity to zero.
- Conduct reducing ODO lines to Zero.
- Check the delivery both in ERP and EWM. both are reduced to zero. So, the key was to cancel the any open WT.
Case III:
Picking and GI is completed in EWM, and items are batch manged.
- Created an ERP delivery having batch splits and delivery is picked and PGIed in EWM. Now, we need reverse the cancellation.
- Picking and GI Status are completed in EWM, now try to reduce the quantity to zero.
System doesn’t allow to do this.
- So, we need to reverse the GI status and latter picking status. Reverse the GI by /N/SCWM/FD. Once done, GI status gets changed.
- GI status becomes not started but Picking is still completed. Try to conduct Pick cancellation process to revoke the status of Picking to not started
- Execute, /N/SCWM/CANCPICK, Pick cancellation.
- System doesn’t allow to carry out Pick cancellation of delivery.
- Debug the error
System is unable to unable to conduct Pick cancellation Process because the Field delivery item mth_ui_dlv has values in form of Stock. So, we need to delink this value.
- Delete the outbound delivery in /SCWM/FD
- Carry out Pick cancellation, it navigates to ADPROD, creeate WT now.
- Check EWM ODO.
Delivery status are reset and now it can be reduced to zero as explained above
Hence, the blog ends here. I would appreciate for suggestions and remarks to make this blog more useful and bug free.
In the next blog, I would write on Repetitive manufacturing Interface with SAP EWM. SAP PP REM is considered as blacksheep and haven’t been explored in detail. Its such a beautiful topic that it gives sleepless nights to consultants who want to explore more about REM EWM integration.
Best regards
Shailesh MIshra
Hello shailesh mishra ,
Keep it up! Next one waiting.
I add related that helpful for design undestood.
Sap note : 2332231 – EWM split deliveries with zero quantity not updated in the ERP original delivery.
Then , Consultants must be implemented BADI given belowed.
BAdIs and their relevance:
Example code for outbound delivery order :
Brgds
M.Ozgur Unal
Hi Shailesh,
Thanks you posting the blog. It was very detailed and understandable. I have 1 question, do we need to debug it or directly we can delete the delivery through /SCWM/FD and then we do cancel picking.
Regards
Santhosh
Hi Sailesh
Its really great blog. Thanks for creating. Waiting for more.
Regards
Harsh Nama
Hi Shailesh,
Any info related to the class/method name or function module to delete outbound delivery in /SCWM/FD.
Thanks in Advance,
Sai Srinivas.
Hi Shailesh,
I have a situation,I just change inbound delivery quantity,like 5PC -> 3PC(not zero), can't update ERP.
I can use VL60,but i want to change EWM's document not ERP.
Is there any solution to this?
Regards.
Hi,
I want to write an error log using this /SCWM/IF_EX_MSL_FILL~DET_ERP_MESSAGES, Can I know the type of data to need to pass into this structure '/SCWM/DLV_BADI_MSL_STR'
Regards,
Hello shailesh mishra Mehmet Ozgur Unal,
Thaks for your informative post and comments! I want to learn that How can we make inactive the process code O001? I have case that key user sohuld not use any of process code. I hope you can help me.
Best regards,
Hi Shailesh,
Thanks for the post it was very clear & easy to understand. Can you please provide a BADI to automate this process on a embeded EWM system?
Regards,
Marco