We are excited to announce that the Report Designer supports an indicator report item as of the 2019 December Bold Reports release.
Indicators are minimal representations of gauges that visualize the state of particular data at a glance. They’re mostly used inside tables to represent state values of key performance indicators (KPIs). In Bold Reports, we have provided circle, shape, arrow, box, quarter, signal meter, star, symbol, sign, traffic light, triangle, button, and smiley indicators with the Report Designer. Some of the indicators are shown in the following screenshot:
In this blog, we are going to design a report that analyzes customer support representative details with respect to average response turnaround time. We will then visualize the state of response times using smiley indicators with the following conditions:
Now, we are going to walk through creating an indicator report using the Bold Report Designer.
- Create a new report.
- Configure the data source and create a data set.
- Display the customer representative details in a table.
- Create indicator report item to display the state of response times.
Let’s dive into creating the indicator report.
Create a new report
First, navigate to the Syncfusion Bold Report Designer, which will create an empty report for us to build on. Now, click the New icon and provide a report name to create a new report, or you can proceed with the empty report.
Configure data source
For this blog, we are going to use our existing Customer Representative SQL data source to create the report.
- Click the Data icon in the configuration panel.
- In the DATASOURCES panel, click the Add New Datasource button on the bottom of the panel.
- In the DATASOURCES configuration panel, choose the desired data-source type. Here, we are going to use the SQL connection type.
- In the new connection panel:
- Click the Advanced Options navigation button.
- In the Name field, specify the data source name CustomerSupportRepresentative without any special characters.
- Use your own connection string to connect the existing available database:
Data Source=demodata;Initial Catalog=DemoDB;user id=demouser;password=demopassword
- In the Authentication Type field, choose None.
- Now, click the SAVE button to establish the connection with the SQL database.
Create data set
Now, the data source is ready and we are going to create the data set for table report item design.
- Click the Data icon in the configuration panel.
- In the DATASOURCES panel, click the hamburger icon next to CustomerSupportRepresentative data source, and then click Create DataSet. This will navigate to the query designer.
- In the query designer, navigate to the SQL query editor by toggling the Code option.
- Use the following SQL query to extract the customer representative name and average turnaround time details from the database.
SELECT [dbo].[CustomerSupportAnalysis20151029182232538].[RepresentativeName] AS [Representative Name],Round(Sum((([dbo].[CustomerSupportAnalysis20151029182232538].[DurationTime])/NULLIF(( CASE WHEN [dbo].[CustomerSupportAnalysis20151029182232538].[Status]='Closed' THEN 1 ELSE 0 END ),0))*1.0)/Count(([dbo].[CustomerSupportAnalysis20151029182232538].[DurationTime])/NULLIF(( CASE WHEN [dbo][CustomerSupportAnalysis20151029182232538].[Status]='Closed' THEN 1 ELSE 0 END ),0)),1) AS [Average Resolution Time] FROM [dbo].[CustomerSupportAnalysis20151029182232538] Group by [dbo].[CustomerSupportAnalysis20151029182232538].[RepresentativeName]
- Click the Run button, and the extracted details will be displayed. Now, click the Finish button.
Everything about the data is now ready for us to design a report around it.
Display customer representative details in a table
In this section, we are going to map the customer representative data and display it using a Tablix report item.
- Drag and drop the Table report item from the Widgets panel and click the settings icon of the table cell.
- The Settings button opens a context menu and displays the available data set’s column names. Choose Representative_Name for the first cell and choose Average_Resolution_Time for the second cell. The data set will automatically be mapped for this table.
- To edit the table header, click the settings icon in the header cell and then choose the Add Text option, which will display an Add Text dialog where you can provide your desired header text.
- Click the Preview button to view the report with the mapped data. It will look like the following report:
Create indicator to represent the state of response time
Now, we are going to create an indicator report item and configure its value to represent the state of the response time for each customer representative.
- Drag and drop the Indicator report item from the widgets panel into the third column of the table.
- Click on the indicator cell and navigate to the Properties panel. Navigate to the Indicator Value properties section and open the advanced options by clicking the icon next to the Indicator Value Click the Expression button to configure the response time value for the indicator using the Expression Builder.
- The Expression dialog will open for the indicator value. Now, map the average resolution time field (=Fields!Average_Resolution_Time.Value).
- We are going to configure smiley indicator types for the following states to visualize the response times.
- You can customize the table header background color, font-size, text alignment width, and height using the Properties panel. After making customizations, click the Preview button, and you’ll see the indicators visualizing the state of average response times.
In this blog, we learned how to create a simple report using Bold Report Designer, how to configure and map a data source for a tablix, and how to represent the state of values using the indicator report item.
Feel free to check out the Bold Reports Embedded demos and our documentation to explore live demos of the tools and their various report customization features.
If you have any questions or require clarifications, please let us know in the comments section below. You can also contact us through our website. We are happy to assist you!