Comment trouver les problèmes qui vous ont été attribués à un moment donné?


193

Nous utilisons beaucoup Jira dans notre projet, mais j'ai souvent du mal à trouver des problèmes, que je sais, sur lesquels j'ai travaillé plus tôt. Habituellement, si un cas est signalé, cela semble familier à quelque chose sur lequel j'ai travaillé dans le passé, mais je ne me souviens pas exactement quoi et quand.

Habituellement, un problème est signalé, puis notre scrum master l'attribue au développeur, le développeur le corrige (espérons-le) puis le transmet au testeur (oui, ça marche!). Mais alors il ne m'est plus attribué, et j'ai du mal à trouver de vieux problèmes, dont je me souviens vaguement.

J'ai pensé qu'il était peut-être possible de voir l'historique attribué à un problème, il pourrait y avoir un moyen de former une recherche / filtre avancé, qui trouve tous les problèmes, qui à un moment donné m'a été attribué.

Quelqu'un at-il fait ça?


aussi, cette requête peut être utile
Alex.K.

Réponses:


282

Ceci est entre-temps possible au moyen de l'opérateur JIRA Query Language (JQL) 'WAS' , qui a été introduit dans JIRA 4.3 et étendu dans JIRA 4.4 pour couvrir également les assignés et les rapporteurs, par exemple:

project = "Angry Nerds" and (assignee was 'johnsmith' or reporter was 'johnsmith')

6
Il semble que cette réponse a été fournie de manière significative après que la question a été posée, mais elle devrait être la réponse acceptée à l'avenir avec les nouvelles versions de Jira (la version 4.3 est sortie en mars 2011).
Jared

Le wasmot - clé renvoie- t-il également un résultat si l'utilisateur est le cessionnaire / rapporteur actuel? (et dire que le problème n'avait pas auparavant de cessionnaire, ou qu'ils étaient les premiers affectés à ce problème)
nmz787

et qu'en est-il de la commande la dernière fois que j'y ai travaillé?
sashok_bg

1
La syntaxe a-t-elle changé? Je le trouve seulement viaassignee in ("johnsmith")
Thorsten Niehues

1
@ nmz787 J'ai testé que le wasmot - clé inclut les problèmes actuellement attribués.
Bernard Vander Beken

33

Requête à usage général pour n'importe quel «utilisateur actuel»:

assignee was currentUser()

Ce filtre peut être facilement partagé et n'importe qui peut le mettre sur son tableau de bord, etc. et il renverra des résultats qui lui sont spécifiques .. Non pris en charge sur toutes les anciennes versions de JIRA.

Ce fut ma fonction JIRA les plus demandées jamais .


24

Découvrez le plugin JIRA Toolkit - Champ personnalisé des participants

https://studio.plugins.atlassian.com/wiki/display/JTOOL/JIRA+Toolkit+Plugin

Ce champ vous permet de suivre facilement les problèmes auxquels vous avez "participé". Celles-ci sont définies comme étant les problèmes que vous avez commentés, soulevés ou que vous êtes le cessionnaire actuel. Voir aussi le plugin [JIRA Extended Participants].



18

Mettre à jour

Cela fonctionne sans plugins:

assignee was currentUser() OR reporter was currentUser() ORDER BY updated DESC

La réponse originale

Cette requête a fonctionné pour moi:

Participants = currentUser()

1
Je l'ai essayé mais j'ai reçu un message "Le champ" Participants "n'existe pas ou vous n'avez pas l'autorisation de le consulter." C'est avec Jira v6.0.6 # 6105-sha1: 9713ad1.
Craig McQueen

@CraigMcQueen, je ne suis pas un gourou Jira, mais je pense que vous devez installer le plugin JIRA Toolkit
warvariuc

7

essayez "l'assigné était le nom d'utilisateur". il obtiendrait tous les tickets attribués à l'utilisateur auparavant.


5

Vous pouvez trouver les problèmes par les entrées du journal de travail directement dans la base de données:

select distinct ji.pkey from jiraissue ji inner join worklog wl on ji.id=wl.issueid where wl.author='some_username';

