Work templates and Location directives act their roles very important in D365 warehouse management.
But, It's not easy for a beginner to work with them the first time. So, we need to understand how they are related deeply to easily know concepts and configure them exactly in the system.
Work Templates
Work templates define the structure and process for warehouse work. They outline the specific steps required to complete tasks such as picking, putting away, or replenishing inventory. Each work template specifies the sequence of operations and the criteria for creating work orders.
Location Directives
Location directives determine where items should be stored, picked, or moved within the warehouse. They provide detailed instructions on which locations to use based on item characteristics, inventory levels, and business rules. Location directives ensure that inventory is managed efficiently and accurately.
Below is their ERD relationship.
You see they are related by two things: Work order types and Work types
Work order types
Purchase orders
Sales orders
Raw material picking
Finished goods put away
Co-product and by-product put away
Transfer issue
Transfer receipt
Inventory movement
Canceled work
Cycle counting
Replenishment
Return orders
Cross docking
Quality in quality check
Quality item sampling
Quality order
Goods in transit
Work types
Pick
Put
Counting
Adjustment
Custom
Inventory status change
License plate building
Status change
Pack to nested license plate
Quality check
Wave template uses work order types for the trigger on types as Sales orders, Purchase order, Picking, RAF... depending on actions like Release to warehouse, Report as finished, Registration... to generate work orders with work types as pick, put, print... accordingly.
Then, the system will look for the location directive suitable to find locations according to work types that was generated at the above step.
In the location directive, D365 has a function named acceptance test, we could use that function to test whether the system can get the location as expected. I will have another post for that function.