get "userName" / "userkey" from custom field with "userdisplayName"

Hello,

we want to assign an issue to a user from a custom field (From anpother plugin (CRM). The field only displays the full display name) using the behaviours/scriptrunner plugin.

see image: https://picload.org/image/widgcir/j1.jpg  (Attaching images here was not possible?! -> Server Error)

I think we need to get the "userName" / "userkey" (e.g.: FF) from the custom field with the "userdisplayName" (e.g.: Fred Flintstone) to set the Assignee afterwards.

I hope someone could help.

 

Or is the "Issue Alternative Assignee"-Plugin capable of that? (we have Jira V7.1.1)

 

kind regards

Stefan

3 answers

1 accepted

yes this "findUserNames" seems to be what we need - but we are too unskilled to implement this in our behaviour.

Can you (or someone else)  please give us an example what classes we have to import and how the syntax should be (we are no programmers) ?

This is the (not working) serverside script we have right now:

import static com.atlassian.jira.issue.IssueFieldConstants.*
import com.atlassian.jira.user.ApplicationUsers
//Line below does not work
//getFieldById(ASSIGNEE).setFormValue(getFieldById("customfield_12239").getValue())


//Line below is for testing only
getFieldById("comment").setFormValue(getFieldById("customfield_12239").getValue())

thx in advance

Could you add your supplementary questions as comments rather than as answers? 

I think you are looking for an example of how to look up a user by display name, so here is one (I don't know what the code above is supposed to do):

import com.atlassian.jira.bc.user.search.UserSearchService
import com.atlassian.jira.component.ComponentAccessor

def userSearchService = ComponentAccessor.getComponent(UserSearchService)
def users = userSearchService.findUsersByFullName("Mr Admin")

if (users) {
    users.first() // an ApplicationUser (in jira 7)
}
else {
    // no users found with that display name
}

oh sorry, will do next time/s.

this is exactly what we need =) An example.

Thank you & kind regards

Stefan

0 vote

I don't know anything about that plugin, but most likely it will give you an ApplicationUser object if you call issue.getCustomFieldValue on that CF. That would be the way to go rather than trying to look up a key by display name. 

Hello Jamie,

thanks for your answer. We already did that, but the field only returns a string (equal to the full display username). So we need somehow to get the user behind that string.

When we write the value in a comment field with:

comment.setFormValue(getFieldById("customfield_12239"))

we get

Form field ID: customfield_12239, value: Fred Flintstone

When we try to put this value in the assigne field its not working.

regards

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Apr 30, 2018 in Marketplace Apps

Why moving to Confluence Data Center is only a job half-done

Confluence Data Center is a deployment option that was designed for performance at scale. In other words, Confluence will handle increased traffic much reliably in a clustered environment and yo...

225 views 0 6
Read article

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