如何修改TFS查询以获取最近7个迭代用于仪表盘图表展示?
解决TFS查询仅获取最近7个迭代的问题
我来帮你搞定这个仪表盘图表的「Other」分组困扰,核心思路就是让TFS查询只返回最近7个迭代的数据,这样图表就不会触发合并规则了。下面是两种实用的实现方法,你可以根据团队的迭代配置情况选择:
方法1:用迭代宏自动筛选(推荐,无需手动维护)
如果你的TFS/Azure DevOps版本是2017及以后(包括Azure DevOps Services),可以用内置的迭代宏来自动抓取最近7个迭代,完全不用每次迭代更新后手动改查询:
- 打开你的现有查询,切换到筛选标签页
- 添加一个新的筛选条件:
- 字段选「迭代路径」
- 运算符选「In」
- 值的部分依次添加以下宏:
@CurrentIteration(当前正在进行的迭代)@CurrentIteration-1(上一个迭代)@CurrentIteration-2@CurrentIteration-3@CurrentIteration-4@CurrentIteration-5@CurrentIteration-6
这样加起来正好是7个迭代,完美匹配图表的限制。
- 保存查询后,刷新仪表盘的图表,就能看到所有数据都正常展示,不会再出现「Other」分组了。
方法2:手动指定迭代(适合旧版TFS或特殊命名规则)
如果你的TFS版本不支持迭代宏,或者迭代命名没有遵循统一顺序,可以手动指定最近7个迭代的名称:
- 同样在查询的筛选标签页,添加「迭代路径」字段,运算符选「In」
- 值的部分直接输入最近7个迭代的完整路径(比如
项目名\\团队名\\Sprint 25、项目名\\团队名\\Sprint 24...) - 这种方法的缺点是每次迭代推进后,你需要手动更新查询里的迭代列表,但胜在兼容性好,任何版本的TFS都能用。
额外提醒
如果你的迭代配置了明确的开始/结束日期,也可以用日期范围来筛选:比如添加「迭代开始日期」字段,运算符选「>=」,值设为@Today-98(假设每个迭代2周,7个迭代就是98天),但这种方法不如迭代宏精准,毕竟不同团队的迭代长度可能不一样。
内容的提问来源于stack exchange,提问作者antgel
相关产品推荐
相关产品推荐

