Search Results po_lines_interface




Overview

PO_LINES_INTERFACE is the open-interface staging table in the Oracle Purchasing (PO) module that holds purchase order line, shipment, and line-location attributes prior to validation and import into the production purchasing tables. It resides in the PO schema and is classified as VALID in EBS 12.1.1 and 12.2.2. Records are loaded by external sources — supplier portals, EDI/XML transactions, legacy system conversions, blanket agreement mass loads, or custom concurrent programs — and are subsequently processed by the Purchasing Documents Open Interface (PDOI) to create or update rows in PO_HEADERS_ALL, PO_LINES_ALL, PO_LINE_LOCATIONS_ALL, and PO_DISTRIBUTIONS_ALL.

The table is wide, carrying 256 documented columns, reflecting the full attribute set required to construct a PO line: item and revision information, pricing, UOM and dual-UOM data, receiving and invoicing controls, tax attributes, contract terms, and 15+15+15 sets of descriptive flexfield columns at the line, shipment, and item levels. Under the heuristic Data Vault classification derived from the FK structure, this object is modeled as a standalone table; in Data Vault terms it is best treated as a staging or raw satellite rather than a natural hub or link, since its rows are transient and exist only between the load and the import run.

Key Information Stored

The surrogate primary key is INTERFACE_LINE_ID, enforced by the unique index PO_LINES_INTERFACE_U1. This is the only documented business-key candidate; it is a system-generated identifier with no external business meaning, and it is the column used by the interface processor to correlate each line with its interface header.

The principal business columns include:

Common Use Cases and Queries

Typical scenarios include bulk-loading blanket agreements, migrating open POs during an implementation, and receiving supplier-generated orders by EDI. The most frequent diagnostic query validates that header and line staging rows agree before the import runs:

  • Count orphaned lines: SELECT l.INTERFACE_LINE_ID FROM PO_LINES_INTERFACE l WHERE NOT EXISTS (SELECT 1 FROM PO_HEADERS_INTERFACE h WHERE h.INTERFACE_HEADER_ID = l.INTERFACE_HEADER_ID);
  • Locate a specific batch by group: SELECT INTERFACE_LINE_ID, LINE_NUM, ITEM, QUANTITY, UNIT_PRICE FROM PO_LINES_INTERFACE WHERE GROUP_CODE = :group_code ORDER BY LINE_NUM;
  • Trace a source request: SELECT * FROM PO_LINES_INTERFACE WHERE REQUEST_ID = :request_id; — useful for diagnosing a failed PDOI run.

Reporting use cases center on reconciliation: comparing staged quantities and prices against the final PO_LINES_ALL values after import, and identifying rows that failed validation because they were rejected by the interface and never deleted.

Related Objects