VSTS:查询给定功能的所有工作项
VSTS: Query all work items for a given Feature
是否可以提取 VSTS 中给定功能的所有工作项和错误的列表?我没有看到可以搜索的 "Parent ID" 或类似内容。
问题是我想在仪表板上使用 "Work item" 磁贴查询,显示此特定功能的错误和工作项的数量。
解决方法是用标签注释所有错误和工作项,然后对其进行过滤,但我想避免这是一个手动步骤。
谢谢 :-)
两题合一post。
首先是查询,是的,使用 hierarchical query.
很容易提取所有“后代”工作项
根据小部件,您必须使用 Query Tile; 工作项图表表示Hierarchical queries are not supported
。
请注意,根祖先已包含在计数中。
您可以custom dashboard widget (VSTS extension) with 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" ]
}
}
是否可以提取 VSTS 中给定功能的所有工作项和错误的列表?我没有看到可以搜索的 "Parent ID" 或类似内容。
问题是我想在仪表板上使用 "Work item" 磁贴查询,显示此特定功能的错误和工作项的数量。
解决方法是用标签注释所有错误和工作项,然后对其进行过滤,但我想避免这是一个手动步骤。
谢谢 :-)
两题合一post。
首先是查询,是的,使用 hierarchical query.
很容易提取所有“后代”工作项根据小部件,您必须使用 Query Tile; 工作项图表表示Hierarchical queries are not supported
。
请注意,根祖先已包含在计数中。
您可以custom dashboard widget (VSTS extension) with 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" ]
}
}