【发布时间】:2020-05-22 05:06:59
【问题描述】:
我在使用 OData 查询构建 Power BI 报表时指的是这个MS docs。
我稍微修改了查询以显示 Sprint Burndown,逐个 sprint 并且一切正常,直到我意识到当团队完成所有故事点时,正确地,burndown 区域应该像我们一样一直归零可以在 Azure DevOps UI 的 Sprint > Analytics 中看到,但在我的 OData 查询中,最后一天的数据不会显示,因为它没有故事点,导致我的可视化永远不会变为零(但实际上它确实如此)。
您可能会问我为什么要做自定义 Power BI 报告,我要跨多个组织进行这种可视化,这就是为什么我们希望在单个 Power BI 报告中对所有这些组织进行整体视图。
我的 OData 查询
let
Source = OData.Feed ("https://analytics.dev.azure.com/"& Organization &"/_odata/v3.0-preview/WorkItemSnapshot? "
&"$apply=filter( "
&"Project/ProjectName eq '{ProjectName}' "
&"and WorkItemType eq 'User Story' "
&"and StateCategory ne 'Completed' "
&"and DateValue ge Iteration/StartDate "
&"and DateValue le Iteration/EndDate "
&"and Iteration/StartDate ge 2020-01-01Z "
&") "
&" &$expand=Project,Iteration,Teams"
),
#"Expanded Project" = Table.ExpandRecordColumn(Source, "Project", {"ProjectName"}, {"Project.ProjectName"}),
#"Expanded Iteration" = Table.ExpandRecordColumn(#"Expanded Project", "Iteration", {"IterationName", "IterationPath", "StartDate", "EndDate"}, {"Iteration.IterationName", "Iteration.IterationPath", "Iteration.StartDate", "Iteration.EndDate"}),
#"Expanded Teams" = Table.ExpandTableColumn(#"Expanded Iteration", "Teams", {"TeamName"}, {"Teams.TeamName"}),
#"Removed Other Columns" = Table.SelectColumns(#"Expanded Teams",{"WorkItemId", "CompletedDate", "StoryPoints", "Teams.TeamName", "Project.ProjectName", "Iteration.IterationName", "Iteration.IterationPath", "Iteration.StartDate", "Iteration.EndDate", "DateValue"}),
#"Grouped Rows" = Table.Group(#"Removed Other Columns", {"Teams.TeamName", "Project.ProjectName", "Iteration.IterationName", "Iteration.IterationPath", "Iteration.StartDate", "Iteration.EndDate", "DateValue"}, {{"Total Story Points", each List.Sum([StoryPoints]), type number}})
in
#"Grouped Rows"
它可能看起来不像你看到的那么优雅我没有做服务器端 groupby,但我也想要 teamName 信息,我尝试在查询中扩展和 groupby,但一直出错。
我也知道没有 0 故事点的原因是因为 StateCategory ne 'Completed' "。如何在 Power BI 中正确可视化 Azure DevOps 燃尽图?
p/s:如果有人能提出关于可视化总范围和理想趋势的建议会更好。
【问题讨论】:
标签: azure-devops powerbi burndowncharts