This question has been flagged
3 Replies
324 Views

Hi,


For products with multiple locations, how does Odoo determine which location to pull from? 


For example, we have a product A that is stored across 5 different location. Which location is priority and can we choose which location we would like it pulled from first?

 

Avatar
Discard

You can define the rules under routes.

Author

Hi Midhun,

Thank you for the response. Can you give an example of how the rule will look? For example if I have a product called A and location A-1-1, how would I create the rule so that it pulls from location A-1-1?

Best Answer

a nice Odoo approach that could help solve this issue, toghether with putaway rules, is "storage categories, under: https://www.odoo.com/documentation/17.0/applications/inventory_and_mrp/inventory/warehouses_storage/advanced_operations_warehouse/putaway.html?highlight=storage%20categories (first get to know the putaway rules and then scroll down to the storage categories)

Avatar
Discard
Best Answer

Hi,

In Odoo, you can configure rules to prioritize specific locations for different operations such as sales orders, internal transfers, or manufacturing. First, ensure that the 'Storage Locations' and 'Multi-Step Routes' features are enabled in the configuration settings of inventory. You can create rules by navigating to Inventory--> Configuration--> Rules.


In the rule configuration choose the appropriate action, such as 'Pull From', to specify that the product should be pulled from a specific location. Select the operation type to which you want to apply this rule, such as delivery orders, internal transfers, etc. Specify the source location from which you want to pull the product. Set the destination location where the product should be moved to after the operation. You can also select the route to which you want to apply this rule.


After defining the rule, make sure to apply the route to the product.


When creating an operation (specified in the rule) for that product, you'll notice that the source location is automatically determined based on the configured rule.


Hope it helps

Avatar
Discard
Author

Thank you!

Author

Hi Cybrosys,

This is not quite working as intended. If I create a pull from route "Pull From A-1-1" with source location A-1-1 and destination location partner/customer, when a delivery order is created, it creates the delivery order pulling from the correct location, however it creates a separate delivery order, one with source location "WH/STOCK" and another with "WH/STOCK/A-1-1."

How can it be done in a way where only one delivery order is generated?

Thank you.

Best Answer

Removal strategies determine which products are taken from the warehouse, and when. For example, for perishable products, prioritizing the picking of goods with the nearest expiration date helps minimize food spoilage.

See https://www.odoo.com/documentation/17.0/applications/inventory_and_mrp/inventory/warehouses_storage/removal_strategies.html?#removal-strategies

Avatar
Discard

"Closest" sorts by Location alphabetically, so WH/A will come before WH/Z

Author

Hi Ray,

Thank you so much for the information regarding the removal strategies. It unfortunately wouldn't work for us as our warehouse locations are not created in a way to take advantage of closest location method and we do not use serial numbers.

What I am trying to achieve is say we have a product "Ray" stored in multiple locations A, B, and C. I want Ray pulled from location B first in the delivery order first every time a sales order is confirmed.

I created a route with a push rule with:

Action: Pull From
Operation type: Delivery Orders
Source Location: WH/STOCK/B
Destination location: Partners/customers
Supply method: Take From Stock

This works, however, if there are other products in the sales order, multiple delivery orders are created because the source location is different. So a delivery order with the product Ray is created with source location B and another delivery order is created with the other products with source location WH/STOCK. We would like only one delivery order to be created so I adjusted the rule to:

Action: Pull From
Operation type: Delivery Orders
Source Location: WH/STOCK/B
Destination location: WH/STOCK
Supply method: Take From Stock

But this no longer achieves the desired result. We use Deliver in 1 step (ship).

@Ed, I have not worked with Push Rules like this so can't help you further.