Search Results delete_context




Overview

JAI_DF_DROP is an Oracle Application Object Library (APPS) PL/SQL package body shipped as part of the Oracle Financials for India (JAI) product family. Its business purpose is to remove or unwind a context definition associated with a descriptive flexfield (DFF). Descriptive flexfields allow Oracle EBS applications to capture additional, deployment-specific attributes on standard entities without altering the underlying table structure. When a context or context-sensitive segment is no longer required, it must be detached in a controlled manner so that the corresponding column usages, value set associations, and reference metadata remain internally consistent. JAI_DF_DROP provides the programmatic mechanism that performs this cleanup for the Indian localization's flexfield configurations.

The package is classified as an "OTHER" API rather than a public, supported interface, indicating it is intended for internal or administrative use rather than general application development.

Key Procedures and Functions

  • REMOVE_CONTEXT — The single documented procedure in the package. It carries the standard concurrent-program parameter signature (ERRBUF and RETCODE as OUT NOCOPY VARCHAR2), confirming it is designed to run as a concurrent program or be invoked from a host PL/SQL block that reports completion status back to the concurrent manager. Its purpose is to delete a descriptive flexfield context and the associated segment usage definitions. The implementation declares cursors over descriptive flexfield metadata, including a context-specific segment cursor, a value set lookup cursor, and an application ID lookup cursor. Notably, the source excerpt includes a cursor keyed on the descriptive flexfield name 'AP_INVOICES' and a parameter added to address Bug 4924146, indicating that the procedure has specialized handling for the AP_INVOICES flexfield in addition to a generic path. Local variables hold value set names and IDs for the invoice, date, and receipt date attributes before removal logic executes.

Tables Accessed

  • FND_APPLICATION — Resolves an application short name to its numeric APPLICATION_ID, which is then used to scope the flexfield queries to the correct owning application.
  • FND_DESCRIPTIVE_FLEXS — The descriptive flexfield definition table, used to identify the flexfield being modified.
  • FND_DESCR_FLEX_COLUMN_USAGES — The core table for context removal. It stores the mapping between descriptive flexfield contexts, contextsensitive segments, end-user column names, and the underlying application columns. The procedure selects and ultimately deletes or invalidates rows here.
  • FND_FLEX_VALUE_SETS — Supplies the value set name associated with each segment's FLEX_VALUE_SET_ID, allowing the procedure to report or preserve value set information during context removal.

Usage Notes

Because REMOVE_CONTEXT exposes the concurrent-program parameter convention, it is typically invoked either directly from a concurrent program definition registered in Application Developer responsibility or from a custom PL/SQL wrapper that submits it through FND_REQUEST.SUBMIT_REQUEST. It is not referenced by any other documented package, so it is a terminal utility rather than a shared library routine.

The package is specific to Oracle Financials for India and its header revision indicates a 12.0.x lineage that remains valid in the 12.1.1 and 12.2.2 file systems. Administrators should treat it as a maintenance utility: it should be run only when a flexfield context must be retired, and only after backups or validation scripts confirm that no live data depends on the affected segments. Because the procedure manipulates flexfield metadata directly, running it outside a controlled change window risks inconsistent DFF definitions. Users searching for "delete_context" should understand that REMOVE_CONTEXT is the packaged entry point that performs the context deletion operation described above.