Free cookie consent management tool by TermsFeed

Records-Powered Components

On This Page

This page explains the benefits of using them, what makes a component records-powered, and which components you can configure.

What is a records-powered component?

Appian interfaces are made up of components. When a component uses a record type as its data source, it's called a records-powered component.

Using a record type as the data source allows the component to automatically populate with record fields and related record fields from the record type, and leverage other elements of the record type like the record list, user filters, and record actions.

You can create a records-powered component in Design Mode by selecting Record type for the component's Data Source.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/records-powered-chart-config.png

In the underlying expression, the records-powered component will use a record type reference like recordType!AT Case, or the a!recordData() function. See examples below.

While you can use a!queryRecordType() to query record data, components using it as the source are not considered records-powered and won't have access to the benefits listed above. See an example below.

Why use a records-powered component?

Using a records-powered component provides several key advantages:

  • Build faster with less code. Records-powered components instantly access data from the record type and its relationships, so you don't need to write complex expressions to get your data.
  • Design with ease. Take advantage of intuitive design mode options that guide your configuration. These components automatically populate with fields to get you started, helping you build and modify your interface faster.
  • Unlock powerful user features. Allow users to export grids to Excel, save their filter selections, and use record actions directly from the component.

Records-powered chart example

The following expressions show two ways to configure a records-powered component.

Using a record type reference

This pie chart is records-powered because its data parameter is configured with a direct reference to the AT Case Status record type.

1
2
3
4
5
6
a!pieChartField(
!   data: recordType!AT Case Status,
    config: a!pieChartConfig(
        ...
  )
)

Using a!recordData

This pie chart is also records-powered. It uses a!recordData() as the source to filter the record data to only display statuses that are actively used.

1
2
3
4
5
6
7
8
9
10
11
12
13
a!pieChartField(
!   data: a!recordData(
        recordType: recordType!AT Case Status,
        filters: a!queryFilter(
            field: recordType!AT Case Status.fields.isActive,
            operator: "=",
            value: true
        )
    ),
    config: a!pieChartConfig(
        ...
    )
)

Not a records-powered chart example

This pie chart is not records-powered because the data is populated using an a!queryRecordType() expression. The component is only aware of the variable's data, not the record type itself. As a result, it cannot access record type features or any other data that is not explicitly in the query.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
a!localVariables(
! local!data: a!queryRecordType(
     recordType: recordType!AT Case Status,
     fields: {
        recordType!AT Case Status.fields.value
     },
     pagingInfo: a!pagingInfo( 
       startIndex: 1,
       batchSize: 100
     )
  ).data,
  a!pieChartField(
!   data: local!data,
    config: a!pieChartConfig(
        ...
    )
  )
)

Available records-powered components

You can configure the following components to be records-powered. Some of these components, like record links and record pickers, can only be powered by a record type since they are designed to reuse elements of the record type.

Read-only grids

When you select a record type as the source of a read-only grid, it will automatically populate with the record list configured on the record type. This includes any user filters and record list actions.

Records-powered grids will also allow users to save their user filter selections, and search the record type, and export the grid to Microsoft Excel.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/records-read-only-grid.gif

Charts

When you select a record type as the source of a chart, it will automatically query and aggregate fields from the record type. This allows you to quickly visualize your record data and then adjust the groupings and measures to explore the data from different angles—all without writing complex queries.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/customer-support-ticket.gif

You can configure the following charts to be records-powered:

Learn more about configuring charts with records.

Event history list

The event history list component is designed to be used with an event history record type. It automatically displays the history of your record events in a user-friendly timeline or list format, making it easy to track your business processes.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/eventHistoryListExample.png

KPI components

The KPI component can only be configured using a record type as the data source. This component allows you to display important business metrics from your record type alongside charts, sparklines, and progress bars. Simply specify the record type as the data source and use the measure component to aggregate the record data.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/patterns/kpi_example_overlay.png

Record action components

The record action component allows you to use your related actions and record list actions anywhere in an interface. This gives you the flexibility to place actions where users need them most, style them to align with the rest of the interface, and create a list of record actions from different record types.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/record-action-component-ex.png

You can use record links to direct users to specific record views. You can add these links in tags, charts, grids, and more to allow users to easily navigate to more information. Using record links, you can allow users to easily discover more information with minimal effort.

For example, you could add a link to view a specific customer's summary view, where the customer's identifier is passed through a rule input.

1
2
3
4
5
6
7
8
9
10
a!linkField(
  links: {
    a!recordLink(
      label: "View Customer",
      recordType: recordType!Customer,
      identifier: ri!customerId,
      openLinkIn: "NEW_TAB"
    )
  }
)

Record pickers

The record picker allows users to select one or more records from a record type using an autocompleting picker. This is helpful in forms where users need to associate a record with another, like selecting a customer when creating a new order.

For example, if you want to create a form to set up a new road project, you can add a DOT project record picker on your form so users can select related projects from the DOT project record type. This prevents users from manually entering project details each time they create a new project, and it provides an alternative to building and maintaining a constant to display a list of all projects.

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/use-record-picker.gif

See the record picker component for more information.

Selection components

When selection components are records-powered, they automatically populate their options using the field values from the record type. This is much faster than writing a query and manually constructing a list of choices. These components include:

Scroll or drag to pan · ⌘+/⌘− to zoom · Esc to closeimages/use-multi-dropdown-records.png

Feedback