Azure devops 跨多个项目查询最近更改的工作项
我正在尝试创建一个查询,该查询为我提供过去两天内更新的所有用户故事,这在带有WorkItem批处理查询的项目中应该是非常基本的。 https://[TENNANT].analytics.visualstudio.com/[PROJECT]/\u odata/v1.0/WorkItems 我需要对设置了一组特定标准的一些用户情景进行更新(我无法像现在这样使用DevOps中的规则进行估计的计算) 我的挑战是我们有200个项目,我需要获得所有这些项目中最近更改的用户故事。因此,我目前的解决方案如下:Azure devops 跨多个项目查询最近更改的工作项,azure-devops,azure-devops-rest-api,Azure Devops,Azure Devops Rest Api,我正在尝试创建一个查询,该查询为我提供过去两天内更新的所有用户故事,这在带有WorkItem批处理查询的项目中应该是非常基本的。 https://[TENNANT].analytics.visualstudio.com/[PROJECT]/\u odata/v1.0/WorkItems 我需要对设置了一组特定标准的一些用户情景进行更新(我无法像现在这样使用DevOps中的规则进行估计的计算) 我的挑战是我们有200个项目,我需要获得所有这些项目中最近更改的用户故事。因此,我目前的解决方案如下:
Post https://dev.azure.com/{OrgName}/_apis/wit/wiql?api-version=6.1-preview.2
如果要查询组织内的所有项目,则请求正文:
{
"query": "Select [System.Id] From WorkItems WHERE [System.WorkItemType]='User Story' AND [System.ChangedDate] >= @today-2 ORDER BY [System.ChangedDate] DESC"
}
{
"query": "Select [System.Id] From WorkItems WHERE [System.WorkItemType]='User Story' AND [System.ChangedDate] >= @today-2 And ([System.TeamProject] = 'ProjectName1' OR [System.TeamProject] ='ProjectName2') ORDER BY [System.ChangedDate] DESC"
}
如果您正在查询组织内的特定项目,则请求正文:
{
"query": "Select [System.Id] From WorkItems WHERE [System.WorkItemType]='User Story' AND [System.ChangedDate] >= @today-2 ORDER BY [System.ChangedDate] DESC"
}
{
"query": "Select [System.Id] From WorkItems WHERE [System.WorkItemType]='User Story' AND [System.ChangedDate] >= @today-2 And ([System.TeamProject] = 'ProjectName1' OR [System.TeamProject] ='ProjectName2') ORDER BY [System.ChangedDate] DESC"
}
作为第一个问题的后续行动。我可以从所有项目中获取Wit ID列表,但无法从其他字段中获取值 查询:
{
"query": "Select [System.Id], [System.Title] From WorkItems WHERE [System.WorkItemType]='User Story' AND [System.ChangedDate] >= @today ORDER BY [System.ChangedDate] DESC"
}
{
"queryType": "flat",
"queryResultType": "workItem",
"asOf": "2020-10-12T13:21:32.76Z",
"columns": [
{
"referenceName": "System.Id",
"name": "ID",
"url": "https://dev.azure.com/[organization]/_apis/wit/fields/System.Id"
},
{
"referenceName": "System.Title",
"name": "Title",
"url": "https://dev.azure.com/[organization]/_apis/wit/fields/System.Title"
}
],
"sortColumns": [
{
"field": {
"referenceName": "System.ChangedDate",
"name": "Changed Date",
"url": "https://dev.azure.com/[organization]/_apis/wit/fields/System.ChangedDate"
},
"descending": true
}
],
"workItems": [
{
"id": 19548,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19548"
},
{
"id": 19551,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19551"
},
{
"id": 13786,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/13786"
},
{
"id": 19299,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19299"
},
{
"id": 10805,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/10805"
},
{
"id": 19346,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19346"
},
{
"id": 19347,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19347"
},
{
"id": 19348,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19348"
},
{
"id": 19349,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19349"
},
{
"id": 19546,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19546"
},
{
"id": 19340,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19340"
},
{
"id": 19341,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19341"
},
{
"id": 19342,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19342"
},
{
"id": 19345,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19345"
},
{
"id": 17226,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/17226"
},
{
"id": 19006,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19006"
},
{
"id": 19544,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19544"
},
{
"id": 7412,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/7412"
},
{
"id": 19540,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19540"
},
{
"id": 18352,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/18352"
},
{
"id": 11609,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/11609"
},
{
"id": 11636,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/11636"
}
]
}
响应:
{
"query": "Select [System.Id], [System.Title] From WorkItems WHERE [System.WorkItemType]='User Story' AND [System.ChangedDate] >= @today ORDER BY [System.ChangedDate] DESC"
}
{
"queryType": "flat",
"queryResultType": "workItem",
"asOf": "2020-10-12T13:21:32.76Z",
"columns": [
{
"referenceName": "System.Id",
"name": "ID",
"url": "https://dev.azure.com/[organization]/_apis/wit/fields/System.Id"
},
{
"referenceName": "System.Title",
"name": "Title",
"url": "https://dev.azure.com/[organization]/_apis/wit/fields/System.Title"
}
],
"sortColumns": [
{
"field": {
"referenceName": "System.ChangedDate",
"name": "Changed Date",
"url": "https://dev.azure.com/[organization]/_apis/wit/fields/System.ChangedDate"
},
"descending": true
}
],
"workItems": [
{
"id": 19548,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19548"
},
{
"id": 19551,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19551"
},
{
"id": 13786,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/13786"
},
{
"id": 19299,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19299"
},
{
"id": 10805,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/10805"
},
{
"id": 19346,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19346"
},
{
"id": 19347,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19347"
},
{
"id": 19348,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19348"
},
{
"id": 19349,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19349"
},
{
"id": 19546,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19546"
},
{
"id": 19340,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19340"
},
{
"id": 19341,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19341"
},
{
"id": 19342,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19342"
},
{
"id": 19345,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19345"
},
{
"id": 17226,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/17226"
},
{
"id": 19006,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19006"
},
{
"id": 19544,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19544"
},
{
"id": 7412,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/7412"
},
{
"id": 19540,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/19540"
},
{
"id": 18352,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/18352"
},
{
"id": 11609,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/11609"
},
{
"id": 11636,
"url": "https://dev.azure.com/[organization]/_apis/wit/workItems/11636"
}
]
}
System.Title不是回复的一部分,我不能使用标准的WIT批处理查询,因为请求URL中有project的要求,而且这些都是跨多个项目的
有没有一种方法可以从WiQL查询中获得比ID字段更多的信息?我已经尝试了我所有的想法,但是我找不到一种方法来从第一次查询得到的响应中的每个工作项中查询更多的字段
这里有什么我遗漏的吗?简单的查询(不是分析)不好吗?