How to set a specific value of the Tempo Account Custom field on the target issue during the cloning postfunction

When a specific transition is executed I have a Postfunction, that will Clone the isse to a different Project, change issuetype and link the issue to the original one. For that I am using the Scriptrunner Postfunction, "Clones an issue and Links"  - This work as intended..

During the cloning, I also need to set a specific Account for the Target issue.

The "Set Custom Field" example (See image) provided in the post function does not work as I am trying to set a string Value in a Custom field that accepts an Account Object. Therefore I need to create an Account object before.

My programming skills are far from sufficient, so I'm hoping that someone can help me writing the script to add to the Additional issue action section.

 Postfunction_CloneAndUpdateAccountOnTargetIssue.PNG 

2 answers

1 accepted

1 vote
Accepted answer

It proved to be too hard, for me to find out how to create the account Object. The Tempo helpdesk does not support custom scripting and could not help me creating the needed Account Object.

I decided to go for the workaround, suggested by Adaptavist service des, to get teh Value of the customfield from another issue that hold the desired value in the custom field.

With my limited progamming skills i managed to put the following together, which does the trick...

import com.atlassian.jira.ComponentManager;
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.jira.issue.IssueManager;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.MutableIssue; 

IssueManager issueManager = ComponentAccessor.getIssueManager();
CustomField customField_name = customFieldManager.getCustomFieldObjectByName( "Account" ); // CustomfieldName
def issue_x = issueManager.getIssueObject("UD-3483") // Issue ID from which to inherit value from
def value = issue_x.getCustomFieldValue(customField_name) //Retrieves value from defined custom field from specified issue
issue.setCustomFieldValue(customField_name, value) //Writes retrieved customfield value in to target issue

The tempo guys would need to explain how you retrieve an Account object. The closest I could find is https://answers.atlassian.com/questions/36114783

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Monday in Confluence

Organizing your space just got easier - Page Tree Drag & Drop is here

Hi Community! I’m Elaine, Confluence Product Manager. You may have read my earlier post about page tree in space navigation sidebar. I'm excited to share another improvement that helps you organize ...

157 views 3 5
Join discussion

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