Search Results mtl_lot_uom_conv_pvt




Overview

MTL_LOT_UOM_CONV_PVT is the private implementation package body for lot-specific unit of measure (UOM) conversion processing within Oracle E-Business Suite inventory and process manufacturing. Its principal business purpose is to validate, process, and persist UOM conversions that apply to specific lots, rather than to an item globally. In process manufacturing and lot-controlled inventory environments, the same item may be received or issued in different units of measure across lots, and the conversion factor between the primary unit of measure and the transaction unit of measure may differ by lot. This package provides the engine that validates those lot-level conversion rules and records the resulting conversion data, including audit detail rows used to track changes over time.

The package is classified as a private (PVT) API, meaning it is not intended to be called directly by external integrators. Instead, it is invoked by its public counterpart, MTL_LOT_UOM_CONV_PUB, and by the associated workflow package MTL_LOT_UOM_CONV_PKG, both of which appear in the dependency list. This layering conforms to the standard Oracle EBS public/private API pattern, where the public package marshals input into the FND_API global data structures and the private package performs validation and DML.

Key Procedures and Functions

The documented package exposes five procedures, all oriented toward validation and data processing rather than query:

  • VALIDATE_UPDATE_TYPE — Confirms that the requested update type is valid for the lot UOM conversion operation. This guards the package against unsupported or malformed requests before any validation or DML is attempted.
  • VALIDATE_LOT_CONVERSION_RULES — Applies the business rules that govern whether a lot-level UOM conversion is permissible, including checks against the lot UOM class conversions defined for the item and organization.
  • PROCESS_CONVERSION_DATA — Performs the core processing of the conversion records, orchestrating the validation routines and writing the conversion and audit data.
  • COPY_LOT_UOM_CONVERSIONS — Duplicates existing lot UOM conversion definitions, supporting setup replication across organizations or lots.
  • VALIDATE_ONHAND_EQUALS_AVAIL — Verifies that on-hand quantity equals available quantity for the lot before a conversion is applied, preventing conversion of quantities that are reserved, allocated, or otherwise unavailable.

Tables Accessed

The package reads and writes a focused set of inventory and process manufacturing tables. Master and setup data are drawn from MTL_SYSTEM_ITEMS, MTL_UNITS_OF_MEASURE, MTL_UNITS_OF_MEASURE_VL, MTL_LOT_UOM_CLASS_CONVERSIONS, MTL_LOT_NUMBERS, and MTL_PARAMETERS. Transaction data is read from MTL_MATERIAL_TRANSACTIONS, MTL_MATERIAL_TRANSACTIONS_TEMP, MTL_TRANSACTIONS_INTERFACE, MTL_TRANSACTION_LOT_NUMBERS, MTL_TRANSACTION_LOTS_TEMP, and MTL_TRANSACTION_REASONS. Conversion audit information is written to MTL_LOT_CONV_AUDIT_DETAILS, with primary keys sourced from the sequences MTL_CONV_AUDIT_ID_S and MTL_CONV_AUDIT_DETAIL_ID_S — the latter being the object the user searched on. Process manufacturing context is supplied by GME_TRANSACTION_PAIRS and the GME packages shown in the dependency list. The package also relies on FND_API, FND_MESSAGE, FND_MSG_PUB, FND_PROFILE, FND_GLOBAL, INV_CACHE, and INV_CONVERT for error handling, profile values, and UOM conversion utilities.

Usage Notes

MTL_LOT_UOM_CONV_PVT is normally invoked indirectly. Applications and concurrent programs call APPS.MTL_LOT_UOM_CONV_PUB, which in turn delegates to this private body; the package is also referenced by four other database objects. Direct invocation from custom code is discouraged because the private API does not guarantee a stable signature across releases. When diagnosing issues, note that the most common failure is raised by VALIDATE_ONHAND_EQUALS_AVAIL when a lot has reservations, and by VALIDATE_LOT_CONVERSION_RULES when no lot UOM class conversion is defined. Audit rows written to MTL_LOT_CONV_AUDIT_DETAILS are keyed by MTL_CONV_AUDIT_DETAIL_ID_S, so queries against that sequence identifier will locate individual conversion change records. The package is valid in both 12.1.1 and 12.2.2, and its behavior depends on INV_CONVERT and INV_CACHE for the underlying conversion arithmetic and cached UOM data.