Search Results build_distributions_string




Overview

PN_INDEX_AMOUNT_PKG is a PL/SQL package in the APPS schema that forms part of the Oracle Property Manager (PN) indexation engine in Oracle E-Business Suite 12.1.1 and 12.2.2. Its central business purpose is to compute indexed rent amounts for indexed leases, whereby scheduled rent is escalated according to a designated price index (for example, CPI) over defined periods. The package carries an API classification of OTHER, meaning it is an internal processing package rather than a published open interface, although it is callable from custom code. It is validated and VALID in the ETRM metadata, confirming that its package specification and body compile cleanly against the referenced schema objects.

Within the indexation workflow, the package performs three broad classes of work: deriving the basis amounts and periods against which indexation is measured; calculating the indexed percentage and resulting index amount per lease period; and creating, updating, and approving the payment terms and index history records that result from those calculations.

Key Procedures and Functions

The package exposes 27 documented procedures and functions. The principal calculation routines include CALCULATE, CALCULATE_BATCH, CALCULATE_PERIOD, CALCULATE_INITIAL_BASIS, CALCULATE_BASIS_AMOUNT, CALCULATE_INDEX_AMOUNT, and CALCULATE_INDEX_PERCENTAGE. Together these derive the initial basis, determine the applicable basis amount for a period, compute the index percentage movement, and produce the final indexed amount. DERIVE_TERM_END_DATE and DERIVE_CONSTRAINED_RENT support term derivation and constrained rent logic.

Processing and persistence routines include CREATE_PAYMENT_TERMS, CREATE_PAYMENT_TERM_RECORD, UPDATE_INDEX_HIST_LINE, UPDATE_INDEX_HIST_LINE_BATCH, APPROVE_INDEX_PAY_TERM, and APPROVE_INDEX_PAY_TERM_BATCH, which write and approve the indexation results. LOOKUP_INDEX_HISTORY retrieves prior index history. Supporting utilities include SUM_PAYMENT_ITEMS, PRINT_BASIS_PERIODS, BUILD_DISTRIBUTIONS_STRING, and PROCESS_CURRENCY_CODE, which aggregate payment items, report basis periods, assemble distribution strings, and resolve currency handling. The batch variants allow set-based processing across multiple leases.

Tables Accessed

The package reads and writes the core Property Manager indexation tables through APPS synonyms. Lease and term definition data is drawn from PN_INDEX_LEASES, PN_INDEX_LEASES_ALL, PN_LEASES, PN_LEASES_ALL, PN_LEASE_DETAILS, PN_LEASE_DETAILS_ALL, PN_INDEX_LEASE_TERMS, and PN_INDEX_LEASE_TERMS_ALL. Period and constraint data is handled via PN_INDEX_LEASE_PERIODS, PN_INDEX_LEASE_PERIODS_ALL, and PN_INDEX_LEASE_CONSTRAINTS_ALL. Index movement input is read from PN_INDEX_HISTORY_LINES, while calculations and approvals are written to PN_DISTRIBUTIONS and PN_DISTRIBUTIONS_ALL. Excluded terms are filtered using PN_INDEX_EXCLUDE_TERM_ALL.

Usage Notes

PN_INDEX_AMOUNT_PKG is not an end-user entry point; it is invoked indirectly by Property Manager forms, concurrent programs, and the related packages PN_INDEX_LEASE_COMMON_PKG, PN_INDEX_LEASE_PERIODS_PKG, and PN_INDEX_RENT_PERIODS_PKG, all of which reference it. It also references itself, indicating internal recursion or shared helper calls. Customizations should call the package only after understanding that it relies on consistent lease, term, period, and index history data. Its procedures return no public error signalling beyond standard PL/SQL exception propagation, so callers must handle errors defensively.