Jak znaleźć problemy, które w pewnym momencie zostały Ci przypisane?


192

Jira intensywnie wykorzystujemy w naszym projekcie, ale często mam problemy ze znalezieniem problemów, o których wiem, że pracowałem wcześniej. Zwykle, jeśli zgłoszono jakiś przypadek, wydaje mi się, że jest to coś, nad czym pracowałem w przeszłości, ale nie pamiętam dokładnie, co i kiedy.

Zwykle zgłaszany jest problem, a następnie nasz scrum master przypisuje go do programisty, programista naprawia (miejmy nadzieję), a następnie przekazuje testerowi (tak, działa!). Ale to już nie jest mi przypisane i trudno mi znaleźć stare problemy, które pamiętam mgliście.

Pomyślałem, że być może można zobaczyć przypisaną historię problemu, może istnieć sposób na utworzenie zaawansowanego wyszukiwania / filtra, który znajdzie wszystkie problemy, które w pewnym momencie zostały mi przypisane.

Czy ktoś to zrobił?


również to zapytanie może być pomocne
Alex.K.

Odpowiedzi:


281

Jest to w międzyczasie możliwe za pomocą operatora WAS JIRA Query Language (JQL) , który został wprowadzony w JIRA 4.3 i rozszerzony w JIRA 4.4, aby objąć również cesjonariuszy i reporterów, na przykład:

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

6
Wygląda na to, że odpowiedź została udzielona znacznie po zadaniu pytania, ale powinna to być odpowiedź zaakceptowana w kolejnych wersjach Jiry (wersja 4.3 była wydana w marcu 2011 r.).
Jared

Czy wassłowo kluczowe zwraca również wynik, jeśli użytkownik jest bieżącym cesjonariuszem / reporterem? (i powiedzmy, że problem nie miał wcześniej cesjonariusza, albo byli pierwszymi przypisanymi do tego problemu)
nmz787,

a co z zamówieniem do ostatniej pracy?
sashok_bg

1
Czy zmieniła się składnia? Znajduję to tylko poprzezassignee in ("johnsmith")
Thorsten Niehues,

1
@ nmz787 Testowałem, że wassłowo kluczowe obejmuje aktualnie przypisane problemy.
Bernard Vander Beken

33

Zapytanie ogólne dla dowolnego „bieżącego użytkownika”:

assignee was currentUser()

Ten filtr można wygodnie udostępniać i każdy może umieścić go na swoim pulpicie nawigacyjnym itp. Zwróci wyniki specyficzne dla nich. Nie jest jednak obsługiwane we wszystkich starszych wersjach JIRA.

To była moja najbardziej pożądana funkcja JIRA w historii .


24

Sprawdź wtyczkę JIRA Toolkit - pole niestandardowe uczestników

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

To pole umożliwia łatwe śledzenie problemów, w których „uczestniczyłeś”. Są to wszelkie problemy, które skomentowałeś, zgłosiłeś lub które są bieżącym cesjonariuszem. Zobacz także wtyczkę [JIRA Extended Members].



18

Aktualizacja

Działa to bez wtyczek:

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

Oryginalna odpowiedź

To zapytanie działało dla mnie:

Participants = currentUser()

1
Próbowałem, ale dostałem komunikat „Uczestnicy terenowi” nie istnieją lub nie masz uprawnień, aby je wyświetlić. ” To jest z Jira v6.0.6 # 6105-sha1: 9713ad1.
Craig McQueen

@CraigMcQueen, nie jestem guru Jira, ale myślę, że musisz zainstalować wtyczkę JIRA Toolkit
warvariuc

7

spróbuj „assignee was username”. otrzyma wszystkie bilety wcześniej przypisane do użytkownika.


5

Możesz znaleźć problemy według wpisów w dzienniku pracy bezpośrednio w bazie danych:

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

Zgadzam się, że należy to zaimplementować w interfejsie użytkownika.


Jako programista nie mam niestety dostępu bezpośrednio do bazy danych. Czy jest to możliwe w jakiś sposób poprzez wyszukiwanie zaawansowane?
erikric

Jak powiedziałem w moim komentarzu, wyszukiwanie w dzienniku pracy nie jest jeszcze obsługiwane przez Jira. Głosuj na to tutaj jira.atlassian.com/browse/JRA-12312
Hugo Palma

Czy to najlepsza odpowiedź dla Jira <4.3? Utknęliśmy ze starą wersją z powodu pewnych wymagań.
k-den


3

wasnie jest obsługiwany w polu cesjonariusza, gdy próbowałem ostatnio. Musisz użyć CHANGED, FROM, TOsłów kluczowych do filtrowania.

Używam czegoś takiego:

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

2

Istnieją więc 3 scenariusze: 1 - w jakiś sposób to zmieniłem - przypisanie zmieniono przez [nazwa użytkownika], 2 - zmieniłem status (zamknąłem, cokolwiek) - LUB status zmieniony przez [nazwa użytkownika], 3 - nadal mam - OR assignee = [nazwa użytkownika]

Zatem całe zapytanie (przy założeniu, że zmieniona instrukcja jest dozwolona, ​​to:

nazwa użytkownika zmieniona przez [nazwa użytkownika] LUB status zmieniona przez [nazwa użytkownika] LUB osoba przypisana = [nazwa użytkownika]


0

Myślę, że najbardziej rozsądnym podejściem jest przeszukiwanie historii problemów. Jedyną rzeczą, która nie jest tam rejestrowana, jest to, kto uzyskał dostęp do problemu (tylko ogląda, nie zmienia niczego).

Ale nie możesz przeszukiwać historii zgłoszeń bez dostępu do bazy danych (o ile mi wiadomo, popraw mnie, jeśli się mylę)

Tak więc, aby wyszukać wszystkie problemy z „someUserName” w historii problemów, musisz wewnętrznie dołączyć do grupy zmian tabeli (i być może tabeli zmian stamtąd).

Przykład :

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 ==> jest to numer / identyfikator pozycji w zakładce (problem -) „Historia”

Czyli : jeśli kiedykolwiek nastąpiła zmiana przez użytkownika „someNazwaUżytkownika”, jest ona rejestrowana w Historii i będzie listetowana z tym zapytaniem

W poniższym przykładzie wymieniono po prostu każdy problem, w którym „moja nazwa użytkownika” została znaleziona w Historii po dacie 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';

Adnotowałem tutaj niezbędną relację: wprowadź opis zdjęcia tutaj


0

Z menu wybierz Tempo-> Raporty

Wybierz zakres dat

i powinieneś zobaczyć raport.


-1

Wypróbowałem poniższe zapytanie SQL, które podaje dane wszystkich problemów i wszystkich cesjonariuszy, którzy kiedykolwiek zostali przypisani do problemu. Każda zmiana cesjonariusza dla dowolnego problemu jest przechwytywana przez poniższe zapytanie:

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'

Każdy, kto szuka zapytania, uzna to za przydatne:)

-Neha „D” Pal


Nie chcesz wyjaśniać nazw kolumn, nazw tabel, co to robi? Ty nie
Aksen P
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.