I'm using the "Clones an issue, and links" post funcion feature.I want to create a linked issue but not in the first status. Then I want to transition this issue linked.In "additional issue actions" I putted this code.
import com.atlassian.jira.component.ComponentAccessorimport com.atlassian.jira.issue.MutableIssueimport com.atlassian.jira.issue.Issueimport com.onresolve.scriptrunner.runner.util.UserMessageUtilimport com.atlassian.jira.util.JiraUtilsimport com.atlassian.jira.workflow.WorkflowTransitionUtilimport com.atlassian.jira.workflow.WorkflowTransitionUtilImplMutableIssue issue1= issue;WorkflowTransitionUtil workflowTransitionUtil = ( WorkflowTransitionUtil ) JiraUtils.loadComponent( WorkflowTransitionUtilImpl.class );workflowTransitionUtil.setIssue(issue1);workflowTransitionUtil.setAction(321);workflowTransitionUtil.validate();workflowTransitionUtil.progress();
But I t doesn't work .In the jira Log I'm viewing the following message.
c.o.s.jira.workflow.ScriptWorkflowFunction] Script function failed on issue: TEST-5, actionId: 31, file: nullCaused by: org.ofbiz.core.entity.GenericTransactionException: Commit failed, rollback previously requested by nested transaction.
Hi Sergio,
So for this you will need to write a script that will transit the cloned issue after it's creation.
So in the additional issue actions field you can have something like
def user = ComponentAccessor.userManager.getUserByKey("admin")doAfterCreate = { // 21 is the id of the step you want the issue to movetransitIssue(issue, 21, user)}def transitIssue(Issue issue, int actionId, ApplicationUser cwdUser) {def issueService = ComponentAccessor.getIssueService() IssueInputParameters issueInputParameters = issueService.newIssueInputParameters() issueInputParameters.setComment("This is a comment") issueInputParameters.setSkipScreenCheck(true)def transitionOptions= new TransitionOptions.Builder() .skipConditions() .skipPermissions() .skipValidators() .build()def transitionValidationResult = issueService.validateTransition(cwdUser, issue.id, actionId, issueInputParameters, transitionOptions)if (transitionValidationResult.isValid()) {return issueService.transition(cwdUser, transitionValidationResult).getIssue() }log.error "Transition of issue ${issue.key} failed. " + transitionValidationResult.errorCollection}
Hope that helps, please ping me if you have any further questions
Regards, Thanos
It looks like you're new here. Sign in or register to get started.