Inconsistent Results When Using PCM_OP_AR_RESOURCE_AGGREGATION Opcode (Doc ID 731543.1)

Last updated on SEPTEMBER 24, 2016

Applies to:

Oracle Communications Billing and Revenue Management - Version: 7.3.0.0.0 to 7.3.0.0.1
This problem can occur on any platform.

Symptoms

-- Problem Statement:

1) Create a simple product/deal/plan with:
- /service/ip
- Monthly Cycle Fees of 10Euro
- A tax of 4.5%
2) Configure CM pin.conf, with taxation_switch = 1 (event-time taxation)
4) Restart CM
5) With Customer Center, create an account with the above plan
6) With Customer Center, run bill now. A CycleForward amount of 20 Euros + tax 4.5% produces a bill 20.9Euros.
7) Run the opcode PCM_OP_AR_RESOURCE_AGGREGATION on the CycleForward event , with the following flist :


In the output flist, the fields PIN_FLD_AMOUNT and PIN_FLD_ALLOCATED are same (20 Euros), as an amount without Tax. This is OK.

8) Apply the event adjustment opcode (PCM_OP_AR_EVENT_ADJUSTMENT) with the following parameters

0 PIN_FLD_POID POID [0] 0.0.0.1 /account 90942 0
0 PIN_FLD_PROGRAM_NAME STR [0] "OP_AR_SET_ADJUSTMENT"
0 PIN_FLD_REASON_CODE STR [0] " Check AR Resource Aggregation"
0 PIN_FLD_EVENTS ARRAY [0] allocated 20, used 1
1 PIN_FLD_POID POID [0] 0.0.0.1 /event/billing/product/fee/cycle/cycle_forward_monthly 91262 0
0 PIN_FLD_ADJUSTMENT_INFO ARRAY [0] allocated 20, used 3
1 PIN_FLD_RESOURCE_ID INT [0] 978
1 PIN_FLD_FLAGS INT [0] 8
1 PIN_FLD_AMOUNT DECIMAL [0] 10


Here, notice that the flag = 8 which means PIN_EVENT_ADJ_BATCH , to provide adjusted tax and the amount to adjust before tax application.

9) Again run the opcode PCM_OP_AR_RESOURCE_AGGREGATION on the CycleForward event, with the following flist :

0 PIN_FLD_POID POID [0] 0.0.0.1 /account 90942 0
0 PIN_FLD_EVENTS ARRAY [1] allocated 20, used 1
1 PIN_FLD_POID POID [0] 0.0.0.1 /event/billing/product/fee/cycle/cycle_forward_monthly 91262 0


Below is the result flist :

0 PIN_FLD_POID POID [0] 0.0.0.1 /account 90942 0
0 PIN_FLD_EVENTS ARRAY [0] allocated 20, used 5
1 PIN_FLD_POID POID [0] 0.0.0.1 /event/billing/product/fee/cycle/cycle_forward_monthly 91262 0
1 PIN_FLD_START_T TSTAMP [0] (1213006208) Mon Jun 09 12:10:08 2008
1 PIN_FLD_END_T TSTAMP [0] (1213006208) Mon Jun 09 12:10:08 2008
1 PIN_FLD_AMOUNT DECIMAL [0] 20.9
1 PIN_FLD_DISCOUNT DECIMAL [0] 0
0 PIN_FLD_RESULTS ARRAY [0] allocated 20, used 5
1 PIN_FLD_RESOURCE_ID INT [0] 978
1 PIN_FLD_AMOUNT DECIMAL [0] 20
1 PIN_FLD_DISCOUNT DECIMAL [0] 0
1 PIN_FLD_ADJUSTED DECIMAL [0] -10.45
1 PIN_FLD_ALLOCATED DECIMAL [0] 9.55


PIN_FLD_AMOUNT is always correct with 20 Euros (CycleForward amount without tax)
PIN_FLD_AJUSTED is correct, with 10.45 Euros (Total amount of the last adjustment : both amounts(CycleForward +tax)).

But PIN_FLD_ALLOCATED is difference between both previous fields.
It means the opcode AR_RESOURCE_AGGREGATION summed up amount without tax (PIN_FLD_AMOUNT), and amount with tax (PIN_FLD_AJUSTED).

One would expect that the amount in PIN_FLD_ALLOCATED should work with amounts  either without tax, or with amounts with tax, but not both as in teh above case.


 [0] 0.0.0.1 /account 90942 0
0 PIN_FLD_EVENTS ARRAY [1] allocated 20, used 1
1 PIN_FLD_POID POID [0] 0.0.0.1 /event/billing/product/fee/cycle/cycle_forward_monthly 91262 0

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