Excerpt |
---|
A Calculated Date/Time custom field type returning a |
Adding a Calculated Date/Time custom field type
To add a Calculated Date/Time custom field type to your instance:
- Log in to JIRA as an administrator.
- Go to the Administration icon and click on it.
- Click on
Issues - > Custom fields.
- Click on
Add custom field
. - Click on
Advanced
in the left panel. - Locate
Calculated Date/Time Field type
and select it. - Click on
Next
. - Provide a name for the custom field
- You can optionally provide a description for the custom field.
- Click on
Create
- Associate the custom field to the appropriate screens.
- Locate the custom field in the Custom fields administration page and click on the cog wheel.
- Click on
Configure
and create a formula (explained below) for the field. - You can create multiple contexts if you need to associate different formulas with particular projects or issue types.
- Perform a re-index as prompted by JIRA.
Panel | ||
---|---|---|
| ||
|
Panel | ||
---|---|---|
| ||
Note |
---|
If you have upgraded from JMCF |
Search template
When creating a Calculated Date/Time custom field type, you can configure the Search template asDate range picker
to be able to search issues within a date/time range of values for that custom field. If you select “None” for the searcher, then you won’t see any reference to this field in the Issue Navigator search fields. Note that changing a custom field searcher requires a re-index
|
Panel | ||
---|---|---|
| ||
Note |
---|
If you have upgraded from JMCF |
Search template
When creating a Calculated Date/Time custom field type, you can configure the Search template as Date range picker
with or without Statistics-compatible (see below) to be able to search issues within a date/time range of values for that custom field. If you select “None” for the searcher, then you won’t see any reference to this field in the Issue Navigator search fields. Note that changing a custom field searcher requires a re-index.
Date range picker with statistics compatible are searchers that allow calculated date/time fields to be used in statistics gadgets. Date range picker (Statistics by day),
andDate range picker (Statistics by month),
Date range picker (Statistics by quarter),
searchers display the statistics in the gadgets by day, month, quarter and year respectively.
Date range picker (Statistics by year)
Configuring the Groovy formula for a Calculated Date/Time custom field type
Note |
---|
Starting from 2.0.0 BeanShell has been replaced by Groovy in the JMCF add-on. Scripts written in BeanShell will work unchanged in Groovy except for some specific cases. |
To write a formula for the Calculated Date/Time custom field type;
A Groovy expression returning ajava.util.Date.
For example returning the current date/time- Locate the custom field on the Custom Fields administration page.
- Click on the cog wheel and click on
Configure
- Click on
Edit Groovy Formula
- In the editor write a Groovy script that returns a
java.util.Date
. You can test you written script against any issue using the Groovy script tester. - Click on
Save.
Some examples of a Groovy formula:
- the custom field on the Custom Fields administration page.
- Click on the cog wheel and click on
Configure
- Click on
Edit Groovy Formula
- In the editor write a Groovy script that returns a
java.util.Date
. You can test you written script against any issue using the Groovy script tester. - Click on
Save.
Some examples of a Groovy formula:
A Groovy expression returning a
java.util.Date.
For example returning the current date/timeCode Block language groovy linenumbers true new Date()
A Groovy expression that references any field of the issue that returns a
java.util.Date.
For example, storing the issue updated date/time.Code Block language groovy linenumbers true issue.get("updated")
A Groovy expression that includes arithmetic operators as well as any other Groovy operator, and Groovy method calls. For example, adding a specific number of days to the issue creation date.
Code Block language groovy linenumbers true new Date()
A Groovy expression that references any field of the issue that returns a
java.util.Date.
For example, storing the issue updated date/time.Code Block language groovy linenumbers true issue.get("updated")
A Groovy expression that includes arithmetic operators as well as any other Groovy operator, and Groovy method calls. For example, adding a specific number of days to the issue creation date.
Code Block language groovy linenumbers true issue.get("created") + 5
java.util.Date
or a String representing a Date
or null
. You can test your written scripts against any issue using the Groovy script testerissue.get("created") + 5
Note |
---|
Make sure that the formula returns either a |
Customizing the display of the Calculated Date/Time custom field type value
By default, the Calculated Date/Time custom field type value is displayed using Jira's default date format (if you leave the Date Format
to Default
). However, you can customize it. To select a format for a Calculated Date/Time custom field type value;
- Locate the custom field on the Custom Fields administration page.
- Click on the cog wheel and click on
Configure
Click on
Edit Date Format.
- Select a format from the
Date format
drop-down. - Click on
Save.
Customizing the display of the Calculated Date/Time custom field type value in the List views
By default, the Calculated the Calculated Date/Time custom field type value is displayed using Jira's default date format (if you leave the Date Column Format
to Default
) in the tabular views. However, you can customize it. To To select a format for a Calculated a Calculated Date/Time custom field type value in the List views;
- Locate the custom field on the Custom Fields administration page.
- Click on the cog wheel and click on
Configure
Click on
Edit Date Column Format.
- Select a format from the
Date format
drop-down. - Click on
Save.
- .
- Click on
Save.
For example, if you select the COMPLETE
option in the Edit Date Format/Edit Date Column Format
, and the value returned by the Groovy formula is Thu Jan 25 15:20:34 IST 2018
, then the value will be formatted to 25/Jan/18 3:20 PM
.
Return the Html representation of the Calculated Date/Time custom field type value
in the List viewsBy default, the Calculated Date/Time custom field type value is displayed using Jira's default date format (if you leave theDate Column Format
to Default
) in the tabular views. However, you can customize it. You can now define a velocity template that will return the Html representation of the calculated custom field. Leave it empty to use the default template.
To select a format for
a Calculateda Calculated Date/
Timetime custom field type value
in the List views;
- Locate the custom field on the Custom Fields administration page.
- Click on the cog wheel and click on
Configure
- Click on
Edit
Velocity Template
.
Date format
drop-down- Input the template.
- Click on
Save.
COMPLETE
option in the Edit Date Format/Edit Date Column Format
, and the value returned by the Groovy formula is Thu Jan 25 15:20:34 IST 2018
, then the value will be formatted to 25/Jan/18 3:20 PM
.You can use the following Velocity variables in the template:
$value
: the raw field value (such as a Date object for a date/time calculated field)$formattedValue
: the field value formatted according to the field configuration- and other variables described on this page
For example:
Code Block |
---|
<div style="border: solid">
<font color="red">
$value
</font>
</div> |