如何根据另一个字段的值禁止 TFS 要求工作项中的状态从“建议”更改为“活动”?

2024-04-08

I've added department approvals to the standard CMMI-Template Requirement work-item. I'd like to limit the System.State field such that it can only be changed from Proposed to Active when all department approvals are set to "Yes".
Requirement Work-Item with Approvals

我尝试对 Requirement.xml 进行以下更改

<FIELD name="State" refname="System.State" type="String" reportable="dimension">
  <WHEN field="Approval.Marketing" value="No">
    <READONLY />
  </WHEN>
  <WHEN field="Approval.Quality" value="No">
    <READONLY />
  </WHEN>
  <WHEN field="Approval.RD" value="No">
    <READONLY />
   </WHEN>
   <WHEN field="Approval.System" value="No">
     <READONLY />
   </WHEN>
   <WHEN field="Approval.ProgManagement" value="No">
     <READONLY />
   </WHEN>
</FIELD>

如果任何批准字段设置为“否”,这将导致“状态”字段变为“只读”,这正是我想要的。然而,在创建新需求时,它会导致问题,因为最初的批准全部为“否”,因此由于 READONLY 条件,状态的初始“建议”默认值并未设置。我想要做的是将逻辑添加到上面的 WHEN 条件中AND它们的条件为 System.State="Proposed"。我尝试嵌套 WHEN 子句,例如

<FIELD name="State" refname="System.State" type="String" reportable="dimension">
  <WHEN field="System.State" value="Proposed">
    <WHEN field="Approval.Marketing" value="No">
      <READONLY />
    </WHEN>
         . . .
  </WHEN>
</FIELD>

但这在导入时会出现错误WHEN子句不能包含WHEN。我怎样才能禁止状态改变Proposed to Active当任何批准字段设置为“否”时


我花了一些时间弄清楚是否可以想出一个可行的变体,因为您无法像其他字段那样为 System.State 设置默认值。在我想出可行的方法之前,我可能经历了 50 种左右的变化。当然,它并不理想,但它可以在初始创建后解决您的问题。

您可以在每个过渡状态内添加 when 子句。对于我的示例,我使用优先级字段并执行以下操作:

<State value="Proposed">
  <FIELDS>
    <FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
      <EMPTY />
    </FIELD>
    ...
    <FIELD refname="System.State">
      <WHEN field="Microsoft.VSTS.Common.Priority" value="2">
        <READONLY />
      </WHEN>
    </FIELD>
  </FIELDS>
</State>

当然,您必须将您的条款添加到其他状态:有效、已关闭和已解决。

完成此操作后,创建一个新的需求。当您创建新需求时,您有两个选择:

您可以将所有选项设置为“是”,将状态设置为“建议”并保存。然后返回并将它们设置为否并保存。

Or

将您的自定义字段全部更改为默认值“是”。 创建需求并保存。编辑它,将所有值切换为否,保存。

无论您选择哪种方式,一旦随着需求创建克服了最初的障碍。它会按照您想要的方式行事。换句话说,如果任何值是 no,那么它将使状态变为只读。

