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?
Hey Gerben,
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)
import com.atlassian.jira.component.ComponentAccessor
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...
regards, Thanos
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.