Search Results validate_lease_rec
Overview
PN_LEASE_PVT is the private (PVT) implementation package for lease management within the Oracle Property Manager (PN) module of Oracle E-Business Suite. In the context of the ETRM (Enterprise Transaction and Reference Model) documentation for releases 12.1.1 and 12.2.2, the package encapsulates the core business logic required to create, validate, update, and maintain lease records and their associated terms in the PN_LEASES_ALL and related tables. The package is declared with AUTHID CURRENT_USER, indicating that it executes under the privileges of the invoking schema, which is typical for private API layers that are called by public wrapper packages rather than by external consumers directly. The header comment references PNLSPVTS.pls version 120.2, dated 2011/09/30, indicating the package has been maintained through multiple release cycles.
A distinctive feature of PN_LEASE_PVT is the lease_rec record type, which maps the full attribute set of a lease and lease detail row into a single PL/SQL structure. Fields include lease_id, lease_change_id, org_id, audit columns (created_by, creation_date, last_update_date, last_updated_by, last_update_login), lease_name, lease_num, parent lease identifiers, lease_type and lease_class with their corresponding codes, abstracted_by_user and abstracted_by_user_id, location_code and location_id, status and lease_status with their code equivalents, and lease_detail_id. Each field is initialized to sentinel default values sourced from pn_lease_utils (g_pn_miss_num, g_pn_miss_char, g_pn_miss_date), reflecting Oracle's standard convention of using missing-value placeholders to distinguish unset attributes during processing.
Key Procedures and Functions
The documented API surface comprises seven procedures and functions:
- VALIDATE_LEASE_REC — Validates the contents of a lease_rec structure prior to persistence, ensuring required attributes and reference values are consistent.
- CREATE_LEASE — Inserts a new lease record into PN_LEASES_ALL using the supplied lease_rec data.
- UPDATE_LEASE — Modifies an existing lease record, including change tracking through PN_LEASE_CHANGES_ALL.
- CREATE_TERMS — Creates lease terms, including payment terms, options, and related term-level detail.
- UPDATE_TERMS — Amends previously created lease terms.
- PVT_DEBUG — Provides debug and diagnostic output used during development and troubleshooting.
- UPDATE_STATUS — Transitions the status or lease_status values on a lease record.
Tables Accessed
PN_LEASE_PVT references a broad set of tables through APPS synonyms. The core lease tables are PN_LEASES_ALL and PN_LEASE_CHANGES_ALL, which store lease master data and change history. Term and clause tables include PN_PAYMENT_TERMS_ALL, PN_PAY_GROUP_RULES, PN_OPTIONS_ALL, PN_RIGHTS_ALL, PN_TENANCIES_ALL, PN_LANDLORD_SERVICES_ALL, PN_INSURANCE_REQUIREMENTS_ALL, PN_LEASE_MILESTONES_ALL, and PN_NOTE_HEADERS/PN_NOTE_DETAILS. Supporting entities include PN_COMPANIES_ALL and PN_COMPANY_SITES_ALL for company reference data, and FND_USER for the abstracted_by_user lookup.
Usage Notes
Because PN_LEASE_PVT is classified as a private API, it is normally invoked indirectly by the public Property Manager interfaces, forms, or concurrent programs rather than called directly from custom code. The package is referenced by one other package in the ETRM metadata, which likely serves as the public wrapper. Developers extending Property Manager functionality should prefer the public API layer to insulate customizations from changes in this private implementation.