Reports and Dashboards in Salesforce
Salesforce provides powerful reporting and generation tools on the data stored in the objects.
- In reports data displayed is as per running user's security access. Reports can be run on both standard and custom objects. Reports are stored in folders. Users with access to these folders can run the reports.
- Reports data is always generated in real time. When a report is saved, reports configuration parameters are stored - but the generated data is not stored.
- There are three type of reports
- Tabular report. This is the most basic report. It displays just the row of records in a table like format with grand total. Tabular reports cannot be used for generating dashboards.
- Summary report. This is the most commonly type of report. It allows grouping of rows of data. It supports sorting and displaying subtotals. For example in a recruiting app, a summary report could be used to display open positions classified by department name.
- Matrix report. This is the most complex report format. Matrix report summarize information in a grid format. Matrix reports allows records to be grouped by both columns and rows.
Summary and Matrix reports can be used to generate dashboards.
Reports provide two options of exporting data into Excel.
Reports present in public folders can be emailed to SalesForce users.
Report display upto 2000 rows of data. Larger reports can be emailed to Excel.
Generation of reports requires following steps.
- Printable View - Export report with formatting into Excel
- Export Details - Export raw data
Custom reports let the developers define which all fields should be available in a report. Custom report allows user to change field names. Custom reports allow developers to select related fields (upto four levels). The custom reports also allow developers to add sections to group fields. Once a custom report is created it is available in reports tab and user may create reports from it.
Object relationships that are supported by Custom Report Types are -
- Selection of object.
- Selection of report type.
- Select type of information to be displayed (example count, average).
- For summary and matrix reports, specify how fields should be grouped.
- Select columns on the report.
- Select column order on the report.
- Specify filtering criteria which should be used to select records.
As an example consider a recruiting application with two custom objects Position and InterviewFeedback. Also assume that InterviewFeedback is the child of Position object. The first option above will display only those Position objects that have at least one InterviewFeedback as their child. The second option will display all Positions. It is not possible to display Positions that do not have any InterviewFeedback using Salesforce's reporting mechanism.
There are three steps in creating custom reports -
- Include all records that have children
- Include all records that may or may not have children
Custom report types are available via the menu option Create-->Report Types
Analytical snapshot allows reports run at scheduled time to be stored as objects. Analytical snapshots are used to perform trend analysis. As an example if we want to view how monthly sales are growing, fields in a report with sales figure can be stored in a custom object every month using Analytical snapshot. Data in this custom object can then be used to perform trend analysis.
Analytical snapshot are available from the Data Management menu option. Source report in Analytical snapshot can be of the type Tabular or Summary.
Setup Analytical reports require a four step process
- Select an object, folder and report label.
- Select related objects that need to be included.
- Select fields available for report using a drag-and-drop layout editor.
There are two type of Reports
- Select source report
- Select custom object
- Map source report fields to custom object fields
- Schedule the frequency for taking the snapshots
A. Standard Report type
- Created when a object is created
- created when relationships between objects are created
- Always inner joins
- Cannot be modified.
B. Custom Report type
Key concepts on Custom Report Type
- Created by Admin or users with “Manager Custom Report types”.
- Used to streamline the reporting process.
Dashboards are graphical representation of reports. Dashboards can be generated for summary or matrix reports (and not for tabular reports). Dashboards display data as per last time report was run.
A dashboard can have upto 20 components
There are five type of dashboards
- Saving a custom report only saves the parameters of the report. The data is always real time.
- CRTs are reporting templates that admin or users create to streamline the reporting process.
Further there are six type of charts
||Used For Comparision
||Good for showing top five, bottom five lists
||Used to show progress towards a goal
||Shows a single number
||used to pull data from other sources
Funnel is used to show proportion of values against each other. Pie is used to demonstrate proportion of single value against total. Donut is used to demonstrate proportion of single value against total and also show the total value.
The folder in which dashboards are stored determines which user has access to running the dashboard. The dashboard data is based upon the reports data. When a user views the drill-down report for a dashboard component. running user's access permissions determine what data is displayed on the drilldown report. Hence it is possible that the data in the drill down report does not match the cumulative dashboard data.
Dashboard also support automatic refresh and email. The refresh and email can also be scheduled at intervals - daily, weekly, monthly.
Two things that determine access to dashboards:
- Vertical column
- Horizontal bar
Limitations of Salesforce reports
Although fairly powerful, Salesforce reports have certain limitations. These are explained below.
- Dashboard Folder
- Running User
To work-around these limitations, Salesforce customers have the following three options.
- Support for trend analysis in Salesforce is fairly limited.
- User Interface of Salesforce reports and dashboards is fixed. Salesforce does not support pixel perfect report.
- Salesforce reports do not support importing data from other sources
- When displaying objects and their children, Salesforce does not support reporting on objects that do not have any children.
- If an object has two different related lists, then Salesforce reporting does not support displaying both these related lists together.
- Reporting as a service: Data resides on Salesforce. New Reports get generated from same data source
- BI as a service: Data is moved to a different destination on cloud. Reporting is performed on this new data server.
- Datawarehousing as a service: Data is exported to the customers server and reports are generated from the server located at customers location.