You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
Next: Root
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
The Atlassian Community can help you and your team get more value out of Atlassian products and practices.
I am in charge of an internal IT helpdesk and an external customer support project. Sometimes one of the customer support requests will need to be handled by our IT dept so someone on our support team will put in a helpdesk request. More rarely, several support requests will be related to one helpdesk ticket. Since you can't put the "Linked issues" field on the customer portal, I wanted to use a scripted multi-select issue picker. The only problem with that is that it only provides a single direction link. I've figured out how to copy the value of my scripted issue picker to the linked issues field using automation, but it only works it there's only one issue picked.
I've seen what I think might be at least partial solutions to my problem (https://community.atlassian.com/t5/Jira-questions/Copy-Issue-Picker-value-s-to-Linked-Issue-Field/qaq-p/1112392) but as a ScriptRunner/programming novice, I have no idea how to begin implementing it. Is there someone out there who can help?
I don't think that this solution will help you.
I think a Scripted Listener will be better suited.
Project Automation configs are a form of listeners. When EVENT then do ACTION.
So, we can do the same thing with the scripted listener.
From your scriptrunner admin screen, go to the Listener Tab
Click create listener, then select Custom listener
Pick the project (JSM) where the initial issues are getting created.
Select the Evens: Issue Created
This is the code you need, just adjust lines 7-9
import com.atlassian.jira.issue.IssueImpl
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.link.IssueLinkTypeManager
def issueLinkManager = ComponentAccessor.issueLinkManager
def issueLinkTypeManager = ComponentAccessor.getComponent(IssueLinkTypeManager)
def issuePickerFielId = 123456
def runAsUsername = 'admin' //your portal users probably don't have permission to link issues
def linkTypeName = 'Dependency'
def issuePickerCf = ComponentAccessor.customFieldManager.getCustomFieldObject(issuePickerFielId)
def issuesPicked = event.issue.getCustomFieldValue(issuePickerCf)
def runAsUser = ComponentAccessor.userManager.getUserByName(runAsUsername)
def linkType = issueLinkTypeManager.getIssueLinkTypesByName(linkTypeName)[0] //this assumes only one with that name
issuesPicked.each{IssueImpl pickedIssue->
issueLinkManager.createIssueLink(event.issue.id, pickedIssue.id, 1L, linkType.id,runAsUser)
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.