Search Results get_inv_fulfillment_base
Overview
INV_UTILITIES is a shared PL/SQL utility package owned by the APPS schema in Oracle E-Business Suite, valid across both the 12.1.1 and 12.2.2 releases. It provides a collection of low-level helper routines used throughout the Oracle Inventory (INV), Purchasing (PO), and Warehouse Management (WMS) modules. Unlike a functional API such as INV_TXN_MANAGER_PUB or MTL_MATERIAL_TRANSACTIONS_PUB, INV_UTILITIES is an internal support package: it exposes generic services — dynamic SQL execution, key flexfield segment resolution, item cost lookup, and inventory transaction validation — that other packages call rather than end users. Its metadata classifies it under the API classification OTHER, confirming it is not a published, externally supported interface. The package body depends only on SYS and the STANDARD package, making it a leaf-level utility within the dependency tree, while thirteen other packages reference it, underscoring its broad internal reuse across Oracle's seeded code.
Key Procedures and Functions
The ETRM documentation records eight procedures and functions in the package specification:
- DO_SQL — Executes a dynamically constructed SQL statement, providing the generic execution engine on which other routines rely.
- RUN_DETAIL_ENGINE — Drives a detail-processing engine, typically associated with transaction or reporting detail generation.
- PARSE_VECTOR — Parses a delimited or vector-style string into its component elements, a common parsing helper for concatenated identifiers.
- GET_CONC_SEGMENTS — Returns the segments of a concurrent-program key flexfield structure, used to resolve accounting or reporting segment combinations.
- INV_CHECK_LCM — Performs a validation check associated with inventory LCM (least-cost or lot/control-method) logic.
- GET_ITEM_COST — Retrieves the cost of a given inventory item, central to valuation and transaction costing.
- GET_SALES_ORDER_ID — Returns the sales order identifier associated with a transaction or demand record.
- GET_INV_FULFILLMENT_BASE — Returns the fulfillment base reference used in inventory fulfillment processing.
Parameter signatures are not reproduced here; consumers should inspect the package specification directly in the EBS instance.
Tables Accessed
Through APPS synonyms, INV_UTILITIES reads from a focused set of inventory, purchasing, and setup tables. Item and cost resolution rely on MTL_SYSTEM_ITEMS, MTL_ITEM_CATEGORIES, and MTL_PARAMETERS. Location and organization context come from MTL_ITEM_LOCATIONS and HR_ORGANIZATION_INFORMATION. Transaction processing touches MTL_MATERIAL_TRANSACTIONS_S, MTL_MATERIAL_TRANSACTIONS_TEMP, MTL_TXN_REQUEST_HEADERS, and MTL_TXN_REQUEST_LINES. Purchasing references include PO_DISTRIBUTIONS_ALL and PO_LINE_LOCATIONS_ALL. Flexfield segment resolution uses FND_ID_FLEX_STRUCTURES, and project-related defaults come from MRP_PROJECT_PARAMETERS. Dynamic SQL execution leverages DBMS_SQL and DUAL.
Usage Notes
INV_UTILITIES is invoked programmatically rather than through a dedicated form or concurrent program. The documented referencing packages — including INVTROAP, INV_PHY_INV_LOVS, MTL_INV_UTIL_GRP, PO_DOCUMENT_CHECKS_PVT, and WMS_TASK_DISPATCH_GEN — illustrate its role as a cross-module service layer for physical inventory, purchasing document validation, and warehouse task dispatch. Custom developers should treat it as an unsupported internal utility: Oracle does not guarantee signature stability across patches or upgrades. Where a documented public API exists for the same function, that API should be preferred. Direct calls are best confined to diagnostic scripts, and any custom dependency should be re-validated after applying EBS patches or upgrading between 12.1.1 and 12.2.2.