Search Results validate_quantities
Overview
APPS.WMS_PICKING_PKG is the core PL/SQL package body that underpins the Oracle Warehouse Management (WMS) picking engine in Oracle E-Business Suite 12.1.1 and 12.2.2. It encapsulates the business logic that drives task-level picking, including task retrieval, task sequencing, quantity validation, lot and serial number handling, and the splitting of pick tasks across material transaction, lot/serial, and LPN dimensions. The package operates against the WMS-driven picking model in which warehouse operators are directed to specific items, quantities, LPNs, and locations, and it coordinates the corresponding material transaction records that ultimately feed into inventory and order management. It is also responsible for cartonization and consolidation routines tied to LPN (license plate number) management.
The package is registered in ETRM with an API classification of OTHER, meaning it is not a published open interface but is widely consumed internally by WMS mobile and desktop flows. It is referenced by four other packages, reflecting its central role in the picking subsystem. The body retains internal state through global variables such as group sequence numbers, cartonization ID arrays, order number collections, and pick slip number collections, which are used to manage cluster picking and case picking scenarios.
Key Procedures and Functions
ETRM documents 24 procedures and functions. The primary ones relevant to picking task lifecycle and validation include:
- VALIDATE_QUANTITIES — The most commonly searched entry point. It validates the picked or entered quantity against the expected task quantities (primary, secondary, and UOM conversions) before the operator is allowed to confirm a pick. This is the gate that prevents over-picking, under-picking, or UOM mismatch errors during WMS transactions.
- CHANGE_TASK_TO_ACTIVE — Transitions a picking task into the active state so that the operator may begin executing it.
- GET_NEXT_TASK_INFO, GET_TASKS, NEXT_TASK — Retrieve and sequence the next eligible pick task for an operator based on rules, grouping, and dispatch order.
- GET_LOT_NUMBER_INFO, GET_SERIAL_NUMBERS — Return lot and serial number context required for controlled items during pick confirmation.
- SPLIT_TASK, SPLIT_MMTT, SPLIT_MMTT_LPN, SPLIT_WDT, SPLIT_MTLT, SPLIT_LOT_SERIAL, SPLIT_SERIAL — Perform task splitting across material transaction temp, workday, lot/serial, and LPN boundaries when partial quantities are picked or when multiple LPNs must be serviced from one task.
- INSERT_CARTONIZATION_ID, LIST_CARTONIZATION_ID, CLEAR_CARTONIZATION_ID — Manage the in-memory collection of cartonization (LPN) identifiers used during cluster picking by label.
- GET_TOTAL_LPNS, LIST_ORDER_NUMBERS, LIST_PICK_SLIP_NUMBERS — Utility routines that expose LPN counts, order numbers, and pick slip numbers accumulated during picking for downstream processing.
Tables Accessed
The package reads and writes a focused set of inventory, WMS, and manufacturing tables via APPS synonyms:
- MTL_MATERIAL_TRANSACTIONS_TEMP and MTL_MATERIAL_TRANSACTIONS_S — Staging and final material transactions created and split by the picking routines.
- MTL_TRANSACTION_LOTS_TEMP, MTL_SERIAL_NUMBERS, MTL_SERIAL_NUMBERS_TEMP — Lot and serial assignment during split and validation.
- MTL_SYSTEM_ITEMS_B, MTL_CROSS_REFERENCES — Item master attributes and GTIN/cross-reference lookups used for UCC128 and GTIN handling.
- MTL_ITEM_LOCATIONS, MTL_SECONDARY_INVENTORIES — Subinventory and locator validation for source and destination.
- MTL_SALES_ORDERS, MTL_PARAMETERS — Sales order context and organization-level inventory parameters.
- BOM_RESOURCES, BOM_RESOURCE_EQUIPMENTS, BOM_STD_OP_RESOURCES — Resource and equipment associations used when picking is tied to WIP or resource-driven operations.
Usage Notes
WMS_PICKING_PKG is invoked primarily from the WMS mobile picking UI (including RF and tablet flows) and from pick-confirm and task-execution forms. It is also called by the four dependent packages noted in ETRM and by custom extensions that need to validate pick quantities or split tasks programmatically. Because VALIDATE_QUANTITIES enforces quantity and UOM consistency, custom mobile or integration code that bypasses WMS UI should call it before committing a pick transaction to avoid inventory and order discrepancies. The debug tracing controlled by INV_DEBUG_TRACE (levels 0–2) is useful when diagnosing validation failures or task split behavior in production support scenarios involving 12.1.1 and 12.2.2 environments.
-
PACKAGE BODY: APPS.WMS_PICKING_PKG
12.2.2
-
PACKAGE BODY: APPS.WMS_PICKING_PKG
12.1.1
-
PACKAGE: APPS.GME_PENDING_PRODUCT_LOTS_PVT
12.2.2
-
PACKAGE: APPS.GME_PENDING_PRODUCT_LOTS_PVT
12.1.1
-
PACKAGE BODY: APPS.GME_PENDING_PRODUCT_LOTS_PVT
12.2.2
-
PACKAGE BODY: APPS.GME_PENDING_PRODUCT_LOTS_PVT
12.1.1
-
PACKAGE: APPS.WMS_PICKING_PKG
12.1.1
-
PACKAGE: APPS.WMS_PICKING_PKG
12.2.2
-
PACKAGE: APPS.INV_LOT_API_PUB
12.1.1
-
PACKAGE: APPS.INV_LOT_API_PUB
12.2.2
-
PACKAGE BODY: APPS.INV_LOT_API_PUB
12.1.1
-
PACKAGE BODY: APPS.INV_TXN_MANAGER_GRP
12.2.2
-
APPS.WMS_PICKING_PKG dependencies on INV_CONVERT
12.1.1
-
PACKAGE BODY: APPS.INV_LOT_API_PUB
12.2.2
-
APPS.WMS_PICKING_PKG dependencies on INV_CONVERT
12.2.2
-
APPS.INV_LOT_API_PUB dependencies on INV_CONVERT
12.2.2
-
PACKAGE BODY: APPS.INV_TXN_MANAGER_GRP
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on INV_LOG_UTIL
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on INV_CONVERT
12.1.1
-
APPS.INV_TXN_MANAGER_GRP dependencies on INV_CONVERT
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on INV_LOG_UTIL
12.2.2
-
APPS.INV_TXN_MANAGER_GRP dependencies on INV_CONVERT
12.2.2
-
APPS.WMS_PICKING_PKG dependencies on WMS_TASK_MGMT_PUB
12.2.2
-
APPS.WMS_PICKING_PKG dependencies on WMS_TASK_MGMT_PUB
12.1.1
-
APPS.GME_PENDING_PRODUCT_LOTS_PVT dependencies on GME_MATERIAL_DETAILS
12.2.2
-
APPS.INV_TXN_MANAGER_GRP dependencies on INV_LOG_UTIL
12.2.2
-
APPS.GME_PENDING_PRODUCT_LOTS_PVT dependencies on GME_MATERIAL_DETAILS
12.1.1
-
APPS.INV_TXN_MANAGER_GRP dependencies on INV_LOG_UTIL
12.1.1
-
APPS.INV_TXN_MANAGER_GRP dependencies on INV_TXN_MANAGER_GRP
12.1.1
-
APPS.WMS_PICKING_PKG dependencies on WMS_TASK_MGMT_PUB
12.2.2
-
APPS.INV_TXN_MANAGER_GRP dependencies on INV_TXN_MANAGER_GRP
12.2.2
-
APPS.WMS_PICKING_PKG dependencies on WMS_TASK_MGMT_PUB
12.1.1
-
APPS.GME_PENDING_PRODUCT_LOTS_PVT dependencies on GME_MATERIAL_DETAILS
12.2.2
-
APPS.GME_PENDING_PRODUCT_LOTS_PVT dependencies on GME_MATERIAL_DETAILS
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on FND_PROFILE
12.2.2
-
APPS.INV_LOT_API_PUB dependencies on FND_PROFILE
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on FND_API
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on INV_LOT_API_PUB
12.1.1
-
PACKAGE BODY: APPS.WMS_TASK_MGMT_PUB
12.2.2
-
APPS.INV_LOT_API_PUB dependencies on FND_API
12.2.2
-
APPS.INV_LOT_API_PUB dependencies on INV_LOT_API_PUB
12.2.2
-
PACKAGE BODY: APPS.WMS_TASK_MGMT_PUB
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on FND_MSG_PUB
12.1.1
-
APPS.INV_LOT_API_PUB dependencies on FND_MSG_PUB
12.2.2
-
APPS.WMS_PICKING_PKG dependencies on FND_PROFILE
12.1.1
-
APPS.WMS_PICKING_PKG dependencies on MTL_TRANSACTION_LOTS_TEMP
12.1.1
-
APPS.WMS_PICKING_PKG dependencies on MTL_TRANSACTION_LOTS_TEMP
12.2.2
-
APPS.GME_PENDING_PRODUCT_LOTS_PVT dependencies on FND_MSG_PUB
12.2.2
-
APPS.INV_LOT_API_PUB dependencies on FND_MESSAGE
12.1.1
-
APPS.GME_PENDING_PRODUCT_LOTS_PVT dependencies on FND_MSG_PUB
12.1.1