Replenishment for BOM and Components - BOM Centric
In this article
Plan driven with Weekly and Daily Menu Planner
The goal of the Replenishment for BOM and Components functionality is to provide a solution to calculate demand for BOM (Bill of Material) items and then break down the demand to linked components which are purchased and transferred.
This scenario is common in hospitality where recipe or BOM items are sold, and there is a need to purchase the Ingredient or Component items to cook, bake, or produce the sold items. This process applies to all item types that use the Assembly BOM concept.
Note: The workflows below are described with hospitality items and terminology, but are not limited to this industry.
BOM/Recipe centric scenarios make use of the Replenishment Template Types BOM and Component. BOM templates and Component templates can be linked, and one BOM template can be linked to multiple Component templates. The purpose of the BOM Replenishment Journal is to calculate the demand for the sold BOM items. You can adjust the calculated demand and proposed quantity in the Replenishment Journal Lines. In a second step the Component Replenishment Journals are calculated from the BOM Replenishment Journal. The quantity from the BOM Journal Lines is used to calculate the component quantities by using the BOM Component definition.
Multiple Component Replenishment Journals can be specified to separate component purchases or transfers by vendors, item categories, retail product groups, and so on.
The Purchase Orders and Transfer Orders are created from the Component Replenishment Journals.
Make to Order
This process is used when BOM items that are produced on the fly are sold. A typical use case is burgers in quick-service restaurants (QSR). Such items have the field BOM Method set to Explode at Posting in the Recipe Card page.
Sales flow
- Customer orders a burger.
- Cashier enters product in the POS and sells the item.
- During the end-of-day Statement calculation and posting:
- The burger sale is posted.
- The burger production is posted. The Burger item is added with a Positive Adjustment and the Ingredient items (bread, meat, vegetables) are posted as Negative Adjustment.
Replenishment flow (Purchase to Warehouse and Transfer to Stores)
Purchase
- A BOM Purchase Replenishment Journal is used to calculate the aggregated demand for the Burger items across all stores.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Purchase Replenishment Journal(s).
The quantity from the BOM Purchase Journal Lines and the BOM Component definition are used to calculate the Component Purchase Journal Lines. - User can adjust the quantity in the Component Journal Lines.
- User creates Purchase Orders from the Component Replenishment Journals for the warehouse.
Transfer
- A BOM Transfer Replenishment Journal is used to calculate the demand for the Burger items for each store.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Transfer Replenishment Journal(s).
The quantity from the BOM Transfer Journal Lines and the BOM Component definition are used to calculate the Component Transfer Journal Lines. - User can adjust the quantity in the Component Journal Lines.
- User creates Transfer Orders from the Component Replenishment Journals.
Replenishment flow (Purchase to Stores)
Purchase
- A BOM Purchase Replenishment Journal is used to calculate the demand for the Burger items for each store.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Purchase Replenishment Journal(s).
The quantity from the BOM Purchase Journal Lines and the BOM Component definition are used to calculate the Component Purchase Journal Lines. - User can adjust the quantity in the Component Journal Lines.
- User creates Purchase Orders from the Component Replenishment Journals for the stores.
Replenishment flow (Purchase to Warehouse with Cross Docking)
- This process is not supported.
Setup for this process
- Replenishment Templates
- A BOM Replenishment Journal and one or more Component Replenishment Journals have to be defined.
- The Component Replenishment Journal(s) have to be linked to the BOM Replenishment Journal.
- BOM Item
- Item has to be active for Replenishment with valid Replenishment Control Data.
- Field Use BOM/Component Journal in the Replen. Control Data page has to be activated.
- Field BOM Method in the Recipe Card page has to be set to Explode at Posting.
- Component Item(s)
- Item has to be active for Replenishment with valid Replenishment Control Data.
- Field Use BOM/Component Journal in the Replen. Control Data page has to be activated.
Make to Stock
This process is used when we sell BOM items that are produced in advance. A typical use case is cakes that are produced before they are sold. Such items have the field BOM Method set to Produce in the Recipe Card page.
We differentiate between two sub processes, depending on the place of the production. The BOM item can be produced in the warehouse and is then shipped to the stores, or the components are shipped to the store where the BOM item is produced.
Make to Stock - production in store
Sales flow
- Customer orders Cake.
- Cashier enters product in the POS and sells item.
(This happens based on the assumption that at least one cake is on stock in the store due to previous production) - During the end-of-day Statement calculation and posting, the sales of the Cake is posted.
Replenishment flow (Purchase to Warehouse and Transfer to Stores)
Purchase
- A BOM Purchase Replenishment Journal is used to calculate the aggregated demand for the Cake across all stores.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Purchase Replenishment Journal(s).
The quantity from the BOM Purchase Journal Lines and the BOM Component definition are used to calculate the Component Purchase Journal Lines. - User can adjust the quantity in the Component Journal Lines.
- User creates Purchase Orders from the Component Replenishment Journals for the warehouse.
Transfer of purchased Component items
- A BOM Transfer Replenishment Journal is used to calculate the demand for the Cake in each store.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Transfer Replenishment Journal(s).
The quantity from the BOM Transfer Journal Lines and the BOM Component definition are used to calculate the Component Transfer Journal Lines. - User creates Transfer Orders from the Component Replenishment Journals.
Assembly/Production
- User creates Assembly Orders from the BOM Transfer Replenishment Journal. The Assembly Orders are created for the stores.
Replenishment flow (Purchase to Stores)
Purchase
- BOM Purchase Replenishment Journal is used to calculate the demand for the Cake in each store.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Purchase Replenishment Journal(s).
The quantity from the BOM Purchase Journal Lines and the BOM Component definition are used to calculate the Component Purchase Journal Lines. - User creates Purchase Orders from the Component Replenishment Journals for the stores.
Assembly/Production
- User creates Assembly Orders from the BOM Purchase Replenishment Journal. The Assembly Orders are created for the stores.
Replenishment flow (Purchase to Warehouse with Cross Docking)
- This process is not supported.
Setup for this process
- Replenishment Templates
- A BOM Replenishment Journal and one or more Component Replenishment Journals have to be defined.
- The Component Replenishment Journal(s) have to be linked to the BOM Replenishment Journal.
- BOM Item
- Item has to be active for Replenishment with valid Replenishment Control Data.
- Field Use BOM/Component Journal in the Replen. Control Data page has to be activated.
- Field BOM Assembled In in the Replen. Control Data page has to be set to Store.
- Field BOM Method in the Recipe Card page has to be set to Produce.
- Component Item(s)
- Item has to be active for Replenishment with valid Replenishment Control Data.
- Field Use BOM/Component Journal in the Replen. Control Data page has to be activated.
Make to Stock - production in warehouse
Sales flow
- Customer orders Cake.
- Cashier enters product in the POS and sells item.
(This happens based on the assumption that at least one cake is on stock in the store due to previous production) - During the end-of-day Statement calculation and posting, the sales of the Cake is posted.
Replenishment flow (Purchase to Warehouse and Transfer to Stores)
Purchase
- BOM Purchase Replenishment Journal is used to calculate the aggregated demand for the Cake across all stores.
- User can adjust the quantity in the BOM Journal Lines.
- User calculates the linked Component Purchase Replenishment Journal(s).
The quantity from the BOM Purchase Journal Lines and the BOM Component definition are used to calculate the Component Purchase Journal Lines. - User creates Purchase Orders from the Component Replenishment Journals for the warehouse.
Assembly/Production
- User creates Assembly Orders from the BOM Purchase Replenishment Journal. The Assembly Orders are created for the warehouse.
Transfer of produced BOM items
- Standard (not BOM) Transfer Replenishment Journal is used to calculate the demand for the Cake in the stores.
- User can adjust the quantity in the Transfer Replenishment Journal.
- User creates Transfer Orders from the Transfer Replenishment Journal.
Replenishment flow (Purchase to Stores)
- This process is not supported since the production takes place in the warehouse.
Replenishment flow (Purchase to Warehouse with Cross Docking)
- This process is not supported.
Setup for this process
- Replenishment Templates
- A BOM Replenishment Journal and one or more Component Replenishment Journals have to be defined.
- The Component Replenishment Journal(s) have to be linked to the BOM Replenishment Journal.
- BOM Item
- Item has to be active for Replenishment with valid Replenishment Control Data.
- Field Use BOM/Component Journal in the Replen. Control Data page has to be activated.
- Field BOM Assembled In in the Replen. Control Data page has to be set to Warehouse.
- Field BOM Method in the Recipe Card page has to be set to Produce.
- Component Item(s)
- Item has to be active for Replenishment with valid Replenishment Control Data.
- Field Use BOM/Component Journal in the Replen. Control Data page has to be activated.
Plan driven with Weekly and Daily Menu Planner
This process is used when we plan the sales of BOM items that are planned with the Weekly and Daily Menu Planner. A typical use case is catering, event business, or canteens where the demand of meals is planned upfront with the Menu Planner. The registered quantities per meal are transformed into a Planned Sales Demand which is used in the Replenishment Journal calculation.
To accomplish this, a Replen. Planned Event has to be created and linked to a Menu Planner. When the link is established, a Menu Planner can create Planned Sales Demand lines which will result in demand for the BOM items. This demand will trigger Purchase Order and Transfer Order proposals in the Replenishment Journals.
Note: Planned Sales Demand is only applicable to items with the Replenishment Calculation Method of Average Usage and Manual Estimate.
Flow in Menu Planner
- Create a Menu Planner.
- Create a Replen. Planned Event with Source Type of Menu Planner and link it to the Menu Planner.
- Plan meals in Menu Planner.
- Create Planned Sales Demand lines from Menu Planner. This can be accomplished in two ways:
- Push from Menu Planner
In the Weekly Menu Planner page, click Actions - Replenishment - Create Planned Sales Demand Lines.
This will create or update the lines of the linked Replen. Planned Event. - Pull from Replen. Planned Event
In the Replen. Planned Events page, select the relevant Event and click Update Lines.
This will open a report with filter option to create or update the lines of the Replen. Planned Event from the linked Menu Planner.
See also: Replenishment Planned Sales Demand
Sales Flow and Replenishment flow
The sales flow and replenishment flow depends on the chosen scenario, for either Make to Order or Make to Stock.
Make to Order
For Make to Order items the flow and required setup is as described in the Make to Order section above. The (additional) sales demand from the Menu Planner will add to the demand from regular sales in the stores and the summarized demand will be calculated in the BOM Replenishment Journal. From that point onwards, the flow follows the standard flow.
Make to Stock
For Make to Stock items the flow and required setup is as described in the Make to Stock section above. The (additional) sales demand from the Menu Planner will add to the demand from regular sales in the stores and the summarized demand will be calculated in the BOM Replenishment Journal.
You have two options to produce the BOM items:
- Menu Planner
You can create the Assembly Orders in the Menu Planner directly.
Please note that Assembly Orders cannot be created if needed components are not available. - BOM Replenishment Journal
You can create the Assembly Orders in the BOM Replenishment Journals, as described above.
Note: Assembly Orders can be created for BOM items even if the components are not available.
Setup for this process
- Replen. Planned Event
- A Replen. Planned Event has to be defined and linked to a Menu Planner.
- Replenishment Templates
- A BOM Replenishment Journal and one or more Component Replenishment Journals have to be defined.
- The Component Replenishment Journal(s) have to be linked to the BOM Replenishment Journal.
- BOM Item
- Item setup depends on the selected process, see the Make to Order and Make to Stock sections above.
- Component item(s)
- Item setup depends on the selected process, see the Make to Order and Make to Stock sections above.
See also
Replenishment for BOM and Components - Component Centric
Calculation Process for BOM and Components