Hello,
In certain JQL searches, we would like an order by status category, or even, if possible, by order of workflow status.
Do you know if this is possible?
Thanks a lot.
Tania
It's not possible to order by status category unfortunately.
You can order by Status order though - the order is based on the order of Statuses within your system (i.e Jira Administration > Issues > Statuses)
ASC is classed as top > bottom of list.
Ste
hello,
It was very painful to classify the 68 statuses manually and one by one but it works
Thanks a lot
Tania
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Reordering 237 statuses wouldn't have been feasible manually. I therefore created this user script, which will oder them "To Do" < "In Progress" < "Done":
https://gist.github.com/SVNKoch/90a76c8e265267b8b23a7f954bc82c24
Update: code in gist is now faster and works on cloud
// ==UserScript==
// @name Jira Reorder Statuses in Admin Page by StatusCategory
// @namespace jira.violentmonkey.userscript
// @match https://jira.*.com/secure/admin/ViewStatuses.jspa*
// @version 1.0
// @description Orders entries by status: "To Do" < "In Progress" < "Done"
// @grant none
// ==/UserScript==
(function() {
"use strict";
var slowMode = false; // will highlight each line to be reordered, scroll to it and wait shortly before reordering
const toDo = "To Do";
const inProgress = "In Progress";
const done = "Done";
function moveStatusUp(status) {
var rows = document.querySelectorAll("tbody tr");
for (var i = 1; i < rows.length; i++) {
var currentStatusCell = rows[i].querySelector("td.overflow-ellipsis span[data-tooltip*='jira-issue-status-tooltip-title']");
var previousStatusCell = rows[i - 1].querySelector("td.overflow-ellipsis span[data-tooltip*='jira-issue-status-tooltip-title']");
if (!currentStatusCell || !previousStatusCell) continue;
var currText = currentStatusCell.getAttribute("data-tooltip") || "";
var prevText = previousStatusCell.getAttribute("data-tooltip") || "";
if (status === toDo) {
if (currText.includes(toDo) && !prevText.includes(toDo)) {
var link = rows[i].querySelector("a[href*='StatusUp.jspa']");
if (link) {
if (slowMode) {
rows[i].style.backgroundColor = "yellow";
rows[i].scrollIntoView({behavior:"smooth", block:"center"});
setTimeout(function(){ window.location.href = link.href; }, 1000);
} else {
window.location.href = link.href;
}
return true;
}
}
} else if (status === inProgress) {
if (currText.includes(inProgress) && prevText.includes(done)) {
var link2 = rows[i].querySelector("a[href*='StatusUp.jspa']");
if (link2) {
if (slowMode) {
rows[i].style.backgroundColor = "yellow";
rows[i].scrollIntoView({behavior:"smooth", block:"center"});
setTimeout(function(){ window.location.href = link2.href; }, 1000);
} else {
window.location.href = link2.href;
}
return true;
}
}
}
}
return false;
}
function moveStatusesUp() {
if (moveStatusUp(toDo)) return;
if (moveStatusUp(inProgress)) return;
}
window.addEventListener("load", moveStatusesUp);
})();It will take some time to run, as each "click" refreshes the page, but it was waaay faster then doing it manually.
Update: found another script that might be helpful here:
https://jaus.atlassian.net/wiki/spaces/JAUS/pages/33452/Reorder+Status
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@Tatiana Marti (cc @Ste Wright),
perhaps I'm missing something, but wouldn't
ORDER BY statusCategory
do exactly that?
EDIT: This appears to be supported in Jira Cloud only.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Hannes Obweger - JXL for Jira
I am using Jira Cloud, and that worked for me also. But Tatiana appears to be using Jira Server: did you try it with that version? Thanks!
Kind regards,
Bill
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
To be clear, I tried it on Server - it doesn't work.
Ste
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Status category values can be used in JQL queries and formulas.You can create a custom JQL search using Status or Status Category for use in Reports and filters.
You can use below query for status category
project= "XYZ" AND statusCategory = Done
The order by will first order by statuscategory, then if two issues have the same statuscategory, Jira will order by status.
Thanks
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.