import com.atlassian.jira.ComponentAccessor
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.comments.CommentManager
import com.atlassian.jira.issue.fields.CustomField
import com.atlassian.jira.util.ImportUtils
import com.atlassian.jira.user.util.DefaultUserManager
import com.atlassian.crowd.embedded.api.User
import com.atlassian.jira.issue.IssueManager
import com.atlassian.jira.user.util.UserManager
import static groovyx.net.http.ContentType.*
import static groovyx.net.http.Method.*
import static com.atlassian.jira.issue.IssueFieldConstants.ASSIGNEE
import com.onresolve.jira.groovy.user.FieldBehaviours
import static com.atlassian.jira.issue.IssueFieldConstants.*
import groovy.transform.BaseScript
@BaseScript FieldBehaviours fieldBehaviours
def issueManager = ComponentAccessor.getIssueManager()
def issueService = ComponentAccessor.getIssueService()
def selectedIssueType = getIssueContext().getProjectObject().getKey()
def issueType = getFieldById(getFieldChanged())
def optionsManager = ComponentAccessor.getOptionsManager()
def instance = getFieldByName("Instance")
def selectedOption = issueType.getValue() as String
def desc = getFieldById("description")
def descValue = "test desc"
switch (selectedOption) {
case "Epic":
instance.setRequired(true)
desc.setFormValue(descValue)
break
case "Story":
instance.setRequired(true)
desc.setFormValue(descValue)
break
break
}
This code does not work, if I change issue type, nothing changes
Hi @gabe vid
Try this code to make Instance field required when Issue Type is either Epic or Story.
def issueTypeValue = getFieldById(getFieldChanged()).getValue()
def instanceField = getFieldByName("Instance")
switch (issueContext.issueType.name ) {
case "Epic":
instanceField.setRequired(true)
break
case "Story":
instanceField.setRequired(true)
break
default:
instanceField.setRequired(false)
break
}
I hope it helps.
Ravi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ravi,
The script works fine at the time of creation of issue. But when i am trying to edit an Existing Issue and then changing the "Issue type" the custom field does not becomes mandatory or non mandatory.
I have placed the same script in the Server Script for the field "ISSUE TYPE" but it does not seems to be working
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.