Reviewing the Cross-Reference Table
This section provides an overview of the cross-reference table and discusses how to:
Set fields in the cross-reference table.
Update the cross-reference table: Contracts Billing Interface process.
Update the cross-reference table: Projects/Billing Interface process.
Update the cross-reference table: manually entered invoices.
Review billing examples.
The cross-reference table (CA_BP_XREF) enables PeopleSoft Contracts to view all billing activity that relates to contracts, including billing activity originating both within and outside of PeopleSoft Contracts.
For billing activity originating in PeopleSoft Contracts, these inserts occur:
Fixed-amount bill lines (with a system source of CBI) are initially inserted by the Contracts Billing Interface process.
They are updated throughout the billing cycle and are marked FIN after the invoice is finalized. Billing plans with a billing method of milestone, percent complete, immediate, and value-based are included.
Rate-based bill lines (with a system source of PBI) are inserted by the Update Contract/Projects Data process (BIPCC000) in PeopleSoft Billing after the invoice is finalized.
Rate-based bill lines are summarized by project, billing currency, and invoice ID.
Recurring bill lines (with a system source of CBI) are initially inserted by the Contracts Billing Interface process.
They are updated throughout the billing cycle and are marked FIN after the invoice is finalized.
For billing activity originating in PeopleSoft Billing, if the bill line specifies a valid contract number and billing plan, then the row is inserted by the update Contract/Projects Data process (BIPCC000) in PeopleSoft Billing after the invoice is finalized.
Note: If you reverse a billing plan that includes a prepaid amount, utilization does not occur against the prepaid amount until you enter and finalize the new initial billing plan.
This table describes the use of the fields in the cross-reference table.
Field |
Key |
Required |
Description |
---|---|---|---|
CONTRACT_NUM |
Key |
Yes |
Contract number. |
BILL_PLAN_ID |
Key |
Yes |
Billing plan ID. |
XREF_SEQ_NUM |
Key |
Yes |
Sequential number. Assigned by CONTRACT_NUM, BILL_PLAN_ID. |
XREF_STATUS |
|
Yes |
Identifies where this row of data is within the xref lifecycle. Values are: NEW (new), RCV (received by the billing interface), ACP (worksheet accepted), DEL (worksheet rejected or deleted), FIN (finalized), RVS (reversed). |
SYSTEM_SOURCE |
|
Yes |
Identifies where this row was generated. Values are: CBI (contracts billing interface—milestone and percent complete), PBI (projects billing interface—as-incurred), PCA (page entry in contracts), BPI (initiated in PeopleSoft Billing). |
EVENT_OCCURRENCE |
Altern |
No |
One of the keys from CA_BP_EVENTS. May not be set for as-incurred billing. |
BPLAN_LN_NBR |
Altern |
No |
One of the keys from CA_BP_LINES. Not set for as-incurred billing. |
CONTRACT_LINE_NUM |
Altern |
No |
Contract line number. |
NET_AMOUNT |
|
No |
Amount sent to PeopleSoft Billing from PeopleSoft Contracts. No tax. Not set for transactions originating in PeopleSoft Billing with the invoice types of ACR, ADJ, ARB, or RAD, for as-incurred billing. |
GROSS_AMOUNT |
|
No |
Amount sent to PeopleSoft Billing from PeopleSoft Contracts. No tax included. Not set for transactions originating in PeopleSoft Billing with the invoice types of ACR, ADJ, ARB, or RAD, for as-incurred billing. |
BI_CURRENCY_CD |
|
Yes |
Currency code of the invoice. |
BUSINESS_UNIT_BI |
|
Yes |
PeopleSoft Billing business unit. |
PROCESS_INSTANCE |
|
No |
The process instance for the Contracts Billing Interface process run that inserted the row. Populated only for CBI rows. |
TEMP_INVOICE |
|
No |
Invoice number for the temporary invoice. Populated only for CBI rows. Set when the Billing Interface is run, then cleared out when the worksheet is accepted and an invoice is assigned. |
INVOICE |
|
No |
Invoice number for the actual invoice. |
INVOICE_TYPE |
|
No |
Values are: REG, ACR, ARB, ADJ, and RAD. Set after finalization. |
INVOICE_DT |
|
No |
The date of the invoice. Set after finalization. |
NET_EXTENDED_AMT |
|
No |
Net amount actually on the bill. No tax or freight included. Set after finalization in PeopleSoft Billing. |
GROSS_EXTENDED_AMT |
|
No |
Gross amount actually on the bill. No tax or freight included. Set the same as GROSS_AMOUNT by the Contracts Billing Interface process when the row is first created. Reset after finalization in PeopleSoft Billing. |
CONTRACT_PPD_SEQ |
|
No |
The prepaid sequence number. Set here if the CA_BP_LINES has it set. |
BUSINESS_UNIT_PC |
|
No |
Project business unit. |
PROJECT |
|
No |
Project. |
LASTUPDDTTM |
|
Yes |
Date and time last updated. Reset every time the record is updated. |
LASTUPDOPRID |
|
Yes |
Operator ID last updated or process that updated the row. For example, BIPCC000 appears in this field after the process runs. Reset every time the record is updated. |
CHG_ID |
|
No |
Passed for amended lines or events. |
PO_REF |
|
No |
Purchase order (PO) reference number. For fixed-fee contracts if a PO number is associated with the billing plan line. |
When running the Contracts Billing Interface (CBI) process for amount-based products, the system inserts PeopleSoft Contracts billing (CBI) rows into the CA_BP_XREF table. PeopleSoft Billing updates the status of these CBI rows throughout the billing cycle until billing is finalized, at which point the system marks these CBI rows as Finalized.
When running the Contracts Billing Interface process for rate-based products, the process sends billing rows for as-incurred billing plans directly to PeopleSoft Billing based on data accumulated in PeopleSoft Project Costing. The system inserts these PeopleSoft Project Costing billing (PBI) rows into the CA_BP_XREF table only after the invoice is finalized, during the Update Contract/Projects Data process (BIPCC000).
When running the Contracts Billing Interface process for recurring billing, the process is similar to that for fixed-fee. The system inserts rows into the CA_BP_XREF table as a New status.
PeopleSoft Contracts billing (CBI) rows are initially inserted in the CA_BP_XREF table by the Contracts Billing Interface process. The system then updates these rows at various stages in the billing process. This table shows which fields are updated at each stage:
Field |
NEW |
RCV |
ACP |
DEL |
FIN |
---|---|---|---|---|---|
CONTRACT_NUM |
X |
|
|
|
|
BILL_PLAN_ID |
X |
|
|
|
|
XREF_SEQ_NUM |
X |
|
|
|
|
XREF_STATUS |
X |
X |
X |
X |
X |
SYSTEM_SOURCE |
X |
|
|
|
|
EVENT_OCCURRENCE |
X |
|
|
|
|
BPLAN_LN_NBR |
X |
|
|
|
|
CONTRACT_LINE_NUM |
|
|
|
|
|
NET_AMOUNT |
X |
|
|
|
|
GROSS_AMOUNT |
X |
|
|
|
|
BI_CURRENCY_CD |
X |
|
|
|
|
BUSINESS_UNIT_BI |
X |
|
|
|
|
PROCESS_INSTANCE |
X |
|
|
|
|
TEMP_INVOICE |
|
X |
X |
|
|
INVOICE |
|
|
X |
|
|
INVOICE_TYPE |
|
|
|
|
X |
INVOICE_DT |
|
|
|
|
X |
NET_EXTENDED_AMT |
|
|
|
|
X |
GROSS_EXTENDED_AMT |
|
|
|
|
X |
CONTRACT_PPD_SEQ |
Maybe |
|
|
|
|
BUSINESS_UNIT_PC |
|
|
|
|
|
PROJECT |
|
|
|
|
|
LASTUPDDTTM |
X |
X |
X |
X |
X |
LASTUPDOPRID |
X |
X |
X |
X |
X |
CHG_ID |
X |
|
|
|
|
The system inserts PBI rows into the CA_BP_XREF table after the invoices represented by those rows have been finalized in PeopleSoft Billing. The system inserts one row for each combination of CONTRACT_NUM, BILL_PLAN_ID, EVENT_OCCURRENCE, CONTRACT_LINE_NUM, BUSINESS_UNIT_PC, PROJECT, BI_CURRENCY_CD, and INVOICE.
Note: Although only certain project activities pertain to particular contract lines, the system does not store the activity in CA_BP_XREF. Activities are summarized by project and billing currency.
This table shows which fields are updated at each stage:
Field |
NEW |
RCV |
ACP |
DEL |
FIN |
---|---|---|---|---|---|
CONTRACT_NUM |
|
|
|
|
X |
BILL_PLAN_ID |
|
|
|
|
X |
XREF_SEQ_NUM |
|
|
|
|
X |
XREF_STATUS |
|
|
|
|
X |
SYSTEM_SOURCE |
|
|
|
|
X |
EVENT_OCCURRENCE |
|
|
|
|
Maybe |
BPLAN_LN_NBR |
|
|
|
|
|
CONTRACT_LINE_NUM |
|
|
|
|
X |
NET_AMOUNT |
|
|
|
|
|
GROSS_AMOUNT |
|
|
|
|
|
BI_CURRENCY_CD |
|
|
|
|
X |
BUSINESS_UNIT_BI |
|
|
|
|
X |
PROCESS_INSTANCE |
|
|
|
|
|
TEMP_INVOICE |
|
|
|
|
|
INVOICE |
|
|
|
|
X |
INVOICE_TYPE |
|
|
|
|
X |
INVOICE_DT |
|
|
|
|
X |
NET_EXTENDED_AMT |
|
|
|
|
X |
GROSS_EXTENDED_AMT |
|
|
|
|
X |
CONTRACT_PPD_SEQ |
|
|
|
|
|
BUSINESS_UNIT_PC |
|
|
|
|
X |
PROJECT |
|
|
|
|
X |
LASTUPDDTTM |
|
|
|
|
X |
LASTUPDOPRID |
|
|
|
|
X |
If you manually entered an invoice directly into PeopleSoft Billing, the system can still automatically insert rows for that invoice into the CA_BP_XREF table as long as the necessary fields have valid values. PeopleSoft Billing enables entry of CONTRACT_NUM, BILL_PLAN_ID, EVENT_OCCURRENCE, BPLAN_LN_NBR, CONTRACT_LINE_NUM, BUSINESS_UNIT_PC, and PROJECT. Only CONTRACT_NUM and BILL_PLAN_ID must be set for the information to be inserted into CA_ BP_XREF. The system inserts rows for manually entered invoices into the CA_BP_XREF table after the invoice has been finalized in PeopleSoft Billing.
Review the following examples to see how data flows from a billing plan in PeopleSoft Contracts to the Billing Worksheet in PeopleSoft Billing and from the Billing Worksheet to the finalized bill and update of Contract/Projects data. You can also see the updates that the system makes to the rows in the CA_BP_XREF table during this process.
Milestone Billing Example
Percent Complete works the same way.
Create a billing plan with two billing plan events and two billing plan lines.
CA_BILL_PLAN:
CONTRACT_NUM |
BILL_PLAN_ID |
AMOUNT |
---|---|---|
CA1 |
BP1 |
1000 |
CA_BP_LINES:
CONTRACT_NUM |
BILL_PLAN_ID |
BPLAN_LN_NBR |
GROSS_AMT |
---|---|---|---|
CA1 |
BP1 |
1 |
400 |
CA1 |
BP1 |
2 |
600 |
CA_BP_EVENTS:
CONTRACT_NUM |
BILL_PLAN_ID |
EVENT_OCCURRENCE |
EVENT_DATE |
PERCENTAGE |
---|---|---|---|---|
CA1 |
BP1 |
1 |
1/1/99 |
50 |
CA1 |
BP1 |
2 |
10/31/99 |
50 |
According to BP1, these are the invoice due dates and amounts:
On January 1, 1999, the following amount is due: (0.5*400) + (0.5*600).
On October 31, 1999, the following amount is due: (0.5*400) + (0.5*600).
Mark the first event RDY, and then run the Contracts Billing Interface process. When you run this process, the system creates the following entries in the CA_BP_XREF table:
Field |
Row 1 |
Row 2 |
---|---|---|
CONTRACT_NUM |
CA1 |
CA1 |
BILL_PLAN_ID |
BP1 |
BP1 |
XREF_SEQ_NUM |
1 |
2 |
XREF_STATUS |
NEW |
NEW |
SYSTEM_SOURCE |
CBI |
CBI |
EVENT_OCCURRENCE |
1 |
1 |
BPLAN_LN_NBR |
1 |
2 |
CONTRACT_LINE_NUM |
|
|
NET_AMOUNT |
200 |
300 |
GROSS_AMOUNT |
200 |
300 |
BI_CURRENCY_CD |
USD |
USD |
BUSINESS_UNIT_BI |
EAST |
EAST |
PROCESS_INSTANCE |
123123 |
123123 |
TEMP_INVOICE |
|
|
INVOICE |
|
|
INVOICE_TYPE |
|
|
INVOICE_DT |
|
|
NET_EXTENDED_AMT |
|
|
GROSS_EXTENDED_AMT |
200 |
300 |
CONTRACT_PPD_SEQ |
|
|
BUSINESS_UNIT_PC |
|
|
PROJECT |
|
|
LASTUPDDTTM |
1-DEC-1998 10:30:22 |
1-DEC-1998 10:30:22 |
LASTUPDOPRID |
OPRID that ran the Contracts Billing Interface process |
OPRID that ran the Contracts Billing Interface process |
After you have successfully run the Contracts Billing Interface process, run the billing interface process in PeopleSoft Billing. This process updates the CA_BP_XREF rows to an XREF_STATUS of RCV (received). This process also adds a TEMP_INVOICE number and inserts the date into the LASTUPDDTTM field:
Field |
Row 1 |
Row 2 |
---|---|---|
CONTRACT_NUM |
CA1 |
CA1 |
BILL_PLAN_ID |
BP1 |
BP1 |
XREF_SEQ_NUM |
1 |
2 |
XREF_STATUS |
RCV |
RCV |
SYSTEM_SOURCE |
CBI |
CBI |
EVENT_OCCURRENCE |
1 |
1 |
BPLAN_LN_NBR |
1 |
2 |
CONTRACT_LINE_NUM |
|
|
NET_AMOUNT |
200 |
300 |
GROSS_AMOUNT |
200 |
300 |
BI_CURRENCY_CD |
USD |
USD |
BUSINESS_UNIT_BI |
EAST |
EAST |
PROCESS_INSTANCE |
123123 |
123123 |
TEMP_INVOICE |
TMP-000234 |
TMP-000234 |
INVOICE |
|
|
INVOICE_TYPE |
|
|
INVOICE_DT |
|
|
NET_EXTENDED_AMT |
|
|
GROSS_EXTENDED_AMT |
200 |
300 |
CONTRACT_PPD_SEQ |
|
|
BUSINESS_UNIT_PC |
|
|
PROJECT |
|
|
LASTUPDDTTM |
1-DEC-1998 12:43:02 |
1-DEC-1998 12:43:02 |
LASTUPDOPRID |
OPRID that ran the billing interface |
OPRID that ran the billing interface |
The billing administrator accepting the Billing Worksheet to which these rows were written triggers the next update to the CA_BP_XREF table. The system updates the XREF_STATUS for rows that were accepted in the Billing Worksheet to a status of ACP (accepted). The system also inserts the actual invoice number, inserts the date in the LASTUPDDTTM field, and adds the user ID of the user who accepted the bills to the LASTUPDOPRID field:
Field |
Row 1 |
Row 2 |
---|---|---|
CONTRACT_NUM |
CA1 |
CA1 |
BILL_PLAN_ID |
BP1 |
BP1 |
XREF_SEQ_NUM |
1 |
2 |
XREF_STATUS |
ACP |
ACP |
SYSTEM_SOURCE |
CBI |
CBI |
EVENT_OCCURRENCE |
1 |
1 |
BPLAN_LN_NBR |
1 |
2 |
CONTRACT_LINE_NUM |
|
|
NET_AMOUNT |
200 |
300 |
GROSS_AMOUNT |
200 |
300 |
BI_CURRENCY_CD |
USD |
USD |
BUSINESS_UNIT_BI |
EAST |
EAST |
PROCESS_INSTANCE |
123123 |
123123 |
TEMP_INVOICE |
TMP-000234 |
TMP-000234 |
INVOICE |
112233 |
112233 |
INVOICE_TYPE |
|
|
INVOICE_DT |
|
|
NET_EXTENDED_AMT |
|
|
GROSS_EXTENDED_AMT |
200 |
300 |
CONTRACT_PPD_SEQ |
|
|
BUSINESS_UNIT_PC |
|
|
PROJECT |
|
|
LASTUPDDTTM |
3-DEC-1998 09:43:20 |
3-DEC-1998 09:43:20 |
LASTUPDOPRID |
OPRID that accepted the worksheet |
OPRID that accepted the worksheet |
After the billing administrator has finalized the invoice in PeopleSoft Billing, the last update to the CA_BP_XREF table occurs when the Update Contract/Projects Data process (BIPCC000) in PeopleSoft Billing is run. The system updates the XREF_STATUS to FIN (finalized), INVOICE_TYPE, and inserts values for the billing currency code (BI_CURRENCY_CD), the net extended amount (NET_EXTENDED_AMT), and gross extended amount (GROSS_EXTENDED_AMT). The system then inserts the date in the LASTUPDDTTM field and adds the user ID of the user who finalized the invoice:
Field |
Row 1 |
Row 2 |
---|---|---|
CONTRACT_NUM |
CA1 |
CA1 |
BILL_PLAN_ID |
BP1 |
BP1 |
XREF_SEQ_NUM |
1 |
2 |
XREF_STATUS |
FIN |
FIN |
SYSTEM_SOURCE |
CBI |
CBI |
EVENT_OCCURRENCE |
1 |
1 |
BPLAN_LN_NBR |
1 |
2 |
CONTRACT_LINE_NUM |
|
|
NET_AMOUNT |
200 |
300 |
GROSS_AMOUNT |
200 |
300 |
BI_CURRENCY_CD |
USD |
USD |
BUSINESS_UNIT_BI |
EAST |
EAST |
PROCESS_INSTANCE |
123123 |
123123 |
TEMP_INVOICE |
TMP-000234 |
TMP-000234 |
INVOICE |
112233 |
112233 |
INVOICE_TYPE |
REG |
REG |
INVOICE_DT |
5-DEC-1998 |
5-DEC-1998 |
NET_EXTENDED_AMT |
200 |
300 |
GROSS_EXTENDED_AMT |
200 |
300 |
CONTRACT_PPD_SEQ |
|
|
BUSINESS_UNIT_PC |
|
|
PROJECT |
|
|
LASTUPDDTTM |
5-DEC-1998 10:08:02 |
5-DEC-1998 10:08:02 |
LASTUPDOPRID |
OPRID that finalized the invoice |
OPRID that finalized the invoice |
Milestone Billing Example Part Two The Credit/Rebill
On January 10, 1999, the customer calls the billing department to complain that tax was charged on line two when it was a nontaxable item. The billing department issues a line level adjustment. Here are the CA_BP_XREF entries for these transactions.
Note: The system does not make entries to the cross-reference table for adjustments until the invoices for those adjustments are finalized and the Update Contract/Projects Data process is run.
Field |
Row 3 |
Row 4 |
---|---|---|
CONTRACT_NUM |
CA1 |
CA1 |
BILL_PLAN_ID |
BP1 |
BP1 |
XREF_SEQ_NUM |
3 |
4 |
XREF_STATUS |
FIN |
FIN |
SYSTEM_SOURCE |
FBI |
FBI |
EVENT_OCCURRENCE |
1 |
1 |
BPLAN_LN_NBR |
2 |
2 |
CONTRACT_LINE_NUM |
|
|
NET_AMOUNT |
|
|
GROSS_AMOUNT |
|
|
BI_CURRENCY_CD |
|
|
BUSINESS_UNIT_BI |
EAST |
EAST |
PROCESS_INSTANCE |
|
|
TEMP_INVOICE |
|
|
INVOICE |
112234 |
112234 |
INVOICE_TYPE |
RAD |
RAD |
INVOICE_DT |
10-JAN-1999 |
10-JAN-1999 |
NET_EXTENDED_AMT |
300 |
300 |
GROSS_EXTENDED_AMT |
300 |
300 |
CONTRACT_PPD_SEQ |
|
|
BUSINESS_UNIT_PC |
|
|
PROJECT |
|
|
LASTUPDDTTM |
10-JAN-1999 12:15:23 |
10-JAN-1999 12:15:23 |
LASTUPDOPRID |
OPRID that finalized the invoice |
OPRID that finalized the invoice |
Note that the amount here does not show any change. This is because the tax amount is handled in PeopleSoft Billing only.
As-incurred Billing Example
Define two rate-based contract lines.
CA_DETAIL:
CONTRACT_NUM |
CONTRACT_LINE_NUM |
DESCR |
OTHER FIELDS |
---|---|---|---|
CA2 |
1 |
Consulting Services |
… |
CA2 |
2 |
Consulting Services |
… |
CA_BILL_PLAN
You must associate the rate-based lines with an as-incurred billing plan. The as-incurred billing plan does not have an amount associated with it. You bill as work is performed:
CONTRACT_NUM |
BILL_PLAN_ID |
AMOUNT |
---|---|---|
CA2 |
BP1 |
|
CA_BP_EVENTS
Billing plan events are optional for as-incurred billing plans. If no billing plan events are defined, you bill for work performed to date when you run the Contracts Billing Interface process:
CONTRACT_NUM |
BILL_PLAN_ID |
EVENT_OCCURRENCE |
EVENT_DATE |
PERCENTAGE |
---|---|---|---|---|
|
|
|
|
|
CA_BP_LINES
You do not define billing plan lines for as-incurred billing.
CA_DETAIL_PROJ
This table stores PeopleSoft Project Costing information related to contract lines. You relate projects to contract lines on the Related Projects page:
CONTRACT_NUM |
CONTRACT_LINE_NUM |
BUSINESS_UNIT_PC |
PROJECT_ID |
ACTIVITY_ID |
---|---|---|---|---|
CA2 |
1 |
PCBU |
PC1 |
A1 |
CA2 |
1 |
PCBU |
PC2 |
A1 |
CA2 |
2 |
PCBU |
PC1 |
A2 |
CA_BP_XREF
The Billing Plan - History page displays one row per combination of contract line, business unit, and project, even though the billing for that contract line may have included billing for multiple activities. The system inserts this row into the cross-reference table only after the invoice has been finalized in PeopleSoft Billing and the Update Contract/Projects Data process is run:
Field |
Row 1 |
Row 2 |
---|---|---|
CONTRACT_NUM |
CA2 |
CA2 |
BILL_PLAN_ID |
BP1 |
BP1 |
XREF_SEQ_NUM |
1 |
2 |
XREF_STATUS |
FIN |
FIN |
SYSTEM_SOURCE |
PBI |
PBI |
EVENT_OCCURRENCE |
|
|
BPLAN_LN_NBR |
1 |
1 |
CONTRACT_LINE_NUM |
1 |
2 |
NET_AMOUNT |
|
|
GROSS_AMOUNT |
|
|
BI_CURRENCY_CD |
USD |
USD |
BUSINESS_UNIT_BI |
EAST |
EAST |
PROCESS_INSTANCE |
|
|
TEMP_INVOICE |
|
|
INVOICE |
112236 |
112236 |
INVOICE_TYPE |
REG |
REG |
INVOICE_DT |
31-OCT-1999 |
31-OCT-1999 |
NET_EXTENDED_AMT |
400 |
200 |
GROSS_EXTENDED_AMT |
400 |
200 |
CONTRACT_PPD_SEQ |
|
|
BUSINESS_UNIT_PC |
PCBU |
PCBU |
PROJECT |
PC1 |
PC2 |
LASTUPDDTTM |
31-OCT-1999 07:22:14 |
31-OCT-1999 07:22:14 |
LASTUPDOPRID |
OPRID that finalized the invoice |
OPRID that finalized the invoice |