Search Results status_history




Overview

APPS.MTL_SECONDARY_INVENTORIES_PKG is the server-side PL/SQL package that encapsulates the data-manipulation logic for the MTL_SECONDARY_INVENTORIES table, the base table that stores subinventory definitions in Oracle Inventory. In Oracle EBS 12.1.1 and 12.2.2, subinventories represent the physical or logical storage locations within an inventory organization, and every material transaction, on-hand balance, move order, and reservation references a subinventory. This package provides the canonical insert, update, delete, locking, validation, and status-tracking operations used by the Subinventories form (INVSDSUB) and by other Inventory modules that must create or maintain subinventory records programmatically.

The package body header identifies revision 120.2 and includes a "WMS Enhancements" comment noting that Status_ID, Default_Loc_Status_ID, Default_Cost_Group_ID, and LPN_Controlled_Flag were accommodated for Warehouse Management System functionality. This reflects the warehouse-management extensions in Release 12 that added locator status and license-plate-number control to subinventory definitions. The API classification is OTHER, indicating that the package is an internal repository API rather than a formally published open interface, although it is frequently referenced by companion and dependent packages.

Key Procedures and Functions

  • CHECK_UNIQUE — A function that validates the uniqueness of a subinventory name within a given organization. It queries MTL_SECONDARY_INVENTORIES, excluding the current row when a ROWID is supplied, and returns an indicator of whether a duplicate exists.
  • COMMIT_ROW — Commits the current transaction, allowing callers to persist changes made through other procedures in the package.
  • ROLLBACK_ROW — Rolls back the current transaction, used to undo changes when a calling process fails validation or encounters an error.
  • INSERT_ROW — Inserts a new subinventory record. The parameter list covers the full set of subinventory attributes, including descriptive and account fields, ATP and availability attributes, locator and picking/dropping controls, sourcing attributes, and the WMS status and cost-group additions referenced in the header comment.
  • LOCK_ROW — Acquires a row-level lock on the target MTL_SECONDARY_INVENTORIES row so the caller can safely perform a subsequent update or delete without concurrency conflicts.
  • UPDATE_ROW — Updates an existing subinventory record, applying changed attribute values and standard WHO audit columns.
  • DELETE_ROW — Removes a subinventory record, typically invoked only when the subinventory has no remaining on-hand or transactional dependencies.
  • STATUS_HISTORY — Retrieves or records the status-change history associated with a subinventory. This is the procedure most closely matching the search term "status_history," and it supports audit and traceability of subinventory status transitions.
  • GET_MISS_NUM — Returns a missing or sequence-related numeric value used by the package, typically to generate or resolve an identifier when one is not supplied by the caller.

Tables Accessed

The package operates against a single documented base table, MTL_SECONDARY_INVENTORIES, accessed through its APPS synonym. CHECK_UNIQUE reads the table to detect duplicate subinventory names within an organization. INSERT_ROW, UPDATE_ROW, and DELETE_ROW write to the table to maintain subinventory definitions. LOCK_ROW selects the row with locking semantics, and STATUS_HISTORY reads status-related data to support auditing of subinventory status changes. The WHO audit columns (LAST_UPDATE_DATE, LAST_UPDATED_BY, CREATION_DATE, CREATED_BY, LAST_UPDATE_LOGIN) are passed through the insert and update procedures to preserve standard Oracle Applications audit behavior.

Usage Notes

This package is invoked primarily by the Subinventories maintenance form in Oracle Inventory, but it is also callable from custom PL/SQL, concurrent programs, and other Inventory APIs that need to create or modify subinventory records. Because it is an OTHER-classified internal API, customization developers should favor the supported open interfaces where available and use MTL_SECONDARY_INVENTORIES_PKG only with attention to the commit/rollback procedures, which give the caller explicit transaction control. The ETRM metadata notes that the package is referenced by two other packages, confirming its role as a shared dependency within the Inventory schema. When working with status_history functionality, note that subinventory status changes tie into WMS locator status and license-plate control, so STATUS_HISTORY should be consulted alongside the WMS-related columns added in Release 12. Standard Release 12.1.1 and 12.2.2 online patching considerations apply: any change to the package must respect the editioning and AD online patching model, and developers should avoid hard-coding subinventory attribute defaults that the API already manages.