Search Results fem_pl_pkg




Overview

APPS.FEM_PL_PKG is the core PL/SQL package body for the Profitability and Cost Management (also known as Enterprise Performance Foundation, or FEM) processing layer in Oracle E-Business Suite. Its principal responsibility is to register, track, and control the execution of Profitability Manager objects — chains, object definitions, tables, and temporary objects — and to manage the concurrent request lifecycle through which those objects execute. The package encapsulates the full execution framework: acquiring and releasing edit and execution locks, registering requests, persisting execution steps and errors, and maintaining status across the FEM_PL_* tables and the underlying FND_CONCURRENT_REQUESTS records.

The package declares standard API constants such as g_pkg_name, the FND_API return statuses (g_ret_sts_success, g_ret_sts_error, g_ret_sts_unexp_error), a response application ID derived from FND_GLOBAL.RESP_APPL_ID, and a six-level FND_LOG logging hierarchy. Private helper procedures include Perform_Standard_API_Steps, Get_Translated_Name, and preview_exec_lock_exists; an E_UNEXP exception supports unexpected error handling.

Key Procedures and Functions

The 36 documented procedures and functions fall into four functional groups:

Tables Accessed

The package references APPS synonyms spanning FEM configuration, runtime, and concurrent manager tables. FEM_OBJECT_CATALOG_B/TL and FEM_OBJECT_DEFINITION_B/TL hold the catalog and definition metadata validated during registration and locking. FEM_OBJECT_DEPENDENCIES and FEM_PL_CHAINS describe dependency and chain sequencing. FEM_PL_OBJECT_DEFS and FEM_PL_TABLES define the executable object layer, with FEM_PL_TAB_UPDATED_COLS tracking column changes and FEM_PL_TEMP_OBJECTS holding transient results. Execution state is recorded in FEM_PL_OBJECT_EXECUTIONS, FEM_PL_OBJ_EXEC_STEPS, and FEM_PL_REQUESTS. FEM_EVENT_ORDER_SEQ supplies event sequencing, and FND_CONCURRENT_REQUESTS is the concurrent request record against which REGISTER_REQUEST and UPDATE_REQUEST_STATUS align the FEM execution context.

Usage Notes

FEM_PL_PKG is an internal engine package rather than an end-user API. It is invoked primarily by the Profitability Manager engine and by concurrent programs that execute chains and object definitions, with each execution spawning or updating an FND concurrent request. Because the package is referenced by 26 other packages, it functions as a shared foundation for the broader FEM_PL processing suite. Custom code should avoid calling its private procedures directly; integrations should instead rely on the standard FEM public APIs or submit the appropriate concurrent program, letting this package manage locking, request registration, and status propagation on the caller's behalf.