Search Results pendadj_only




Overview

The APPS.ARP_CUSTOMER_AGING package body is the Receivables (AR) engine that computes customer aging information in Oracle E-Business Suite 12.1.1 and 12.2.2. It provides the computational logic behind standard Receivables aging reports such as the Customer Aging Report, generating aging buckets, bucket titles, and outstanding balances for a given customer, customer site use, and as-of date. The package is classified under ETRM as OTHER (a supporting internal package rather than a public API), and its header comment identifies it as the source module ARCWAGEB.pls, first shipped in the Receivables codebase and maintained through patchset levels. The central design element is the p_as_of_date parameter, which anchors every aging calculation: the package determines how much of each open receivable remains outstanding at that date by distributing payment schedule amounts across accounting periods and reconciliation points.

Key Procedures and Functions

The package body exposes six documented procedures, all oriented around assembling the components of a customer aging calculation:

  • CALC_AGING_BUCKETS — The core routine. For a supplied customer, site use, as-of date, currency, and credit option, it evaluates open items and slot them into aging buckets defined by AR_AGING_BUCKETS / AR_AGING_BUCKET_LINES. It returns the outstanding balance together with bucket title and amount outputs (buckets 0 through 6), and accepts invoice type low/high ranges plus payment schedule and application maximum IDs to limit the population scanned.
  • CALC_CREDITS — Identifies and applies on-account or unapplied credit balances that reduce a customer's aged receivables.
  • CALC_RECEIPTS — Determines cash receipt activity relevant to the aged balance, drawing on receipt and receipt history data.
  • CALC_RISK_RECEIPTS — Handles the treatment of receipts that affect credit risk exposure, distinguishing collections already reflected in risk balances.
  • CALC_DISPUTE — Segments receivables in dispute so that disputed amounts can be reported separately from clean aged balances.
  • CALC_PENDING_ADJ — Accounts for pending adjustments that are expected to affect outstanding balances but have not yet been fully processed.

Tables Accessed

The package reads and aggregates from the following Receivables tables through APPS synonyms: AR_PAYMENT_SCHEDULES and AR_PAYMENT_SCHEDULES_ALL (the primary source of open transaction amounts, due dates, and remaining balances); AR_AGING_BUCKETS and AR_AGING_BUCKET_LINES (bucket definitions and day ranges); AR_ADJUSTMENTS (adjustment amounts affecting balances); AR_CASH_RECEIPTS and AR_CASH_RECEIPT_HISTORY (receipt and status history used by CALC_RECEIPTS and CALC_RISK_RECEIPTS); AR_RECEIVABLE_APPLICATIONS (linking receipts and credits to transactions); RA_CUST_TRX_LINE_GL_DIST (distribution amounts supporting balance derivation); and RA_CUST_TRX_TYPES (transaction type categorization for invoice type filtering).

Usage Notes

ETRM records zero inbound references from other packages, indicating that ARP_CUSTOMER_AGING is invoked at the reporting layer rather than called programmatically by other PL/SQL units. In practice it is driven by Receivables aging reports and their concurrent program requests, where the report layer supplies the customer, site use, currency, and as-of date and receives the computed bucket amounts for presentation. The p_as_of_date parameter is the reference point users select on such reports; changing it recalculates every bucket boundary and the outstanding balance. Because the package is not a published API, customizations should avoid direct calls and instead consume its output through the standard aging report concurrent programs or by replicating the logic against the same underlying tables.