Results for “pa_project_classes”

50+ results




AI-generated from documented ETRM metadata — verify critical details on the linked pages.

Overview

PA_PROJECT_CLASSES is a Projects (PA) module table that stores the class codes of class categories used to classify projects in Oracle E-Business Suite 12.1.1 and 12.2.2. Classification is a foundational mechanism in Oracle Projects: each project may be tagged against one or more class categories (for example, Project Type, Project Status, Industry, or Organization), and each category carries a controlled set of class codes. PA_PROJECT_CLASSES is the intersection object that records which class codes have been assigned to which project, effectively holding the project-to-classification relationship.

From a Data Vault modeling perspective, the metadata heuristic classifies this table as a link. This is a reasonable suggestion: the table sits between the PA_PROJECTS_ALL project entity and the PA_CLASS_CODES reference entity, resolving a many-to-many relationship. It carries descriptive and administrative attributes that could equally justify a satellite treatment, so implementers building a warehouse layer should treat the link classification as a starting point rather than a rigid prescription.

Key Information Stored

The table contains 29 documented columns. The most significant are:

The composite primary key (OBJECT_ID, OBJECT_TYPE, CLASS_CODE, CLASS_CATEGORY) is the surrogate identity, while the unique index PA_PROJECT_CLASSES_U1 (OBJECT_ID, OBJECT_TYPE, CLASS_CATEGORY, CLASS_CODE) supplies the business-key candidate prohibiting duplicate assignments of the same class code to the same object within a category.

Common Use Cases and Queries

Typical uses include reporting projects by type or status, validating that a project carries a required classification before integration or billing, and driving lookup-driven logic in extensions and concurrent programs.

Retrieving the classification of a project:

SELECT pc.project_id, pc.class_category, pc.class_code, pc.code_percentage
FROM   pa_project_classes pc, pa_projects_all p
WHERE  pc.project_id = p.project_id
AND    p.segment1 = :project_number;

Distinct projects belonging to a given class category:

SELECT DISTINCT project_id
FROM   pa_project_classes
WHERE  class_category = :category
AND    class_code = :class_code;

Because PA_PROJECTS_ALL is the primary consumer, most reporting joins will filter on PROJECT_ID for performance. Reports that must resolve class code descriptions typically join to PA_CLASS_CODES on CLASS_CODE and CLASS_CATEGORY, since PA_CLASS_CODES is the reference table with the human-readable meaning of each code.

Related Objects

  • PA_PROJECTS_ALL — The master project table; joined via PROJECT_ID. This is the primary parent of PA_PROJECT_CLASSES.
  • PA_CLASS_CODES — The reference table holding valid class codes per category; joined via CLASS_CODE (and CLASS_CATEGORY), providing code descriptions and enabled/disabled status.
  • PA_PROJECT_CLASSES_PK — The composite primary key enforcing uniqueness of the assignment tuple.
  • PA_PROJECT_CLASSES_U1 — Unique index supporting the business-key candidate; useful when applying deduplication logic in warehouse loads.
  • PA_PROJECT_TYPES_ALL — Related classification of projects; often used alongside PA_PROJECT_CLASSES when filtering or grouping by project type.
  • Oracle Projects APIs (for example, the Project Definition and class assignment APIs) — Programmatic interfaces that insert and update rows in PA_PROJECT_CLASSES, preserving the same validation rules enforced by the constraints above.

Together with PA_PROJECTS_ALL and PA_CLASS_CODES, PA_PROJECT_CLASSES forms the core classification backbone for projects in the PA module. Understanding its link-style structure and composite keys is essential for accurate reporting, integration, and data warehouse modeling.