Guide to Successful MRP Implementation
Implementing MRP (material requirements planning) successfully in Microsoft Dynamics NAV is one of the more complex tasks. There are lots of moving parts and to make it work in an efficient way you not only need to know Dynamics NAV and the theories behind MRP but also the product structures and how the business wants to operate.
This is my guide to how to make it work, it is based on my experience and how I normally approach MRP. It does not guide or dictate how you should setup NAV, just some guidance on how to get there (I guess it can be used by any type of MRP implementation, not only Dynamics NAV). I have seen MRP implementations fail because of the approach was just to ‘plug in the values’ and ‘run it’, I think structure it and put some thoughts behind it first will definitely make it easier and pave the way to success.
My approach consists of the following steps:
1. Categorize Your Items
2. Describe a Strategy for Each Category
3. Simulate Scenarios
4. Apply Planning Parameters
5. Determine How to Run MRP
6. Continually Optimize
It is important to know that it takes a fair amount of work to get to a good running MRP solution where there is a balance between supply and demand and where few resources can successfully plan a larger number of items and orders without shortages or too much inventory.
There are some important prerequisites that you should be aware of; correct inventory levels, accurate production BOMs and routings with times, accurate lead times on purchased items, timely registration of inventory movements and a location structure that makes sense. In addition, not only the planners has to be determined to get it to work, also sales that are entering/maintaining sales orders and purchasers that are entering/maintaining purchase orders needs to be in on the plan. It is very important that shipment dates and receipt dates are entered accurately or realistically; I always say that the dates are equally important to the quantities. If you can’t get the above commitment it will be very hard to get to a well working MRP system.
1. Categorize Your Items
Start with categorizing your items from a replenishment point of view. Determine what different types of parts that should be replenished similarly and make a list of the different categories.
It could be categories such as; frequently used raw material items that should be in inventory at all time, seldom used raw material items, long lead time items, sub-assemblies, finished standard items, finished custom items, items that you are obligated to have in inventory for customers, consignment items, assemble-to-order items, etc.
Make a table of the categories, something like below.
This step you should be able to do without any knowledge of Dynamics NAV. This will help the NAV expert to get the overall picture on what different categories of items there are.
When you have categorized your items you continue to the next step.
2. Describe a Strategy for Each Category
Describe how you want to replenish each category. Look at each category and ask yourself if you want to carry the items in inventory and if so how much, what should determine the order quantities and when to reorder, do you need a forecast to drive the replenishment, what will be the impact of a stock out, etc..
Describe the above for each of the categories, extend the table from #1 to look something like below.
This step you should also be able to do without any knowledge of Dynamics NAV. This will help configuring the Items/Stockkeeping Units in NAV (see it as the requirements for the configuration) and to verify the results during the next step when the scenarios are simulated.
3. Simulate Scenarios
Simulate scenarios with a sample set of items for each category. For this you need to know the functionality in Dynamics NAV (or get help by someone who knows it).
Focus on material planning and not capacity planning. You need the material planning to work first, and then you can focus on the capacity planning if needed. It does not make sense to plan the capacities (work/machine centers) if you don’t have good control of your inventory. The exception to this is if you have unlimited supply of your material, but then you are reading the wrong blog post. 🙂
Stick to the standard functionality. Apart from doing minor adjustments (like the Accept Action Message in Planning Worksheet or extending the results with new fields, etc.) my suggestion is to stay away from customizing the MRP logic, it quite quickly becomes complicated and if you can’t fit in with the standard MRP rules in Dynamics NAV you should look into something else (like an add-on or third party software) to plan your material requirements. Although most of the times it is just a matter of not knowing the functionality enough.
Simulating the scenarios can with advantage being done in a separate company where you can control orders and inventory levels to stage different scenarios. Make sure to also cover what to do when changes in demand occurs.
This step can almost be seen as a user acceptance test where the functionality is confirmed by the users against the requirements for each category of items.
Note your result and/or issues for each of the categories and how the planning parameters setup was done, something like below.
4. Apply Planning Parameters
Apply the planning parameters to a broader set of items by using the categories defined in step #1 and the configurations simulated in step #3. Most of the times this requires extracting data to Excel, manipulating it and then importing it back into Dynamics NAV. If you for example have reorder points based on demand during the lead times then you need to extract the usage for each of the item and calculate the reorder points to apply. Things like applying a production forecast based on sales history should be done the same time.
5. Determine How to Run MRP
Determine how the MRP run will be carried out in Dynamics NAV. This should include the frequency in which you need to refresh the plan, what items or locations that should be included in what run, etc.
I think having MRP to be run once a day as a scheduled activity and have all items and all locations (except maybe locations like quarantine, customer returns, etc.) being part of the run is a preferred way of doing it. Dynamics NAV does come with a scheduler, called job queue, but in order to schedule the MRP run you need to create your own table to setup the parameters such as horizon etc. for the scheduler to be able to run MRP as required.
Also make a plan on how to review and treat the MRP suggestions. Something like;
1. Look at the errors logged (if any) and fixed them for the next run.
2. Review and handle the exceptions.
3. Look at the suggested changes to existing orders.
4. Review suggestions for new supply that have order dates with in the next two weeks (as example).
If it is a transition from another software to NAV, then using MRP to create all the initial production orders is most likely the easiest way to get a good balance between supply and demand during a go-live. If you migrate production orders from an old system and then start running MRP it might take a while between you get a good balance since NAV might not agree with the supply that is in place.
If it is an existing NAV solution where MRP is going to be introduced then it might be of value to reduce the number of planned and firm planned orders prior to the MRP run and have them being recreated.
The MRP calculation could take a while to run depending on how many items that needs to be planned etc. As an example I just finished a project where there where around 85.000 items with 450.000 production BOM lines and 550.000 routing lines that was planned on a daily basis, the MRP was scheduled to run during the night and took about 45 minutes to run. I expect this to increase a bit once the database grow and gets more transactions in it. It is good to know how long it takes since the MRP calculation in Dynamics NAV locks some tables and you might not be able to post things like output and consumption during the MRP run. In this case we scheduled it to run between 1 and 2 am, this only affected the production night shift which in this case was doing limited postings during that time anyway.
6. Continually Optimize
Once it is all setup and running it is important to continuously work with the system to optimize the plan by reviewing suggestions and updating/maintaining orders and parameters.
Most companies operates in a more or less dynamic environment where you continually need to tweak the setup based on external factors such as changes in purchase lead times, raw material costs, etc. Requirements typically also change; the bestselling items this year might not be the bestselling items next year. You might have new items being introduced by sales and engineering might work on improving products which changes to the components in the production BOMs, etc.
This is an ongoing process and a good planner will be on top of changes and adjust accordingly.
It is also important to realize that in reality things are not always executed exactly according to the plan. To allow for this you can build in some slack time into the plan by adding safety lead times and queue times to the products and operations. There are also damper parameters that can be set to reduce the number of suggestions that changes to demand otherwise can trigger (this to remove the noise that small irrelevant changes otherwise will create).
If you are facing an MRP implementation hopefully you will find the above approach useful. 🙂
25 Comments
Leave your reply.