Azure DevOps:如何在Sprints查询中获取任务的当前列信息?
解决Azure DevOps看板列查询及拖拽记录问题
一、Board Column/Board Column Done字段无返回值的解决方法
- 选对看板专属字段:每个看板的列字段是独立的,别选通用的
Board Column,要选对应看板的字段(比如你的看板叫"迭代1看板",字段会显示为Board Column (迭代1看板))。在查询编辑器的「添加字段」列表里找到对应看板的版本,添加后就能拿到正确值。 - 确认工作项在看板范围内:看板是绑定特定迭代/区域路径的,如果任务不在看板设置的迭代/区域里,这些字段自然为空。检查任务的「迭代路径」是否和看板的迭代范围匹配。
二、拖拽列操作不显示在历史记录的处理
- 绑定列与工作项状态:默认只有工作项状态变更才会进历史。在看板设置里编辑列,把每个列和对应的工作项状态绑定(比如"待办"列对应"待处理"状态),这样拖拽任务切换列时会自动修改状态,历史记录就会显示状态变更操作。
- 自定义字段+规则记录列变更:如果不想绑定状态,就新建一个自定义字段(比如"当前看板列"),然后设置工作流规则:当工作项在看板列切换时,自动更新这个自定义字段的值。字段的变更会被记录到历史里,也能通过查询获取当前列信息。
额外的WIQL查询提示
如果用WIQL写查询,要注意看板字段的实际标识。比如特定看板的Board Column字段名是Microsoft.VSTS.Common.BoardColumn_<看板GUID>,你可以在查询编辑器里添加对应字段后,切换到WIQL视图复制正确的字段名,示例:
SELECT [System.Id], [System.Title], [Microsoft.VSTS.Common.BoardColumn_12345678-1234-1234-1234-1234567890ab] FROM WorkItems WHERE [System.WorkItemType] = 'Task' AND [System.IterationPath] = '你的项目\当前迭代'
内容的提问来源于stack exchange,提问作者stunnie
相关产品推荐
相关产品推荐

