Versions Compared

Key

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


UI Text Box
sizemedium
typeinfo

The Logical validator of JWT DC is not yet available in JWT Cloud but can be implemented easily using a Jira expression validator.

Since JWT JWT DC field codes are not available in conditions or validators in JWT Cloud, they have to be replaced by their Jira expression equivalent.


Migration steps

UI Steps


UI Step

Add a Jira expression validator.


UI Step

Build a matching Jira expression depending on the individual configuration. Since the basic concept of JWT parser expressions is strictly different from Jira expressions, it is not possible to migrate them directly.

The following list provides the necessary basics.



Migration details

Fields

Jira expression Field codes differ from the JWT ones, a list of corresponding field codes can be found in Field codes. They are offered in the field code injector of the parser expression editor of the Jira expression validator. For further details of Jira expression field codes please refer to Atlassian's documentation.

Operators

Image ModifiedJWT DC

Jira expressionNotes
===
!=!=
<<
<=<=
>>
>=>=
~.includes()

Example:

Code Block
issue.summary.includes("issue")


!~!...includes()

Example:

Code Block
issue.summary.includes("issue")


IN

.every....includes()

Example:

Code Block
issue?.subtasks?.every(s=>issue?.links?.map(link => link.linkedIssue.key).includes(s.key))


NOT IN ! every....includes()

Example:

Code Block
!issue?.subtasks?.every(s=>issue?.links?.map(link => link.linkedIssue.key).includes(s.key))


ANY IN.some()....includes()

Example:

Code Block
issue?.subtasks?.some(s=>issue?.links?.map(link => link.linkedIssue.key).includes(s.key))


NONE IN!....some()....includes()

Example:

Code Block
!issue?.subtasks?.some(s=>issue?.links?.map(link => link.linkedIssue.key).includes(s.key))


Functions

Jira expression functions are based on the respective data type and are related to JavaScript notion. Details of the available functions can be found in Atlassian's documentation.

UI Text Box
typeinfo

Due to the different architecture, it may happen that the condition gets too complex. This is the case when many fields are checked. The condition cannot be saved, and a corresponding error message will be displayed. If that's the case, the condition has to be split up into two or more. 

Validation options

UI Text Box
typewarning

This parameter is not available in JWT Cloud. 

Error message

UI Text Box
typeinfo

In JWT Cloud, only a fixed text without field codes or translations is supported.


Examples

JWT DC use case

JWT DC parser expression

Jira expression
Make "Time spent" field required


Code Block
{issue.timeSpent} > 0



Code Block
issue?.timeSpent > 0


Block an Epic's transition until all the issues under that Epic are resolved


Code Block
%{issue.issueType} = "Epic" IMPLIES count(filterByResolution(issuesUnderEpic(), "")) = 0



Code Block
issue?.issueType?.name == "Epic" ? issue?.stories?.every(s=>s.resolution != null) : true


Code Block
issue?.isEpic ? issue?.stories?.every(s=>s.resolution!= null) : true


Block a transition until all sub-tasks have certain fields populated


Code Block
count(filterByPredicate(subtasks(), {function.issue.dueDate} != null)) = count(subtasks())



Code Block
issue?.subtasks?.every(i=>i.dueDate != null)




Excerpt Include
DECADIS:Contact support
DECADIS:Contact support
nopaneltrue