Search Results pa_project_retentions




Overview

The PA_PROJECT_RETENTIONS table is a core data structure within the Oracle E-Business Suite Projects module (PA). It serves as the central repository for storing summarized retention balances for projects. Retentions are a standard contractual practice in project-based industries, where a percentage of an invoice or payment is withheld by the customer until the project reaches specific milestones or completion criteria. This table enables Oracle Projects to track the cumulative amounts withheld across different currencies and funding sources, providing essential financial data for project accounting, revenue recognition, and customer billing processes. Its role is critical for maintaining accurate project financials and ensuring compliance with contractual terms.

Key Information Stored

The table stores summarized retention balances, typically aggregated by key project dimensions. While the full column list is not detailed in the provided metadata, the foreign key relationships clearly indicate the essential identifiers and currency information it holds. The primary columns include PROJECT_ID, TASK_ID, and AGREEMENT_ID, which link the retention balance to a specific project, task, and funding agreement. Crucially, the table stores amounts in multiple currency contexts, as evidenced by columns like PROJFUNC_CURRENCY_CODE, PROJECT_CURRENCY_CODE, FUNDING_CURRENCY_CODE, and INVPROC_CURRENCY_CODE. These columns, linked to the FND_CURRENCIES table, allow the system to maintain retention balances in the project functional, project, funding, and invoicing currencies, supporting multi-currency operations and reporting.

Common Use Cases and Queries

The primary use case is generating retention reports and inquiries for project managers and accountants. Users can query this table to determine the total amount currently withheld for a project, broken down by funding agreement or task. This data feeds into standard Oracle Projects reports and is essential for reconciling project receivables. A common query pattern involves joining to related master tables to retrieve descriptive information. For example:

  • To view retention summaries for a specific project: SELECT * FROM pa_project_retentions WHERE project_id = <project_id>;
  • To view retentions with project and agreement details: SELECT p.segment1 project_number, a.agreement_number, pr.* FROM pa_project_retentions pr, pa_projects_all p, pa_agreements_all a WHERE pr.project_id = p.project_id AND pr.agreement_id = a.agreement_id;

This table is also integral to the retention release process, where balances are updated as retention conditions are met and payments are released.

Related Objects

PA_PROJECT_RETENTIONS has strong dependencies on several key master tables in the Projects and general ledger foundation, as defined by its foreign keys. The primary relationships are:

  • PA_PROJECTS_ALL: Provides the master project definition.
  • PA_TASKS: Provides the task structure within a project.
  • PA_AGREEMENTS_ALL: Provides the funding agreement details against which retentions are tracked.
  • FND_CURRENCIES (multiple links): Validates and provides attributes for the various currency codes used for retention amounts.

This table is likely referenced by various project accounting and invoicing views and is updated by the underlying retention calculation and processing logic within the Oracle Projects application.