Search Results po_poxreqim_xmlp_pkg




Overview

PO_POXREQIM_XMLP_PKG is an Oracle E-Business Suite PL/SQL package owned by the APPS schema. It is an XML Publisher (BI Publisher) report logic package associated with the Purchasing requisition import process. The name follows the standard Oracle naming convention for XML Publisher report programs, where the "XMLP" suffix denotes that the package supports an XML Publisher-based concurrent program rather than a classic Oracle Reports (.rdf) executable. The "POXREQIM" component identifies the business area as Purchasing (PO), the requester or requisition function (REQ), and Import (IM), indicating that the package supports the Requisition Import concurrent program that loads requisition data into Oracle Purchasing from interface tables.

The package is classified as OTHER within the ETRM documentation, meaning it is not a public or private application programming interface intended for external callers, but an internal supporting artifact for a concurrent program. Its primary business purpose is to provide the before-report and after-report processing hooks that the XML Publisher concurrent program framework invokes when the Requisition Import report is executed.

Key Procedures and Functions

The ETRM metadata documents two procedures within this package:

  • BEFOREREPORT — This is the standard XML Publisher pre-report hook. It executes prior to the generation of the report data set. In the context of Requisition Import, it is used to perform initialization and setup logic required before the report query runs. Oracle XML Publisher report packages conventionally implement BEFOREREPORT to establish session context, resolve and bind parameters, set up any needed global or package-level state, and prepare the environment for data extraction.
  • AFTERREPORT — This is the companion post-report hook, executed after the report data has been generated. It is typically used for cleanup, finalization, or post-processing activities that must occur once the report output has been produced.

Both procedures are invoked automatically by the concurrent program framework. Their parameter lists are not documented in the ETRM metadata and are therefore not reproduced here; developers should inspect the package body in the APPS schema for the authoritative signatures.

Tables Accessed

The ETRM documentation identifies three interface tables accessed via APPS synonyms:

  • PO_REQUISITIONS_INTERFACE — The primary open interface table for requisition import. Rows staged here are validated, defaulted, and ultimately converted into actual requisition records. The package logic reads and processes this table to drive the report and import behavior.
  • PO_REQ_DIST_INTERFACE — The corresponding distribution interface table, holding the accounting distribution lines associated with each staging requisition record. It is used in conjunction with the requisition interface table to supply complete requisition data.
  • PO_INTERFACE_ERRORS — The error repository for the requisition import process. When records in the interface tables fail validation or processing, error messages are recorded here. The package accesses this table to surface error information, particularly in the after-report context.

Usage Notes

PO_POXREQIM_XMLP_PKG is not invoked directly by end users or custom code. It is called implicitly by the Oracle XML Publisher concurrent program framework when the Requisition Import report is submitted from the Purchasing responsibility. The framework invokes BEFOREREPORT before running the report's data model and AFTERREPORT upon completion.

Per the ETRM metadata, the package is referenced by zero other packages, confirming its role as a leaf-level, report-specific artifact rather than a shared utility. It depends on SYS.STANDARD and the APPS schema synonyms for the tables listed above. Because the package is marked VALID, it is compiled and operational in the documented environment. Customizations should be avoided in favor of Oracle-supported extension points, and any diagnostic review should begin in the package body within the APPS schema.