Many mature ERP/WMS systems have a customizable, segmented warehouse location structure.
Most warehouses have different combinations of buildings, zones, aisles, rows, racks, shelves, etc, so usually the WMS software lets the user creates multiple combinations of sub-locations which facilitates reporting, helps to generate wave-based pick lists, make cycle counting easier, etc.
Some software even has fixed and/or “floating” bin system, where the bins can optionally be assigned to, or moved among, these sub-locations, as well as stand by themselves.
Since it can be very tedious to manually enter or import hundreds (or even thousands) of these locations, often there’s tool within the WMS to auto-create the locations using custom segments with pre-defined ranges, such as 10 aisles, 5 racks per aisle, 6 shelves per rack, etc.
My vote is that if the warehouse & location structure is redesigned, then it gets redesigned with that level of flexibility.
One issue with using warehouses as bins is the need to maintain stock transactions whenever an item in a warehouse is needed for stock. A pick ticket would need to know the location of stock, but a sales order does not need to know this, just that the warehouse has adequate stock. Also the complexity of managing a purchase receipt to a staging area, then a material transfer to the put away location. In other words, pick and putaway should not generate stock ledger entries
We have built the Structured Warehousing Solution - we call it RARB System - short for Room, Aisle, Rack, Bin. However, the assumption is that the Bins are tied down to a RAR - Room, Aisle & Rack.
I think what you are conceptualizing and expecting is a movable bin into which anything can be kept and that can be kept anywhere.
It’s an interesting solution and I’d love to build it for you if you have a budget.
Our RARB system is designed along more or less the same way. Here’s how it is designed:
You first have to make a Warehouse and flag it as a RARB warehouse
Now you say how many Rooms, Aisles, Racks and Bins (RARB) does this warehouse support. Right now you have to pick the same number - meaning different rooms cannot have different number of Aisles; different aisles cannot have different racks; different racks cannot have different bins. Though you can say whether a Bin (you can only store stuff in a BIn) is active or not. So the expectation is that the user organizations will use the max value of RARBs and then only flag the viable/existing bins as active.
Each Bin can be flagged to store just one item or can be flagged to store any item. Same item can be stored in multiple Bins.
After this everytime you make a stock transaction involving a warehouse that’s flagged as a RARB warehouse, the RARB Location at the item level ends up becoming mandatory.
We have Stock Balance RARB and Stock Ledger RARB reports
We are also integrating this with an Android app with RFID Integration that will break down an item into Packing Items and Packing Boxes. So, when you are making a dispatch, we have built the system that says what are the packing boxes (and quantities of packing boxes) that are necessary to complete this shipment - How many packing boxes are available and where. And whether the packing boxes are Complete (all packing items are in the packing box) and packed (meaning it’s been taped or otherwise secured). And for the Packing boxes that aren’t there or are partially filled, whether the packing items that need to be in the packing boxes are available - where are they available and whether they are packed. A pick list and Grab Packing box functionality is being built with audio and visual indicator when all packing boxes have been grabbed and the consignment is cleared for shipment.
This is being built and it supports typically a made to order kind of configuration. I think it can be hacked to work for a Made to Stock configuration, though it maybe a bit annoying in places.
The design you described above sounds great!
Do you need help implementing it? I would happily contribute code and test it in a Warehouse which is already using a RARB system.
Thank you for your message. Most of it is either being built or is already built. You are welcome to use it and test it. And make it more robust. Or nhance it. No, that’s no typo, our app on which all these are built is called nhance.
Thank you so much for your response. What you have designed and almost implemented is to much extent in accordance with my users’ requirement. May I know how and when it would be available? whether as a part of ERP Next future releases or any other way?
If needed I’m ready to help you in functionality testing and maybe the extension.
Yes, our App is public. Not sure if it can work right out of the box. Not sure if it can work on ver 12. I haven’t even looked at Ver 13 yet. It definitely works on ver 11. I will try to make it work on Ver 12 and put the documentation together and share it here. If nothing it can work on Ver 11.
Hi @JayRam Give us the link. We will help you in making a version 12 version of it. Normally it should work on V12 as it is backward compatible. Nevertheless, we can assist you there.
We ended up just using ERPNext Warehouse doctype. In the end we have about ~20,000 warehouse nodes. Basically we just created a group node for each Row, Aisle, and Shelf, then another node for each Bin. We did this for each of our warehouses.
Unfortunately, it is very slow. Maybe it’s just my server config. But some of the time I have to wait until company closes to add a new warehouse because it completely overruns the maraidb processes and makes it impossible to do anything else. I’ve waited 30min and still the process was executing just to create 1 single Warehouse node.
Anyways, that disadvantage aside. The next problem I encountered was selecting the delivery warehouse in sales order. Because there are so many warehouse nodes to chose from It became impossible to just select a delivery warehouse from the sales order. We ended up customizing the Territory doctype to include a warehouse field. This way depending on what territory the customer belonged to the delivery note would created the stock transaction from the closest warehouse the item is available.
That’s a different error in nhance and should not affect the RARB Functionality.
Still, I don’t know if it will work on Ver 13.
If a deal goes through, we will get the RARB functionality Ver 13 ready in a few weeks.
There are other Custom Scripts and Custom Fields that are necessary and I can send you the list of such scripts and fields in a few days. Actually it will be easier to do that when we work on getting it ver 13 ready. I should know this week if I can get my developer to start working on getting the RARB Functionality ver 13 ready.