アプリケーション クエリの作成

アプリケーションの設定メニューの[クエリ]フィールドでワーク アイテムをフィルタする条件を制御することができます。SQL 形式の構文を使用して複数の条件をクエリに追加することで、特定の結果を生成することができます。たとえば、プロジェクト X のユーザ ストーリーのうち、A のタグが付いていて、ユーザ Z が所有し、イテレーション Y で完了したユーザ ストーリーをすべて検索するクエリを作成することができます。

アプリケーション クエリの作成には、以下が含まれています。

可用性

[クエリ]フィールドは、以下のアプリケーションで使用可能です。

注: マイ ディフェクト、マイ タスク、およびマイ テスト ケースのアプリケーションには、カスタム リスト アプリケーションの一意なバージョンにするため、[クエリ]フィールドに事前入力されているデータがあります。これらの既存のクエリは、編集または置き換えることができます。

一般的なルール

カスタム クエリを作成するときは、以下に注意してください。

  • クエリには、正しいフィールド名が必要です。詳細については、「Web サービス API ドキュメント」を参照してください。
  • 大文字小文字の区別があるフィールド名と Owner.UserName および State などの値を使用します。
  • ブール フィールドの値は、True または False の形式である必要があります。
  • カスタム フィールドのクエリを実行するときは、WSAPI ドキュメントで示されているように、フィールド名の前に「c_」を含めます。たとえば、(c_MyCustomField = "MyCustomValue") などです。
  • フィールド名、演算子、値の間には、スペースを使用します。たとえば、(Project.Name="Acme") ではなく、(Project.Name = "Acme") とします。
  • フィールド名には、スペースは使用しないでください。たとえば、plan estimate は PlanEstimate とする必要があります。
  • 演算子の左側にあるフィールド名と演算子の右側にある値や日付変数を含むクエリのみを作成することができます。たとえば、(CreationDate AcceptedDate) というクエリは、CreationDate と AcceptedDate は両方とも、「Web サービス API ドキュメント」にリストされているクエリ可能なフィールドであるため無効です。
  • カスタム フィールドの名前については、「Web サービス API ドキュメント」のオブジェクト モデルのリストを参照してください。

演算子

チェーン式は、以下のように、演算子とリンクすることはできません。

((Name contains "tito") AND (Notes contains "randy") AND (Description contains "germaine")

この式の形式は以下のようにする必要があります (最初の 2 つの式の前後に追加のかっこが必要です)。

(((Name contains "tito") AND (Notes contains "randy")) AND (Description contains "germaine"))

複数の条件

AND と複数の OR を正しく使用する方法の例を以下に示します。

[計画見積もり]フィールドに、次のいずれかの値を持つ特定のリリース内のワーク アイテムを見つけると仮定します。エントリがありません、1、2、4、8、16。

以下のグループ化は、正しい結果を返しません。

Release.Name = "Release One" AND (PlanEstimate = "null" OR PlanEstimate = "1" OR PlanEstimate = "2" OR PlanEstimate = "4")

以下のバージョンは、適切なかっこルールを使用するように修正されていますが、すべての結果が返されません。

(((((Release.Name = "Release One") OR (PlanEstimate = "1")) OR (PlanEstimate = "2")) OR (PlanEstimate = "4")) AND (PlanEstimate = "null"))

以下のようにクエリを作成することで、すべての OR 条件が初めて満たされて、すべてのデータを返します。

((((((PlanEstimate = "null") OR (PlanEstimate = "1")) OR (PlanEstimate = "4")) OR (PlanEstimate = "8")) OR (PlanEstimate = "16" )) AND (Release.Name = "Release One"))

かっこのルール

クエリを作成するとき、かっこのルールが複雑になる場合があります。標準的な 2 つの条件のクエリは、以下のとおりです。

((Project.Name = "Blue Team") AND (Owner.UserName = "[email protected]"))

必要な数の条件を追加することができます。かっこのルールは、想像とは異なる可能性があります。条件を追加するにはそれぞれ、先頭に新たな ( を付ける必要があります。そして、最初の条件より後の各条件は )) で終了する必要があります。以下に例を挙げます。

((((Project.Name = "Blue Team") AND (Owner.UserName = "[email protected]")) AND (Iteration.Name = "October Phase One")) AND (Tags.Name = "Critical"))

日付変数

日付フィールドに対してクエリを作成するとき(イテレーションの終了など)には、時間の経過と共にアプリケーションを自動的に更新する変数を使用することができます。以下のとおり、多くの変数を使用することができます。

変数 意味 タイムゾーンの関連付け 長さ
今日 現在の日付 ユーザ アカウント 1 日
昨日 今日の前日 ワークスペース 1 日
明日 今日の翌日 ワークスペース 1 日
前週 今日の 7 日前 ワークスペース 今日の終わりまで
翌週 今日の 7 日後 ワークスペース 今日の始めから
前月 今日の 30 日前 ワークスペース 今日の終わりまで
翌月 今日の 30 日後 ワークスペース 今日の始めから...まで
前の四半期 今日の 90 日前 ワークスペース 今日の終わりまで
次の四半期 今日の 90 日後 ワークスペース 今日の始めから...まで
前年 今日の 365 日前 ワークスペース 今日の終わりまで
翌年 今日の 365 日後 ワークスペース 今日の始めから...まで

