MRP Continues to Process Manufactured parts after the "ProcessMRP" checkbox has been cleared

I discovered a bug in working with Epicor Support (We’re in version 10.2.300.6 - but I don’t know whether the bug persists through other versions of 10) in that MRP continues to process through parts even after the Process MRP checkbox has been unchecked on the Sites\Planning tab of Part Maintenance for Manufactured Parts.

By utilizing the DMT tool to uncheck the Generate PO Suggestions checkbox (PartPlant_GenerateSugg) on the Sites\Detail tab (Which is grayed out and automatically checked for Manufactured Parts), MRP finally stopped processing all of our Inactive Manufactured Parts (it went from processing 34,424 parts to only processing our 5,648 active parts in about 1/5th of the time it was taking prior).

I suggested to Epicor Support that they might want to pass the matter onto the developers and have them look into it, because per their own guidance via the User Guides and Tech Reference Guides, unchecking the Process MRP checkbox should be sufficient for telling MRP to ignore processing a Manufactured Part.

Because of the way that the Generate PO Suggestions is Automatically checked by Epicor and made Read Only on Manufactured Parts, the only means of unchecking the checkbox is via updating the PartPlant table via the DMT tool.

MRP needs to run with Logging activated in order to review for which parts it is processing through, and Identify whether you might be encountering the same issue.

Just as an FYI for everyone, MRP processes through Inactive Parts(if the Process MRP checkbox is checked, though it won’t generate Unfirm jobs or suggestions for Inactive Parts - which is useful when reviewing logs for errors when MRP fails to create a job or suggestion due to a material or component being Inactive.

However, when parts truly have gone inactive, and no longer need to be processed, unchecking that checkbox is supposed to tell MRP to not even bother with the part. Our parts have a lifecycle of 1.5 to 2 years, which is why we have over 34,000 parts in our database - and why MRP still processing them was becoming such a headache for us.

Processing Time went from 57 minutes to 10 minutes upon clearing both checkboxes on all of our Inactive Parts!

I simply wanted to share this information for those who may be affected by it; as I have seen a lot of threads regarding MRP processing times. Our MOMs are relatively simplistic compared to other places I’ve worked, but companies with extensive MOMs for their parts would probably encounter excessive hours in terms of the amount of time that MRP is taking if cycling through a lot of inactive parts and methods.

1 Like

Want to provide an update:
Per the response from Epicor, it would seem that this isn’t an isolated “bug” in our current version; but is by design. Their feeling is that it only writes 2-3 lines to the log files (was writing 4-6 lines in my actual logs); and doesn’t do anything with those parts in terms of creating jobs or suggestions. However, as time goes on, all of those inactive parts really start adding up.

By using the DMT tool to set both the PartPlant_ProcessMRP & PartPlant_GenerateSugg fields to false for all of inactive manufactured parts, MRP Processed in 30% of the time it took on the previous run.

Epicor Support’s actual response to me:

“The problem occurred because by design Process MRP also runs the Generate Suggestions function. So any part with this Suggestions box checked will at least by looked at for related Demand / Supply information, and it is forced to at least write some basic information to the Part Processing log for the part even if there is nothing to calculate. It writes a minimum of two or three lines to the log for any part that has one or both of these boxes checked even if there is no data to process / calculate.”

To keep things clean moving forward, I created and tested Data Directives on the PartPlant table:
When the ProcessMRP field changes from True to False, to set the GenerateSugg field of the Changed Row to False
When the ProcessMRP field changes from False to True, to set the GenerateSugg field of the Changed Row to True

Works like a charm whether making the change in Part Maintenance, via DMT, or via an updateable dashboard. Will help keep things clean moving forward instead of constantly having to use the DMT tool every time.