a!recordFilterList() Function Share Share via LinkedIn Reddit Email Copy Link Print On This Page Function a!recordFilterList( name, options, defaultOption, isVisible, allowMultipleSelections ) Creates a list user filter that can be used in a record list or records-powered grid. Parameters Keyword Type Description name Text The name of the user filter that displays to users. options FacetOption Array Array of filter options created with a!recordFilterListOption(). defaultOption Text Determines which, if any, filter options are applied when a record list first loads. If allowMultipleSelections is false, only one default option will be automatically applied. isVisible Boolean Determines whether the filter is visible to the user at runtime. Default is true. allowMultipleSelections Boolean Determines if the filter will allow the user to select a single option or multiple options. Default is true. Returns Facet Usage considerations Where to use this function This function can only be used in a record type to create a user filter. Create filter options To create the options within a!recordFilterList(), use the a!recordFilterListOption() function. Since users can save filter values, try to use expressions that rarely change the options available. If users save an option that is not available the next time they load the record, a warning message will display and the user may need to update their saved filter. Use the defaultOption parameter The defaultOption parameter allows developers to choose one or more filter options to apply when a record list first loads. The number of default options you can specify depends on the allowMultipleSelections parameter. By default, the allowMultipleSelections is set to true, so you can apply one or more values in the defaultOption parameter. However, if you change allowMultipleSelections to false, then you can only apply one value in the defaultOption parameter. Example The following examples reference a Customer record type, which has a many-to-one relationship with the Region record type. For additional examples, see Expression user filter configuration. Record type object references are specific to each environment. If you copy and paste these examples into your interface, they will not evaluate. Use them as a reference only. User filter for active or inactive customers In this example, we're adding a "Status" user filter on the Customer record type, so users can filter by active or inactive customers. By default, the user filter will have "Active" selected, so users only see active customers when the record list first loads. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 =a!recordFilterList( name: "Status", options: { a!recordFilterListOption( id: 1, name: "Active", filter: a!queryFilter( field: recordType!Customer.fields.status, operator: "=", value: true ) ), a!recordFilterListOption( id: 2, name: "Inactive", filter: a!queryFilter( field: recordType!Customer.fields.status, operator: "=", value: false ) ) }, defaultOption: "Active", isVisible: true, allowMultipleSelections: true ) User filter for customer regions In this example, we're adding a "Region" user filter on the Customer record type, so users can filter by customer regions in the United States. By default, the user filter will have "North" and "East" selected, so users only see customers in the North and East regions on the United States when the record list first loads. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 a!recordFilterList( name: "Region", options: a!localVariables( local!fieldValues: a!queryRecordType( recordType: recordType!Region, fields: recordType!Region.fields.name, pagingInfo: a!pagingInfo( 1, 5000 ) ).data, a!forEach( items: local!fieldValues, expression: a!recordFilterListOption( id: fv!index, name: fv!item[recordType!Region.fields.name], filter: a!queryFilter( field: recordType!Customer.fields.regionId, operator: "=", value: fv!item[recordType!Region.fields.id] ) ) ) ), defaultOption: {"North", "East"}, isVisible: true, allowMultipleSelections: true ) Feature compatibility The table below lists this function's compatibility with various features in Appian. Feature Compatibility Note Portals Partially compatible Can be used with Appian Portals if it is connected using an integration and web API. Offline Mobile Partially compatible Can be used with offline mobile if it is loaded at the top of the form. Sync-Time Custom Record Fields Incompatible Real-Time Custom Record Fields Incompatible Custom record fields that evaluate in real time must be configured using one or more Custom Field functions. Process Reports Incompatible Cannot be used to configure a process report. Process Events Incompatible Cannot be used to configure a process event node, such as a start event or timer event. Process Autoscaling Compatible Feedback Was this page helpful? SHARE FEEDBACK Loading...