Search Results validate_list_src_field




Overview

The APPS.AMS_LIST_SRC_FIELD_PVT package body implements the private application programming interface for managing list source fields within Oracle Advanced Marketing (AMS), the marketing module of Oracle E-Business Suite. A list source field defines an individual column or attribute drawn from an underlying data source that can be exposed to marketing users when building target lists, campaign audiences, and segmentation queries. The package encapsulates the business logic that governs the definition, maintenance, and validation of these fields, shielding the physical schema from direct manipulation by forms, concurrent programs, or custom extensions.

Its classification as a private (PVT) package indicates that the procedures it exposes are intended for internal use by the AMS list management subsystem rather than as a published, externally supported API. Callers are expected to interact with it through the surrounding list source infrastructure — notably AMS_LIST_SRC_FIELDS_PKG, which this package references — or through the Oracle Forms and concurrent programs that drive list source administration. The body depends on several companion packages, including AMS_DM_BINVALUES_PVT, AMS_DM_MODEL_PVT, and AMS_UTILITY_PVT, as well as the standard FND_API, FND_GLOBAL, FND_MESSAGE, and FND_MSG_PUB utilities for error handling and message resolution.

Key Procedures and Functions

The package body documents seven procedures and functions, each supporting a stage in the list source field lifecycle:

  • CREATE_LIST_SRC_FIELD — Creates a new list source field record, establishing the association between a field and its parent list source type.
  • UPDATE_LIST_SRC_FIELD — Modifies the attributes of an existing list source field definition.
  • DELETE_LIST_SRC_FIELD — Removes a list source field definition from the repository.
  • LOCK_LIST_SRC_FIELD — Acquires a row-level lock on the target record, ensuring concurrency safety before an update or delete.
  • VALIDATE_LIST_SRC_FIELD — Performs validation of the field definition, confirming that required values and structural constraints are satisfied.
  • CHECK_LIST_SRC_FIELD_ITEMS — Verifies the dependent items or associations attached to a list source field before a lifecycle operation proceeds.
  • VALIDATE_LIST_SRC_FIELD_REC — Validates the individual record attributes supplied during a create or update, typically invoked by the higher-level validation entry point.

Together these routines follow the standard EBS private-API pattern of lock, validate, and persist, returning status and message information through the FND message stack.

Tables Accessed

The package reads and writes the core marketing list source tables through APPS synonyms:

For metadata introspection, the package reads ALL_TAB_COLUMNS (documented additionally as DBA_TAB_COLUMNS/USER_SYNONYMS) to confirm that a referenced column physically exists in the underlying source table, and uses DUAL for trivial singleton queries. These lookups allow the API to validate field mappings against the actual data dictionary rather than relying solely on stored configuration.

Usage Notes

Because AMS_LIST_SRC_FIELD_PVT is a private package and, per the ETRM metadata, is referenced by three other packages but references no external caller of its own, it is normally invoked indirectly. The most common invocation paths are the Oracle Forms used to administer list sources, where the form block triggers the create, update, and delete routines as the user commits changes, and the higher-level AMS_LIST_SRC_FIELDS_PKG, which orchestrates validation and persistence on behalf of the application.

Custom extensions may call the package directly, but this is not recommended for supported implementations: the interface is private, parameter signatures may change across releases, and the procedures assume the calling context has already populated FND global values and opened a message stack. When invoked from custom code, the PL/SQL API conventions require the caller to set up FND_GLOBAL and handle the returned status, typically through FND_MSG_PUB. The behaviour is consistent across Oracle EBS 12.1.1 and 12.2.2.