所有 FIELD XML 元素引用

使用此主题查找 FIELD 元素的语法或其中一个子元素。

可以指定 FIELD(定义)元素容器中的这些元素。 可以通过指定 FIELD(定义)元素在 FIELDS(定义)元素内来添加工作项类型 (WIT) 的字段。 可以将这些元素指定在 WIT 定义内或者作为全局工作流的一部分。

可以添加子元素以指定字段的行为、定义默认值或定义选取列表的值。 可以彼此结合使用字段规则元素。 可以界定大部分规则以应用于一个或多个用户或组或者忽略一个或多个用户或组的规则。

FIELD(定义)容器元素

你可以使用以下语法为工作项类型定义数据字段。 此示例显示 FIELD(定义)元素格式和所有可选的子元素。 有关详细信息,请参阅FIELD(定义)元素引用

<FIELD name="fieldDisplayName" refname="fieldReferenceName" type="String | Integer | Double | DateTime | PlainText | HTML | History | TreePath | GUID "
syncnamechanges="true | false" reportingname="reportingDisplayName" reportingrefname="reportingReferenceName"
reportable="Dimension | Detail | Measure" formula="avg" >
   <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
   <ALLOWEXISTINGVALUE />
   <CANNOTLOSEVALUE />
   <COPY />
   <DEFAULT />
   <EMPTY />
   <FROZEN />
   <HELPTEXT> . . . </HELPTEXT>
   <MATCH />
   <NOTSAMEAS />
   <PROHIBITEDVALUES /> . . . </PROHIBITEDVALUES>
   <READONLY />
   <REQUIRED />
   <SERVERDEFAULT />
   <SUGGESTEDVALUES /> . . . </SUGGESTEDVALUES>
   <VALIDUSER />
   <WHEN>> . . . </WHEN>
   <WHENNOT> . . . </WHENNOT>
   <WHENCHANGED> . . . </WHENCHANGED>
   <WHENNOTCHANGED> . . . </WHENNOTCHANGED>
</FIELD>

FIELD 子元素

使用子元素对可输入字段的数据设定各种限制。 你可以为选取列表(下拉菜单)指定值、设置默认值、清除条目或限制更改。 下表提供了每个子元素的语法结构。

若要了解如何使用这些元素,请参阅将规则应用于工作项字段。 在对系统字段应用大多数字段时存在限制。 所有子元素可选。

元素

说明和语法

ALLOWEDVALUES

定义用户可以在工作项表单和查询编辑器的字段列表中指定的值列表。 用户必须指定你所列出的其中一个值。

<ALLOWEDVALUES for="userGroupName" not="userGroupName" 
expanditems="true | false" filteritems="excludegroups">
   <GLOBALLIST name="globalListName">
      <LISTITEM value="Name" />
. . . 
   </GLOBALLIST>
</ALLOWEDVALUES>

有关详细信息,请参阅定义选取列表

ALLOWEXISTINGVALUE

指定字段可保留现有值,即使它不再位于选取列表中。 所有新的字段值都必须位于列表中。

<ALLOWEXISTINGVALUE />

有关详细信息,请参阅定义选取列表

CANNOTLOSEVALUE

指定用户在已指定值后无法清除所有值的字段。 字段包含值后,字段必须始终含有非 NULL 值。

<CANNOTLOSEVALUE for="userGroupName" not="userGroupName" />

有关更多信息,请参阅应用字段规则

COPY

当用户在创建或修改工作项时,将指定值复制到字段。

<COPY for="userGroupName" not="userGroupName"  
from="value | field | clock | currentuser" 
value="valueToCopy" field="fieldReferenceName" />

有关详细信息,请参阅定义默认值或将值复制到字段

DEFAULT

当用户在创建或修改工作项时,为空的字段指定值。 如果字段已经具有值,则忽略默认规则。

<DEFAULT for="userGroupName" not="userGroupName" 
from="value | field | clock | currentuser" 
value="value to copy" field="field reference name" />

有关详细信息,请参阅定义默认值或将值复制到字段

EMPTY

清除其包含的任何值的字段。 EMPTY 规则也会使字段处于只读状态,你不应该将其配合 READONLY 规则一起使用。

当用户保存工作项时会清除字段值,你无法指定任何值。 该规则主要在状态转换期间使用,以清除应用于项转换为的状态的字段。

<EMPTY for="userGroupName" not=" userGroupName" />

有关更多信息,请参阅应用字段规则

FROZEN

提交更改后,指定你无法将字段更改为非空值。 一旦用户将工作项和值保存在该字段,该值将无法再被修改。

