In this blog post, I will try to walk you through a specific example, line by line, column by column.
Note I am assuming that everyone is familiar with the general way we show on-hand information, specifically that you can summarize it by a different set of dimensions, viewing it aggregated by warehouse, location, or any other combination of dimensions.
What's the challenge?
The problems start when you need to account for the reservation hierarchy of the warehouse enabled item, and displaying how much is available at the different reservation hierarchy levels.
On-hand view, summarized by Site, Warehouse, Inventory status, Location and License plate
On-hand for item A0001, summarized by all storage dimensions |
On-hand view, summarized by Site, Warehouse
On-hand for item A0001, summarized by Site and Warehouse |
Step-by-step analysis of the data
- If we look at the Physical Inventory column, the on-hand
there is always at the lowest dimension level – meaning we only see values
for rows where you have all of the dimensions specified, down to the
License plate level.
- That’s why in the first row, where there’s no location/license
plate, the Physical inventory is shown as blank (0). Same for the 5th
row, where for location FL-001 with blank LP there’s nothing in physical
- Note that for BULK-001 there is physical inventory, even though
there is no LP – that’s because this location is not tracked at License
Plate level, so the Location IS the lowest level (ORANGE)
- For some of the lines shown, there simply isn’t on-hand, but we
used to have on-hand on them, which is why they show up. (YELLOW)
- The rest (GREEN) are quantities
that are on license plates on corresponding locations. You can sum up
and see the total quantity of this item we have in the warehouse is 205
(but, again, that’s not displayed in the first row, unless you change
which dimensions are displayed – if you only display Site and Warehouse, for example, that’s
what you would see – 205. See screenshot #2 above)
- Reservations are done at different dimension levels. So, for example, Sales order reservations are at
“Above-location” level, while Work reservations are at “Location” level.
Reservations at other levels are also possible
- That’s why in the first row, we have 30 in the Physical
Reserved column – that is 3 different sales orders having a
reservation against the quantity 10 each. They don’t care which
location/license plate we take the items from, as long as we have enough
on the warehouse/status level. (BLUE)
- Work reservation are at the location level. That’s what we have in
row 5, where 2 work orders each reserve 10 units, and those units are to
be picked exactly from location FL-001, but we do not care which license
plate they will be taken from. (DARK BLUE).
- All the other rows are empty, as we have no reservation at the
location+LP level here (Even though it is possible, generally speaking)
- Available physical column is where it gets a bit
more tricky to understand. Let’s take it bottom up, so it’s easier to
- On third line, we have 100 physically there, and there are no
reservations for any of it, so all of it is available. Thus, it’s 100
- Same for the 4th line, 10 there and all of it is
- Now, important part here. On FL-001, LP 24, I have 90 physically,
but 20 is reserved. So why the heck is 75 available, instead of 70? (PURPLE)
i. It is due to the reservation being
on a higher level. The reservation is done at the location level, so when
calculating available, it accounts for other license plates in this location as
well, LP 000USMF-000..55 has 5 on it.
ii. Another way to think of it – how
many items can I take away from this License plate, so my existing reservations
are still respected. The answer is – 75, because you’d have 15 left on this LP
and 5 more on the other LP within the same location. The warehouse-level
reservation is also still respected, because we have enough in other locations.
- On FL-001, 000USMF-00..55, we have 5 available. That’s what is
physically there, and because we have enough in the other LP, all of this
is available for taking for another purpose.
- The total quantity available at the location level matches what I
described above, and equals 75, as it has 95 physically on it on multiple
LPs, and 20 is reserved for work.
- On the warehouse level, we have 205 physically, and we need 30 for sales orders, so 175 is available to be reserved for other purposes. As you can see, that’s not a direct sum-up of the other rows. Same as the available quantity on FL-001 was not a sum of what is available at each LP. The calculation logic is the same here.
If you are
still curious for more after reading the below, check out this great 1 hour
presentation my colleague Lennart did at a conference a while back, explaining the
reservation engine and on-hand impact: https://www.youtube.com/watch?v=--_didmZKHo&t=4s