当Azure板上有未关闭的子工作项时,如何禁止关闭其父工作项?

问题描述

我想通过通知用户甚至通过规则阻止更改来避免“无效”状态更改。但是,我看不到任何基于链接工作项状态的规则功能何时条件。 如果它会提示用户是否要更改所有子级的状态,那将是很好的选择,但是我很确定这将是一项功能请求。 (扩展名?)

到目前为止,我已经弄清楚了如何编写查询以识别事实之后的情况。

SELECT
    [System.Id],[System.WorkItemType],[System.Title],[System.State],[System.AssignedTo],[Microsoft.VSTS.Common.ResolvedBy],[Microsoft.VSTS.Common.ClosedBy],[Microsoft.VSTS.Common.ResolvedDate],[Microsoft.VSTS.Common.ClosedDate],[System.AreaPath],[System.IterationPath]
FROM workitemLinks
WHERE
    (
        [Source].[System.TeamProject] = @project
        AND [Source].[System.State] = 'Closed'
    )
    AND (
        [System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward'
    )
    AND (
        [Target].[System.TeamProject] = @project
        AND NOT [Target].[System.State] IN ('Closed','Removed')
    )
ORDER BY [System.Id]
MODE (MustContain)

解决方法

恐怕没有这种方式可以满足您的需求。

我们无法根据子工作项的状态来判断是否关闭父工作项。

另一方面,状态字段现在不能在规则中使用。

工作项的状态独立于所有其他工作项,包括链接的工作项。

现在只能通过手动监视工作项的状态来实现此要求。

由于您可以创建查询来获取父级和子级工作项目,因此可以通过查询监视它们。

但是,此功能非常有意义。我之前在UserVoice论坛上发布了类似的Suggestion Ticket。您可以投票并添加评论以表达您的建议。