Search Results oe_dual_uom_util




Overview

OE_DUAL_UOM_UTIL is a utility package in the APPS schema that supports Oracle Order Management's dual unit of measure (dual UOM) functionality. Dual UOM allows a single item to be transacted in two related units of measure simultaneously — typically a primary stocking UOM and a secondary "fulfillment" UOM — which is essential for industries where goods are ordered, priced, or shipped in different units (for example, ordering by each but shipping by case, or selling by weight while stocking by count). The package provides the shared logic used throughout the order-to-ship cycle to determine the correct fulfillment unit of measure, derive the corresponding base quantity, and validate that the requested fulfillment UOM is consistent with the item's defined UOM configuration. In ETRM metadata for both 12.1.1 and 12.2.2 the object is registered with owner APPS, status VALID, and an API classification of UTIL, indicating it is an internal support package rather than a public, user-invoked API. Its narrow, single-purpose scope is confirmed by its four documented routines, all of which concern the derivation and validation of the fulfillment base. Because it is referenced by thirteen other packages, it functions as a foundational layer beneath higher-level Order Management, Inventory, and Warehouse Management operations.

Key Procedures and Functions

The package exposes four documented routines. Parameter lists are intentionally not reproduced here; the descriptions reflect the documented purpose of each routine.

  • GET_FULFILLMENT_ELIGIBLE — Determines whether a given item is eligible for fulfillment-base processing under dual UOM rules.
  • GET_FULFILLMENT_BASE — Returns the fulfillment base value associated with an item, typically resolving the conversion or base quantity used in downstream pricing and shipping logic.
  • DERIVE_FULFILLMENT_BASE — Calculates or derives the fulfillment base when it is not directly available, applying the conversion rules between the primary and secondary units of measure.
  • VALIDATE_FULFILLMENT_BASE — Validates that a supplied fulfillment base is consistent with the item's UOM setup, returning an error condition when it is not.

Tables Accessed

The package reads item and UOM configuration data through APPS synonyms. MTL_SYSTEM_ITEMS and MTL_SYSTEM_ITEMS_B supply the item definition and its UOM attributes; MTL_UNITS_OF_MEASURE provides the unit-of-measure definitions and conversion context; MTL_PARAMETERS supplies inventory organization-level setup controlling UOM behavior; OE_ORDER_LINES and OE_ORDER_LINES_ALL provide the order line context in which fulfillment base values are evaluated. OE_ORDER_PUB is also referenced as a dependency, reflecting the package's integration with the public Order Management API layer. The documented dependency set consists of reads against these configuration and transaction tables rather than writes, consistent with a UTIL classification.

Usage Notes

OE_DUAL_UOM_UTIL is not intended for direct invocation by end users. It is called internally by higher-level packages such as OE_LINE_UTIL, OE_BULK_PROCESS_LINE, WSH_UTIL_CORE, INV_SHIPPING_TRANSACTION_PUB, WMS_ENGINE_PVT, and the OZF accrual and adjustment packages. These callers invoke it during order line processing, shipping and delivery confirmation, warehouse execution, and accrual calculation, wherever a fulfillment UOM must be resolved or checked. Because the package is dependency-shared across thirteen callers, changes to its logic can ripple through Order Management, Inventory, and Warehouse Management. Custom code should prefer documented public APIs over calling this utility directly, and any extension of dual UOM behavior should be validated against both 12.1.1 and 12.2.2, since the object is VALID in both releases.