是否有可能将文字添加到优先级中?拥有像“1 - Blocker”,“2 - Critical”,“3 - High”等......这样的值会很好。
尝试将“优先级”字段(refname =“Microsoft.VSTS.Common.Priority”)的“ALLOWEDVALUES”更改为
<ALLOWEDVALUES>
<LISTITEM value="1 - Blocker" />
<LISTITEM value="2 - Critical" />
<LISTITEM value="3 - High" />
<LISTITEM value="4..." />
<LISTITEM value="5..." />
<LISTITEM value="6..." />
</ALLOWEDVALUES>
给出一个错误,该字段应为整数。
我看到几个选项: 1.将字段类型更改为字符串 2.使用'string'类型创建一个单独的自定义字段“MyPriority”。
您能告诉我们什么是最佳选择(从长期使用角度来看)?
非常感谢!
答案 0 :(得分:4)
您无法更改现有字段的类型。我过去所做的是添加一个新的字段,显示在表单上。然后在字段中添加一些逻辑以复制
将以下文字添加到FIELDS部分
<FIELD name="My Priority" refname="My.Priority" type="String" reportable="dimension">
<REQUIRED />
<ALLOWEDVALUES>
<LISTITEM value="1 - Blocker" />
<LISTITEM value="2 - Critical" />
<LISTITEM value="3 - High" />
<LISTITEM value="4..." />
<LISTITEM value="5..." />
<LISTITEM value="6..." />
</ALLOWEDVALUES>
<DEFAULT from="value" value="3 - High" />
</FIELD>
并将默认优先级字段更改为
<FIELD name="Priority" refname="Microsoft.VSTS.Common.Priority" type="Integer" reportable="dimension">
<REQUIRED />
<ALLOWEDVALUES>
<LISTITEM value="1" />
<LISTITEM value="2" />
<LISTITEM value="3" />
<LISTITEM value="4" />
</ALLOWEDVALUES>
<DEFAULT from="value" value="2" />
<WHEN field="My.Priority" value="1 - Blocker">
<COPY from="value" value="1" />
</WHEN>
<WHEN field="My.Priority" value="2 - Critical">
<COPY from="value" value="2" />
</WHEN>
<WHEN field="My.Priority" value="3 - High">
<COPY from="value" value="3" />
</WHEN>
<WHEN field="My.Priority" value="4...">
<COPY from="value" value="4" />
</WHEN>
</FIELD>
在FORMS部分中找到优先级并将其更改为使用My.Priority:
<Control Type="FieldControl" FieldName="My.Priority" Label="Pri&ority:" LabelPosition="Left" />
答案 1 :(得分:1)
我认为你不能改变现有领域的类型。所以第二个选项是唯一的选择。在我的公司,我广泛定制了工作项类型,并使用了很多自定义字段。它运作良好。话虽如此,您需要使用现有的优先级数据(如果有的话)加载新字段。
将数据从Microsoft.VSTS.Common.Priority字段复制到“新自定义字段”的简单存储过程应该可以完成这项工作。 WorkItemsLatestUsed表应该是唯一用于此目的的表。