Time Between Custom Field


The Time Between Custom Field calculates the amount of time passed between two statuses/events. It can be configured to work against a specific working calendar as well as excluding paused statuses.


This field displays the total working duration and relevant details.

To create or update the Time Between Custom Field

  • Navigate to Jira Admin > Add-ons > Enhancer Plugin Menu > Custom Field Configuration and go to the Time tab.
  • Click on the Add new Time Between custom field button.
  • Fill in the dialog box. 
    • Create a Name for your custom field.
    • Select the origin and target events, they can be any status, event (e.g. 'Resolution', 'Reopening'), or date/time custom fields.

    • A Calendar can also be selected. Working calendars can be defined in Jira Admin > Add-ons > Enhancer Plugin Menu > Working Calendars menu item.
    • An Occurrence can be set to display the First or Last occurrence, an aggregated result with a Cumulative option, or even the Largest span (from the very beginning of the original status until the latest target status).

      About Occurrence

      This option is disabled when at least one of the original or target events is selected as a Date Custom Field, as the Date Custom Field provides only one date which means there can only be one occurrence.


    • Tick the Latest Origin checkbox if you want to calculate the duration from the latest origin status. For instance, assume you have a workflow of Open - In Progress - Resolved - Closed, and you want to calculate the working duration from Open to Resolved.
      If the issue's status has been set to Open - In progress - Open - In Progress - Resolved (in this order) and you want to calculate the amount of time from the latest Open, you should enable the Latest Origin flag. Otherwise, it will calculate from the first Open status in the issue's history.

      Latest Target

      When the original event is selected to be the Date Custom Field, the latest origin changes to Latest Target. If the issue's status has been set to Open - In Progress - Resolved - Open - In Progress - Resolved - Closed (in this order) and you want to calculate the amount of time up to the latest Resolved status, you should enable the Latest Target flag. Otherwise, it will calculate up to the first Resolved status in the issue's history.

        

    • Time formatter display options (both for the issue main view and navigator view) can be configured easily as below. 

  • And click the Add Custom Field button. That's it.

You'll see the recently defined custom field in the same screen. You can always configure, edit, or delete the custom field by simply clicking on the cog icon on the right-hand side.
 
After defining the custom field, Paused (Frozen) statuses can be configured by clicking Pause in the cog icon or in Pause Options in the custom field context configuration screen.

A dialog will appear in which you can select as many statuses as you want to exclude time in this status.
Click the OK button to save changes.
The  lozenge will be next to the custom field which indicates that this field has paused status options.

You can search issues against this custom field in the issue navigator.
Sample results in issue navigator.
You can define as many Time Between Custom Fields as you wish. 

By default when you export into Excel (in the issue navigator), the Time Between fields will give all execution details such as start time, end time, and total duration.

However, this option makes Excel reports look ugly for reporting purposes (with multiple rows for a single issue). If you want, you can change this behavior within the JEP Menu > Custom Field Configuration menu item. Under the time tab, untick Show details to get a summary for Excel exports (see below).
Now the Excel report should look similar to the following.

Getting Time Between Value via RESTService

GET Time Between Custom Field details per issue.

JIRA_URL/rest/jep-api/latest/customfields/timebetween/customfield_xyz?issue=ABC-123  (GET)

where customfield_xyz is the customfield Id and ABC-123 is the issue key.

Sample output:

{  
   "totalDurationAsMillis":29018997792,
   "totalPausedDurationAsMillis":0,
   "totalWorkingDurationAsMillis":29018997792,
   "totalWorkingDurationAsFormattedString":"47 weeks, 6 days, 20 hours, 49 minutes, 57 seconds",
   "executions":[  
      {  
         "startTime":1540943223822,
         "endTime":1569962214542,
         "fromStatus":"10000",
         "fromStatusString":"To Do",
         "toStatus":"10001",
         "toStatusString":"Done",
         "finalized":true,
         "totalDuration":29018990720,
         "totalWorkingDuration":29018990720,
         "totalPausedDuration":0
      },
      {  
         "startTime":1569962382226,
         "endTime":1569962389298,
         "fromStatus":"10000",
         "fromStatusString":"To Do",
         "toStatus":"10001",
         "toStatusString":"Done",
         "finalized":true,
         "totalDuration":7072,
         "totalWorkingDuration":7072,
         "totalPausedDuration":0
      }
   ]
}