Hi everyone,
I have an issue with some sub-task and I want to synchronise the status between issue and sub-task.
In fact I want that when an user change the status on an issue this is change the status of alls sub-task.
I want to add a ScriptRunner postfunction to all transitions of the issue workflow that update the status in all sub-task of the current issue.
Does anyone can help me ?
Hi,
You would be able to do that with the help of "Script Listeners" from your ScriptRunner plugin.
So add a new script custom listener, refine down the projects you want it for (or select for All the projects).
Then select the Event which is triggered when your workflow status is changed.
That is, you need to figure out what Event is being fired in post-functioning of a transitioning. (Usually Issue Updated Event is set up, if not you could also test it with "All Issue Events")
The following script would transition all subtasks to the same status as their parent.
def subTaskObjects = issue.getSubTaskObjects()
def subTaskStatus
def currentSubTask
if (subTaskObjects){
def parentStatus = issue.getStatus()
for (int i=0; i<subTaskObjects.size(); i++){
subTaskStatus = subTaskObjects[i].getStatus()
currentSubTask = subTaskObjects[i]
if (subTaskStatus != parentStatus){
currentSubTask.setStatus(parentStatus)
currentSubTask.store()
}
}
}
Hello,
Thanks for your answer but sorry it doesn't work and I'm a newbbie.
When I use your script I have an error (issue not define) so I must add the line "def issue = event.issue" at the top of your script.
But I have another error and a warning...
At the line : currentSubTask.setStatus(parentStatus)
"Cannot find matching method"
At the line : currentSubTask.store()
"Use the Object's Service or Manager to save value. Since v5.0."
We use Jira v7.1.2 and ScriptRunner v5.0.14.
Thanks for your help.
Stéphane
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
It would work.
Just create a custom listener and make it run on all events for test purpose.
then add the code in "inline script area'.
(issue is a keyword that would be resolved on the issue level)
Do the above, and transition the parent issue to another status, all it;s sub-tasks would also get transistioned.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yes I have saved it and despite the error and alert reported it works.
Thanks you so much.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.