Hi,
we're running Jira Server with Script Runner 6.5.0.
I have defined a Scripted Field that uses a custom script to calculate a value from another field and a project-specific constant. This works very well.
Now there is a new requirement: the scripted field should only be recalculated if the issue is in a certain state. So I proceed like this:
def statusName = issue.getStatus().getSimpleStatus().getName()
if statusName in ["Status A", "Status B"] {
// calculate newValue
return newValue
}
As long as the issue's is "Status A" or "Status B", this works fine. Unfortunately, if the issue is in a different state, the script returns null, which deletes the field's previous value. But in this case I want to keep the previous value. Unfortunately one cannot get the current value of the field by getValue(issue) to return it, because this leads to a recursion.
Does anyone have a hint for me? Thanks in advance!
Frank
Hi @Frank Winkler
My workaround (I dont know if there's a better way) was saving the scripted field value on another custom field.
That way I was able to do operations with the previous value.
In your case, you would have to return the value in the custom field.
If your scripted field is calculated, update also the custom field.
I hope this gives you an idea.
def statusName = issue.getStatus().getSimpleStatus().getName()
if statusName in ["Status A", "Status B"] {
// calculate newValue
update your custom field with newValue
return newValue
}else{
return yourNewCustomField
}
Hi @Gustavo Félix,
thank you for your the answer - I had already thought along these lines.
But since we already use a lot of custom fields and this requirement involves eight scripted fields, I'm looking for a solution that doesn't require an additional custom field for each scripted field.
Maybe someone from Adaptavist will read along and can give a hint?
Best regards!
Frank
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I hope you find another answer.
Good luck!
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.
no answer from Adaptavist support - so I implemented your solution using additional custom fields. And it works! Thanks!
regards!
Frank
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.