View source | Discuss this page | Page history | Printable version   
Main Page
Upload file
What links here
Recent changes

PDF Books
Show collection (0 pages)
Collections help


ERP 2.50:Functional Documentation/MRP


Material Requirements Planning - An Introduction

From Wikipedia Material Requirements Planning (MRP) is a software based production planning and inventory control system used to manage manufacturing processes. Although it is not common nowadays, it is possible to conduct MRP by hand as well.

An MRP system is intended to simultaneously meet 3 objectives:

The MRP module is structured in two main processes:

During the planning processes, MRP assumes infinite capacity for different production plans or purchases. This means that the system will schedule a work requirement during the necessary days according to the capacity defined in the product, but it can plan additional work requirements during the same day although they use the same resources.


MRP Concepts

Material Requisitions

Bulbgraph.png   This section should be moved to the Procurement Management functional documentation

Material Requisitions are demands for products to be purchased. They are the output of the Production Plan process - which creates demand for raw material - and a possible input of the Purchase Plan process.

Each requirement is identified by a document number and it is composed of one or more lines, one per needed product and date combination. For each line, the following attributes are specified:

Sales Forecast

Sales Forecasts are a projection of customer demand for a given product or expected sales for customers. They can be used as inputs in the Manufacturing Plan and in the Purchasing Plan.

The key attributes of a sales forecast are:

A forecast is made of several lines; each line specifies the product for which you expect demand, the date when you expect the sale to occur, and the quantity expected be sold.

Planning method

The planning method is used to set the different transaction types that are considered during the planning process, as either supply or demand.

The planning method is a property of the product so different products can have a different planning method.

The available transaction classes for the planning method are:

For each transaction type, it is also possible to define whether transactions are considered for the whole time horizon or just for a portion:

You can also specify the percentage of quantity to be considered using the Weighting attribute. For example, if you specify a weight of 0.9 for Sales Forecast, if you provide a forecast of 100 units for a specific product, the planning method will only consider 90 units.


The Planner is an entity used to filter the products considered in the planning processes. On each purchase or manufacturing plan is possible to select a planner so only products associated with that planner are considered.

Typically, in an enterprise, different people are responsible for planning manufacturing and purchasing of different products. You can use Planners to model that practice.

Please notice that in the manufacturing plan process other products can be included when the product tree is exploded, see Manufacturing Plan section.

Configuring MRP in Openbravo

For the planning processes to work correctly, you have to properly configure the products and the vendors. Before starting it is needed to create the necessary planning methods and planners as they are required in the product configuration. It is very important to pay attention to the organizations where the products and vendors are being configured.

Product Configuration

The products have to be configured for each organization that performs manufacturing or purchase planning. You can do this in the Product definition window, in the Org Specific tab. The relevant attributes are:

Vendor Configuration

Further, to process the purchase plan it is necessary to set at least one current vendor for the products. For each product and vendor, you can specify:

In the purchase plan process, if these data is not defined for the selected vendor, it is defaulted from the values specified at product and organization level.

Process Plan Configuration

The correct definition of a process plan is essential for the correct execution of MRP as the process plans is needed to explode the product demand.

MRP, however, does not have any additional configuration options for process plans beyond what is required for Production Management.

Manufacturing Plan

Openbravo's manufacturing plan consists in creating work requirements and material requirements based on product demand. This process explodes all the product tree so all related products are planned. The source of material demand can be sales orders and sales forecasts. During the planning process it also takes into account current stock, minimum stocks, unreceived purchase orders and open work requirements.

When processing the plan, the products to be planned can be selected using several filters:

Please notice that this filter is only used at the beginning of the process but product selection grows as the product tree is exploded.
For example, in the following image, all the products will be planned when at least one of them fulfills the filter. When product C is planned it is necessary to plan the demand of its intermediate product F. The demand for F is driven by C but also by product B, which is then also planned. Similarly, to plan F it is necessary to also plan the raw materials product I and product J.
Continuing with this explosion process, we see that all the products in the tree need to be planned.


When the product tree is exploded, the planning process generates proposal lines that are linked to each other with a parent-child relationship.
Every product demand has its own work requirement proposal or material requirement proposal. Each work requirement proposal has different child lines, the main one is to manufacture the correspondent material requirement, and the children are for the products that are used and that might be created in the work requirement.

After the Manufacturing Planning process, it is possible to manually adjust the work requirement or material requirement recommended by MRP by editing quantities and dates.
When editing a work requirement, you only need to change the main line; you can then recalculate the dates and quantities of all the children lines by pressing the Recalculate button.

To put the manufacturing plan into execution, it is necessary to create the work requirement and material requirements from all the proposals using the correspondent processes.
The created Work Requirements only have the header so it is necessary to process it to create the operations and products. This is to allow a final review before initiating production.


Process Manufacturing Plan Logic

The manufacturing plan process is structured in three different steps. Before starting these steps the manufacturing plan lines that are not fixed are deleted, normally these lines are the proposals created in previous execution of the process. And all the remaining lines are set as not exploded except the lines of products that are manufactured in a work requirement in progress as the lines of the products that are consumed in that work requirements will already exist.


