Search Results create_agreement




Overview

OKE_AGREEMENT_PVT is a private PL/SQL package in the Oracle E-Business Suite (EBS) 12.1.1 and 12.2.2 releases, owned by the APPS schema and classified as a PVT (private) API within Oracle Project Contracts (OKE). The package provides the internal processing layer responsible for creating and maintaining project agreements and their associated funding records. Agreements in the Projects and Contracts context represent the commercial and financial instruments — customer contracts, funding authorizations, and similar commitments — against which project costs are accumulated and revenue is recognized.

The package is declared with AUTHID CURRENT_USER and exposes a versioned API surface (G_API_VERSION_NUMBER initialized to 1.0), following the standard EBS PL/SQL API conventions including standardized message-list handling, SQLCODE and SQLERRM token substitution, and the OKE_CONTRACTS_UNEXPECTED_ERROR error constant. The presence of G_PA_DESC_FLEX_NAME ('PA_AGREEMENTS_DESC_FLEX') and G_PROJ_FUND_DESC_FLEX_NAME ('PA_PROJECT_FUNDINGS_DESC_FLEX') confirms that the package maintains descriptive flexfield context for both the agreement header and its funding lines.

Key Procedures and Functions

  • CREATE_AGREEMENT — Creates a new project agreement record. It accepts an API version, initialization and commit flags, standard out-message parameters (p_msg_count, p_msg_data), and agreement type and funding-related inputs. The procedure populates the underlying PA agreement structures and, where applicable, associated funding records.
  • UPDATE_AGREEMENT — Applies modifications to an existing agreement, including amounts, currency, organization totals, and descriptive flexfield values, using the agreement_rec_type structure defined within the package.
  • UPDATE_PA_FUNDING — Modifies an existing project funding record tied to an agreement, keeping the funding allocation consistent with the parent agreement's terms.
  • ADD_PA_FUNDING — Adds a new project funding line to an existing agreement, enabling multiple funding sources and allocations to be attached to a single contractual instrument.

The package also declares the agreement_rec_type and agreement_tbl_type records for internal use, and a pa_agreement_tbl_type based on PA_AGREEMENT_PUB.AGREEMENT_REC_IN_TYPE, which indicates that OKE_AGREEMENT_PVT delegates to the Public Projects API for the actual write operations against the PA schema.

Tables Accessed

Usage Notes

Because OKE_AGREEMENT_PVT is classified as a private API, it is not intended for direct invocation by external or custom code; the documented public interface for agreement creation remains OKE_AGREEMENT_PUB, which this package supports. In practice the package is called from Oracle Project Contracts forms and from concurrent programs that process contract terms, funding authorizations, and agreement amendments. The standard EBS API calling sequence applies: callers should pass a supported p_api_version, set p_init_msg_list to reset the message stack, and use p_commit only at the outermost transaction boundary to preserve atomicity across the record and table operations. Error conditions raised by the package surface through the out message parameters and the OKE_CONTRACTS_UNEXPECTED_ERROR token. Customizations should target the public wrapper rather than this private package, as its signature is not guaranteed across patch levels.