Dynamics 365 SCM: Do not reserve in Inbound
You are going to have this error in Dynamics 365 Warehouse management, guaranteed. The error manifests itself at the production order picking or at sales order picking: the picking location is empty. Depending on the Location directive failures setup under the Warehouse management parameters this is going to either create a broken warehouse work or throw an error, but the outcome will be bad in any case. This issue can occur when materials or merchandise have arrived but have not yet been put away in their expected location. They are not on the shelves but still somewhere in a staging area, possibly waiting for sorting or expecting a quality control. If your location directives are correct, you may need to adjust your inventory status settings to prevent this issue from happening.
The below recipe was invented either by Carsten or Thomas, maybe Nicolas, all kudos to them, I have just picked up the torch, refined the recipe and shared it with my colleagues and customers at 2 other implementation projects.
In a nutshell, create a new Inventory status called INBOUND and assign it to every purchase order. Make sure every sales or transfer order becomes the regular inventory status AVAILABLE. When a production order covers the demand, it will inherit the “Available” status and pass it to the BOM lines. Only “Available” raw materials will be reserved, not “Inbound”. If you attempt to release the production order, it will fail, because the reservation will misfire (but only if you install my fix Production order should not get Released on material shortage). This is a desired behaviour, because the materials have not been inspected or deconsolidated yet. The “Inbound” inventory status remains transparent to master planning and won’t be replenished unless the quality inspection fails and the goods become BLOCKED.
To implement this scenario, you’ll need to adjust some very specific parameters throughout the system. Below are the notes to myself:
- In Warehouse management > Setup > Inventory > Inventory statuses, add a new inventory status called “Inbound“. Do not mark it as inventory blocking; it only needs to differ from the “Available“.
- In Warehouse management > Setup > Warehouse > Warehouses, do not set the default inventory status ID at your advanced warehouse, as it will overrule other settings.
- In Warehouse management parameters, set the default inventory status ID to “Available” and mark Use default status for sales orders and transfer orders to force most material demand to look for Available items only.
- Ensure that every purchase order line becomes a different status by assigning the default inventory status ID “Inbound” to every supplier, new or existing (Accounts payable > Vendors > All vendors).
- Turn OFF the Reserve ordered items inventory parameter in Inventory management > Setup > Inventory and warehouse management parameters. To be honest, I have not seen any customer yet who benefited from the reservations in purchase orders not yet received, it just messes things up. If you do let the system reserve in open purchase orders, it is going to reserve the Inbound status, which is clearly not our intent, and the picking location will be empty again.
- Now it becomes tricky. If you use master planning, do not firm planned orders in the Standard or– God forbid – Extended Update marking mode. This marking will again be later converted into a fixed reservation of the materials / merchandise in the Inbound status. Instead, carefully set the default Update marking mode in Master planning > Setup > Master planning parameters. In a retail/distribution scenario, choose “None”. In a MTO (manufacture-to-order) or a ETO (engineer-to-order) scenario, choose Single level standard. The latter is quite a new addition to Dynamics 365 SCM: D365 New Feature – Make to order supply automation – Logan Consulting. This will establish a link between the Sales order and the production order, but not their lines or lower-level production orders to purchase orders. If there is a strong need for a chain of assembly / sub-assembly’s production orders, you may still use the Pegged supply BOM line type. This will make the upstream production order a derived requirement and it will establish a firm marking between the top-level and bottom-level production orders.
- Configure a recurring batch job in Warehouse management > Periodic tasks > Change inventory status to quickly update the status of “Inbound” items to “Available” once they are put away in their regular storage locations. Find a good set of criteria to capture all regular locations for storage and picking:
By following these steps, you can avoid the empty picking location error and ensure that your inventory status settings are correctly configured.
Warehouse management blog series
Dynamics 365 SCM: Do not reserve in Inbound
Bye-bye work report, welcome wave labels!
WHS Label copies, Custom work, display methods on labels
Towards the deconsolidation in Dynamics Warehouse Management
Auto-post inbound delivery notes in a batch
Input validation and messaging in the Process Guide Framework
WHS Emulator screen in Dynamics 365