Search Results init_comp_object_list_globals
Overview
BEN_COMP_OBJECT_LIST is an Oracle Applications (APPS) PL/SQL package within the Oracle Advanced Benefits (BEN) product family. Its principal business function is to assemble and maintain the list of compensation objects for which eligibility and enrollment processing occurs. In the Oracle EBS benefits model, a compensation object (often abbreviated COOBJ) represents the entity against which eligibility is evaluated — a program, plan type, plan, option, or activity — rather than the person or assignment being processed. The package therefore acts as a central registry that other benefits engine components consult when they must iterate eligibility profiles against programs, plans, and options.
A defining characteristic of this package is its internal caching mechanism. The package maintains a cache structure (exposed through the BEN_COMP_OBJ_CACHE family of tables) that materializes the enumerated compensation object list, allowing repeated eligibility and life-event processing to avoid redundant reconstruction of the same set. Metadata classifies this package as an OTHER API type rather than a formally published public API, confirming that it is an internal utility used primarily by the BEN engine rather than an interface intended for direct customer invocation.
Key Procedures and Functions
- INIT_COMP_OBJECT_LIST_GLOBALS — Initializes the package-level global variables and session state that govern compensation object list construction. It is expected to be invoked before other procedures in the package to establish a clean working context.
- FLUSH_MULTI_SESSION_CACHE — Clears cached compensation object data across sessions, ensuring that stale eligibility-related enumerations do not persist when underlying configuration or data has changed.
- BUILD_COMP_OBJECT_LIST — The core construction routine. It assembles the compensation object list for the applicable processing context, reading benefit configuration tables and populating the cache that downstream eligibility evaluation relies upon.
- BUILD_GSP_RATE_SYNC_COOBJ_LIST — Builds a compensation object list specifically synchronized for GSP (generally a rate/premium synchronization context), reflecting that different processing flows require differently scoped object lists.
Tables Accessed
The package references a broad set of benefits configuration tables through APPS synonyms. Plan and program definitions are read from BEN_PGM_F, BEN_PL_F, BEN_PLIP_F, BEN_OPT_F, BEN_OIPL_F, and BEN_OIPLIP_F, providing the program, plan, option, and option-in-plan hierarchy that defines candidate compensation objects. Eligibility profile definitions are read from BEN_ELIGY_PRFL_F and BEN_LER_F, since the compensation object list exists to serve eligibility evaluation. Enrollment period context is derived from BEN_ENRT_PERD. Activity and variable rate data are read from BEN_ACTY_BASE_RT_F, BEN_ACTY_VRBL_RT_F, and BEN_ACTY_VRBL_RT_F. The computed results are persisted in the cache tables BEN_COMP_OBJ_CACHE, BEN_COMP_OBJ_CACHE_ROW, BEN_COMP_OBJ_CACHE_ROW_S, and BEN_COMP_OBJ_CACHE_S, which hold the assembled list and its session-scoped variants.
Usage Notes
BEN_COMP_OBJECT_LIST is invoked indirectly by higher-level benefits packages rather than directly by end users. The ETRM dependency listing shows it is referenced by BEN_EFC_ADJUSTMENTS, BEN_ICM_LIFE_EVENTS, BEN_MANAGE_LIFE_EVENTS, and BEN_ON_LINE_LF_EVT, all of which are life-event and adjustment processing components. This places the package squarely in the benefits life-event and eligibility evaluation path: when a life event is processed or an enrollment opportunity is evaluated, the compensation object list is built (or refreshed from cache) before eligibility rules are applied. Because the package is classified as OTHER and maintains internal cache tables, custom code should not invoke it directly; integrators and form developers should call the documented public benefits APIs, allowing this package to be exercised through its normal internal callers and ensuring the multi-session cache is flushed appropriately.