Je suis d'accord que cela devrait être implémenté dans l'interface utilisateur.


En tant que développeur, je n'ai malheureusement pas accès directement à la base de données. Est-il possible de le faire via la recherche avancée de problèmes d'une manière ou d'une autre?
erikric

Comme je l'ai dit dans mon commentaire, la recherche sur le journal de travail n'est pas encore prise en charge par Jira. Veuillez voter ici jira.atlassian.com/browse/JRA-12312
Hugo Palma

Est-ce la meilleure réponse pour Jira <4,3? Nous sommes bloqués avec une ancienne version en raison de certaines exigences.
k-den


3

wasn'est pas pris en charge pour le champ cessionnaire lorsque j'ai essayé récemment. Vous devez utiliser des CHANGED, FROM, TOmots clés pour filtrer.

J'utilise quelque chose comme ça:

project = MindBlowingProject AND (assignee in (currentUser()) OR assignee CHANGED from (currentUser()) OR reporter in (currentUser())) ORDER BY updated DESC

2

Il y a donc 3 scénarios: 1 - Je l'ai changé d'une certaine manière - le responsable a changé par [UserName], 2 - J'ai changé le statut (fermé, peu importe) - OU le statut changé par [UserName], 3 - Je l'ai toujours - OR assigné = [UserName]

Donc, toute la requête (en supposant que l'instruction modifiée est autorisée est:

assignee modifié par [UserName] OU statut modifié par [UserName] OU assignee = [UserName]


0

Je pense que l'approche la plus sensée consiste à rechercher l'historique des problèmes. La seule chose qui n'est pas enregistrée ici, c'est qui a accédé au problème (il suffit de regarder, sans rien changer).

Mais vous ne pouvez pas rechercher l'historique des tickets sans accès à la base de données (pour autant que je sache, veuillez me corriger si je me trompe)

Ainsi, pour rechercher tous les problèmes avec "someUserName" dans l'historique des problèmes, vous devez rejoindre en interne le groupe de changement de table (et peut-être l' élément de changement de table à partir de là).

Exemple :

select ji.id,issuenum,summary,creator,assignee,ji.created,updated,c.id as histid,c.author from jiraissue ji inner join changegroup c on ji.id=c.issueid where c.author like 'someUserName';

c.id as histid ==> c'est le numéro / identifiant de l'entrée dans l'onglet (issue -) "History"

Signification : s'il y a jamais eu un changement par l'utilisateur "someUserName" il est enregistré dans l'historique et il sera écouté avec cette requête

L'exemple suivant répertorie simplement chaque problème distinct, où le "myusername" a été trouvé dans l'historique après la date 20180501:

select distinct ji.id,issuenum,summary,creator,assignee,ji.created,updated,c.author from jiraissue ji inner join changegroup c on ji.id=c.issueid where c.author like 'myusername' and ji.created > '2018-05-01T00:00:00.000';

J'ai annoté la relation nécessaire ici: entrez la description de l'image ici


0

Dans le menu, sélectionnez Tempo-> Rapports

Sélectionnez la plage de dates

et vous devriez voir le rapport.


-1

J'ai essayé la requête SQL ci-dessous et elle donne des données sur tous les problèmes et tous les destinataires qui ont jamais été affectés à un problème. Tout changement dans le cessionnaire pour tout problème est capturé par la requête ci-dessous:

select distinct
p.pkey +'-'+cast(ji.issuenum as varchar(max)),
ji.SUMMARY,
cast(ci.OLDSTRING as nvarchar(max)) as 'Old value',
cast(ci.NEWSTRING as nvarchar(max)) as 'New value'
from
jiraissue ji
join project p on p.id = ji.PROJECT
join changegroup cg on cg.issueid = ji.id
join changeitem ci on ci.groupid = cg.id and FIELD = 'assignee'

Quiconque recherche la requête trouvera cela utile:)

-Neha 'D' Pal


Vous ne voulez pas expliquer chaque nom de colonne, chaque nom de table, que fait-il? Vous n'avez pas?
Aksen P le
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.