In AX 2009, the task of refilling picking locations was automated and improved. The main idea behind the new functionality is that, if required, processes that impact quantities at picking locations should activate a refill.
This blog post describes how to set up parameters for the new functionality and how to use it. It also includes references to the code where some of the main functionality is implemented.
To enable automatic creation and activation of refill transports, you need to set up the following parameters.
· Select Automatic activation for the picking store area in the Store area form under Inventory management > Setup > Inventory breakdown > Store areas.
With the new check box for automatic activation the periodic Create refill batch job becomes obsolete.
· Enter a value for the warehouse item in the Required minimum field in the Warehouse items form under Inventory management > Item details > Setup > Warehouse items. You can also define a maximum quantity to control the quantity that can be transferred to the location.
Once the required setup has been completed, refill transports are created when the following events occur:
· A pick reduces the quantity at a picking location to a quantity that is below the required minimum (WMSOrderTransType_OutputDontPostTransfer.activateRefill() is responsible).
· A picking route is activated or started (wmsPickingRoute.activateRefill() is responsible).
· A pallet transport is finished (wmsTransport.activateRefill() is responsible).
To determine whether a refill transport should be created, the following rules are applied:
1. If (physical inventory on the location >= Max. storage capacity) -> no refill is created.
2. If (physical inventory >= Required minimum) -> no refill is created.
3. For picking route activation and start, the quantity that is already on activated and started routes are taken into consideration and the formula is:
a. If (physical inventory – quantity on activated/started routes >= Required minimum) -> no refill is created.
These rules are implemented in the method WMSPickingLocationRefillCheck::checkAndRefill().
Note: Refill transports that are created manually ignore the maximum storage capacity that is specified in the Warehouse items form, so for manually created refill transports the maximum storage capacity can be exceeded.
If none of the above rules evaluate to true, an attempt is made to create a refill with a requested quantity equal to the maximum storage capacity minus the physical inventory on the location.
The refill transport functionality now supports partial deduction of items from a pallet so reservations on a pallet are made even if the requested quantity is smaller than the quantity of a full pallet.
If a partial pallet is moved using a refill transport, the check box To pallet required is selected:
If the item being transported uses serial numbers or similar dimensions, it is possible to change the dimensions on the transport lines and thereby change the reservation. For example, an operator can now move items reserved at the bottom of a pallet to the top of the pallet.
When the transport is started, you are asked to specify the pallet that the items are going to be moved to:
In this example, only part of what is on the pallet is going to be moved so you must specify a pallet or create a new pallet at the To location.
If a pallet has not been specified at the To location, you are asked to specify the pallet when the transport is finished.
Note: The To pallet dimension is automatically selected in the dialog box if:
- Only one pallet exists on the picking location.
- The Use empty pallet location setting on the warehouse item specifies that an empty pallet should not automatically be moved to the empty pallet location.
By Bibi Christensen, Per Lykke Lynnerup & Lennart Conrad, Inventory Management, Microsoft Dynamics Ax.
Any setting in ax to make sure move the whole pallet instead of partial?
I am interested in Chee Meng's question. Is there any setting in AX to pull by pallet ID?
We do not have a dedicated parameter for this. Original design method was to utilize the ”Max. storage capacity” field on the Warehouse item form. In case of an empty value the application will suggest to move a full pallet first.
If the requirement is only to use full pallets for refill transports then a modification could be made in the method WMSPallet::findRefillPallet() and return before looking for pallets that are not full pallets.
Thanks for the product suggestion.
Hello, we have picking locations where the available pallet loccations is negative?? How is that possible It is all done by pallet movements!
Hi Soren, do you have empty pallet location setup for your warehouse? do you move empty pallets to that location when they become empty?