Search Results validate_item_uom




Overview

APPS.INV_CONVERT is the core Unit of Measure (UOM) conversion engine within Oracle EBS Inventory. It provides the central logic by which Oracle Inventory translates a quantity expressed in one unit of measure into its equivalent in another unit of measure, whether the conversion is defined universally across a UOM class or specifically for an individual item. Because virtually every inventory transaction, receiving receipt, shipping confirmation, and material issue requires quantities to be normalized to a common UOM, INV_CONVERT is one of the most heavily depended-upon packages in the Inventory application. The package header carries the source control reference INVUMCNS.pls, and the API classification is recorded as OTHER. It is referenced by 414 other packages, underscoring its role as foundational infrastructure rather than a narrow utility. The introduction of the ReadNoPackageState (RNPS) pragma in the source was specifically intended so that inv_um_convert could be executed remotely at the same purity level or lower.

Key Procedures and Functions

The documented interface exposes thirteen procedures and functions. The principal conversion routines are INV_UM_CONVERT, INV_UM_CONVERT_NEW, and INV_UM_CONVERSION, which perform the actual quantity translation between a from-UOM and a to-UOM for a given item, optionally scoped to a lot number and organization. PICK_UOM_CONVERT and PICK_UOM_CONVERT_FOR_DUAL_UOM support picking operations, deriving pick quantities and UOM strings, including the dual-UOM scenarios introduced for catch-weight and secondary UOM handling, and returning standard return status and message outputs. IS_UOM_IN_SAME_CLASS determines whether two units of measure belong to the same UOM class, a prerequisite for certain conversion paths. VALIDATE_ITEM_UOM confirms that a UOM is legitimately assigned to an item. WITHIN_DEVIATION supports tolerance checking against acceptable conversion deviation. CREATE_UOM_CONVERSION allows conversion definitions to be created programmatically. Purity-level pragmas (WNDS, WNPS, RNPS) are declared on the conversion procedures to permit safe remote invocation.

Tables Accessed

The package reads and writes against a set of core Inventory tables accessed through APPS synonyms. MTL_UNITS_OF_MEASURE and MTL_UOM_CLASSES hold the UOM definitions and their class groupings, while MTL_UOM_CONVERSIONS and MTL_UOM_CLASS_CONVERSIONS store the actual class-level conversion rates. MTL_SYSTEM_ITEMS provides item-level attributes and item-specific conversion relationships. MTL_LOT_UOM_CLASS_CONVERSIONS supports lot-specific conversion factors, and MTL_LOT_NUMBERS supplies lot context. MTL_ITEM_LOCATIONS, MTL_SECONDARY_INVENTORIES, and MTL_MATERIAL_TRANSACTIONS_TEMP are used in picking and transaction-building paths. PLITBLM is the standard EBS PL/SQL index-by table utility used for bulk processing. The package also maintains an internal nested PL/SQL cache (a three-key structure indexed by item, from-UOM, and to-UOM) to avoid repeated conversion lookups.

Usage Notes

INV_CONVERT is rarely called directly by end users; instead it is invoked by Inventory forms, concurrent programs, transaction processors, and the many dependent packages that require quantity normalization. Developers writing custom conversions or extensions should call the documented public functions rather than reproducing conversion logic. Because of the internal caching introduced for performance, callers should be aware that conversion results are memoized within a session. The RNPS pragma makes the conversion functions suitable for remote database-link execution. When item, lot, or organization context is ambiguous, the simpler overloads (which default lot number and organization to NULL) should be used only where such scoping is genuinely unnecessary.