Search Results po_pdoi_price_diff_process_pvt




Overview

PO_PDOI_PRICE_DIFF_PROCESS_PVT is a private PL/SQL package in the APPS schema that supports the Oracle Purchasing "Process Document or Open Interface" (PDOI) framework. Its specific business function is the handling of price difference lines during the import and processing of purchasing documents. When buyers or interface programs supply purchase orders, quotations, or blanket agreements through the PO_PDOI_* interface tables, discrepancies between expected and actual unit prices may exist. This package provides the internal logic to open, retrieve, default, and validate those price difference records so that downstream processing can accept, adjust, or reject the affected lines. As a PVT (private) package, it is not part of the published Oracle EBS open interface API surface; it is invoked exclusively by other packages within the PDOI subsystem, principally PO_PDOI_MAINPROC_PVT. The package depends on APPS.PO_PDOI_TYPES for shared record and collection type definitions and on the SYS.STANDARD package, and is compiled into the APPS schema with VALID status.

Key Procedures and Functions

Four documented procedures constitute the package interface:

  • OPEN_PRICE_DIFFS — Establishes or positions the processing context for price difference data, forming a cursor or working set that subsequent steps operate against.
  • FETCH_PRICE_DIFFS — Retrieves price difference rows from interface data, populating the internal structures consumed by the remaining procedures.
  • DEFAULT_PRICE_DIFFS — Applies defaulting rules to price difference attributes where values are absent, consistent with the standard Purchasing defaulting hierarchy.
  • VALIDATE_PRICE_DIFFS — Performs validation of price difference entries, identifying conditions that should raise errors into the PO interface error table.

The procedures are intentionally not documented as public APIs; no parameter lists are published in ETRM, and callers should not depend on their signatures across releases.

Tables Accessed

The package reads and writes through APPS synonyms. Price difference interface data is held in PO_PRICE_DIFF_INTERFACE, while the surrounding document data is drawn from PO_HEADERS_INTERFACE, PO_LINES_INTERFACE, and PO_LINE_LOCATIONS_INTERFACE. Because the PDOI framework supports both interface import and on-screen document editing, the package also touches the draft and base tables PO_HEADERS_ALL, PO_HEADERS_DRAFT_ALL, and PO_LINES_DRAFT_ALL. Validation failures are recorded in PO_INTERFACE_ERRORS. DBMS_SQL and PLITBLM are referenced for dynamic SQL and PL/SQL table manipulation. These dependencies confirm that the package operates strictly within the PDOI pipeline rather than on already-processed purchasing documents.

Usage Notes

PO_PDOI_PRICE_DIFF_PROCESS_PVT is invoked indirectly whenever the PDOI framework processes documents containing price difference information. This occurs during concurrent program runs of the Purchasing Documents Open Interface (import from external systems), during the "Process Document" flow initiated from the Purchasing forms, and within correction or re-processing cycles where previously errored interface rows are resubmitted. It is referenced by PO_PDOI_MAINPROC_PVT and recursively by itself, and it references PO_PDOI_TYPES. Because the package is private, customizations should not call it directly; instead, integrators should populate the documented interface tables and invoke the supported open interface or PDOI entry points. Any modification to this package's logic is overwritten during patching and is not supported by Oracle.