Best practice for automatic scheduling and running full re-gen MRP process

We have been manually running MRP for awhile now but I have been tasked with automating the process to run at a particular time. Would love to hear how other companies set this up and are doing it.

Hello, Mike.

MRP is something that can vary a good deal from company to company. There are a couple of questions that will govern this frequency:

  1. How long does it take when you run a full regeneration? If you are a 24 hour shop and it takes more than 1.5 hours, I might run it once a week on the weekend during a light period of work.
  2. How often does your demand change and by what percentage of the total production volume does it change per day? If you have quick turnaround production, you may want to run it daily. If you manufacture to refill a good buffer of safety stock, you may be safe to run it weekly. If demand seldom changes, you may run it even less frequently.
  3. How many parts do you have that have a long lead time but require low turnaround? Infrequent MRP runs for mfg parts (or infrequent PO suggestions run for purchased parts) could make you late to receive the parts if you have insufficient safety stock.
  4. What is your process for releasing jobs into production (and creating purchase orders)? If there is a multi-day review period before they are pushed into production, you may want to run MRP weekly so that the unfirm jobs being reviewed (or tweaked) are not cleared, and similarly the PO suggestions that are being evaluated are not cleared. IMO, this is something that should be minimized because MRP should always produce the most accurate jobs and POs for the current demand in the system.

I have seen some companies regenerate MRP only to update a long-term MPS plan, yet they run regenerate PO suggestions nightly. Others regenerate the full MRP set of jobs nightly when they need the created jobs for quick turnaround.


We are a machinery manufacturer and run a Process MRP Recalc and Net Change MRP nightly. This process takes about 55-75 minutes to complete. On Sunday morning we run a complete regen. This process takes 4-5 hours to complete because we have more than 300,000 parts to comb through. The most important thing when running a regen is to find a time where no one will try to access the system. We have found through experience that MRP will not complete, or fail all together if someone is in the system updating a labor record or changing a bill of material. So, we run the regen at a time where we can be sure no one is in there doing work.

We are currently on E10, but we used the same approach in Vantage. Hope this helps!

Hi Mike,

We are not a 24-hour operation and our full re-gen MRP runs in 10 minutes so we have it scheduled to run every night.I have four schedules (created in the System Agent) set to run starting at 11:00pm. The scheduled start time on the processes is 15-30 minutes apart. The Calculate Global Scheduling process runs on the1st schedule. The Global Scheduling process runs on the 2nd schedule. (We currently have no need to manually adjust the priority codes in scheduling so these can be run back to back overnight.) Process MRP runs on the 3rd schedule. Fill Shop Capacity process and Calculate ABC codes are attached to the 4th schedule. Purchasing occasionally runs generate PO suggestions during the day which (for us) takes only a couple of minutes.This has worked well for us.


I run regen every night at 8pm, takes about 50 minutes on 7/7 processes. Approx 90k parts.

I have found that netgen didnt pick up some orders until the 3 or 4th day. Since we can put in an order today and ship tomorrow, that was not good.

We run full regen on weeknights using 6 MRP processes, this way if one gets abandoned processing a bad part setup, MRP continues to run on the rest of the parts. Here’s a screenshot of what’s submitted to the scheduler:

We run MRP with a three step process. We have Auto Job Completion, Auto Job Closing, and MRP with the most basic scheduling run at 7PM in a Process Set. Then we have services restart and Service Connect run some edits in between (such as prioritizing jobs). Then we have a couple of Scheduling processes run in a Process Set at something like 2AM to complete the process. Our custom prioritization engine is the primary reason for such a split setup, but it shows how flexible things can be.