Populating Single Select List in transition form with Behaviours

Mike Wells
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 1, 2013

Hi,

I am trying to build a Single Select List of Issue Keys that are in the current project that is related to the issue.

I figured that the Behaviour plugin with server side script would be the way to go.

The idea is to get all the Keys from the project and allow the user to select one, however I get a validation error.

import com.onresolve.jira.groovy.user.FieldBehaviours
import com.onresolve.jira.groovy.user.FormField
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.component.ComponentAccessor
import org.apache.log4j.Category

def Category log = Category.getInstance("com.onresolve.jira.groovy.PostFunction")
log.setLevel(org.apache.log4j.Level.DEBUG)
log.info("Starting Behaviour GroovyScript PopulateIssueIds")

def issueId = formContents["id"]
def issue = ComponentManager.getInstance().getIssueManager().getIssueObject(issueId as Long)
def project = issue.getProjectObject()
def issuesIds = ComponentAccessor.getIssueManager().getIssueIdsForProject(project.getId())
def issues = ComponentAccessor.getIssueManager().getIssueObjects(issuesIds)

Map fieldOptions = [:]
fieldOptions.put("-1","None")
for(MutableIssue tempIssue : issues){
 log.debug("ID: "+tempIssue.getKey())
 fieldOptions.put(tempIssue.getId(),tempIssue.getKey())
}

FormField targetIssue = getFieldById("customfield_11803")
targetIssue.setFieldOptions(fieldOptions)

The population of the list works

But when I try to transition the issue I get an error

Invalid value '13915' passed for customfield 'Target Issue'. Allowed values are: , -1

I suspect it because these values are not defined in the Custom Field as valid options?

Is there something I am doing wrong here or am I limted to only having predefined values, even if I can reduce the options shown?

If so is there some other approach that could acheive the same goal?

2 answers

1 accepted

0 votes
Answer accepted
JamieA
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 2, 2013

Yes, jira will only let you use valid options for a select list.

It's possible to use a plain text field but style it as a select list so it behaves like fixversions or something, but unless you're pretty good with javascript it might not be worth doing.

Mike Wells
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 2, 2013

ok, thanks for the response. I figured I may have to go down the plain text field list.

0 votes
Mike Wells
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 1, 2013

Screen Shot of error

Suggest an answer

Log in or Sign up to answer