Search Results pa_alloc_source_lines




Overview

The PA_ALLOC_SOURCE_LINES table is a core data structure within the Oracle E-Business Suite Projects (PA) module, specifically for versions 12.1.1 and 12.2.2. It functions as the detailed repository for defining the source of transactions to be processed by an allocation rule. Each record in this table represents a specific source line that qualifies which project-related expenditure items, such as labor, expenses, or supplier invoices, are selected for allocation. The table's primary role is to store the granular criteria that, when combined with an allocation rule's header information, determines the pool of costs to be distributed to target projects or tasks.

Key Information Stored

The table's structure is designed to capture the linkage between an allocation rule and the specific source transactions it governs. Its primary key is a composite of RULE_ID and LINE_NUM, ensuring unique source line definitions per rule. Key columns include RULE_ID, which joins to the PA_ALLOC_RULES_ALL table to identify the parent allocation rule, and LINE_NUM, which sequences multiple source lines. Critical foreign key columns are PROJECT_ID and TASK_ID, which tie the source line to a specific project and optional task from the PA_PROJECTS_ALL and PA_TASKS tables, respectively. Other significant columns typically include criteria for transaction types, expenditure categories, dates, and organizational units, though the specific column list is defined by the application's data model.

Common Use Cases and Queries

This table is central to allocation setup, execution, and audit. Common use cases involve analyzing the source criteria for existing allocation rules, troubleshooting allocation runs that did not capture expected transactions, and generating reports on allocation rule definitions. A fundamental query retrieves all source lines for a specific rule to understand its scope:

  • SELECT line_num, project_id, task_id FROM pa_alloc_source_lines WHERE rule_id = <RULE_ID> ORDER BY line_num;

For auditing, a join to the PA_ALLOC_RUN_SOURCES table can trace which source transactions were actually processed in a historical allocation run:

  • SELECT ars.* FROM pa_alloc_run_sources ars, pa_alloc_source_lines asl WHERE ars.rule_id = asl.rule_id AND ars.line_num = asl.line_num AND ars.alloc_run_id = <RUN_ID>;

Related Objects

PA_ALLOC_SOURCE_LINES has integral relationships with several key objects in the Projects module. Its primary parent table is PA_ALLOC_RULES_ALL, which holds the rule header. It references master data tables PA_PROJECTS_ALL and PA_TASKS to define the source project and task. Crucially, it has a one-to-many relationship with the PA_ALLOC_RUN_SOURCES table, which stores the actual transaction identifiers (e.g., expenditure item IDs) that satisfied the source line criteria during a specific allocation execution. This relationship is enforced via a foreign key from PA_ALLOC_RUN_SOURCES back to the primary key columns (RULE_ID, LINE_NUM) of PA_ALLOC_SOURCE_LINES.