考虑到 System.State 字段的限制,这是我能想到的最好的办法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何根据另一个字段的值禁止 TFS 要求工作项中的状态从“建议”更改为“活动”? 的相关文章

  • 自动包含在 Visual Studio 外部创建的新文件

    Problem 如果我将图像保存在项目文件夹结构中的某个位置 则在 Visual Studio 外部创建的图像不会自动包含到我的项目中 问题 有没有办法自动包含添加到项目中任何文件夹中的新文件 我还使用源代码管理 团队基础服务器 如果新文件
  • TFS MSBuild:$(ProjectDir) 空白或随机

    我有一个 vcproj 文件 其中包含一个简单的预构建事件 大致如下 Helpertask exe ProjectDir 这在开发人员 PC 上运行良好 但是当解决方案在 MSBuild 下的 TFS 2008 构建服务器上构建时 Proj
  • 如何正确更新反应钩子状态内的数组

    我一直在尝试更新代表反应状态的数组内的对象 当输入的值更改时应该更新该对象 我可以自己找到一种方法来更新它 但我不太确定这是正确的方法 因为当我打开反应开发工具并转到组件选项卡并单击我正在处理的组件时 在输入输入时状态不会立即更新 并且为了
  • 如何使用 REST API 列出 TFS GIT 存储库中的所有文件

    全部 我正在尝试使用 REST API 获取 TFS GIT 中特定存储库中的所有文件的列表 我找到了下面的一个 但它只显示 scopePath buld xml 后面提到的特定文件名的内容 它只显示文件build xml的内容 但我试图仅
  • 无法创建 TFS 构建定义 (TF225000) 并且没有构建管理员组

    我无法在 TFS 2013 团队项目上创建构建定义 因为出现错误 我在项目管理员组中 我被添加到项目集合构建管理员组作为一种可能的解决方法 但我仍然遇到相同的错误 团队项目没有 构建管理员 组 这是一个明显的缺陷项目级组 https msd
  • 我们是否错误地使用了 TFS 2010? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们的团队是 TFS2010 的新手 从历史上看 我们一直使用我们自己的业务需求矩阵 可追溯性矩阵 Excel 电子表格 它具有典型的列 例如
  • Google OAuth 2 和状态参数值需要在重定向 url 中注册

    根据 Google Oauth 2 0 文档的状态参数 指示收到响应后可能对您的应用程序有用的任何状态 Google 授权服务器会往返此参数 因此您的应用程序会收到与发送的值相同的值 可能的用途包括将用户重定向到站点中的正确资源 随机数和跨
  • AngularJS 中的重定向状态

    这是状态配置 angular module grabhutApp config function stateProvider urlRouterProvider stateProvider ACCOUNT state account abs
  • Flutter 错误:找不到正确的 ScopedModel

    我正在尝试在我的 flutter 项目中创建一个范围模型 但我似乎无法弄清楚为什么会出现错误 这个作用域模型实现有什么问题 我有一个带有底部导航器的主页 在个人资料选项卡中 我在树深处的小部件中获取了我需要的关注者列表 因此我尝试使用sco
  • 使用 TFS REST API 获取迭代中的所有工作项

    我正在尝试获取有关当前冲刺中所有用户故事的一些信息 我可以轻松获取当前冲刺的路径 并且给定工作项的 ID 列表 我可以从其中获取所需的内容 但我不确定如何从迭代路径获取这些 ID 我见过使用 C 和查询的示例 但我使用的是 javascri
  • 在 PHP 中的请求之间存储对象而不进行序列化

    我正在用 PHP 编写一个有状态的 Web 应用程序 其中状态可能包含大量对象 目前 我将所有这些对象保存在 SESSION 中 并在请求结束时将它们序列化 这有点痛苦 因为序列化整个会话需要几秒钟 而反序列化则需要更多时间 我想尝试 AP
  • 使用 VSTest 代替 MSTest 运行单元测试用例

    我在 TFS2010 服务器上有一个 x64 平台 C 解决方案 VS2012 我已将一个单元测试项目 也是 x64 附加到此解决方案并创建了一个构建定义 当我对构建进行排队时 它成功了 但单元测试用例不会被执行 这是因为 MSTest 是
  • 克隆一个lua状态

    最近 我在使用C 和Lua进行开发时遇到了很多困难 我的情况是 由于某种原因 我的 C 程序中可能有数千个 Lua 状态 但这些状态在初始化后应该是相同的 当然 我可以为每个状态执行 luaL loadlibs 和 lua loadfile
  • TFS 构建 - 部署/包目标未运行

    我们设置了一个 TFS 构建定义 在其中传递以下额外的 MSBuild 参数 p DeployOnBuild true DeployTarget PipelinePreDeployCopyAllFilesToOneFolder Packag
  • SonarScanner 给出的“MsBuild.exe”在 TFS 2018 上未被识别为内部或外部命令

    我将 SonarQube 添加到现有的 TFS 2018 版本中 我按照此处下载 Community Edition 7 4 的说明进行操作https docs sonarqube org display SCAN Install the
  • 如何提高 Field.set 的性能(也许使用 MethodHandles)?

    我正在编写一些调用的代码Field set https docs oracle com en java javase 11 docs api java base java lang reflect Field html set java l
  • 如何在 Team Foundation Service 中查看早期代码审查的评论?

    我正在将 Microsoft 的在线 Team Foundation Service 与 Visual Studio 2012 Premium 结合使用 几个月前 我为一位同事进行了代码审查 现在同一个项目又进行了一次代码审查 我希望能够查
  • 为什么安装了 TFS Power Tools 后却缺少 tfpt.exe?

    我在 Windows 10 上使用 Visual Studio Community 2017 我安装了 TFS power tools 2011 2013 2015 我读到以前的 Power Tools 已集成到 TFS 2017 中 但任
  • 是否可以从本地文件系统获取TFS更改集编号?

    我有一个解决方案的本地副本 与TFS绑定 是否可以在不调用服务器的情况下从本地文件系统获取当前更改集信息 如果您可以在 assembly AssemblyFileVersion 1 0 0 RevisionNumber 您可以在那里设置更改
  • 覆盖子类中的字段或属性

    我有一个抽象基类 我想声明一个字段或属性 该字段或属性在从该父类继承的每个类中具有不同的值 我想在基类中定义它 以便我可以在基类方法中引用它 例如覆盖 ToString 来表示 此对象的类型为 property field 我有三种方法可以

