Prorate Scale Is Not Calculated Correctly
Last updated on JUNE 13, 2018
Applies to:Oracle Communications Billing and Revenue Management - Version 126.96.36.199.0 to 188.8.131.52.0 [Release 7.4.0]
Information in this document applies to any platform.
A product with cycle_forward_monthly event to charge prorated amount $0.75 is created. Purchased this product 9 days before billing date. It is expected that BRM calculates the prorate amounts as below:
prorate scale = days_to_prorate / days_in_month = 9 / 30 = 0.3
prorated amount = prorate_scale * amount = 0.3 * $0.75 = $0.225
amount after rounding = $0.23
But, the results are as below:
prorate scale (from /event) = 0.299999999999999
prorated amount = 0.299999999999999 * $0.75 = $0.22499999999999925
amount after rounding = $0.22
The difference is 0.01, and this is causing bill comparison differences.
Steps to Reproduce
1. Configure a product with cycle_forward_monthly event to charge $0.75
2. Set the prorate flag and prorate_first and prorate_last to "prorate"
3. Purchase the product for an account 9 days before billing date
4. Check the MRC(monthly recurring charge) event for the amount
5. Expected Prorated Amount = $0.23, where as actual amount was $0.22
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