I'm using Script Runner and I want to add a listener, that check, if the value of a specifc custom field is changed during this update event.
The custom field name is "Category" and it's id is "10400".
I assume it is somewhere hidden in com.atlassian.jira.event.issue.getChangeLog()". Am I correct? If yes, how can I loop through the changes to identify, if my specific field has changed or will be changed durin this event? Is this some kind of array? An option to visualize could probably be helpful.
Hi Nando,
You can have in your listener that listens to issue updated events, something like the following script
def change = event?.getChangeLog()?.getRelated("ChildChangeItem")?.find {it.field == "SelectListA"}
if (change) {
log.debug "Old value : ${change.oldstring}"
log.debug "New value : ${change.newstring}"
log.debug "Value changed by ${event.user} at ${event?.getChangeLog()?.created}"
// do something if the value of the Category field changed
}
Hope that helps,
Thanos
Hi @Thanos Batagiannis [Adaptavist] I need to perform a same task..need to know if a story is updated and if yes..need to check if the description field (which is not a custom field) is updated. Do you have any leads for this?
Also, what does
SelectListA indicate here
and if event is Issue Updated then,
...{event?.getChangeLog()?.created} will be {event?.getChangeLog()?.updated}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@Aishwarya Rajan SelectListA stands for the name of the field/custom field. Please consider since early versions custom field's name can have duplicated names.
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.