随机推荐

  • Pandas DataFrame:使用 Lambda 函数将 WKT 转换为新列中的 GeoJSON

    我有一些这种格式的数据 Dep Dest geom EDDF KIAD LINESTRING 3 961389 43 583333 3 968056 43 580 其中包含飞行轨迹 geom 列包含 WKT 格式的坐标 可以通过库转换它们g
  • Coq案例分析和函数返回子集类型的重写

    我正在做一个关于使用子集类型编写经过认证的函数的简单练习 想法是先写一个前驱函数 pred forall n n nat n gt 0 m nat S m n 1 然后使用这个定义给定一个函数 pred2 forall n n nat n
  • 为什么 Java ThreadLocal 变量应该是静态的

    我在这里阅读 Threadlocal 的 JavaDoc https docs oracle com javase 1 5 0 docs api java lang ThreadLocal html https docs oracle co
  • 尾递归是否一定需要累加器?

    例如 由于以下函数没有累加器 它仍然是尾递归吗 belong Ord a gt a gt a gt Bool belong a False belong a h t a h True otherwise belong a t 函数中的所有计
  • 使用 Alamofire 数据填充表单元格

    在一天的大部分时间里 我一直在尝试使用 Alamofire 并使用它来收集一些基于 API 的数据来填充表 我已经成功地将数据获取到我的 iOS 应用程序中 我可以 println 来查看它 但我一生都无法弄清楚使用我的数据填充正确数量的表
  • 将 3D 模型转换为 SceneJS JSON,包括纹理

    Motive我正在尝试使用 WebGL 创建一个小型演示应用程序 我选择使用 SceneJS 因为它看起来是一个简单的框架 并且足以满足此目的 我已经下载了几个 blend 模型 等 并使用 Blender 将它们导出为 Collada d
  • 为什么当目标状态或其父级通过 Promise 解析时 $state.go 不起作用

    我尝试使用解析加载父状态上的一些数据 并在应用程序运行时将用户重定向到默认状态 如下所示 app config stateProvider urlRouterProvider function stateProvider urlRouter
  • 如何在 JavaScript 中反转 JSON?

    task test created Date 1291676980607 task One More Big Test created Date 1291677246057 task New Task created Date 129174
  • 混合命名和未命名函数参数

    我有这个功能来验证 JWT 令牌 不是中间件 它说 package main import net http log fmt github com dgrijalva jwt go func ValidateToken w http Res
  • 如何选中反应测试库中的复选框?

    我似乎找不到太多 任何关于我想要实现的这个非常简单的事情的文档 我有一个下拉菜单display none 当我单击复选框时 它会变成display block我想要断言的是 当我单击复选框时 它会显示下拉列表 expect getByLab
  • SQL Server 2016 枢轴

    我有一个问题sql MS SQL 2016 和pivot功能 首先让我解释一下数据结构 示例tbl Preise 有多种价格 Preis 对于每个区域 Gebiet von Gebiet bis 在继电器 StaffelNr 所有连接到相同
  • Android - 检测长按结束

    我正在开发用户需要长时间按住按钮的应用程序 如何检测用户完成按下或移动触摸位置的时刻 Thanks 我认为最好的选择是对该按钮使用 onLongClickListener 和 onTouchListener 的组合 您需要在触摸侦听器上捕获
  • Rails 4 模型子文件夹

    我在 app models request book 文件夹中创建了模型 但 Book Request Status table name 返回表名称 statuses book request statuses 是正确的表名称 如何获得正
  • 随着扩展方法的出现,抽象类的吸引力是否降低了?

    NET 中扩展方法的一个有趣的方面是您可以将它们应用到接口 对我来说 我可以在接口附近定义功能 而无需定义使程序集混乱的抽象类 这似乎很好 我知道抽象类并没有过时 但是您对在代码中利用这种副作用有何看法 Example public sta
  • 在 Qt 中将多个小部件合并为一个

    我反复使用一对QComboBox and QListWidget在一个项目中 它们的交互是高度耦合的 当在组合框中选择一个项目时 列表会以某种方式进行过滤 我在多个对话框实现中复制粘贴这两个小部件之间的所有信号和插槽连接 我认为这不是一个好
  • 什么是杂注头?缓存页面..和 IE

    因此 我在 php 中发送标头来缓存我的页面 这也集成到我们的 CDN contendo akamai 中 我总是使用这个 pragma cache header 我见过各种例子也使用它 然而 我刚刚检查了 fiddler 来测试我们开发的
  • PHP $_FILES MIME 类型返回 null

    现在我正在尝试编写一个脚本 该脚本仅接受某些音频文件上传到服务器 但是 某些 MIME 类型将返回为 null 这是一些代码片段 PHP allowedExt array audio mp4a latm if isset POST prin
  • 项目同时使用MySQL和PostgreSQL时从JsonStringType切换为JsonBinaryType

    当需要从 PostgreSQL 切换到 MariaDB MySql 时 我遇到了 json 列的问题 我使用 Spring Boot JPA Hibernate hibernate types 52 我想要映射的表是这样的 CREATE T
  • BreakIterator 在 Android 中如何工作?

    我正在 Android 中制作自己的文本处理器 蒙古语的自定义垂直脚本 TextView 我以为我必须自己找到所有换行位置 以便我可以实现换行 但后来我发现BreakIterator https developer android com
  • 如何根据另一个字段的值禁止 TFS 要求工作项中的状态从“建议”更改为“活动”?

    I ve added department approvals to the standard CMMI Template Requirement work item I d like to limit the System State f