2016-07-11 8 views
2

Ich benutze JIRA 7.1.4 Server und unter Behaviors Ich versuche, eine Groovy Initialiser-Funktion zum Setzen von Standardwerten von Formularfeldern zu erstellen, wenn der Benutzer versucht Um ein neues Ticket zu erstellen, sind einige Felder bereits mit Standardwerten ausgefüllt. Das ist, was ich habe, so weit:Wie setze ich die Versionsfelder eines JIRA-Tickets von Groovy

import com.atlassian.jira.component.ComponentAccessor 

def versionManager = ComponentAccessor.getVersionManager() 
def versions = versionManager.getVersionsUnreleased(issueContext.projectObject.id, false) 
getFieldById("affectedVersion").setFormValue([versions.first().id]) 
getFieldById("description").setFormValue([versions.first().id]) 

Wenn der Dialog für ein neues JIRA Ticket Erstellung öffnet, dieses Skript erfolgreich setzt das Feld „Beschreibung“ auf die richtige Version ID (nur für Debugging-Zwecke), aber die " Auswirkungen auf Version/s "Feld bleibt aus irgendeinem Grund leer.

Ich denke, die ID des Feldes "Affects Version/s" ist OK, weil ich es von JQL, also z. Die folgende Abfrage zeigt korrekte Informationen:

project = "--------" and affectedVersion is EMPTY 

Daher nehme ich an, dass ich versuche, den Wert des Versionsfeld falsch eingestellt, kann aber nicht den Fehler herauszufinden. Das obige Groovy-Skript basiert auf this example, aber das Skript könnte falsch sein, und ich konnte auch keine weiteren Informationen über getFieldById oder setFormValuehere finden.

Kann jemand ein funktionierendes Beispiel geben, wie JIRAs Felder "Affects Version/s" oder "Fix Version/s" von Groovy aus gesetzt werden?

Antwort

0

Wenn Sie Fixversion bei Problem festlegen, erstellen Sie Schritt im Workflow. Sie müssen dieses Skript in die erste Post-Funktion (vor dem Erstellen der Ausgabe) einfügen.

import com.atlassian.jira.component.ComponentAccessor 
def versionManager = ComponentAccessor.getVersionManager() 
def versions = versionManager.getVersionsUnreleased(issue.getProjectObject().getId(), false) 
issue.setAffectedVersions([versions.first()])