Search Results kff_select
Overview
APPS.FND_FLEX_XML_PUBLISHER_APIS is a public PL/SQL package in Oracle E-Business Suite that bridges Oracle Flexfields and Oracle XML Publisher. Its principal business function is to allow XML Publisher report definitions, concurrent programs, and Forms-based inquiry windows to resolve Key Flexfield (KFF) combinations into their constituent segments, descriptions, and security-validated values, and to construct dynamic WHERE, SELECT, and ORDER BY clauses over the flexfield views. In effect, the package provides a server-side, runtime equivalent of the Flexfield combination picker, without requiring the calling application to hard-code knowledge of segment structure, value sets, or validation rules.
The package is declared AUTHID CURRENT_USER, so all unqualified object references resolve against the schema of the caller, which is normally APPS. The source header (AFFFXPAS.pls 120.0.12000000.1) indicates a stable, long-lived interface shipped with the flexfields technology stack rather than an application-specific API. It is classified in ETRM as API classification OTHER, reflecting that it is an internal infrastructure package exposed for reuse rather than a business-flow API.
Key Procedures and Functions
The documented interface contains ten callable units. Two are diagnostic: SET_DEBUG_MODE and GET_DEBUG toggle and report the package-level debug flag, using the debug_mode_on and debug_mode_off constants.
- KFF_FLEXFIELD_METADATA, KFF_STRUCTURE_METADATA, KFF_SEGMENT_METADATA, and KFF_SEGMENTS_METADATA return descriptive metadata about a key flexfield, its structure, and its segments, including the prompt placement controlled by the metadata_segments_above_prompt and metadata_segments_left_prompt constants.
- KFF_SELECT builds the select list for a flexfield query, driven by the output type constants output_type_value, output_type_padded_value, output_type_description, output_type_full_description, and output_type_security.
- KFF_WHERE constructs a predicate over the flexfield view using the operator constants (operator_equal, operator_between, operator_like, operator_qbe, operator_concatenate, and the relational operators) together with the bind_variable record type and bind_variables associative array, whose data type is declared through bind_data_type_varchar2, bind_data_type_number, and bind_data_type_date.
- KFF_ORDER_BY generates the ordering clause for the flexfield segments.
- PROCESS_KFF_COMBINATION_1 is the highest-level entry point. It accepts a flexfield combination and performs the end-to-end processing normally associated with combination validation and display, coordinating the metadata, select, and where logic described above.
Tables Accessed
The package reads flexfield definition and value metadata through APPS synonyms. FND_ID_FLEXS, FND_ID_FLEX_STRUCTURES, and FND_ID_FLEX_SEGMENTS provide the flexfield, structure, and segment definitions, with FND_ID_FLEX_SEGMENTS_TL supplying the translated segment prompts used for metadata generation. FND_FLEX_VALUE_SETS, FND_SEGMENT_ATTRIBUTE_TYPES, and FND_SEGMENT_ATTRIBUTE_VALUES supply value set definitions and segment attribute behavior that determine validation and display characteristics. FND_APPLICATION and FND_COLUMNS and FND_TABLES are consulted to resolve the owning application and the underlying table/column mapping for each segment, which is essential when the generated SQL must reference the correct flexfield view columns. PLITBLM is the PL/SQL integer table type underlying associative array handling. The package is referenced by 26 other packages, confirming its role as a shared metadata and SQL-generation layer.
Usage Notes
FND_FLEX_XML_PUBLISHER_APIS is typically invoked from XML Publisher data templates and concurrent program PL/SQL that must present or filter key flexfield combinations, from Forms-based flexfield inquiry and combination windows, and from custom code that needs to generate flexfield-aware SQL at runtime. Callers generally set debug mode during development, retrieve metadata to shape the report layout, invoke KFF_SELECT, KFF_WHERE, and KFF_ORDER_BY to assemble a query, and use PROCESS_KFF_COMBINATION_1 for higher-level combination processing. Because the package is AUTHID CURRENT_USER, callers should be granted access to the underlying flexfield tables and should qualify calls as APPS.FND_FLEX_XML_PUBLISHER_APIS.
-
APPS.FND_FLEX_XML_PUBLISHER_APIS SQL Statements
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS SQL Statements
12.1.1
-
PACKAGE: APPS.FND_FLEX_XML_PUBLISHER_APIS
12.1.1
-
PACKAGE: APPS.FND_FLEX_XML_PUBLISHER_APIS
12.2.2
-
PACKAGE BODY: APPS.FND_FLEX_XML_PUBLISHER_APIS
12.2.2
-
PACKAGE BODY: APPS.FND_FLEX_XML_PUBLISHER_APIS
12.1.1
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_APPLICATION
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_APPLICATION
12.1.1
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEXS
12.1.1
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEXS
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEX_STRUCTURES
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEX_STRUCTURES
12.1.1
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_APPLICATION
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_APPLICATION
12.1.1
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEX_STRUCTURES
12.1.1
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEX_STRUCTURES
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEXS
12.2.2
-
APPS.FND_FLEX_XML_PUBLISHER_APIS dependencies on FND_ID_FLEXS
12.1.1