You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 31 Next »

This JQL function returns issues that satisfy the specified JQL query and logical expression.

Syntax
issueSelection(subquery, logicalExpression) #Output: Issue list

The subquery must not be empty to avoid negative performance impacts. Always try to keep the number issues returned by the subquery as minimal as possible.

However, if you want run the your JWT expression against many or even all issues you could use one the examples below:

issue in issueSelection('project is not EMPTY', 'your JWT logical expression') //every issue is part of a project
issue in issueSelection('type in standardIssueTypes()', 'your JWT logical expression') //this will return all standard issue types (not sub-tasks)
Examples
Parser expressionDescription
issue in issueSelection('project = QA', '%{issue.assignee} = %{issue.reporter}')
This example returns all issues within the QA project that are assigned to its reporter.
issue in issueSelection('type = Story', '%{issue.subtasks.count} >= 1')
This examples returns all stories that have at least one sub-task.

This example returns all issues within the CRM project with more than 10 comments.

To achieve this, the following functions are used:

issue in issueSelection('category = Support', 'count(filterByResolution(subtasks(), "")) > 0')

This example returns all issues from projects within the Support category with unresolved sub-tasks.

To achieve this, the following functions are used:

issue in issueSelection('type = Task', 'isAClone()')

This example returns all tasks that have been created by cloning an issue.

To achieve this, the following functions are used:

issue in issueSelection('project = KANBAN', 'isInRole(%{issue.assignee}, "Developers")')

This example returns all issues within the KANBAN project that are assigned to users in the Developers role.

To achieve this, the following functions are used:

issue in issueSelection('type = Incident', 'lastFieldChangeTime(%{issue.priority}) > ({system.currentDateTime} - 60 * {MINUTE})')

This example returns all Incidents with a change of priority within the last 60 minutes.

To achieve this, the following functions are used:

issue in issueSelection("type = Bug and resolution = Unresolved", 'matches(%{issue.versions}, ".*EAP.*")')

This example returns all unresolved Bugs with a 'EAP'-labelled version.

issue in issueSelection("project = HR", '!isActive(%{issue.assignee})')

This example returns all issues within the HR project that are assigned to inactive users.

issue in issueSelection("project = JWT", 'matches(%{issue.attachments.details}, "(.*application/pdf.*){1,}")')

This example returns all issues within the JWT project that have at least one PDF file attached.

Additional information

Parameters used in this function

ParameterInput (data type)Description
subquery

TEXT

A JQL query to select the issues that should be further filtered by the logical expression.

logicalExpression

TEXT

A logical expression that returns a boolean value.


Pro tip

Enclose the subquery with single quotes '' instead of double quotes "". Otherwise, every time a double-quotation is used in the subquery, they must be jumped with a slash /.

Output

This function returns an  ISSUE LIST


The result is not what you expected? The number of returned issues feels too low?

By default, the maximum number of issues that will be returned by the JQL subquery, and thus can be processed by the logical expression is 1000.

To ensure the performance of your entire Jira instance, we limit the execution of the JQL function in terms of issue count and execution time. Please refer to your admin if you need to change the configuration.