I am trying to get the option position number of the selected option in a Select list (single choice). I have found a lot of posts about how to get the selected text value, but I am worried that if someone changes the text (for some reason), the script breaks. i am assuming that the position will not change, but how can i get this in scriptrunner?
There are ways to write your script defensively enough, in order not to break if someone change the name of an option.
In theory you could get the third option for the SelectListA and issue with key ATG-1 like (run it your script console)
def issue = ComponentAccessor.issueManager.getIssueByCurrentKey("ATG-1")
def cf = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("SelectListA")
def fieldConfig = cf.getRelevantConfig(issue)
def selectedOption = issue.getCustomFieldValue(cf)
def indexOf = ComponentAccessor.optionsManager.getOptions(fieldConfig).indexOf(selectedOption)
log.debug "Index of selected option is $indexOf"
But to be honest it doesn't feel right .... If you want to elaborate a bit more we can craft something...
Over the next several weeks we'll be sharing some of our Getting Started guides here in the community. Throughout this series of posts, we'd love to hear from customers and non-customers ab...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs