How do I get the year in YYYY format on an issue duedate ?

ldogangul March 24, 2018

Hi all,

In one of my projects, I need to get the year data of duedate for all issues.

I want to fill it into a calculated  customfield. I find a code but did not work. The code is below;

<!-- @@Formula:

duedate=issue.get("duedate");

if (duedate==null) return null;

return String.format("%tY-%tm", duedate, duedate);

-->

Can anyonehelp me with this ? Thanks..  Levent

2 answers

1 accepted

0 votes
Answer accepted
David Fischer
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
March 25, 2018

You need to create a JMCF Calculated Number Field that returns just the year, as a number so that sorting and querying works best. 

The formula would be:

return issue.get(“duedate”) == null ? null : issue.get(“duedate”).getYear() + 1900;
ldogangul March 25, 2018

I Have magaged to get it somehow.

The code I used is below:

<!-- @@Formula:
duedateTimestamp = issue.get("duedate");
long timestamp = duedateTimestamp.getTime();
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(timestamp);
duedateYear = cal.get(Calendar.YEAR);
return duedateYear;
-->

That formula gives me just the year  section of my duedate and that was I need.

Thanks for your help.

Levent

0 votes
Ivan Tovbin
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.
March 24, 2018

Go to Administration -> System -> General Configuration -> Advanced Settings and check the settings for jira.date.picker.java.format and jira.date.time.picker.java.format. These settings control the way dates are displayed in date picker type fields. For the correct formats check this documentation.

ldogangul March 24, 2018

Hi Ivan,

Thanks for responce.

That is not what I need. I do not want to change the format of any dates. I just get the year value ot of duedate and write it down into a customfield. The current format is like  24/Mar/18  ----> I need the year 2018...

Thanks.. 

Ivan Tovbin
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.
March 24, 2018

Ah, I see.

You can try the following then:

import java.sql.Timestamp;

Timestamp dueDate = issue.getDueDate();
return dueDate.format("MM/dd/yyyy");

Suggest an answer

Log in or Sign up to answer