Preventing misc. parts on Sales Orders

Is it possible to prevent Misc parts to be entered as lines on a Sales Order?

For example in other areas of Epicor if you start typing a part number that doesn’t exist you’ll receive an this record does not exist message. In Sales Orders though you can enter a part that doesn’t exist and save the Sales order.

This is called “Part-on-the-fly”, and is not at all uncommon, but yes, you can create a BPM that checks the part number against the Part table, and if it doesn’t exist, can generate an error.

Can you walk through the steps to create that BPM?

Your profile shows you are on Vista v8.03, and it’s been a LONG time since I was there, but here’s where to start.

CAVEAT… if any of the following terms sound like I’m speaking in a foreign language, then you really need to read the Business Process Management Education Document for Vista/Vantage 8.03. It’s not available on EpicWeb any more, but it is probably somewhere on your Epicor server.

First of all, turn on tracing and enter a Sales Order. As soon as you enter the Part Number on the order line and hit TAB, stop your trace and look in the trace document to find which Business Object fired when you did that (on Epicor 10.2.500, it’s SalesOrder.ChangePartNumMaster).

Next, create a Pre-Processing Method Directive BPM on that Business Object.

The Action you want to perform is going to be a query, and you’ll need to write the query to see if the part number just entered is found in the Part table… if not throw an error message.

I don’t remember the syntax of everything, but that should get you started.