copy single select custom field value from one issue to another

I have a requirement to copy a single select custom field value from one jira to another based on few conditions. Currently the copy itself is not working in the first place, here is my sample groovy. If anyone can help me identify what's incorrect here.

import com.atlassian.jira.component.ComponentAccessor

def customFieldManager = ComponentAccessor.getCustomFieldManager()
def sourceIssue = ComponentAccessor.issueManager.getIssueObject("DUMMY-36")
def targetIssue = ComponentAccessor.issueManager.getIssueObject("DUMMY-38")

//Field name
def customField = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("Test Field")


def sourceCustomFieldValue = sourceIssue.getCustomFieldValue(customField)


def cfConfig = customField.getRelevantConfig(targetIssue)
def value = ComponentAccessor.optionsManager.getOptions(cfConfig)?.find { it.toString() == "Apple" }
targetIssue.setCustomFieldValue(customField, value)
log.warn(sourceCustomFieldValue)
log.warn(value)

 

1 answer

I have found my answer, just in case someone needs this. I have this working in a post function and would work for single/multi select fields.



import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
import com.atlassian.jira.component.ComponentAccessor

def sourceIssue = ComponentAccessor.issueManager.getIssueObject("DUMMY-36")
def customField = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("Test Field)
def sourceCustomFieldValue = sourceIssue.getCustomFieldValue(customField)
def targetCustomFieldValue = issue.getCustomFieldValue(customField)

def changeHolder = new DefaultIssueChangeHolder()
customField.updateValue(null, issue, new ModifiedValue(targetCustomFieldValue, sourceCustomFieldValue),changeHolder)

Suggest an answer

Log in or Sign up to answer
Community showcase
Asked Thursday in Jira Ops

I'm John Allspaw, Ask Me Anything about incident analysis and postmortems

I'm John Allspaw, co-founder of   Adaptive Capacity Labs, where we help teams use their incidents to learn and improve. We bring research-driven methods and approaches to drive effective inciden...

4,939 views 20 14
View question

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