Once the lines are prepared begins the process, the first step is the initialization. The initialization consists on including in the process all the transactions expected to happen during the defined time period and that fulfills the planning method of each product. In this step are considered all the products that fulfills the filters set in the manufacturing plan. To know if a product has been initialized or not, the existence of inserted stock lines is checked. The stock lines are always included. For the purchase plan process are considered the purchase and sales orders, the sales forecasts and work requirements in progress.

Explode product tree

In the second step is exploded the tree of products that are manufactured. The explosion is performed in a recursive manner while not exploded lines exist. On each iteration all not exploded lines are considered. If the quantity of the line is negative it is a demand so a new line is inserted with opposite quantity. If the product of the line is purchased the new line is a Material Requirement proposal with planned and order date a number of days before defined by the lead time, the line is inserted as exploded as the purchases are managed in the purchasing plan. When the product is not purchased the new line is a Work Requirement proposal. The planned date is calculated using the lead time as the previous case, the order date that states the beginning of the needed production is calculated based on the capacity, minimum delay and needed quantity. When the quantity of the line is positive it is assumed that the line is of a product that is needed to produce and is not exploded. In this case is necessary to insert a line for each product related with in the production, all the raw materials and also the secondary products that can be produced in the default process plan of the product. The new lines of raw materials are inserted as not exploded and their planned date is the calculated date in which the production should start. If the product of the line that is being exploded is used as raw material to produce other products those products are initialized to be also considered in the manufacturing plan. Finally the line is set as exploded. When all the lines are exploded is checked if there still are not exploded lines to repeat the loop until all lines are exploded.

Process plan

Lastly each product is planned calculating the necessary quantities and dates. This section is still to be completed.

Create Work Requirements Logic

The work Requirement creation process creates a work requirement header for each proposal generated in the Manufacturing Plan process. The ending date is the need by date calculated in the proposal and the start date is also calculated in the proposal based on the capacity and minimum delay defined for the product. The creation date is defaulted to the current date.
Conversion rate and process unit are not filled by this process.

Work Requirements are created without processing them in order to allow a final review before initiating production.

Each proposal is then linked with the created work requirement for traceability purposes.

Create Material Requirements Logic

This section is still to be completed.

Purchasing Plan

Openbravo's purchasing plan process creates purchase orders based on the product demand for purchased products. This process doesn't explode the manufacturing products so it is necessary to get or set the raw materials demand prior to completing the purchasing plan.

The source of material demand can be sales orders, material requirements and sales forecasts. During the planning process, current stock, minimum stocks and unreceived purchase orders are also taken into account.

Then you can begin the process by creating a purchasing plan record for a date and a time horizon.

You can specify the products to be planned based on several filters:

You can then initiate the process by pressing the Process Purchasing Plan button. This action considers the demand for each product as defined in its Planning Method and generates purchase order proposals. The vendor for the proposal is defaulted from the vendor specified on the Purchasing Plan and the need by date precedes the required date by the number of days specified in the Lead Time attribute of the Purchasing Plan.

Once the purchase order proposals are created, you can review them and manually modify them if needed.

Finally You can then launch the Create Purchase Orders process pressing the corresponding button. The process creates purchase orders in draft status so it is necessary to process them later.


Process Purchasing Plan Logic

The first step is to initialize the products to be planned. The initialization consists on including in the process all the transactions expected to happen during the defined time period and that fulfills the planning method of each product. To know if a product has been initialized or not, the existence of inserted stock lines is checked. The stock lines are always included. For the purchase plan process are considered the purchase and sales orders, the sales forecasts and the pending requisitions.

Once the products are initialized, the proper planning process begins. The results of this planning are the purchase proposals. This process is done product by product. For each product, all the lines are considered ordered by date. If there is more than one expected transaction on the same date the priority order is: 1st Current stock, 2nd Minimum stock of the product, 3rd Positive quantity transactions and 4th Negative quantity transactions.

During the processing of each product,the expected stock for each transaction is stored. When the stock reaches negative levels a purchase proposal is created. To create the proposal are taken into account the restrictions of the current vendor, capacity and stock types and quantities. For each proposal, two different dates are calculated, one the day when the product is needed and, the second, the day when it should be ordered in order to arrive on time. When a proposal for a needed date already exists, the process changes the quantity of the existing one instead of creating a new one. The vendor of the proposal must be a current vendor of the process, if a vendor is set for the purchase plan process then that vendor is used.

Create Purchase Order Logic

The Create Purchase Orders process generates orders from all the purchase proposals of the planning process. If a proposal already has an associated order line, it is considered already processed and it is discarded in this process. These generated purchase orders are created in draft mode.

One purchase order for each vendor of the proposals is created. The document and order date in the header of the purchase order is the same as the date of the purchasing plan. Each order line corresponds with a purchase proposal. The promised and order dates of the order line are the needed and order date of the proposal.

The pricing of the order is generated using the purchase price list of the vendor. If the current version of the price list doesn't include the product the process throws an error. The price is calculated taking into account the possible price modifiers (offers); the corresponding taxes are also included.

If the purchase plan has a description, it is copied in the headers of the purchase orders.

How to MRP

The following article includes examples on How to MRP.

Retrieved from ""

This page has been accessed 51,064 times. This page was last modified on 3 April 2012, at 11:00. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.