We are going to be presenting Part stock status information on a 3rd-party portal to customers. So we need to filter the parts shown so that each customer only sees the parts associated with their account (i.e., the parts we sell only to them).
What is a best/preferred practice for making this association?
UD column for CustID on the Part
Dynamic Attribute for CustID on the Part
Internal Cross Reference
Customer Part Cross Reference - this will not work for us as only some parts have actual customer P/Ns
Data Tags
Duct tape
(Part Group/Class/Category fields are not available for this use)
From what I see, the two preferable choices are:
UD column:
** most customizable option
** including adding CustID validation on the field (e.g., BPM).
** doesn’t help users searching for parts for a customer
Internal CrossRef:
** already exists
** would provide easy way to lookup all of a customer’s parts in e.g., Part maint.
** but no validation on CustID (unless I have a BPM which checks the xref value against CustID’s whenever the xref description is, say, “CustID”)
** Allows for tagging multiple custIDs for same part: this may allow mistakes in some cases, but also allows rare case when separate-but-related customers need to buy the same Part.
** Can’t tell from Part maint if a part has an int xref or not.
** Tiny, but non-zero, chance of a xref value matching a CustID even though its not intended as a CustID value (workaround: can filter by xref description must be “CustID” to be interpreted as a CustID)
No reason you couldn’t assign your internal part number as the customer’s.
Personally, I like this option since it already exists, no additional fields, 100% tied to the customer, has pricing information ready, and you can display it as a tab in Part Maintenace (we do).
In my opinion, Customer Part Cross Ref would be the most preferable, and I would recommend exploring further into why there are not customer part numbers. I would be AMAZED if they didn’t exist for your customer, it’s just a matter of finding them and maintaining them.
I say this because using that table means you could conceivably someday sell the same product to multiple customers.
The second choice would be a UD field on the Part table.
I would recommend AGAINST using Internal Part Cross Reference, as both of the above would be a better use of existing Epicor functionality (and require less customization).
The option, and not as optimal compared the comments from the two legends that have posted before me, and only if you do, would be price lists.
If your customer have price lists related to them or their customer group then that may also be an option. I’m assuming you are also going to include pricing in your portal?
As I said, not optimal because you still sell a part to a customer if it is not on a price list, your mileage may vary.
First, @hally, nice suggestion! I would only do this if you already have price lists defined.
Second, @Mark_Wonsil & @Ernie are correct, the absolute best way would be to use the Customer Part Number functionality. Like Mark said, there is no reason that you cannot use your part number as the customer part number (if the customer does not have a separate one). Additionally, they may not have their own part number today, but might in the future. The functionality allows you to add more than one customer part number to the same customer for the same part. Using this also means you can just filter based off of the Cust ID to get all of their parts without needing to use other tables.