I am trying to setup a fast-track transition using the Script Runner plugin. It appears, however, that I cannot access nor modify variables declared before the loops inside the loops. Similarly, I cannot access variables from inside the loop outside of it. Does anyone have any suggestions?
My current code:
subtasksclosed = true parent = issue if(issue.isSubTask()){ parent = issue.getParentObject() Outer: for (subtask in parent.getSubTaskObjects()){ if (subtask.statusObject.name != "Closed"){ subtasksclosed = false break Outer } subtasksclosed = true } } else if(issue.subTasks.size > 0) { Outer2: for (subtask in issue.getSubTaskObjects()){ if (subtask.statusObject.name != "Closed"){ subtasksclosed = false break Outer2 } } } subtasksclosed == true && parent.statusObject.id == "10020"
Maybe you could try this code, so you don't have to access variables from "the other side":
parent = issue if(issue.isSubTask()){ parent = issue.getParentObject() } subtasksclosed = parent.subTaskObjects.any{it.statusObject.name != "Closed"} subtasksclosed && parent.statusObject.id == "10020"
Henning
Yes, write it using any(<closure>). I don't see any obvious reason why the original code is not working, but if you do it like Henning suggests it will be a lot more succinct and more obvious if there is a bug.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Any error messages in the log?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I think you should try to add a lot of
log.error issue.dump()
...
log.error parent.dump()
...
lines to your source to get the point where the scripts don't behave like expected.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Interestingly, if I run this through the built in "Condition Tester" in the plugin, it works fine.
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.