Setting up location directives for your warehouse in AX2012 R3 and AX7 requires a lot of attention to detail. The directives are extremely powerful, but also open ended, which can lead to both performance and logistical problems. This article on MSDN gives a good overview, but doesn't provide any deep dives.
This post is intended to explain the "Fixed location usage" option on the location directive lines.
The setting pretty much answers the question "Which locations should be considered for put-away of the item?"
Work type | Fixed location usage | Behavior |
Pick | <any> | <Setting is ignored> |
Put | Fixed and non-fixed locations | <Setting is ignored>
In other words: All locations are considered for the product. If the product has fixed location that information is not leveraged, this means that non-fixed locations are considered as well as locations that are fixed to other items. |
Put | Only fixed locations for the product | An exists join on WHSInventFixedLocation on itemid is added to the WMSLocation datasource in the query
In other words: Only fixed locations for the product are considered. |
Put | Only fixed locations for the product variant | As above, except the exists join is on both ItemId and InventDim
In other words: Only fixed locations for the product variant are considered |
If you are using fixed locations for any product or product variant you can gain substantial performance benefits by having an action line to look at the fixed location before looking across locations – similar to the picture above.
Example
Consider a simple warehouse with 1000 items and 1000 locations. A subset of the items have a fixed location. Each location has infinite capacity – but doesn't allow mixed items.
Location directive setup | Item received | Number of locations considered (*) |
1. Only fixed locations for the product | Fixed location | 1 |
1. Fixed and non-fixed locations | Fixed location | 1000 |
*: The location directives will stop searching when the first qualifying location is found – so the above number only illustrates the worst case.
In other words: Finding the put-away location for a fixed location item is now an order of magnitude faster.