<FROZEN for="userGroupName" not="userGroupName" />

有关更多信息,请参阅应用字段规则

HELPTEXT

定义文本在用户指向工作项表单的字段时出现。

tooltipText:包含 1 到 255 个字符的文本字符串。

<HELPTEXT>tooltipText </HELPTEXT>

有关更多信息,请参阅应用字段规则

MATCH

定义 String 类型字段的值必须匹配的模式。

<MATCH pattern="patternValue" for="userGroupName" not="userGroupName" />

有关详细信息,请参阅将模式匹配应用于字符串字段

NOTSAMEAS

指定字段未分配有和另一指定字段分配到的相同的值。 field 特性的值必须为字段有效的引用名称。

<NOTSAMEAS field="fieldReferenceName" for="userGroupName" not="userGroupName" />

有关更多信息,请参阅应用字段规则

PROHIBITEDVALUES

定义字段无法包含的值列表。 如果字段包含被禁止的值,则用户无法保存工作项。

<PROHIBITEDVALUES for="userGroupName" not="userGroupName" 
expanditems="true | false" filteritems="excludegroups">
   <GLOBALLIST name="globalListName">
      <LISTITEM value="Name" />
. . . 
   </GLOBALLIST>
</PROHIBITEDVALUES>

有关详细信息,请参阅定义选取列表

READONLY

指定无法修改分配到字段的值。

<READONLY for="userGroupName" not="userGroupName" />

备注

请勿将该元素与 EMPTY 元素一起使用,因为 EMPTY 也会使字段处于只读状态。如果结合这些元素,结果将会不一致。

有关更多信息,请参阅应用字段规则

REQUIRED

指定用户必须为字段指定值。 必填字段不得为空。 用户无法保存工作项,除非已对所有必填字段分配了值。

<REQUIRED for="userGroupName" not="userGroupName" />

有关更多信息,请参阅应用字段规则

SERVERDEFAULT

当用户在保存工作项时,将指定服务器值复制到字段。 这些字段通常在窗体上显示为只读。

<SERVERDEFAULT for="userGroupName" not="userGroupName" 
from="clock | currentuser" />

有关详细信息,请参阅定义默认值或将值复制到字段

SUGGESTEDVALUES

定义用户可以在工作项表单和查询编辑器的字段列表中指定的建议值列表。 用户可以指定除了建议值之外的值。

<SUGGESTEDVALUES for="userGroupName" not="userGroupName" 
expanditems="true | false" filteritems="excludegroups">
   <GLOBALLIST name="globalListName">
      <LISTITEM value="Name" />
. . . 
   </GLOBALLIST>    
</SUGGESTEDVALUES>

有关详细信息,请参阅定义选取列表

VALIDUSER

阻止属于你指定的组的用户修改工作项。 默认组为 Team Foundation 有效用户组。

所有特性都是可选的。 所有特性必须包含具有 1 到 255 个字符的文本字符串。 可以使用标记指定组。

< VALIDUSER group="groupName" for="userName" not="userName" />

有关更多信息,请参阅应用字段规则

WHEN

指定在另一个字段具有特定值时要应用于当前字段的一个或多个规则。 父 FIELD 元素定义当前字段。

<WHEN field="fieldReferenceName" value="value">
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>
</WHEN>

有关详细信息,请参阅分配基于条件的值和规则

WHENNOT

当另一个字段没有特定值时,指定应用于当前字段的一个或多个规则。 父 FIELD 元素定义当前字段。

<WHENNOT field="fieldReferenceName" value="value">
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>
</WHENNOT>

有关详细信息,请参阅分配基于条件的值和规则

WHENCHANGED

在修订工作项期间更改另一字段时,指定应用于当前字段的一个或多个规则。 父 FIELD 元素定义当前字段。

<WHENCHANGED field="fieldReferenceName" >
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>      
</WHENCHANGED>

有关详细信息,请参阅分配基于条件的值和规则

WHENNOTCHANGED

在修订工作项期间未更改另一字段时,指定应用于当前字段的一个或多个规则。 父元素定义当前字段。

<WHENNOTCHANGED field="fieldReferenceName">
    <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
    <ALLOWEXISTINGVALUE> . . . <ALLOWEXISTINGVALUE>
    <CANNOTLOSEVALUE> . . . </CANNOTLOSEVALUE>
    <COPY> . . . </COPY>
    <DEFAULT> . . . </DEFAULT>
    <EMPTY> . . . </EMPTY>
    <FROZEN> . . . </FROZEN>
    <MATCH> . . . </MATCH>
    <NOTSAMEAS> . . . </NOTSAMEAS>
    <PROHIBITEDVALUES> . . . </PROHIBITEDVALUES>
    <READONLY> . . . </READONLY>
    <REQUIRED> . . . </REQUIRED>
    <SERVERDEFAULT> . . . </SERVERDEFAULT>        
    <SUGGESTEDVALUES> . . . </SUGGESTEDVALUES>
    <VALIDUSER> . . . </VALIDUSER>
