How to optimize internal movements with interleaving
Typical application for interleaving is to combine picking and putaway queues in one area, where the activity areas for both should be physically on the same location. When you finish your task in one queue, system will always jump to the next queue and searches for the next earliest/nearest task.
Btw. for picking or production supply we usually have LSD defined, so be careful with rounding. System will always prioritize the time over the distance. You can check this logic in program /SCWM/SAPLRSRC_MAIN and form WO_SORTING_BY_DIST_CALC. So unless you define rounding per shift or per day period, the distance sorting functionality does not really make sense.
Interleaving for internal movements can really help in the scenario, where we have a forklift driver going around buildings and moving pallets among them. One approach is to simply use the RF scanner and just to scan any available SSCC number on the pallet, which is physically available on the ramp, but what if there is no available pallet at the moment? Should the forklift ride to the nearest building to the left, or to the right? There is an option to use System-Guided navigation on RF – inbuilt in standard EWM.
So let’s say we want to have this scenario with intermediate bins and interleaving. There are some details we need to take care of:
To use the network of intermediate bins, you certainly need to define all LOSC combinations between source and destination storage types. For complex sites, the number of combinations can go to thousands, there is no other way around to make it work. Just make sure you define the separate WPT for this intermediate movement, which has activity INTL. You can even make it more separated from the other processes and my recommendation is to define a new activity (FLIL – forklift interleaving for example).
It is recommended to keep the intermediate bins in one storage type, or to be more specific – it is easier to generate bin sorting, where the storage type can be assigned to activity area. To keep queue determination easy, you certainly should keep all these bins in 1 AA. In other words – if there is a group of forklift drivers, which is serving specific intermediate bins – make 1 storage type for them. Another storage type for another internal interleaving group.
The configuration steps how to setup Queues and theirs determination is pretty easy, just make sure you define Queue type and assign it to the Queue. This is a prerequisite for interleaving functionality. When you have all intermediate bins in 1 AA, the Queue determination for all can be just 1 entry in the configuration table. Standard interleaving scenario works with a queue sequence, where picking and putaway is combined, but for internal movements we are fine with just 1 queue and the code works well for this.
Define edges for storage type specific networks in /SCWM/TDC_SETUP – those are valid paths, which can be used by forklifts. Especially in scenarios where we have complex layout between buildings, this makes quite a difference in distance calculation. Don’t forget the X Y coordinates are mandatory for the bin master of the intermediate bins as well.
To setup the resource master, group and queue sequence is pretty straightforward, just don’t forget to setup the queue type sequence as well in /SCWM/QTSQ. All with just one line item – for our FLIL queue. It is also useful to setup a standard bin in /SCWM/RSRC so when the resource logs in, system can calculate initial distances. When the actual bin is empty, distances are zero.
Finally to make sure the system will sort WOs appropriately we need to make sure the LSD has proper rounding. For the activity we have defined for our WPT I would recommend to use 1 DAY rounding rule – that will basically make sure the WOs will have just a date in place, while time will always be 00:00:00. The beauty of this settings is that for any pallet we leave on the intermediate bin for a longer time than day, there will be higher priority for execution. Set up the Modes determination accordingly based on what activity you assigned to the WPT.
To test this configuration you need to create several tasks – at least 3 WOs with different distances. As mentioned above, you can place your breakpoint in the program /SCWM/SAPLRSRC_MAIN and form WO_SORTING_BY_DIST_CALC on line 127 and enjoy!