We have following setup:
- Pre-production area, where components are needed to manufacture finished products. On creating manufacturing order, missing goods are ordered automatically.
- Components can be picked/available from our stock, or should be ordered. In that last case the goods should go from inbound area to pre-production area (no extra step through our stock)
- We have 2 step good receipt. When goods are receipt, they should either go to the pre-production area if there is need for them there, or otherwise can go to our stock.
Odoo configuration:
- Locations hierarchy:
- WH/Stock
- WH/Stock/Input (this is different than default Odoo setup)
- WH/Stock/Warehouse
- WH/Stock/Warehouse/Sublocation1,2,3,...
- WH/Pre-production
- Routes configuration:
- Pick and produce (Sequence = 8):
- Action Pull from: WH/Stock -> WH/Pre-production
- Action Pull from: WH/Pre-production -> Virtual Locations/Production
- Reception in 2 steps (Sequence = 9)
- Action Push to: WH/Stock/Input -> WH/Stock/Warehouse
Resulting behaviour:
- We create a manufacturing order. This automatically creates an Internal Transfer of type Picking. This remains in status waiting if not all components are available.
- When missing components arrive, we complete Operation Receipts. Components are put to WH/Stock/Input
- Instead of linking those components with the existing picking operation, a new Internal Transfer is created of type Storage.
THIS WE DO NOT WANT: Storage should only happen for products that cannot be linked to existing transfers.
I find this behavior strange, since I put higher priority (lower sequence nr) on the picking route compared to the storage route.
I also tried changing the first action in the "Pick and produce" route to Pull & Push, but this doesn't change the behaviour.
Anyone got any idea what am I doing wrong, or how I can change the behaviour the way we need it? Thanks in advance!
Odoo have fixed routes, and not dynamic as you want. To get that dynamic function you want, you would need programming. Should be possible, but dynamic actions is complex.
With to step receipt there is also a transfer from Input to location to Stock. So if you want to skip the input location and put directly in stock, you would need to cancel the transfer from Input to stock.
Both steps can be done manually.