作業項目クエリの例
クエリ エディターを使用して作業項目のクエリを作成する方法を理解するため、次の例について考えてください。
@Me を使用した、自分に割り当てられた項目の検索
@Today を使用した、変更日によるフィルター処理
[グループ内] を使用した、グループまたはカテゴリ内のメンバーシップによるフィルター処理
キーワードまたは語句によるフィルター処理
未定義のフィールド値によるフィルター処理
再アクティブ化によるフィルター処理
別のチーム プロジェクトによるフィルター処理
リンクされた依存ファイルによるフィルター処理
@Me を使用した、自分に割り当てられた項目の検索
現在の割り当てを検索するには = を使用します。 過去の割り当てによって項目を表示するには、Was Ever を使用します。
@Today を使用した、変更日によるフィルター処理
作業項目フォームには、多くの日付が自動的に追加されます。 特定の日付または特定の期間中に変更された作業項目を検索できます。 またクエリの範囲を限定すると、指定した日付範囲に当てはまる結果だけが返されるので、パフォーマンスもよくなります。
変更された日付、または具体的な時間によって、作業項目をフィルター処理することができます。 クエリの範囲を限定すると、指定した日付範囲に当てはまる結果だけが返されるので、パフォーマンスも良くなります。
今日または最近変更された項目を一覧表示する
最近変更された項目をフィルター処理するには、次のいずれかの句を使用します。
Or
特定の日に変更された項目を一覧表示する
コンピューターのオペレーティング システムで扱うことのできるファイル形式で日付を入力します。
特定の期間中に変更された項目を一覧表示する
日付の範囲内に変更された項目を一覧表示するには、2 つの句をグループ化します。
[グループ内] を使用した、グループまたはカテゴリ内のメンバーシップによるフィルター処理
TFS グループに属するユーザーに割り当てられた項目をフィルター処理するには、[グループ内] 演算子を使用します。
[グループ内] 演算子または [グループ外] 演算子を使用すると、グループのメンバーである複数の値、またはグループのメンバーではない複数の値に基づいて、クエリをフィルター処理できます。 グループの例には、TFS グループや作業項目のカテゴリがあります。
カテゴリによるフィルター処理
作業項目を属しているカテゴリに基づいてフィルター処理するには、[グループ内] 演算子を使用します。 たとえば、次のフィルター条件では、現在のチーム プロジェクトにあり、そのチーム メンバーに割り当てられていて、Bug Category に属すると定義されているすべての作業項目が返されます。
キーワードまたは語句によるフィルター処理
[次の値を含む] と [語を含む] を使用すると、入力した単語や語句と部分一致する項目または完全一致する項目の一覧を表示できます。
単語や語句に対する完全一致または部分一致を検索するには、[次の値を含む] または [次の値を含まない] を選択します。 完全な句を検索する場合や、ワイルドカード文字 ([*]) を使用する場合は、[語を含む] または [語を含まない] を選択します。 これらの演算子では全文検索インデックスが使用されます。
Team Foundation では、データ型が PlainText と HTML のすべての長いテキストのフィールド、および [タイトル] フィールドに対し、フルテキスト検索用のインデックスを自動的に設定します。 制約については、フルテキスト検索の箇所でサーバーと照合順序の要件に関する説明を参照してください。
未定義のフィールド値によるフィルター処理
NOT 演算子 (<>) を使用して、未定義のフィールド値がある作業項目を見つけることができます。 たとえば、次の例では、[アクティビティ] フィールドが空白になっている [タスク] タイプのすべての作業項目が検出されます。
再アクティブ化によるフィルター処理
終了されてから再アクティブ化された作業項目を見つけるには、示されているようなクエリを作成できます。 [変更日] フィールドを指定することにより、今日、昨日、または先週に行われた再アクティブ化に焦点を絞ることができます。
また、[アクティブ化した人] フィールドと [アクティブ化された日] フィールドも使用できます。
別のチーム プロジェクトによるフィルター処理
2 つの異なるチーム プロジェクトで定義されたフィルター項目に、この句を追加します。
プロジェクト名を、クライアント コンピューターに定義されている地域設定に対応するリスト区切り記号 (たとえば、コンマ) で区切ります。
リンクされた依存ファイルによるフィルター処理
次の例では、他のチームおよび他のチーム プロジェクトが管理する作業に依存する項目を返す依存リンク クエリを示します。 このクエリを使用すると、削除、終了、完了のいずれの状態でもないアクティブなプロダクト バックログ項目またはバグのいずれかにリンクするすべての依存する作業項目が表示されます。 [Phone Save\Phone Customers(電話セーバー\電話顧客)] 以外の製品区分の下にある依存する作業項目だけが返されます。
このクエリのしくみ:
[チーム プロジェクト = @Project\] 句を削除すると、コレクション内で所属するチーム プロジェクトと関係なく、フィルター条件に一致するすべての依存するリンクされた作業項目が一覧表示されます。
句を 2 個ずつグループ化すると、最初の句のグループからはバックログ内または進行中のすべての [プロダクト バックログ項目] が返され、2 番目の句のグループからは、バックログ内または進行中のすべての [バグ] が返されます。
2 番目の句の先頭に [または] 演算子を使用して 2 つの句をグループ化すると、2 つのフィルター条件のいずれかに一致する作業項目が返されます。
[指定されたリンクが定義されている項目だけを戻す] を選択すると、依存関係がある最上位の作業項目のみが返されます。
[すべての種類のリンクを戻す] を選択すると、リンクされた作業項目のフィルター条件に一致するすべてのリンクされた作業項目が返され、この場合、[Phone Save\Phone Customers (電話セーバー\電話顧客)] 区分パスになく、完了または削除されていないすべての作業項目が返されます。
次の図では、返されたクエリの結果を示します。
Q & A
Q: [履歴] フィールドに基づいたクエリを実行できますか。
A: できます。 [フィールド] で、[演算子] フィールドの [履歴] を選択し、[語を含む] または [語を含まない] を選択します。
検索する単語としてフル テキストを入力します。 [履歴] フィールドがフルテキスト検索用にインデックス付けされます。 語の一部だけを入力した場合、完全な単語を含む作業項目は返されません。 たとえば、[履歴] フィールドに「reproducible behavior」という語句が含まれている場合に「repro」を検索しても、作業項目は検索されません。 ただし、「reproducible」という完全な単語を指定した場合は、作業項目が検索されます。 「repro*」のように、ワイルドカード文字 (*) を指定して文字列を検索することもできます。
検索処理の負荷を軽減するため、一般的すぎる単語は無視されます。 ストップ ワードとして定義されている単語も、検索エンジンによって無視されます。 詳細については、Microsoft Web サイトの「フルテキスト検索に使用するストップワードとストップリストの構成と管理」のページを参照してください。