Search Results derive_lines
Overview
APPS.PO_PDOI_LINE_PROCESS_PVT is a private (PVT classification) PL/SQL package within the Oracle Purchasing module that supports the Processing Defaults, Open, and Interface (PDOI) subsystem of Oracle E-Business Suite. This package is the workhorse for line-level processing during the inbound transformation of purchasing document data from open interface tables into the base transactional tables. Its core business function is to take raw interface rows staged for purchase orders, purchase agreements, and quotations, and to derive, default, validate, and write those lines to the appropriate destination tables.
The PDOI architecture separates public entry points from private implementation packages. PO_PDOI_LINE_PROCESS_PVT is one such private package; it is invoked by the public orchestration layer (principally PO_PDOI_MAINPROC_PVT) rather than called directly by end-user code. It relies on PO_PDOI_TYPES for the PL/SQL record and collection type definitions that carry interface line data between processing stages, and on DBMS_SQL for dynamic SQL handling where column sets are variable.
Key Procedures and Functions
The package exposes fourteen documented procedures that map to discrete stages of the line-level PDOI pipeline:
- REJECT_DUP_LINES_FOR_SPO — identifies and rejects duplicate lines when processing standard purchase orders.
- REJECT_INVALID_ACTION_LINES — rejects interface lines whose action is not valid for the target document type.
- OPEN_LINES — opens lines that have passed initial screening, making them available to downstream processing.
- FETCH_LINES — retrieves interface line records for processing, typically batching against a parent header.
- DERIVE_LINES — derives line values from parent header and item source data.
- DERIVE_LINES_FOR_UPDATE — performs derivation logic specifically for lines being updated rather than newly created.
- DEFAULT_LINES — applies defaulting rules to line attributes not supplied on the interface record.
- DEFAULT_LINES_FOR_UPDATE — applies defaulting rules for lines in an update action.
- VALIDATE_LINES — enforces business validation rules against derived and defaulted lines.
- MATCH_LINES — matches interface lines to existing document lines for update scenarios.
- CHECK_LINE_LOCATIONS — validates line location and shipment scheduling data.
- UPDATE_LINE_INTF_TBL — writes processed results back to the interface table, recording error and status information.
- UNIQUENESS_CHECK — confirms that a line/attribute combination does not conflict with existing data.
- SPLIT_LINES — splits a single interface line into multiple destination lines where quantities or schedules require it.
Tables Accessed
The package references a broad set of tables via APPS synonyms. On the master data side it reads MTL_SYSTEM_ITEMS, MTL_SYSTEM_ITEMS_KFV, MTL_SYSTEM_ITEMS_TL, and MTL_ITEM_TEMPLATES to resolve item attributes and defaulting templates, MTL_CATEGORIES_KFV and MTL_ITEM_CATEGORIES to resolve category assignments, MTL_UNITS_OF_MEASURE for unit-of-measure validation, and PER_JOBS and PER_JOBS_TL for job-related defaults. On the transactional side it works with PO_HEADERS, PO_HEADERS_ALL, and PO_HEADERS_DRAFT_ALL to reference parent document and draft information during derivation and validation, PO_HEADERS_INTERFACE for the staged header context, and PO_ATTR_VALUES_TLP_INTERFACE for descriptive-flexfield attribute values associated with interface lines.
Usage Notes
This package is not a public API and should not normally be called directly from custom code. It is invoked through the PDOI concurrent processing flow, most directly by PO_PDOI_MAINPROC_PVT, which sequences header and line processing during the PO PDOI concurrent program run. Oracle Forms-based document entry does not call this package directly; import operations reach it through the standard open interface path. Because it is a private package, its signature may change between releases, and any custom code that references it should be treated as unsupported.
-
PACKAGE: APPS.PO_PDOI_LINE_PROCESS_PVT
12.1.1
-
PACKAGE: APPS.PO_PDOI_LINE_PROCESS_PVT
12.2.2
-
APPS.PO_PDOI_LINE_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.1.1
-
APPS.PO_PDOI_LINE_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.2.2
-
APPS.PO_PDOI_LINE_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.2.2
-
APPS.PO_PDOI_LINE_PROCESS_PVT dependencies on PO_PDOI_TYPES
12.1.1
-
PACKAGE BODY: APPS.PO_PDOI_LINE_PROCESS_PVT
12.1.1
-
PACKAGE BODY: APPS.PO_PDOI_LINE_PROCESS_PVT
12.2.2