Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Note
Add yourself as a Watcher to this page to be automatically emailed with any changes to this page.

Table of Contents

Warning

This page assumes you have read EAH Quick Start Guide

Overview


This view contains all of the basic core employee information.  Start here and then branch out if you are not finding the data you need.

EAH-Workforce-View includes data on employee job,position,salary information, and benefits eligibility for all employee types.


Critical Concepts


Appointments

Appointment fields do not exist in PPSUC Path.  There is not a 1 to 1 correlation of Appointment from PPS to UC Path.

Appointments that were created for a stipend no longer exist, they are now just part of an employee's additional pay for an existing job.

Please note, as we all adapt to the new processes with UC Path, our reports will also need to adapt.  That may mean removing fields that are no longer being used and adding new UC Path fields.

PPSEAH
APP_APPOINTMENT_TYPE_CODEEmployee Class / Employee Class Code
APP_APPOINTMENT_NUMBEREmployee Record
Appointment Start DateJob Code Start Date
Current Appointment Start DatePosition Start Date
Appointment End DateJob Expected End Date
AppointmentJob

Appointment Number

Equivalent field does not exist in UC Path.


Identity Fields

Identity data is loaded into EAH on a nightly basis and comes from a combination of:

  • Affiliates_safe_attributes
  • Rosetta_Stone
  • System
  • Employee
  • Building - Source Phone directory, managed by the TMS team.
  • IDCard_Lookup


Job Code Description, Position or Job Org Business Title

For Job Code Description, Position and Job Org Business Title: All three are managed within UCPath. Job Code Description is the origin. Position inherits the Job Code description upon position creation. Job Org Business Title inherits from position description when a Job record is created. It is a business decision to override the Position or Job Org Business Title with a more descriptive value. When the business overrides the position description, it flows through to the Job Org Business title. While UCSD HR does not train or tell departments to override the Job Org Business title, they can absolutely do so and HR has no control to stop them.


Job Indicator

UCPath delivers the field 'Job Indicator' to attribute an employee's workforce record as 'Primary' or 'Secondary'.


For predicable reporting results we desire each unique UCPath person to have exactly one 'Primary' workforce record for the current effective date, regardless of status.

For some edge cases, current workforce data in the ODS does not have exactly one primary job. Scenarios include, but are not limited to
- multiple job employees whose primary job is at a location other than UCSD
- some inactive employees
- some contingent workers

We calculate a primary job for these cases and pull it into the 'Job Indicator' field as 'Primary'. The Job Indicator Calculated field is for transparency to distinguish which Job Indicator values are assigned 'Primary' coming from UCPath vs 'Calculated' using our custom EAH logic.


Position Funding in CCOA

There are three CCOA codes in the Workforce View:

  • "Position Funding Default CCOA"
  • "Position Funding Default CCOA FinU Code"
  • "Position Funding Default CCOA FinU"

The view has logic to return exactly one position funding source in the event the employee’s position might be split-funded. If your requirements state that the Accruals must be split according to actual staged position funding, this solution is not going to work. In a split-funded scenario the view returns the single greatest percentage. If there are multiples with the greatest percentage (50/50, 40/40/20, etc), the choice of funding source from the greatest percentages is arbitrary. The view also looks at department-level default funding if the position funding is missing entirely. So you may also think of this field representing the ‘Primary’ funding source as much as a ‘Default’ funding source.


Furthermore, within the ‘stack’ of position funding data layers, the following row selection logic is always used within the view:

  • Current Effective Date
  • Max Effective Sequence Number
  • Max Budget Sequence Number


The "Position Funding Default CCOA" field is a data pattern representing a sequence of chartfields. Therefore, you can find a specific chartfield value based on the location of the data within the string as shown by this table:

Segment

UCPath Chartfield

CCOA Label

Length

1

OPERATING_UNIT

CCOA_Entity_Code

5

2

FUND_CODE

CCOA_Fund_Code

5

3

DEPTID_CF

CCOA_FinU_Code

7

4

ACCOUNT

CCOA_Account_Code

6

5

CLASS_FLD

CCOA_Funct_Code

3

6

PROGRAM_CODE

CCOA_Program_Code

3

7

CHARTFIELD3

CCOA_Location_Code

6

8

PROJECT_ID

CCOA_Project_Code

7

9

CHARTFIELD1

CCOA_Activity_Code

6

Also be advised the chartfield values represented in the string may be changed by downstream GL processing. The CCOA value selected by the view represents the actual value staged during position funding. In response to your concerns over the use of ‘default’ chartfield values, I would advise the business to review the values returned by the query for use of any obvious defaults. They requested the fields, they know their data.

Snapshots

How To Do Snapshot Reporting with AsOf Fields

