Introduction


The Universal Issue Field Value validator allows Jira workflow developers to control field changes in a flexible way. This validator can play role of comparing a user property value with a fixed value or field value. This powerful mechanism lets you validate workflow transition in a flexible way. You can validate almost everything using only one simple validator.

It operates on all Jira standard and custom fields and compares them using a field value, regular expressions, a number of elements and field changes on transitions.

For example you can build the following conditions using our solution:

  • The summary contains a text "error".
  • The assignee was (wherever in history) john.doe.
  • The assignee is not empty.
  • A Field is required.
  • The assignee was changed on the transition screen.
  • At least 2 components have to be selected.
  • An issue has no more than 2 attachments.
  • At least 1 document in the MS Word format (*.docx) is attached to an issue (before the current transition).
  • The description previously contained some text.
Element summary
Status
CURRENT
Version compatibility6.0.1 - Latest
SupportedYes
Introduced in version1.0.0

Condition parameters 

Select field

It is a list of all Jira (standard and custom) issue fields, project attributes, and some extra issue attributes like attachments and number of worklogs.

There are some limitations when you're using some specific values.

FieldRestrictions
Attachments

If you select the "number of elements", it provides a number of files attached to an issue. If the regular expression or field value option is selected, the attachment's names are processed (comma separated if more than one).

This field must NOT be used with previous or historical value comparison and does not work with the "Field was changed on transition" method.

Number of worklogs

It always provides a number of entries in issue's worklogs, regardless the comparison method you've selected.

This field must NOT be used with previous or historical value comparison and does not work with the "Field was changed on transition" method.

Current User

Contains the login of the current user

This field must NOT be used with previous or historical value comparison and does not work with the "Field was changed on transition" method.

Project name

It's the current project's name.

This field must NOT be used with previous or historical value comparison and does not work with the "Field was changed on transition" method.

Project key

It's the current project's key.

This field must NOT be used with previous or historical value comparison and does not work with the "Field was changed on transition" method.

Project category

It's the current project's category name.

This field must NOT be used with previous or historical value comparison and does not work with the "Field was changed on transition" method.

 

Compare type

You may select one of four comparison methods.

OptionDescription
Compare Field ValueIt compares the value of a selected field. If the field contains more than one option (e.g. a multi-select type field), all options are listed as a comma-separated text.
Regular expressionIt allows you to compare the field value (the same as described above) with a regular expression.
Number of elementsIt returns a number of elements in the field. If the field is a simple text or a number, it returns 1 (if the field is not empty). For multi-option enabled fields, the number of elements will be returned. An empty field is always a zero.
Field was changed on transitionIt allows you to check if a field was changed, set or unset on the transition screen.


Which value (optional)

This option allows you to choose which value will be used in a comparison.

  • Current Value
  • Previous value (the last one)
  • Any historical value (excluding the current value)

Operator & Case sensitive (optional)

You can choose the operator for comparison and enable case sensitivity.

Text value or expected behaviour

It's where you can type the desired value. For some fields it can be a list of values. For the "Field was changed on transition" type it contains a list of expected behaviours.

Example of use