Hi,
I am trying to create a Scriptrunner listener to auto update a multiselect field based on the value of a select list(while issue create and issue update). The below code shows no error, but it does nothing. Can someone correct this code or suggest a new one
import com.atlassian.jira.component.ComponentAccessor
import com.onresolve.jira.groovy.user.FieldBehaviours
import groovy.transform.BaseScript
import com.atlassian.jira.issue.customfields.option.Options
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
import com.atlassian.jira.issue.ModifiedValue
import com.onresolve.jira.groovy.user.FieldBehaviours
import com.atlassian.jira.issue.customfields.option.Options
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.component.ComponentAccessor
import groovy.transform.BaseScript
@BaseScript FieldBehaviours fieldBehaviours
def Field1 = getFieldById("customfield_56789")
String selectListValue = (String) Field1.getValue()
def selectField = getFieldById("customfield_56789") //multiselect field
def selectCustomField = customFieldManager.getCustomFieldObject(selectField.fieldId)
def selectConfig = selectCustomField.getRelevantConfig(issueContext)
def selectOptions = ComponentAccessor.optionsManager.getOptions(selectConfig)
def selectAvailableOptions
if (selectListValue ='A')
{
selectAvailableOptions = selectOptions.findAll { it.value in ['AAAA'] }
}
else if (selectListValue ='B')
{
selectAvailableOptions = selectOptions.findAll { it.value in ['BBBB'] }
}
else
{
selectAvailableOptions = selectOptions.findAll { it.value in ['CCCC'] }
}
selectField.setFieldOptions(selectOptions.findAll{it.value in (selectAvailableOptions)})