我正在使用JIRA 7.1.4服务器并且在行为下我正在尝试创建一个Groovy Initialiser函数来设置表单字段的默认值,因此当用户尝试创建新票证时,某些字段已经填写使用默认值。这就是我到目前为止所做的:
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])
当打开创建新JIRA票证的对话框时,此脚本会成功将“Description”字段设置为正确的版本ID(仅用于调试目的),但“Affects Version / s”字段由于某种原因仍为空。
我认为“Affects Version / s”字段的ID是正常的,因为我是从JQL获得的,所以例如以下查询显示正确的信息:
project = "--------" and affectedVersion is EMPTY
因此我假设我正在尝试错误地设置版本字段的值,但无法弄清楚错误。上面的Groovy脚本基于this example,但脚本可能有误,我无法找到有关getFieldById
或setFormValue
here的更多信息。
任何人都可以举一个从Groovy设置JIRA的“Affects Version / s”或“Fix Version / s”字段的工作示例吗?
答案 0 :(得分:0)
如果您在问题上设置fixversion,请在工作流程中创建步骤。您需要将此脚本放入第一个post函数(在创建问题之前)。
import com.atlassian.jira.component.ComponentAccessor
def versionManager = ComponentAccessor.getVersionManager()
def versions = versionManager.getVersionsUnreleased(issue.getProjectObject().getId(), false)
issue.setAffectedVersions([versions.first()])