如何查询Azure DevOps中自身被分配时长最久的工作项?
查询Azure DevOps中被分配时长最久的工单(排除短暂分配项)
方法1:手动结合查询与工作项历史筛选
- 先建个树状或平面查询,保留
Was Ever @ME的基础条件,缩小范围到曾分配给你的工单。 - 打开每个工单的「历史」标签,找到所有「分配给」字段变更为你的记录,对比变更时间戳,算出从分配到转走的时长,直接筛掉那些仅停留几小时/半天的验证工单。
- 嫌逐个点麻烦的话,在查询结果里添加「历史记录」列,能快速看到哪些工单有多次分配变更,优先查时间跨度大的。
方法2:用分析服务做自定义统计报表
- 进入项目的「分析」模块(得先启用这个功能),基于「工作项历史」数据集建报表:
- 筛选「分配给」字段变更目标为你的所有事件,然后计算每个事件的持续时间(从分配给你到再次转走的时间差)。
- 按这个持续时间排序,就能直接拉出你被分配最久的工单;还能设个阈值(比如排除时长小于1天的),自动过滤短暂分配的项。
方法3:CLI批量导出+脚本计算
- 用Azure DevOps CLI命令导出所有符合
Was Ever @ME的工作项ID:az boards work-item query --id <你的查询ID> --output tsv | cut -f1 - 遍历每个ID,拉取完整历史记录:
az boards work-item show --id <工单ID> --expand all - 写个简单的Python或PowerShell脚本,解析每个工单的「分配给」变更日志,算出你作为被分配人的单次最长时长或总时长,最后排序输出结果就行。
方法4:自定义字段+工作流规则(长期解决方案)
- 如果经常要查这类数据,可以在项目里加个自定义字段(比如叫「分配给我的总时长」),再配工作流规则:
- 当「分配给」字段改成你时,记录当前时间;改成其他人时,算时间差并累加到这个自定义字段里。
- 之后直接在查询里按这个自定义字段排序,不用手动算就能快速找到时长最长的工单。
内容的提问来源于stack exchange,提问作者Roelant
相关产品推荐
相关产品推荐

