Search Results g_meaning




Overview

APPS.HR_BIS is a shared Oracle E-Business Suite package body that provides centralized lookup-decoding and security-group resolution services for the Human Resources product family. Its primary business function is to translate stored lookup codes into their user-facing meanings while respecting the language and security-group context of the current session. Because Oracle EBS stores many descriptive attributes as coded values in FND_LOOKUP_VALUES rather than as free text, applications must decode those codes before displaying them. HR_BIS encapsulates that logic so that callers do not need to hard-code language predicates, view application identifiers, or security-group filters. The package is classified under the ETRM as an "OTHER" API rather than a formal public interface, but its widespread reuse — it is referenced by 633 other packages — makes it a foundational utility within the APPS schema. The header comment indicates a long-lived code line dating back to early 11i releases with a bug fix reference from 2005, and the object remains present in both 12.1.1 and 12.2.2.

Key Procedures and Functions

The documented interface comprises four routines:

  • BIS_DECODE_LOOKUP — Returns the meaning for a lookup code of a specified lookup type. This is the package's central decoding routine. Internally it queries FND_LOOKUP_VALUES filtered by lookup type, lookup code, the session language obtained via USERENV('LANG'), view application identifier 3, and either the security group resolved through FND_GLOBAL.LOOKUP_SECURITY_GROUP or the seeded security group 0, depending on which cursor is selected.
  • DECODE_LANG_LOOKUP — Provides a language-aware variant of lookup decoding, extending the same translation concept so that callers receive meanings appropriate to the current linguistic environment.
  • GET_SEC_PROFILE_BG_ID — Resolves the business group identifier associated with a security profile, supplying the organizational context needed when HR data is partitioned by business group.
  • GET_LEGISLATION_CODE — Returns the legislation code applicable to the current context, allowing downstream logic to apply country-specific rules.

The body also declares a package-level cache table type for lookup value pairs and a global hash number holder, indicating that decoded lookups are memoized during a session to reduce repeated queries against FND_LOOKUP_VALUES.

Tables Accessed

  • FND_LOOKUP_VALUES — The principal source table. HR_BIS reads lookup_type, lookup_code, meaning, language, view_application_id, and security_group_id to perform decoding. All lookups are restricted to view_application_id 3.
  • PER_SECURITY_PROFILES — Accessed to derive the business group identifier associated with a security profile, supporting the GET_SEC_PROFILE_BG_ID routine.
  • HR_ORGANIZATION_INFORMATION — Read to obtain organization-level attributes, including legislation-related information used by GET_LEGISLATION_CODE.
  • DBMS_UTILITY — Invoked for hashing support related to the package's internal lookup cache.

Usage Notes

HR_BIS is typically invoked from PL/SQL rather than directly from a form. Oracle Forms-based HR windows, concurrent programs, and custom extensions call BIS_DECODE_LOOKUP whenever a coded value must be rendered as a meaning. Because the function depends on USERENV('LANG') and FND_GLOBAL session state, it must be called after FND_GLOBAL.APPS_INITIALIZE or an equivalent session initialization; otherwise language and security-group resolution will be incorrect. The package's internal cache is keyed by binary integer and persists for the duration of the session, so callers benefit from repeated decoding but should be aware that changes to lookup values will not be reflected until the session is re-established. When writing custom code, developers should prefer this package over direct queries against FND_LOOKUP_VALUES to preserve security-group and language semantics. Its broad dependency footprint — 633 referencing packages — also means that any modification or invalidation of HR_BIS can trigger extensive recompilation across the APPS schema.