I have a custom script field "time since created". I want to do something like this but need help with the proper syntax. Thanks in advance!
if status = Open
return (today - date_created)
if status = Acknowledged
return (acknowledged - date_created)
I found an older post https://answers.atlassian.com/questions/95556/how-to-get-the-time-spent-report-of-issues-in-a-particular-status?page=1#96116
which partially solves my problem. I used the answer to calculate how long an issue has been in the Acknowledged state. I would also like to use it to calculate how long an issue has been in the Open state. The problem is, I think it is calculating time between created and Open which is 0m. Is there any way to modify this?
Thanks.
On JIRA OnDemand it might be possible to achive something similar using Lambda plugin, e.g. expression:
issue.fields.status.name == 'Open' ? (issue.fields.created | sinceNow) : ''
Please let me know if you'd like to make it work.
Calculated fields are not really suitable for values which use "now" as an input, they will only get indexed when the issue is changed, so you can't usefully query on them.
I think this is discussed here... https://jamieechlin.atlassian.net/wiki/display/GRV/Scripted%20Fields- there are also examples similar to what you're trying to do.
thanks Jamie, I actually already found that link and followed the example for "Total time this issue has been In Progress". I got it working to calculate how long the issue has been in "Acknowledged" but I can't get it to work for "Open". My workflow is Open - Acknowledged - Resolved - Closed. Any thoughts?
Thank you!
Since I have been unsuccessful at calculating Time since Created. I am using a custom field called "Reported" which defaults to the current date/time or can be overwritten by the user.
Can you help me with the syntax for calculating the difference between Reported and now?
The script I am using, below, works for calculating Time since Acknowledged. Acknowledged is a workflow state, Reported is not. How can I modify this to not look for "status"?
import com.atlassian.core.util.DateUtils
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.history.ChangeItemBean
def componentManager = ComponentManager.getInstance()
def changeHistoryManager = componentManager.getChangeHistoryManager()
def OpenName = "Acknowledged"
def rt = [0]
changeHistoryManager.getChangeItemsForField (issue, "status").reverse().each {ChangeItemBean item ->
def timeDiff = System.currentTimeMillis() - item.created.getTime()
if (item.fromString == OpenName) {
rt << -timeDiff
}
if (item.toString == OpenName){
rt << timeDiff
// NOTE: doesn't show anything if less than 60 seconds
DateUtils.getDurationString(Math.round(rt.sum() / 1000))
We love this but would like to know is it possible to do this without status or is there a way to include all of our status's except close.
It looks like you're new here. Sign in or register to get started.