Search Results process_suppinv_dtls1




Overview

APPS.PAAP_PWP_PKG is a PL/SQL package body owned by the APPS schema that supports Oracle E-Business Suite Payables functionality as it relates to supplier invoices processed against Project Accounting data. The package name and its documented routines indicate that it belongs to the Project Payables/Project Workbench processing family within ETRM (Enterprise Transaction Resource Management). Its primary business function is to process supplier invoice details, compute project currency amounts and project functional currency amounts, and manage the placement and release of Payables holds on supplier invoices associated with projects.

The package is classified as OTHER in the API classification scheme. Its header comments in the source confirm that it provides utility functions that return project functional currency code, exchange rate date, exchange rate type, exchange rate, and corresponding functional currency amounts. These values are used to convert and validate transaction amounts between the project currency and the project functional currency. The package also exposes the data processing entry points PROCESS_SUPPINV_DTLS and PROCESS_SUPPINV_DTLS1, which drive supplier invoice detail handling, and the hold management entry points PAAP_APPLY_HOLD and PAAP_RELEASE_HOLD.

Key Procedures and Functions

  • PROCESS_SUPPINV_DTLS1 — The procedure retrieved by the user's search. It processes supplier invoice detail records, forming part of the supplier invoice validation and distribution handling flow. It is one of two related detail-processing entry points, with PROCESS_SUPPINV_DTLS covering the companion logic. Their purpose is to iterate over supplier invoice distribution and line detail and to prepare the data required for subsequent project-related processing.
  • PROCESS_SUPPINV_DTLS — The companion supplier invoice detail processing routine. Together with PROCESS_SUPPINV_DTLS1, it constitutes the core data-handling logic of the package for supplier invoices.
  • GET_PROJ_CURR_AMT — Returns the project currency amount, using the project functional currency and project currency exchange information obtained through the package's private helper functions.
  • PAAP_RELEASE_HOLD — Releases holds that were previously applied to Payables invoices in the context of project-related invoice processing.
  • PAAP_APPLY_HOLD — Applies holds to Payables invoices when project-related validation or processing conditions require the invoice to be prevented from further progress.

Private helper functions declared in the package specification—Get_ProjFunc_Curr, Get_ProjFunc_RateDate, Get_ProjFunc_RateType, Get_ProjFunc_Rate, and Get_ProjFunc_Amt—supply the project functional currency code, rate date, rate type, exchange rate, and functional amount respectively. A package-level debug flag is initialised from the PA_DEBUG_MODE profile option, enabling diagnostic output when the profile is set to Y.

Tables Accessed

The package reads and writes Payables and Project Accounting data through APPS synonyms. Payables invoice data is sourced from AP_INVOICES_ALL, AP_INVOICE_DISTRIBUTIONS_ALL, AP_INVOICE_PAYMENTS_ALL, AP_PAYMENT_SCHEDULES_ALL, AP_PAYMENT_HIST_DISTS, and AP_PREPAY_APP_DISTS. Hold management uses AP_HOLDS_ALL. Project data is read from PA_PROJECTS_ALL, PA_TASKS, PA_EXPENDITURE_ITEMS_ALL, and PA_CUST_REV_DIST_LINES, with PA_DRAFT_INVOICE_ITEMS supporting draft invoice item processing. Currency conversion references come from GL_DAILY_CONVERSION_TYPES and GL_PERIOD_STATUSES, while FND_LOOKUP_VALUES supplies lookup codes used in validation. These tables support invoice-to-project matching, currency conversion, distribution handling, and hold application and release.

Usage Notes

Because PAAP_PWP_PKG is classified as OTHER rather than as a public API, it is intended for internal use by Oracle EBS modules and by controlled customisations. It is referenced by at least one other package, indicating that it is called as part of a larger processing chain rather than directly from a form or concurrent program. Typical invocation occurs during supplier invoice processing flows in Oracle Payables where project-related invoice details must be validated and converted, and where holds must be applied or released based on that validation. The PA_DEBUG_MODE profile option can be set to Y to enable diagnostic tracing of the package's helper functions. On EBS 12.1.1 and 12.2.2, the package remains an APPS-owned object and should be treated as subject to change during patching; custom code should avoid direct dependencies where possible.