v1 | v2 | |
---|---|---|
1 | = レポート = |
|
1 | = レポート = #TracReports | |
2 | 2 | [[TracGuideToc]] |
3 | 3 | |
… | … | |
15 | 15 | trac.ticket.report.* = disabled |
16 | 16 | }}} |
17 | ''これによって、ナビゲーションバーの "チケットを見る" でのデフォルトのハンドラがクエリモジュールになります。もし可能ならば、この設定を有効にして、レポート機能がなくなることによって生じる不都合を報告してください。'' | |
17 | ''これによって、ナビゲーションバーの "チケットを見る" (英語版では "View Tickets") でのデフォルトのハンドラがクエリモジュールになります。もし可能ならば、この設定を有効にして、レポート機能がなくなることによって生じる不都合を報告してください。'' | |
18 | ||
19 | '''''ほとんど確実に httpd を再起動する必要があるでしょう。''''' | |
18 | 20 | |
19 | 21 | レポートは以下の基本的なパーツから構成されます: |
… | … | |
24 | 26 | * '''フッタ (Footer)''' -- レポート本体を異なる形式でダウンロードするためのリンク。 |
25 | 27 | |
26 | == ソートの並び順変更 == |
|
28 | == ソートの並び順変更 == #ChangingSortOrder | |
27 | 29 | 単純なレポート (特にグループ化されていないもの) では、カラムのヘッダをクリックすれば、そのカラムでソートすることが出来ます。 |
28 | 30 | |
29 | 31 | カラムのヘッダがハイパーリンク (赤) になっていれば、クリックすることでそのカラムでのソートができます。並び順を逆にするには、もう一度クリックします。 |
30 | 32 | |
31 | ||
32 | == ダウンロードできるフォーマット == | |
33 | == レポートの番号を変更する == #ChangingReportNumbering | |
34 | レポートの ID を変更する必要がある場合があるかもしれませんが、おそらくレポート自体を編集する方がベターです。というのも Trac のデータベースを変更する必要があるからです。 ''report'' 表は以下のようなスキーマとなっています (0.10 相当): | |
35 | * id integer PRIMARY KEY | |
36 | * author text | |
37 | * title text | |
38 | * query text | |
39 | * description text | |
40 | ID を変更すると ''レポート一覧 (Available Reports)'' での表示順と番号、レポートのパーマリンクが変更されます。以下のような SQL を実行すると ID が変更されます: | |
41 | {{{ | |
42 | update report set id=5 where id=3; | |
43 | }}} | |
44 | メンテナンス結果、データベースの一貫性を保つ必要があることに留意してください (例えば ID はユニークでなければなりませんし、 SQLite などデータベースの上限値を超えることはできません)。 | |
45 | ||
46 | == チケットをナビゲート == #NavigatingTickets | |
47 | レポートクエリ結果の 1 チケットをクリックするとそのチケットが表示されるでしょう。表示されたチケットのメインメニューバーのすぐ下にある ''次のチケット'' (英語版では ''Next Ticket'') または ''前のチケット'' (英語版では ''Previous Ticket'') リンクをクリックすることによって他のチケットに移動するか、''レポートに戻る'' (英語版では ''Back to Report'') リンクをクリックしてレポートページに戻ることができます。 | |
48 | ||
49 | あなたは安全にチケットを編集することができます。またチケットの編集結果を保存した後で、 次のチケット/前のチケット/レポートに戻る (英語版では Next/Previous/Back to Report) のリンクを使用して結果を行き来することが可能です。しかし、あなたがチケットへの操作を終えてレポートに戻るときに、どのチケットが変更されたかのヒントは表示されません。この動作はカスタムクエリの動作とは異なります。 (カスタムクエリについては TracQuery#NavigatingTickets を参照して下さい) 。 ''(0.11 以降 )'' | |
50 | ||
51 | == ダウンロードできるフォーマット == #AlternativeDownloadFormats | |
33 | 52 | 通常表示される HTML でのビューの加え、レポートはいろいろな形式で使用することができます。 |
34 | 53 | レポートページの一番下に、利用可能なデータ形式の一覧があります。望む形式のリンクをクリックすれば、 |
35 | 54 | その形式でのレポートをダウンロードすることができます。 |
36 | 55 | |
37 | === カンマ区切りテキスト - CSV (Comma Separated Values) === |
|
56 | === カンマ区切りテキスト - CSV (Comma Separated Values) === #Comma-delimited-CSVCommaSeparatedValues | |
38 | 57 | 1 レコードを 1 行として、各カラムをカンマ (',') で区切ったプレーンテキストとしてダウンロードできます。 |
39 | 58 | '''Note:''' CSV 形式を保つため、各カラムのデータに改行文字やカンマがある場合、その位置で切り取られます。 |
40 | 59 | |
41 | === タブ区切り === |
|
60 | === タブ区切り === #Tab-delimited | |
42 | 61 | CSV と似ていますが、水平タブ文字 (\t) で区切られる点が違います。 |
43 | 62 | |
44 | === RSS - XML |
|
63 | === RSS - XML コンテンツ配信 === #RSS-XMLContentSyndication | |
45 | 64 | 全てのレポートは、 XML/RSS 2.0 での配信が可能です。 RSS フィードを購読するにはページ下部にある、オレンジ色の 'XML' アイコンをクリックしてください。 Trac での RSS 対応についての一般的な情報は、 TracRss に記述しています。 |
46 | 65 | |
47 | 66 | ---- |
48 | 67 | |
49 | == カスタムレポートを作成する == |
|
68 | == カスタムレポートを作成する == #CreatingCustomReports | |
50 | 69 | |
51 | 70 | ''カスタムレポートを作成するためには、 SQL を楽に書ける程度の知識が必要です。'' |
… | … | |
58 | 77 | SELECT 文となります。 |
59 | 78 | |
60 | == Ticket 表のカラム == |
|
79 | == Ticket 表のカラム == #Ticketcolumns | |
61 | 80 | ''ticket'' 表は、以下のカラムを持ちます: |
62 | 81 | * id -- チケットID |
82 | * type -- チケット分類 | |
63 | 83 | * time -- 登録日時 |
64 | 84 | * changetime -- 最終更新日時 |
… | … | |
75 | 95 | * summary -- チケットの概要 |
76 | 96 | * description -- チケットについての完全な説明 |
97 | * keywords -- キーワード | |
77 | 98 | |
78 | 99 | 各カラムに対応する属性の詳細な説明は、 TracTickets に記述しています。 |
… | … | |
92 | 113 | |
93 | 114 | |
94 | == 上級トピック: 動的変数の使用 == |
|
115 | == 上級トピック: 動的変数の使用 == #AdvancedReports:DynamicVariables | |
95 | 116 | レポートに汎用性を持たせる手段として、 ''動的変数'' をレポート SQL で使用する方法があります。 |
96 | 117 | 簡単に言うと、動的変数とは、クエリを実行する前に置き換えられる ''特別な'' 文字列のことです。 |
97 | 118 | |
98 | === クエリで動的変数を使う方法 === |
|
119 | === クエリで動的変数を使う方法 === #UsingVariablesinaQuery | |
99 | 120 | 動的変数を使うためのシンタックスは単純です。 '$' に続いて、大文字で変数名となる語を挿入してください。 |
100 | 121 | |
101 | 122 | 例: |
102 | 123 | {{{ |
103 | SELECT id AS ticket,summary FROM ticket WHERE priority= |
|
124 | SELECT id AS ticket,summary FROM ticket WHERE priority=$PRIORITY | |
104 | 125 | }}} |
105 | 126 | |
… | … | |
119 | 140 | |
120 | 141 | |
121 | === 特殊な定数 === |
|
142 | === 特殊な定数 === #SpecialConstantVariables | |
122 | 143 | 実用的なレポートのために、定義済みの動的変数が用意されています。これらは URL に値を設定しなくても、自動的に値が割り当てられます。 |
123 | 144 | |
… | … | |
126 | 147 | 例 (''私が担当になっているチケット一覧''): |
127 | 148 | {{{ |
128 | SELECT id AS ticket,summary FROM ticket WHERE owner= |
|
129 | }}} |
|
130 | ||
131 | ||
132 | ---- |
|
133 | ||
134 | ||
135 | == 上級トピック: 表示形式のカスタマイズ == |
|
149 | SELECT id AS ticket,summary FROM ticket WHERE owner=$USER | |
150 | }}} | |
151 | ||
152 | ||
153 | ---- | |
154 | ||
155 | ||
156 | == 上級トピック: 表示形式のカスタマイズ == #AdvancedReports:CustomFormatting | |
136 | 157 | Trac には、レイアウトのカスタマイズや、グルーピング、ユーザ定義の CSS 利用などによる |
137 | 158 | もっと複雑なレポートの作成も可能です。このようなレポートを作成するには、 |
138 | 159 | Trac のレポートエンジンが出力を制御するためのステートメントを含む、特別な SQL を使用します。 |
139 | 160 | |
140 | == 特別なカラム == |
|
161 | == 特別なカラム == #SpecialColumns | |
141 | 162 | レポートを整形するため、 TracReports はクエリの結果から '特定の' カラム名を |
142 | 163 | 探します。このような '特定の' 名前で、最終的なレポートのレイアウトやスタイルが |
143 | 164 | 処理され、変更されます。 |
144 | 165 | |
145 | === 自動的に整形されるカラム名 === |
|
146 | * '''ticket''' -- チケットの ID が入っているカラムで使用します。該当する ID のカラムにハイパーリンクされます。 |
|
147 | * '''created, modified, date, time''' -- 日付や時刻に整形されます。 |
|
148 | ||
149 | * '''description''' -- チケットの説明が入っているカラムで使用します。 Wiki エンジンで処理されます。 |
|
166 | === 自動的に整形されるカラム名 === #Automaticallyformattedcolumns | |
167 | * '''ticket''' -- チケットの ID が入っているカラムで使用します。該当する ID のカラムにハイパーリンクされます。 (訳注: `summary` というカラム名もチケットにハイパーリンクされます。日本語版では `概要` でもリンクします。) | |
168 | * '''created, modified, date, time''' -- 日付や時刻に整形されます。 (訳注: `datetime` という列名にすると日時で整形されます。日本語版では `時刻` で終わるカラムは `time` に、 `日付` で終わるカラムは `date` に、 `日時` で終わるカラムは `datetime` に、それぞれ整形されます。) | |
169 | ||
170 | * '''description''' -- チケットの説明が入っているカラムで使用します。 Wiki エンジンで処理されます。 (訳注: 日本語版では `説明` でも整形されます。) | |
150 | 171 | |
151 | 172 | '''例:''' |
… | … | |
154 | 175 | }}} |
155 | 176 | |
156 | === 整形されるカラムのカスタマイズ === | |
177 | '''訳注''': Trac-0.11.1.ja1 以降のバージョンで作成した Environment では、デフォルトのレポートに日本語での整形ルールが適用されています。このような Environment を本家版 Trac で使用したい場合は各レポートの SQL を編集し、上記の日本語のカラム別名を英語に変更してください。 | |
178 | ||
179 | === 整形されるカラムのカスタマイズ === #Customformattingcolumns | |
157 | 180 | カラム名の前後に 2 つのアンダースコアがついている場合 (例: '''`__color__`''') は、 |
158 | 181 | ''整形用のヒント'' として扱われ、レコードの整形が行われます。 |
… | … | |
160 | 183 | * '''`__group__`''' -- 指定されたカラムで、表示がグループ化されます。各グループは、それぞれセクションヘッダとクエリ結果の表を持ちます。 |
161 | 184 | * '''`__color__`''' -- 1 から 5 の数値である必要があります。値によって、あらかじめ定義された色付けが行われます。一般的な使用法は、優先度別の色付けです。 |
185 | {{{ | |
186 | #!html | |
187 | <div style="margin-left:7.5em">デフォルトの色付け: | |
188 | <span style="border: none; color: #333; background: transparent; font-size: 85%; background: #fdc; border-color: #e88; color: #a22">Color 1</span> | |
189 | <span style="border: none; color: #333; background: transparent; font-size: 85%; background: #ffb; border-color: #eea; color: #880">Color 2</span> | |
190 | <span style="border: none; color: #333; background: transparent; font-size: 85%; background: #fbfbfb; border-color: #ddd; color: #444">Color 3</span> | |
191 | <span style="border: none; color: #333; background: transparent; font-size: 85%; background: #e7ffff; border-color: #cee; color: #099">Color 4</span> | |
192 | <span style="border: none; color: #333; background: transparent; font-size: 85%; background: #e7eeff; border-color: #cde; color: #469">Color 5</span> | |
193 | </div> | |
194 | }}} | |
162 | 195 | * '''`__style__`''' -- CSS 形式でレコードを整形できます。 |
163 | 196 | |
… | … | |
177 | 210 | 取り出しています。 |
178 | 211 | |
179 | === 行単位のレイアウト変更 === |
|
212 | === 行単位のレイアウト変更 === #Changinglayoutofreportrows | |
180 | 213 | デフォルトでは、全てのカラムで1行を使い、上記の指定がされていれば、 |
181 | 214 | フォーマットされた形式で HTML に表示されます。それだけでなく、 |
… | … | |
207 | 240 | }}} |
208 | 241 | |
209 | === カスタムフィールドをレポートで使用する === |
|
210 | ||
211 | チケットにカスタムフィールドを追加した場合(バージョン 0.8 |
|
242 | === カスタムフィールドをレポートで使用する === #Reportingoncustomfields | |
243 | ||
244 | チケットにカスタムフィールドを追加した場合(バージョン 0.8 以降の機能。 TracTicketsCustomFields 参照)、カスタムフィールドを含む SQL クエリを書くことができます。 ticket_custom テーブルを join をする必要がありますが、これは取り立てて簡単というわけではありません。 | |
212 | 245 | |
213 | 246 | 追加のフィールドを trac.ini に宣言する ''前に'' 、チケットがデータベースに存在する場合、 ticket_custom テーブルには関連するデータを持たないことになります。これに起因する問題を回避するためには SQL の "LEFT OUTER JOIN" 節を使用してください。 |
214 | 247 | |
215 | ---- | |
216 | See also: TracTickets, TracQuery, TracGuide | |
248 | '''Note レポートの追加、編集をするボタンを表示するためには権限を設定する必要があります。''' | |
249 | ||
250 | ---- | |
251 | See also: TracTickets, TracQuery, TracGuide, [http://www.sqlite.org/lang_expr.html Query Language Understood by SQLite] |