Workforce Insights | Dashboards, datasets and recipes

Data used in the Workforce Insights dashboards comes from datasets. A dataset is created by a recipe, which can combine and transform data from multiple sources, such as Sage People objects in the org, or other datasets. Recipes can also augment the data with additional fields, and perform functions on fields to create new data points. Dashboards can use one or more datasets. The security predicate used in the team lead dashboards is also applied to the data in recipes.

In many cases in Workforce Insights dashboards, the datasets driving the C suite dashboards are used as starting points for the datasets driving the team lead dashboards.

Workforce Insights dashboards do not show real time live data from your org, but the dataset data. When you set up Workforce Insights, you can set up a schedule for the data to be refreshed.

C suite dashboards

Brief descriptions of the C suite dashboards aimed at WX users are available in View the C suite dashboards. This topic provides more information about which specific fields from which specific objects are used, and how the datasets are constructed.

Because the datasets contain data from multiple objects and datasets, they can contain multiple instances of columns called Deleted, Record ID, or Start Date. Where possible the dataset details contain clarifications in parenthesis. Some column names have also been simplified.

Headcount dashboard

The Headcount dashboard primarily draws data from the Team Member and Employment Record objects. The dashboard uses the Team Members dataset as the primary source of information. The sections in the Headcount dashboard use other datasets created by taking the Team Members dataset and making changes on it.

The Headcount section in the Headcount dashboard uses the Headcount and FTE dataset.

The Tenure section in the Headcount dashboard uses the Employee Tenure dataset.

The Org Design section in the Headcount dashboard uses the Org Design dataset.

The filters for the Headcount dashboard are based on data from the Headcount and FTE dataset. The Country filter uses the work location country associated with the work location assigned to a team member in their employment record. The Employment Type filter uses the Basis field from the team members' employment records.

Team Members dataset

The Team Members dataset forms the basis of all team member and employment data in the Workforce Insights dashboards. The dataset is created as follows: 

  1. Data from the Team Member object is filtered to remove records marked as deleted.

  2. Data from the Employment Record object is filtered to remove records marked as deleted and records that are not Active.

  3. The Employment Record data is joined with the Team Member data.

  4. The Manager name from the Team Member record is joined to the team member and employment record data.

  5. The HR Department name from the HR Department object is filtered to remove records marked as deleted, and then joined to the team member and employment record data.

  6. Data from the Work Location object is filtered to remove records marked as deleted. Columns other than Country and Work Location name are removed.

  7. Country codes (Alpha-3 code and Alpha-2 code in the dataset descriptions) and country names from the ISO Country custom metadata are joined with the Work Location countries.

  8. The country data is joined with the team member and employment record data.

  9. In the data created so far, blank employment basis (Basis field in the Employment Record) is replaced with "No Type".

  10. In the data created so far, blank work location country is replaced with "XXX".

  11. A new column Calculated Days Employed is created by calculating the number of days between the Start Date in the employment record and now.

  12. A new column Future Leaver is created. It displays true if the value of the Has Left field is false, and the End Date in the Employment Record is not blank, and the End Date is in the future from the current date, otherwise the field displays false.

Headcount and FTE dataset

The Headcount and FTE dataset takes the Team Members dataset as a starting point and filters out records for non-active team members using the following filters: 

  • Has Left (from the Team Member record) equals false

  • Days Employed (value calculated in the recipe for the Team Members dataset) is greater than or equal to 0

  • Active (from the Employment Record) equals true

Employee Tenure dataset

The Employee Tenure dataset takes the Team Members dataset as a starting point and filters out records for non-active team members using the following filters: 

  • Has Left (from the Team Member record) equals false

  • Days Employed (value calculated in the recipe for the Team Members dataset) is greater than or equal to 0

Next, the tenure length is calculated for all records and added as the Tenure column. Tenure is calculated as the difference between current date and the Start Date from the Employment Record divided by 365.2425, and presented with 1 decimal place.

Org Design dataset

The Org Design dataset takes the Team Members dataset as a starting point and filters out records for non-active team members using the following filter: 

  • Active (from the Employment Record) equals true

Diversity dashboard

The Headcount dashboard primarily draws data from the Team Member and Employment Record objects. It is driven by the Team Member Diversity dataset.

Team lead dashboards

Brief descriptions of the team lead dashboards aimed at WX users are available in View the team lead dashboards. This topic provides more information about which specific fields in which objects are used, and how the datasets are constructed.

Because the datasets contain data from multiple objects and datasets, they can contain multiple instances of columns called Deleted, Record ID, or Start Date. Where possible the dataset details contain clarifications in parenthesis. Some column names have also been simplified.

Headcount dashboard

The Headcount dashboard primarily draws information from the Team Member and Employment records. The datasets for the team lead Headcount dashboard use the datasets for the C suite Headcount dashboard as starting points and join in the Org Chart Predicate dataset to apply the security predicate to restrict access to data so managers can only view data about the employees in the reporting line at levels below the manager.

The Headcount section in the Headcount dashboard uses the Headcount and FTE Org dataset dataset. The Future Leavers card in the Headcount section draws from the Org Design Org dataset.

