如何在scriptrunner中使用工作流转换的postfunction检索摘要系统字段的值



我正在尝试使用ScriptRunner检索Jira中Summary系统字段的值。我在scriptrunner中使用以下代码,但问题是def cf = customFieldManager.getCustomFieldObject("Summary")行返回的变量cf为null。如何修复此问题并在ScriptRunner中检索摘要字段的值?

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.MutableIssue
import org.apache.log4j.Logger
def log = Logger.getLogger("atlassian-jira.log")
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def issueManager = ComponentAccessor.getIssueManager()

def cf = customFieldManager.getCustomFieldObject("Summary")
log.warn("MOUNA 1: "+cf)
issue.setCustomFieldValue(cf, "mouna")
log.warn("MOUNA 2: "+issue)

"摘要";Jira中的字段不是自定义字段。

您可以直接从issue:访问摘要字段(和其他系统字段(

log.warn(issue.summary)

但要在Post Function中更新它,需要使用MutableIssue类:

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.event.type.EventDispatchOption
def mIssue = (MutableIssue) issue
mIssue.setSummary("New Summary")
def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser() // Or you can get any user by using UserManager
ComponentAccessor.getIssueManager().updateIssue(user, mIssue, EventDispatchOption.ISSUE_UPDATED, false)

当然,不要忘记在代码的开头导入所需的类:

最新更新