JQL или как найти иголку в стоге Jira (часть 1) Edited

Сразу отмечу что данный мануал подготовлен не мной, я лишь запускаю его в массы. А спасибо за него надо сказать Роману Керскому и Гилевой Елене, именно они трудились над его созданием.
 
Из-за ограничения кол-ва символов мне придется разбить мануал на 3 части: 

1. В первой части будут представлены все известные нам функции jql;

2.  Во второй части мы расскажем вам о функциях, которые добавляют сторонние плагины;

3. В третей части мы расскажем вам об известных нам операторах jql.

 

И так часть 1 - 

 

Функции:

Функция

Описание

Поддерживаемые поля

Операторы

Пример JQL

Поддерживаемые

Неподдерживаемые

membersOf()

Возвращает пользователей, которые входят в группу AD

membersOf(Group)

Assignee, Reporter, Voter, Watcher, custom fields of type User

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Вывести заявки, у которых исполнитель входит в группу "УТРиПК":

assignee in (membersOf("УТРиПК"))

closedSprints(),

openSprints()

Поиск по запросам, которые были назначены в завершённых (открытых) спринтах.

closedSprints(), openSprints()

Sprint

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <=
IS , IS NOT, WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти все запросы, которые назначены на завершенном спринте:

sprint in closedSprints()

Найти все вопросы, которые назначены на спринте, который еще не был завершен:
sprint in openSprints()

componentsLeadByUser()

Поиск запросов в компонентах, у которых во главе конкретный пользователь. Если пользователь не указан, то будет использоваться текущий пользователь (т.е. Вы).

componentsLeadByUser(), componentsLeadByUser(username)

Component

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT, WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы со статусом "В работе" в компонентах, которые во главе с вами:

component in componentsLeadByUser() AND status = "В работе"

currentLogin(), 

lastLogin()

Выполнить поиск запросов на основе времени, когда началась сессия текущего пользователя.

currentLogin(), lastLogin()

Created, Due, Resolved, Updated, custom fields of type Date/Time

=, !=, >, >=, <, <=
WAS*, WAS IN*, WAS NOT*, WAS NOT IN*, CHANGED*
* Только в предикате

~ , !~ IS , IS NOT , IN , NOT IN

Найти запросы, которые были созданы в ходе текущей сессии:

created > currentLogin()

Найти запросы, которые были созданы во время последней сессии:
created > lastLogin()

currentUser()

Поиск на основе текущего пользователя.

Обратите внимание, что эта функция может быть использована только авторизованным пользователям. Если вы создаете сохраненный фильтр, который будет использоваться анонимными пользователями, не используйте эту функцию.

currentUser()

Assignee, Reporter, Voter, Watcher, custom fields of type User

= , !=

~ , !~ , > , >= , < , <= IS , IS NOT , IN , NOT IN , WAS , WAS IN, WAS NOT , WAS NOT IN , CHANGED

Найти запросы, которые назначены для текущего пользователя:

assignee = currentUser()

Найти запросы, в которых автором является текущий пользователь, но не является исполнителем:

reporter = currentUser() AND (assignee != currentUser() OR assignee is EMPTY)

earliestUnreleasedVersion()

Выполнить поиск на основе самых ранних не выпущенных версий указанного проекта.

earliestUnreleasedVersion(project)

AffectedVersion, FixVersion, custom fields of type Version

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, чья FixVersion является самой ранней не выпущенной версии проекта 6708_VTB_0_Work2015Q3:
fixVersion = earliestUnreleasedVersion(6708_VTB_0_Work2015Q3)

Найти запросы, которые относятся к ранней не выпущенной версии проекта 6708_VTB_0_Work2015Q3:
affectedVersion = earliestUnreleasedVersion(6708_VTB_0_Work2015Q3) or fixVersion = earliestUnreleasedVersion(6708_VTB_0_Work2015Q3)

endOfDay(),

endOfMonth(),

endOfWeek(),

endOfYear(),

 Выполнить поиск на основе конца текущего дня (месяца, недели, года).

endOfDay(), endOfDay("inc"), endOfMonth(), endOfMonth("inc"), endOfWeek(), endOfWeek("inc"), endOfYear(), endOfYear("inc")

Created, Due, Resolved, Updated, custom fields of type Date/Time

 =, !=, >, >=, <, <=
WAS*, WAS IN*, WAS NOT*, WAS NOT IN*, CHANGED*
* Только в предикате

 ~ , !~ IS , IS NOT , IN , NOT IN

Найти запросы, созданные в конце текущего дня:
due < endOfDay()

В конце следующей недели:

due < endOfWeek("+1")

С 15-го числа следующего месяца:
due < endOfMonth("+15d")

issueHistory()

Поиск недавно просмотренных запросов, которые находятся в ниспадающем меню в Свежих запросах.

issueHistory()

Issue

IN, NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти недавно просмотренные запросы текущего пользователя:

issue in issueHistory() AND assignee = currentUser()

latestReleasedVersion()

Поиск на основе последней выпущенной версии из указанного проекта.

latestReleasedVersion(project)

AffectedVersion, FixVersion, custom fields of type Version

 IN , NOT IN

 = , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, чьи FixVersion является последней выпущенной версии проекта 7135_TFB_3_TransferRelease2:
fixVersion = latestReleasedVersion(7135_TFB_3_TransferRelease2)

Найти запросы, которые относятся к последней выпущенной версии проекта 7135_TFB_3_TransferRelease2:
affectedVersion = latestReleasedVersion(7135_TFB_3_TransferRelease2) or fixVersion = latestReleasedVersion(7135_TFB_3_TransferRelease2)

