How To Fix The Batch Rating  Discount More Than Possible Rounding Issue?
Last updated on APRIL 28, 2017
Applies to:
Oracle Communications Billing and Revenue Management  Version 7.3.0.0.0 and laterInformation in this document applies to any platform.
Goal
This scenario occurs whenever there is a '5' as the digit to be rounded off.
This will mostly happen when takes half of any number having the last significant digit as an odd digit:
0.1011 *.0.5 = 0.05055
0.2013 * 0.5 = 0.10065
0.3015 * 0.5 = 0.15075
.... and so on
In all these cases, it is because the '5' is always rounded up on following the normal ROUNDING procedure.
Consider the following two scenarios:
Suppose when follow normal rounding with 2 decimal places.
It has a set of even and odd numbers, say, 0.102 and 0.205.
0.102 becomes 0.10 after rounding.
0.205 becomes 0.21 after rounding.
0.102 + 0.205 = 0.307 which is less than 0.10 + 0.21 = 0.31.
Now, another set of even numbers, say, 0.102 and 0.208.
0.102 becomes 0.10 after rounding.
0.208 becomes 0.21 after rounding.
0.102 + 0.208 = 0.31 = 0.10 + 0.21 (the expected value).
The same can be tried for any set of numbers. If the trailing digit is not '5', the rounding is perfect. When gets a '5', it will have a discrepancy.
Solution
Sign In with your My Oracle Support account 

Don't have a My Oracle Support account? Click to get started 
My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms