Search Results check_prora_cum_comb




Overview

PN_VAREN_UTIL (source file PNVARUTS.pls, version 120.1) is a utility package in the Oracle Property Manager (PN) module of Oracle E-Business Suite, owned by APPS and classified as a UTIL API. Its purpose is to centralize the validation logic that supports variable rent processing, lease and tenancy setup, and related reference-data lookups. Rather than embedding validation rules in every form or concurrent program, Property Manager routes these checks through PN_VAREN_UTIL so that the same business rules apply consistently across the application.

The package performs two principal kinds of work. First, it validates user-supplied identifiers and codes—lease names/numbers, rent numbers, location codes, lookup values, currencies, users, periods, and term templates—converting a recognizable name or code into its internal surrogate key and setting a return status. Second, it supplies procedural helpers that support proration logic, rent detail calculations, flexfield validation, and debugging. Because the package is declared AUTHID CURRENT_USER, it executes with the privileges of the calling user, and it exposes module-level constants for missing numeric, date, and character values (g_pn_miss_num, g_pn_miss_date, g_pn_miss_char) plus a debug flag driven by the PN_DEBUG_MODE profile option.

Key Procedures and Functions

The documented procedures address validation across the Property Manager data model:

  • validate_lease — resolves a lease from its name/number, returning the lease identifier, proration days, location identifier, and lease commencement/termination dates.
  • validate_rent_num — validates a variable rent number against a lease and returns the corresponding variable rent identifier.
  • validate_location — validates a location for a given lease, returning the location identifier and code.
  • validate_lookups — checks a lookup type and returns the lookup meaning and code.
  • validate_term_template — the object of the user's search; validates a term template within an organization, returning the term template identifier and name. It is the entry point used to confirm that a requested term template exists and belongs to the correct operating unit before it is applied to a lease.
  • validate_abst_user — validates a user name and returns the FND user identifier.
  • validate_currency — verifies that a currency code is valid.
  • validate_periods — validates period lookup values, returning meaning and code.
  • validate_calendar_date — confirms a date is valid within the applicable calendar.
  • check_prora_cum_comb, check_prora_invon_comb, check_calc_rept_freq_comb, check_calc_inv_freq_comb — combination checks for proration and calculation frequency rules.
  • validate_agreement_temp, validate_flex_fields, validate_period_set_type — validation of agreement templates, descriptive flexfields, and period set types.
  • pvt_debug, breakpoint_ext — internal debugging and breakpoint helpers.
  • var_rent_details, val_rent_details — support routines for variable rent detail processing.

Each validation procedure follows a uniform contract: inputs, IN OUT parameters that may be resolved in place, and an x_return_status output indicating success or failure.

Tables Accessed

PN_VAREN_UTIL reads and writes the core Property Manager tables through APPS synonyms:

Usage Notes

PN_VAREN_UTIL is an internal utility rather than a public business API. It is invoked primarily from Property Manager forms (lease, tenancy, and variable rent maintenance) during field-level validation, and from concurrent programs and related packages—the metadata records that it is referenced by two other packages. Custom extensions that need to validate a term template, lease, rent number, or location should call the corresponding procedure and inspect x_return_status before proceeding. Because the package relies on APPS synonyms and AUTHID CURRENT_USER, callers must execute it within the APPS environment or an equivalent synonym context. Developers should treat these procedures as subject to change between releases and avoid depending on undocumented parameters.