Hi,
I try to modify a customField during it's creation in the workflow by a post function
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.security.groups.GroupManager import com.atlassian.jira.issue.util.DefaultIssueChangeHolder GroupManager groupManager = ComponentAccessor.getGroupManager() def groups = groupManager.getGroupNamesForUser(currentUser) def customFieldManager = ComponentAccessor.getCustomFieldManager() def cf= customFieldManager.getCustomFieldObjects(issue).find {it.getName() == "Field Name"} if (! accessGroups) { groups.each { if( it.startsWith("jira") ) { issue.setCustomFieldValue(cf, it) } } } return true
but it doesn't work.
In the script console I tested
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.security.groups.GroupManager import com.atlassian.jira.issue.util.DefaultIssueChangeHolder import com.atlassian.jira.issue.Issue import com.atlassian.jira.user.ApplicationUser //get issue by key Issue issue = ComponentAccessor.getIssueManager().getIssueObject("ASWTK-50") //get current user ApplicationUser currentUser = ComponentAccessor.getJiraAuthenticationContext().getUser() GroupManager groupManager = ComponentAccessor.getGroupManager() def groups = groupManager.getGroupNamesForUser(currentUser) def customFieldManager = ComponentAccessor.getCustomFieldManager() def customField = customFieldManager.getCustomFieldObject("customfield_12703") log.warn(customField.getValue(issue)) if (! customField) { log.warn("Field found") groups.each { if( it.startsWith("jira-users") ) { log.warn(it) issue.setCustomFieldValue(customField, it) log.warn(customField.getValue(issue)) } } } log.warn(customField.getValue(issue)) return true
But it doesn't get into the first if.
The Output of the warn is empty if the customField-Value is empty and [com.atlassian.crowd.embedded.impl.ImmutableGroup@976d6f29] if I fill it with a Group. BTW. the field is a GroupSelector-Field.
Do you use this code into postfunction or you create your own plugin?
ALso you can test code via ScriptConsole provided by ScriptRunner plugin.
Here it is
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.Issue import com.atlassian.jira.user.ApplicationUser //get issue by key Issue issue = ComponentAccessor.getIssueManager().getIssueObject("ZVER-3") //get current user ApplicationUser curUser = ComponentAccessor.getJiraAuthenticationContext().getUser()
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.