Search Results validate_dff




Overview

WSH_FLEXFIELD_UTILS is an Oracle E-Business Suite PL/SQL utility package owned by the APPS schema that provides a centralized mechanism for managing descriptive flexfields (DFFs) associated with Oracle Shipping Execution entities. The package abstracts the complexity of interacting with the FND descriptive flexfield infrastructure by caching segment definitions, resolving default context and segment values, and reading and writing flexfield attribute data against the underlying Shipping tables. Its primary scope, as documented in the source header, centers on the WSH_NEW_DELIVERIES flexfield, with the original design intent to extend coverage to WSH_TRIPS and WSH_TRIP_STOPS. The package is classified as OTHER in the ETRM repository, indicating it is a supporting utility rather than a published public API, and it is referenced by six other packages within the Shipping module.

Key Procedures and Functions

  • CACHE_DFF_SEGMENTS — Retrieves and caches the segments belonging to a given flexfield so that subsequent flexfield operations within the same session avoid repeated metadata queries. Documented behavior restricts input to wsh_new_deliveries at the time of writing.
  • GET_DFF_DEFAULTS — Retrieves the default context and default segment values configured for the specified flexfield, allowing callers to pre-populate flexfield structures before user or process entry.
  • WRITE_DFF_ATTRIBUTES — Persists flexfield attribute values to the underlying descriptive flexfield columns for the target Shipping entity.
  • READ_TABLE_ATTRIBUTES — Reads attribute values from the base table columns, supporting retrieval of stored flexfield data for display or downstream processing.
  • VALIDATE_DFF — Performs validation of descriptive flexfield values, applying the flexfield's defined validation rules and required-segment constraints. This is the routine most commonly associated with the search term "validate_dff," and it is the entry point custom code should use to verify that a DFF combination is valid before committing data.
  • GET_FLEXFIELD — Returns flexfield definition metadata, populated through the dflex_dr record type defined in the package specification, which carries title, table name, delimiter, default context field and value, protected flag, context column name, and context required flag.

Tables Accessed

  • FND_APPLICATION — Used to resolve the application short name associated with the flexfield definition.
  • WSH_NEW_DELIVERIES — The primary Shipping entity whose descriptive flexfield is cached, defaulted, validated, and read or written by this package.
  • WSH_DELIVERY_DETAILS — Accessed in support of delivery-level flexfield attribute processing.
  • WSH_TRIPS — Referenced as part of the documented extension path for trip-level flexfields.
  • PLITBLM — The PL/SQL integer table used for bulk processing and array handling within the utility routines.

Access to FND_APPLICATION and the WSH tables is achieved through APPS synonyms, consistent with standard EBS schema conventions.

Usage Notes

WSH_FLEXFIELD_UTILS is not intended for direct end-user invocation. It is typically called by Shipping module forms, concurrent programs, and other PL/SQL packages that need to display, validate, or persist descriptive flexfield data for deliveries and related entities. Developers writing custom extensions in Oracle EBS 12.1.1 or 12.2.2 that manipulate delivery flexfields should invoke VALIDATE_DFF prior to committing attribute values, and should call CACHE_DFF_SEGMENTS early in the session to reduce redundant metadata access. Because the documented input scope is limited to wsh_new_deliveries, callers targeting WSH_TRIPS or WSH_TRIP_STOPS should verify behavior against the installed patch level, as the extension noted in the package header may not be present in every release.