JQL Search
Elements Checklist offers a way to apply conditions on Elements Checklist panels in JQL searches.
As Elements Checklist does not write data in custom fields, it provide a dedicated JQL function.
Server only
JQL search is only available on the Server version of Elements Checklist. An issue has been opened and tracked on our support portal to make it available on Cloud.
Elements Checklist JQL function
Panel content can be used in JQL to search for issues. For this purpose, a JQL function is provided by Elements:
Elements in elementsPanelsFilter("PANEL_NAME","QUERY")
Panel name
Name of the panel on which the filter shall be applied.
Panel names are unique per project, if multiple panels with the same name exists on multiple projects, the filter will match all of them.
To apply a filter on a specific panel, users must add a constraint on the project, ie:
project = "Expense report" AND Elements in elementsPanelFilter(...
The panel name is case sensitive
Query
You can search for panels with the following attribute types : Text (simple or multi line), Number, Calculate, Checkbox, User, Date and Select.
We'll illustrate search functions with the following panel:
Example Elements Checklist panel in Issue view
Example Elements Checklist panel configuration
Text (simple and multiline)
Text attributes can be searched like free text JQL search in JIRA (eg: summay ~ "elements")
Operator | Argument | Description |
---|---|---|
~ | a text | Fuzzy search on attribute content. Matches any element with an attribute value matching the query |
Text containing spaces
Text argument containing spaces or special characters must be surrounded with quotes. See the examples below
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "Comment ~ Eat") | Issues with an 'Expenses' panel with the word 'Eat' in the 'Comment' attribute (any line) |
Elements in elementsPanelsFilter("Expenses", "Comment ~ 'Expo Hotel'") | Issues with an 'Expenses' panel with the words 'Expo' and 'Hotel' in the 'Comment' attribute (any line, any word order) |
Number and calculate
Number and calculate results (not in error) can be searched in JQL like JIRA number custom fields.
Operator | Argument | Description |
---|---|---|
= | A number | Matches attribute whose value is strictly equal to the number in parameter |
< | A number | Matches attribute whose value is strictly lower than the number in parameter |
<= | A number | Matches attribute whose value is strictly lower than or equal to the number in parameter |
> | A number | Matches attribute whose value is strictly bigger than the number in parameter |
<= | A number | Matches attribute whose value is strictly bigger than or equal to the number in parameter |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "Amount > 100") | Issues with an 'Expenses' panel having an 'Amount' attribute bigger than 100 (any line) |
Elements in elementsPanelsFilter("Expenses", "Amount = 13") | Issues with an 'Expenses' panel having an 'Amount' attribute equals to 13 (any line) |
Elements in elementsPanelsFilter("Expenses", "Amount <= 50") | Issues with an 'Expenses' panel having an 'Amount' attribute lower than or equals to 50 (any line) |
Search on computed values
JQL Search can also be executed on computed values from a specific column. All the operators define above worked for following variants.
Variant | Argument | Description |
---|---|---|
sum | Column name | Total all rows value for the given column name |
avg (or average) | Column name | Average all rows value for the given column name |
min | Column name | Check all rows value and get the minimal one for the given column name |
max | Column name | Check all rows value and get the maximal one for the given column name |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "sum(Amount) > 500") | Issues with an 'Expenses' panel having sum of all 'Amount' values bigger than 500 |
Elements in elementsPanelsFilter("Expenses", "avg(Amount) <= 50.2") | Issues with an 'Expenses' panel having average of all 'Amount' values less or equals than 50.2 |
Checkbox
Value
Checkbox can be searched in JQL
Operator | Argument | Description |
---|---|---|
= | true | Matches any checked attribute |
= | false | Matches any unchecked attribute |
= | allTrue | Matches panels with attribute having all lines checked |
= | allFalse | Matches panels with attribute having all lines unchecked |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "Approved = true") | Issues with an 'Expenses' panel having at least one element with Approved checked |
Elements in elementsPanelsFilter("Expenses", "Approved = allTrue") | Issues with an 'Expenses' panel having all elements with Approved checked |
Elements in elementsPanelsFilter("Expenses", "Approved = allFalse") | Issues with an 'Expenses' panel having all elements with Approved unchecked |
Percentage
You can also search on Percentage of complete / remaining checkbox attributes.
Variant | Argument | Description |
---|---|---|
checked | A number + "%" | Percentage of checkbox attributes which are completed |
unchecked | A number + "%" | Percentage of checkbox attributes which are remaining |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "checked(Approved) > 75%") | Issues with an 'Expenses' panel having more than 75% of checked 'Approved' attribute |
Elements in elementsPanelsFilter("Expenses", "unchecked(Approved) <= 50%") | Issues with an 'Expenses' panel having less than or equal to 50% of unchecked 'Approved' attribute |
User
User can be searched in JQL using user id.
Operator | Argument | Description |
---|---|---|
= | user name | Matches a user in an user attribute |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "Manager = thomas") | Issues with an 'Expenses' panel having at least one element with Manager set to 'thomas' |
Search is made on the user name, not the ful name.
Issue
Issue can be searched in JQL using issue key.
Operator | Argument | Description |
---|---|---|
= | issue key | Matches an issue in an issue attribute |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Tasks", "Bug = ELT-98") | Issues with a 'Tasks' panel having at least one element with Bug set to 'ELT-98' issue |
Date
Dates can be searched in JQL like JIRA date custom field. We do not support date functions for now.
The date format is yyyy/mm/dd (eg. 2010/01/15)
Operator | Argument | Description |
---|---|---|
= | A date | Matches attribute whose value is strictly equal to the date in parameter |
< | A date | Matches attribute whose value is strictly lower than the date in parameter |
<= | A date | Matches attribute whose value is strictly lower than or equal to the date in parameter |
> | A date | Matches attribute whose value is strictly bigger than the date in parameter |
<= | A date | Matches attribute whose value is strictly bigger than or equal to the date in parameter |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "Date > 2017/08/22") | Issues with an 'Expenses' panel having an Date attribute after 2017/08/22 (any line) |
Elements in elementsPanelsFilter("Expenses", "Date = 2017/08/22") | Issues with an 'Expenses' panel having an Date attribute equals to 2017/08/22 (any line) |
Elements in elementsPanelsFilter("Expenses", "Date <= 2017/08/22") | Issues with an 'Expenses' panel having an Date attribute before or equal to 2017/08/22 (any line) |
Select
Select can be searched in JQL using select display value. It works for select with single or multiple values and will searched through all projects.
Operator | Argument | Description |
---|---|---|
= | select value | Matches attribute whose value is strictly equal to the select string value in parameter |
!= | select value | Matches attribute whose value is strictly different to the select string value in parameter |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "Type = HOTEL") | Issues with an 'Expenses' panel having select attribute 'Type' equals to 'HOTEL' (any line) |
Elements in elementsPanelsFilter("Expenses", "Type != PARKING") | Issues with an 'Expenses' panel having select attribute 'Type' different to 'PARKING' (any line) |
If the value or attribute name is written in more than one word, wrap the text in quote, e.g : Elements in elementsPanelsFilter("Expenses", "Type != 'CAR WASH' ")
Query on panel
Operator | Description |
---|---|
is empty (or isEmpty) | Check if panel is empty |
is not empty (or isNotEmpty) | Check if panel is not empty |
Examples
Example | Result |
---|---|
Elements in elementsPanelsFilter("Expenses", "is empty") | Issues with an empty 'Expenses' panel |
Elements in elementsPanelsFilter("Expenses", "is not empty") | Issues with a not empty 'Expenses' panel |
Hints
It is not possible to add conditions on attributes of type File
Any attribute or value that contains spaces should also be surrounded with single quotes, example:
Elements in elementsPanelsFilter("Expenses report", "'Name of expense' ~ 'Lunch meal'")
Attributes supported
It is not possible to add conditions on attributes of types Components, File and Version.