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.
Good Morning ! ScriptRunner assisted with the code below, which allows me to copy a date field from a linked ticket. I now need assistance making changes to the code below so I can also pull in a text field. Specifically the field I need to pull in is a single select field. Any help would be greatly appreciated !
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.link.IssueLink
log.warn("--- Start script -----------------------------------")
def issueLinkManager = ComponentAccessor.issueLinkManager
def customFieldManager = ComponentAccessor.customFieldManager
def customField = customFieldManager.getCustomFieldObject(10508 as long)// Change 10007 with your "Incident Start Date/Time" custom field ID
log.warn("customField = $customField")
def links = new HashSet<IssueLink>()
def outwardsLinks = issueLinkManager.getOutwardLinks(issue.id)
log.warn("outwardsLinks = $outwardsLinks")
def linktypeOutNames = outwardsLinks*.issueLinkType.name
log.warn("outwardsLinksTypes = $linktypeOutNames")
links.addAll(outwardsLinks)
def inwardsLinks = issueLinkManager.getInwardLinks(issue.id)
log.warn("inwardsLinks = $inwardsLinks")
def linktypeInNames = inwardsLinks*.issueLinkType.name
log.warn("inwardsLinksTypes = $linktypeInNames")
links.addAll(inwardsLinks)
for (IssueLink issueLink : links) {
log.warn("issueLink = $issueLink.issueLinkType.name")
if (issueLink.getIssueLinkType().name == "Relates") {
def issueToCheck
if(issueLink.sourceId == issue.id){
issueToCheck = issueLink.destinationObject
}else{
issueToCheck = issueLink.sourceObject
}
log.warn("issueToCheck = $issueToCheck")
try{
return customField.getValue(issueToCheck) as Date
}catch(e){
e.printStackTrace()
return null as Date
}
}
}
log.warn("Not able to find any suitable outwards link")
log.warn("------------------------------------------- End script ---")
return null as Date
Thank you
Hi,
If you just want to display selected value of Single select field from linked ticket just set template of your scripted field to "Text Field" and change all return values in script from Date to String (i.e. - "return customField.getValue(issueToCheck) as Date" -> "return customField.getValue(issueToCheck) as String"). That should do the trick. Of course you have to change your custom field ID accordingly.
I hope it will be helpful.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.