Prebuilt Filters in Cognos and Tableau

Due to Tableau architecture limitations the pre-built filter sets in Cognos can not be pre-built in Tableau.  However developers can create the filters ad hoc as follows:

CognosTableau
Filter: Active EmployeeHR Status = 'Active' and Organizational Relationship = 'EMP'
Filter: Current Primary Active EmployeeJob AsOf Indicator Code = C and Job Effective Sequence Indicator Code = C and Job Indicator = 'Primary' and HR Status = 'Active' and Organizational Relationship = 'EMP'
Filter: Current Primary Active RecordJob AsOf Indicator Code = C and Job Effective Sequence Indicator Code = C and Job Indicator = 'Primary' and HR Status = 'Active'
Filter: Current Primary JobJob AsOf Indicator Code = C and Job Effective Sequence Indicator Code = C and Job Indicator = 'Primary'
Filter: Current RecordJob AsOf Indicator Code = C and Job Effective Sequence Indicator Code = C.
Filter: Job AsOf Indicator Code CurrentJob AsOf Indicator Code = C
Filter: Job Effective Sequence Indicator Code CurrentJob Effective Sequence Indicator Code = C
Filter: *HR Status Active*HR Status = Active (existing set)
Filter: *Organizational Relationship EMP*Organizational Relationship = EMP (existing set)
Filter: *Job Indicator Primary*Job Indicator = Primary (existing set)
Filter: Employee Status ActiveEmployee Status = Active


Steps to Take


Key Fields to Display

*Make Up the Primary Key

  • Employee ID*
  • Employee Record*
  • Job Action Effective Date (use in combination w/above depending on current or as of date requirements of your report)
  • Job Effective Sequence Number  (use in combination w/above depending on current or date requirements of your report)

Key Fields to Filter on

  • Job AsOf Indicator *= Values of Current, History, and Future in cases where there are Future positions or jobs in UCPath.
  • Job Effective Sequence Indicator *= Maximum is the current record for 1 row per empid and record number, Prior is previous record
  • Job Indicator *= Primary returns only the primary job when employee has concurrent jobs
  • Organizational Relationship - values EMP for Employees and CWR for Contingent Workers
  • HR Status - Values of Active and Inactive
  • Employee Status - 6 Values of Active Paid Leave of Absence, Retired, etc. 
  • Job Code = CONV are converted records that can be filtered out if not needed
  • Employee Class - Values of Academic, Staff, Student etc.
  • Position Pool - Values of WS-Federal, WS-Math/Reading Tutors
  • Job Action has values - Termination, Hire, Rehire etc.
  • Job Action Reason has values - Rehire, Academic Concurrent Hire etc.
  • Union Code has values - Service, Technical, Academic Researchers etc.
  • Employee Type has values - Salaried, hourly etc.
  • Salary Plan has values - RX Salary Plan, Career Tracks etc.
  • FLSA Status has values - Exempt, Nonexempt
  • Occupation Sub Group has values - Managers, Facilities, Contingent Workers etc.
  • Eligibility Configuration codes
  • Class Indicator has 5 values of Academic, Senior Management Group etc.
  • Full/Part Time Indicator has values - Variable, Fixed etc.
  • Probation Status has values - Within Probation, probation Completed etc.
  • Salary Grade has values - Professor, Assistant Professor, Technical Assistant etc.
  • Location Use Type

"*" These 3 field filters would return 1 row per person with the indicated filter values.

Granularity

Granularity is the scale or level of detail present in a set of data.  It identifies where levels of uniqueness exists in the data.  The data lives in the view at the lowest level, but each BI tool totals the levels differently.

Please note:  The Level of Detail (LOD) calculations listed here for Tableau developers are a baseline and do not necessary include all of the LOD equations needed for your report.


LevelKey (uniqueness / group by)Measures
1EmployeeEmployee ID
2Employee RecordEmployee ID + Employee Record
3Job Action Effective DateEmployee ID + Employee Record + Job Action Effective Date
4LowestEmployee ID + Employee Record + Job Action Effective Date + Job Effective Sequence Number


Granularity Example 1

This employee was hired on Feb 22, 2021 and four items were updated.  Since then the employee record has been updated on each 'Job Action Effective Date'.  The current employee information is highlighted in yellow.

Granularity Example 2

This employee record was converted from PPS to UCPath for reporting purposes.

Granularity Example 3

This employee record was converted from PPS to UCPath.  Since then the employee record has been updated on each 'Job Action Effective Date'.  The most recent update on Jul 18, 2024 included two updates.  The current employee information is highlighted in yellow.





Info

If you still have questions or need additional assistance, please submit a ticket or email busintel@ucsd.edu