4

我已阅读所有 MSDN 文档,但找不到在 Azure DevOps 服务(VSTS 在线)中编辑工作项转换的方法。

我试着:

  1. 将自定义原因添加到工作项的状态。(例如“已解决”、“不会修复”)
  2. 查看/编辑有关状态如何转换的所有现有规则。
4

6 回答 6

3

如果您在 VSTS 中的托管 XML 流程模型上,这是可能的。 托管 XML 流程模型概念 - VSTS

您何时使用托管 XML 流程模型?经过大量阅读后,我在解释托管 XML 自定义的页面上找到了以下注释,其中指出

功能可用性: 导入流程支持托管 XML 流程模型,该模型允许您通过更新流程模板的选定 XML 定义文件来管理定制。此功能仅适用于已使用 TFS 数据库导入服务迁移到 VSTS 的帐户。

但是由于我没有导入我的 VSTS,所以我使用的是继承过程模型。目前不支持此功能,如评论中所述

@RohanDaniel @ehofman@MSFT @DevMarTechOps 你是对的。高级工作流管理(包括限制转换和自定义转换原因)在继承模型中尚不可行。不过,这是我们的积压工作。

此外,如果您确实使用了高保真迁移工具并且您拥有托管 XML 流程模型,那么您将被困在它上面。您无法移至此链接中所见的继承模型。

那么总结一下。在 VSTS 中的继承过程模型上,这不是当前可用的功能,但 MS 确认已在积压中。然而,它没有计划在未来几个月内交付,从现在起一年或更长时间更有可能。

就我而言,我还必须在 BUG WIT(工作项类型)上添加附加字段和新状态。这是在 VSTS 上通过自定义一个流程来完成的,该流程是通过继承一个标准流程(敏捷、CMMI、Scrum)来完成的,然后您可以自定义该流程。

您可以将自定义规则添加到 WIT,并且可以根据状态更改制定规则....但是,规则似乎太有限而无法限制转换,并且设置字段的选项没有可用的“原因”字段。

于 2017-12-04T00:19:56.950 回答
2

事实上,我想出了一个解决方案!我承认这并不像我想要的那样干净,但它确实有效。

我创建了三个新字段:“规则错误”(文本单行)、“规则损坏”(文本单行)和“已激活规则”(布尔值)。

“规则错误”我把它放在主选项卡上,这样我就可以看到错误,另外两个我创建了一个名为“无用”的选项卡,我把它们放在里面。

现在,添加一个进行重置的规则:

  • 名称:重置规则
  • 条件:equals 的值 ==> “规则已激活” ==> true
  • 行动:清除值==>“规则错误”

然后每个不想要的状态转换规则:

  • 名称:状态更改 - 已批准部署的 QA
  • 条件:工作项状态从 ==> Approved ==> Deployed QA 更改
  • 行动:要求==>“违反规则”
  • 行动:设置==>“激活规则”的值==>真
  • 行动:设置==>“规则错误”的值==>“不能从批准更改为部署质量检查”

我知道,在“违反规则”字段中输入内容会破坏这种强制执行,但由于此功能不存在,因此当您无权访问托管 XML 时,这是我想出的唯一方法。

于 2019-02-19T04:29:13.063 回答
1

目前在使用继承过程时这是不可能的。

您可以在社区中投票支持此功能请求:允许在使用继承过程时指定状态转换

于 2019-01-07T08:52:01.050 回答
1

目前,这两件事似乎都不可能。

VSTS 流程定制与 TFS 非常不同,并且仍在不断发展。#1 似乎可能会在未来的更新中添加。但#2 似乎不会出现,因为默认情况下,微软已经放宽了 VSTS 上所有模板的大部分转换规则。

于 2017-04-14T11:48:36.740 回答
0

以下是拒绝任何不是“HighLevelManagement”组成员的用户将状态从已批准更改为已提交 PBI 的解决方法:

  1. 创建一个名为“解锁”的新字段。
  2. 当用户不属于“HighLevelManagement”时,创建一个新规则来“隐藏字段”,如下所示

在此处输入图像描述

  1. 当 Unlocked 为 False 并且工作项从 Approved 更改为 Commited 时,创建一个新规则,将操作“Make Read Only”设置为“State”,如下所示:

在此处输入图像描述

现在,每当来自 HighLevelManagement 的用户想要将状态从 Approved 更改为 Committed 时,他只需勾选 Unlocked 更改状态,然后勾选 Unlocked,这样来自 HighLevelManagement 之外的任何人都将被限制将状态从 Approved 更改为 Committed。

于 2020-01-03T00:34:13.643 回答
0

可以通过创建我们自己的自定义扩展并创建一些规则来禁用从一种状态到另一种状态的状态更改

我已经为我的组织实现了这个,但还没有在网上发布..很快就会做

于 2019-09-09T13:22:02.220 回答