【问题标题】:Azure DevOps OData Sprint Burndown Chart not showing 0 story pointAzure DevOps OData Sprint Burndown Chart 未显示 0 故事点
【发布时间】: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


    【解决方案1】:

    以下查询将用于计算总范围

    https://analytics.dev.azure.com/{orgName}/{ProjectName}/_odata/v3.0-preview/WorkItemSnapshot?
            $apply=filter(
            Teams/any(d:d/TeamName eq '{TeamName}')
            and Iteration/IterationName eq '{IterationName}'
            and (WorkItemType eq 'User Story') 
            and StateCategory ne null 
            and (DateValue ge Iteration/StartDate 
                and DateValue le Iteration/EndDate))
            /groupby((DateSK),aggregate($count as TotalScope))
    

    但是,您必须为此查询遍历每个团队,但我找不到任何方法来根据团队对结果进行分组。 您可以使用 Teams Rest API 获取所有团队。 希望这可以帮助。 :)

    【讨论】:

    • 你好@Hari,不,它对我不起作用。将计数汇总为总范围似乎不正确?
    • 你能分享任何示例截图吗?这是 Azure Devops 批处理请求中用于绘制 UserStory 的 burndownGraph 的查询。如果您仍然遇到问题,您可以检查并检查 Azure Devops 中的网络选项卡,您将获得用于在此处绘制图表的确切查询。
    猜你喜欢
    • 2022-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-23
    相关资源
    最近更新 更多