Skip to main content
Skip table of contents

Days until resolution skipping weekends

Return the number of days elapsed since the creation of the work item until its resolution skipping weekends.

Configuration

Create a Custom smart number field and use the Jira expression parsing mode.

Expression

CODE
startDate = issue?.created;
endDate = issue?.resolutionDate != null ? issue?.resolutionDate : null;

startDateWeekday = startDate.getDay() == 0 ? 7 : startDate.getDay();
endDateWeekday = endDate.getDay() == 0 ? 7 : endDate.getDay();

isValidDate = startDate != null && endDate != null && endDate.getTime() 
>= startDate.getTime();

milliseconds = 86400000;
naturalDays = isValidDate ? (((endDate.getTime() - startDate.getTime()) -
((endDate.getTime() - startDate.getTime()) % milliseconds)) / milliseconds)
: null;

remain = isValidDate ? (naturalDays % 7) : 0;

if (!isValidDate){ 
return null
} else if(startDateWeekday == endDateWeekday){
return (naturalDays - ((naturalDays - remain )/ 7 * 2));
} else if(startDateWeekday == 7 || (startDateWeekday == 6 
&& endDateWeekday == 7)){
return (naturalDays - ((naturalDays - remain) / 7 * 2)) -1;
} else if(startDateWeekday == 6){
return (naturalDays - ((naturalDays - remain) / 7 * 2)) - 2;
} else if(endDateWeekday == 7){
return (naturalDays - ((naturalDays - remain) / 7 * 2)) - 1;
}  else if(startDateWeekday > endDateWeekday) {
return (naturalDays - ((naturalDays - remain) / 7 * 2)) - 2;
} else{
return (naturalDays - ((naturalDays - remain) / 7 * 2));
}

Format

Default 

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.