Versions Compared

Key

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


UI Text Box
sizemedium
typeinfo

This function adds or subtracts time to or from any given date.

Weekends will not be counted as working days.



Code Block
languagebash
titleSyntax
linenumberstrue
addTimeSkippingWeekends(timestamp, timeToBeAdded, timeZone) #Output: Number


UI Expand
titleExamples


Parser expressionDescription


Code Block
languagebash
linenumberstrue
addTimeSkippingWeekends({issue.dueDate}, 1 * {MONTH} + 2 * {HOUR}, LOCAL)


This example adds 1 month and 2 hours to the issue's due date.

Weekends won't be taken into account.


Code Block
languagebash
linenumberstrue
addTimeSkippingWeekends({issue.created}, 3 * {DAY} + 1 * {HOUR}, LOCAL)


This example adds 3 days and 1 hour to the issue's creation date.

Weekends won't be taken into account.


Code Block
languagebash
linenumberstrue
addTimeSkippingWeekends({issue.dueDate}, - 1 * {YEAR}, LOCAL)


This example subtracts 1 year from the issue's due date.

Weekends won't be taken into account.



UI Expand
titleAdditional information

Parameters used in this function

ParameterInput (data type)Description
timestamp

Status
subtletrue
titlenumber

The parameter must be valid timestamp. Usually this value is retrieved from a field (e.g. due date, created date).
timeToBeAdded
Page properties
hiddentrue
Status
Tech review

Status
titletodo

Style guide

Status
titletodo

Status
titletodo
Status
colourYellow
titleReady for review
Status
colourGreen
titledone
Status
colourRed
titleflagged

Page properties
hiddentrue
Outputnumber
Short descriptionAdds timeToBeAdded to and returns a

Status
subtletrue
titlenumber

The offset, supporting the usage of time macrosLearn more about time macros. Negative values are used to subtract time.

timeZone

Status
subtletrue
title

timezone

The time zone used for the calculation. 


UI Text Box
typetip

Work days might depend on the time zone - it might be Sunday on the west coast of the US while at the same time it's already Monday in Australia. 



UI Expand
titleOutput

This function

sizemedium
typeinfo

This function adds timeToBeAdded to and returns a

Status
subtletrue
titlenumber
with the difference that weekends do not count in the sum
 representing a timestamp.

UI Text Box
typetip

The output can be written into any Jira field of type Date Picker or Date Time Picker.

Another very common use case is to use this function in a JWT calculated date-time field.

If you want to convert the number into a text, you might want to take a look at the dateTimeToString() function.





UI Text Box
sizemedium
typetipinfo

Variant of the function where you can additionally define the start and the end of the weekend.

This function is useful when the non-working days differ from the standard (Saturday/Sunday)Use negative values at timeToBeAdded for subtracting time from t.


Code Block
languagebash
titleSyntax
linenumberstrue
addTimeSkippingWeekends(number ttimestamp, number timeToBeAdded, timeZone time_zone, startOfWeekend, endOfWeekend) #Output: Number


UI Expand
titleExamples


Parser expressionDescription
UI Text Box
typeinfo

t represents a date-time which coincides with a Saturday

timeToBeAdded = 2 * {HOUR}

The function will return a date-time for next Monday at 02:00


Code Block
languagebash
linenumberstrue
addTimeSkippingWeekends({system.currentDateTime}, 12 * {HOUR}, LOCAL, {FRIDAY}, {SATURDAY})


This example adds 12 hours to the current date and time.

Fridays and Saturdays are not counted and will be skipped.


Code Block
languagebash
linenumberstrue
addTimeSkippingWeekends({system.currentDateTime}, -2 * {DAY}, LOCAL, {SUNDAY}, {TUESDAY})


This example subtracts 2 days from the current date and time.

Sundays, Mondays and Tuesdays are not counted and will be skipped.



UI Expand
titleAdditional information

Parameters used in this function

true
ParameterInput (data type)Description
timestamp

Status
subtletrue
titlenumber

The parameter must be valid timestamp. Usually this value is retrieved from a field (e.g. due date, created date).
numberOfDaystimeToBeAdded

Status
subtletrue
titlenumber

The number defined here will be the offset in days. The offset, supporting the usage of time macrosLearn more about time macros.

Negative values are used to substract days.Internally JWT multiplies this value with the time macro  {DAY} to add full days to the timestamp. Learn more about time macros. subtract time.

timeZone

Status
subtletrue
titletimezone

The time zone used for the calculation. 

expand

startOfWeekend

Status
subtletrue
titlenumber

Valid values are {MONDAY}{TUESDAY} ... {SUNDAY}.
endOfWeekend

Status
subtletrue
titlenumber

Valid values are {MONDAY}{TUESDAY} ... {SUNDAY}.Learn more about timezones
Excerpt Include
Dates, times and time zonesDates, times and time zonesnopanel


UI Text Box
typetip

Work days might depend on the time zone - it might be Sunday on the west coast of the US while at the same time it's already Monday in Australia. 



UI Expand
titleOutput

This function returns a

Status
subtletrue
titlenumber
 representing a timestamp

UI Text Box
typetip

The output can be written into any Jira field of type Date Picker or Date Time Picker.

Another very common use case is to use this function in a JWT calculated date-time field.

If you want to convert the number into a text, you might want to take a look at the dateTimeToString() function.




Image AddedUse cases and examples

Page properties report
firstcolumnUse case
headingsJWT feature, Workflow function, Field type, Automated action, Parser functions
cqllabel = "parser_func_addtimeskipingweekends" and space = currentSpace()


Page properties
hiddentrue



Status
Tech review

Status
colourGreen
titledone

Style guide

Status
colourGreen
titledone

Status
titletodo
Status
colourYellow
titleReady for review
Status
colourGreen
titledone
Status
colourRed
titleflagged



Page properties
hiddentrue


Short description

Adds or subtracts time to or from any given date.

Output

Status
subtletrue
titlenumber

Available since

Status
subtletrue
colourBlue
title2.2.7

Label