Search Results oe_oe_form_contract




Overview

APPS.OE_OE_FORM_CONTRACT is a PL/SQL package body in the Oracle E-Business Suite Order Management (OM) module. It functions as a form-support library that backs the Oracle Pricing and Order Management contract maintenance windows, providing the server-side logic invoked by Oracle Forms when users create, revise, validate, and delete pricing contracts. The package encapsulates the business rules governing pricing contract headers and their associated attributes, coordinating validation against key flexfield definitions and delegating persistence operations to the underlying pricing contract public and private APIs.

As a form contract package, it follows the standard Oracle EBS pattern in which a Forms module binds to a PL/SQL package to centralize validation, defaulting, row locking, and write logic outside the client tier. In Oracle EBS 12.1.1 and 12.2.2, this structure remains consistent; the package is a server-side artifact deployed under the APPS schema and is independent of the file system or Java-tier changes introduced in the 12.2 online patching architecture.

Key Procedures and Functions

The package exposes nine documented procedures and functions:

  • GET_STARTUP_VALUES — Retrieves initialization values required when the contract form session begins, establishing default context for subsequent operations.
  • DEFAULT_ATTRIBUTES — Applies defaulting rules to contract attributes based on configuration and system values.
  • CHANGE_ATTRIBUTE — Handles attribute-level changes triggered by user interaction, applying dependent defaulting or validation logic.
  • VALIDATE_AND_WRITE — Performs the central validation of contract data and commits validated records to the database.
  • DELETE_ROW — Removes a contract row, applying the appropriate deletion semantics for the entity.
  • PROCESS_ENTITY — Executes entity-level processing, orchestrating logic across multiple related records.
  • PROCESS_OBJECT — Executes object-level processing for the contract object being maintained in the form.
  • LOCK_ROW — Acquires the database lock on a contract row prior to modification, enforcing concurrency control.
  • CREATE_REVISION — Creates a new revision of an existing pricing contract, supporting the versioning behavior expected in pricing contract maintenance.

Per the documented metadata, these procedures delegate substantive work to OE_PRICING_CONT_PUB, OE_PRICING_CONT_PVT, OE_CONTRACT_UTIL, and OE_MSG_PUB, rather than reimplementing pricing contract logic.

Tables Accessed

The package references the following tables through APPS synonyms:

  • OE_PRICING_CONTRACTS_S — The primary pricing contract table. Reads and writes here support validation, insertion, update, deletion, and revision creation of contract records.
  • FND_ID_FLEX_STRUCTURES — The Application Object Library key flexfield structure table. It is accessed to resolve flexfield structure definitions used in validating contract-related descriptive or key flexfield data.
  • DUAL — The standard single-row dummy table, used for lightweight value retrieval and function evaluation within PL/SQL logic.

Additional dependencies include OE_GLOBALS, OE_DEBUG_PUB, OE_MSG, and FND_API, which supply global constants, debug instrumentation, message retrieval, and the API error-handling framework respectively.

Usage Notes

OE_OE_FORM_CONTRACT is invoked primarily from the Oracle Forms-based pricing contract maintenance windows in Order Management and Advanced Pricing. When a user opens the contract form, GET_STARTUP_VALUES initializes the session; user edits trigger DEFAULT_ATTRIBUTES and CHANGE_ATTRIBUTE; navigation and modification invoke LOCK_ROW; saves invoke VALIDATE_AND_WRITE; deletions invoke DELETE_ROW; and revision actions invoke CREATE_REVISION. The PROCESS_ENTITY and PROCESS_OBJECT procedures support multi-record and object-level form events.

The package is not referenced by any other database object, confirming its role as a form-facing layer rather than a reusable published API. Customizations should avoid direct calls to this package; the supported integration points are OE_PRICING_CONT_PUB and OE_PRICING_CONT_PVT. Because the package is a Forms-bound artifact, it is impacted by form-level patching but not by the 12.2 editioning or online patching file system changes; it remains a standard PL/SQL package body in both 12.1.1 and 12.2.2.