JQL for issue tracking and reporting

Besides using JQL filters in the definition of a rule, JQL can also be used to track and list which issues are affected by scheduled rules. 

For example:

  • team leads can build issue lists to check which issues may be delayed by upcoming leaves
  • delivery teams can check whether reporters of completed issues are unavailable so that those issues can be communicated to other stakeholders
  • Assignment automations can check whether an assignee is out of office to then pick an available assignee.

Out of Office status parameters for assignees and reporters

JQL searches can return, for example, a list of all issues with assignees that are not in the office today.

In order to do this, Out of office status parameters must be included in the JQL. For the example above:

    assignee.outofoffice.today = 1 
CODE


This parameter evaluates every issue to check whether the assignee has an active rule today.


The same for reporters of an issue would be:

       reporter.outofoffice.today = 1 
CODE

Of course you can combine it with other JQL fields:

        project = 'Product Support' AND assignee.outofoffice.today = 0
CODE

"0" in this case means, not out of office.


Don't look in the past!

JQLs containing Out of Office status parameters will only show issues that are currently affected, and issues that will be affected by a scheduled rule. Issues that have been affected by an Out of Office rule before today will not be included.


TIme parameters and syntax for JQL rules with Out of Office status:


JQL parameterMeaning
assignee.outofoffice.tomorrow = 0
CODE
The assignee is not Out of Office tomorrow
assignee.outofoffice.from >= startofday(7d)
CODE
The start of the next absence for the assignee of this issue is 7 days or more in the future
assignee.outofoffice.from >= '2023-08-01' 
CODE
The assignee of this issue is not absent before August 2023
reporter.outofoffice.from <= endofweek()
CODE
The reporter is now absent or leaving this week
reporter.outofoffice.until > endofweek(1)
CODE
The reporter returns from the next absence not before the end of next week
reporter.outofoffice.on.the ~ '2023-04-26'
CODE
out of office on a specific date
assignee.outofoffice.soon=1
CODE
The assignee is currently out of office or starts his leave within the next 4 days

Building reports with JQL Out of Office status parameters

These parameters open up a lot of possibilities for reporting in Jira dashboards. Please talk to us if you need any help setting this up.

Using native Jira gadgets

Here are some examples of native gadgets that are a good fit for JQLs which include Out of Office status parameters


Chart
GadgetFilter results
Use CaseIssues assigned to an absent assignee




Sample Query

assignee.outofoffice.until > endofweek(1)
CODE
GadgetIssue Statistics
Use CaseAbsent assignees

Sample Query
assignee.outofoffice.until > endofweek(1)
CODE
GadgetTwo Dimensional Filter Statistics
Use CaseIssues at risk per sprint



Sample Query
assignee.outofoffice.until > endofweek(1)
CODE
GadgetFilter Results
Use CaseEpics at risk



Sample Query
issuetype=epic AND statuscategory in("In Progress", "To Do") AND assignee.outofoffice.from>=startofday(4d)
CODE
GadgetFilter Results
Use CaseCustomers waiting for absent agents



Sample Query
assignee.outofoffice.until> endofweek(1)AND status = “waiting for support“
CODE

Using Custom Charts for Jira

The Out of Office status can also be read by any reporting apps from the Atlassian Marketplace, like Custom Charts for Jira, that support JQL expressions.

Custom Charts gadgets are very customizable, and can generate some insights that are not possible with native Jira reporting capabilities.

In this section we focus on two examples of such extra capabilities. For more inspiration, you can read a blog article on 14 dashboard gadgets to nail capacity planning in Jira

Combining charts with multiple dimensions using the simple search gadget.

The Simple Search gadget in Custom Charts for Jira can be connected to any number of charts or issue lists. Those gadgets will then show statistics for the data source and filters applied in the simple search gadget.

Below is an example with a query for issues with assignees that are currently Out of Office:

Please refer to the Custom Charts documentation for any configuration details, or talk to us if you need any help setting this up.

Reporting on Story Points at Risk

Custom Charts can report on the story points associated to the issues, rather than the issues themselves.

This allows to easily create insights related to the amount of story points that may not be completed, because they are currently assigned to users who are out of office. 

To build this specific chart:

  • Create a Custom Charts gadget
  • Select Assignee in the CHART BY field
  • Select SUM of Story Points in the CALCULATE BY field
  • Adapt the query below: 



project = "your project" AND sprint in openSprints() AND assignee.outofoffice.today=1
CODE