使用 OData 查询创建 Power BI 报表
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
借助 Power BI Desktop,可以轻松地在 Azure DevOps 中为项目创建报表。
如果没有 Power BI Desktop, 请免费下载 并安装它。
先决条件
若要创建 Power BI 报表,必须满足以下条件:
- 是项目成员。 如果没有, 请立即添加。 有权访问项目(利益干系人除外)的任何人都可以查看 Analytics 视图。
- 将 视图分析 权限设置为 “允许”。 请参阅 授予分析访问权限。
- 启用 Boards。 若要重新启用 Boards,请参阅 打开或关闭 Azure DevOps 服务。
- 拥有 Power BI Desktop 2018 年 10 月更新 或更高版本。
- 跟踪生成趋势报表的某个时间段内的工作项。
- 是项目成员。 如果没有, 请立即添加。 有权访问项目(利益干系人除外)的任何人都可以查看 Analytics 视图。
- 启用或安装 Analytics。 必须是帐户所有者或 Project 集合管理员 组 的成员才能添加扩展或启用服务。
- 启用 Boards。 若要重新启用 Boards,请参阅 打开或关闭 Azure DevOps 服务。
- 将 视图分析 权限设置为 “允许”。 请参阅 授予分析访问权限。
- 拥有 Power BI Desktop 2018 年 10 月更新 或更高版本。
- 跟踪生成趋势报表的某个时间段内的工作项。
创建 Power BI 查询
创建 Power BI 查询以将数据拉取到 Power BI 中,如下所示:
选择“ 获取数据”,然后选择 “空白查询”。
在 Power BI 查询编辑器中,选择高级编辑器。
此时会打开高级编辑器窗口。
将内容替换为以下查询:
let The query you provided has a syntax issue due to the placement of double quotes. Specifically, the `$apply` and `$orderby` parameters should be part of the URL string, but they are not correctly concatenated. Here is the corrected version:
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 日。 不要用引号引起来。
选择“完成”以执行查询。
Power BI 可能要求你进行身份验证。 有关详细信息,请参阅 客户端身份验证选项。
展开区域、迭代、AssignedTo 列
查询将返回几个需要展开的列,然后才能在 Power BI 中使用它们。 使用 $expand
语句拉入的任何实体都返回一条记录,其中包含可能有多个字段。 需要展开记录,将实体平展到其字段中。 此类实体的示例包括: AssignedTo
、 Iteration
和 Area
。
关闭高级编辑器并在Power Query 编辑器中剩余时,选择需要平展的实体上的展开按钮。
例如,选择“区域”的展开按钮,选择要展开的属性,然后选择“确定”。 在这里,我们选择
AreaName
并AreaPath
平展。 该AreaName
属性类似于 “节点名称” 字段。该表现在包含实体字段。
对表示需要展开的实体的所有字段重复步骤 1 到 3。 未展开时,这些字段显示在 表列中列出的 Record 。
重命名字段和查询,然后关闭并应用
完成后,可以选择重命名列。
右键单击列标题并选择“ 重命名...”
你可能还需要将查询从默认 Query1 重命名为更有意义的查询。
完成后,选择 “关闭并应用” 以保存查询并返回到 Power BI。
创建报表
Power BI 显示可以报告的字段。
注意
以下示例假定没有人重命名任何列。
对于简单的报表,请执行以下步骤:
- 选择 Power BI 可视化折 线图。
- 将字段“DateValue”添加到 Axis
- 右键单击“DateValue”并选择“DateValue”,而不是“日期层次结构”
- 将字段“State”添加到 Legend
- 将字段“Count”添加到 “值”
- 右键单击 WorkItemId 字段并确保已选择 Sum
示例报告: