Scriptrunner scripted fields integration with Tempo fails

Performing the same script via the Script Console works but via the Scripted Field it fails to retrieve Tempo data like worklog attributes. Are these maybe not saved yet? How to deal with this?

Listening for the event Work Logged on Issue

def attribute = workAttributeService.getWorkAttributeByKey("_Account_").returnedValue
return workAttributeValueService.getWorkAttributeValueByWorklogAndWorkAttribute(latestWorkLog.id, attribute.id).returnedValue.value

"returnedValue" is empty during a scripted field execution, it works fine via the Script Console.

2 answers

0 vote
Anton Chemlev Community Champion Jan 29, 2018

Hi,

Could you please provide full source code for your listener?

You can perform following steps:

1) Check out this topic https://community.atlassian.com/t5/Jira-questions/How-to-get-value-of-Tempo-Worklog-Attribute/qaq-p/453503

2) Add log.info, log.error etc. to you code in order to get info from logs.

Skipping some code but this should help. Like mentioned, retrieving this via the script console, by taking one of the last worklogs, works but via this listener it's null

 

import com.onresolve.scriptrunner.runner.customisers.PluginModule
import com.onresolve.scriptrunner.runner.customisers.WithPlugin
import com.tempoplugin.core.workattribute.api.WorkAttributeService
import com.tempoplugin.core.workattribute.api.WorkAttributeValueService

@WithPlugin("is.origo.jira.tempo-plugin")

@PluginModule
WorkAttributeService workAttributeService

@PluginModule
WorkAttributeValueService workAttributeValueService


def issue = event.issue
def workLogs = worklogManager.getByIssue(issue)
def latestWorkLog = workLogs.sort {it.id}.last()
def timeSpent = latestWorkLog.getTimeSpent()

def attribute = workAttributeService.getWorkAttributeByKey("_Account_").returnedValue // Account
log.error attribute
def accountValue = workAttributeValueService.getWorkAttributeValueByWorklogAndWorkAttribute(latestWorkLog.id, attribute.id)
log.error("Ret value ==== " + accountValue.returnedValue)

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Posted Wednesday in Jira

Join our webinar: How 1B+ feature flag events helped us build the new Jira

Every time you release software, there's a bit of risk – that there's a bug, that something breaks, or that the feature doesn't resonate with customers. Feature flagging helps make high stakes s...

111 views 0 3
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you