Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


UI Text Box
sizemedium
typeinfo

This validator can block a transition based on the state and the number of an issue's sub-tasks.

The validator only makes sense when used in a workflow used by standard issue types.

You can specify multiple filter criteria that will be "and concatenated". Per default, all sub-tasks must match the combination of all criteria 


Image AddedConfiguration

UI Expand
titleFilter by issue type

If you select specific issue typesall sub-tasks must be any of the selected issue types. If sub-tasks with other issue types are found, the validator will fail.

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

UI Text Box
typeinfo

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.



UI Expand
titleFilter by status

If you select specific statusesall sub-tasks must be in any of the selected statuses. If sub-tasks with other statuses are found, the validator will fail.

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

UI Text Box
typeinfo

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.



UI Expand
titleFilter by resolution

If you select specific resolutionsall sub-tasks must have any of the selected resolutions. If sub-tasks with other resolutions are found, the validator will fail.

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

Page properties
hiddentrue
StatusTech review

Status
titletodo

Style guide

Status
titletodo

Status
titletodo
Status
colourYellow
titleReady for review
Status
colourGreen
titledone
Status
colourRed
titleflagged

Panel

On this page

Table of Contents
exclude(On this page).*
stylecircle
typeflat
separatorpipe

note
UI Text Box
sizemedium
typeinfo

This validator depends on issue type, status, resolution, and number of sub-tasks.

UI Text Box
type
info

In this documentation and the condition configuration you will notice the symbol ( * ) next to some parameters, it means that this field is mandatory and shall not be left empty. Fields without the symbol are optional.

Basic configuration*

Below you will find a detailed description of each parameter of the basic configuration for this validator.

Filter by issue type

Info
iconfalse

Only sub-tasks with the selected issue types are allowed. Leave empty to allow all issue types.

Filter by status

Info
iconfalse

Only sub-tasks with the selected statuses are allowed. Leave empty to allow all statuses.

Example of possible statuses:

  • Open
  • To Do
  • In progress
  • Done
  • Approved

Filter by resolution

Info
iconfalse

Only sub-tasks with the selected resolutions are allowed. Leave empty to allow all resolutions.

Example of possible resolutions:

  • Unresolved (resolution is empty)
  • Done
  • Duplicate

Filter by field value

If you leave this filter blank, e.g. if the resolution is irrelevant, you must check the additional option Skip resolution filter / issues with unselected resolutions.

If you select specific resolutions 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 with the selected resolutions.



UI Expand
titleFilter by field value

Optionally limit the sub-tasks 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

UI Text Box

Examples: 

ExpressionDescription


Code Block
languagebash
linenumberstrue
%{seed.issue.assignee} != null 


All sub-tasks must be assigned to a user. If unassigned sub-tasks are found, the validator will fail.

UI Text Box
typeinfo

Values in sub-tasks have to be referenced by their seed field codes.



Code Block
languagebash
linenumberstrue
%{issue.dueDate} <= %{seed.issue.dueDate}


All sub-tasks must have a due date of equal to or later than the current issue's due date.

UI Text Box
typeinfo

Values in sub-tasks have to be referenced by their seed field codes.

Info
iconfalse
Only sub-tasks matching the field value condition provided will be allowed. Leave empty for no filtering.



UI Text Box
type
tip

Test your expression by clicking the play button on the top right of the expression box.

info

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.




UI Expand
titleMinimum number of sub-tasks
*

Specify the

Info
iconfalse

The minimum number of subthe sub-tasks required to satisfy selected filtering conditions (issue type, status, resolution, and field values).that need to satisfy the specified filter criteria. The default value is 0 to ensure the validator passes if the current issue does not have any sub-tasks.

UI Text Box
typetip

If you set this number to 1, the validator will fail if the issue does not have any sub-tasks or if the existing sub-tasks don't match the specified filter criteria.



UI Expand
titleMaximum number of sub-tasks
*

Specify the

Info
iconfalse

