Search Results process_lpn_trx_line
Overview
INV_LPN_TRX_PUB is a public PL/SQL API within the Oracle E-Business Suite Inventory module that processes batches of License Plate Number (LPN) based material transactions. An LPN is a uniquely identified container used to group and track inventory items through warehousing and manufacturing operations. This package provides the programmatic entry point through which LPN packing, unpacking, and status-change operations are validated and committed to the database.
The package header identifies the source header revision as INVTRXWS.pls 120.2.12010000.1, last modified 2008/07/24. It is owned by the APPS schema and classified as a public API, meaning it is intended for invocation by external callers, including Oracle's own forms, concurrent programs, and customer-written extensions.
The core business purpose of the package is to accept a batch of pending transaction records staged in MTL_MATERIAL_TRANSACTIONS_TEMP, identified by a common TRANSACTION_HEADER_ID, and drive them through the inventory transaction processing engine. In doing so, the API packs or unpacks items and LPNs, updates LPN status, and invokes the underlying transaction manager to create final transaction records.
Key Procedures and Functions
The ETRM metadata documents two callable program units in this package:
- PROCESS_LPN_TRX — The primary entry point for processing an entire batch of LPN-based transactions. The batch is identified by the p_trx_hdr_id parameter, which corresponds to the TRANSACTION_HEADER_ID column in MTL_MATERIAL_TRANSACTIONS_TEMP. The procedure supports a p_commit flag (default fnd_api.g_false) controlling whether changes are committed; the header notes that if a batch contains records spanning multiple transaction_group_ids, the API commits automatically to prevent deadlock on MOQD, which is locked before updating. A p_proc_mode parameter, generally NULL, allows the TP:INV* profile options to determine processing behavior. The p_process_trx parameter determines whether the transaction is fully processed or only LPN pre-processing is performed; when invoked from the ProC Manager (inltpu), only pre-processing occurs. The p_atomic flag controls whether all rows sharing a header ID are treated as one holistic unit (fnd_api.true) or independently; in atomic mode, an error in one row aborts processing of all remaining rows. Output parameters include x_proc_msg for error messaging and return_status, where 0 indicates success and 1 indicates error.
- PROCESS_LPN_TRX_LINE — The line-level counterpart, which processes an individual transaction line within an LPN transaction batch.
Tables Accessed
The package reads from and writes to a broad set of Inventory and Process Manufacturing tables via APPS synonyms. Transaction staging and final records are handled through MTL_MATERIAL_TRANSACTIONS_TEMP, MTL_MATERIAL_TRANSACTIONS, and MTL_MATERIAL_TRANSACTIONS_S. LPN and serial tracking rely on MTL_SERIAL_NUMBERS, MTL_SERIAL_NUMBERS_TEMP, and MTL_LOT_NUMBERS. Organization and location context are drawn from MTL_PARAMETERS, MTL_INTERORG_PARAMETERS, MTL_ITEM_LOCATIONS, MTL_SECONDARY_INVENTORIES, and MTL_SYSTEM_ITEMS. Costing and specification data are referenced through CST_COST_GROUPS, GMD_SPECIFICATIONS_B, GMD_INVENTORY_SPEC_VRS, and GMD_SUPPLIER_SPEC_VRS.
Usage Notes
INV_LPN_TRX_PUB is referenced by 25 other packages, indicating it is a foundational integration point for LPN transactions across the Inventory and Manufacturing applications. It is typically invoked after transaction records have been staged in MTL_MATERIAL_TRANSACTIONS_TEMP, whether by a form, an external interface, or a custom concurrent program. The ProC Manager (inltpu) calls PROCESS_LPN_TRX with p_process_trx set to perform LPN pre-processing only, deferring full processing to a subsequent invocation. Custom code should adhere to the fnd_api.g_true/g_false conventions for p_commit and p_atomic, and should always inspect return_status and x_proc_msg to detect and report failures. Because automatic commits may occur when a batch spans multiple transaction groups, callers should not assume that a single call maps to a single database transaction.
-
PACKAGE: APPS.INV_LPN_TRX_PUB
12.1.1
-
PACKAGE: APPS.INV_LPN_TRX_PUB
12.2.2
-
PACKAGE BODY: APPS.INV_LPN_TRX_PUB
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on INV_CACHE
12.2.2
-
PACKAGE BODY: APPS.INV_LPN_TRX_PUB
12.2.2
-
APPS.INV_LPN_TRX_PUB dependencies on MTL_SERIAL_NUMBERS_TEMP
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on FND_PROFILE
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on MTL_SERIAL_NUMBERS_TEMP
12.2.2
-
APPS.INV_LPN_TRX_PUB dependencies on MTL_SERIAL_NUMBERS
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on FND_PROFILE
12.2.2
-
APPS.INV_LPN_TRX_PUB dependencies on MTL_SERIAL_NUMBERS
12.2.2
-
APPS.INV_LPN_TRX_PUB dependencies on INV_LOG_UTIL
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on INV_LPN_TRX_PUB
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on INV_LOG_UTIL
12.2.2
-
APPS.INV_LPN_TRX_PUB dependencies on INV_LPN_TRX_PUB
12.2.2
-
APPS.INV_LPN_TRX_PUB dependencies on FND_API
12.1.1
-
APPS.INV_LPN_TRX_PUB dependencies on FND_API
12.2.2