Search Results ar_xml_invoice_charge_v




Overview

The AR_XML_INVOICE_CHARGE_V view is a public Oracle E-Business Suite database object owned by the APPS schema within the Receivables (AR) product. It is a presentation-layer construct designed to expose charge-type transaction lines in a flattened, XML-ready format suitable for outbound invoice generation and integration with external systems. The view filters transactional data from the core Receivables line table and reshapes it into a structure that aligns with the XML invoice schema used by Oracle Receivables' e-commerce and XML invoicing features.

Its principal role is to serve as a data source for XML invoice extraction programs, whereby charges such as freight, handling, and other non-item, non-tax amounts attached to a transaction are surfaced separately from standard lines and tax lines. The view is read-only and carries a VALID status in the data dictionary, indicating it is compiled, available, and supported for query access across both the 12.1.1 and 12.2.2 releases of Oracle EBS.

Underlying Base Objects

The view text is defined as a SELECT statement over two documented base objects:

  • RA_CUSTOMER_TRX_LINES (SYNONYM) — the primary source of transactional line data. The view aliases this table as L and draws nearly all of its payload columns from it, including identifiers, amounts, descriptions, line numbers, and line types.
  • AR_XML_VIEW_FUNCTIONS (PACKAGE) — a PL/SQL package supplying the CHARGE_FUNCTION1 through CHARGE_FUNCTION5 functions. These functions are invoked row-by-row to populate the USER1 through USER5 descriptive flexfield (DFF) columns dynamically, passing the current CUSTOMER_TRX_ID and CUSTOMER_TRX_LINE_ID as arguments.

The relationship is therefore a straightforward parent-line join: the RA_CUSTOMER_TRX_LINES row provides the identity and measures of each charge, while the package provides derived DFF values. A critical filter is applied in the WHERE clause — only rows where LINE_TYPE is not 'LINE' and not 'TAX' are returned. This constraint is what isolates charge lines from item and tax lines, making the view purpose-specific.

Key Columns

The view exposes eleven columns. Their meanings are as follows:

  • CUSTOMER_TRX_ID — identifier of the parent transaction (invoice, credit memo, debit memo) to which the charge belongs.
  • CUSTOMER_TRX_LINE_ID — unique identifier of the charge line itself.
  • LINK_TO_CUST_TRX_LINE_ID — reference to a related line, typically the item line that the charge is associated with.
  • CHARGE_AMOUNT — the extended amount of the charge, sourced from EXTENDED_AMOUNT.
  • DESCRIPTION — free-text description of the charge.
  • LINE_NUMBER — ordering sequence of the line within the transaction.
  • LINE_TYPE — the classification of the charge line; values 'LINE' and 'TAX' are excluded by the view's filter.
  • USER1 through USER5 — five descriptive flexfield attributes populated by AR_XML_VIEW_FUNCTIONS, enabling customer-specific charge detail to flow into the XML output.

The absence of standard audit columns (CREATION_DATE, LAST_UPDATE_DATE) reflects the view's narrow integration focus rather than a general-purpose reporting intent.

Common Use Cases and Queries

The view is most commonly queried during XML invoice generation, where charge lines must be emitted as distinct XML elements, and during reconciliation of freight or handling charges against customer invoices. A typical query enumerates all charges for a given transaction:

SELECT customer_trx_id, customer_trx_line_id, charge_amount, description, line_type, user1, user2 FROM ar_xml_invoice_charge_v WHERE customer_trx_id = :p_trx_id ORDER BY line_number;

Analysts also use it to audit the flexfield values produced by the AR_XML_VIEW_FUNCTIONS package, or to isolate transactions that carry charge lines for downstream reporting. Because the view already enforces the LINE_TYPE exclusion and applies the LINE_NUMBER ordering, callers need not duplicate that logic. Any modification to the package functions or the base line table will directly affect the view's output, so these dependencies should be reviewed prior to upgrades or customizations.