Bagaimana menemukan masalah yang pada titik tertentu telah ditugaskan untuk Anda?


192

Kami menggunakan Jira secara luas dalam proyek kami, tetapi saya sering kesulitan menemukan masalah, yang saya tahu, saya telah kerjakan sebelumnya. Biasanya, jika beberapa kasus dilaporkan, itu kelihatannya akrab dengan sesuatu yang telah saya kerjakan di masa lalu, tetapi saya tidak ingat persis apa dan kapan.

Biasanya, suatu masalah dilaporkan, maka master scrum kami menugaskannya kepada pengembang, pengembang memperbaikinya (mudah-mudahan) dan kemudian meneruskannya ke penguji (ya, itu berhasil!). Tapi kemudian itu tidak lagi ditugaskan kepada saya, dan saya sulit menemukan masalah lama, yang saya ingat samar-samar.

Saya pikir, mungkin mungkin untuk melihat riwayat masalah yang ditugaskan, mungkin ada cara untuk membentuk pencarian / filter lanjutan, yang menemukan semua masalah, yang pada suatu waktu telah ditugaskan kepada saya.

Adakah yang melakukan ini?


juga, permintaan ini dapat membantu
Alex.K.

Jawaban:


281

Sementara itu, hal ini dimungkinkan melalui operator 'WAS' JIRA Query Language (JQL) , yang telah diperkenalkan di JIRA 4.3 dan diperluas di JIRA 4.4 untuk mencakup penerima penugasan dan wartawan juga, misalnya:

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

6
Tampaknya jawaban ini diberikan secara signifikan setelah pertanyaan diajukan, tetapi seharusnya jawaban tersebut diterima dengan versi Jira yang lebih baru (4.3 dirilis pada Maret 2011).
Jared

Apakah waskata kunci juga mengembalikan hasil jika pengguna adalah penerima / pelapor saat ini? (dan mengatakan masalah ini sebelumnya tidak memiliki penerima hak, atau mereka yang pertama ditugaskan untuk masalah itu)
nmz787

dan bagaimana dengan pemesanan saat terakhir kali saya mengerjakannya?
sashok_bg

1
Apakah sintaks berubah? Saya hanya menemukannya melaluiassignee in ("johnsmith")
Thorsten Niehues

1
@ nmz787 Saya menguji bahwa waskata kunci mencakup masalah yang saat ini ditugaskan.
Bernard Vander Beken

33

Permintaan tujuan umum untuk 'pengguna saat ini' mana saja:

assignee was currentUser()

Filter ini dapat dengan mudah dibagikan & siapa pun dapat menaruhnya di dashboard mereka, dll dan itu akan memberikan hasil yang spesifik untuk mereka .. Namun tidak didukung pada semua versi JIRA lama.

Ini adalah yang paling diminta fitur saya Jira pernah .


24

Lihat plugin JIRA Toolkit - bidang khusus peserta

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

Bidang ini memungkinkan Anda untuk dengan mudah melacak masalah yang telah Anda "ikuti". Ini didefinisikan sebagai masalah apa pun yang telah Anda komentari, ungkapkan atau yang ditugaskan saat ini. Lihat juga plugin [JIRA Extended Participants].



18

Memperbarui

Ini berfungsi tanpa plugin:

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

Jawaban asli

Kueri ini berhasil untuk saya:

Participants = currentUser()

1
Saya mencobanya tetapi mendapat pesan "Field 'Partisipan' tidak ada atau Anda tidak memiliki izin untuk melihatnya." Itu dengan Jira v6.0.6 # 6105-sha1: 9713ad1.
Craig McQueen

@CraigMcQueen, saya bukan guru Jira, tapi saya pikir Anda perlu menginstal JIRA Toolkit Plugin
warvariuc

7

coba "penerima hak adalah nama pengguna". itu akan membuat semua tiket ditetapkan untuk pengguna sebelumnya.


5

Anda dapat menemukan masalah dengan entri worklog langsung di database:

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

Saya setuju ini harus diterapkan di UI sekalipun.


Sebagai seorang pengembang, saya tidak memiliki akses langsung ke db unfortunaltely. Apakah mungkin melakukan ini melalui pencarian masalah lanjutan dengan cara tertentu?
erikric

Seperti yang saya katakan di komentar saya, pencarian di worklog belum didukung oleh Jira. Silakan pilih di sini jira.atlassian.com/browse/JRA-12312
Hugo Palma

Apakah ini jawaban terbaik untuk Jira <4.3? Kami terjebak dengan versi lama karena persyaratan tertentu.
k-den


3

wastidak didukung ke bidang penerima hak ketika saya mencoba baru-baru ini. Anda harus menggunakan CHANGED, FROM, TOkata kunci untuk memfilter.

Saya menggunakan sesuatu seperti ini:

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

2

Jadi ada 3 skenario: 1 - Saya mengubahnya dalam beberapa cara - penerima hak diubah oleh [UserName], 2 - Saya mengubah status (menutupnya, apa pun) - ATAU status diubah oleh [UserName], 3 - Saya masih memilikinya - ATAU penerima tugas = [UserName]

Jadi seluruh permintaan (dengan asumsi bahwa pernyataan yang diubah diizinkan adalah:

penerima yang diubah oleh [UserName] ATAU status diubah oleh [UserName] ATAU assignee = [UserName]


0

Saya pikir pendekatan yang paling masuk akal adalah mencari sejarah masalah. Satu-satunya hal, yang tidak dicatat di sana, adalah siapa yang mengakses masalah (hanya menonton, tanpa mengubah apa pun).

Tetapi Anda tidak dapat mencari riwayat tiket tanpa akses basis data (sejauh yang saya tahu, mohon perbaiki jika saya salah)

Jadi, untuk mencari semua masalah dengan "someUserName" di issuehistory, Anda harus bergabung dengan tabel changegroup (dan mungkin tabel changeitem dari sana).

Contoh :

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 ==> ini adalah nomor / id dari entri di tab (terbitan -) "History"

Artinya : jika pernah ada perubahan oleh pengguna "someUserName" itu dicatat dalam Sejarah dan akan didaftarkan dengan pertanyaan ini

Contoh berikut hanya akan mencantumkan setiap masalah yang menyimpang, di mana "nama pengguna" saya ditemukan di Riwayat setelah tanggal 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';

Saya menjelaskan hubungan yang diperlukan di sini: masukkan deskripsi gambar di sini


0

Dari menu pilih Tempo-> Laporan

Pilih rentang tanggal

dan Anda akan melihat laporan.


-1

Saya mencoba query SQL di bawah ini dan memberikan data dari semua masalah dan semua penerima yang pernah ditugaskan untuk suatu masalah. Setiap perubahan penerima hak untuk masalah apa pun ditangkap oleh kueri di bawah ini:

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'

Siapa pun yang mencari permintaan akan menemukan hal ini berguna :)

-Neha 'D' Pal


Anda tidak ingin menjelaskan setiap nama kolom, setiap nama tabel, apa fungsinya? Kamu tidak?
Aksen P
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.