Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,362,524
Community Members
 
Community Events
168
Community Groups

How an issue transition can update all sub-task in the same status ?

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 ?

 

1 answer

1 accepted

0 votes
Answer accepted

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

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.

Yes I have saved it and despite the error and alert reported it works.

Thanks you so much.

Hi, sorry it's been so long, but how do i implement this? 
Where can I find the menu to put the script?

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events