The Tenure section in the Headcount dashboard uses the Employee Tenure Org dataset.

The filters for the Headcount dashboard are based on data from the Headcount and FTE Org dataset. The Country filter uses the work location country associated with the work location assigned to a team member in their employment record. The Employment Type filter uses the Basis field from the team members' employment records. The Management level filter uses the Level Count column created in the Org Chart Predicate dataset , which is joined to the Headcount and FTE dataset to create the Headcount and FTE Org dataset.

Org Chart Predicate dataset

The Org Chart Predicate dataset is used to restrict managers' access to data in Workforce Insights to data relating to employees in the reporting line below the manager. It transforms manager data from Team Member records in order to calculate the number of management levels, which is used for the Management Level filter, and get the managers' user IDs to use for the security predicate in the team lead dashboards.

Headcount and FTE Org dataset

The Headcount and FTE ORG dataset uses the Headcount and FTE dataset and the Org Chart Predicate dataset as its starting points. The Headcount and FTE dataset drives the Headcount section in the C suite dashboards. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Employee Tenure Org dataset

The Employee Tenure ORG dataset uses the Employee Tenure dataset and Org Chart Predicate dataset as its starting points. The Employee Tenure dataset drives the Tenure section in the C suite dashboards. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Org Design Org dataset

The Org Design Org dataset uses the Org Design dataset and the Org Chart Predicate dataset as its starting points. The Org Design dataset drives the Org Design section in the C suite dashboards. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Time off dashboard

The Time Off dashboard primarily draws data from the Absence object and related objects that define how entitlements accrue. The Time Off dashboard also uses data from the Accrual Balance object for the time off balances. The Absence days over time chart relies on the Absence Day Record object. For this chart to display data, your org needs to enable Day-by-day breakdowns of absence records for reporting.

The cards and charts on the Time Off dashboard draw on datasets as follows: 

In the Time Off section:

Absences dataset

The Absences dataset forms the basis for all charts and cards with absence and vacation data. The dataset is created as follows: 

  1. Team member data from the Team Members dataset is joined with data from the Absence object.

  2. Data about absence accrual seniorities (the seniority ID and the associated absence accrual rule) are joined to the data from the previous step.

  3. Data about the absence accrual rule (the absence accrual rule ID, the related absence accrual pattern, and the type of the absence) are joined to the data from the previous step.

  4. Data about the absence accrual pattern (Rate Units, Hours to Days Conversion Factor, Hide Absence Detail) are joined to the data from the previous step.

  5. The resulting dataset is filtered to remove rejected absences, which are absences for which the value of the Rejected Date field is not null.

  6. A new column onAbsence is created by calculating if the team member is on leave, either using the value of the Is On Leave formula field on the Team Member record, or if the Start Date of the absence record is earlier or equal to today, the End Date is later or equal to today, the duration of the absence is greater than 0, and the Rejected Date is blank.

  7. A new column AbsenceDays is added to calculate the length of the absence in days. If the rate unit is hour, the calculation uses the Hours to Days Conversion Factor, if it is defined, and a standard conversion rate of 8 if it is not defined. The duration in the Days/Hours field is divided by the conversion factor if defined, and by 8 if not. If the rate unit is day, the duration from the Days/Hours field is used as-is.

Absences Org dataset

The Absences Org dataset uses the Absences dataset and the Org Chart Predicate dataset as its starting points. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Absence Balance and Accruals dataset

The Absence Balance and Accruals dataset forms the basis for all dashboards with absence balance data. The dataset is created as follows: 

  1. Data from the Accrual Balance object is joined to the Team Members dataset.

  2. Data from the Absence Accrual Rule object is joined to the data from the previous step.

  3. Data from the Absence Accrual Pattern object is joined to the data from the previous step.

  4. A new column TotalTakenDays is created to calculate the total number of days taken. If the rate unit is Hour and the Hours to Days Conversion Factor is defined, the factor is used to divide the value of the Taken field. If the rate unit is Hour but Hours to Days Conversion Factor is blank, a standard value of 8 is used to divide the value of the Taken field. If the rate unit is Day, then the value of the Taken field is used as-is.

  5. A new column AvailableCarryOverDays is created to calculate the number of available carryover days.

    If the rate unit is Hour and the Hours to Days Conversion Factor is defined, the factor is used to divide the value of the Available Carry Over field. If the rate unit is Hour but Hours to Days Conversion Factor is blank, a standard value of 8 is used to divide the value of the Available Carry Over field. If the rate unit is Day, then the value of the Available Carry Over field is used as-is.

  6. A new column TotalForYear is created to calculate the year's total entitlement as a sum of taken time off and the Year End Balance.

  7. New columns ToilTaken and ToilTakenDays are created to calculate the Time Off In Lieu (TOIL) taken. ToilTakenDays converts the value of ToilTaken into days.

    If the rate unit is Hour and the Hours to Days Conversion Factor is defined, the factor is used to divide the value of the ToilTaken field. If the rate unit is Hour but Hours to Days Conversion Factor is blank, a standard value of 8 is used to divide the value of the ToilTaken field. If the rate unit is Day, then the value of the ToilTaken field is used as-is.

  8. A new column Current Toil Days is created to calculate the currently available number of TOIL days.

    If the rate unit is Hour and the Hours to Days Conversion Factor is defined, the factor is used to divide the value of the Current TOIL field. If the rate unit is Hour but Hours to Days Conversion Factor is blank, a standard value of 8 is used to divide the value of the Current TOIL field. If the rate unit is Day, then the value of the Current TOIL field is used as-is.

  9. A new column YearEndAccrualDays is created to calculate the number of accrued days at the year end. The value is the absolute value of the sum of the Year End Balance and the Taken values divided by hours to days conversion factor if necessary. The absolute value is the number without its positive or negative sign.

    If the rate unit is Hour and the Hours to Days Conversion Factor is defined, the factor is used to divide the sum. If the rate unit is Hour but Hours to Days Conversion Factor is blank, a standard value of 8 is used to divide the sum. If the rate unit is Day, then the sum calculated is used as-is.

  10. A new column Accrual Balance Remaining Days is created to calculate the year end balance in days.

    If the rate unit is Hour and the Hours to Days Conversion Factor is defined, the factor is used to divide the value of the Year End Balance field. If the rate unit is Hour but Hours to Days Conversion Factor is blank, a standard value of 8 is used to divide the value of the Year End Balance field. If the rate unit is Day, then the value of the Year End Balance field is used as-is.

