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.