= チケットクエリ = [[TracGuideToc]] [wiki:TracReports レポート] に加えて、 Trac は ''カスタムチケットクエリ'' をサポートしています。 ''カスタムチケットクエリ'' は、ある一定の基準を満たすチケットのリストを表示するのに使用されます。 カスタムクエリを設定・実行するために、ナビゲーションバーの ''チケットを見る'' モジュールに切り替え、 ''カスタムクエリ'' のリンクを選択します。 == フィルタ == 最初にクエリのページを開くと、デフォルトのフィルタとして、現在未解決のチケットの一覧が表示されます。ログインしているならば、自分が担当者となっていて未解決のチケットが表示されます。現在のフィルタは検索条件の右側にある "-" (マイナス) のラベルのボタンをクリックすることにより削除することができます。新しいフィルタをフィルタボックスの右下にあるプルダウンリストから追加することができます。テキストボックスやオプションのプルダウンメニューのフィルタを ''or'' 条件として、いくつでも追加することができます。 フィルタボックスの下のフィールドを使用することによって、結果をフィールドごとにグループ化したり、各チケットの完全な概要を表示することができます。 一度フィルタを編集したら、 ''更新'' ボタンで結果を更新することができます。 == チケットナビゲーション == クエリの結果の一つをクリックすると、そのチケットが表示されます。メインメニューバーの ''次のチケット'' または ''前のチケット'' というリンクをクリックすることによって、クエリの結果を行き来することができます。 ''クエリに戻る'' というリンクをクリックすると、クエリのページに戻ります。 あなたは安全にチケットの編集をすることができ、編集を保存した後に ''次のチケット/前のチケット/クエリに戻る'' の各リンクを使用して、結果を行き来することができます。クエリに戻ったとき、編集済みのチケットはイタリックのテキストで表示されます。編集したチケットがクエリにマッチしなくなった場合、テキストはグレイで表示されます。 == クエリを保存する == Trac は今のところ、名前つきのクエリを保存すること、それにどういうわけか、ナビゲーションリストの中で利用できるようになっていません。以下に示すように Wiki のコンテンツとしてクエリへの参照を保存できます。 === TracLinks を使用する === クエリを保存しておくと、後から保存したクエリを再度実行できます。保存は Wiki ページにクエリへのリンクを作成することで行います。 {{{ [query:status=new|assigned|reopened&version=0.8 0.8 での未解決チケット] }}} 表示内容: [query:status=new|assigned|reopened&version=0.8 での未解決チケット] これは、検索内容を特定するとても単純なクエリ言語として使用されています。([wiki:TracQuery#クエリ言語 クエリ言語] 参照) あるいは、クエリの文字列をコピーし、 Wiki リンクに `?` 文字に続続けて、貼り付けることができます: {{{ [query:?status=new&status=assigned&status=reopened&group=owner 担当者別着手済みチケット] }}} 表示内容: [query:?status=new&status=assigned&status=reopened&group=owner 担当者別着手済みチケット] この方法の利点は、グループ化やソート順序も指定できることです。これは最初のシンタックスは使用できません。 === `[[TicketQuery]]` マクロを使用する === `[[TicketQuery]]` マクロ はある基準にマッチするチケットの一覧を WikiFormatting が使用できるいずれの場所でも表示します。 例: {{{ [[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate)]] }}} 表示内容: [[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate)]] [wiki:TracQuery#TracLinksを使用する query: Wiki リンク] のように、このマクロのパラメータは [wiki:TracQuery#クエリ言語 クエリ言語] に書かれているような単純なルール文字列であることが求められています。 チケットのサマリを表示しないよりコンパクトな表示も利用可能です: {{{ [[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate, compact)]] }}} 表示内容: [[TicketQuery(version=0.9b1|0.9b2&resolution=duplicate, compact)]] === クエリ言語 === `query:` 文字列、 TracLinks そして `[[TicketQuery]]` マクロはいずれもクエリのフィルタを特定するために 小さな "クエリ言語" を使用します。基本的に、フィルタは アンパサンド (`&`) で区切られます。それぞれのフィルタはチケットの各フィールドの名前、オペレータ、1つもしくは複数の値で構成されています。複数の値はパイプ (`|`) で区切り、フィルタがいずれの値にもマッチすることを意味しています。 利用可能なオペレータ: || '''=''' || フィールドの内容はいずれかの値と完全に一致する。 || || '''~=''' || フィールドの内容は1つ以上の値と一致する || || '''!^=''' || フィールドの内容が値の一つで始まる || || '''$=''' || フィールドの内容が値の一つで終了する || これらのオペレータは否定の意味があります: || '''!=''' || フィールドの内容がどれも値にも一致しない || || '''!~=''' || フィールドの内容がいずれの値も含んでいない || || '''!!^=''' || フィールドの内容がいずれの値でも始まらない || || '''!$=''' || フィールドの内容がいずれの値でも終わらない || ---- See also: TracTickets, TracReports, TracGuide