Versions Compared

Key

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

...

Formulas are constructed by stringing together operators, values and functions in a way that a single value results from them. Different elements in the formula give different numbers of values:

  • Literal values, fields, and mathematical functions all result in one value

...

  • Relation functions can result in multiple values, depending on the number of issues that are involved

...

  • Operators or aggregating functions reduce multiple values into one

...

A formula must result in a single value, so subtasks('Quantity') is invalid, but sum(subtasks('Quantity')) is valid.

Info

Read more about Functions.

Literal Values

You can use constant values in your formulas. Their type is determined by their format.

...

Functions are versatile, we provide three types of them.

  • One type consists of mathematical functions, to enable more calculations you can do

...

  • The second are aggregating functions, where you combine multiple values into one

...

  • , which is necessary to reduce the results of some functions of the third type

  • Relation functions, which fetch values from other related issues

...

  • , so you can get values from subtasks for example

Mathematical Function

Description

Example

round(number, decimals)

Rounds the passed value to the specified number of significant decimal digits.

  • round(15.386, 2) = 15.39

  • round(15.5, 0) = 16

floor(number)

Rounds the passed value to the nearest lower integer.

  • floor(16.34) = 16

ceiling(number)

Rounds the passed value to the nearest higher integer.

  • ceiling(16.34) = 17

abs(number)

Gives the absolute value, i. e. the positive value.

  • abs(-15) = 15

  • abs(15) = 15

signum(number)

Normalises negative values to -1, zero to 0, and positive values to 1.

  • signum(-255) = -1

  • signum(0) = 0

  • signum(135) = 1

mod(dividend, divisor)

Calculates the remainder of the dividend when divided by the divisor.

  • mod(13, 2) = 1

Aggregating Function

Description

Example

sum(number…)

Sum of the passed values

  • sum(1, 4, 5) = 10

avg(number…)

Average of the passed values

  • avg(3, 5, 7) = 5

min(number…)

Smallest of the passed values

  • min(-12, 0, 346) = -12

max(number…)

Largest of the passed values

  • max(-135, 0, 1) = 1

Relation Function

Description

Example

subtasks(field)

Retrieves the values of the passed field from all subtasks.

Must be aggregated before using outside of a function.

  • avg(subtasks('Story Points'))

parent(field)

Retrieves the values of the passed field from the parent of a subtask.

  • parent('Quantity')

issuesInEpic(field)

Retrieves the values of the passed field from all issues in an epic.

Must be aggregated before using outside of a function.

  • min(issuesInEpic('Budget'))

epic(field)

Retrieves the values of the passed field from the epic of an issue.

  • epic('Price')

linkedIssues(linkName, field)

Retrieves the values of the passed field from all linked issues.

Must be aggregated before using outside of a function.

  • max(linkedIssues('causes', ‘Percentage’))

...