Getting Started with Apache OFBiz Manufacturing & MRP
Introduction
OFBiz Manufacturing & MRP is a highly functional seamless application that contains everything you need to run an efficient and successful manufacturing business.
...
By the end of the document, you should have enough information to begin your own manufacturing setup in OFBiz.
Target Audience
This document is written for the complete novice end user. No programming or technical experience is required.
What is Manufacturing?
Manufacturing is the “act of making something out of raw materials”. The 'something' that is manufactured is generally a product that can be on-sold to customers.
Manufacturing is not only an industrial activity carried out in a factory, but it can also be any range of tasks that result in an end product. So, even if you only assemble products you can still make use of OFBiz Manufacturing & MRP.
What is MRP?
MRP is a three-letter abbreviation that is always used in conjunction with manufacturing – so what exactly is it?
MRP stands for “Material Requirement Planning”. It’s a computer program that, when running regularly, helps a business to plan what to manufacture and when to manufacture it.
...
The MRP tool comes with OFBiz ‘out of the box’.
The 5 Steps to ‘Getting Started’
This guide assumes you have read and performed the tasks in the “Getting Started with Apache OFBiz In 5 Easy Steps” document and that you have already:
...
Log in using the username “admin” and password “ofbiz” to perform all OFBiz tasks.
Step 1: Understand Your Manufacturing Processes
- This first step involves taking a look at your business processes and what your manufacturing flows are.
- You need to be able to answer questions about when you manufacture your product,
- what triggers the process
- and how you manufacture.
Step 2: Decide which processes you want to use OFBiz for
If you are new to OFBiz you may want to look at starting with a simple process then when you’re more comfortable move onto your more complex processes.
Step 3: Setup your Product Data
Setup the product data you need; This will include your raw materials and your manufactured product.
Approximate Time Required to Complete: 15 minutes
Step 4: Setup your Manufacturing Data
Setup the data you need for manufacturing; This includes the Bill of Materials (BOM), Routing Tasks and a Routing.
Approximate Time Required to Complete: 15 minutes
Step 5: Run MRP
...
, Review the Results and Execute Procurement and Production Run
Run MRP and take a close look at the results.
Approximate Time Required to Complete: 20 minutes
Step 1: Understand Your Manufacturing Processes
Take a look at your business processes. You need to know what your manufacturing flows are. You should be able to define and describe the type of manufacturing you do.
...
Make sure to document all your responses and processes.
Step 2: Decide which processes you want to use OFBiz for
Decide on which manufacturing process (or processes) you'd like to use OFBiz for. Limiting your scope reduces your risk and makes it simpler to prototype and test.
If your initial process implementation is successful, then expand the prototyping to include additional processes.
Basic Manufacturing Concepts and Processes
There are generally the two main processes that trigger when you manufacture a product. They are as follows:
...
- This means that you’ll always have stock on hand in a warehouse or shop to sell to customers whenever an order arrives.
- Make to Order (MTO)
- The manufacturing process is triggered by an order from a customer. – - The product is manufactured specifically for that customer. There is no stock held in a warehouse or shop.
...
- This additional process is called “Raw Materials Purchasing”
- Make to Stock, Make to Order and Raw Materials Purchasing are all supported with OFBiz2.
...
Each manufacturing business will be different, so for demonstration purposes, we will use an example scenario.
Using our scenario we’ll take you step by step through the manufacturing setup required.
Example Scenario: Manufacturing Tables
A carpenter runs a business making tables.
To make one table he uses 5 pieces of wood, 20 nails and a bottle of varnish.
To make a table he’ll cut the wood to length, nail it together, sand it and finally varnish it.
The completed table is then put in his shop, ready to sell to customers passing by.
He likes to keep a minimum of five completed, ready to sell tables in his shop.
He keeps track of the amount of wood, nails, and varnish he has in stock to make sure that he doesn’t run out.
If we do an analysis of his business processes then we see that our carpenter runs a “Make to Stock” manufacturing process supported by “Raw Material Purchasing”.
...
*“Raw Material Purchasing” - He keeps track of his raw materials so that he doesn’t run out
His raw materials are:
- Wood
- Nails
- Varnish
His manufacturing process and sequence steps are:
- Cut Wood
- Nail Wood Together
- Sand Table
- Varnish Table
Our Objective for OFBiz
We will setup this manufacturing business in OFBiz and configure MRP to prompt us when we need to make tables and when to order more raw materials.
Step 3: Setup your Product Data
Approximately 15 minutes is required to complete this step.
Using Catalog Manager to Set up the Raw Materials
- Our first task is to set up our raw materials within OFBiz.
- Use the Catalog Manager and the table below to:
- Create new products of type “Raw Materials” for wood, nails, and varnish (see Figures 1, 2 and 3)
...
...
Figure 1: Creating a New Product using the Catalog Manager
...
...
- The product is manufactured specifically for that customer. There is no stock held in a warehouse or shop.
Your business may use either one or a combination of these processes. To support the above processes you also need to ensure that you have the right raw materials in stock at the right time to be able to manufacture.
- This additional process is called “Raw Materials Purchasing”
- Make to Stock, Make to Order and Raw Materials Purchasing are all supported with OFBiz2.
Example Scenario
Each manufacturing business will be different, so for demonstration purposes, we will use an example scenario.
Using our scenario we’ll take you step by step through the manufacturing setup required.
Example Scenario: Manufacturing Tables
A carpenter runs a business making tables.
To make one table he uses 5 pieces of wood, 20 nails and a bottle of varnish.
To make a table he’ll cut the wood to length, nail it together, sand it and finally varnish it.
The completed table is then put in his shop, ready to sell to customers passing by.
He likes to keep a minimum of five completed, ready to sell tables in his shop.
He keeps track of the amount of wood, nails, and varnish he has in stock to make sure that he doesn’t run out.
If we do an analysis of his business processes then we see that our carpenter runs a “Make to Stock” manufacturing process supported by “Raw Material Purchasing”.
*“Make to Stock” - He likes to keep a minimum of 5 tables in stock so is not reliant on a customer order to make a table
*“Raw Material Purchasing” - He keeps track of his raw materials so that he doesn’t run out
His raw materials are:
- Wood
- Nails
- Varnish
His manufacturing process and sequence steps are:
- Cut Wood
- Nail Wood Together
- Sand Table
- Varnish Table
Our Objective for OFBiz
We will setup this manufacturing business in OFBiz and configure MRP to prompt us when we need to make tables and when to order more raw materials.
Step 3: Setup your Product Data
Approximately 15 minutes is required to complete this step.
Using Catalog Manager to Set up the Raw Materials
- Our first task is to set up our raw materials within OFBiz.
- Use the Catalog Manager and the table below to:
- Create new products of type “Raw Materials” for wood, nails, and varnish (see Figures 1, 2 and 3)
Product ID | Product Name | Minimum Stock | Re-order quantity |
---|---|---|---|
10000* | Wood | 25 | 100 |
10010* | Nails | 100 | 500 |
10011* | Varnish | 5 | 20 |
*Use Product ID returned by the Catalog Manager |
Figure 1: Creating a New Product using the Catalog Manager |
---|
Figure 2: Opening the entire form to enter details while creating a New Product |
---|
Figure 2.1: Review the entire form to enter Required details to create a New Product |
---|
- Make sure the “Requirement Method Enum Id” for each product is set to “When QOH Reaches Minimum Stock for Product Facility” as shown in Figure 2.
- This tells MRP that when the Quantity on Hand (QOH) gets to our minimum then you want to order more.
Figure 2.3: Setting the Requirement Method Enum Id |
---|
- Set the re-order quantity and minimum stock fields using the product “Facilities” tab as shown in Figure 3.
- Select the Web Store Warehouse as the “Facility Id”
Figure 3: Setting Minimum Stock and Re-order Quantities for a Product |
---|
- Setup one supplier for each of the Raw Materials using the data from the following table:
Product | Supplier | Supplier Pref Order ID | Supplier Product ID | Last Price |
---|---|---|---|---|
Wood | Demo Supplier | Main Supplier | XYZWood | 11.00 |
Nails | Demo Supplier | Main Supplier | 123Nails | 4.00 |
Varnish | Demo Supplier | Main Supplier | ABCVarnish | 5.00 |
- Suppliers for products are setup using the product “Suppliers” tab as shown in Figure 4.
Figure 4: Setting up a Supplier for a Product |
---|
Reminder: Before continuing, make sure you have created new products for Nails and Varnish too. |
---|
Using Catalog Manager to Set up the Manufactured Product
Use Catalog Manager to:
- Create a new product for the manufactured product (the table) of type “Finished Good” using the details below:
Product ID | Product Name | Default Price | Minimum Stock |
---|---|---|---|
10001* | Table | 75.00 | 5 |
* Take product Id returned by Catalog Manager
- Make sure the “Requirement Enum Id” is set for this product too as shown in Figure 5.
Figure 5: Setting the Requirement Enum Id for the Manufactured Product |
---|
- Enter a “Minimum Stock” but don’t set a re-order quantity for the table since we manufacture it and don’t need to order them from a supplier as shown in Figure 6.
Figure 6: Leave the Re-Order Quantity blank for the Manufactured Product |
---|
This step is now complete |
---|
Step 4: Setup your Manufacturing Data
Approximately 15 minutes is required to complete this step.
Using Manufacturing Manager to Set up the Bill of Materials
The next task is to create a Bill of Materials (BOM).
The Bill of Materials is the list of raw materials or list of ingredients required to make our manufactured product.
In the previous step, we created the products, now we need to define the relationship between the table and its raw materials. This is done using the BOM.
One table is made up of 5 pieces of wood, 20 nails and 1 bottle of varnish so let’s create a BOM to reflect this. |
---|
Use Manufacturing Manager to:
- Create a new Bill of Materials by pressing the ‘Create Bom’ in the Bill of Materials tab as shown in Figure 7.
Figure 7: Creating a Bill of Materials (BOM) |
---|
- Enter the details for the Bill of Materials using the information in the table below.
Product D | Product ID To | Bom Type | Quantity |
---|---|---|---|
10001 | 10000 | Bill of Materials | 5 |
10001 | 10010 | Bill of Materials | 20 |
10001 | 10011 | Bill of Materials | 1 |
- An example of how to enter the first product for a Bill of Materials is shown in Figure 8
FigFigure 8: Adding the first product to a Bill of Materials (BOM) |
---|
- Once the first product (wood) is added a Bill of Materials (BOM) then additional products (nails, varnish) can be entered as shown in Figure 9
Figure 9: Adding an additional product to a Bill of Materials (BOM) |
---|
- Once the items have been added to the Bill of Materials then you should see a screen similar to the one shown in Figure 10
Figure 10: All Raw Materials added to the Bill of Materials (BOM) for Table |
---|
Using Manufacturing Manager to Set up the Routing Tasks
Next, we need to create Routing Tasks. These are the individual steps that are needed to turn the raw materials into a finished product.
Reminder: The steps to make the table are: cutting the wood, nailing it together, sanding it and varnishing it so we'll need to create a routing task for each of these. |
---|
Use Manufacturing Manager to:
- Create a new Routing Task by clicking the ‘New Routing Task’ button in the Routing Task tab as shown in Figure 11
Figure 11: Creating a new Routing Task |
---|
- Create new routing tasks using the data in the table below:
Routing Task Name | Description | Task Type |
---|---|---|
Cut Wood | Cut Wood to Length | Manufacturing |
Nail Together | Nail Wood Together | Manufacturing |
Sand Table | Sand the Table | Manufacturing |
Varnish Table | Varnish the Table | Manufacturing |
- An example of how to enter a Routing Task is shown in Figure 12
.
Figure 12: Entering Routing Task Details |
---|
Using Manufacturing Manager to Set up the Routing
The final pieces of the manufacturing setup are to:
- Link the tasks together in the sequence they need to be performed and;
- Make sure that all tables manufactured will default to this set of manufacturing steps.
This is done using a “Routing”.
The tasks required to manufacture our table, need to be performed in the following sequence:
1. Cut wood
2. Nail wood together
3. Sand table
4. Varnish table
Use Manufacturing Manager to:
- Create a new routing by clicking the ‘New Routing’ button in the Routing tab as shown in Figure 13.
Figure 13: Creating a New Routing |
---|
Enter the new routing details using the data in the table below (see Figure 14).
Routing Name | Description |
---|---|
Table Routing | Routing to Make Tables |
Figure 14: Entering Routing Details |
---|
Use the “Edit Routing Task Assoc” tab to add the details from the table below as shown in Figure 15.
Routing Task Id | Sequence |
---|---|
10000* | 10 |
10001* | 20 |
10002* | 30 |
10003* | 40 |
*Use the Task Id generated by Manufacturing Manager for Cut Wood, Nail Together, Sand Table and Varnish Table |
Tip: Use the “Add an existing Routing Task” to add the task and sequence to the routing |
---|
Figure 15: Adding a Routing Task Sequence to a Routing |
---|
- Once all tasks have been added you should see a screen similar to Figure 16
Figure 16: All Routing Tasks and Sequences added to a Routing |
---|
Next, we need to make sure that every table that we manufacture will use this routing since all tables are made using the same steps.
- Click on the “Edit Routing Product Link” tab and add the table product ID as shown in Figure 17 then click the “Update” button
Figure 17: Adding the Manufactured Product to a Routing |
---|
This step is now complete |
---|
Step 5: Run MRP, Review the Results, and Execute Procurement, Production Run
Approximately 20 minutes is required to complete this step.
Next is the most exciting step – we’ll run MRP for the first time and see what it tells us.
Before we do that, let’s do a quick recap of what our setup instructs MRP to do:
- When we make a table, use 5 pieces of wood, 20 nails and 1 bottle of varnish.
- Maintain a minimum stock of 5 tables and when we reach that minimum stock level then prompt me to manufacture some more table
- Maintain a minimum stock of 25 pieces of wood and when we reach that minimum stock level then prompt me to order 100 more pieces of wood.
- Maintain a minimum stock of 100 nails and when we reach that minimum stock level then prompt me to order 500 more nails.
- Maintain a minimum stock of 5 bottles of varnish and when we reach that minimum stock level then prompt me to order 20 more bottles.
Using Manufacturing Manager to Run MRP
Use Manufacturing Manager to:
- Go to the “MRP” tab and run the MRP report (see Figure 18) with the following parameters:
MRP Name | Facility Group | Facility | Default Year Offset |
---|---|---|---|
MRP1 | leave blank | Web Store Warehouse | 1 |
Figure 18: Enter Parameters to Run MRP |
---|
- Click the “MRP Log” tab and determine if the program is pending or finished running.
- Initially, it goes to Pending status and when it is finished the report will appear with a “Status ID” of ‘Finished’ under the “Last Job” section of the screen.
Figure 19: MRP Run Completed |
---|
- View the MRP results by clicking the “Find” button.
- On the result screen:
- You will find the required actions taken to ensure the minimum QOH as per the "Requirement Method Enum Id" set on the product which we have set as "When QOH Reaches Minimum Stock For Product-Facility".
- Observe the Proposed "Purchase Order receipts" generated for Raw Materials as we need that much inventory in the facility based on minimum stock and reorder quantity configured for each.
- Observe the "Proposed Manufacturing Order receipt" generated for the finished good(Table) that we have to manufacture.
- Now go to the Order Manager application "Requirements" Tab to find requirements generated through MRP for Raw Materials(Woods, Nails, and Varnish) and Finished Good.
- Go to the "Approve Requirements" tab, click find to review pending requirements, select the requirements you want to approve, and click Submit as shown below:
- You can also go to an individual requirement to review it in detail and mark it approved from there by updating the status of the requirement to Approved and submitting the form.
- Now go to tab "Find Approved Requirements By Supplier" and locate approved requirement.
- Select "Bill To Customer Party ID" as your company, Select the "Facility ID" where the raw material supply is required and click "Prepare Order"
- On the next screen to enter a new Purchase Order, enter the PO ID click "Purchase Order Quick Entry" and finalize the order to the Supplier for these required raw materials.
- After finalizing the Purchase Order, complete the receiving process to get the Raw Materials in the facility for completing the Production Run for 5 tables.
- Now locate the production Run generated when you approved the Proposed Requirement Manufacturing Order Receipt to manufacture 5 tables with the routing tasks that we have setup earlier.
- Go to the Manufacturing "JobShop" tab and find the production runs.
- Open the production run by clicking the link. Review the details of required routing tasks and materials to execute the production run to manufacture 5 tables.
- Confirm or Schedule production run using the respective buttons on production run view.
- As you confirm the production run, you will see that the production run tasks based on the sequence will start showing the button with the label "Start" to start a task.
- As you start the task you will see a new button to Issue Components required to the task, click that button.
- Mark the task completed by clicking the Complete button.
- As you complete the first task, based on sequence the second task will be activated and ask to Start. Follow the same process to Start and complete remaining tasks in production run to complete it.
- As you complete all the tasks in the production run, it's going to be marked completed automatically, and the produced quantity of the product(Table) will be accessible. From here add produced goods to inventory and move it to a location in the facility.
- Now you can locate the produced product inventory in the system showing its ATP and QOH as 5 which is produced by executing complete the production run.
If you have any questions on the process explained above, please feel free to send questions to the user mailing list<user@ofbiz.apache.org>.
If you face any issues while running the process feel free to open a Jira ticket and consider submitting a patch for the fix if you can. Thanks!
- Make sure the “Requirement Method Enum Id” for each product is set to “When QOH Reaches Minimum Stock for Product Facility” as shown in Figure 2.
- This tells MRP that when the Quantity on Hand (QOH) gets to our minimum then you want to order more.
...
- Set the re-order quantity and minimum stock fields using the product “Facilities” tab as shown in Figure 3.
- Select the Web Store Warehouse as the “Facility Id”
...
- Setup one supplier for each of the Raw Materials using the data from the following table:
...
- Suppliers for products are setup using the product “Suppliers” tab as shown in Figure 4.
...
Reminder: Before continuing, make sure you have created new products for Nails and Varnish too.
Using Catalog Manager to Set up the Manufactured Product
Use Catalog Manager to:
- Create a new product for the manufactured product (the table) of type “Finished Good” using the details below:
...
* Take product Id returned by Catalog Manager
- Make sure the “Requirement Enum Id” is set for this product too as shown in Figure 5.
...
- Enter a “Minimum Stock” but don’t set a re-order quantity for the table since we manufacture it and don’t need to order them from a supplier as shown in Figure 6.
...
This step is now complete
Step 4: Setup your Manufacturing Data
Approximately 15 minutes is required to complete this step.
Using Manufacturing Manager to Set up the Bill of Materials
The next task is to create a Bill of Materials (BOM).
The Bill of Materials is the list of raw materials or list of ingredients required to make our manufactured product.
In the previous step, we created the products, now we need to define the relationship between the table and its raw materials. This is done using the BOM.
...
Use Manufacturing Manager to:
- Create a new Bill of Materials by pressing the ‘Create Bom’ in the Bill of Materials tab as shown in Figure 7.
...
Figure 7: Creating a Bill of Materials (BOM)
- Enter the details for the Bill of Materials using the information in the table below.
...
- An example of how to enter the first product for a Bill of Materials is shown in Figure 8
...
- Once the first product (wood) is added a Bill of Materials (BOM) then additional products (nails, varnish) can be entered as shown in Figure 9
...
- Once the items have been added to the Bill of Materials then you should see a screen similar to the one shown in Figure 10
...
Using Manufacturing Manager to Set up the Routing Tasks
Next, we need to create Routing Tasks. These are the individual steps that are needed to turn the raw materials into a finished product.
...
Use Manufacturing Manager to:
- Create a new Routing Task by clicking the ‘New Routing Task’ button in the Routing Task tab as shown in Figure 11
...
- Create new routing tasks using the data in the table below:
...
- An example of how to enter a Routing Task is shown in Figure 12
.
...
Using Manufacturing Manager to Set up the Routing
The final pieces of the manufacturing setup are to:
- Link the tasks together in the sequence they need to be performed and;
- Make sure that all tables manufactured will default to this set of manufacturing steps.
This is done using a “Routing”.
The tasks required to manufacture our table, need to be performed in the following sequence:
1. Cut wood
2. Nail wood together
3. Sand table
4. Varnish table
Use Manufacturing Manager to:
- Create a new routing by clicking the ‘New Routing’ button in the Routing tab as shown in Figure 13.
...
Enter the new routing details using the data in the table below (see Figure 14).
...
...
...
- Once all tasks have been added you should see a screen similar to Figure 16
...
Next, we need to make sure that every table that we manufacture will use this routing since all tables are made using the same steps.
- Click on the “Edit Routing Product Link” tab and add the table product ID as shown in Figure 17 then click the “Update” button
...
This step is now complete
...