次の方法で共有


サポートされている OData 関数と句

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

この記事では、Analytics が複数の OData 関数をサポートする方法について説明します。 サポートされていない関数も一覧表示されます。 OData (Open Data Protocol) は、REST API の構築と使用に関するベスト プラクティスを定義する ISO/IEC 承認済みの OASIS 標準です。 詳細については、 OData のドキュメントを参照してください。

Note

Analytics サービスは、すべての Azure DevOps Services で自動的に有効になり、運用環境でサポートされます。 Power BI の統合 Analytics サービスの OData フィード へのアクセスが一般公開されています。 お使いいただき、フィードバックをお寄せください。 使用可能なデータはバージョンによって異なります。 サポートされている最新バージョンが v2.0され、最新のプレビュー バージョンが v4.0-preview。 詳細については、 OData API のバージョン管理に関するページを参照してください。

Note

Analytics サービスは、Azure DevOps Server 2020 以降のすべての新しいプロジェクト コレクションに対して、運用環境で自動的にインストールされ、サポートされます。 Power BI の統合 Analytics サービスの OData フィード へのアクセスが一般公開されています。 お使いいただき、フィードバックをお寄せください。 Azure DevOps Server 2019 からアップグレードした場合は、アップグレード中に Analytics サービスをインストールできます。

使用可能なデータはバージョンによって異なります。 サポートされている最新バージョンが v2.0され、最新のプレビュー バージョンが v4.0-preview。 詳細については、 OData API のバージョン管理に関するページを参照してください。

Note

Analytics サービスは、Azure DevOps Server 2019 のプレビュー段階です。 プロジェクト コレクション 有効またはインストール できます。 Power BI 統合 Analytics Service の OData フィード へのアクセスはプレビュー段階です。 お使いいただき、フィードバックをお寄せください。

使用可能なデータはバージョンによって異なります。 サポートされている最新バージョンが v2.0され、最新のプレビュー バージョンが v4.0-preview。 詳細については、 OData API のバージョン管理に関するページを参照してください。

サポートされる句

  • $apply
  • $compute
  • $count
  • $expand
  • $filter
  • $orderby
  • $select
  • $skip
  • $top

クエリで複数の句を使用する場合は、上記で指定した順序で適用されます。 クエリ文字列内の句の順序は無視されます。 たとえば、次のクエリでは、作業項目が最初にグループ化されて集計されます。 次に、グループがフィルター処理されます。 その後、フィルター処理されたグループが並べ替えられます。 最後に、最初の 5 つのレコードが返されます。 クエリは、少なくとも 100 回使用された上位 5 種類の作業項目を返します。

WorkItems?$filter=Count ge 100&$apply=groupby((WorkItemType), aggregate($count as Count))&$orderby=Count&top=5

集計拡張機能のサポート

連続して適用されることを表すために、スラッシュで区切られた一連のセット変換が必要です。 各変換の結果は、次の変換への入力です。 たとえば、次のクエリでは、作業項目がフィルター処理され、作業項目の種類と状態によってグループ化されます。 次に、グループがフィルター処理され、再度グループ化されます。

Note

OData 集計拡張機能は比較的新しく、一部のクライアント ツールではまだ完全にはサポートされていません。

Workitems?$apply=filter(State ne 'Closed')/groupby((WorkItemType, State), aggregate($count as Count))/filter(Count gt 100)/groupby((State),aggregate(Count with max as MaxCount))  

次の変換がサポートされています。

変換 メモ
aggregate $countaveragemaxminのいずれかの方法を使用した集計を許可します。sum
compute 計算プロパティの追加を許可します
expand 指定したプロパティによる拡張を許可します
filter 入力セットのフィルター処理を許可します。 と同じ式をサポートします。 $filter
groupby プロパティによるグループ化を許可します

詳細については、「 Aggregate 作業追跡データ」を参照してください。

サポートされる関数

正規関数 説明
cast 指定した型にキャストされている現在のインスタンスの式を返します。
contains 2 番目のパラメーター文字列値が最初のパラメーター文字列値の部分文字列である場合は true を返し、それ以外の場合は false を返します。
endswith 最初のパラメーター文字列値が 2 番目のパラメーター文字列値で終わる場合は true を返し、それ以外の場合は false を返します。
startswith 最初のパラメーター文字列値が 2 番目のパラメーター文字列値で始まる場合は true を返し、それ以外の場合は false を返します。
length パラメーター値の文字数を返します。
indexof 最初のパラメーター値で 2 番目のパラメーター値が最初に出現する位置の 0 から始まる文字位置を返します。2 番目のパラメーター値が最初のパラメーター値に含まれていない場合は -1 を返します。
substring 最初のパラメーター文字列値の部分文字列を返します。N 番目の文字から始まり、最後の文字 (N は 2 番目のパラメーター整数値) で終了します。
tolower すべての大文字が小文字に変換された入力パラメーター文字列値を返します。
toupper すべての小文字が大文字に変換された入力パラメーター文字列値を返します。
trim 先頭と末尾のすべての空白文字を含む入力パラメーター文字列値を返します。
year Date または DateTimeOffset パラメーター値の年コンポーネントを返します。
month Date または DateTimeOffset パラメーター値の月コンポーネントを返します。
day Date または DateTimeOffset パラメーター値の日コンポーネントを返します。
date DateTimeOffset パラメーター値の日付部分を返します。
time DateTimeOffset パラメーター値の時刻部分を返します。
totaloffsetminutes DateTimeOffset パラメーター値のタイム ゾーン オフセット部分の符号付き分数を返します。
now DateTimeOffset 値として現在の時点 (タイム ゾーンの日付と時刻) を返します。
maxdatetime DateTimeOffset 値として指定できる最新の時点を返します。
mindatetime DateTimeOffset 値として最も早い時点を返します。

OData 関数は、 $filter 句で使用されますが、SQL ステートメントで使用される $select 句では使用されません。

たとえば、次のように指定できます。

/WorkItems?$filter=toupper(Title) eq 'HELP' 

ただし、次の文字列を入力することはできません。

/WorkItems?$select=WorkItemId,State,toupper(Title)

サポートされていない機能

  • bottomcount
  • bottomsum
  • bottompercent
  • $crossjoin
  • concat
  • countdistinct
  • from
  • isdefined
  • $rollup
  • $search
  • topcount
  • topsum
  • toppercent