Environment - Adaptavist ScriptRunner v5.3.5 with JIRA v 7.4.4
My first time attempting Script Runner's Behaviours, but need to require a custom field (Implementation Risk), but only when Resolving the issue, and only if the Component is = "Active Ethernet".
I have used examples I found online to get to the following, but have not been able to find a way to make this work by combining "if" statements.
If I limit to only the Component, then the restriction works, but only for the Permissions-based "Edit".
If I limit to either the transition screen OR the specific workflow action, it works as expected. I need to be able to combine the Component
import com.onresolve.jira.groovy.user.FieldBehaviours
import groovy.transform.BaseScript
import com.atlassian.jira.component.ComponentAccessor
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def implementationRisk = getFieldByName("Implementation Risk")
def component = getFieldById("components")
def componentV = component.getValue()
//if (componentV.toString().contains("Active Ethernet")) { //THIS WORKS ON PERMISSION-BASED EDIT ONLY
//if (getFieldScreen().name == "CN Resolve Issue Screen") {//THIS WORKS FOR ANY TRANSITION THAT USES THIS SCREEN
//if (getActionName() == "Resolve and Send to Retest") {//THIS WORKS FOR ANY WORKFLOW ACTION USING THIS NAME
if (componentV.toString().contains("Active Ethernet") && getFieldScreen().name == "CN Resolve Issue Screen") {//THIS DOES NOT WORK AT ALL
implementationRisk.setRequired(true)
implementationRisk.setHelpText("This field is required when Active Ethernet is selected as the Component")
} else {
implementationRisk.setRequired(false)
}
All help will be appreciated!