UOM Class Conversion Error

Is this error meaning I have to delete the quotes? They are all closed, and won, so not sure why it is giving me this issue.

Business Layer Exception

Cannot convert to UOM Class Count. QuoteAsm records already exist for this part.

Exception caught in: Epicor.ServiceModel

Error Detail

Description: Cannot convert to UOM Class Count. QuoteAsm records already exist for this part.
Program: Erp.Services.BO.Part.dll
Method: ValidateUOMConvTrans
Line Number: 17107
Column Number: 17
Table: Part
Field: UOMClassID

Client Stack Trace

at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)
at Erp.Proxy.BO.PartImpl.ValidateUOMConvTrans(String ipPartNum, String ipConvUOMClassID, String ipConvUOMIUM)
at Erp.Adapters.PartAdapter.ValidateUOMConvTrans(String ipPartNum, String ipConvUOMClassID, String ipConvUOMIUM)

Welcome to the world of UOM Conversion hell.

There are so many things that prevent UOM conversions from succeeding. And very few of them are fixable.

If those Quotes were not converted to orders or used as templates to make a job, you may be able to change the MOM to not reference the part whose BOM you’re trying to change.

I’d try temporarily changing the Part in those MOM’s to another part, running the conversion, then restore the original part in the MOM’s (double check the UOM after changing it back).

We’ve had issues where a On The Fly Part (OTFP) was used in an order or job. Then we decided to make a Part master entry for it, only to find out the new part entry will be based off of the details of the parts use when it was a OTFP. Like if the OTFP part in a job was spec’d as (1) 10’ Length, with UOM of EA. But then we want to stock it in FT, the conversion from COUNT to LENGTH doesn’t fly.

1 Like

So we have Quotes that were won, an order created, a job created, shipped, and invoiced. Now I am being asked why they can’t change the Inventory UOM. “What about if we change how we sell it so we need to change how we stock it?” I still do not understand why we can’t change it if all the quotes associated with it have been closed.

1 Like

UOM conversion is very tricky, and if done wrong (meaning the Epicor process that runs) can really cause problems.

Are you trying to change the UOM Class, or just the default IUM?

Changing the UOM Class is exponentially harder.

We’ve had to scrap a part number because it was created with the wrong Class, and then transactioned happened. There’s almost no recovering from that (short of the VERY UN-RECOMMENDED change via SQL - in fact, disregard that I even mentioned a change via SQL).

Part Maint–>Detail–>Primary UOMs.

So just the IUM, but within the same class? An example would be from EA to DZ for class COUNT, or FT to YD in class LENGTH.

But your orignial post’s error says,

Cannot convert to UOM Class Count.

Are you actually trying to convert the class from COUNT to another?

I can’t say exactly why it doesn’t allow it, but only that it is ultra-conservative in how it determines if it can be changed.

Does the UOM Conversion process only balk about the quotes? Or does it mention other things like part tran records, job mtls, etc… ?

Yep, same class. The issue was we had some quotes that didn’t have the engineered checkbox checked, the the quote box checked n the header tab, and then Actions–>Quote–>Close. Once I did this and took care of the revision, it worked.

1 Like

Been reading a number of these UOM conversion threads. This one seems pretty fresh, so I thought I’d ask some questions…
If we’re not trying to change UOM class, and we can clear the errors by doing things like adjusting inventory, deleting PO suggestions (removing from methods?)… then it’s fine? The verbage in the help file still scares me - but the guys really don’t want to make new parts.
What about “track multiple UOMs”? Any use here?
Basically we’ve got a bunch of adhesives we want to track in OZ instead of GL.
We “successfully” converted one in the test environment… now they want me to run wild with it in Live and I’m skeered.

Don’t be ehskeered :slight_smile:
The UOM conversion program won’t let you do something that would mess you up. Its very conservative. So much that it won’t do things that wouldn’t cause a problem.

If you can get past all the error messages about why the conversion can’t proceed, you should be good to go.

One thing I’d suggest, is do a where used on the part and verify that the BOM’s and MOM’s have correct Qty’s for the selected UOM.

I’m pretty sure it won’t change any BOM’s, so if GLUE-01 was originally stocked in GA, and one BOM had a Mtl line of 64 OZ (i.e. 0.5 GA), and another had a MTL line of 0.25 GA (32 OZ). Neither should change.

But if you make a new BOM and select that material, the UOM would default to the new IUM. So if someone isn’t careful, they might enter (or copy and paste) a value that used to assume the old IUM

1 Like

Close any open quotes using the part in question.

  • To find all the quotes, look for the part number, and search for it under the QuoteMtl table. You can join that to QuoteHed to cross check for open quotes.
  • Mark the quotes as lost
  • Run the conversion.
  • Resolve any subsequent issues that crop up.
  • Re-open the quotes.

Literally had to do this yesterday.

2 Likes