Jednou z nejlepších vlastností Jira je její flexibilita – stávající vlastnosti se dají jednoduše rozšířit nebo přidat úplně nové. A JQL v tomto ohledu není výjimkou! Na Marketplace je nespočet pluginů pro Jira, kterými se JQL dá vylepšit – sami si můžete vytvořit vlastní funkce, nebo se obraťte na nás jako vašeho Atlassian Solution Partnera, rádi vám poradíme a pomůžeme.

JQL Tricks

JQL Tricks plugin (placený) má mnoho funkcí rozšiřujících JQL. Zahrnuje soubor funkcí, které se dotazují na spoustu základních Jira struktur jako uživatelé, verze, issues nebo komentáře. Úplný seznam funkcí je dostupný na J-Tricks.

Pokud vás zajímají všechna nová issues vytvořená v projektech, kde jste jako project lead, pomůže vám Results gadget, který používá filtr směrovaný na tento SQL dotaz:

project in projectsLeadByUser() and created > lastLogin() ORDER BY created

Funkce ProjectLeadByUser() najde všechny projekty, kde jste uvedeni jako project lead. Pokud chcete vyhledat projekty někoho jiného, stačí zadat jeho uživatelské jméno.

Část „created > lastLogin()“ najde všechny issues od posledního přihlášení.

Search attachements

Další skvělou vlastností Jira je prohledávání issues v databázi. Full-text Search Attachments for JIRA Plugin (placený) povoluje JQL výrazy pro hledání příloh dle názvu, typu a obsahu. Plugin také podporuje různé typy souborů (Word, Excel, OOF, txt, zip, PDF a mnoho dalších). Pro společnosti, které archivují dokumenty v JIRA, umožní plugin povolit prohledávání obsahu těchto dokumentů.

Pokud například hledáte dokument obsahující slova „Case Study“, stačí jednoduše napsat následující dotaz:

issue in havingAttachments(„Case Study“)

Dosah do filtrů, subtasků a linked issues

Jedno z omezení JQL v základní JIRA je možnost provést podvýběr. Craftforge JQL Functions Plugin (zdarma)  umožňuje prohledávat uživatelům v rámci filtru, linked issues a subtasků v JQL. Například jako zde:

(type = story and fixVersion = earliestUnreleasedVersion()) or issue in subtaskIssuesFromQuery(“type = story and fixVersion = earliestUnreleasedVersion()”)

V jednotlivých sprintech týmy pracují na různých typech issues: story, tasky, bugy apod. Pokud dojde k přidání story do sprintu, tak by tým měl vytvořit subtasky pro rozklad daného story napříč jednotlivými oblastmi jako jsou servery, UI nebo testy. Uvedený dotaz pak vrátí hlavní story stejně jako subtasky poslané do sprintu a oddělí tak práci na nových vlastnostech od ostatních issues. Issues, které nejsou v tomto dotazu, jsou obvykle technologickým dluhem, který byl vyřešen.

Více v druhé části článku, která vyjde 6. února.

Za Atlassian team,

Petr Vaníček | Atlassian Certified Professional

 

Zdroj: Atlassian Blog