如果两个字段具有特定值,则在TFS中分配用户

时间:2012-05-24 12:41:06

标签: tfs tfs2010 tfs-process-template

在解决方案不适用的情况下,使用其他信息更新了问题。

对不起,我将不得不再次提出这个问题。我的目标是为Assigned To字段实现一些TFS自动化。将填充此字段,以选择模块和类别字段中的某些值。

有没有办法在TFS WI XML中创建可以处理此问题的“And”运算符?几个月前我问了这个问题,并得到了答复。不幸的是,我没有时间实施它,因为有几个项目来自管道。当我尝试实现解决方案并导入WIT时,TFS会抛出一个“WHEN”有一个无效的子元素“WHEN”错误。

示例:

If "Module" field = value X and "Platform" field = value Y, then "Assigned to" field is set to specific user

鉴于解决方案不起作用:

<FIELD name="QA Owner" refname="<QAOwnerFieldReference>" type="String">
<VALIDUSER />
<WHEN field="<ModuleReferenceName>" value="Compliance">
<WHEN field="<AnotherFieldName>" value="SomeValue">
<DEFAULT from="value" value="<QATester>" />
</WHEN>
</WHEN>
</FIELD>

我确实有一个想法,是否有可能将第二个“WHEN”条件与第一个合并,这样:

<WHEN field="<ModuleReferenceName>" value="Compliance" && WHEN field="<AnotherFieldName>" value="SomeValue">

上一篇文章的链接:Assigning users in TFS if two fields have specific values

2 个答案:

答案 0 :(得分:2)

您需要做的是级联两个条件,以创建效果。不理想,但你会做什么:)

以下是您的WIT字段定义:

<FIELD name="QA Owner" refname="<QAOwnerFieldReference>" type="String">
<VALIDUSER />
<WHEN field="<ModuleReferenceName>" value="Compliance">
<WHEN field="<AnotherFieldName>" value="SomeValue">
<DEFAULT from="value" value="<QATester>" />
</WHEN>
</WHEN>
</FIELD>

答案 1 :(得分:1)

我能找到的唯一可行的解​​决方案是创建一个自定义控件,它将在保存工作项之前处理一组规则

查看Gregg Boer的博客short guide to creating WI custom controls。请注意,这需要安装在每个桌面客户端计算机上。

请注意,您需要为 BeforeUpdateDatasource 事件编写处理程序。

此外,如果您需要在网络上运行此功能,则需要创建一个网络访问自定义控件(请参阅Ewald Hoffman关于WA控件的post)。