OData クエリを使用して Power BI レポートを作成する
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Power BI Desktop を使用すると、Azure DevOps でプロジェクトのレポートの作成を簡単に開始できます。
Power BI Desktopがない場合は、無料でダウンロードしてインストールできます。
次の手順に従って、 のバグの傾向を示すレポートを Power BI Desktop で作成します。
- Power BI クエリを作成する
- Power BI 変換を作成する
- Open Bugs 傾向レポートを作成する
前提条件
Power BI レポートを作成するには、次の条件を満たす必要があります。
- プロジェクトのメンバーである必要があります。 まだプロジェクトがない場合は、 プロジェクトを作成します。 「 無料でサインアップする」を参照してください。
- プロジェクト メンバーとして追加されていない場合は、 今すぐ追加します。 プロジェクトへのアクセス権を持つすべてのユーザー (利害関係者を除く) は、Analytics ビューを表示できます。
- View Analytics アクセス許可を Allow に設定します。 Analytics にアクセスするためのアクセス許可を参照してください。
- ボード を有効にする必要があります。 再度有効にするには、「 Azure DevOps サービスを有効または無効にする」を参照してください。
- Power BI Desktop October 2018 Update 以降のバージョンインストール済み。 このクライアント アプリケーションは、公式のPower BI Desktopダウンロード ページからダウンロードできます。
- 傾向レポートを生成する作業項目を一定期間追跡しました。
- プロジェクトのメンバーである必要があります。 まだプロジェクトがない場合は、 プロジェクトを作成します。
- プロジェクト メンバーとして追加されていない場合は、 今すぐ追加します。 プロジェクトへのアクセス権を持つすべてのユーザー (利害関係者を除く) は、Analytics ビューを表示できます。
- Analytics を 可能またはインストール済み。 拡張機能を追加したり、サービスを有効にしたりするには、アカウント所有者または Project Collection Administrators グループ のメンバーである必要があります。
- ボード を有効にする必要があります。 再度有効にするには、「 Azure DevOps サービスを有効または無効にする」を参照してください。
- View Analytics アクセス許可を Allow に設定します。 Analytics にアクセスするためのアクセス許可を参照してください。
- Power BI Desktop October 2018 Update 以降のバージョンインストール済み。 このクライアント アプリケーションは、公式のPower BI Desktopダウンロード ページからダウンロードできます。
- 傾向レポートを生成する作業項目を一定期間追跡しました。
Power BI クエリを作成する
Power BI クエリを作成して、次のようにデータを Power BI にプルします。
[データの取得] を選択し、[クエリします。
Power BI クエリ エディターで、[詳細エディター] を選択します。
詳細エディター ウィンドウが開きます。
内容を次のクエリに置き換えます。
let Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/WorkItemSnapshot? " $apply=filter( WorkItemType eq 'Bug' AND StateCategory ne 'Completed' AND startswith(Area/AreaPath,'{areapath}') AND DateValue ge {startdate} )/ groupby((DateValue,State,WorkItemType,Area/AreaPath), aggregate($count as Count)) &$orderby=DateValue" ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) in Source
サンプル クエリ内の値に置き換えます。
サンプル クエリには、値に置き換える必要がある文字列があります。
{organization}
- 組織名{project}
- チーム プロジェクト名。 または、プロジェクト間クエリの場合は、/{project}
を完全に省略します{areapath}
- エリア パス。 形式: Project\Level1\Level2{startdate}
- 傾向レポートを開始する日付。 形式: YYYY-MM-DDZ。 例:2022-09-01Z
は 2022 年 9 月 1 日を表します。 引用符で囲む必要はありません。
Done を選択してクエリを実行します。
アカウントに接続したことがない場合は、Power BI で認証が必要になる場合があります。 詳細については、「 Client 認証オプション」を参照してください。
[領域]、[イテレーション]、[AssignedTo] 列の展開
このクエリでは、Power BI で使用する前に展開する必要がある複数の列が返されます。 $expand
ステートメントを使用して取り込まれたエンティティは、複数のフィールドを含むレコードを返します。 エンティティをフィールドにフラット化するには、レコードを展開する必要があります。 このようなエンティティの例としては、 AssignedTo
、 Iteration
、 Area
があります。
詳細エディターを閉じ、Power Query エディターに残っている間に、フラット化する必要があるエンティティの展開ボタンを選択します。
たとえば、 Area の展開ボタンを選択し、展開するプロパティを選択して、 OKを選択します。 ここでは、フラット化する
AreaName
とAreaPath
を選択します。AreaName
プロパティは、Node Name フィールドに似ています。Note
選択できるプロパティは、クエリで返すように要求されたプロパティによって異なります。 プロパティを指定しない場合は、すべてのプロパティを使用できます。 これらのプロパティの詳細については、 Areas、 Iterations、および Users のメタデータ参照を参照してください。
テーブルにエンティティ フィールドが含まれるようになりました。
展開が必要なエンティティを表すすべてのフィールドについて、手順 1 から 3 を繰り返します。 これらは、 Record が展開されていないときにテーブル列に表示されます。
フィールドとクエリの名前を変更し、[閉じて適用]
完了したら、列の名前を変更できます。
列ヘッダーを右クリックし、 Rename... を選択します。
また、クエリの名前を既定の Query1 からわかりやすいものに変更することもできます。
完了したら、 Close & Apply を選択してクエリを保存し、Power BI に戻ります。
レポートを作成する
Power BI には、レポートできるフィールドが表示されます。
Note
次の例では、誰も列の名前を変更しなかったことを前提としています。
単純なレポートの場合は、次の手順を実行します。
- [Power BI 視覚化] [折れ線グラフ] を選択します。
- フィールド "DateValue" を Axis に追加する
- [DateValue] を右クリックし、[日付階層] ではなく [DateValue] を選択します
- フィールド "State" を Legend に追加する
- フィールド "Count" を Values に追加する
- WorkItemId フィールドを右クリックし、 Sum が選択されていることを確認します
レポートの例: