Goals Tables in Oracle HCM

Share

Goals Tables in Oracle Fusion HCM

In any Oracle Fusion HCM implementation, understanding Goals tables in Oracle Fusion HCM is critical for reporting, integrations, and analytics. Whether you’re building OTBI reports, extracting data through BI Publisher, or integrating with external performance systems, knowing where and how goal data is stored can save hours of troubleshooting and design effort.

This blog provides a deep, consultant-level understanding of the Goals data model in Oracle Fusion (26A), including key tables, relationships, and real-world usage.


What are Goals Tables in Oracle Fusion HCM?

Goals in Oracle Fusion HCM are part of the Performance Management module, where employees and managers define, track, and evaluate performance objectives.

From a technical perspective, goals are stored across multiple tables in the Fusion schema. These tables capture:

  • Goal definitions
  • Goal plans
  • Assignments to employees
  • Progress tracking
  • Measurement and evaluation data

Unlike simple transactional tables, Goals data is highly relational, meaning multiple tables must be joined to get meaningful insights.


Why Understanding Goals Tables is Important

In real implementations, consultants frequently work with Goals tables for:

  • Custom reports (BI Publisher / OTBI)
  • Data migration and conversions
  • Integrations with third-party systems
  • Performance dashboards
  • Audit and compliance reporting

Without understanding the underlying tables, extracting correct data becomes difficult.


Key Goals Tables in Oracle Fusion HCM

Below is a structured breakdown of the most important tables used in Goals Management.

1. HRA_GOALS

This is the primary table for storing goal details.

Key Columns:

Column NameDescription
GOAL_IDUnique identifier for the goal
NAMEGoal name
DESCRIPTIONGoal description
START_DATEGoal start date
TARGET_COMPLETION_DATEExpected completion
STATUS_CODEGoal status
PRIORITY_CODEPriority level

👉 This is the first table you query when working with goals.


2. HRA_GOAL_PLANS

Stores information about goal plans assigned to employees.

Column NameDescription
GOAL_PLAN_IDUnique plan ID
NAMEPlan name
START_DATEPlan start
END_DATEPlan end

👉 Helps group multiple goals under a structured plan.


3. HRA_GOAL_PLAN_ASSIGNMENTS

Maps goal plans to employees.

Column NameDescription
GOAL_PLAN_ASSIGNMENT_IDAssignment ID
PERSON_IDEmployee ID
GOAL_PLAN_IDPlan reference

👉 Critical table to identify which employee has which goal plan.


4. HRA_GOAL_ASSIGNMENTS

This table links goals to employees.

Column NameDescription
GOAL_ASSIGNMENT_IDUnique ID
GOAL_IDGoal reference
PERSON_IDEmployee ID

👉 Used heavily in reporting to fetch employee-level goals.


5. HRA_GOAL_MEASUREMENTS

Stores goal progress and measurement data.

Column NameDescription
MEASUREMENT_IDUnique ID
GOAL_IDGoal reference
ACTUAL_VALUEActual progress
TARGET_VALUEExpected value

👉 Useful for KPI tracking and analytics.


6. HRA_EVALUATIONS (Indirectly Related)

While not a pure goals table, this stores performance evaluation data, often linked with goals.


Real-World Implementation Use Cases

Use Case 1: Performance Dashboard

A client wanted a dashboard showing:

  • Employee goals
  • Completion percentage
  • Overdue goals

Solution:

  • HRA_GOALS → Goal details
  • HRA_GOAL_ASSIGNMENTS → Employee mapping
  • HRA_GOAL_MEASUREMENTS → Progress

👉 Combined using BI Publisher.


Use Case 2: Integration with External PMS Tool

An organization used a third-party performance system.

Requirement:
Export all goals nightly.

Solution:

  • Extract from HRA_GOALS and HRA_GOAL_ASSIGNMENTS
  • Push via integration

👉 Implemented using scheduled extract.


Use Case 3: Audit Compliance Reporting

Audit team required:

  • Who created goals
  • When modified
  • Status changes

Solution:

  • Use WHO columns (CREATED_BY, LAST_UPDATE_DATE)
  • Combine with goal tables

Data Model Relationship (Conceptual Flow)

Understanding relationships is key.

 
HRA_GOAL_PLANS

HRA_GOAL_PLAN_ASSIGNMENTS

HRA_GOAL_ASSIGNMENTS

HRA_GOALS

HRA_GOAL_MEASUREMENTS
 

👉 Always join using:

  • GOAL_ID
  • PERSON_ID
  • GOAL_PLAN_ID

Prerequisites Before Working with Goals Tables

Before querying or building reports:

  • Access to Fusion database views (secured views)
  • Knowledge of:
    • PER_ALL_PEOPLE_F (Employee data)
    • PER_PERSON_NAMES_F
  • Understanding of date-effective tables
  • Proper roles (BI / SQL access)

Step-by-Step: Querying Goals Data (Practical Example)

Step 1 – Identify Employee

Use:

 
SELECT PERSON_ID, PERSON_NUMBER
FROM PER_ALL_PEOPLE_F;
 

Step 2 – Fetch Assigned Goals

 
SELECT G.NAME, G.DESCRIPTION, GA.PERSON_ID
FROM HRA_GOALS G
JOIN HRA_GOAL_ASSIGNMENTS GA
ON G.GOAL_ID = GA.GOAL_ID;
 

Step 3 – Add Goal Plan Information

 
SELECT GP.NAME, G.NAME
FROM HRA_GOAL_PLANS GP
JOIN HRA_GOAL_PLAN_ASSIGNMENTS GPA
ON GP.GOAL_PLAN_ID = GPA.GOAL_PLAN_ID;
 

Step 4 – Add Measurement Data

 
SELECT G.NAME, GM.ACTUAL_VALUE, GM.TARGET_VALUE
FROM HRA_GOALS G
JOIN HRA_GOAL_MEASUREMENTS GM
ON G.GOAL_ID = GM.GOAL_ID;
 

Step 5 – Final Combined Query

In real projects, consultants combine all:

 
SELECT
P.PERSON_NUMBER,
G.NAME AS GOAL_NAME,
GM.ACTUAL_VALUE,
GM.TARGET_VALUE
FROM PER_ALL_PEOPLE_F P
JOIN HRA_GOAL_ASSIGNMENTS GA ON P.PERSON_ID = GA.PERSON_ID
JOIN HRA_GOALS G ON GA.GOAL_ID = G.GOAL_ID
LEFT JOIN HRA_GOAL_MEASUREMENTS GM ON G.GOAL_ID = GM.GOAL_ID;
 

Testing the Data Extraction

Test Scenario

Employee: EMP1001
Goal: Increase Sales by 20%

Expected Output

FieldValue
Goal NameIncrease Sales
Target20%
Actual15%
StatusIn Progress

Validation Checks

  • Goal assigned correctly
  • Dates within plan range
  • Measurement values populated

Common Implementation Challenges

1. Missing Data in Reports

Cause:
Incorrect joins between tables.

Solution:
Always validate relationships using GOAL_ID and PERSON_ID.


2. Duplicate Records

Cause:
Multiple assignments or plan versions.

Solution:
Use DISTINCT or filter by active records.


3. Date-Effective Issues

Fusion tables often store historical data.

Tip:
Always filter using:

 
SYSDATE BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
 

4. Security Restrictions

Fusion uses secured views.

Solution:
Use delivered OTBI subject areas if direct SQL is restricted.


Best Practices from Real Projects

1. Always Use Secured Views

Instead of base tables, use:

  • HRA_GOALS_VL
  • Secured OTBI subject areas

2. Avoid Hardcoding Status Codes

Statuses can vary by implementation.


3. Optimize Queries

  • Use indexed columns (GOAL_ID, PERSON_ID)
  • Avoid unnecessary joins

4. Validate with Functional Team

Technical data must match:

  • UI screens
  • Business expectations

5. Use BI Publisher for Complex Reports

For formatted reports, BI Publisher is preferred over OTBI.


Frequently Asked Questions (FAQs)

1. Which is the main table for goals in Oracle Fusion HCM?

The primary table is HRA_GOALS, which stores core goal details like name, description, and status.


2. How are goals linked to employees?

Through the HRA_GOAL_ASSIGNMENTS table using PERSON_ID.


3. Where is goal progress stored?

Goal progress is stored in HRA_GOAL_MEASUREMENTS, including actual vs target values.


Summary

Understanding Goals tables in Oracle Fusion HCM is essential for any consultant working on reporting, integrations, or analytics.

Key takeaways:

  • HRA_GOALS is the core table
  • Multiple relational tables are involved
  • Proper joins are critical
  • Real-world use cases include dashboards, integrations, and audits

In real implementations, consultants spend significant time designing queries around these tables. Mastering this data model gives you a strong advantage in both projects and interviews.


For deeper technical details, refer to Oracle official documentation:
https://docs.oracle.com/en/cloud/saas/index.html


Share

Leave a Reply

Your email address will not be published. Required fields are marked *