ご使用のユーザ アカウントに関連付けられたタイムゾーンで、今日のいずれかの時間に修正されたイテレーションをフィルタする場合:

(LastUpdateDate = "today")

今日承認されたストーリを除外して、昨日承認されたストーリーをフィルタをする場合:

(AcceptedDate = "yesterday")

過去 1 週間に変更されたイテレーションのみを含める場合:

(LastUpdateDate >= "lastweek")

次の 30 日間に開発が開始される予定のポートフォリオ アイテムを表示する場合:

((PlannedStartDate >= "today") AND (PlannedStartDate = "nextmonth"))

ユーザー名の変数を使用して、所有するアイテムのクエリに役立てることもできます。

((Project.Name = "Orange Team") AND (Owner = "currentuser"))

日付式

今日の日付の前後の特定の日数を使用する日付範囲をクエリする、単純な日付の式を作成することもできます。すべての日付の式は、今日と比較して、「today + 」または「today - 」と記述されます。日付の式は日付範囲であるため、1 つの日付とは異なる動作をすることに注意してください。実際の動作については、以下の表を参照してください。

今日を 2014 年 11 月 25 日と仮定します。

意味

(AcceptedDate = "today-7")

2014 年 11 月 25 日とそれ以前の日付を取得します。

(AcceptedDate "today-7")

2014 年 11 月 18 日以前の日付を取得します。

(AcceptedDate >= “today-7”)

2014 年 11 月 18 日とそれ以降の日付を取得します。

(AcceptedDate > “today-7”)

2014 年 11 月 25 日より後の日付を取得します。

(AcceptedDate = “today-7”)

2014 年 11 月 18 日と 2014 年 11 月 25 日の日付とその期間の日付を含む日付を取得します。

(AcceptedDate != “today-7”)

2014 年 11 月 18 日と 2014 年 11 月 25 日の日付とその期間の日付を含まない日付を取得します。

過去 2 週間のいずれかの時間に修正されたイテレーションを表示する場合:

(LastUpdateDate = "today-14")

過去 2 週間で更新されていないイテレーションを表示する場合:

(LastUpdateDate  "today-14")

2 か月以上前に最後の変更が加えられたイテレーションを除外する場合:

(LastUpdateDate = "today-60")

次の 6 か月間に開発が開始される予定のポートフォリオ アイテムを表示する場合:

(PlannedStartDate = "today + 180")

リテラル日付

特定の日付と時刻を使用してクエリを実行するには、YYYY-MM-DDTHH:MM:SS.SSSZ 形式を使用します。

(AcceptedDate > "2014-01-01T23:59:59.000Z")

詳細

順序とは、返されるデータの順序を決定するソート文字列です。たとえば、desc と入力すると、降順でデータが表示されます。

日付変数は大文字と小文字を区別しません。「lastyear」、「NEXTMONTH」、「NextWeek」、「Today+60」と記述することができます。

スペースは日付の式ではオプションです。例えば、「today-30」および「today - 30」は等しく、「last month」と同じことを意味します。

「today-1」と「yesterday」(および「today+1」と「tomorrow」)は、正確には等しくありません。「today-1」が範囲として解釈されるときは、昨日の始めから今日の終わりになります。「yesterday」が範囲として解釈されるときは、昨日の始めから昨日の終わりまでのみになります。

「today+0」と「today」は、正確には等しくありません。「today」は、ご使用のユーザ アカウントに関連付けられたタイムゾーンに関連すると解釈されます。一方、「today+0」は、ご使用のワークスペースに関連付けられたタイムゾーンに関連すると解釈されます。

Null クエリ

ほとんどのクエリで、「null」を使用することで、空の属性フィールドを持つワーク アイテムを検索することができます。引用符を使用できますが、必須ではありません。

(PlanEstimate = null)
(Parent = "null")

ランク付けまたはドロップダウン フィールドに対してクエリを作成する場合は、引用符のセットを使用します。

(Priority = "")

特にワーク アイテムがカスタム フィールドより前に作成された場合は、カスタム ドロップダウン フィールドではいずれかのメソッドを使用することができます。すべての結果を確実にキャプチャするには、両方の構文のセットを含めます。

((c_CustomState = null) または (c_CustomState = ""))

サポートされていない名詞

サポートされていない名詞は、中括弧の置き換えをカスタム リスト内に付ける場合にのみ、使用することができます。これらはサポートされておらず、どのリビジョンでも存在しない場合があります。

  • {projectName}
  • {projectOid}
  • {user}

クエリの例

以下のクエリ例を参照し、この機能の使い方の参考にしてください。

フィードバック

ヘルプをお求めですか?CA Agile Central コミュニティは、セルフサービスとサポートのワンストップ ショップです。CA Agile Central サポートにフィードバックを送信したり、答を見つけたり、他のユーザとのコラボレーションには CA Agile Central コミュニティ にご参加ください。