Discount Rounding For Usage Is Not Consistent Across Tiers (Doc ID 558402.1)

Last updated on JUNE 22, 2017

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.0.0.0.0 to 7.0.0.0.1 [Release 7.0.0]
Information in this document applies to any platform.
The problem was found on 7.0_TP4.
***Checked for relevance on 15-Jan-2013***

Symptoms

Discount rounding for usage is not consistent across the tiers for a product with rate plan
selector (single rate may have the same issue).

For example,
Rate tier1: $12.95, quantity 1.5
Rate tier2: $6.95, quantity 2.22
Usage discount 10% (Portal base, no pipeline)

Got the discount like this:
Tier1: 12.95 * 1.5 * 10% = 1.9425 rounded to 1.95
Tier2: 6.95 * 2.22 * 10% = 1.5429 rounded to 1.54

Steps To Reproduce:
1. Add the following to pin_event_map:
/service/ip : /event/activity : Test Usage Event

2. add the following to pin_rum:
/event/activity : Quantity : PIN_FLD_EVENT.PIN_FLD_NET_QUANTITY : none

3. cd $PIN_HOME/sys/data/pricing/example
load_event_map -dv pin_event_map
load_pin_rum -dv pin_rum
restart cm.

4. Create a Product Usage, a deal and a plan in Pricing Center. Commit it. Use the plan to create an account with Customer Center.
For the Usage product, rate is defined like the following:
Tier1: $12.95 (none - 1.5)
Tier2: $10.95 (1.5 to 3.0)
Tier3: $6.95 (3.0 - none)

5. move PVT a few days ahead, modify the following Input Flist to use the
start/end date between the account creation time and current PVT.

# PCM_OP_ACT_USAGE 0 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /event/activity -1 0
0 PIN_FLD_EVENT SUBSTRUCT [0] allocated 10, used 10
1    PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 67065 0
1    PIN_FLD_POID POID [0] 0.0.0.1 /event/activity -1 0
1    PIN_FLD_PROGRAM_NAME STR [0] "Testnap"
1    PIN_FLD_NAME STR [0] "Generic"
1    PIN_FLD_NET_QUANTITY DECIMAL [0] 5.22
1    PIN_FLD_SYS_DESCR STR [0] "Usage EOD Part Basic"
1    PIN_FLD_DESCR STR [0] "Basic"
1    PIN_FLD_END_T TSTAMP [0] (1197619200) Fri Dec 14 00:00:00 2007
1    PIN_FLD_START_T TSTAMP [0] (1197532800) Thu Dec 13 00:00:00 2007
1    PIN_FLD_SERVICE_OBJ POID [0] 0.0.0.1 /service/ip 68613 0
0 PIN_FLD_CANDIDATE_RUMS ARRAY [3] allocated 3, used 3
1    PIN_FLD_RUM_NAME STR [0] "Quantity"
1    PIN_FLD_UNIT ENUM [0] 0
1    PIN_FLD_QUANTITY DECIMAL [0] 5.22


run PCM_OP_ACT_USAGE from testnap.

Quantity 5.22 distributed into 3 tiers like this:
Tier1: 1.5
Tier2: 1.5
Tier3: 2.22

Discount calcuated:
Tier1: 12.95 * 1.5 * 10% = 1.9425 rounded to 1.95
Tier3: 6.95 * 2.22 * 10% = 1.5429 rounded to 1.54

Cause

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