
Dear All,
I am facing the following Exception when I Confirm the Purchase Order. Please suggest to fix this.
Microsoft.Dynamics.Ax.Xpp.InfoException: Exception of type 'Microsoft.Dynamics.Ax.Xpp.InfoException' was thrown. at Microsoft.Dynamics.Ax.MSIL.Interop.throwException(Int32 ExceptionValue) at Microsoft.Dynamics.Ax.MSIL.cqlClassIL.callReturn(Int32 rc, interpret* ip) at Microsoft.Dynamics.Ax.MSIL.cqlClassIL.CallStatic(String className, String methodName, Object[] parameters, Type[] types, Object[] varargs, Type[] varargsTypes) at Microsoft.Dynamics.Ax.Xpp.XppObjectBase.StaticCall(String className, String methodName, Object[] parameters, Type[] types, Object[] varargs) at Dynamics.Ax.Application.Debug.assert(Boolean expression) at Dynamics.Ax.Application.SourceDocumentLineProvider.getDistributedAmountInAccountingCurrency(Int64 _sourceDocumentLine, Int64 _ledgerDimension, AccountingDistributionReferenceRole _accountingDistributionReferenceRole, Boolean _recursive, MonetaryAmount _monetaryAmountRestriction, Boolean ) in SourceDocumentLineProvider.getDistributedAmountInAccountingCurrency.xpp:line 35 at Dynamics.Ax.Application.SourceDocumentLineProvider.getDistributedAmountInAccountingCurrency(Int64 _sourceDocumentLine, Int64 _ledgerDimension, AccountingDistributionReferenceRole _accountingDistributionReferenceRole, Boolean _recursive, MonetaryAmount _monetaryAmountRestriction) at Dynamics.Ax.Application.SourceDocumentBalanceProvider.Calculatedistributedamount(Int64 _sourceDocumentLineRecId, Int64 _ledgerDimension) in SourceDocumentBalanceProvider.calculateDistributedAmount.xpp:line 23 at Dynamics.Ax.Application.SourceDocumentBalanceProvider.Calculate(Int64 _sourceDocumentLineRecId, SourceDocumentLineAccountingStatus _accountingStatus, Int64 _ledgerDimension) in SourceDocumentBalanceProvider.calculate.xpp:line 43 at Dynamics.Ax.Application.SourceDocumentBalanceProvider.Initializebalanceline(SourceDocumentLine _sourceDocumentLine, SourceDocumentAmountLedgerDimIVisitor _ledgerDimensionIVisitor, Boolean ) in SourceDocumentBalanceProvider.initializeBalanceLine.xpp:line 60 at Dynamics.Ax.Application.SourceDocumentBalanceProvider.Initializebalanceline(SourceDocumentLine _sourceDocumentLine, SourceDocumentAmountLedgerDimIVisitor _ledgerDimensionIVisitor) at Dynamics.Ax.Application.SourceDocumentBalanceProvider.Initializebalance(SourceDocumentAmountLedgerDimIVisitor _ledgerDimensionIVisitor, Boolean ) in SourceDocumentBalanceProvider.initializeBalance.xpp:line 17 at Dynamics.Ax.Application.SourceDocumentBalanceProvider.Initializebalance(SourceDocumentAmountLedgerDimIVisitor _ledgerDimensionIVisitor) at Dynamics.Ax.Application.AccountingDistributionOrderSummaryCalc.Populateencumbrancesummaryamount(String _purchId) in AccountingDistributionOrderSummaryCalc.populateEncumbranceSummaryAmount.xpp:line 17 at Dynamics.Ax.Application.PurchTotalsSummaryController.updateTotals(PurchTable _purchTable, Int32 _tableId, Common _purchSummary, Boolean _refreshButton, Boolean , Boolean ) in PurchTotalsSummaryController.updateTotals.xpp:line 55 at Dynamics.Ax.Application.PurchTotalsSummaryController.@updateTotals(PurchTable _purchTable, Int32 _tableId, Common _purchSummary, Boolean ) at Dynamics.Ax.Application.PurchTotalsSummaryController.updateTotals(PurchTable _purchTable, Int32 _tableId) at Dynamics.Ax.Application.PurchTotalsSummaryController.populateEncumbranceSummaryValues(String _purchId) in PurchTotalsSummaryController.populateEncumbranceSummaryValues.xpp:line 15 at Dynamics.Ax.Application.PurchTotalsSummaryController.onPostingSuccess(Set _postedJournalSet) in PurchTotalsSummaryController.onPostingSuccess.xpp:line 30 at Dynamics.Ax.Application.FormletterService.Run() in FormletterService.run.xpp:line 220 at Dynamics.Ax.Application.FormletterService.Postpurchaseorderconfirmation(PurchFormLetterPurchOrderContract _contract) in FormletterService.postPurchaseOrderConfirmation.xpp:line 14 at FormletterService::PostPurchaseOrderConfirmation(Object , Object[] ) at Microsoft.Dynamics.Ax.Xpp.ReflectionCallHelper.MakeInstanceCall(Object instance, String MethodName, Object[] parameters) at Dynamics.Ax.Application.SysOperationServiceController.Runoperation(Boolean _async) in SysOperationServiceController.runOperation.xpp:line 93 at Dynamics.Ax.Application.SysOperationServiceController.runServiceOperation(Object[] parameters) in SysOperationServiceController.runServiceOperation.xpp:line 22 at SysOperationServiceController::runServiceOperation(Object[] ) at Microsoft.Dynamics.Ax.Xpp.ReflectionCallHelper.MakeStaticCall(Type type, String MethodName, Object[] parameters) at Dynamics.Ax.Application.SysDictClass.invokeStaticMethod(Object[] _params) in SysDictClass.invokeStaticMethod.xpp:line 26 at SysDictClass::invokeStaticMethod(Object[] ) at Microsoft.Dynamics.Ax.Xpp.ReflectionCallHelper.MakeStaticCall(Type type, String MethodName, Object[] parameters) at Microsoft.Dynamics.Ax.Xpp.PredefinedFunctions.runAsInvoke(String className, String staticMethodName, Object[] parms, Object[]& exportInfolog)
*This post is locked for comments
I have the same question (0)I thing you'll see the actual message if you switch the execution from CIL to X++. You could also use the debugger (Visual Studio) to see the Message property of the exception object.
Another approach is looking at the code. The error says that an assertion failed at line 35 of SourceDocumentLineProvider.getDistributedAmountInAccountingCurrency(), therefore you can go there and take a look.