VSTS:查询给定功能的所有工作项

时间:2016-11-24 09:22:24

标签: azure-devops dashboard

是否可以在VSTS中提取列表中给定功能的所有工作项和错误?我没有看到"家长ID"或类似的我可以搜索。

问题是我想将查询用于"工作项"仪表板上的磁贴显示此特定功能的错误和工作项的数量。

解决方法是使用标记注释所有错误和工作项,然后对其进行过滤,但这是我想避免的手动步骤。

谢谢: - )

2 个答案:

答案 0 :(得分:2)

一个帖子中有两个问题。

首先是查询,是的,使用hierarchical query很容易拉出所有“后代”工作项。

enter image description here

根据小部件,您必须使用查询平铺; 工作项图表表示Hierarchical queries are not supported

enter image description here

请注意,根祖先包含在计数中。

答案 1 :(得分:0)

您可custom dashboard widget(VSTS扩展程序)与REST API一起显示您想要的结果。

简单示例(显示查询的子工作项数):

<!DOCTYPE html>
<html>
<head>
    <title>Custom widget</title>
    <meta charset="utf-8" />
    <script src="node_modules/vss-web-extension-sdk/lib/VSS.SDK.js"></script>
    <script type="text/javascript">
        VSS.init({
            explicitNotifyLoaded: true,
            usePlatformStyles:true
        });
        VSS.require(["TFS/Dashboards/WidgetHelpers", "TFS/TestManagement/RestClient", "TFS/WorkItemTracking/RestClient", "TFS/Build/RestClient"], function (WidgetHelpers, TFS_Test_WebApi, TFS_Work_WebApi,TFS_Build_Client) {
            WidgetHelpers.IncludeWidgetStyles();
            VSS.register("WidgetStarain", function () {

                var projectId = VSS.getWebContext().project.id;
                var runQuery = function (widgetSettings) {
                    TFS_Work_WebApi.getClient().queryById('7633dab2-89e4-4da9-b03d-a16728ab71c5', projectId)
                    .then(function (workitemResult) {
                        var ss = "gg";

                        ss = workitemResult.workItemRelations[0].target.url;
                       var resultCount = workitemResult.workItemRelations.length;
                       $('div.childWorkItemCount').text(resultCount-1);
                    })
                }

                return {
                    load: function (widgetSettings) {
                        var $title = $('h2.title');
                        $title.text('starain widget custom');
                        runQuery(widgetSettings);
                        return WidgetHelpers.WidgetStatusHelper.Success();
                    }
                }
            });
            VSS.notifyLoadSucceeded();
        });
    </script>
</head>
<body>
    <div class="widget">
        <h2 class="title">widgets sample</h2>
        <div class="childWorkItemCount">-1</div>
    </div>
</body>
</html>

.Json文件中的部分代码:

{
      "id": "WidgetStarain",
      "type": "ms.vss-dashboards-web.widget",
      "targets": [ "ms.vss-dashboards-web.widget-catalog" ],
      "properties": {
        "name": "widget starain",
        "description": "custom widget",
        "catelogIconUrl": "Images/iconProperty.png",
        "previewImageUrl": "Images/iconProperty.png",
        "uri": "WidgetStarain.html",
        "supportedSizes": [
          {
            "rowSpan": 1,
            "columnSpan": 2
          }
        ],
        "supportedScopes": [ "project_team" ]
      }
    }