Tempo Reports


Tempo reports are a way of pulling in data from tasks, records, relational databases, and other third-party data sources and displaying it on a single interface in Tempo for end users to view. Through the use of rules, interface components and expressions, Tempo reports enable designers to quickly define what data to display and how to display it in a usable and concise way on both web and mobile clients.

The sections below detail design information for Tempo reports, such as what to expect in terms of report security, the options available when configuring a Tempo report, and how to manage them after their creation.

Frequently Asked Questions

Where do Tempo reports display?

By default, they display on the Reports tab of Tempo. If configured as a task report, they display on the Tasks tab.

How do Tempo reports differ from process reports?

Tempo reports can easily be modified through their expression, be viewed on mobile devices and the broad set of web browsers supported by Tempo, and report on data from tasks, records, and relational databases. process reports can only be viewed from the Portal and can only report on data from process models, processes, and tasks.

What happens to my process reports?

These continue to work as before in the legacy Portal interface as part of Appian. As you migrate your application to Tempo, you can design Tempo reports for each process report, including Task Reports, and access these from the Tempo interface.

Can I Import/Export Tempo reports?

Yes, Tempo reports are like other Appian objects in that their definitions can be deployed between development and production systems using application containers.

Do I have to use Tempo reports when I upgrade?

No, you can update to the latest version of Appian without any required re-work. You can begin using Tempo reports when you choose.

Can I have multiple components on a Tempo report?

Yes, the report's expression displays arrays of components in a single-column layout, or you can display arrays within specific layout components, such as DashboardLayout, to display more than just a single chart or grid.

Tempo Report Concepts

Tempo Report

A Tempo report is an Appian object that displays charts and grids based on an expression. It holds the basic properties of the report (such as name and description), the expression that determines what interface components display, and the role map that determines its security.

Tempo reports can display data queried from tasks, records, and relational databases.

See also: Records Tutorial and Where to Display Records

You can display the data through any of the interface components, including chart components and basic field components.

See also: Interface Components

Task Report

Task reports are a subset of Tempo reports. They are accessible from the Tasks tab alongside the system's existing task views. You can configure any Tempo report to be a task report while creating the Tempo report object, but Appian recommends only configuring those reports that display a grid with process task links.

See also: Read-Only Grid and Process Task Links

Security can be configured for the Tempo report object, as well as for the various objects and data referenced within a Tempo report. See Layered Object Security to learn more.

Tempo Report Security

A user must have at least Viewer permissions to a report to access it in Tempo or on a site.

The security role map of a report controls which users can see or modify it and its properties. By default, only the report creator and system administrators have access to the report. See Editing Object Security to modify a report's security.

The following table outlines the actions that can be completed for each permission level in a report's security role map:

Actions Administrator Editor Viewer
View the report in Tempo Yes Yes Yes
View the security Yes Yes Yes
View the Tempo report definition Yes Yes Yes
Update the Tempo report definition Yes Yes No
Update the security Yes No No
Delete the Tempo report Yes No No

Data Security

Security for the data displayed in a Tempo report is based on the security of the underlying data source. Users must have at least Viewer permissions to the data to view it within a report. If a user does not have Viewer permissions to the data or to part of the data in a report, the report or a subsection of it may fail to load.

Note: Preventing users from being able to view a report does not secure the underlying data. Users may still be able to view the data in other areas of Appian, such as process reports.

For more information on how to configure the security of the underlying data source, see Process Security and Data Store Security.

Creating a Tempo Report

Tempo reports can be created by any user in the designer role.

Creating a report involves the following:

  1. In an application, use the New menu and select Interface to create an interface that returns the components to display in the report
  2. Use the New menu and select Report to create the Tempo report.

See the following interface recipes for examples of creating charts using a!queryEntity():


Name: The name of the Tempo report. Only accepts a Text value. For example, Yearly Earnings, Tickets by Status, or Tickets by Priority.

Description (Optional): The description of the Tempo report to be displayed in the Reports list view. Only accepts a Text value. For example, Summary of Yearly Earnings Broken Down by Quarter, Number of Tickets Broken Down by Status, or Number of Tickets Broken Down by Priority.

Save as Task Report (Optional): Enables the Tempo report as a task report.

Interface: Interface that calls the interface you created.


The system automatically generates a URL stub when you save the Tempo report object. For example, "lstM7Q".

Once the Tempo report is created, the report is available for all users with at least viewing rights. The URL stub created for the report can be shared between users but will only work for those that can already view the report.

Editing Tempo Reports

The following basic properties of a Tempo report can be edited:

  • Name
  • Description
  • Interface

