Skip to main content
Answer

Releasing Project Transactions and IN Error: Unit Conversion is missing

  • June 13, 2025
  • 1 reply
  • 36 views

When attempting to release a group of project transactions I get a “IN Error: Unit conversion is missing” error. In this particular group of transaction there are about 30 transactions. I’ve looked at the UOM and Conversion rules where applicable and don’t see anything out of the ordinary. When I look at the trace I see what is shown below. Is there a way to track this error to a particular inventory item?

 

   Error 2025-06-13 01:04:22 UTC
 
 Category:
Trace
 Message:
IN Error: Unit conversion is missing.
 Stack Trace:
PX.Objects.IN.PXUnitConversionException: IN Error: Unit conversion is missing. at PX.Objects.IN.INUnitAttribute.Convert(PXCache sender, Nullable`1 InventoryID, String FromUnit, Decimal value, Nullable`1 baseValue, INPrecision prec, Boolean ViceVersa) at PX.Objects.IN.INUnitAttribute.Convert(PXCache sender, Nullable`1 InventoryID, String FromUnit, Decimal value, INPrecision prec, Boolean ViceVersa) at PX.Objects.IN.INUnitAttribute.ConvertToBase(PXCache sender, Nullable`1 InventoryID, String FromUnit, Decimal value, INPrecision prec) at PX.Objects.PM.ProjectBalance.CalculateRollupQty[T](T row, IQuantify budget, Decimal quantity) at PX.Objects.PM.ProjectBalance.CalculateRollupQty[T](T row, IQuantify budget, Nullable`1 quantity) at PX.Objects.PM.ProjectBalance.CalculateRollupQty[T](T row, IQuantify budget) at PX.Objects.PM.ProjectBalance.Calculate(PMProject project, PMTran pmt, PMAccountGroup ag, String accountType, Int32 amountSign, Int32 qtySign) at PX.Objects.PM.ProjectBalance.Calculate(PMProject project, PMTran tran, Account acc, PMAccountGroup ag, Account offsetAcc, PMAccountGroup offsetAg) at PX.Objects.PM.RegisterReleaseProcess.UpdateBalance(JournalEntry je, ProjectBalance pb, PMTran tran, PMProject project, Account account, PMAccountGroup accountGroup, Account offsetAccount, PMAccountGroup offsetAccountGroup, Boolean isGL) at PX.Objects.PM.RegisterReleaseProcess.Release(JournalEntry je, PMRegister doc, List`1& allocTasks) at PX.Objects.PM.RegisterRelease.ReleaseWithoutPost(List`1 list, Boolean isMassProcess, List`1& infoList) at PX.Objects.PM.RegisterRelease.ReleaseWithoutPost(List`1 list, Boolean isMassProcess, List`1& infoList) at PX.Objects.PM.RegisterRelease.Release(List`1 list, Boolean isMassProcess) at PX.Objects.PM.RegisterRelease.Release(PMRegister doc) at PX.Objects.PM.RegisterEntry.<>c__DisplayClass47_0.<ReleaseDocument>b__0() at PX.Concurrency.CancellationIgnorantExtensions.RunWithCancellationViaThreadAbort(Action method, CancellationToken cancellationToken) at PX.Concurrency.CancellationIgnorantExtensions.<>c__DisplayClass1_0.<ToCancellationViaThreadAbort>b__0(CancellationToken cancellationToken) at PX.Concurrency.Internal.PXLongOperationPars.PopAndRunDelegate(CancellationToken cancellationToken) at PX.Concurrency.Internal.RuntimeLongOperationManager.PerformOperation(PXLongOperationPars p)

Best answer by rfairchild58

I have never found an easy way to locate the offending item by using the Trace.  I typically just have to review it line by line.  What is the source of the entry?

1 reply

rfairchild58
Varsity I
Forum|alt.badge.img+1
  • Varsity I
  • Answer
  • June 13, 2025

I have never found an easy way to locate the offending item by using the Trace.  I typically just have to review it line by line.  What is the source of the entry?