Search Results inv_mo_line_detail_util




Overview

INV_MO_LINE_DETAIL_UTIL is a utility package body in the APPS schema that supports the Oracle Inventory module's move order line detail processing. Classification within the ETRM documentation identifies it as a UTIL-type API, meaning it provides low-level data manipulation and validation services rather than a complete business transaction interface. The package encapsulates the insert, update, delete, lock, and query operations required to manage the association between move order lines and the inventory detail records — specifically lot, serial, and locator level detail — generated during material movement. It is a foundational component consumed by other Inventory packages, evidenced by the fact that it is referenced by fourteen other database objects while itself referencing no higher-level business packages other than the standard EBS service layers (FND_API, FND_MSG_PUB, FND_MESSAGE, FND_PROFILE) and Inventory utilities (INV_CONVERT, INV_DETAIL_UTIL_PVT, INV_LOG_UTIL, INV_SERIAL_NUMBER_PUB, INV_TRX_UTIL_PUB, INV_GLOBALS).

Key Procedures and Functions

The documented public interface exposes ten procedures and functions. The CRUD-oriented routines are:

  • INSERT_ROW — creates a new line detail record for a move order line.
  • UPDATE_ROW — modifies an existing line detail record.
  • DELETE_ROW — removes a line detail record.
  • LOCK_ROW — obtains a row-level lock, typically used for concurrency control before subsequent modification.
  • QUERY_ROW — retrieves a single line detail record.
  • QUERY_ROWS — retrieves a set of line detail records based on supplied criteria.

The remaining routines address quantity allocation and line-state validation:

Tables Accessed

The package operates against the following APPS synonyms, which in turn reference core Inventory base tables:

Additional dependencies include APP_EXCEPTIONS and FND_MSG_PUB for error handling and message stack management, and INV_DETAIL_UTIL_PVT and INV_TRX_UTIL_PUB for shared inventory detail and transaction logic.

Usage Notes

This package is not exposed directly to end users through an Oracle Forms window or a specific concurrent program; instead it is invoked programmatically by the fourteen dependent packages that compose the move order and material transaction processing flow. Typical invocation occurs during move order detail maintenance, when a pick, put-away, or subinventory transfer requires validation that a line carries lot, serial, or locator-level detail. Custom extensions that manipulate move order allocations should call this package rather than updating the underlying temporary tables directly, thereby preserving concurrency locking via LOCK_ROW and consistent message handling through FND_MSG_PUB. Care should be taken because the temporary tables (MTL_MATERIAL_TRANSACTIONS_TEMP, MTL_TRANSACTION_LOTS_TEMP, MTL_SERIAL_NUMBERS_TEMP) hold session-scoped staging data; calling DELETE_ALLOCATIONS or REDUCE_ALLOCATION_QUANTITY outside the originating transaction flow can leave orphaned interface rows. Both Oracle EBS 12.1.1 and 12.2.2 retain identical object naming and status (VALID), so remediation, dependency analysis, and custom code targeting this package can be treated consistently across both releases.