Rounding Difference Between VAT Calculation on Invoice Print and Sales Update

DaveBarber

Active Member
We have a long running discrepancy between the VAT calculated on the R42565 Invoice print and sales update R42800. For example, an invoice has 2 lines on it and the tax rules are set up to calculate tax at detail level:

The total invoice amount on the invoice print R42565 is 46.53 as follows:
(Currency is pound sterling)

Line 1 - Net 35.00 VAT @ 17.5% = 6.125
Line 2 - Net 4.60 VAT @ 17.5% = 0.805

Total invoice value = 39.60 + 6.125 + 0.805 = 46.53

The total invoice amount on the sales update and in F0911 and F03B11 is 46.54 as has been calculated as follows:

Line 1 - Net 35.00 VAT @ 17.5% = 6.125 rounded to 6.13
Line 2 - Net 4.60 VAT @ 17.5% = 0.805 rounded to 0.81

Total invoice value = 39.60 + 6.13 + 0.81 = 46.54

Hence we are billing the customer a different amount than is being recorded on the ledger.

I am aware there is an ESU that addressed this problem ESU 23613 but this requires a base line of ESU JD16881 which the business is unprepared to take due to the impact.

Has anyone implemented a fix/knows of a way this can be fixed without applying the ESU?

OW XE SP22 on Oracle
 
Hi Dave

This is indeed a long standing issue in One World.
I fixed it in the pre-XE days for a group of customers, and I knew that it was still out there.

The fix is rather simple actually although it forces the sofware to perform the tax calculation on a SO row basis but without rounding (which is what most people want anyway)

In R42800, locate the call to the business function, it is called
Tax, Calculate for Sales and Purchasing

You will notice in the parameters lists that the function returns both the rounded tax amount and the unrounded amount. just change the mapping to get the unrounded amount and that should fix your issue

As I said, it was a long time since I worked in this, so please let us know if it works for you

Hope this helps

Philippe
 
Hi Philippe,

Thanks for the info on this.
I have checked R42800 and found the call to the function.
However its seems to have been commented out for SAR 3055761 and id not called anywhere else which is a shame because your solution seemed a straightforward one.
I will debug it and get back to you on what I find.

cheers

Dave
 
Hi guys!

Any solution on the problem? I seem to have the same. I am digging the VAT calculation functions but no success yet. Is there really an ESU solving the problem already? Is it 23613 indeed?

BRs
Dave
 
Dave, Philippe, and Dave,

I just wanted to chime in a little further on this. The problem is that the report is NOT rounding, but the ledger IS Rounding. I too have come across this situation many times and my usual request from the client is to make the report match the ledgered amounts. The problem usually arises when the reporting variable displays two decimals while it is holding 4 or more decimals behind-the-scenes. I (and Larry Germaine) created a generic function to handle this very problem.

The function is N0000146 Round Value. There are three parameters that are passed in: The Value, Rounding, and Break Point.

The Value is just that, the value you wish to round.
The Rounding is to indicate where the rounding is to occur. 1 for Units, .1 for tenths, .01 for Hundreths etc.
You only need these two for 99% of the situations.
The Break Point is a little more complicated (and not used). The simple answer is to take the leftovers from the Value and compare it to the Break Point number, if it is larger (absolute) then round up, smaller then round down.
All three of these parameters used the largest numeric container at the time MathNumeric29D9 so 99.9% of all numbers should be accommodated.

Ben again,
 
Back
Top