Search Results finalize_pick_confirm




Overview

INV_TRANSFER_ORDER_PVT is a private (PVT) PL/SQL package body owned by APPS that encapsulates the core business logic for Oracle EBS transfer order and move order processing. In Oracle Inventory, transfer orders are represented as move orders stored in MTL_TXN_REQUEST_HEADERS and MTL_TXN_REQUEST_LINES, which drive the picking, staging, and shipment of material between subinventories or between organizations. This package provides the internal engine behind the public INV_Transfer_Order_GRP and related APIs, handling order creation, validation, reservation management, picking confirmation, and order termination.

The header comment identifies the source as INVVTROB.pls (version 120.54, last modified 2013), placing this object in the mainstream of Oracle E-Business Suite 12.1.1 and 12.2.2 code. The package is referenced by 20 other packages, indicating that it is a foundational component relied upon by Inventory, Order Management, and Warehouse Management flows. It is classified as private, meaning Oracle does not document its interfaces for direct customer invocation; customizations should normally call the public, supported APIs instead.

Key Procedures and Functions

The package exposes 18 documented procedures and functions that fall into four functional groups:

Tables Accessed

The package reads and writes several Inventory base tables through APPS synonyms. Move order definition data resides in MTL_TXN_REQUEST_HEADERS and MTL_TXN_REQUEST_HEADERS_S, with line detail in MTL_TXN_REQUEST_LINES. Subinventory validation uses MTL_SECONDARY_INVENTORIES, while item validation draws on MTL_SYSTEM_ITEMS and MTL_SYSTEM_ITEMS_B. Reservation processing touches MTL_RESERVATIONS, and material movement is staged in MTL_MATERIAL_TRANSACTIONS_TEMP. Lot and serial handling uses MTL_LOT_NUMBERS, MTL_TRANSACTION_LOTS_TEMP, MTL_SERIAL_NUMBERS, and MTL_SERIAL_NUMBERS_TEMP. Organization setup is read from MTL_PARAMETERS, and WIP_ENTITIES and FND_TABLES provide supporting lookups.

Usage Notes

Because INV_TRANSFER_ORDER_PVT is a PVT package, it is not intended for direct invocation by customers. It is called internally by the Inventory transaction manager, by the Transfer Order and Move Order forms, by pick confirmation processing, and by the WMS and shipping integration routines. Custom code that must create, confirm, or cancel move orders should call the supported public APIs (for example the INV_Transfer_Order_GRP public package or the Transfer Order open interface). The performance-oriented caching structures and the g_mmtt_cache_tbl were introduced specifically to reduce the overhead of pick release and finalize-pick processing, and any extension that bypasses these routines risks leaving reservations, lots, or serial numbers in an inconsistent state.