This condition can hide a transition based on the state and the number of issues stored in an issue field (e.g. a custom text field).

You can specify multiple filter criteria that will be "and concatenated". By default, all identified issues must match the combination of all criteria 


Configuration

Select the text field containing the issues. 

The field must contain a list of issue keys separated by blanks, commas, colons or semi-colons.

If the source field is empty, the overall condition will pass.

If a non-existent issue key is detected in the list, the overall condition fail.



If you select specific issue typesall issues must be of any of the selected issue types. If issues with other issue types are found, the condition will fail.

The additional filters can be used to further restrict the issues to be analyzed.

If you leave this filter blank, e.g. if the issue type is irrelevant, you must check the additional option Skip issue type filter / issues in unselected issue types.

If you select specific issue types and also check the additional option Skip issue type filter / issues in unselected issue types, the additional criteria (status, resolution, field value) will only be applied to the selected issue types.



If you select specific statusesall issues must be in any of the selected statuses. If issues with other statuses are found, the condition will fail.

The additional filters can be used to further restrict the issues to be analyzed.

If you leave this filter blank, e.g. if the status is irrelevant, you must check the additional option Skip status filter / issues in unselected statuses.

If you select specific statuses and also check the additional option Skip status filter / issues in unselected statuses, the additional criteria (issue type, resolution, field value) will only be applied to the issues in the selected statuses.



Optionally specify specific projects, the linked issues must or must not belong to. The following options are available:

OptionDescription

Any project

By default, the issues can be in any project.

Current project

Choose this option to make sure that all issues are in the same project as the current issue.

Any but current project

Choose this option to make sure that all issues are not in the same project as the current issue.



Optionally limit the issues to be counted or analyzed by their field values. To achieve this you must enter an expression in Logical mode. The expression must return  true or false

Examples: 

ExpressionDescription


%{seed.issue.assignee} != null 


All found issues in the specified field must be assigned to a user. If unassigned issues are found, the validator will fail.

You can access the values of issues found in the specified field by referencing their seed field codes.



%{issue.dueDate} <= %{seed.issue.dueDate}


All found issues in the specified field must have a due date of equal to or later than the current issue's due date.

You can access the values of issues found in the specified field by referencing their seed field codes.



If you specify an expression and also check the additional option Skip issues with unmatched field values, the additional criteria (issue type, resolution, field value) will only be applied to the issues that match the expression.




Specify the minimum number of issues that need to satisfy the specified filter criteria. The default value is 1 to ensure the condition fails if the field does not contain issue keys.


Specify the maximum number of issues that need to satisfy the specified filter criteria. The default value is 9999.

If you set this number to 1, the condition will fail as soon as more than one sub-task satisfies the specified filter criteria.



The following options can be used to refine the number of issues you want to analyze in this condition.

Per default all filters are mandatory, filters are "and concatenated" and you cannot save your configuration unless you have specified values. Any sub-task being analyzed by the condition must match all criteria.

If you leave a filter blank you must check the additional option to skip the filter. Otherwise you cannot save your configuration.


The additional options allow you to override the default behavior.

FilterAdditional optionDescription
No value selectedNot checked (error)Not possible. If you want to skip the filter you have to uncheck the corresponding additional option.
No value selectedChecked (tick)

Skip this filter completely. An equivalent would be to select all available options, e.g. all issue types are allowed.

One or multiple values selectedNot checked (error)Enforce that all sub-tasks which are analyzed must have the selected values, e.g. only selected issue types are allowed.
One or multiple values selectedChecked (tick)

Issues not matching the specified value are allowed and will be ignored when evaluating whether the condition passes


By default, whenever a value is selected in a filter it will be combined with all other filter criteria and all issues must match the filter combination.

If you only want to analyze specific issue types (e.g. "Test cases"), select "Test case" in the issue type filter and check the corresponding additional option. This way, other issues (which are not "Test cases") can exist and will not be considered.

Examples

The table below lists a few example configurations and their JQL equivalent.

ConfigurationJQL
  • Issue type: Sub-task
  • Status: Closed


type = Sub-task AND status = Closed


  • Issue type: Sub-task
  • Status: Closed
  • Additional options: 
    • Skip issue type filter


(type = Sub-task AND status = Closed) OR type != Sub-task



OptionDescription
Skip issue type filter / issues in unselected issue types

The issue type is irrelevant for this condition or sub-tasks in non-selected issue types will be ignored when evaluating whether the condition passes.

Skip status filter / issues in unselected statuses

The status is irrelevant for this condition or sub-tasks in non-selected statuses will be ignored when evaluating whether the condition passes.

Field values are irrelevant for this condition or sub-tasks with unmatched field values will be ignored when evaluating whether the condition passes.



If you want to use this functionality in a validator instead, have a look at the following condition: Validation on a list of issue keys



Use cases and examples





Status
Tech review

Style guide



Short descriptionEvaluate the current state (type, status, number, etc.) of issues stored in an issue field.
Label


Deprecated since