UOM Conversion Error

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

UOMs are one of the things that you have to get right the first time. The ability to change them is extremely limited. Even putting a part on a MoM can lock them in. If you used the wrong UOM or UOM class on a part and there are transactions against it, inactivate the part and make a new one.

I worked at a company where my boss would “fix” this by going into the database and doing a direct SQL update. I strongly caution you against this. Some of the parts he did this to became corrupted, resulting in errors where Epicor was trying to convert a UOM to itself, like EA to EA. We could never deliberately reproduce this, but I always suspected it had something to do with brute forcing UOMs.

I can’t think of a time when I have agreed with you friend. But this… this is spot on! :handshake:

There is an Part UOM Conversion process you can use Ahmad but it requires a lot of TLC to get it to work you have to be abide by all these rules

Validation Rules and Conditions, Conversion Reporting (Part UOM Conversion Maintenance > Validation Rules and Conditions, Conversion Reporting)

The following validations and rules apply to this field; none of the following transactions can exist for the part (that is, the following transactions cannot contain the specified part):

Demand Management

  • No Open Demand Contracts
  • No Open Demand Lines

Field Service

  • No Open Service Contract Lines
  • No Open Service Calls
  • No Open Service Jobs

Inventory / Cycle Counting

  • On hand Inventory - The on hand inventory balance for the part must be zero.
  • No Open Cycle Count
  • No Open Physical Count

Note: This is the commonly encountered scenario; you’ve added a new part record, loaded inventory balances but soon realized that either the assigned UOM Class or UOM code is incorrect. To change the UOM Class and UOM code for the part, you must reverse the inventory balances in all associated bins using Quantity Adjustment, run Part UOM Conversion Maintenance and then repost the inventory quantity balances again.

Job Orders

  • Cannot be a Job Part on a Open Job
  • Cannot be a Job Co-Part on a Open Job
  • Cannot be a Job Material on a Open Job
  • Cannot be a Job Subassembly on a Open Job

Material Queue

  • No transactions referencing the part

Purchasing

  • No Open Purchase Order lines
  • No Open Purchase Suggestions
  • No Container Landed Costs
  • No Open Requisitions
  • No Open Purchase Contracts
  • No Open Purchase Contract Part Schedules

Quality Assurance

  • No Open Non-Conformance Entries
  • No Open DMR Entries

Quotes

  • No Open Quote Lines
  • No Material reference on Open Quote Line
  • No Assembly reference on Open Quote Line

RMAs

  • No Open RMA Line

Sales Orders

  • No Open Quote Lines
  • No Material reference on Open Quote Line
  • No Assembly reference on Open Quote Line

Transfer Orders

  • No Open Transfer Orders
  • No Open “To” Transfer Order Shipments

@amoustafaLeb If the part has existed all of what @josecgomez wrote applies.
If the part is new to being added, but had already existed as a part on the fly and did not have a uom class in the QuoteAsm record then you need a data fix. We had this with a bunch of RFQ records that I would have to fix the UOM Class on so the part could be added.

The Solution for this issue was:
Please re-run the BAQ on the QuoteAsm table filtered for this part number.

When the records return right click on a Quote number in the Quote column and use the Open With context menu to bring up Opportunity/Quote Entry for this quote record.

Then when this quote record comes up go to the Actions menu/Quote/Close Quote.

If you are able to close the quote then this means that is was an ‘Open’ QuoteAsm record for this part number and therefore you Will Need to close it to allow the
Part UOM Conversion process to continue for the part.

There can be No open QuoteAsm records for this part if you are running the Part UOM Conversion program.

1 Like