Versions Compared

Key

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


Excerpt
hiddentrue

Use formula as a separate column or as an aggregation option within other column types. You can input formula inside embedded JavaScript Editor and get results on the grid view. The grid can process formula logic and display formula results.


This page describes formulas functionality in the Table Grid Editor for Jira Cloud. 


A Formula is a separate column type based on JavaScript. Add a separate column using formula column type, input formula inside embedded JavaScript Ace Editor and get results on the grid. The grid can process formula logic and aggregate formula results.

Formula column type

You can add a formula as a separate column in a grid by selecting the formula column type. The column uses JavaScript to create formulas. 

Image RemovedImage Added

Formula expressions - editor, where you can input JavaScript formula code. It uses Ace Editor, which highlights the syntax.

Info
titleError types in the formula column type

You can get the error as a result of the formula execution using following error types:

  • #error - syntax error

  • #type operation error - operation could not be executed using different column types.

Formulas as an aggregation function

You can use formula as an aggregation operation in other columns.

It provides you the flexibility to operate grid data in different ways. 

This feature is available for all column types, supported by the Table Grid Next Generation for Jira Cloud.



Formula expressions

In order to display formula result in the grid column input JS expression in the formula expression configuration.

You can do following operations using formulas: 

  • string concatenation;

  • mathematical operations with numbers: additionsubtractionmultiplicationdivision; 

  • date subtraction - it's possible to use Moments.js library;

  • conditions

  • userlist operation


Formula syntax

You can create a formula using JavaScript. The formula can calculate both columns with values inside and other columns that have empty values.

To run the formula when columns have empty values check the checkbox in the column configuration as below.

Image Added

If you want to make the column values searchable - enable the Index data checkbox.

Image Added

You can create a formula using JavaScript. The column ID is a variable, use it in the following format: $(yourColumnId).

Use return as a keyword to get the formula result.


Note
titleUserlist in formula

Use the following example to display Userlist column type in the formula

Code Block
languagejs
themeEclipse
titleUserlist in formula
return $(user).value



Code Block
languagejs
themeEclipse
titleString concatenation
collapsetrue
return $(firstStringColumnId) + ' ' + $(secondStringColumnId);


Code Block
languagejs
themeEclipse
titleNumbers operations
collapsetrue
//Numbers and Integer column type
return $(numb1) * $(numb2) return $(numb1) / $(numb2) return $(numb1) + $(numb2) return $(numb1) - $(numb2) return Math.abs()


Code Block
languagejs
themeEclipse
titleCheckbox condition
collapsetrue
if($(check) || $(role) === 'Team lead'){ return $(numb1) * $(numb2) } else { return $(numb1) / $(numb2) / 0 }


Code Block
languagejs
themeEclipse
titleUsing variables with date and moment.js library
collapsetrue
firstDate = moment($(firsdt)); 
var secondDate = moment($(seconddt)); 
var difference = firstDate.diff(secondDate); 
return Math.abs(moment.duration(difference).asDays());




Examples

Below you can find formula examples with most common expressions.

Condition with numbers

This example shows how to provide exam results, based on the conditions specified in the formula. You can use conditions in the formula with all available column types.

Code Block
languagejs
themeEclipse
titleCondition formula expression
var correctPercent = $(correct) * 100 / $(total)
var result = ''
if($(level) === 'low') {
 result = correctPercent > 60 ? 'Passed' : 'Fail'
} else if ($(level) === 'medium') {
 result = correctPercent > 70 ? 'Passed' : 'Fail'
} else {
 result = correctPercent > 80 ? 'Passed' : 'Fail'
}
return result
Date subtraction

This example shows how to subtract Date. You can use Date, Time, DateTime column types.

Code Block
languagejs
themeEclipse
titleDate subtraction using Moments.js formula expression
var firstDate = moment($(startDate));
var secondDate = moment($(endDate));
var difference = firstDate.diff(secondDate);
return Math.abs(moment.duration(difference).asDays());
Checkbox

This example shows how to use checkbox column type in condition formula. 

Code Block
languagephp
themeEclipse
titleCheckbox formula expression
if($(calculate)){
    return $(salary) + $(bonus)
} else {
    return $(salary)
}
Numbers

This example shows how to use JavaScript Math

Code Block
languagejs
themeEclipse
titleNumbers using JS Math operations formula expression
var sum = $(a) + $(b)
if(sum > 1000) {
    return sum * $(coefficient)
} else {
    return sum / $(coefficient)
}
String concatenation

This example shows how to concatenate string column type. 

Code Block
languagejs
themeEclipse
titleString Concatenation expression
return $(user) + ' ' + $(position)


Table of Contents
maxLevel2