In this tutorial I’ll show product based warehouse mapping.
In this use case I have two Kitchens. Chinese Kitchen and Pakistani Kitchen. Both Kitchen have similar inventory Items like meat, oil, etc… I also have Chinese Food and Pakistani Food products. When I sell Chinese Food it should consume items from Chinese Kitchen’s Warehouse and when I sell Pakistani food it should consume meat from Pakistani Kitchen’s Warehouse.
Before implementing solution I’ll show details about how I’ve configured inventory items, products, warehouses and recipes.
I’ve created two products.
I have two warehouses for each kitchen.
For simplicity I have single “Meat” Inventory item.
I’ll edit Purchase Transaction Type
and clear Default Warehouse
setting to be able to choose warehouse while purchasing items.
I bought 2 KG Meat for each Kitchen.
Chinese food consumes 100 GR Meat.
Pakistani food consumes 150 GR meat.
We’ll create a Custom Product tag to be able to map Warehouses to Products. From Settings > Program Settings screen I’ll configure Warehouse setting for products.
I’ll edit Chinese Food
product and type Chinese Kitchen
value for Warehouse
settings.
I can also use Product Tag Editor
to batch edit Warehouses. I’ll update Pakistani Food warehouse as Pakistani Kitchen
through this screen.
Click Save
button to update your changes. All items that don’t have a warehouse assignment will decrease from Local Warehouse
.
Now I’ll create an action that updates Order’s Warehouse.
When a new order added to Ticket I’ll execute this action to update Warehouse. I’ll use {ITEM TAG:Warehouse}
tag to read warehouse assigned to product.
That’s all configuration needed. I’ve configured it flexible so we only need to assign Warehouse for new created products.
Now I’ll create a ticket and sell 1 from both products.
100 GR meat consumed from Chinese Kitchen.
… and 150 GR meat consumed from Pakistani Kitchen.