Search Results financial_elem_id




Overview

The APPS.FEM_FIN_ELEMS_PKG package body implements the canonical table-handling API for the Enterprise Territory Management (formerly Enterprise Planning and Budgeting) financial element definitions stored in the FEM_FIN_ELEMS_B and FEM_FIN_ELEMS_TL tables. A financial element represents a segment-level accounting attribute, such as an account, cost center, or product dimension, that is associated with a specific value set for use within the territory and financial modeling components of EBS. The package encapsulates all Data Manipulation Language (DML) activity against these tables, ensuring that insert, update, delete, and translation operations respect the underlying constraints, multi-language architecture, and object versioning rules defined by the application.

The financial_elem_id column, which is the user's search term, is the primary key identifier for each financial element. It is always paired with VALUE_SET_ID, forming the unique logical key referenced throughout the package. The header comment identifies the source file as fem_finelem_pkb.plb 120.1, dated 2005/06/27, indicating that this package has remained stable across the 12.1.1 and 12.2.2 releases.

Key Procedures and Functions

The package exposes six documented procedures:

  • INSERT_ROW — Creates a new financial element definition. It inserts the base-row attributes into FEM_FIN_ELEMS_B and then inserts the translated name and description into FEM_FIN_ELEMS_TL for every installed language returned by FND_LANGUAGES, using the session language as the source language. This dual-table insert pattern is characteristic of EBS MLS (Multi-Language Support) compliant APIs.
  • LOCK_ROW — Acquires a row-level lock on an existing financial element, typically invoked before an update to prevent concurrent modification. This supports the optimistic locking model used by the hosting OAF or Forms UI.
  • UPDATE_ROW — Modifies an existing financial element, including its display code, enabled flag, read-only flag, personal flag, and translation content. It also increments the OBJECT_VERSION_NUMBER to maintain concurrency control.
  • DELETE_ROW — Removes a financial element and its associated translation rows, respecting referential integrity with dependent territory and value set objects.
  • ADD_LANGUAGE — Populates translation rows in FEM_FIN_ELEMS_TL for a newly installed language, ensuring that every existing financial element has a corresponding name and description entry in that language. This procedure is typically run when a new language is added to the instance.
  • TRANSLATE_ROW — Updates the translatable name and description attributes for a specific financial element and language, without altering the base row.

Tables Accessed

The package operates against three documented tables, accessed through APPS synonyms:

  • FEM_FIN_ELEMS_B — The base table holding non-translatable attributes such as VALUE_SET_ID, ENABLED_FLAG, READ_ONLY_FLAG, PERSONAL_FLAG, OBJECT_VERSION_NUMBER, and the audit columns. The FINANCIAL_ELEM_ID column is created and referenced here.
  • FEM_FIN_ELEMS_TL — The translation table holding FINANCIAL_ELEM_NAME and DESCRIPTION keyed by FINANCIAL_ELEM_ID, VALUE_SET_ID, LANGUAGE, and SOURCE_LANG.
  • FND_LANGUAGES — The Oracle Application Object Library table of installed languages, queried to seed translation rows for all languages whose INSTALLED_FLAG is 'I' or 'B'. The package uses userenv('LANG') to identify the session language as SOURCE_LANG.

Usage Notes

FEM_FIN_ELEMS_PKG is classified as an OTHER API within ETRM. It is referenced by four other packages, indicating that it serves as a lower-level entity handler invoked by higher-level territory and financial modeling APIs. Typical invocation contexts include the OAF-based Enterprise Territory Management setup pages, concurrent programs that seed or migrate financial element definitions, and custom extensions that programmatically manage financial elements.

Because the package performs inserts against both the base and translation tables, callers must supply fully populated audit columns (CREATION_DATE, CREATED_BY, LAST_UPDATE_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN) and a valid OBJECT_VERSION_NUMBER. Direct DML against FEM_FIN_ELEMS_B or FEM_FIN_ELEMS_TL should be avoided; all access should flow through this package to preserve multi-language consistency and object versioning integrity.