【问题标题】:How to order rules in work item field如何在工作项字段中排序规则
【发布时间】:2016-11-06 06:14:15
【问题描述】:

有没有办法按特定顺序应用规则?

仅当从另一个字段中选择两个特定值时,我才想提供 YesNo...我在 XML 中的规则如下所示:

  <WHEN field="xxx.yyy.FoundInVersion" value="xxx">
    <ALLOWEXISTINGVALUE />
    <ALLOWEDVALUES not="[project]\xxx" expanditems="true">
      <LISTITEM value="No" />
      <LISTITEM value="Yes" />
    </ALLOWEDVALUES>
  </WHEN>
  <WHEN field="xxx.yyy.FoundInVersion" value="yyy">
    <ALLOWEXISTINGVALUE />
    <ALLOWEDVALUES not="[project]\xxx" expanditems="true">
      <LISTITEM value="No" />
      <LISTITEM value="Yes" />
    </ALLOWEDVALUES>
  </WHEN>
  <ALLOWEDVALUES not="[project]\MigrationAccounts" expanditems="true">
    <LISTITEM value="No" />
  </ALLOWEDVALUES>

这行得通。如果两个 WHEN 中的任何一个都正确,则允许 Yes 和 No。

但是 TFS 以某种方式自动(在不同/目标实例上)将最后一个 ALLOWEDVALUES 规则移动到顶部,并且只有 No 是允许和可选择的,即使我在另一个中选择了值“yyy”或“xxx”之一字段。

它似乎缓存在某个地方,或者尝试变得聪明或某事。

如何根据自己的顺序强制/解决规则?

【问题讨论】:

    标签: tfs tfs-2015 workitem tfs-process-template


    【解决方案1】:

    规则通常按照它们列出的顺序进行处理。但是,当您使用 WHEN*DEFAULTCOPY 元素时,可能会应用其他行为。

    当您将多个规则应用于一个字段时,您可以了解如何评估规则。 如何评估规则并不是完全确定的。 本节描述了使用 WHEN*DEFAULTWHEN* 时的预期行为和交互strong>COPY 规则。

    以下步骤以正确的顺序显示了 TFS 执行的交互以及工作项表单的用户执行的交互。用户只执行步骤 1、8 和 13。

    1.从 Team Foundation 客户端——例如 Visual Studio、Team Explorer、Team Web Access 或 Team Explorer Everywhere——,用户创建一个新的 工作项或编辑现有工作项。

    2.填写字段默认值。对于所有字段,请使用 WHEN* 规则之外的任何 DEFAULT 规则。

    3.复制字段值。对于所有字段,请使用 WHEN* 子句之外的任何 COPY 规则。

    4.对于WHEN规则匹配的所有字段,先做DEFAULT,再COPY里面的规则。

    5.对于所有WHENNOT规则匹配的字段,先做DEFAULT,再COPY里面的规则。

    TFS 总是在 WHENNOT 规则之前处理 WHEN 规则。

    6.对于自第 1 步以来其值已更改且包含 WHENCHANGED 规则的所有字段,首先执行 DEFAULT,然后执行 COPY 规则 里面。

    7.允许用户开始编辑。

    8.用户更改字段值,然后将焦点从该字段移开。

    9. 为该字段提出与新值匹配的任何 WHEN 规则。

    10.为该字段提出任何与新值匹配的 WHENNOT 规则。

    11.为该字段提出任何匹配新值的 WHENCHANGED 规则。

    12.将编辑能力归还给用户。

    13.用户将更改保存到数据库中。

    14.对于所有字段,直接或间接在 WHEN 或 WHENNOT 下执行为字段定义的 SERVERDEFAULT 操作 规则。

    【讨论】:

      猜你喜欢
      • 2021-03-13
      • 1970-01-01
      • 1970-01-01
      • 2015-09-18
      • 2014-09-19
      • 2020-01-20
      • 2021-03-01
      • 2019-07-15
      • 1970-01-01
      相关资源
      最近更新 更多