In the era of data driven world, you need an authentic, applicable and accessible insight to achieve results. Arming your company with better reporting and analytics would benefit in increasing the revenues, reducing the costs and improving the worker productivity.
Considering all these points, Workday has developed a robust reporting tool that can provide personalized reports with flexible security, where the customers could govern the reports on organizational hierarchies, role based and row level security.
The key report design parameters on which the performance depends on are:
- Determining the right data source.
- Usage of appropriate filters and sorts.
- Leverage report logs.
- Selection of report fields.
Determining the right data source
Selection of right data source is very crucial for creating custom reports.
- Understand the requirements and review the business object and data sources accordingly, you can make use of Business object details and data sources report.
- Use indexed data sources for performance critical reports. For example: you can use Workers for HCM reporting instead of All workers data source.
- Whenever indexed data sources aren’t available use filtered data sources.
- Always use trended Workers data source for reporting on Trended data.
- Avoid using the data sources which are marked as “Do not use” as they are marked for a reason.
- Beware of the data sources that hosts massive volumes of data like
- All Active and Terminated Workers
- All Business Process Transactions.
Usage of appropriate filters and sorts
The report fields have been utilized as filters and order(sort) in which data appears has direct impact on the execution time of the report.
- During the creation of reports with indexed data sources, use the indexed fields as filters.
- Try to use the data sources which have inbuilt prompts rather than creating your own filters and prompts.
- Review the order of the filters, always choose the first filter in such a manner that it can eliminates large amount of data.
- Usage of nested conditions like “Or” should be limited.
- Do keep in mind that sorting becomes a time-consuming operation if there are too many / inefficient sorts in the report.
Selection of report fields
The report run time depends on different types of fields (Standard, Calculated, filters etc.) used in a report.
- Avoid excessive usage of fields and include the fields that are essential for the report. As increasing the number of fields means more data to be processed and more security tests to be performed.
- The increase in number of complex fields that you include (multi- level calculated fields), slower the report execution. So, instead give a try with sub-filters and related objects before using calculated fields.
- Use of calculated fields as filters could lead to slow down, in such situations where you use a lot of calculated field-based filters, creating a custom data source would be ideal.
- Consider the usage of unconstrained security groups over the constrained security groups whenever possible.
- While using the constrained security groups, consider giving the access rights to “Current organization and all sub-ordinates” rather than “Current organization and unassigned sub-ordinates”, this could have a significant impact if the role has been assigned in the higher level of the organization.
Leverage report logs
The view report performance log tool helps to gather performance timings by creating breakup on time- spent on processing the report. The time execution time of any standard or custom report is a sum of 6 components.
- Initialization: If the time is considerably high, try to fine-tune the prompt settings.
- Data Source: If the run time is too high, try to consider a different data source.
- Filter: A high top-level filter timing indicates that a slow running field (Standard or calculated field) in the filter.
- Sort: If the sort time is high consider replacing with text fields whenever possible.
- Sub-Report: Identify which sub reports of the composite reports is taking too long to process accordingly redesign the sub-report.
- Processing: If the instance count seems to be high, then try to reevaluate the choice of data source or filter.
DO NOT Release the reports without evaluating performance by repeated report log analysis.
One thing to remember is that data in your tenant is ever- growing, like even a well-designed report for current day, needs to be fine-tuned in upcoming days. Since the data is increasing multi-fold in this time frame. So, Report performance evaluation and improvement should be a continuous process