Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Scriptrunner behaviour - set field mandatory if specifics values selected in another field

Sylvain Leduc June 27, 2019

Hi all,

the title speaks by itself.

I tried using examples like https://community.atlassian.com/t5/Adaptavist-questions/Show-Hide-custom-field-based-another-another-field-value/qaq-p/963847 or https://community.atlassian.com/t5/Jira-Service-Desk-questions/Scriptrunner-Behaviour-to-require-and-unhide-a-field-based-on/qaq-p/1103758 but I dont understand why mine is not working.

My project is a Service Desk, I want to make the end date field mandatory if the contract is one of these 3 values and here is the script :

 

import com.atlassian.jira.issue.fields.CustomField

def contract = getFieldById("customfield_10400")
def enddate = getFieldById("customfield_10402")
def contractlist = contract.getValue()

//if (contract.getValue() == "Secondment" || "Contract Employee" || "Intern") {
if (contractlist == "Secondment") {
enddate.setRequired(true)
//enddate.setHidden(false)

}
else {
enddate.setRequired(false)
//enddate.setHidden(true)

}

 

I put this script in the behaviour/contract field, and it does not work (with required tick off or on it is the same).

I dont get it.

 

I could use some help :)

Thanks.

Sylvain

1 answer

1 accepted

Suggest an answer

Log in or Sign up to answer
0 votes
Answer accepted
Sylvain Leduc June 27, 2019

My co-worker helped me with this, I dont know if it is the easiest possible but it works now :-)

 

import com.atlassian.jira.issue.fields.CustomField
import com.onresolve.jira.groovy.user.FormField
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.component.ComponentAccessor

def contract = getFieldById("customfield_10400")
FormField enddate = getFieldById("customfield_10402")
String contractlist = (String) contract.getValue()

if (contractlist.equals("Secondment") || contractlist.equals("Contract Employee") || contractlist.equals("Intern")) {
enddate.setRequired(true)
}
else {
enddate.setRequired(false)
}

 

If it can help other beginners !

Testing test May 4, 2020

Thanks! Im totally beginner)
And it works fine.

TAGS
AUG Leaders

Atlassian Community Events