To edit these basic properties, complete the following:

  1. In an application that contains the report, select the report to open it in a dialog.
  2. To update the Interface, search for it in the picker.
  3. Click Save.

You can also edit the interfaces associated with the Interface value or add and remove users or groups from the report’s security groups.

See also: Editing Interfaces and Add Users to Groups

To change whether or not a Tempo report is a task report, you must create a new report.

Version Control

Only the latest version of the Tempo report is saved in the system.

Any changes you make to the rules created as part of the dashboard, however, are saved as a new version just as any other rule.

See also: Editing Interfaces

Deleting Tempo Reports

Deleting a Tempo report removes the object from the system. It will no longer appear in Tempo.

Tempo Report Design Best Practices

Report Definition

Save Report Configuration Expressions as Interfaces

Appian recommends saving any expressions created for a report as an interface for version control and testing purposes.

This also allows you to easily copy parts or all of the interface to create similar reports for different data.

Keep Report Names Simple and Concise

Each Tempo report’s name should be easy for users to scan through.

Report Performance

Limit the Number of Series Values and Categories

The number of series values for a chart component affects performance. The fewer values that need to be evaluated, the better the performance.

Limit the Number of Chart Components on the UI

Each interface component added to a Tempo report also impacts the report’s performance. This especially applies to chart and grid components. The more complex each component, the higher the strain on performance. Keep this in mind when adding more than one complex component to your report.

Limit Queries to External Databases

Store external data or the result of expressions that do heavy data manipulations in local variables defined using a!localVariables() to avoid re-executing them upon every reevaluation. Use local variables to avoid redundant queries when configuring one or more components that use the same data.

Report Usability

Review and Adjust the Chart

As discussed, many factors affect the size, layout, and performance of a chart. Be sure to review the chart as it displays in Tempo and apply the best practices above to tweak the end result. Modifying your rule for the dashboard in one browser while viewing the Tempo report in another is a great way to see the impact of your changes easily.

Keep Report Names Concise and Descriptive

Users should easily be able to understand the purpose and content of each Tempo report from its name. Since reports are sorted alphabetically, related reports should use names that start with the same text (such as the name of the record type being reported on) so they are grouped together on the report list, e.g. "Customers by Industry" and "Customers by Region".

Use Appropriate Column Layouts for Report Content

Two-column layouts provide greater density for smaller charts and grids, allowing users to see more data without scrolling and facilitating side-by-side comparisons. One-column layouts provide additional space to show charts and grids that contain more data points. A one-column layout is recommended for grids that include more than 5 columns and/or lengthy text content. Charts that show more than 7 data points are generally best-shown in one-column layouts.

To create visually-balanced reports, it is recommended to use the same layout (one-column or two-column) for all report sections. When mixing different layouts within a report, make sure that the height of content in each column of two-column sections is similar in order to minimize white space. For the same reason, it is preferable to place a one-column section above a two-column section; this reduces the likelihood of a shorter column creating empty space above the start of the next section. An example of an effective mixed-layout report is a grid in a one-column section above a two-column section containing a variety of smaller charts.

Keep Chart Labels Short

Long label text may reduce the amount of space available for the plot area of charts. When there is limited room to show chart labels, some text may overlap and certain labels may be hidden to preserve space.

Minimize the Number of Chart Series and Categories

Design charts with as few dimensions and data points as needed to optimize display. Simpler charts are easier to comprehend and also load more quickly.

Line charts or column charts with a large number of data points will require users to scroll horizontally to view all the data.

Pie charts with a large number of slices, particularly if some of the slices are very thin (values with small magnitude compared to the overall data represented), may display with some data labels not visible. If this cannot be avoided, enable tooltips so users can see data values by hovering over pie slices.

Limit the Number of Grid Columns and Keep Text Short

Grids with a large number of columns, long column header labels, and/or long text data values will require users to scroll horizontally to view all columns. Use a one-column layout to allow more grid columns to be seen without scrolling. Consider reformatting or abbreviating label and data values to reduce their character length.

Accessible Reports Must Provide a Plain-Text Representation of Data

While charts are an effective medium for visually presenting data, they are primarily intended for consumption by sighted users. To make the same data available to non-sighted users who interact with Appian through a screen reader, provide a grid view of report content. See this recipe for an example.

See Also

  • Grid Tutorial: Walks you through an example of creating your first grid and then configuring different ways to manipulate the data and enable paging and sorting
  • Interface Components: Lists the supported Interface components and the data structure required for adding them to a Tempo report.
  • Interface Recipes: Includes several examples of how to create charts.
Open in Github Built: Thu, Feb 23, 2023 (02:59:22 PM)

On This Page