Absence Balance and Accruals Org dataset

The Absence Balance and Accruals Org dataset uses the Absence Balance and Accruals dataset and the Org Chart Predicate dataset as its starting points. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Absence Day Record dataset

The Absence Day Record dataset forms the basis for data used in the Absence days over time chart. Absence Day Record records are only created if Day-by-day breakdowns of absence records for reporting is enabled in your org.

The dataset is created as follows: 

  1. Data from the Absence Day Record object and the Absences dataset are joined.

  2. A new column DeleteAbsence is created to calculate which absence day records are associated with team members who have left the organization.

  3. The records identified as belonging to team members who have left in the previous step are filtered out.

  4. A new column DurationDays is added to calculate the duration of the absence in days when the Rate Unit is hour. If a hours to days conversion factor has not been specified, the calculation uses 8 hours for 1 day. If the Rate Unit is Day, the duration is used as-is.

Absence Day Record Org dataset

The Absence Day Record Org dataset uses the Absence Day Record dataset and the Org Chart Predicate dataset as its starting points. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Performance dashboard

The Performance dashboard draws data from the Performance Review object and the Enhanced Objective object.

The cards and charts in the Performance section use datasets as follows: 

The cards and charts in the Objectives section all use the Enhanced Objectives Org dataset.

The cards and charts in the Feedback section use datasets as follows: 

Performance Reviews dataset

The Performance Reviews dataset forms the basis for all dashboards on performance reviews. The dataset is created as follows: 

  1. Data from the Performance Review object is filtered to remove reviews that have been deleted and reviews with the status of Draft or New.

  2. The filtered list of reviews is joined with team member data from the Team Members dataset.

  3. The data from the previous step is filtered so it only contains reviews for team members for whom Has Left is false.

  4. The data from the previous step is joined with performance review template version data for each review. The template version data has been prepared as follows: 

    1. Data from the Template Version object is filtered to remove deleted template versions.

    2. Data from the Template object is filtered to remove deleted templates.

    3. The filtered template and template version data is joined together.

  5. The data from the previous step is filtered to exclude performance reviews that are continuous feedback only, based on the Type Code value from the Template object.

Performance Reviews Org dataset

The Performance Reviews Org dataset uses the Performance Reviews dataset and the Org Chart Predicate dataset as starting points. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

Enhanced Objectives dataset

The Enhanced Objectives dataset joins data from the Team Members dataset to data from the Enhanced Objective object. The dataset is created as follows:

  1. Data from the Enhanced Objective object is filtered to remove deleted objectives, objectives in Draft, Team Member Draft or Manager draft status, and group objectives.

  2. A new column tmActiveObjCount is added to the data. It displays 1 when the objective status is Active, and 0 otherwise.

Enhanced Objectives Org dataset

The Enhanced Objectives Org dataset uses the Enhanced Objectives dataset and the Org Chart Predicate dataset as its starting points. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.

PR Salary dataset

The PR Salary dataset joins data from the Salary object and the Team Members dataset to provide salary increase information for the Performance dashboard. The dataset is created as follows:

  1. Data from the Salary object is filtered to remove deleted records.

  2. Previous and current salaries are joined.

  3. Data from the Team Members dataset is joined to the salary data.

  4. Data is filtered to remove salaries for team members who have left.

  5. A new column Salary_Increase_Percentage is created to calculate the salary increase percentage by comparing the Annual Amount Reporting value of the previous salary to the Annual Amount Reporting value of the current salary.

PR Salary Org dataset

The PR Salary Org dataset uses the PR Salary dataset and the Org Chart Predicate dataset as its starting points. Joining the Org Chart Predicate dataset results in restricting the data displayed to the currently logged-in manager.