Search Results fem_budgets_tl




Overview

APPS.FEM_BUDGETS_PKG is the database package body responsible for maintaining budget definition records within the Oracle Enterprise Tax, Regulatory, and Miscellaneous (ETRM) application family in Oracle E-Business Suite 12.1.1 and 12.2.2. The package implements the canonical multi-language (MLS) data-manipulation pattern used throughout EBS for entities that store descriptive attributes in a translation table. In this case, budget header information is held in FEM_BUDGETS_B, while language-dependent text such as the budget name and description is held in FEM_BUDGETS_TL.

Functionally, the package provides the low-level insert, update, delete, lock, and translation maintenance operations that back the budget definition user interface and any programmatic consumers of budget metadata. It is classified as an OTHER API in the ETRM metadata, meaning it is not a fully published open interface but is nonetheless referenced by other packages in the application, making it part of the internal programmatic surface of the product.

Key Procedures and Functions

The package exposes six documented procedures:

  • INSERT_ROW — Inserts a new budget definition. It writes the base-row attributes into FEM_BUDGETS_B and then populates FEM_BUDGETS_TL with the translatable name and description for every installed language, deriving the language list from FND_LANGUAGES and setting SOURCE_LANG from the session language via USERENV('LANG'). It also returns the ROWID of the newly created base row through an OUT parameter.
  • LOCK_ROW — Obtains a row-level lock and performs an optimistic concurrency check on a budget record, ensuring that the caller's version of the data has not been modified by another session before updates are applied.
  • UPDATE_ROW — Updates the base and translated attributes of an existing budget record, typically used after LOCK_ROW succeeds.
  • DELETE_ROW — Removes a budget definition, including its translation rows.
  • ADD_LANGUAGE — Inserts missing FEM_BUDGETS_TL rows for a newly installed or newly enabled language so that existing budgets become translatable in that language.
  • TRANSLATE_ROW — Updates the translatable name and description for a specific budget and language, supporting the standard EBS translation maintenance workflow.

Tables Accessed

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

  • FEM_BUDGETS_B — the base table holding language-independent budget attributes such as the display code, enabled, read-only and personal flags, object version number, and standard WHO columns.
  • FEM_BUDGETS_TL — the translation table holding BUDGET_NAME and DESCRIPTION keyed by BUDGET_ID and LANGUAGE, with SOURCE_LANG identifying the language of origin.
  • FND_LANGUAGES — the Oracle Application Object Library table queried to enumerate installed or base languages when inserting or extending translation rows.

Usage Notes

FEM_BUDGETS_PKG is typically invoked indirectly. Oracle Forms-based maintenance screens for budget definitions call INSERT_ROW, UPDATE_ROW, and DELETE_ROW behind the scenes, while the LOCK_ROW procedure supports form-level concurrency control. ADD_LANGUAGE and TRANSLATE_ROW are exercised during language installation or through the standard translation maintenance utilities.

Because five other packages reference this package, custom code should treat it as an internal dependency rather than a stable public API. Direct calls are possible from PL/SQL, concurrent programs, or migration scripts, but callers must supply the full set of WHO audit columns and manage the object version number consistently. Any customization should avoid bypassing LOCK_ROW, and should respect the MLS model by maintaining FEM_BUDGETS_TL rows in step with the base table to prevent untranslated or orphaned budget records.