Hi,
we need a post function creating a worklog entry. I found https://answers.atlassian.com/questions/11290 and translated that to groovy:
cfo = componentManager.getCustomFieldManager().getCustomFieldObjects(issue).find {it.name == 'StartTime'}
cfv = issue.getCustomFieldValue(cfo)
dt = ((int)((t0.getTime()-cfv.getTime()+30000)/60000)).toString()+"m"
WorklogInputParametersImpl.issue(issue).startDate(cfv).timeSpent(dt).comment( "Autologged "+dt+".").buildNewEstimate(); componentManager.getInstance().getIndexManager().reIndex(issue)
The code does not throw any error - but there is no additional worklog entry - what do I have to add? Or which recipe do I have to follow?
Thanks in advance
I use this closure to create worklog entries:
logWork = { issueKey, date, timeSpent, comment, currentUser -> myIssue = issueManager.getIssueObject(issueKey) Long timeSpentSeconds = timeSpent*3600 newWorklog = new WorklogImpl(worklogManager, myIssue, null, currentUser.name, comment, Date.parse('dd.MM.yyyy hh:mm', date), null, null, timeSpentSeconds) worklog = worklogManager.create(currentUser, newWorklog, null, false) }
You have to use worklogManager.create(). worklogManager you get from ComponentManager.instance.worklogManager.
Thank you Henning. With help of a java-familiar colleague we solved the issue using this groovy code:
import com.atlassian.jira.issue.worklog.WorklogImpl
...
cus = componentManager.getJiraAuthenticationContext().getUser() jud = new java.util.Date(cfv.getTime()) wli = new WorklogImpl(null, issue, 0, cus.name, "Autologged "+dt.toString()+".", jud, null, null, dt) ComponentManager.instance.worklogManager.create(cus, wli, 0, false)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.