Some warehouse management strategy need to store the place of product with a very fine precision, for example the Chaotic Storage strategy.
This can not be modelled using the existing "Stock Location" for performance reasons because a nested structure will cost too much for the computation.
So we need to introduce a flat design under the storage location, let's call it "Storage Unit".
The idea is to manage it as new fields on stock move quite like the "Lot" but with a constraint that the "Storage Unit" must be one of the unit of the "Location". It will only be visible for "Location" of the type "Storage" and required when "doing" the move.
We should be able to see the quantity of a "Unit" just like for "Location" and a relate action should allow to "open" a "Storage Location" to see the linked "Unit" with quantities.
The inventory should be extended to include the "Unit" field thanks to the
Move.assign_try should be extended to add the
unit to grouping (note: it seems the assign_try method is not yet fully ready for such design) and so it should set a valid
unit value on assigned moves.