Search Results process_val_type_errors




Overview

PO_PDOI_ERR_UTL is a utility package in the APPS schema that centralizes error and warning handling for the Oracle Purchasing "PDOI" (Purchasing Document Open Interface) processing framework. The PDOI modules are responsible for importing purchase order and release data from external sources into the interface tables (PO_HEADERS_INTERFACE, PO_LINES_INTERFACE, PO_LINE_LOCATIONS_INTERFACE, PO_DISTRIBUTIONS_INTERFACE, and related structures), validating that data, and converting it into the base Purchasing tables. Because this import pipeline is executed across many parallel processing packages, a single shared utility is required to record processing outcomes consistently.

PO_PDOI_ERR_UTL provides that shared service. It abstracts the mechanics of writing records into PO_INTERFACE_ERRORS, formatting messages, and propagating validation results so that every PDOI processing package reports errors, warnings, and fatal conditions in a uniform way. The ETRM metadata lists the package as VALID and classified as an "OTHER" API, meaning it is an internal supporting utility rather than a public, externally supported interface. It depends on PO_PDOI_TYPES, PO_TBL_NUMBER, and PO_VALIDATION_RESULTS_TYPE, and is referenced by ten other PDOI packages, confirming its role as a common foundation of the interface error-handling layer.

Key Procedures and Functions

The documented package exposes five procedures and functions:

  • ADD_ERROR — Records a standard error condition against the interface record being processed. This is the general-purpose entry point used throughout the PDOI packages when data fails a business validation.
  • ADD_WARNING — Records a non-fatal warning. Warnings flag conditions that do not prevent the record from being processed, allowing the import to continue while notifying the user of potential data issues.
  • ADD_FATAL_ERROR — Records a fatal error that prevents the affected interface row from being converted. Fatal errors typically cause the record to be rejected during the PDOI run.
  • PROCESS_VAL_TYPE_ERRORS — Interprets a PO_VALIDATION_RESULTS_TYPE structure and writes the corresponding error entries. This allows validation routines that return a structured result set to be translated into interface error rows in a single call.
  • DERIVE_PARENT_INTERFACE_IDS — Determines and assigns the parent interface identifiers for a record, ensuring that errors logged against child entities (such as lines, shipments, or distributions) can be associated with the correct header-level interface record.

Parameter lists are not detailed in the available metadata and are therefore not reproduced here.

Tables Accessed

The package operates against the PDOI interface tables through APPS synonyms, as documented:

  • PO_INTERFACE_ERRORS — The primary target table. Error and warning entries are inserted here and later surfaced to users through the interface error inquiry.
  • PO_HEADERS_INTERFACE, PO_LINES_INTERFACE, PO_LINE_LOCATIONS_INTERFACE, PO_DISTRIBUTIONS_INTERFACE, PO_PRICE_DIFF_INTERFACE — Read to identify the interface record a message applies to and to resolve parent-child relationships for error attribution.
  • PO_SESSION_GT — A global temporary table used to carry session-level processing context, such as the current run or batch identifier.
  • DBMS_SQL and PLITBLM — Utilized for dynamic SQL and PL/SQL table manipulation where required by the utility logic.

Usage Notes

PO_PDOI_ERR_UTL is not intended to be called directly by end users or through a standalone form or concurrent program. It is invoked internally by the PDOI processing packages, including PO_PDOI_PREPROC_PVT, PO_PDOI_POSTPROC_PVT, PO_PDOI_HEADER_PROCESS_PVT, PO_PDOI_LINE_PROCESS_PVT, PO_PDOI_LINE_LOC_PROCESS_PVT, PO_PDOI_DIST_PROCESS_PVT, PO_PDOI_HEADER_GROUPING_PVT, PO_PDOI_MOVE_TO_DRAFT_TABS_PVT, PO_PDOI_PRICE_DIFF_PROCESS_PVT, and by itself. These packages execute within the PO Document Open Interface concurrent program and related import flows, which run in both EBS 12.1.1 and 12.2.2. Custom extensions that add validation logic to the PDOI pipeline may call the ADD_ERROR, ADD_WARNING, and ADD_FATAL_ERROR routines to maintain consistent error reporting, but such use should follow Oracle's documented internal conventions. Because the API classification is OTHER, Oracle does not guarantee backward compatibility of these signatures across releases.