Display field according to the result of two other fields

Hi Team, I'm using script runner to get multiplication result of two fields in another fields (Riskrate)and to categorize the result in Riskrate to High,medium,low. For the same I have created the beklow script. But not completely functional. Please help 

def selecta= getFieldById("customfield_17796")
def selectb= getFieldById("customfield_23399")
def risk= getFieldById("customfield_28038")
def TestBed = getFieldById("customfield_26609")
long selectaVal = ((selecta.value ?: "0") as String).toLong()
long selectbVal = ((selectb.value ?: "0") as String).toLong()

risk.setFormValue(selectaVal * selectbVal)
long selectaValnew = ((selecta.value ?: "0") as String).toLong()
long selectbValnew = ((selectb.value ?: "0") as String).toLong()
long RiskrateVal = ((risk.value ?: "0") as String).toLong()

if(RiskrateVal <= 9)
if(RiskrateVal > 5)

{ TestBed.setFormValue("Medium") }


{ TestBed.setFormValue("Low") }


{ TestBed.setFormValue("High") }


7 answers


Try adding the following code to a scripted field named "Risk Rate":


import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.Issue

Issue mainIssue = issue
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def impact = customFieldManager.getCustomFieldObjectByName("Impact")
def probability = customFieldManager.getCustomFieldObjectByName("Probability")
def impactVal = mainIssue.getCustomFieldValue(impact).toString().toInteger()
def probabilityVal = mainIssue.getCustomFieldValue(probability).toString().toInteger()
def overallRating = (impactVal * probabilityVal)
def result = ""

switch (overallRating) {
case { overallRating < 5}:
result = 'Low'
case {overallRating >= 5 && overallRating <= 9}:
result = 'Medium'
case {overallRating > 9}:
result = 'High'
result = 'N/A'

return result;

You will have to change the names to match your field names and the case values to your preference. I have made the assumption here that the custom fields are text fields, so I casted them to string then to int. You will not need to do this is the field values are already numbers.

Also, if you would like both a risk rate numerical field and a text field then you will need to add a second scripted field and just return the 'overallRating' value instead of using the switch statement.

Take a look at this for more info on scripted fields: https://scriptrunner.adaptavist.com/latest/jira/scripted-fields.html



What type are the custom fields customfield_28038, customfield_26609 ? I suppose the customfield_17796 and customfield_23399 are select lists (single choice) .


yes, these are select lists

and what about customfield_28038, customfield_26609 ?

customfield_17796 and customfield_23399 are select list and customfield_28038 is number field and customfield_26609 is a text field

Any update???



Did this solve your problem?


Johnson Howard

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Jan 08, 2019 in Jira

How to Jira for designers

I’m a designer on the Jira team. For a long time, I’ve fielded questions from other designers about how they should be using Jira Software with their design team. I’ve also heard feedback from other ...

1,088 views 4 9
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you