The maximum number of the counted sub-tasks allowed to satisfy selected filtering conditions (issue type, status, resolution, and field values)that need to satisfy the specified filter criteria. The default is 1000.

UI Text Box
typetip

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



UI Expand
titleAdditional options
Choose from one of the following options (multi-choice is possible):
  • Sub-tasks in unselected issue types will be ignored, i.e., they will be allowed regardless of their status, resolution, field values, and number. Nevertheless, if none of the issue types are selected, checking this option will make the condition behave as if you had selected every issue type.
  • Sub-tasks in unselected statuses will be ignored, i.e., they will be allowed regardless of their resolution, field values, and number. Nevertheless, if none of the statuses are selected, checking this option will make the condition behave as if you had selected every status.
  • Sub-tasks in unselected resolutions will be ignored, i.e., they will be allowed regardless of their field values and number. Nevertheless, if none of the resolutions are selected, checking this option will make the condition behave as if you had selected every resolution.
  • Sub-tasks not satisfying filter by field values will be ignored, i.e., they will be allowed regardless of their number.
UI Expand
titleValidation options

Choose from one of the following options (multi-choice is possible):

  • If the transition is triggered by a JWT post function, the validation will be skipped.
  • If the transition is triggered by a bulk operation, the validation will be skipped.
  • If the create transition is triggered by a clone operation, the validation will be skipped.
  • If the create transition is triggered by a mail handler, the validation will be skipped.

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

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 validator must match all criteria.

UI Text Box
typenote

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 areallowed and will be ignored when evaluating whether the validator passes


UI Text Box
typetip

By default, whenever a value is selected in a filter it will be combined with all other filter criteria and all sub-tasks 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 sub-tasks (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
  • Resolution: blank
  • Additional options: 
    • Skip resolution filter


Code Block
type = Sub-task AND status = Closed


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


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


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


Code Block
(type = Sub-task AND status = Closed AND and resolution = Done) OR type != Sub-task OR resolution != Closed



OptionDescription
Skip issue type filter / issues in unselected issue types

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

Skip status filter / issues in unselected statuses

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

Skip resolution filter / issues with unselected resolutions

The resolution is irrelevant for this validator or sub-tasks with non-selected resolutions will be ignored when evaluating whether the validator passes.

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



UI Expand
titleValidation options

Include Page
DECADIS:_snip_skip validation
DECADIS:_snip_skip validation


UI Expand
titleError message

Include Page
DECADIS:_snip_error_message_validator
DECADIS:_snip_error_message_validator


Add an optional error message to show when validation fails.

Location

UI Expand
titleError message
Info
iconfalse

Define where the error message should be displayed.

Message

Info
iconfalse

Enter plain text and optionally use Field codes, e.g. %{issue.summary}, to insert field values.

UI Text Box
typetip

Test your expression by clicking the play button on the top right of the expression box.

UI Button
titleAdd translation

Info
iconfalse

Click on the Add translation button and choose the desired language to be translated to.

Translations will be displayed based on the user's language setting.

If you want to use this functionality in a condition instead, have a look at the following condition: Condition on sub-tasks



Image AddedUse cases and examples

Page properties report
firstcolumnUse case
headingsJWT feature, Workflow function, Parser functions, Label
cqllabel = "use-case-workflow" and space = currentSpace() and ancestor in ("32215662","32215873")


Excerpt Include
DECADIS:Contact support
DECADIS:Contact support
nopaneltrue


Page properties
hiddentrue



Status
Tech review

Status
colourGreen
titledone

Style guide

Status
colourGreen
titledone

Status
titletodo
Status
colourYellow
titleReady for review
Status
colourGreen
titledone
Status
colourRed
titleflagged


Page properties
hiddentrue


Short descriptionEvaluate the current state (type, status, number, etc.) of sub-tasks.
Label




Page properties
hiddentrue
id1


Mapped(error)
Notes

Currently, this validation option is not available on JWT Cloud, only in server.