</WHENNOTCHANGED>

有关详细信息,请参阅分配基于条件的值和规则

GLOBALLIST 和 LISTITEM 子元素

可以指定 GLOBALLISTLISTITEM 元素作为 ALLOWEDVALUES、SUGGESTEDVALUES 和 PROHIBITEDVALUES 元素的子元素。 可以使用这些元素枚举出现的枚举值列表。 用户从选取列表或下拉菜单选择值。 有关详细信息,请参阅定义全局列表

元素

描述

GLOBALIST

定义为团队项目集合存储且可供集合中所有团队项目使用的 LISTITEM 元素集。

<GLOBALLIST name="globalListName">
    <LISTITEM> . . . </LISTITEM>
</GLOBALLIST> 

globalListName:包含 1 到 255 个字符的文本字符串。

GLOBALLISTGLOBALLISTS 元素的必需子元素,以及 ALLOWEDVALUES、SUGGESTEDVALUES 和 PROHIBITEDVALUES 元素的可选子元素。 可以在工作流定义、全局列表定义或全局工作流中定义全局列表。

LISTITEM

定义有效列表值。

<LISTITEM value="listName" />

LISTITEMGLOBALLIST 的必需子元素,以及 ALLOWEDVALUES、SUGGESTEDVALUES 和 PROHIBITEDVALUES 元素的可选子元素。

由 FIELD 子元素指定的特性。

可以限定要应用于或不应用于组或用户集的大部分 FIELD 规则,方法是通过包括 for 或 not 特性。 有关更多信息,请参阅应用字段规则

特性

语法

描述

expanditems

expanditems="true | false"

可选。 指定 LISTITEM 元素标识的组是否应该展开以包括列表中的从属组。 此特性的默认值为 true。

filteritems

filteritems="excludegroups"

可选。 指定仅组的成员而非组名称包括在列表中。 此特性仅允许的值为 excludegroups。

for

for="userGroupName"

可选。 指定对其应用规则的 Team Foundation 中的用户或组名。 有效值包含具有 1 到 255 个字符的文本字符串。

not

not="userGroupName"

可选。 指定不对其应用规则的 Team Foundation 中的用户或组名。 有效值包含具有 1 到 255 个字符的文本字符串。

from

from="value | field | clock | currentuser"

必需。 指定从其中复制值或指定默认值的值来源。 以下为有效值:

  • clock:将系统时钟的当前日期和事件复制到 DateTime 字段。不需要其他特性。 对于 COPYDEFAULT 规则,该值来自本地计算机时钟时间。 对于 SERVERDEFAULT,该值来自用户保存工作项时的服务器时钟。

  • currentuser:复制当前登录的用户的名称。 将当前用户的短用户名作为值使用。 不需要其他特性。 用于字符串字段。

  • field:复制你指定的 field 特性的值。 需要 field="abc" 特性。 默认情况下,如果指定的“from”字段为空,则不执行任何操作。 field 特性仅用于 <COPY> 和 <DEFAULT> 规则。

  • value:复制你指定的 value 特性的值。 使用你指定的字符串常量的值。 需要 value="abc" 特性。 value 仅用于 <COPY> 和 <DEFAULT> 规则。

如果指定“value”或“field”,则必须还要分别包括值或字段特性。

field

field="fieldReferenceName"

可选。 当为 from 特性指定 field 时,指定其值将被复制到字段的字段名。

pattern

pattern="patternValue"

必需。 仅针对字符串强制实施基本模式匹配。 patternValue 是包含 1 到 255(含 1 和 255)个字符的字符串。 该字符串不得包含反斜杠字符 (\)。 字符串中的每个字符可解释为文本,但以下六个元字符除外:

  • “A”或“a”表示单个字母字符。

  • “N”或“n”表示单个数字字符。

  • “X”或“x”表示单个字母数字字符。

模式值:^[^\\]*$

例如,pattern="xxxxx.nn.nn" 匹配任意五个字母数字字符,然后是一个句点,然后是两个数字字符,然后又是一个句点,然后是另外两个数字字符。

value

value="valueToCopy"

可选。 当为 from 特性指定 value 时,指定要复制到字段的值。

请参见

概念

定义和修改工作项字段

更改工作项类型的工作流