Possible Reasons for Make Direct

We are 100% make to stock. However a few times a month a make direct order sneaks in. We’ve been trying to analyze how this is happening and even after a couple rounds with consultants, we are still empty handed. As far as I know, here are the possibilities for something to end up as make direct.

*Non Existent Part - Part on order line does not exist as a part record (we have a bpm to block this scenario)
*Non Stock Item - Part record does exist and the ‘Non-Stock Item’ flag is true(part level or stie level)
*Order Release Manual Override - Order release ‘Make Direct’ flag is true

In our case the order reflects the ‘make direct’ checkbox as true but I have not found any evidence that it is being done manually. I still suspect it is being set by the system via some other setting/flag. Is my list complete? Any other methods you are aware of I can check into?

From the field help on the SO Release

“Purchased parts and stocked parts do not use the Make Direct option. If a part is defined as a Stocked part, the part’s Warehouse is displayed – indicating that this part quantity is being shipped from inventory.”

What are your parts setup as?

1 Like

You are spot on with what causes a demand link to be created with make direct.
The order release checkbox can be checked accidentally when you click on the label not just the checkbox. Maybe a BPM is needed here too.
You may want to get a BPM on the partplant table to prevent non-stock based on Product Group that are finished goods.

2 Likes

As Bruce mentioned, you pretty much have the three scenarios defined. One thing I would add is that if the Make Direct box was checked or unchecked manually, you will see an Override indicator next to it.

If you have disabled part on the fly, that should eliminate that scenario.

A quick BAQ on PartPlant should let you know if you have any parts flagged as non stock.

That would leave you with the last, manual scenario. You could always enable the change log if you want to know who did it and when. You could potentially disable the checkbox but I’m not sure if there are any scenarios where Epicor might turn it back on .

Thanks for the replies all. I disabled the override field last night to rule out manual manipulation. The ‘make’ field is already on change log, but if it happens during order creation, nothing is logged. I ran a query yesterday to verify nothing is marked as non-stock.

Have you been able to recreate the issue? If you make the order yourself, does the same thing happen?

Also, are any of these orders made from a quote? Not that I have a specific idea of what would be affecting this, but if you have BPMs in place on the order BO, there are 3 or 4 different methods between the order BO and the quote BO, so it’s possible you aren’t catching all of the places where a part doesn’t exist. (or some other setting you are checking for)

For us this happens in EDI processing for a new Part that we have quoted, but the partner has never purchased so it does not exist.

1 Like

I have been unable to recreate it myself. Most affected order are coming from a quote, but some are new releases on old orders. The one today was on release 108, and it was the only affected release.

I don’t love it, but for now I’ve made a bpm to force releases to turn off ‘make direct’. Can revisit this in future for a more permanent fix.

1 Like

I’m actually trying to do this as well. I tried a BPM on the GetNewOrderRel pre and post to set the Make field to false, but to no avail.

Can you share your BPM, @Engineer88 ?

1 Like

Hey! Well I tried to do something similar. I’m doing it on Erp.BO.SalesOrder.Update and its not working. It works wonderfully if someone manually sets the flag, but it is not affecting whatever is currently setting it.

Is this just recently happening for your company? Since I’ve made the original post I’ve seen a massive uptick in these make directs. Not sure if the last update did anything.

Interesting! I’m not sure if it is recent to the update, but it was a recent request as job releases are getting set to Make Direct because the part is coded that way.

My users don’t want to change the code, but they do want the jobs to not be make direct, as we are a make to stock shop.

I’m wondering if I need to just look at the Part.GetById when called by Job Entry… will investigate.

For those that are coming from a quote - are the quote lines marked as Engineered? This can set the Make Direct flag because the system expects the details to come from the Quote Engineering information.

1 Like

They typically do ‘engineer’ parts and pull from the quote to make the SO. However, looking at the 2 from this morning, 1 is not linked to any quote, and the other is.
The only pattern I am starting to see is this is heavily skewed towards adding new releases on an existing order.

I would suggest a Data Directive and not a Methods Directive.
If MakeDirect is check provide an informational message. (Soft Block)
or
Change to an Exception Message. (Hard Block).
Make Direct could get checked accidentally several ways. May sales team would use the Customer Part on a sales line to link to the Part File. But if the cross reference file was accidentally messed up and the data in the Part Field was not a part in the system the Make Direct flag would be checked. The would not notice and the order would not be picked up on the time phase report.

1 Like