Groovy change assignee based on custom field value but not working

Alper AYKUT May 10, 2015

Where is the problem ? How Can I Solution This problem ? 

import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.IssueManager
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.fields.CustomField
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
import com.atlassian.jira.issue.util.IssueChangeHolder
import com.atlassian.jira.user.util.UserUtil
import com.atlassian.jira.issue.customfields.option.Option
import com.atlassian.crowd.embedded.api.User

CustomField srcField = customFieldManager.getCustomFieldObjects(issue).find {it.name == "proje"}
def cfwt =(Option) issue.getCustomFieldValue(srcField)
if(cfwt!=null){
def cfValue=cfwt.getValue()
log.debug "my Value is ${cfValue}."

switch (cfValue) {

case 'DPT': userToReassign = ComponentManager.getInstance().getUserUtil().getUser("xx.xx")

case 'YGLS': userToReassign = ComponentManager.getInstance().getUserUtil().getUser("xx.yy")
}

issue.setAssignee(userToReassign)

issue.store()}

 

Error

No such property: customFieldManager for class: Script45

groovy.lang.MissingPropertyException: No such property: customFieldManager for class: Script45 at Script45.run(Script45.groovy:13)

2 answers

1 accepted

0 votes
Answer accepted
Peter Bengov
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 10, 2015

Try to get CustomFieldManager by using this syntax:

ComponentManager componentManager = ComponentManager.getInstance()
CustomFieldManager customFieldManager = componentManager.getCustomFieldManager()
Peter Bengov
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 10, 2015

Try also to use: def cfwt = issue.getCustomFieldValue(srcField).getValue() Instead of: def cfwt =(Option) issue.getCustomFieldValue(srcField)

0 votes
Alper AYKUT May 10, 2015

I Try But Now Error Message ;

Error Creating İssue : Property 'cfValue' not found.

import com.atlassian.jira.ComponentManager

import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.IssueManager
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.fields.CustomField
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
import com.atlassian.jira.issue.util.IssueChangeHolder
import com.atlassian.jira.user.util.UserUtil
import com.atlassian.jira.issue.customfields.option.Option
import com.atlassian.crowd.embedded.api.User

ComponentManager componentManager = ComponentManager.getInstance()
CustomFieldManager customFieldManager = componentManager.getCustomFieldManager()

CustomField srcField = customFieldManager.getCustomFieldObjects(issue).find {it.name == "proje"}
def cfwt =(Option) issue.getCustomFieldValue(srcField)
if(cfwt!=null){
def cfValue=cfwt.getValue()
log.debug "my Value is ${cfValue}."

switch (cfValue) {

case 'DPT': userToReassign = ComponentManager.getInstance().getUserUtil().getUser("xx.xx")

case 'YGLS': userToReassign = ComponentManager.getInstance().getUserUtil().getUser("xx.yy")
}

issue.setAssignee(userToReassign)

issue.store()}

 

 

ACNTP23 July 29, 2015

I am running into this same issue. Did you ever figure it out?

Suggest an answer

Log in or Sign up to answer