Ugrás a fő tartalomra

JIRA JQL nyelv alapok

 JIRA JQL nyelv alapok




🔷 Mi az a JIRA?

A JIRA egy Atlassian által fejlesztett agilis projektmenedzsment és hibakövető rendszer, amelyet fejlesztési, üzleti és IT csapatok is használnak. Lehetővé teszi a feladatok (issue-k) nyomon követését, sprintek kezelését és a folyamatok testreszabását.


🔷 Mi az a JQL?

A JIRA Query Language (JQL) egy lekérdezőnyelv, amely lehetővé teszi a JIRA-ban lévő feladatok pontos szűrését, keresését és listázását.

Alap célja:

  • Egyéni szűrők és dashboardok készítése

  • Automatizálás alapfeltétele (pl. SLA, értesítések)

  • Speciális riportálás


📌 1. Alap JQL szerkezet

---jql
<mező> <operátor> <érték>

Példák:

---jql
project = "PROJ"
status = "In Progress" assignee = currentUser() priority != "High" created >= -7d

📌 2. Leggyakoribb mezők

MezőJelentése
projectProjekt kulcsa vagy neve
statusFeladat állapota
assigneeKiosztott személy
reporterJelentő személy
priorityPrioritás
createdLétrehozás dátuma
updatedUtolsó módosítás
dueHatáridő
labelsCímkék
issueTypeFeladattípus (Bug, Task stb.)
resolutionMegoldás típusa 


📌 3. Operátorok

OperátorJelentésePélda
=Egyenlőstatus = "To Do"
!=Nem egyenlőpriority != "High"
INTöbb érték közül az egyikstatus IN ("To Do", "In Progress")
NOT INNincs ezek közöttassignee NOT IN ("alice", "bob")
~Részleges illeszkedés (LIKE)summary ~ "hiba"
!~Nem illeszkedik részbendescription !~ "urgent"
>, <Nagyobb/kisebb dátum vagy számcreated > "2024-01-01"
IS, IS NOTNULL típusú vizsgálatassignee IS EMPTY

📌 4. Dátumok kezelése

Abszolút dátum:

---jql
created >= "2025-01-01"

Relatív idő:

---jql
created >= -7d -- utolsó 7 nap
updated >= -1w -- utolsó 1 hét due <= endOfDay() -- lejár ma

📌 5. Függvények

FüggvényLeírásPélda
currentUser()Bejelentkezett felhasználóassignee = currentUser()
now()Jelenlegi időpontupdated <= now()
startOfDay()Mai nap kezdetecreated >= startOfDay()
membersOf()Csoport tagjaiassignee IN membersOf("dev-team")


📌 6. Logikai operátorok

  • AND – és

  • OR – vagy

  • NOT – nem

---jql
project = "PROJ" AND status = "To Do"
assignee = currentUser() OR reporter = currentUser() NOT status = "Closed"

📌 7. Összetett példák

❶ Saját feladataim, amik nincsenek kész:

---jql
assignee = currentUser() AND status != "Done"

❷ Utóbbi 30 napban létrehozott hibák:

---jql
issuetype = Bug AND created >= -30d

❸ Prioritásos feladatok sprinten belül:

---jql
priority IN ("High", "Highest") AND sprint IN openSprints()

❹ Késésben lévő feladatok:

---jql
due <= now() AND status != Done

❺ Üres mezők keresése:

---jql
labels IS EMPTY AND assignee IS NOT EMPTY

📌 8. Haladó szűrések (Subquery, Epic, Agile)

Epic feladat alá tartozók:

---jql
"Epic Link" = PROJ-123

Sprinthez tartozó:

---jql
sprint IN openSprints()

📌 9. Saját szűrők mentése

  • A keresést követően kattints a "Save as" gombra.

  • Adj nevet a szűrőnek.

  • Használd Dashboardon, értesítésekhez, vagy akár automatizációhoz.


📌 10. JQL Debug tipp

  • Használj részleges lekérdezést, majd bővítsd.

  • Tesztelj előbb alapmezőkkel.

  • Kombinálj ORDER BY-t:

---jql
project = PROJ ORDER BY created DESC


További haladó lekérdezések


🔹 Késésben lévő feladatok az aktív sprintben

---jql
sprint IN openSprints() AND due <= now() AND statusCategory != Done

🔹 Story-k és alfeladataik egy epichez

---jql
"Epic Link" = PROJ-123 ORDER BY issuetype ASC

🔹 Sprintben lévő, nem mozgó (utóbbi 5 napban nem frissült) feladatok

---jql
sprint IN openSprints() AND updated <= -5d AND statusCategory != Done

📁 2. Minőségbiztosítás (QA) szűrések

🔹 Bug típusú, új hibák az utóbbi 7 napból

---jql
issuetype = Bug AND created >= -7d AND status = "New"

🔹 Visszanyitott hibák (reopened státusz)

---jql
status WAS "Done" AND status = "Reopened"

🔹 Újra megnyitott hibák utóbbi 30 napban

---jql
issuetype = Bug AND status CHANGED TO "Reopened" AFTER -30d

📁 3. Fejlesztői fókusszal

🔹 Saját, aktív feladataim (nem kész)

jql
assignee = currentUser() AND statusCategory != Done ORDER BY priority DESC

🔹 Saját backlog (nincs sprinthez rendelve)

jql
assignee = currentUser() AND sprint IS EMPTY AND statusCategory != Done

🔹 Visszadobott feladatok (állapot vált “To Do”-ra)

jql
assignee = currentUser() AND status CHANGED TO "To Do" AFTER -7d

📁 4. Project Manager és PO nézetek

🔹 Feladatok, ahol nincs felelős

jql
project = PROJ AND assignee IS EMPTY ORDER BY created DESC

🔹 High és Highest prioritású, nyitott feladatok

jql
priority IN ("High", "Highest") AND statusCategory != Done

🔹 Feladatok, amelyek több mint 15 napja nem lettek módosítva

jql
statusCategory != Done AND updated <= -15d

🔹 Feladatok, amelyek határideje ma van

jql
due = startOfDay()

📁 5. Statisztika és riport támogatás

🔹 Feladatok csoportosítva projekt és státusz szerint

jql
project IN ("PROJ1", "PROJ2") ORDER BY project, status

🔹 Feladatok, amelyeknél a státusz 3-szor vagy többször változott

jql
status CHANGED BY currentUser() AFTER -30d

(a JIRA önmagában nem tud számot számolni, de ezen keresztül elő lehet készíteni reportot)

🔹 Az elmúlt 14 napban lezárt hibák

jql
issuetype = Bug AND status = Done AND resolved >= -14d

📁 6. Címkézés és meta-adatok szerinti keresés

🔹 Feladatok „urgent” címkével

jql
labels = urgent AND statusCategory != Done

🔹 Feladatok több címkével (intersect)

jql
labels IN ("frontend", "urgent")

🔹 Feladatok, amelyek leírása tartalmazza az “SQL error” szöveget

jql
description ~ "SQL error"

📁 7. Csoport alapú szűrés

🔹 A fejlesztői csoporthoz rendelt feladatok

jql
assignee IN membersOf("developers")

🔹 Olyan feladatok, amelyek nincsenek kiosztva senkinek, de a QA csoport felelőssége

jql
assignee IS EMPTY AND project = "QA" AND "QA Responsible" IN membersOf("qa-group")

💡 Tipp: Szűrők mentése és dashboard használat

  • Mentés: Bármelyik lekérdezésből készíthetsz saját szűrőt → használható automatikus email riportokhoz vagy dashboardon.

  • Dashlet típusok: Filter Results, Pie Chart, Two-Dimensional Filter Statistics stb.

  • Automation: A mentett szűrők eseményindítói lehetnek JIRA automatizálásban (pl. ha egy szűrő eredménye nő → küldj figyelmeztetést)







Link : https://support.atlassian.com/jira-software-cloud/docs/use-advanced-search-with-jira-query-language-jql/

Megjegyzések