Get sprint start time from a story using calculated customfield.

G November 14, 2016

Hi,

I know how to get the sprint start time of a story using scripted field with the below code

 

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.Issue
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def sprintCf = customFieldManager.getCustomFieldObject(10004)
Issue issue = issue
issue.getCustomFieldValue(sprintCf)?.startDate?.first()?.toDate()

But now I need to get the same result using 'JIRA Misc Custom Fields' plugin. Any ideas?

1 answer

0 votes
David _old account_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
November 14, 2016

Unfortunately, JMCF doesn't support Groovy, you need to use some more traditional Java syntax.

You can try the following script:

if (issue.get("customfield_10004")==null || issue.get("customfield_10004").getStartDate() == null)
  return null;
return issue.get("customfield_10004").getStartDate().getFirst().toDate();

although I'm not quite sure about the "first()" method - is it a method or a property?

G November 14, 2016

Thanks for the response David. The first() returns the first value in the array. Each story can be in multiple sprints and I need the start time a story gets added to the sprint and the sprint is started. 

I've done a workaround now by using both scripted fields and JMCF. The JMCF simply returns the value in the scripted field. Not ideal but it's the only workaround I found now.

 

<!-- @@Formula:
sprintCf = issue.get("customfield_13000");
if (sprintCf==null)
 return null;
return sprintCf;
-->

 

Cheers,

Gaj

David _old account_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
November 14, 2016

Then you could try my code but replace "getFirst()" with "get(0)" or "[0]". 

Suggest an answer

Log in or Sign up to answer