Search Results pa_mcb_invoice_pkg




Overview

PA_MCB_INVOICE_PKG is a PL/SQL package body in the APPS schema that supports multi-currency billing (MCB) processing within the Oracle Projects (PA) module. Its principal business function is to convert customer event amounts into the appropriate billing transaction currency and to validate the currency and funding attributes that govern multi-currency invoicing. The package is an internal, other-classified API rather than a public interface, and it operates in support of the draft invoice generation and customer revenue distribution flow. References to PA_MULTI_CURRENCY_BILLING, PA_BILLING, and PA_DEBUG indicate that it is invoked during the billing cycle to normalize event amounts across currencies, evaluate project funding, and emit diagnostic messages when debug is enabled. The object carries a VALID status in the 12.2.2 environment and is not referenced by any other database object, confirming its role as a leaf-level worker package within the billing stack.

Key Procedures and Functions

  • INIT — Initializes package-level state before the conversion routines execute, establishing the working context for the billing run.
  • EVENT_CONVERT_AMOUNT_BULK — Performs bulk conversion of customer event amounts, processing multiple events in a single pass to support high-volume invoice generation.
  • CONVERT_LINE_EVENT_AMOUNT — Converts the amount of a single line event into the applicable billing transaction currency.
  • CHECK_FUNDING_CONV_ATTRIBUTES — Validates the funding and conversion attributes associated with a project or agreement to determine whether multi-currency conversion is permissible.
  • INV_BY_BILL_TRANS_CURRENCY — Retrieves or evaluates invoice data keyed by billing transaction currency, supporting currency-specific invoice handling.
  • LOG_MESSAGE — Writes diagnostic and informational messages, typically gated by the PA_DEBUG utility, for troubleshooting conversion and billing activity.

Tables Accessed

The package reads and writes a defined set of Projects tables through APPS synonyms. PA_EVENTS and PA_EVENT_TYPES, together with PA_CUST_EVENT_RDL_ALL, PA_CUST_REV_DIST_LINES, and PA_CUST_REV_DIST_LINES_ALL, provide the customer event and revenue distribution data whose amounts are converted. PA_DRAFT_INVOICES_ALL and PA_DRAFT_INVOICE_ITEMS hold the draft invoice headers and lines that receive the converted values. PA_AGREEMENTS_ALL, PA_PROJECTS_ALL, PA_PROJECT_CUSTOMERS, and PA_SUMMARY_PROJECT_FUNDINGS supply the agreement, project, customer, and funding context used by the funding attribute validation. PA_LOOKUPS provides reference values, while PLITBLM is the standard PL/SQL table type used for bulk collections within the conversion routines.

Usage Notes

Because this package is classified as OTHER rather than a published API, it is not intended for direct invocation by customers. It is invoked internally from the multi-currency billing logic, principally during draft invoice generation and customer event conversion within the Projects billing cycle. Custom code should call supported public billing APIs rather than this package directly, as its internal interfaces may change between releases. Organizations operating multi-currency projects should confirm that funding and conversion attributes are correctly configured on their agreements and projects, since CHECK_FUNDING_CONV_ATTRIBUTES governs whether conversion proceeds. The LOG_MESSAGE and PA_DEBUG dependencies allow DBAs to enable diagnostic tracing when conversion results appear incorrect. The package is referenced by a number of other packages in the billing stack, reinforcing its position as a shared conversion utility rather than a standalone entry point.