2

我有按 Iteration Path 排序的 TFS/AzureDevOps 查询。我需要按迭代开始日期对其进行排序。我在排序页面或查询页面上没有看到任何选项来进行这样的排序。

我尝试按迭代 ID 排序,但迭代不是按顺序创建的。

WIQL 代码

SELECT
    [System.IterationPath],
    [Prod.Versions],
    [System.Id],
    [Prod.Territory],
    [Prod.Customer],
    [System.Title],
    [System.AssignedTo],
    [System.State]
FROM workitems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'Feature'
    AND [Prod.Versions] >= '9.0'
    AND [System.IterationPath] <> 'Machine'
    AND [System.AreaPath] UNDER 'Machine\Development'
ORDER BY [System.IterationId],
    [System.Id]

我希望它按如下方式订购(来自 AzureDevops Server 2019 中项目的设置页面): 在此处输入图像描述

4

2 回答 2

0

抱歉,TFS 工作项查询不支持使用开始/结束日期过滤迭代。

这里有一个类似的问题:TFS show iteration Start and End Date on PBI

由于使用包含迭代日期的名称不是您的解决方案。作为另一种解决方法,您可以尝试使用 TFS API 在特定的开始/结束日期获取迭代。有些东西可能对您的参考有所帮助。

此外,在每个集合数据库中都有一个名为“ tbl_nodes”的表,其中包含开始日期和结束日期。编写一个仓库适配器,实际获取这些日期并将它们保存到仓库中。注意不要直接在数据库中写入或更改任何可能失去官方支持的内容。

对于使用迭代开始/结束日期方案的查询工作项,请将其提交到用户语音站点:https ://developercommunity.visualstudio.com/spaces/21/visual-studio-team-services.html?type=idea Microsoft 工程师将认真评估任何功能请求。

于 2019-08-30T09:31:42.520 回答
0

我们为迭代采用了一个命名约定,使用迭代的开始日期作为名称来实现这一点。

所以迭代被命名为: 2019.08.12 2019.08.26

不理想,出于这个原因,我希望看到一个选项将迭代的开始日期包含在一个列中。希望我们能很快看到更好的答案。

于 2019-08-29T16:01:56.527 回答