Search Results validate_flexfield
Overview
PA_EVENT_PVT is a private (PVT) PL/SQL package in the Oracle EBS Projects (PA) module that encapsulates the validation, derivation, and lookup logic supporting the public event APIs. It is declared AUTHID DEFINER, meaning it executes with the privileges of its owner (APPS) rather than the calling user, which is standard for private helper packages invoked from public API wrappers. The package operates on project billing events, which are the revenue and invoice-generating transactions associated with a project, task, or agreement. Its central responsibility is to determine whether a create, update, or delete operation on an event is permissible given project setup, currency configuration, rate dates, and event type classification, and to resolve surrogate identifiers such as event IDs and agreement IDs. Because it is classified as PVT, it is not intended to be called directly by external consumers; it is the internal engine behind PA_EVENT_PUB and related public interfaces.
Key Procedures and Functions
- CHECK_CREATE_EVENT_OK — Evaluates whether a new event may be created for a given product code, project, and currency context. It returns a status string and additionally returns the resolved task, organization, inventory organization, agreement ID, and event type classification.
- CHECK_UPDATE_EVENT_OK — Performs the equivalent validation for modifications to an existing event, applying currency, rate type, rate date, and multi-currency billing checks before permitting the update.
- CHECK_DELETE_EVENT_OK — Determines whether an existing event is eligible for deletion, guarding against removal of events in states that would corrupt billing or revenue records.
- VALIDATE_FLEXFIELD — Validates the descriptive flexfield segments associated with the event record before persistence.
- CHECK_MDTY_PARAMS1 and CHECK_MDTY_PARAMS2 — Validate mandatory parameters supplied to the event API, split across two routines to cover distinct parameter groups.
- CHECK_EVENT_REF_UNQ — Verifies uniqueness of the event reference (the user-facing event number) within the applicable scope.
- CONV_EVENT_REF_TO_ID — Converts a user-entered event reference into its internal event identifier.
- FETCH_EVENT_ID — Retrieves the event ID for a given event, typically used after creation or during lookup processing.
- CHECK_YES_NO — Normalizes and validates a Y/N (Yes/No) flag value. This is a common utility pattern in PA private packages, used to ensure that a caller-supplied indicator is a legitimate Yes or No value before it drives conditional logic elsewhere in the API.
Tables Accessed
- PA_EVENTS — The primary event entity table; read to validate event existence, reference uniqueness, and deletable status, and referenced when resolving event IDs.
- PA_EVENT_TYPES — Provides event type definitions and classifications used to determine the event type classification returned by CHECK_CREATE_EVENT_OK.
- PA_PROJECTS_ALL — Supplies project-level attributes such as currency, billing rate configuration, and organization context required by the validation routines.
All three tables are reached through APPS synonyms, consistent with the package's APPS ownership and definer's-rights execution model.
Usage Notes
PA_EVENT_PVT is not invoked directly by end users or external integrations. It is called by public API layers—principally PA_EVENT_PUB—and by two other packages documented in the ETRM repository. Typical invocation occurs when Oracle Projects forms or concurrent programs create, adjust, or delete billing events, and when custom extensions or interfaces call the public event API with the expectation that these validation rules will be enforced internally. Because CHECK_YES_NO and the mandatory-parameter checks are private validation utilities, developers extending event processing should rely on the public API surface rather than calling PA_EVENT_PVT procedures directly. Deployments on 12.1.1 and 12.2.2 use the same package body lineage referenced in the header (version 120.5), so behavior is consistent across both releases.
-
PACKAGE: APPS.PA_EVENT_PVT
12.2.2
-
PACKAGE: APPS.PA_EVENT_PVT
12.1.1
-
APPS.PA_EVENT_PVT dependencies on PA_EVENT_PUB
12.2.2
-
PACKAGE BODY: APPS.PA_EVENT_PVT
12.1.1
-
APPS.PA_EVENT_PVT dependencies on PA_EVENT_PUB
12.1.1
-
PACKAGE BODY: APPS.PA_EVENT_PVT
12.2.2
-
APPS.FND_FLEX_KEY_API dependencies on FND_FLEX_TYPES
12.2.2
-
APPS.FND_FLEX_KEY_API dependencies on FND_FLEX_TYPES
12.1.1
-
APPS.FND_FLEX_KEY_API dependencies on FND_ID_FLEXS
12.1.1
-
PACKAGE BODY: APPS.FND_FLEX_KEY_API
12.1.1
-
APPS.FND_FLEX_KEY_API dependencies on FND_ID_FLEXS
12.2.2
-
PACKAGE BODY: APPS.FND_FLEX_KEY_API
12.2.2
-
APPS.PA_EVENT_PVT dependencies on PA_EVENT_UTILS
12.1.1
-
APPS.PA_EVENT_PVT dependencies on PA_EVENT_UTILS
12.2.2