информация jql в базе данных

Вот запрос jql, который я получил в результате

assignee in membersOf("project")

Это вернет проблемы участников, принадлежащих проекту.

Я хотел бы знать, в какой таблице базы данных jira будут храниться эти данные (или эта ссылка, какой член принадлежит какому проекту)?


person Krish Krishna    schedule 22.06.2015    source источник
comment
Это зависит от того, говорите ли вы на самом деле о членстве в группе или членстве в роли проекта?   -  person Koshinae    schedule 22.06.2015


Ответы (1)


Членство в группе

Членство в группах хранится в таблице CWD_MEMBERSHIP.

Пример:

SELECT LOWER_CHILD_NAME 
FROM CWD_MEMBERSHIP 
WHERE MEMBERSHIP_TYPE = 'GROUP_USER' 
AND LOWER_PARENT_NAME = 'jira-administrators';

Пример 2, чтобы также получить информацию о пользователе:

SELECT
   U.*
FROM
   CWD_MEMBERSHIP M
INNER JOIN CWD_USER U
ON
   M.LOWER_CHILD_NAME = U.LOWER_USER_NAME
WHERE
   M.MEMBERSHIP_TYPE   = 'GROUP_USER' AND
   M.LOWER_PARENT_NAME = 'jira-administrators';

Членство в роли проекта

Однако членство в ролях проекта находится в таблицах PROJECTROLE и PROJECTROLEACTOR.

Пример:

SELECT A.ROLETYPEPARAMETER AS USERNAME, R.NAME AS ROLENAME, P.PKEY || ' - ' || P.PNAME AS PROJECTNAME
FROM PROJECTROLEACTOR A
INNER JOIN PROJECTROLE R ON A.PROJECTROLEID = R.ID
INNER JOIN PROJECT P ON A.PID = P.ID
WHERE P.PKEY = 'YOUR_PKEY_COMES_HERE'
ORDER BY 3, 1, 2;

Пример 2, чтобы получить пользователей, которым явно назначены роли проекта (не через группы):

SELECT A.ROLETYPEPARAMETER AS USERNAME, R.NAME AS ROLENAME, P.PKEY || ' - ' || P.PNAME AS PROJECTNAME
FROM PROJECTROLEACTOR A
INNER JOIN PROJECTROLE R ON A.PROJECTROLEID = R.ID
INNER JOIN PROJECT P ON A.PID = P.ID
INNER JOIN CWD_USER U ON LOWER(A.ROLETYPEPARAMETER) = U.LOWER_USER_NAME
ORDER BY 3, 1, 2;

История изменений проблемы

Чтобы получить историю проблем, вам понадобятся таблицы changegroup и changeitem, объединенные с jiraissue. Changegroup хранит, кто изменился и когда, changeitem содержит старые и новые данные, а также какое поле было изменено.

Пример списка бывших правопреемников:

SELECT
   CG.AUTHOR   AS CHANGE_USER ,
   CG.CREATED  AS CHANGE_WHEN ,
   CI.FIELD    AS CHANGED_WHAT,
   CI.OLDVALUE AS CHANGED_FROM,
   CI.NEWVALUE AS CHANGED_TO
FROM
   JIRAISSUE JI
INNER JOIN CHANGEGROUP CG
ON
   JI.ID = CG.ISSUEID
INNER JOIN CHANGEITEM CI
ON
   CG.ID = CI.GROUPID
WHERE
   JI.PROJECT   = 10100 AND
   JI.ISSUENUM  = 1234 AND
   CI.FIELDTYPE = 'jira' AND
   CI.FIELD     = 'assignee'
ORDER BY
   CG.CREATED ASC;

Последняя строка (самая новая created) newvalue должна соответствовать значению jiraissue.assignee-s.

person Koshinae    schedule 22.06.2015
comment
Оценил!. Но дело в том, что в одном проекте есть несколько участников (они также могут быть назначены с билетами из других проектов). Я пытаюсь получить список всех проблем участников, принадлежащих к проекту (который также учитывает проблемы из других проектов). - person Krish Krishna; 22.06.2015
comment
Чтобы разбить его дальше, я ищу sql-эквивалент jql: правопреемник в memberOF (проект A) - person Krish Krishna; 22.06.2015
comment
Хм, вопрос: что считается участником проекта? разработчик? администратор проекта? - person Koshinae; 22.06.2015
comment
Насколько я понимаю, когда мы переходим к просмотру профиля jira, мы видим опцию «Группы». Но то, что я наблюдал, те же группы, также соответствует названию проекта. - person Krish Krishna; 22.06.2015
comment
А, так это ваша локальная установка. В любом случае, не стесняйтесь преобразовывать эти запросы :-) - person Koshinae; 22.06.2015
comment
Можно сомневаться, что имена групп не могут быть другими, чем jira-users, jira-*, например, какое-то имя, состоящее из участников? - person Krish Krishna; 22.06.2015
comment
О, они могут быть как угодно, но я предлагаю уложиться в английский алфавит + пробелы и тире. - person Koshinae; 22.06.2015
comment
Отлично работаете! Спасибо!! :D - person Krish Krishna; 22.06.2015
comment
Аналогичный вопрос, где будут храниться данные «правопреемник». Я имею в виду историю информации о правопреемнике билета. - person Krish Krishna; 23.06.2015