Search Results exclude_hold




Overview

BOM_REVISIONS (PACKAGE BODY: APPS.BOM_REVISIONS) is a public PL/SQL package in the Oracle E-Business Suite APPS schema that centralizes revision-handling logic for bills of material and related manufacturing structures. Its primary business function is to resolve revision identifiers, labels, dates, and high-water revision dates for items, engineering changes, and routing revisions, providing a single programmatic interface that other Oracle EBS modules and custom extensions can call. As documented in ETRM for 12.1.1 and 12.2.2, the package is classified with an API classification of OTHER and has a VALID status. It depends on standard Oracle EBS facilities including FND_API, FND_DATE, FND_MESSAGE, and APP_EXCEPTION for error handling and message resolution, and it relies on the MTL_ITEM_FLEXFIELDS view for item context. The package is referenced by 34 other packages, indicating it is a foundational dependency within the manufacturing and inventory functional area, even though the package itself is not referenced directly by any database object.

Key Procedures and Functions

  • GET_REVISION — Retrieves the applicable revision for an item or bill context, serving as the core revision lookup entry point.
  • GET_ITEM_REVISION_FN — Returns the revision label or value associated with a given item revision; provided as a function for use in SQL and PL/SQL expressions.
  • GET_ITEM_REVISION_ID_FN — Returns the internal revision identifier for an item revision, suitable for joins against revision tables.
  • COMPARE_REVISION — Compares two revisions, typically to determine ordering or equivalence between revision values.
  • GET_REV_DATE — Resolves the effective date associated with a given revision.
  • GET_HIGH_DATE — Returns the high (expiration) date used for effective-dated revision resolution.
  • GET_ITEM_REVISION_LABEL_FN — Returns the display label for an item revision, used in forms and reports where a human-readable revision label is required.
  • GET_REVISION_DETAILS — Returns detailed revision attributes for an item, consolidating several revision fields in a single call.
  • GET_HIGH_REV_DATE — Resolves the high revision date, distinct from the high date returned by GET_HIGH_DATE, for revision-date logic.
  • GET_ITEM_REV_HIGHDATE — Returns the high date for an item revision, supporting effective-dated queries against revision views such as MTL_ITEM_REV_HIGHDATE_V.

Parameter lists are not documented in the ETRM excerpt; parameter details should be verified against the package specification in the target environment before use in custom code.

Tables Accessed

  • ENG_REVISED_ITEMS — Engineering revised items table, used to resolve revision information originating from engineering change activity.
  • MTL_ITEM_REVISIONS_B — The base table storing item revision definitions; the package reads revision labels, identifiers, and effective dates from this table.
  • MTL_RTG_ITEM_REVISIONS — Routing item revisions table, used when revision resolution applies to routing structures.

Additional documented dependencies include MTL_ITEM_REV_HIGHDATE_V, MTL_ITEM_FLEXFIELDS, and MTL_SYSTEM_ITEMS_VL, which supply item and high-date context for the revision lookups. The package does not appear to be referenced by other database objects, so its reads are primarily directed at these revision and item tables.

Usage Notes

BOM_REVISIONS is typically invoked from Oracle EBS forms, concurrent programs, and custom PL/SQL code where revision information is required without directly querying the underlying revision tables. Because 34 packages reference it, it functions as a shared utility layer for revision resolution across manufacturing, inventory, and engineering workflows. When called from custom code, the function variants (GET_ITEM_REVISION_FN, GET_ITEM_REVISION_ID_FN, GET_ITEM_REVISION_LABEL_FN, GET_ITEM_REV_HIGHDATE) are appropriate for use inside SQL statements and expressions, while the procedure-style entries suit PL/SQL control flow. Callers should observe the package's dependency on FND_API and FND_MESSAGE error handling, as exceptions are returned through the standard EBS message framework. Because the package is not referenced by any database object, direct dependencies are limited to the documented views and tables; nonetheless, changes to revision data in the base tables can affect results. Always validate behavior against the specific 12.1.1 or 12.2.2 installation, as the package body is environment-specific and not intended for direct modification.