Versions Compared

Key

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


Excerpt


UI Text Box
sizemedium
typeinfo

There are multiple parsing modes available in the expression parser. The two most commonly used parsing modes are:

  • Basic: with this simple parsing mode you can write free text and insert field codes anywhere in your text. These field codes will be replaced at runtime with the corresponding field values of the issue currently being processed.
  • Advanced: with this parsing mode we can do much more complex text composition thanks to the usage of functions for replacing substrings, changing cases, reading fields in linked issues, sub-tasks, JQL selected issues, and much more. It requires the text to be parsed to be written as a string expression respecting the parser syntax.

    You can easily switch between parsing modes. The available modes depend on the context!

    UI Text Box
    typetip

    Most functions will accept text values so casting values to text is a very powerful function. Details can be found below in the converting data types section!

    Additionally, you can directly transform a field value to text using the following syntax: %{...somefield}

    UI Expand
    titleParsing modes overview
    ModeSupported featuresReturn typeExampleBasicField codes
    Status
    subtletrue
    titletext

    The basic parsing mode supports the usage of field codes. Field codes can be used to access issue field values.

    Code Block
    languagebash
    titlesimple text using a field code to read the summary
    linenumberstrue
    This is the issue summary: %{trigger.issue.summary}
    Advanced

    Field codes

    Parser Functions

    Status
    subtletrue
    titletext

    The advanced parsing mode has a defined syntax that allows you to write functions to read and manipulate data from any issue in Jira. Field codes are supported as well as clear text, written in quotation marks.

    Code Block
    languagebash
    titleAdvanced expression to read the issue summary and use a function to get the assignee mail address
    linenumberstrue
    This is the issue summary:" + %{trigger.issue.summary} + " and the assignee mail is: " + userEmail(%{trigger.issue.assignee})
    Math/date-time

    Field codes

    Parser Functions

    Status
    subtletrue
    titlenumber
    Status
    subtletrue
    titledate
    Status
    subtletrue
    titledate_time

    The mathematical and date time parsing mode works like the advanced mode but expect a number as result instead of a string. The resulting number is used to updated numeric or date time fields. In case of date or date time fields the number will be cast to a date.

    Code Block
    languagebash
    titleTime to resolve the issue
    linenumberstrue
    {trigger.issue.resolutionDate} - {trigger.issue.createdDate}
    Logical

    Field codes

    Parser Functions

    Status
    subtletrue
    titleboolean

    The logical parsing mode works like the advanced parsing mode but expression result must return true or false.

    Code Block
    languagebash
    titleCheck if the assignee is equals the reporter
    linenumberstrue
    {trigger.issue.assignee} = {trigger.issue.reporter}
    Issue List

    Field codes

    Parser Functions

    Statussubtletruetitleissue LISTString List

    Field codes

    Parser Functions

    StatussubtletruetitleTEXT LISTMixed

    Field codes

    Parser Functions written in three curly braces

    Status
    subtletrue
    titletext

    UI Text Box
    typetip

    You can write your text in basic mode, and then switch to advanced mode using Automatic parsing mode converter.

    The text to be parsed will be automatically rewritten as a string expression. Now, you can simply make the modifications you require, making use of text formatting functions, or inserting math or time expressions where needed.

    To update issue fields the parsing result will be cast to the expected value e.g. a user name will be cast to a user to update a user field like the assignee field.

    parsing mode determines how the JWT for Jira Cloud expression parser interprets an expression. The available parsing modes depend on the context in which you use the expression.


    Image Added



    Available parsing modes

    Page properties report
    headingsShort description, Supported elements, Output
    reverseSorttrue
    cqllabel = "parsing_mode" and space = currentSpace() and ancestor = currentContent()


    Comments

    UI Text Box
    typeinfo

    Comments can be added to all parsing modes. They serve as internal documentation for the expression and are ignored when evaluating the expression.


    Parsing modeSyntaxExamples
    General

    Only available when using expressions enclosed by %{}.

    Starts with # and ends either at the end of the line or if the expression is closed by }


    Code Block
    List of issue keys for %{issue.key #choose an issue} is:
    %{subtasks() # and show all sub-tasks}


    Code Block
    %{# This example simply returns the number of linked issues using a JWT expression
     
    %{issue.links.length}}


    LogicalIt starts with # and ends at the end of the line


    Code Block
    %{issue.key} = "PRJ-42" # simple comparison with issue key


    Code Block
    # This example simply returns the number of linked issues using a JWT expression
     
    %{issue.links.length}


    Jira expressionIt starts with // and ends with the end of the line


    Code Block
    issue.key == 'PRJ-42' // simple comparison with issue key





    Excerpt Include
    DECADIS:Contact support
    DECADIS:Contact support
    nopaneltrue