How to choose a part number for a purchased product

We use several kinds of inks to mark our finished parts. The inks fall under various mil specs. For example, we use black and white epoxy inks that meet CID A-A-56032D. This ink comes in various colors, all meeting that spec. In the past we had setup part numbers that include the spec. So, for the black epoxy it would be something like AA56032D-BLK, or -WHT for the white epoxy.

When we order the material, it could come from one of several vendors, all with different part numbers. We also know that the spec could change or be superseded in the future. We use lot tracking, so stocked quantities of the ink must each have their own lot number and expiration date. The materials do not always have a unique part number listed on them, so once we decide on a part numbering method, we will print and apply the part number labels to these materials once they are received.

The job traveler does not call out a specific part number or lot number, instead we have to refer to the print that specifies which mil spec to follow, then we can choose the ink that fits best. We don’t currently track quantities of these kinds of materials in Epicor, but we want to get closer to doing so. Instead, once the material is low, someone reorders it as needed.

Based on all this, how would you pick the part number to store black and white epoxy in Epicor? Is our approach of using the mil spec with a postfix the right way? I am considering creating more generic part numbers like EPOXY-BLK, and EPOXY-WHT, then assigning the mil specs in the description or something.

I have read through a great part numbering document that @timshuwy from Epicor put together (WP-ENS-0614), but I am still struggling with creating part numbers for these inks.

Thank you for your time!
Nate

If you use the supplier price lists you can attach their PN and use that when ordering.

2 Likes

I’m thinking the Part Number doesn’t need to be a “smart” part number. I tend to shy away from them, in general. Its the attributes of the part that matter. You just need to figure out the best way to categorize and flag the parts that meet certain specifications.

For example there is already a Part.Specification column that appear on the Part > Attributes form.

You could also add as many UD columns as necessary to the Part table to categorize your inks by the specifications they meet. For example setting up a UD column as a text field where you type in the Specification… OR, specific ones you could set up as boolean, so it would just be checking a box labeled “AA56032D Compliant”.

Setting up a BAQ search could then easily include those “specification” columns. If Purchasing needs to buy ink, they use the BAQ search and filter on the AA56032D Compliant = true.

Alternative Approach:

We flag our parts’ specifications via UserCodes and a UD table to store the flag records.

We had a specification flag system in our previous legacy system that we ported over to Epicor, where we could flag individual parts that were required to meet certain specs.

In Epicor, I set these up as UserCodes:

In Part Maintenance, we then added a custom page to add various flags and cross references to individual parts:

These “flags” are saved via app studio events & REST calls as records on our UD02 table:
Key1 = PartNum
Key2 = SPEC (CodeTypeID)
Key3 = SPEC001 (for example… the CodeID)

Again, in a BAQ Search, I can easily use the SPEC001 as a filter and get a list of all parts that are flagged with that specification:

Not saying this is the best solution for you… but just wanted to say you may not be limited to devising a smart part numbering scheme (although, some companies favor and thrive with that approach). But, there could be other ways to skin the cat.

4 Likes

:point_up:

2 Likes

Ohh I like the idea of having flags to indicate if the material meets certain specifications. Or using the UDCodes for specs would be great too! If you go with ‘dumb’ part numebrs, do you just make up a unique number and never look back?

Yeah, everybody does it differently. We have sequential numbers by part class.

So, our part numbers are just:
018-01610
018-01611
018-01612
etc.

The first three are reference our part class, the last 5 digits are just a sequential number. So, we could have:

018 - 01610
033 - 01610

Just the way we’ve always done it. Again, every company is different. But aside from the Part Class being referenced in the first (3) digits (and even those are just dumb numbers if you think about it)… we just use a “next sequence number” function when we create new parts.

2 Likes

We also use the same set up for Vendor part numbers… we use the UserCodes and save the records in our UD02 table. Again, on the Part record, we can add “External Part Numbers”:

These are, again, saved to our UD02 table:
Key1 = PartNum
Key2 = CodeTypeID (PART)
Key3 = Not Used
Key4 = A source code combination, combining a couple different user codes.

The Source could be
C = Customer PartNum,
S = Supplier PartNum,
O = OEM PartNum
M = Manufacturer PartNum.

And then we have individual UserCodes for each customer, supplier, OEM, etc. So, a source code could be “SBDI” where S means its a supplier and BDI is for Bearing Distributors Inc. (in this example). Then their part number is stored in Key5.

So, it we look at our custom page on Part Entry I may see this:

The user then knows our internal part number (055-2516) is the same as SKF Part Number XYZ-123 (and since the source code starts with “M”, we instantly know they’re the primary manufacturer) and our part number is also the same as BDI’s part number ABC-987 and BDI is just a supplier/distributor.

We do the same thing for Customer, Supplier, OEM, etc. drawing numbers for the same part.

Epicor has its own various part cross reference tables, but since we already had this all organized in our legacy system, we just customized so we could bring it over.

1 Like

And of course you have the part search word as well.

Attributes are the BOM… Pardon the pun

1 Like

I have used BOM’s to keep track of requirements.
Create a part number that is the specification that is non-quantity bearing.
create a BOM that would have all parts that need to meet that specification.

Then when or if the specification you can find all parts that need to be reviewed.
You can also do a where used to see what specifications a part needs to meet.

BOM’s aren’t just for building products they are also available to reference or requirements.
I have done this with contracts with customers. When we were making a change to a lower level part, we were able to do an indented where used to see that the change was in conflict with the contract.

2 Likes