首页 > 解决方案 > Azure DevOps 查询工作项(如果有任何父项正在进行)

问题描述

我正在努力识别我们所有没有故事点估计的产品积压项目。但是,我们现在有很多 PBI(产品待办事项)需要估算。这简直是​​一团糟。我需要一个查询来帮助缩小工作范围。我知道如何创建 Azure DevOps 查询,以便我返回所有的产品积压项目,这些项目没有努力价值。

那个wiql看起来像这样

SELECT
    [System.Id],
    [System.WorkItemType],
    [System.Title],
    [System.AssignedTo],
    [System.State],
    [System.Tags],
    [Microsoft.VSTS.Scheduling.Effort]
FROM workitems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'Product Backlog Item'
    AND [System.State] = 'New'
    AND [Microsoft.VSTS.Scheduling.Effort] = ''

但是,我需要它再添加一个步骤,以过滤掉没有处于活动状态的父母或祖父母的项目。

问题 :

什么是我可以使用的查询,这项工作只给了我在状态下我没有努力的“PBI”,他们的一个或多个父母(递归)处于进行中的状态

标签: azureazure-devopswiql

解决方案


You can use the tree work item query type (in my case for user stories):

SELECT 
    [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State], [System.Tags] 
FROM 
    WorkItemLinks 
WHERE 
    ([Source].[System.TeamProject] = '<Your_project>'  AND ( [Source].[System.WorkItemType] = 'Feature'  OR  [Source].[System.WorkItemType] = 'Epic' ) AND  [Source].[System.State] <> 'New')
     And ([System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward') 
     And ([Target].[System.WorkItemType] = 'User story'  AND  [Target].[System.State] <> 'New'  AND  [Target].[Microsoft.VSTS.Scheduling.Effort] = '') 
 ORDER BY [System.Id] 
 mode(Recursive,ReturnMatchingChildren)

Query editor:

enter image description here


推荐阅读