Search Results ins_or_sel_keyflex_comb
Overview
HR_KFLEX_UTILITY is a public PL/SQL utility package owned by APPS in the Oracle E-Business Suite, classified under the ETRM API taxonomy as OTHER. Its purpose is to centralize the mechanics of working with Oracle Key Flexfields (KFFs) as they relate to Human Resources entities, and to make those mechanics available to any API or business process that must insert or query key flexfield combinations. The package is declared AUTHID CURRENT_USER, meaning that name resolution for unqualified references is performed in the schema of the calling session rather than as APPS.
The package addresses two distinct responsibilities. The first is validation control: it allows a caller to declare a set of key flexfield codes that should be exempt from normal flexfield validation during a batch or session, and to test whether the key flexfield currently being processed falls into that exempt set. The second is key flexfield segment assembly and session context management, including procedures that establish the profile option values and session attributes under which key flexfield lookups and inserts are resolved. The package is heavily reused across the application; ETRM records that it is referenced by 45 other packages, which positions it as foundational infrastructure rather than a user-facing feature.
Key Procedures and Functions
- CREATE_IGNORE_KF_VALIDATION — Populates an internal collection with the key flexfield codes for which ordinary key flexfield validation is to be suppressed during the current processing window.
- CHECK_IGNORE_VARRAY — A Boolean function that compares a supplied flexfield structure code against the collection previously populated by CREATE_IGNORE_KF_VALIDATION, returning whether the current key flexfield is exempt from validation.
- REMOVE_IGNORE_KF_VALIDATION — Clears the internal validation-exemption collection so that standard key flexfield validation resumes.
- INS_OR_SEL_KEYFLEX_UTILITY-related procedure INS_OR_SEL_KEYFLEX_COMB — Accepts populated key flexfield segment values either individually per segment (p_segment1 through p_segment30) or as a single concatenated string ordered by segment display order, then inserts or selects the corresponding key flexfield combination for a given entity. The documented prerequisite is a valid id_flex_code and structure information.
- UPD_OR_SEL_KEYFLEX_COMB — The update counterpart to the insert-or-select procedure; it updates an existing key flexfield combination or selects it when it already exists.
- SET_PROFILES — This is the procedure most commonly associated with the search term "set_profiles." It establishes the profile option values required for correct key flexfield behavior within the calling session, ensuring that flexfield definitions, segment ordering, and related configuration are resolved consistently during subsequent key flexfield operations.
- SET_SESSION_DATE — Sets the effective session date used when key flexfield combination validation is date-sensitive.
- UNSET_SESSION_DATE — Restores the session date behavior, removing the value established by SET_SESSION_DATE.
- SET_SESSION_LANGUAGE_CODE — Sets the language context for the session so that flexfield segment prompts, values, and translation-dependent lookups resolve in the intended language.
- SET_SESSION_NLS_LANGUAGE — Sets the NLS language attribute for the session, complementing SET_SESSION_LANGUAGE_CODE for territory- and language-dependent behavior.
Tables Accessed
- FND_APPLICATION — Supplies application context information associated with the flexfield definition.
- FND_ID_FLEX_SEGMENTS — The key metadata source for flexfield structures and segments; used to resolve segment definitions, ordering, and validation attributes.
- FND_LANGUAGES — Consulted to validate and resolve language codes used by the session language procedures.
- PER_ALL_ASSIGNMENTS_F — The HR assignment entity against which key flexfields such as the People Group or Job flexfields are associated.
- FND_COLUMNS — Provides column definitions used to map segment values to the corresponding key flexfield combination table structures.
- FND_SESSIONS — Records and manages session-level attributes set by the profile and session context procedures.
- DBMS_SESSION — The Oracle-supplied package used to set session-level NLS and context values.
- PLITBLM — The standard Oracle Forms PL/SQL table management package, referencing the internal PL/SQL tables used to hold segment values and the ignore-validation collection.
Usage Notes
HR_KFLEX_UTILITY is not invoked directly by end users. It is called from Oracle Forms, from concurrent programs, and from custom PL/SQL packages that must create or maintain key flexfield combinations for HR entities. The typical sequence is to call SET_PROFILES and the session context procedures to establish a reliable environment, optionally call CREATE_IGNORE_KF_VALIDATION to suppress validation for selected flexfield codes, invoke INS_OR_SEL_KEYFLEX_COMB or UPD_OR_SEL_KEYFLEX_COMB with either individual segment parameters or a concatenated segment string, and finally call REMOVE_IGNORE_KF_VALIDATION and UNSET_SESSION_DATE to restore default behavior. Because the package depends on session state, callers should avoid long-running sessions that span multiple logical transactions without resetting context. Given that 45 other packages depend on it in release 12.1.1 and 12.2.2, customizations should call the documented public procedures rather than replicating flexfield combination logic, and should never modify the package body.
-
PACKAGE: APPS.HR_KFLEX_UTILITY
12.1.1
-
PACKAGE: APPS.HR_KFLEX_UTILITY
12.2.2
-
PACKAGE BODY: APPS.HR_KFLEX_UTILITY
12.1.1
-
PACKAGE BODY: APPS.HR_KFLEX_UTILITY
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on FND_APPLICATION
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on FND_APPLICATION
12.1.1
-
PACKAGE BODY: APPS.PAY_EXA_SHD
12.1.1
-
PACKAGE BODY: APPS.PAY_EXA_SHD
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on FND_APPLICATION
12.1.1
-
APPS.HR_KFLEX_UTILITY dependencies on FND_ID_FLEX_SEGMENTS
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on FND_APPLICATION
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on FND_ID_FLEX_SEGMENTS
12.1.1
-
APPS.HR_KFLEX_UTILITY dependencies on FND_FLEX_EXT
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on FND_FLEX_EXT
12.1.1
-
APPS.HR_KFLEX_UTILITY dependencies on FND_ID_FLEX_SEGMENTS
12.1.1
-
APPS.HR_KFLEX_UTILITY dependencies on FND_ID_FLEX_SEGMENTS
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on HR_UTILITY
12.2.2
-
APPS.HR_KFLEX_UTILITY dependencies on HR_UTILITY
12.1.1
-
APPS.PAY_EXA_SHD dependencies on HR_UTILITY
12.1.1
-
APPS.PAY_EXA_SHD dependencies on HR_UTILITY
12.2.2