Update a custom field using Script Listener

Priyanka Karguppikar January 26, 2020

Hello Team,

I have an issue of the type Initiate which is linked to an issue type Automation. I want a script listener which would update a custom field for the type Automation if it updated in the issue type Initiate.  Actual End Date and Actual Start Date are the two fields that are to be updated.

I have tried writing a script below. But it updating the same issue, which is of the issue type Initiate. Please help me with this. 

 

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.event.type.EventDispatchOption
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.IssueManager
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.project.version.Version
import com.atlassian.jira.bc.project.component.ProjectComponent
import com.atlassian.jira.issue.link.IssueLinkManager
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder

def issue = event.getIssue()def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
log.warn("Issue updated event triggered listener")
IssueManager issueManager = ComponentAccessor.getIssueManager()

def changeHolder = new DefaultIssueChangeHolder()
def actualStartDate = ComponentAccessor.getCustomFieldManager().getCustomFieldObject("customfield_10400")
def actualEndDate = ComponentAccessor.getCustomFieldManager().getCustomFieldObject("customfield_10400")
def issueLinkManager = ComponentAccessor.getComponent(IssueLinkManager)
if(issue.issueType.name.equals("Automation"))
{
log.warn("Entered the Loop")
actualStartDate.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(actualStartDate), actualStartDate), changeHolder)
actualEndDate.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(actualEndDate), actualEndDate), changeHolder)
}

0 answers

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events