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

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Load multi-user custom field from Project Role values

I have tried it all!  I have scoured the interwebs to no avail.  I have a project role consisting of multiple users and I need to load those users into a multi-user custom field. The most straightforward way it seems is from a Jira Group instead of project roles, I am good with either.  This is the code I have found for the group into custom field.

 

 

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

def groupManager = ComponentAccessor.getGroupManager()
def customFieldManager = ComponentAccessor.getCustomFieldManager()

def myJiraGroup = groupManager.getGroup("Jira Group name") // get the group
def usersInGroup = groupManager.getUsersInGroup(myJiraGroup) // get the users in that group
def myCustomField = customFieldManager.getCustomFieldObjectsByName("Custom multi-user field")
myCustomField.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(myCustomField), usersInGroup), new DefaultIssueChangeHolder()) // update myCustomField with users

 

It throws an error "No signature of method:" but the details get cut off before I can read what parameter is hosed.

 

TIA

1 answer

1 accepted

1 vote
Answer accepted

Your issue might be just with the "def myCustomField" line.

If you look carefully, you will see that you are calling "getCustomFieldObjectsByName", the plural on "Objects" means that you can potentially get more than one custom field with this method. Even when you only have 1 custom field that matches that name, you will still get a collection or array of custom fields and you have to identify which item in the collection is the custom field you care about.

If you are 100% sure that you only have 1 custom field with that name, you can just get item 0 from the collection.

def myCustomField = customFieldManager.getCustomFieldObjectsByName("Custom multi-user field")[0]

Peter-Dave...is it possible to be so happy and so mad at the same time?  Because those 3 characters "[0]" just made me into a WINNER!  Next time you are in KC I owe you a beverage.  Thank you sir.  Consider your answer...ACCEPTED!  

Like Peter-Dave Sheehan likes this

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Trello

🏊‍♀️ Atlympic Event: Trello

Hello Community!  Quick disclaimer: We are running a contest on Community (The Atlympics!) from July 23rd - August 8th of 2021. If you are interested in participating in this contest (prizes! ...

110 views 1 11
Read article

Community Events

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

Find an event

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

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you