如何通过Azure DevOps REST API获取Completed字段的每日变更历史?
获取Azure DevOps中Completed字段的历史变更记录
要获取Completed字段(对应系统字段Microsoft.VSTS.Scheduling.CompletedWork)的每日工时变更记录,你需要调整现有接口请求或使用专用历史查询方式,以下是两种可行方案:
方案一:修改workitemsbatch请求以包含历史数据
当前调用的workitemsbatch接口默认仅返回工作项的当前状态,你可以在请求体中添加expand: "history"参数,让接口返回每个工作项的完整变更历史。
示例请求体(JSON格式):
{ "ids": [1001, 1002, 1003], "fields": ["System.Id", "Microsoft.VSTS.Scheduling.CompletedWork"], "expand": "history" }
返回结果中,每个工作项的revisions数组会包含所有版本的字段变更,你可以从中筛选出Microsoft.VSTS.Scheduling.CompletedWork字段的变更记录,提取变更时间、旧值、新值等信息。
方案二:调用工作项历史专用接口
如果仅需历史数据,也可以直接调用单个工作项的历史接口,批量场景下可通过循环或批量请求处理:
单个工作项历史查询示例:
GET https://xxx.visualstudio.com/Ad%20Hoc/_apis/wit/workitems/{workItemId}/history?api-version=5.13
该接口会返回该工作项的所有变更历史,筛选Microsoft.VSTS.Scheduling.CompletedWork字段的变更即可得到每日工时变更数据。
数据处理提示
获取到历史数据后,你可以:
- 提取每条变更的
rev(版本号)、fields.Microsoft.VSTS.Scheduling.CompletedWork(变更后的值)、changedDate(变更时间) - 在PowerBI中按日期分组,计算每日的
Completed字段变更量,生成对应的报表分析
内容的提问来源于stack exchange,提问作者Thomas Segato
相关产品推荐
相关产品推荐

