We help IT Professionals succeed at work.

eConnect: Decimal Places Passed in on Unit Cost Does Not Match Setup

Hello:

In using the eConnect tool to import purchasing receipts for Microsoft Dynamics GP, I'm getting the following error on the Line Item node (taPopRcptLineItemInsert):

Decimal Places Passed in on Unit Cost Does Not Match Setup.

This error makes absolutely, positively, without a shadow of a doubt no flippin’ sense whatsoever.

True, the decimal placement of the Unit Cost field of some of the records in the database goes beyond 2.  But, for a similar import for purchase orders, I eliminated the error by using the following calculation for the Unit Cost field:

return fn.ROUND (UNITCOST, 2 ).

But, for the receivings map and for a record whose Unit Cost is 6.72, it is throwing this error – whether I use this calculation or not.  And, I have tried resolving this a million ways to Sunday.

Here’s what I don’t get.  The Unit Cost, in this example, actually does not go beyond 2 decimal places.  It is, simply, a figure of 6.72.  And, the GP Purchase Order Processing Setup window is set to 2 for Currency Decimal placement of noninventoried items.

Any ideas?

Thank you!

Software Engineer
Comment
Watch Question

Commented:
Hi,

Can you post the full eConnect error message, with the error number and XML snippet, along with the full XML document you are submitting (for a single test receipt that exhibits the error) ?

Thanks,

Steve Endow
Microsoft MVP

Author

Commented:
Capture.PNGHi Steve:

The error number is 7321.  The exact error message is what I posted.

Attached is the XML snippet.

Software Engineer

Commented:
Hi,

It looks like that error can be triggered due to a Multi-Currency configuration issue.  Even if you aren't using MC, a single errant currency field value somewhere else can apparently trigger the error.

Can you run the following queries on the company database and post the results?  Either a screen shot or Excel file works.


SELECT FUNLCURR, RPTGCURR FROM dbo.MC40000

SELECT CHEKBKID, DSCRIPTN, CURNCYID FROM CM00100 

SELECT DECPLCUR, DECPLCUR - 1 FROM POP40100 WHERE INDEX1 = 1

SELECT DECPLCUR, DECPLCUR - 1, * FROM POP40600

SELECT ITEMNMBR, DECPLCUR, DECPLCUR - 1, LISTPRCE FROM IV00105 WHERE ITEMNMBR = '12896'

SELECT * FROM IV00105 WHERE ITEMNMBR = '12896'

Open in new window

Author

Commented:
MC40000.PNGCM00100.PNGPOP40100.PNGPOP40600.PNG
Hi Steve:

Attached are four of the six results.  I could not attached the final two, because these are noninventoried items.  So, IV00105 does not contain this data.

On the CM00100 table, I did not feel comfortable displaying the whole table.  So, I just displayed the last column of it.

Thanks!  Much appreciated, Steve!

Software Engineer
Commented:
Hi,

Thanks for the results.  My guess is that the issue is with the CM00100 table.  Is the company using Multi-Currency, or is MC enabled in GP?

See this support article from Panatrack:

https://support.panatrack.com/hc/en-us/articles/202420676-Decimal-Places-passed-in-on-UNITCOST-does-not-match-setup


If you have a recent restore of the live company setup in a Test company database, check the CM00100 table, and try to reproduce the issue in Test.  Then try the Panatrack suggestion to clear the currency ID from the checkbooks and see if that resolves the issue.

If you encounter any unexpected results or have any concerns about doing the update in the live company, you'll probably want to do a support case and just have MS support confirm the issue and walk you through the fix.

If you want me to post the relevant sections of the eConnect proc that is triggering the error, let me know.

Steve

Author

Commented:
Thank you, Steve!  Yep, blanking out the Z-US$ Currency ID on the checkbooks resolved this!

Software Engineer