Search Results pa_agreement_utils
Overview
PA_AGREEMENT_UTILS is a server-side PL/SQL utility package owned by APPS within the Oracle E-Business Suite Projects (PA) module. Its responsibility is to centralize the validation logic applied to project agreements, funding allocations, customers, agreement terms, and funding references used throughout Oracle Projects. In ETRM terms it is classified as an OTHER API, meaning it is an internal helper package rather than a formally published public interface; it exists to enforce business rules consistently across the various agreement and funding forms and processes.
The package is delivered in both Oracle EBS 12.1.1 and 12.2.2. The header comment references version 120.2 dated 2007, and additional history notes (such as the bug referenced before CHECK_PROJ_AGR_FUND_OK) confirm that it has been maintained incrementally over the life of the product. The functions return VARCHAR2 values, typically a null or empty string on success and a message/error indicator on failure, which allows callers to raise user-defined exceptions with descriptive text.
Key Procedures and Functions
Approximately twenty primary functions are exposed in the package specification (the broader ETRM registry lists forty-nine documented members, including overloads and internal helpers). The documented entries center on agreement and funding validation:
- CHECK_MULTI_CUSTOMERS — Determines whether a project is associated with multiple customers, a condition that affects agreement and billing behavior.
- CHECK_CONTRIBUTION — Validates contribution-related rules for a given agreement.
- CHECK_FUND_ALLOCATED — Confirms that funding has been allocated against an agreement.
- ACCRUED_BILLED_BASELINED — Checks whether accrual, billing, or baselining activity exists that would restrict changes to an agreement, project, or task.
- CHECK_PROJ_TASK_LVL_FUNDING — Verifies funding at the project and task level for a specified agreement.
- CHECK_PROJ_AGR_FUND_OK — Confirms that the funding relationship between a project and an agreement is valid.
- VALIDATE_LEVEL_CHANGE / CHECK_LEVEL_CHANGE — Govern whether the funding or agreement level (project versus task) may be changed for a project/task combination.
- CHECK_VALID_CUSTOMER, CHECK_VALID_TYPE, CHECK_VALID_TERM_ID, CHECK_VALID_OWNED_BY_PERSON_ID — Perform lookup/referential validation of customer, agreement type, term, and owning person values.
- CHECK_UNIQUE_AGREEMENT — Enforces uniqueness of an agreement based on agreement number, type, and customer.
- VALIDATE_AGREEMENT_AMOUNT — Validates that an amount is permissible for the agreement.
- CHECK_REVENUE_LIMIT — Checks the revenue limit condition associated with the agreement, ensuring revenue recognition does not exceed defined limits.
- CHECK_VALID_FUNDING_REF / CHECK_VALID_FUNDING_ID — Validate funding reference and funding identifier values.
The package name also appears in the registry with summary DML helpers (SUMMARY_FUNDING_INSERT_ROW, SUMMARY_FUNDING_UPDATE_ROW, SUMMARY_FUNDING_DELETE_ROW), which maintain the project funding summary records.
Tables Accessed
The ETRM metadata does not enumerate the base tables referenced by this package, though it accesses them through APPS synonyms. Based on the validation scope, the package reads agreement, funding, customer, project, and task entities — principally the project agreements, agreement funding, project funding summary, and customer tables — to evaluate the conditions described above. Summary funding functions perform insert, update, and delete operations against the funding summary structures, while the check functions are predominantly read-only validators.
Usage Notes
PA_AGREEMENT_UTILS is invoked internally by Oracle Projects agreement and funding forms, by concurrent programs that process agreements and funding, and by other PL/SQL packages. ETRM reports that it is referenced by four other packages, confirming its role as a shared validation layer. Because it is classified as OTHER rather than a public API, direct calls from custom code are not supported and carry upgrade risk; customers requiring agreement validation should use the supported public APIs instead. The functions return VARCHAR2 status values, and callers are expected to interpret a non-null return as an error condition requiring an application exception.
-
PACKAGE: APPS.PA_AGREEMENT_UTILS
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_AGREEMENT_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_AGREEMENT_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_AGREEMENT_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_AGREEMENT_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_AGREEMENT_UTILS, status:VALID,
-
PACKAGE: APPS.PA_AGREEMENT_UTILS
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PA_AGREEMENT_UTILS, status:VALID,
-
PACKAGE: APPS.PA_AGREEMENT_CORE
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_AGREEMENT_CORE, status:VALID,
-
PACKAGE: APPS.PA_FUNDING_CORE
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PA_FUNDING_CORE, status:VALID,
-
PACKAGE: APPS.PA_AGREEMENT_CORE
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PA_AGREEMENT_CORE, status:VALID,
-
PACKAGE BODY: APPS.PA_FUNDING_CORE
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FUNDING_CORE, status:VALID,
-
PACKAGE: APPS.PA_FUNDING_CORE
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_FUNDING_CORE, status:VALID,
-
PACKAGE BODY: APPS.PA_FUNDING_CORE
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FUNDING_CORE, status:VALID,
-
PACKAGE BODY: APPS.PA_AGREEMENT_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_AGREEMENT_PVT, status:VALID,
-
PACKAGE BODY: APPS.PA_AGREEMENT_PVT
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_AGREEMENT_PVT, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_CI_IMPLEMENT_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_CI_IMPLEMENT_PKG, status:VALID,
-
PACKAGE BODY: APPS.PA_AGREEMENT_PUB
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_AGREEMENT_PUB, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_CI_IMPLEMENT_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_CI_IMPLEMENT_PKG, status:VALID,
-
PACKAGE BODY: APPS.PA_AGREEMENT_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_AGREEMENT_PUB, status:VALID,
-
PACKAGE: APPS.PA_AGREEMENT_UTILS
12.1.1
-
PACKAGE: APPS.PA_AGREEMENT_UTILS
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
APPS.PA_AGREEMENT_UTILS dependencies on PA_AGREEMENT_UTILS
12.1.1
-
APPS.PA_FUNDING_CORE dependencies on PA_AGREEMENT_UTILS
12.2.2
-
APPS.PA_FP_CI_IMPLEMENT_PKG dependencies on PA_AGREEMENT_UTILS
12.1.1
-
APPS.PA_AGREEMENT_UTILS dependencies on PA_AGREEMENT_UTILS
12.2.2
-
APPS.PA_AGREEMENT_PVT dependencies on PA_AGREEMENT_UTILS
12.2.2
-
APPS.PA_AGREEMENT_PUB dependencies on PA_AGREEMENT_UTILS
12.2.2
-
APPS.PA_FUNDING_CORE dependencies on PA_AGREEMENT_UTILS
12.1.1
-
APPS.PA_AGREEMENT_PUB dependencies on PA_AGREEMENT_UTILS
12.1.1
-
APPS.PA_AGREEMENT_PVT dependencies on PA_AGREEMENT_UTILS
12.1.1
-
APPS.PA_FP_CI_IMPLEMENT_PKG dependencies on PA_AGREEMENT_UTILS
12.2.2
-
PACKAGE BODY: APPS.PA_AGREEMENT_UTILS
12.2.2
-
PACKAGE BODY: APPS.PA_AGREEMENT_UTILS
12.1.1
-
12.2.2 DBA Data
12.2.2
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.1.1 DBA Data
12.1.1
-
PACKAGE: SYS.STANDARD
12.1.1
owner:SYS, object_type:PACKAGE, object_name:STANDARD, status:VALID,