Fixed-Amount Recycled Billing
When a billing worksheet is cancelled, it is unknown whether that billing worksheet contains all bill lines that are associated with a particular event. Due to the flexibility of the PeopleSoft Billing bill-by functionality, two items from the same billing plan may end up on separate bills—if they have different projects, for example. As a result, the system cannot reset the billing plan event back to Ready when worksheet cancellation occurs. Instead, the system sets the event to Recycled and updates the cross-reference row status (in the CA_BP_XREF table) to Deleted. Then, when the Contracts Billing Interface process considers billable items, it selects recycled events with cancelled cross-reference rows. In addition, the system checks that the deleted row is the most recent row that is inserted into the cross-reference table for that bill line and event combination. When the bill line and event is rebilled, a new cross-reference row is created with a New status; the old row remains in the table with a Deleted status.
Consider this scenario:
-
Contract tables prior to the Contracts Billing Interface process.
CA_BP_EVENTS table:
Contract Billing Plan Occurrence Status 1000
BP001
1
DON
1000
BP001
2
RDY
CA_BP_LINES table:
Contract Billing Plan Line Amount (USD) (Project) 1000
BP001
1
100
ABC
1000
BP001
2
500
ABC
1000
BP001
3
700
DEF
-
The Contracts Billing Interface process and the Billing Interface create these bill worksheets:
Worksheet #1 – Project ABC (100 USD) + (500 USD) = (600 USD)
Worksheet #2 – Project DEF 700 USD
-
Worksheet #2 is cancelled (Worksheet #1 has not yet been approved).
The following updates are made:
CA_BP_EVENTS table:
Contract Billing Plan Occurrence Status 1000
BP001
2
RCL (recycled)
CA_BP_XREF table:
Sequence Contract Billing Plan Line Occurrence Amount Status 1
1000
BP001
1
2
100
RCV (received)
2
1000
BP001
2
2
500
RCV
3
1000
BP001
3
2
700
DEL (deleted)
-
After the Projects/Contracts Interface runs, the following updates occur:
CA_BP_EVENTS table:
Contract Billing Plan Occurrence Status 1000
BP001
2
PRG (in progress)
CA_BP_XREF table:
Sequence Contract Billing Plan Line Occurrence Amount Status 1
1000
BP001
1
2
100
RCV
2
1000
BP001
2
2
500
RCV
3
1000
BP001
3
2
700
DEL
4
1000
BP001
3
2
700
NEW
The system uses this criteria when selecting the recycled item:
-
Event status is recycled.
(BP_EVENT_STATUS = RCL).
-
The event keys (contract, billing plan, and event occurrence) match between the recycled event and the XREF table.
-
The status on the XREF table is deleted.
(XREF_STATUS = DEL).
-
Only the maximum sequence row for the contract, billing plan, line, and occurrence combination is considered.
(MAX (XREF_SEQ_NUM)).
-
Event conditions are not considered because they have already been met.
-
-
Worksheet #1 is cancelled. The following updates are made:
CA_BP_EVENTS table:
Contract Billing Plan Occurrence Status 1000
BP001
2
RCL
CA_BP_XREF table:
Sequence Contract Billing Plan Line Occurrence Amount Status 1
1000
BP001
1
2
100
DEL
2
1000
BP001
2
2
500
DEL
3
1000
BP001
3
2
700
DEL
4
1000
BP001
3
2
700
NEW
-
When the Projects/Contracts Interface process runs, it only picks up lines one and two, not three, because it already has a new row. The results are:
Contract Billing Plan Occurrence Status 1000
BP001
2
PRG
CA_BP_XREF table:
Sequence Contract Billing Plan Line Occurrence Amount Status 1
1000
BP001
1
2
100
DEL
2
1000
BP001
2
2
500
DEL
3
1000
BP001
3
2
700
DEL
4
1000
BP001
3
2
700
NEW
5
1000
BP001
1
2
100
NEW
6
1000
BP001
2
2
500
NEW
Note:
In the case of immediate billing methods in which there are no events, the billing plan status is set back to In Progress. The Contracts Billing Interface process processes the in-progress plans if the maximum row for that plan has been deleted in the cross-reference.