Making Goods with Manufacturing Resource Planning

Greg Moss

November 2013

(For more resources related to this topic, see here.)

Creating manufacturing orders

Manufacturing orders define the product you wish to build and the resources that are required to build it. They also designate when you wish to produce the product.

Producing the product

When it is time to actually produce the product, you then inform OpenERP of each of the products produced, and your manufacturing order changes to a status of Complete . In a typical workflow, your raw materials are moved out of the inventory and your finished product is added into your inventory.

Delivering the order

After a product has been produced and has been put into the inventory, it can be packaged and delivered to the customer. Depending on the specific manufacturing environment, a product may not even sit in a physical inventory location at all, and instead may be shipped almost immediately to the customer. Meanwhile in another industry, you may have a product that is produced and then sits in a warehouse for months before delivery. Of course, it is always possible that something gets produced and gets left in dead stock. In this case, you would never have a delivery order and instead use a process to determine how to report that dead inventory.

Defining the workflow for your business

Much like configuring the CRM application, often the most complex part of setting up a purchasing and manufacturing system is not the ERP software itself. Instead, the real challenge is understanding the business requirements and how current processes can best be implemented. If you have never set up a purchasing and manufacturing system before, it is highly recommended that you supplement your knowledge with additional reading on the subject.

A real-world example – producing a custom-printed t-shirt

In OpenERP you manufacture products by creating manufacturing orders. For our example, we will be printing t-shirts that have a custom-designed logo. The basic manufacturing process itself involves using a screen to apply ink to each of the t-shirts. For now, we don't need to know all the details of this process to begin using OpenERP to help schedule and track the manufacturing of the product.

The basic steps in the process are simple:

  1. Define a bill of materials that determine what items are needed to produce the final product.
  2. Use a manufacturing order to print a design on the blank t-shirts.
  3. Deliver the printed t-shirts to a customer.

Installing manufacturing resource planning (MRP)

We must now install the MRP application so that we can begin configuring our t-shirt production. By now, you should begin to understand the modular nature of OpenERP. Install the MRP application just like you did with the other OpenERP applications. Navigate to Settings | Apps .

Creating your first manufacturing order

The flexibility of OpenERP provides a variety of approaches you can take in setting up your system. Manufacturing can also become a complex topic and is one of the more challenging aspects of setting up any ERP system. For our first manufacturing order, we will ignore many of the advanced options.

Keep it simple at first. There are many options and it will take time to understand them all. If you are new to manufacturing systems, it will take you longer to implement OpenERP, and you should consider hiring professional consultants to assist you.

To create your first manufacturing order, go to the Manufacturing menu, choose Manufacturing Orders , and then click on Create .

This is the manufacturing order as it appears just after you click on Create . The MO in the sequential order number that will be assigned stands for, you guessed it, Manufacturing Order . We will use this form to define our manufacturing order to print our custom-designed t-shirts.

Selecting the product

The only product we have entered into OpenERP so far is a blank Medium White T-Shirt . This t-shirt is currently a raw material. Now we want to produce a new product. We must define what our final product will be after the t-shirt has been printed. For our example, it will be Class of 2013 T-Shirt .

OpenERP allows you to create this product on the fly. Just click on the pop up and choose Create and Edit .

The Product and Procurements tabs should look familiar by now. The most important aspect for this product is the supply method. It is set to Manufacture . Only the products that have the supply method of Manufacture can be selected as a product on a manufacture order.

You will also notice that the Can be Purchased checkbox is unchecked. This will keep this product from appearing in the product list on a purchase order. We have also put on a Manufacturing Lead Time of 3.000 days. This will then impact the dates that are automatically assigned when we create a manufacturing order.

Building your bill of materials

A bill of materials is essentially a list of products that are required to produce another product. You can think of it like the list of ingredients for a recipe. OpenERP needs to know what materials are required for us to produce this Class of 2013 T-Shirt product.

In complex products, a bill of materials can be nested. For example, it may take many products to make a subproduct and then several subproducts to make a final product. For our first bill of materials example, we will be keeping the bill of materials simple. We are just going to require the white t-shirt.

If there are enough white t-shirts, we can print on them. For now, the inks and screens will not be managed in the manufacturing process. This is an example of starting simple and adding more complexity as we build up the system.

Clicking on the Create and Edit pop up under Bill Of Materials will bring up the Bill of Material editor.

Many of the fields will be automatically filled out, as OpenERP knows we are creating a bill of materials for our Class of 2013 T-Shirt product. In this example, we have added Medium White T-Shirt to the bill of materials. Both quantities are set to 1.000. When we manufacture one Class of 2013 T-Shirt, we will require one Medium White T-Shirt. Often, a bill of materials will contain multiple items.

Confirming production

Once you click on Confirm Production , you are ready to manufacture the product. OpenERP will provide reasonable defaults, which you can override as required. When production is confirmed, the production of the product has not happened yet. It has only been confirmed for production and all is ready to go. You can tell we are ready to go because the Produce button is available.

Here is what our Class of 2013 T-Shirt manufacturing order looks like now:

Producing the product

After you click on the Produce button, you will be prompted to confirm that the product has been produced.

The Mode option allows you to choose if you want to consume the raw materials and produce the final product, or simply consume the raw materials. The latter option may be used in a long production cycle where you need to show the raw materials gone from the inventory but you want another step to actually produce the final product. For this example, we will choose Consume & Produce to consume and produce the final product. Click on Confirm .

The product has now been produced and is available in the inventory for sale. Congratulations, you have just used OpenERP to manufacture your first product!

Analyzing the inventory

One of the easiest ways to see the effect of our manufacturing order is to look at the inventory analysis. Navigate to Reporting | Warehouse | Inventory Analysis .

