a!sortInfo() Function

Function

a!sortInfo( field, ascending )

Creates a value of type SortInfo for use with grids and record queries.

See also:

Parameters

Keyword Type Description

field

Any Type

The name of the field used to sort by. When sorting record data, use the recordType! domain to reference a record field or related record field. For example, recordType!Case.fields.caseName. When sorting data from a data store entity, use the field name in quotations. For example, "department". When sorting on aggregate data, you must use the alias as the sort field if an alias is defined in the groupings or measures.

ascending

Boolean

Determines what order the data is sorted in. Sorted in ascending order when the value is true and descending order when the value is false. Default: false.

Returns

SortInfo

Usage considerations

Supported data types

Sorting is only supported for complex data types and is not supported for a dictionary array.

Sorting in a!queryRecordType vs a!queryEntity

Depending on the type of query, the way you reference the sort field will vary.

If you are sorting in a!queryRecordType(), you must use a record field reference.

For example:

1
2
3
4
a!sortInfo(
        field: recordType!Customer.fields.sumOfSales,
        ascending: false
      )

If you are sorting in a!queryEntity(), you must reference the field by name in quotations.

For example:

1
2
3
4
a!sortInfo(
        field: "lastName",
        ascending: false
      )

When applying a sort to the a!relatedRecordData() function, you must reference record fields or related record fields from the related record type specified in the relationship parameter of the function.

See Filtering and sorting the related record set for more information.

Sorting on aggregated data in a query

When an alias is defined in the grouping or measure of your query, you must use the alias instead of the record field reference as the sort field.

For example:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
a!queryRecordType(
  recordType: recordType!Case,
  fields: a!aggregationFields(
    groupings: a!grouping(
      field: recordType!Case.fields.createdOn,
      interval: "DATE_SHORT_TEXT"
!     alias: "createdOn",
    ),
    measures: a!measure(
      field: recordType!Case.fields.id,
      function: "COUNT",
      label: "# of cases",
      alias: "caseCount"
    )
  ),
  pagingInfo: a!pagingInfo(
    startIndex: 1,
    batchSize: 500,
!   sort: a!sortInfo(field: "createdOn", ascending: true)
  )
).data

Sorting on records-powered charts

To sort your chart data, you can:

  • Use the alias of any groupings or measures to sort by fields referenced in the chart.
  • Use a record field or related record field reference to sort by fields that are not referenced in the chart. The field must be of type Number (Integer), Number (Decimal), Date, Date and Time, Time, or Boolean.

You can add multiple sort fields on line, bar, and column charts that uses a record type as the source.

See Configure Charts Using Records for more information on sorting records-powered charts.

Example

You can copy and paste these examples into the Expression Rule Designer to see how this works.

1
2
3
4
	=a!sortInfo(
	  field: "name",
	  ascending: true()
	)

Returns

1
2
	[field=name,
	 ascending=true]

For more examples, see Query Recipes

Feature compatibility

The table below lists this function's compatibility with various features in Appian.
Feature Compatibility Note
Portals Compatible
Offline Mobile Compatible
Sync-Time Custom Record Fields Incompatible
Real-Time Custom Record Fields Incompatible
Process Reports Incompatible

You cannot use this function to configure a process report.

Process Events Incompatible

You cannot use this function to configure a process event node, such as a start event or timer event.

Open in Github Built: Mon, Dec 05, 2022 (08:15:39 PM)

On This Page

FEEDBACK