Search Results g_pn_miss_date
Overview
PN_LEASE_UTILS is a shared utility package in the Oracle Property Manager (PN) module of Oracle E-Business Suite, owned by the APPS schema. It provides a centralized library of validation, lookup, and identifier-resolution routines consumed by the higher-level Property Manager APIs, most notably PN_LEASE_PUB, PN_LEASE_PVT, and PN_INDEX_RENT_PVT. Rather than exposing a business-level API of its own, PN_LEASE_UTILS encapsulates the low-level plumbing that lease creation, lease change, and rent indexing logic rely upon: fetching surrogate keys for customers, companies, locations, and templates; validating cross-field date logic; and managing descriptive flexfield validation and error messaging. Its dependency footprint confirms this supporting role — the package references only SYS.STANDARD directly, while three other packages (PN_INDEX_RENT_PVT, PN_LEASE_PUB, and PN_LEASE_PVT) reference it. In ETRM 12.1.1 and 12.2.2 the object carries a status of VALID, and the ETRM documentation classifies its API type as OTHER, reflecting that it is an internal helper rather than a published interface. The user search term "pn_lease_pub" surfaces this object because PN_LEASE_PUB depends on PN_LEASE_UTILS for much of its validation and lookup work.
Key Procedures and Functions
The documented metadata lists 27 procedures and functions. They fall into three broad categories.
- Identifier and lookup resolvers: GET_USER_ID, GET_LOCATION_ID, GET_MASTERLEASE_ID, GET_TERM_TEMPLATE_ID, GET_ACCOUNT_ID, GET_COMPANY_ID, GET_COMPANY_SITE_ID, GET_TENANCY_CUST_ID, GET_CUSTOMER_ID, GET_INVOICE_GROUPING_RULE, and GET_LOOKUP_CODE. These return surrogate keys or codes for entities referenced during lease processing, sparing calling packages from embedding their own queries against the underlying tables.
- Validation routines: CHECK_LEASE_NAME enforces lease name uniqueness or formatting rules; CROSSVAL_LEASEDATES and VALIDATE_TENANCY_DATES validate date relationships across lease and tenancy fields; VALIDATE_FIN_OBLIG_END_DATE checks the financial obligation end date; VALIDATE_COMPANY_ID verifies the company reference; and VALIDATE_DESC_FLEX performs descriptive flexfield validation.
- Error and message helpers: ADD_NULL_PARAMETER_MSG and ADD_DESC_FLEX_MSG populate the standard message stack used by the calling Property Manager APIs, and GET_CAL_START_DATE retrieves the calendar start date used in date calculations.
Tables Accessed
Through APPS synonyms the package reads from a defined set of reference and transactional tables. Customer and party data are drawn from HZ_CUST_ACCOUNTS, HZ_CUST_ACCT_SITES_ALL, HZ_CUST_SITE_USES_ALL, HZ_PARTIES, HZ_PARTY_SITES, and HZ_LOCATIONS, supporting the customer and site identifier lookups. Internal Property Manager entities are accessed via PN_LEASES_ALL, PN_LEASE_CHANGES_ALL, PN_LOCATIONS_ALL, PN_COMPANIES_ALL, PN_COMPANY_SITES_ALL, and PN_PAY_GROUP_RULES, which back the lease, location, company, and payment grouping rule resolvers. GL_CODE_COMBINATIONS supplies accounting flexfield context for descriptive flexfield and account validation. FND_USER provides the user identifier, and FND_TERRITORIES_TL supports territory-related lookups. The package functions primarily as a reader of these tables; write activity is limited to raising messages through the message stack.
Usage Notes
PN_LEASE_UTILS is an internal utility and is not intended to be called directly from Oracle Forms, concurrent programs, or customer extensions. It is invoked transparently by the public Property Manager lease APIs — PN_LEASE_PUB and PN_LEASE_PVT — and by PN_INDEX_RENT_PVT during rent indexing. Customers implementing integrations or extensions should call PN_LEASE_PUB rather than PN_LEASE_UTILS directly, since the public API encapsulates the sequencing and error handling that the utility routines assume. Because the package is referenced by multiple callers, any modification carries broad impact across lease processing, and the package should be treated as Oracle-supported internal code subject to change between patch levels.