Search Results derive_line_locs
Overview
PO_PDOI_LINE_LOC_PROCESS_PVT is a private (PVT-classified) PL/SQL package in the APPS schema that forms part of the Purchasing Document Open Interface (PDOI) processing framework. PDOI allows external systems, batch loads, and internal Oracle EBS flows to import purchase orders, agreements, and releases into the Procurement application tables. Within that framework, this package is responsible for the line location (shipment and distribution schedule) tier of the import: it opens, derives, defaults, validates, and persists line location records that originate in the interface tables and must be resolved into the corresponding draft and transactional tables.
The package is not a public API and is not intended for direct invocation by customer code. It is a worker package invoked by the higher-level PDOI orchestration packages, notably PO_PDOI_MAINPROC_PVT and PO_PDOI_ITEM_PROCESS_PVT, which drive the overall import process. It depends on PO_PDOI_TYPES for shared record and collection type definitions, on PO_TBL_NUMBER and PO_TBL_VARCHAR1 for bulk PL/SQL table types, and on DBMS_SQL for dynamic statement execution. The ETRM metadata records the object as VALID in both 12.1.1 and 12.2.2, with eight documented program units.
Key Procedures and Functions
- OPEN_LINE_LOCS — Opens the line location processing cursor, establishing the working set of interface rows to be handled in the current PDOI run.
- FETCH_LINE_LOCS — Retrieves rows from the open cursor for processing, populating the internal collections used by subsequent steps.
- DERIVE_LINE_LOCS — Derives line location attribute values that are not explicitly supplied on the interface record, applying purchasing business rules.
- DEFAULT_LINE_LOCS — Applies defaulting logic for shipments and distributions, sourcing values from item, supplier, and document style definitions.
- VALIDATE_LINE_LOCS — Validates derived and defaulted line location data, raising or recording errors for invalid combinations before persistence.
- UPDATE_LINE_LOC_INTERFACE — Writes processing results, generated identifiers, and status back to the line locations interface table.
- UPDATE_AMOUNT_QUANTITY_ON_LINE — Recalculates and updates amount and quantity values on the associated parent line to reflect the processed locations.
- DELETE_EXIST_PRICE_BREAKS — Removes existing price break records associated with the line so that refreshed pricing can be applied.
Tables Accessed
The package reads and writes the core PDOI interface and staging tables: PO_LINE_LOCATIONS_INTERFACE, PO_LINES_INTERFACE, PO_HEADERS_INTERFACE, and PO_INTERFACE_ERRORS, where validation failures are logged. It writes resolved results into the draft layer through PO_HEADERS_DRAFT_ALL, PO_LINES_DRAFT_ALL, and PO_LINE_LOCATIONS_DRAFT_ALL, and into the transactional layer through PO_LINE_LOCATIONS and PO_LINE_LOCATIONS_ALL. Reference and context data are read from PO_HEADERS_ALL, PO_DOC_STYLE_HEADERS, MTL_SYSTEM_ITEMS, and MTL_UNITS_OF_MEASURE. PO_SESSION_GT provides run-scoped session information, and DBMS_SQL supports dynamic SQL used during processing.
Usage Notes
PO_PDOI_LINE_LOC_PROCESS_PVT is invoked internally during Purchasing Document Open Interface runs. It is referenced by PO_PDOI_MAINPROC_PVT and PO_PDOI_ITEM_PROCESS_PVT, and by itself, confirming its role as a subordinate worker rather than an entry point. Practically, it executes whenever a PDOI import is triggered — whether through the Purchasing Documents Open Interface concurrent program, internal EBS flows that reuse PDOI, or custom batch integrations that populate the interface tables and submit the standard program. Because it is a PVT package with no documented public API contract, Oracle does not support direct calls from custom code; developers requiring PDOI behavior should submit the standard concurrent program or invoke the supported public PDOI entry points. Customizations should treat the package as an internal implementation detail subject to change across releases such as 12.1.1 and 12.2.2.
-
PACKAGE: APPS.PO_PDOI_LINE_LOC_PROCESS_PVT
12.1.1
-
PACKAGE: APPS.PO_PDOI_LINE_LOC_PROCESS_PVT
12.2.2
-
APPS.PO_PDOI_LINE_LOC_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.2.2
-
APPS.PO_PDOI_LINE_LOC_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.1.1
-
PACKAGE BODY: APPS.PO_PDOI_LINE_LOC_PROCESS_PVT
12.1.1
-
PACKAGE BODY: APPS.PO_PDOI_LINE_LOC_PROCESS_PVT
12.2.2
-
APPS.PO_PDOI_LINE_LOC_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.2.2
-
APPS.PO_PDOI_LINE_LOC_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.1.1