Here you will see that we now have one Class of 2013 T-Shirt and eleven units of the Medium White T-Shirt . The inventory has accurately reflected the purchases we have made as well as the products consumed and produced by our manufacturing order.

Managing routings and work orders

This first manufacturing order was very simple, and our bill of materials only contained one product. In many companies the manufacturing operations are far more complex. For example, in some instances depending on the attributes of the product, the manufacturing process could involve different work centers or alternative steps to produce the final product. By default, OpenERP's manufacturing application takes a more simplified approach. Going into the settings of the manufacturing application allows you to specify additional options.

Simply go to the Settings menu and select Manufacturing under the configuration section on the left. Here under Manufacturing Order | Planning , you can check Manage routings and work orders . Once this option is checked, you will have the ability to manage more complex manufacturing processes inside OpenERP.

After you apply the changes by clicking on Apply , the menus will refresh and new options will be added to the manufacturing application.

Creating a work center

In our previous simplified manufacturing order, we simply specified the raw product required in a bill of materials and then turned that into a finished product. Now we will expand this example to specify the human labor that goes into printing our Class of 2013 T-Shirt. In OpenERP we define the parameters in a work center.

For the purpose of our example, we will create a work center named Printing that is responsible for taking the blank t-shirt and applying the design to create the final product. We begin by going to the manufacturing application, and under the Configuration menu choosing the Work Center option. Then, we click on Create to set up a new work center record.

In our example, we have named the work center Printing. In a full implementation, it would be common to have different work centers based on the work performed.

Defining the resource type

While setting up a work center, you are required to specify Resource Type . This setting can either be Human or Material . As you may expect, a human resource will primarily depend on human interaction in performing the work, while a material resource would typically indicate a nearly automatic machine that once configured will perform the work unattended.

Setting capacity information

While defining a work center, it is possible to define Capacity Information that will allow you to estimate the cost and time required to produce your products. In our example, we are going to configure this work center so that we can estimate the time required to produce a t-shirt. Let's look at each of the capacity values.

Efficiency factor

The Efficiency Factor field is a metric of how efficient this work center is at completing tasks. Often, the efficiency factor is most valuable in allowing you to tweak your work center capacity without modifying many of the other variables. If, for example, you have an efficiency factor of 2.00 (or 200 percent), the work center will complete twice as many tasks. For our example, we are leaving the efficiency factor as the default of 1.00 or 100 percent. Some consider it lazy work center design to modify efficiency values rather than more accurately configuring other capacity settings.

Capacity per cycle

The Capacity per Cycle field allows you to determine how many tasks the work center can do in parallel. For example, if you had a work center that could be configured with three workers and all three workers can complete a cycle at the same time, you could set Capacity per Cycle to 3.00. When a manufacturing order is then routed to the work center, the work center can complete three tasks at the same time. For our example, we will assume one worker and therefore, one capacity per cycle.

The time for one cycle in hours

Time for 1 cycle (hour) specifies how much time in hours it takes to complete one cycle. In our example, we are producing t-shirts. Therefore, this value indicates how long it takes to produce one t-shirt. In this example, we have specified that each t-shirt will take two minutes (00:02) to be produced by this work center.

The time before and after production

Many work center operations will have time required for setup and tear-down times before you can begin actually producing the product. This is certainly true for our example. It takes time for someone to prepare a printing press before the first t-shirt can be printed. For our example, we have estimated five minutes of setup time. Likewise, when we are done producing the last product in our work order, it takes time to clean up and prepare for the next job. In this example, we have estimated five minutes (00:05) of time at the end of production for clean-up operations.

Costing information

If desired, you can also specify a product that is produced by a work center. In some manufacturing operations, a work center will always produce the exact same assembly or subassembly. For our example, we want our work center to be flexible, and it may print any number of finished products; so we will leave the work center product field blank.

Creating routing orders

After defining a work center, we need to define a way to specify under which conditions we should use the work center. This is accomplished by defining routings. For our example, we are going to keep it simple and use routing to send our manufacture order to the printing work center for the finished product to be produced. In a real-world example, the job may use routings to go through many work center operations before the final product is produced.

To create a routing order, go to the manufacturing application and choose Routings under the Product submenu. Click on Create to bring up the new routing form.

In our example, we have named the routing Print Job and specified Production Location . For complex routings, you can specify the sequence of the operations. We could, for example, have a Design operation and a Build Screen operation before the Print Job operation. Then, we could specify a Quality Assurance operation and a Packing operation after Print Job .

Creating a manufacturing order with routing and work center

Now that we have defined our work center and our routing operation, we can create a manufacturing order that will utilize our new production steps. In this example, we are going to produce 15 Class of 2013 T-Shirts.

You will notice that in the manufacturing order, we have selected Print Job for the routing of this order. This is the key field that will send this job to the printing work center to be produced. Clicking on Confirm Production will load in the products that will need to be consumed, as well as the work orders required to produce the product.

Notice on the far right that it is estimated it will take 0.67 hours to produce these 15 Class of 2013 T-Shirts. How did we arrive at that number? It is a result of the capacity information we specified in the Printing work center earlier in the article. The analytical formula for this would be:

Capacity information = 5 minutes setup + (2 minutes * 15) + 5 minutes tear-down time

Producing the manufacturing order

Now you can click on Produce to send the manufacturing order to the work center and produce the 15 t-shirts. You will get a confirmation screen to confirm that you wish to create all 15. After production, the state will go to Done , and you will find the 15 t-shirts in your inventory ready for shipping.


In this article we installed the MRP application to begin setting up our manufacturing process. A bill of materials was created to define what products would be consumed when our product was manufactured. Finally, we manufactured our final product and looked at the inventory analysis report to verify our results.

Resources for Article:

Further resources on this subject:

You've been reading an excerpt of:

Working with OpenERP

Explore Title