linkedIssues()

Выполнить поиск на основе запросов, которые связаны с указанным запросом. При желании можно ограничить поиск ссылок определенного типа. Обратите внимание, что LinkType чувствителен к регистру.

linkedIssues(issueKey), linkedIssues(issueKey,linkType)

Issue

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, которые связаны с конкретным запросом:
issue in linkedIssues(SKBMOB-2603)

Найти запросы, которые связаны с конкретным запросом, с помощью определенного типа связи:
issue in linkedIssues(SKBMOB-2603,"is mentioned by")

 now()

Выполнить поиск на основе текущего времени.

now()

Created. Due, Resolved, Updated, custom fields of type Date/Time

 = , != , > , >= , < , <=
WAS* , WAS IN* , WAS NOT* , WAS NOT IN* , CHANGED*
* Только в предикате

 ~ , !~ IS , IS NOT , IN , NOT IN

Найти запросы, которые просрочены:

duedate < now() AND status not in (Закрыт, Решенные)

 projectsLeadByUser()

Найти задачи в проектах во главе с конкретным пользователем.

projectsLeadByUser(), projectsLeadByUser(username)

 Project

 IN , NOT IN

 = , != , ~ , !~ , > , >= , < , <=
IS , IS NOT, WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти открытые запросы в проектах, которые во главе с вами:

project in projectsLeadByUser() AND status = "В работе"

projectsWhereUserHasPermission()

Найти задачи в проектах, где у вас есть специальное разрешение.

projectsWhereUserHasPermission(permission)

Project

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <=
IS , IS NOT, WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы в статусе "В работе" в проектах, где у вас есть разрешение "решать запросы":

project in projectsWhereUserHasPermission("Resolve Issues") AND status = "В работе"

projectsWhereUserHasRole()

Поиск задач в проектах, где у вас есть определенная роль. 
projectsWhereUserHasRole(rolename)

Project

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <=
IS , IS NOT, WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, в которых у вас есть роль Разработчики:

project in projectsWhereUserHasRole("Developers") AND status = "В работе"

releasedVersions()

Выполнить поиск на основе выпущенной версии (то есть версии, что администратор JIRA выпустил) из указанного проекта. Вы также можете осуществлять поиск по опубликованным версиям всех проектов, путем исключения параметра проекта.

releasedVersions(), releasedVersions(project)

AffectedVersion, FixVersion, custom fields of type Version

 IN , NOT IN

 = , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, чьи FixVersion являются выпущенной версией проекта VTB_RELEASE_2016:
fixVersion in releasedVersions(VTB_RELEASE_2016)

Найти запросы, которые относятся к опубликованным версиям проекта VTB_RELEASE_2016:
(affectedVersion in releasedVersions(VTB_RELEASE_2016)) or (fixVersion in releasedVersions(VTB_RELEASE_2016))

standardIssueTypes()

Поиск на основе стандартных типов задач (не касается подзадач).

standardIssueTypes()

Type

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы с типами, которые соответствуют только задачам:

issuetype in standardIssueTypes()

startOfDay(),

startOfMonth(),

startOfWeek(),

startOfYear()

Выполнить поиск на основе начала текущего дня (месяца, недели, года).

startOfDay(), startOfDay("inc"), startOfMonth(), startOfMonth("inc"), startOfWeek(), startOfWeek("inc"), startOfYear(), startOfYear("inc")

 

Created, Due, Resolved, Updated, custom fields of type Date/Time

= , != , > , >= , < , <=
WAS* , WAS IN* , WAS NOT* , WAS NOT IN* , CHANGED*
* Только в предикате

~ , !~ IS , IS NOT , IN , NOT IN

Найти задачи, созданные с начала текущего дня:
created > startOfDay()

Найти задачи, созданные с начала прошлой недели:
created > startOfWeek("-1")

Найти задачи, созданные с 15-го числа этого месяца:
created > startOfMonth("+14d")

subtaskIssueTypes()

Выполнить поиск на основе подзадач.

subtaskIssueTypes()

Type

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы с типами, которые соответствуют только подзадачам:

issuetype in subtaskIssueTypes()

unreleasedVersions()

Выполнить поиск на основе не выпущенных версий из конкретного проекта. Также можно произвести поиск по не выпущенным версиям всех проектов, путем исключения параметра проекта.

unreleasedVersions(), unreleasedVersions(project)

AffectedVersion, FixVersion, custom fields of type Version

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, чья FixVersion является не выпущенной версией проекта VTB_SelfServicePortal_4368:
fixVersion in unreleasedVersions(VTB_SelfServicePortal_4368)

Найти запросы, которые касаются не выпущенных версий проекта VTB_SelfServicePortal_4368:
affectedVersion in unreleasedVersions(VTB_SelfServicePortal_4368)

watchedIssues()

Выполнить поиск запросов, в которых вы являетесь наблюдателями

watchedIssues()

Issue

IN , NOT IN

= , != , ~ , !~ , > , >= , < , <= IS , IS NOT , WAS , WAS IN , WAS NOT , WAS NOT IN , CHANGED

Найти запросы, в которых вы наблюдатель:

issue in watchedIssues()

1 comment

@Andrey Goryunov очень тяжело таблицу читать( Но спасибо.

Comment

Log in or Sign up to comment
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Posted Wednesday in Jira

Join our webinar: How 1B+ feature flag events helped us build the new Jira

Every time you release software, there's a bit of risk – that there's a bug, that something breaks, or that the feature doesn't resonate with customers. Feature flagging helps make high stakes s...

139 views 0 3
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you