Configure reporting snapshots
Overview
Snapshot reporting enables you to create point in time reports by scheduling a source report to take data from 3 source objects—Team Member, Employment Record and Salary History—and create records in a new receiving object called Reporting Snapshot. Each time the scheduled report runs, a new record is created in the receiving object, capturing the data values held in the source objects at that time. After records are created, that data can be reported on by creating point in time reports with the report type Reporting Analytics Snapshot.
If reporting snapshots are not correctly configured, you cannot create point-in-time headcount reports.
Limitations
- The maximum number of source report columns you can map to target fields is 100.
-
When a reporting snapshot runs, it can add a maximum of 2000 new records to the target object. For this reason a snapshot report cannot contain more than 2000 team members. If you have more than 2000 team members in your organization, you need to create multiple snapshot reports and filter each report to control the number of team members exported in each report. For example, you can choose to filter by country or business area. See sections Update the Reporting Snapshot Export Report and Schedule the reporting snapshot for more details
-
You can only create point in time reports for a time period after snapshot reporting has been set up and the source report has been scheduled to run.
Troubleshooting
See Salesforce help topic on troubleshooting snapshot reporting for further troubleshooting tips included snapshot error messages.
Problem | Possible Solution |
---|---|
My field is not available for me to select when I go to map my field in the Reporting Snapshot Field Mappings. |
Check you have added the field to the Reporting Snapshot Export Report. |
Modify fields in the reporting snapshot
Review the fields included in the reporting snapshot
The fields in the table are managed package fields in the Reporting Snapshot object.
Sage People does not recommend adding additional fields unless they are absolutely necessary for headcount point-in-time reporting. However, if you need to add any fields to the default mapping, see Add fields to the Reporting Snapshot object.
Field Label |
API Name |
Data Type |
---|---|---|
Business |
Business__c |
Text(255) |
Country |
Country__c |
Text(100) |
Division |
Division__c |
Text(255) |
|
Email__c |
Text(255) |
Employment Basis |
Employment_Basis__c |
Text(100) |
Employment Bonus |
Employment_Bonus__c |
Percent(5, 2) |
Employment Commission Plan |
Employment_Commission_Plan__c |
Text(100) |
Employment Continuous Service Date |
Employment_Continuous_Service_Date__c |
Date |
Employment Contract End Date |
Employment_Contract_End_Date__c |
Date |
Employment Cost Code |
Employment_Cost_Code__c |
Text(100) |
Employment End Date |
Employment_End_Date__c |
Date |
Employment FTE |
Employment_FTE__c |
Number(1, 3) |
Employment Hours Worked |
Employment_Hours_Worked__c |
Number(3, 1) |
Employment Job |
Employment_Job__c |
Text(255) |
Employment Last Working Date |
Employment_Last_Working_Date__c |
Date |
Employment On Track Bonus |
Employment_On_Track_Bonus__c |
Currency(16, 2) |
Employment On Track Commission |
Employment_On_Track_Commission__c |
Currency(16, 2) |
Employment Payroll Number |
Employment_Payroll_Number__c |
Text(100) |
Employment Probation End Date |
Employment_Probation_End_Date__c |
Date |
Employment Reason For Leaving |
Employment_Reason_For_Leaving__c |
Text(255) |
Employment Salary Band |
Employment_Salary_Band__c |
Text(100) |
Employment Start Date |
Employment_Start_Date__c |
Date |
Employment Status |
Employment_Status__c |
Text(50) |
Employment Work Location |
Employment_Work_Location__c |
Text(255) |
First Name |
First_Name__c |
Text(100) |
Function |
Function__c |
Text(255) |
Grade |
Grade__c |
Text(50) |
HR Department |
HR_Department__c |
Text(100) |
Job Profile |
Job_Profile__c |
Text(255) |
Job Title |
Job_Title__c |
Text(255) |
Location |
Location__c |
Text(255) |
Manager Name |
Manager_Name__c |
Text(255) |
Payflow Download Status |
Payflow_Download_Status__c |
Text(50) |
Salary Amount |
Salary_Amount__c |
Currency(16, 2) |
Salary Annual Multiplier |
Salary_Annual_Multiplier__c |
Number(12, 4) |
Salary Change Reason |
Salary_Change_Reason__c |
Text(255) |
Salary Period |
Salary_Period__c |
Text(100) |
Salary Start Date |
Salary_Start_Date__c |
Date |
Surname |
Surname__c |
Text(100) |
Team |
Team__c |
Text(255) |
Unique Id |
Unique_Id__c |
Text(50) |
Add fields to the Reporting Snapshot object
- Go to Setup > Object Manager and select Reporting Snapshot.
-
Add a field to mirror the field you want to add.
Generally fields must be the same data type as the field in the source object, except:
- Picklist and formula fields must be set as text fields.
- Lookup fields can be mapped to text fields. To map a field in the source report to a lookup field on the target object, map to the ID of the object associated with the lookup.
- Mirroring a text area field is not supported.
Add fields to the Report Types
-
Go to Setup, and in Quick Find enter report, and select Report Types.
-
Select the label for the Team Member, Employment, Salary History report type.
-
Go to Fields Available for Reports and select Edit Layout.
-
Add any new fields to the Report Type.
- Repeat the steps for the report type Reporting Analytic Snapshots.
Update the Reporting Snapshot Export report
If you add fields to the Reporting Snapshot object, you also need to add them to the Reporting Snapshot Export report. To do so:
- Go to the Reports tab and select the Reporting Snapshot Export report.
- Select Customize. The Salesforce Report Builder is displayed.
- Add the fields you added to the Reporting Snapshot object to the report.
If your organization has more than 2000 team members, you need to add filters so you can keep the number of team members exported per report below 2000. For example, you can use Country, Business, or Division as filters.
- Apply your chosen filter to the Reporting Snapshot Export report.
- Select Report Properties
- Amend the Report Name and Report Unique Name with details of the filter applied, for example change the name to Reporting Snapshot Export UK and the Unique Name to Reporting_Snapshot_Export_UK
- Select Save.
- Select Save As to create a clone of the report.
- Enter a Report Name and Unique Name to reflect a different filter, for example Reporting Snapshot Export US and the Unique Name to Reporting_Snapshot_Export_US
- Select Reporting Snapshots - FULL ACCESS as the Report Folder.
- Select Save
- In the Report Builder, apply a filter to match the target group in the report name.
- Select Save and Close.
Ensure you set up the filter criteria in your report to extract the employees that you are interested in.
For example, Employee Status = Active. The report extracts only active employees every time the Reporting Snapshot runs. This enables you to report on the number of active employees in an organization whenever you run the report.
Map the new fields
- Go to Setup > Platform Tools > Feature Settings > Analytics > Reports & Dashboards > Report Snapshots.
-
Select Reporting Analytic Snapshot.
-
In the Field Mappings section, select Edit:
-
In the Reporting Snapshot Export column, select a value from a drop-down list to map it to the corresponding field in the Reporting Snapshot column. In the following example, the Business field in the source report is being mapped to the Business (Text(255)) field in the target object:
- Select Save when you have mapped the fields.
If your organization has more than 2000 team members and you have applied filters to create multiple reporting snapshots, update the Reporting Analytic Snapshot details and map the fields.
-
Go to Setup > Platform Tools > Feature Settings > Analytics > Reports & Dashboards > Report Snapshots.
-
Select Edit for Reporting Analytic Snapshot.
-
Review the details. If necessary update Report Name, Report Unique Name, and Source Report to match a filtered report.
-
Select Save and Edit Field Mappings.
-
Update field mappings for your new field as required.
-
Select Save.
-
On the Reporting Snapshots page, select New Reporting Snapshot.
-
Complete the details to match another filtered report.
For example, to make a US report:
-
Select Save & Edit Field Mappings.
-
Map all the fields.
TipSee field mappings in the original or other snapshot reports if you are unsure how to map the fields.
-
Select Save.
Schedule the reporting snapshot
To schedule the report:
- Go to Setup > Platform Tools > Feature Settings > Analytics > Reports & Dashboards > Report Snapshots.
-
Select Reporting Analytic Snapshot.
-
In the Schedule Reporting Snapshot section, select Edit:
-
Enter the scheduling information as follows:
Field What to enter Email Reporting Snapshot Checkboxes. The users or groups who receive the Reporting Snapshot by email
If you select Others, additional options appear for you to select the groups or users to receive the Reporting Snapshot.
Scheduled Run Options to define:
-
the frequency for running the Reporting Snapshot
-
start and end dates for the schedule. An End Date is required to save the schedule.
-
preferred start time on the day when the Reporting Snapshot runs
After the system runs the report for the first time, users can run reports on it.
In the following example, the system sends the report to the scheduling user on the first Monday of every month, starting from December 2016 and ending in 2999:
-
If you have multiple reporting snapshots, schedule each one separately.
Modify the HR Manager profile
Snapshot Reporting is based on a standalone object called Reporting Snapshot. Because of this, data security is not linked to HR Department security and users who have access to the snapshot reporting have access to all data within the report. By default, HR Administrators and HR Managers have access to all information in this report.
If your customer does not want to expose sensitive data from other HR departments to HR Managers, you need to edit the HR Manager Profile to eliminate access to the fields with sensitive data.
If you remove HR Managers' access to fields with sensitive data, they are not be able to access any data in those fields for point-in-time reporting.
If you want to restrict access to certain fields for users who otherwise access to the reporting snapshot data, change the field level security on the users' profile:
- Go to Setup > Administration > Users > Profiles.
- Select the Profile where you want to restrict access to specified fields.
- In the Field-Level Security section, go to Custom Field-Level Security and select View next to the Reporting Snapshot Object.
- Select Edit
- Select or uncheck the checkboxes in the Read or Edit columns to grant or remove access to fields.
- Select Save.
To give a profile access to all data in the reporting snapshot:
- Go to Setup > Administration > Users > Profiles.
- Select Edit next to the Profile you want to give access to.
-
In the Custom Object Permissions section, go to the Reporting Snapshot object and select all checkboxes on the row to grant full access.
- Select Save.
Update the Historic Headcount reports
Two standard reports, both named What is our Historic Headcount?, provide details about headcount in the organization. One of the reports provides full access to headcount data and another partial access.
- The What is our Historic Headcount? report in the Reporting Snapshots – FULL Access folder includes all the fields in the Reporting Snapshot Extract report.
-
The What is our Historic Headcount? report in the Reporting Snapshots folder contains a partial list of fields.
If you have added fields to the reporting snapshot or limited access to fields in the HR Manager Profile, ensure you add fields to or remove fields from the historic headcount reports so the appropriate fields are available.
View the snapshot reports
To view the snapshot reports:
Learn more
-
A Reports and Analytics learning package in the Sage University includes training content on reporting snapshots.
-
A function focus webinar (July 2022) walks through the setup for snapshot reporting.