Search Results g_program_application_id




Overview

PA_TIEBACK_ADJ_COSTS is a public PL/SQL package owned by the APPS schema in Oracle E-Business Suite, classified under Oracle Projects (PA). Its business purpose is to reconcile and tie back adjusted supplier cost transactions — primarily invoice-related distributions originating in Oracle Payables and receiving transactions from Oracle Purchasing — to the corresponding Oracle Projects expenditure and cost distribution records. In the Oracle EBS 12.1.1 and 12.2.2 architecture, cost flows from Payables and Purchasing into Projects through the Transaction Import and Cost Distribution processes. When those source documents are adjusted after the fact (for example, an invoice distribution is corrected or a receipt transaction is modified), the Projects-side cost records may become out of sync. PA_TIEBACK_ADJ_COSTS exists to detect and reconcile these adjustments, producing an output report that identifies what was tied back and whether the operation succeeded or failed.

The package is declared with AUTHID CURRENT_USER, meaning its database privileges are resolved against the invoking schema rather than the definer. It exposes five documented program units: IS_ADJUSTED, TIEBACKADJCOSTS, INIT, LOG_MESSAGE, and WRITE_OUTPUT. A header comment dated 2002 indicates the file (PAXAPJTS.pls) has remained essentially stable across releases, which is consistent with its role as an internal reconciliation utility rather than a feature-rich public API.

Key Procedures and Functions

  • IS_ADJUSTED — A Boolean-style function returning VARCHAR2 that determines whether a given supplier cost transaction has been adjusted. It examines a purchase order distribution, transaction identifier, parent transaction identifier, and transaction type. This is the core predicate that drives the tieback logic, allowing the package to isolate only those cost records requiring reconciliation.
  • TIEBACKADJCOSTS — The main driver procedure. It takes an OUT return status and an OUT error message code and performs the actual reconciliation of adjusted costs, presumably iterating candidate transactions and writing results to output.
  • INIT — An initialization routine that sets up package-level state. It is associated with the package globals G_REQUEST_ID, G_PROGRAM_APPLICATION_ID, G_PROGRAM_ID, and G_DEBUG_MODE, which strongly suggests the package runs as a concurrent program and INIT captures the concurrent request context.
  • LOG_MESSAGE — A utility that accepts a message string and records diagnostic output, gated by the G_DEBUG_MODE flag.
  • WRITE_OUTPUT — Produces the final report output, returning status and error message codes to the caller, typically the concurrent manager.

The global G_PROGRAM_APPLICATION_ID — the term the user searched — is the concurrent program application identifier populated during INIT, used to identify which application owns the running concurrent request so that the log and output files are filed correctly.

Tables Accessed

The package reads and writes against APPS synonyms including AP_INVOICES_INTERFACE, AP_INVOICE_LINES_INTERFACE, AP_INVOICE_DISTRIBUTIONS, RCV_TRANSACTIONS, PA_COST_DISTRIBUTION_LINES, PA_COST_DISTRIBUTION_LINES_ALL, and PA_EXPENDITURE_ITEMS_ALL. The AP and RCV tables supply the adjusted source transactions; the PA tables hold the corresponding project cost and expenditure records that must be tied back. DUAL and the PLITBLM utility table support ancillary operations such as lookups and logging.

Usage Notes

Because the package references concurrent program globals and returns a status plus error message via OUT parameters, it is almost certainly invoked from a concurrent program (likely a report or reconciliation request) in Oracle Projects. It is not documented as referenced by any other package, so it is not a shared dependency of the standard cost interface. Customizations that need to re-run tieback logic after manual Payables or Purchasing corrections can call TIEBACKADJCOSTS directly, but must first populate package state through INIT and observe the G_DEBUG_MODE flag to capture LOG_MESSAGE diagnostics.