Describe the queries that can be done at the UI level.

Overview

Queries for the UI are simplified queries that can be written in different places of the UI generated by the app runtime. For example filters you write in a grid view use these types of queries.

The goal is to allow app users to write a bit more complex queries using plain text. For example you could write the following query for an integer field:

  • Value is 10: 10
  • Value is 5 or 9: 5,9
  • Value goes from 0 to 10 (inclusive): 0..10
  • Value is greater than 10: >10
  • Value is less or equals than 20 or greater or equals than 50: =<20,>=50

Not all types support all features so you should check which features are supported by each type in its documentation.

These queries do not have a public REST API and can only be used through the UI.

Matching of values

Most text types will use a like operator to match values by default. For example relationship, text, users, groups, etc., will use the like operator when matching values.

On the other side, types like integer, time, date, etc., will use the equals operator to match values by default.

If you want to force to match by equals when the default is like, you can use =. For example if you want to match exactly the word TEST in a text field you should use =TEST instead of just TEST.

Some types will allow to use some special values for matching. For example date fields support things like tomorrow or next 3 days. Make sure you check the type’s documentation to see what’s the operator use by default to match values and if they have special values that can be used.

Finally you can match empty values by using a dash: ‘-‘. This will match all records where the value of the field is empty.

Operators

These are the operators you can use for each field. Please check each type’s documentation to see which features are supported.

Many values

You can specify many values separating them using commas. For example:

  • Value is like one, two or three: one,two,three
  • You can use " when you have commas in the text. For example value should be like one,two or three: "one,two",three
  • You can use it with almost different types. For example integer: 3,5,7
  • You could also mix them with other operators. For example values from 0 to 10 or from 20 to 30: 0..10,20..30

Between

Allow to specify a range of values, which is useful for numeric types or date types. In this case you should use the format from..to. Here are some examples:

  • Filter by integer field with values between 0 and 10 (inclusive): 0..10
  • Filter by decimal field with values between 2.5 and 4.5 (inclusive): 2.5..4.5
  • Filter by date field with values between 2016-07-01 and 2016-07-15: 2016-07-01..2016-07-15
  • Filter by time field with values between 09:00 and 12:00: 09:00..12:00

Less

Allow to specify the maximum value (exclusive) of a field, which is useful for numeric types or date types. In this case you should use the format <maxValue. Here are some exmples:

  • Filter by integer field with values less than 10: <10
  • Filter by decimal field with values less than 2.75: <2.75
  • Filter by date field with values less than 2016-07-01: <2016-07-01
  • Filter by time field with values less than 12:00: <12:00

Less or equals

Allow to specify the maximum value (inclusive) of a field, which is useful for numeric types or date types. In this case you should use the format <=maxValue. Here are some exmples:

  • Filter by integer field with values less or equals than 10: <=10
  • Filter by decimal field with values less or equals than 2.75: <=2.75
  • Filter by date field with values less or equals than 2016-07-01: <=2016-07-01
  • Filter by time field with values less or equals than 12:00: <=12:00

Greater

Allow to specify the minimum value (exclusive) of a field, which is useful for numeric types or date types. In this case you should use the format >minValue. Here are some examples:

  • Filter by integer field with values greater than 10: >10
  • Filter by decimal field with values greater than 2.75: >2.75
  • Filter by date field with values greater than 2016-07-01: >2016-07-01
  • Filter by time field with values greater than 12:00: >12:00

Greater or equals

Allow to specify the minimum value (inclusive) of a field, which is useful for numeric types or date types. In this case you should use the format >=minValue. Here are some examples:

  • Filter by integer field with values greater or equals than 10: >=10
  • Filter by decimal field with values greater or equals than 2.75: >=2.75
  • Filter by date field with values greater or equals than 2016-07-01: >=2016-07-01
  • Filter by time field with values greater or equals than 12:00: >=12:00

Starts with

Allow to finds the strings that begins with the specified characters of a field, which is useful for text types. In this case you should use the format /charToStartWith. Here are some examples:

  • Filter by text field with values starts with s: /s
  • Filter by text field with values starts with Will: /Will

Ends with

Allow to finds the strings that ends with the specified characters of a field, which is useful for text types. In this case you should use the format charToEndWith/. Here are some examples:

  • Filter by text field with values ends with n: n/
  • Filter by text field with values ends with own: own/

Regular expressions

Allow to finds the strings that matches with an specific regular expression on a field, which is useful for text types. In this case you should use the format /regExp/. Here are some examples:

  • Filter by text field with values that starts with an S or ends with n: /^S.*|.*n$/
  • Filter by text field with values ends with own: /own$/
Back to top