Transfer Order


I make a Transfer order with 10 Quantity after shipped receive is Partially in order 6,3 and 1. if i receive 6 then received.if i receive 3 then system shows a error suppose that amount 12.1232323 needs to be rounded. if i check through the debugger this code give the error. i checked the standard Database.
IF “Additional-Currency Posting” = “Additional-Currency Posting”::None THEN BEGIN
IF Amount <> ROUND(Amount,Currency.“Amount Rounding Precision”) THEN
IF “Amount (LCY)” <> ROUND(“Amount (LCY)”) THEN
“Amount (LCY)”,
STRSUBSTNO(Text000,“Amount (LCY)”));


I want to receive Partially.


Have you check both the amount while in deburg mode.

Amount is 0.00428571428571. and Currency.“Amount Rounding Precision” is 0.01

then value is not equal 0.00428571428571<>Round(0.00428571428571,0.01) then shows the error.

And what about Amount LCY ?

Error shows in this line (Amount<>round(Amount,Currency.“Amount Rounding Precision”)

Amount (LCY ) value is same as Amount and this condition also true.

What NAV ver ?

NAV 2009 R2

Tries your scenario but no error ?

Check your setup or if any customization done.

Currently, I am doing standard Database(CRONUS-NAV 2009 R2).Quantity shipped 20

Quantity Received 19 and then again Qty to receive 1 Qty then shows a error screen shot is attached

Amount is 1670.575 and Round Amount 1670.58 not equal then shows a error.

Yes, the error occurs.

After debug found that in codeunit 5705 under FillTransferBuffer function when inserting the value in amount, the amount is not rounded.

Below is the code

TransferBuffer[1].Amount := (Amount - ROUND(“Unit Cost” * “Qty. to Receive”));

You can modify the code if require to round the value and check.


Thanks for information.

I am also receiving the same error, but i have changed the code as you told,

TransferBuffer[1].Amount := Round((Amount - ROUND(“Unit Cost” * “Qty. to Receive”)));

now it’s posted successfully.


Muthukumar R