We booked, shipped and invoiced a sales order with a valid part number. It wreaked some havoc. Is there a setting in Company Configuration that would require a valid part number in sales order entry?
I looked all over to no avail.
Thanks in advance,
I don’t know of any setting out of the box that would do this.
You could easily address this through a BPM on the ChangePartNum or ChangeRevisionNUm method.
there is not. Epicor will allow you to add a part on the fly in the sales
order, make it direct or purchase it direct to the order, ship it and
If you do not want that to happen you will have to write a simple BPM when
the part is not part of your part master to pop up a notice to the user and
not allow them to enter the order line until a valid part number is entered
Capstone Alliance Partners 888.597.2227 Ext. 71
<888.597.2227%20Ext.%20714>2 | 904.412.6847 firstname.lastname@example.org (cell)
i used a method directive, salesorder.masterupdate
here’s the code i wrote. you can remove the part revision portion. you can modify to check the part table.
// check if they are adding a line
foreach (var ttOrderDtl_iterator in (from ttOrderDtl_Row in ttOrderDtl
where string.Equals(ttOrderDtl_Row.RowMod, IceRow.ROWSTATE_ADDED, StringComparison.OrdinalIgnoreCase)
|| string.Equals(ttOrderDtl_Row.RowMod, IceRow.ROWSTATE_UPDATED, StringComparison.OrdinalIgnoreCase)
var ttOrderDtlRow = ttOrderDtl_iterator;
PartRev = (from PartRev_Row in Db.PartRev
where string.Compare(ttOrderDtlRow.Company, PartRev_Row.Company, true) == 0
&& string.Compare(ttOrderDtlRow.PartNum, PartRev_Row.PartNum, true) == 0
&& string.Compare(ttOrderDtlRow.RevisionNum,PartRev_Row.RevisionNum, true) == 0
if (PartRev == null)
CallContext.Current.ExceptionManager.AddBLException("Error: The part number and revision does not exist.");