Search Results insert_changes




Overview

APPS.PO_COMPARE_REVISIONS is a PL/SQL package body in Oracle E-Business Suite Purchasing that supports the "Compare Revisions" feature, which allows users to view differences between two revisions of a document (or between versions of a related purchasing entity). The package reads archived copies of purchasing tables and current purchasing tables, determines what changed between revisions, and stores the resulting difference records in the temporary table ICX_PO_REVISIONS_TEMP, from which the comparison UI renders the results. It also provides a set of utility resolution functions used to translate stored foreign keys into meaningful display values (item numbers, hazard classes, payment terms, buyers, vendor contacts, locations, and UN numbers).

The user search term "c_item_id" relates to the item identifier column used across the comparison logic; the package resolves item identifiers through GET_ITEM_NUMBER, which maps the stored item id to a displayable item number using MTL_SYSTEM_ITEMS.

Key Procedures and Functions

Tables Accessed

The package reads archived revisions from PO_HEADERS_ARCHIVE, PO_LINES_ARCHIVE, PO_LINE_LOCATIONS_ARCHIVE, PO_RELEASES_ARCHIVE, and PO_DISTRIBUTIONS_ARCHIVE, and compares them against the corresponding current tables PO_HEADERS, PO_LINES, PO_LINES_ALL, and PO_LINE_LOCATIONS_ALL. Difference output is written to ICX_PO_REVISIONS_TEMP. Resolution functions query MTL_SYSTEM_ITEMS, PO_HAZARD_CLASSES, PO_UN_NUMBERS, AP_TERMS, and FINANCIALS_SYSTEM_PARAMETERS to translate identifiers into display values.

Usage Notes

PO_COMPARE_REVISIONS is invoked primarily through the Purchasing "Compare Revisions" user interface in Oracle EBS 12.1.1 and 12.2.2, which calls the COMPARE_* routines to populate the temporary table and then reads ICX_PO_REVISIONS_TEMP for display. The PURGE procedure is normally scheduled as a concurrent program to remove stale comparison records. The package is referenced by five other packages, and the resolution functions may also be called from custom code needing the same display translations.