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

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,456,057
Community Members
 
Community Events
176
Community Groups

Scripted field not correct

Deleted user Apr 26, 2017

I made a field autoAssignee; just regular text field which populates a value based on some values. This is working fine, except when in status "New". The field takes the value for the next status, which screws up my proces. 

When a ticket is in status new, I always get the value of status "Assess 1st Line".

e.g.: status = new

productC

customerA

assignee should be productC.support

but it shows consultant.customerA

 

anyone has an idea?

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.search.SearchProvider
import com.atlassian.jira.issue.Issue
import com.atlassian.crowd.embedded.api.User
 
def searchProvider = ComponentAccessor.getComponent(SearchProvider)
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def userUtil = ComponentAccessor.getUserUtil()
def productCF = customFieldManager.getCustomFieldObject("customfield_13901")
def customerCF = customFieldManager.getCustomFieldObject("customfield_13102")
def product = issue.getCustomFieldValue(productCF)
def customer= issue.getCustomFieldValue(customerCF)
def status = issue.getStatus().getSimpleStatus().getName()
def project = issue.getProjectObject().getKey()
def type = issue.getIssueType().getName()

def assignee =""
	if(product =="ProductA"){
        assignee ="ProductD.support"
   	} else if(product =="ProductB"){
        assignee ="ProductB.support"
 	} else if(project == "BX" && product == "ProductB" && (status == "New" || "Assess 1st Line" || "Assess 2nd Line")){
        assignee = "ProductB.support"        
    } else if(project == "AX" && product =="ProductC"){
        assignee ="ProductC.support"
    } else if(project == "BX" && product =="ProductC" && customer == "CustomerA" && (status == "Assess 1st Line" || "Assess 2nd Line")){
        assignee ="ProductC.CustomerA"
    } else if(project == "BX" && product =="ProductC" && customer == "CustomerA" && (status == "New")){
        assignee ="ProductC.support"
    } else if(project == "BX" && product =="ProductC" && customer != "CustomerA"){
        assignee ="ProductC.support"
    } else if(project == "AX" && product == "ProductD"){
        assignee = "ProductD.support"        
    } else if(project == "BX" && product == ("ProductD" || "ProductD Client Connect") && (status != "Assess 1st Line")){
        assignee = "ProductD.support"
    } else if(project == "AX" && product == "ProductD Client Connect"){
        assignee ="ProductD.support"   
	} else if(project == "BX" && type == "Bug" && (product == "ProductD" || "ProductD Client Connect") && status == "Assess 2nd Line"){
        assignee = "rd.ProductD"
    } else if(project == "BX" && type == "Request for Enhancement" && (product == "ProductD" || "ProductD Client Connect") && (status == "Assess 2nd Line")){        
        assignee = "ProductD Changemanagement"     
    } else if(project == "BX" && (product == "ProductD" || "ProductD Client Connect") && (status == "Assess 1st Line" || "Assess 3rd Line") && customer == "CustomerC"){
        assignee = "consultant.CustomerC"
    } else if(project == "BX" && (product == "ProductD" || "ProductD Client Connect") && (status == "Assess 1st Line" || "Assess 3rd Line") && customer == "CustomerA"){
        assignee = "consultant.CustomerA"
    } else if(project == "BX" && (product == "ProductD" || "ProductD Client Connect") && (status == "Assess 1st Line" || "Assess 3rd Line") && customer == "CustomerB"){
        assignee = "consultant.CustomerB"
    } else if(product =="Other"){
        assignee ="ProductD.support"
    }  
   
return assignee;

2 answers

0 votes
Deleted user May 02, 2017

I've also tried it with status ID and the only status it doesn't work with, is the status "new".

 

0 votes

If you edit the issue (not transition, just edit), does the field change to the desired value?

Deleted user Apr 26, 2017

No, it doesn't. 

If I change one of the values, like the product, the fields changes, but to consultant.productX

 

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events