Enhance SAP EWM
Putaway bin determination (Putaway strategy)
Note: The purpose of this series of blogs/videos is to show you how to enhance different areas/functionalities in the SAP EWM putaway bin. Thus, it will tackle technical details and complex coherences which might not be suitable for EWM beginners.
The purpose of this blog is to give you
1. everything you need in order to understand every single detail of the EWM standard putaway logic
2. the tools to adjust it based on your needs
Let us jump into the details right away!
First of all it is important to know that the heart of the EWM standard putaway strategy is sitting in function group /SCWM/PUT_BIN_DET (master program /SCWM/SAPLPUT_BIN_DET):
Here you can everything which is needed to understand EWM putaway in detail. You will find plenty of includes carrying different subroutines as well the main include containing the function modules:
Looking at the subroutines for instance, you find many interesting spots which can help you understand the different strategies and checks which are applied during bin determination:
Based on two of the most commonly used Badis I would like to show you how we can include our custom logic here.
– Example 1: Exclude specific bins based on quantity in warehouse task
– Example 2: Change the putaway rule based on base UOM from product master data
Example 1
Here we can use Badi /SCWM/EX_CORE_PTS_FILT_SORT to filter & sort potential destination bins:
Apply the where-us-list of the interface method in order to understand where the Badi is accessible:
Different spots in call stack during runtime:
We will go into detail for the call in the last screenshot above. Subroutine BIN_DETERMINATION_3 which is called in the context of FM /SCWM/PUT_BIN_DET (program /SCWM/LPUT_BIN_DETF92 > also the stack is interesting here):
Product master data is imported with is_mat_global / it_mat_UOM and WT data (containing the quantity) is imported in is_ltap. Based on this we can now easily include our logic to ignore specific bins based on the quantity in any given UOM (the logic is just random – thus no details here). The internal table to be adjusted here is ct_hlplagpl (structure details in screenshot below) which is carrying all possible destination bins based on standard putaway strategy. Within the interface method we can either remove single rows (e.g. remove bins which should not be used in the given scenario) or change the sorting in the table (e.g. prioritize specific bins over others).
Summary
Product master data is imported with is_mat_global. Putaway rule by variable iv_put_rule. This is everything we need in order to set the rule based on the base UOM (again – this is just an example and might not make sense for most of the operations).
I think the approach is clear now and I think you got the most important takeaways.
Summary
– Heart of EWM putaway logic: Function group /SCWM/PUT_BIN_DET
– Sweet spot to enhance based on custom requirements: Enhancement spot /SCWM/ES_CORE_PTS
Happy coding/customizing!
I hope this blog post provides value to you and you could learn something. Please feel free to subscribe to my blog updates or my youtube channel in case you want to be notified about new posts!