定义默认值或将值复制到字段
更新:2011 年 1 月
可以指定字段的默认值,也可以复制另一个字段的值或系统定义的值。 字段默认值是控制如何自动指派字段值的规则。 可以使用以下元素之一指派字段默认值:COPY、DEFAULT 和 SERVERDEFAULT。 可以将这些元素指定为 FIELD(定义)元素或 FIELD(工作流)元素的子元素。
COPY 和 DEFAULT 元素在开始编辑时填写值,而 SERVERDEFAULT 规则在向数据库提交工作项时填写值。 此操作在用户保存对工作项所做更改时发生,且用户无法重写该值。 此类字段通常在工作项窗体中以只读形式出现。 SERVERDEFAULT 规则用于“上次更改者”和“上次更改日期”等字段,以支持安全的审核记录。
主题内容
定义默认值的语法结构
定义默认值
自动清除字段
保存字段值
指定时钟作为默认值
定义默认值的语法结构
可以使用 COPY、DEFAULT 和 SERVERDEFAULT 元素将值从一个字段复制到另一个字段,将服务器值复制到字段,或者指定要为字段定义的默认值。
提示
如果正在更改工作项,则 COPY 或 DEFAULT 元素规则可以选择源字段中的当前值或以前的值。
可以指定要从其他字段复制的值、时钟的值或当前用户的名称。 如果为 from 特性指定 value 或 field,则必须指定 value 或 field 特性。 用户更改或创建工作项时,无论字段中已存在何值,COPY 规则都会填写一个字段值。
<COPY for="userGroupName" not="userGroupName" from="value | field | clock | currentuser" value="valueToCopy" field="fieldReferenceName/>
可以使用 DEFAULT 规则为字段指定默认值。 用户创建或编辑工作项时,如果该字段为空,则 DEFAULT 规则将填写一个值。 可以指定要从其他字段复制的值、服务器时钟记录的日期/时间戳或当前用户的名称。 如果字段已具有值,则忽略此规则。
<DEFAULT for="userGroupName" not="userGroupName" from="value | field | clock | currentuser" value="defaultValue" field="fieldReferenceName" />
保存工作项时,可以指定要从服务器复制到字段的值。 用户更改工作项的状态时,SERVERDEFAULT 规则会指定要从服务器组件派生的值复制到当前字段的值。 DEFAULT 和 COPY 元素在用户打开工作项进行修改时填写值,而 SERVERDEFAULT 规则是在向数据库提交工作项时填写值。 此操作会在用户保存工作项时发生。 用户不能重写该值。 这些字段通常在窗体中以只读形式显示。 SERVERDEFAULT 规则用于“上次更改者”和“上次更改日期”等字段,以支持安全的审核记录。
<SERVERDEFAULT for="userGroupName" not="userGroupName" from="clock | currentuser" />
这些规则元素中的每一个都指定标识值来源的 from="fromType" 特性。 根据 fromType 值,可能需要其他特性。 下表描述了 COPY, DEFAULT, and SERVERDEFAULT 规则元素引用的所有特性。
特性 |
说明 |
---|---|
for |
可选。 指定 Team Foundation 中应用规则的用户或组的名称。 有效名称是包含 1 至 255 个字符的文本字符串。 模式值:^[^\\]+\\[^\\]+$ 模式值示例:域\用户 ID |
not |
可选。 指定 Team Foundation 中不应用规则的用户或组的名称。 有效名称是包含 1 至 255 个字符的文本字符串。 模式值:^[^\\]+\\[^\\]+$ 模式值示例:域\用户 ID |
from |
必选。 指定是从 value 特性、field 特性、系统时钟还是当前用户复制默认值。 如果为 from 特性指定 value 或 field,则必须分别指定 value 或 field 特性。 可以指定以下值:
|
value |
可选。 为 from 特性指定 value 时,指定要复制到字段中的值。 有效值是包含 1 至 255 个字符的文本字符串。 要复制的值可以为空。 |
field |
可选。 为 from 特性指定 field 时,指定其值要复制到字段中的字段名称。 如果 from 特性的值是“field”,则必须定义此特性。 要复制的字段的引用名称。 该引用名称必须与 FIELD(定义)元素中定义的引用名称相匹配。 有关更多信息,请参见 FIELD(定义)元素。 模式值:^[a-zA-Z_][a-zA-Z0-9_]*(\.[a-zA-Z0-9_]+)+$ 模式值示例:公司.部门.问题类型 |
返回页首
定义默认值
以下示例将 P3 设置为“Priority”字段的默认值。
<FIELD refname="MyCorp.Priority" name="Priority" type="String">
<HELPTEXT>Specify the severity of the problem</HELPTEXT>
<ALLOWEDVALUES>
<LISTITEM value="P1"/>
<LISTITEM value="P2"/>
<LISTITEM value="P3"/>
</ALLOWEDVALUES>
<DEFAULT from="value" value="P3"/>
</FIELD>
返回页首
自动清除字段
在下面的示例中,清除了状态字段。
<FIELD refname="MyCorp.Status" name="Status" type="String">
<COPY from="value" value="" />
</FIELD>
返回页首
保存字段值
在下面的示例中,保存最近更改了工作项的用户的用户名。
<FIELD refname="System.Last Changed By" name="Last Changed By" type="String">
<HELPTEXT>The name of the user who most recently modified this bug</HELPTEXT>
<VALIDUSER group="[Project]\MyProjectMembers" />
<SERVERDEFAULT from="currentuser" />
</FIELD>
返回页首
指定时钟作为默认值
在下面的示例中,字段的值使用当前日期,但用户可以更改该值。
<FIELD refname="MyCorp.FoundOn" name="Found On" type="DateTime">
<HELPTEXT>Defines when a bug was found.</HELPTEXT>
<DEFAULT from="clock" />
</FIELD>
提示
对于包含撇号的值(例如“Won’t Fix”),必须在 XML 中使用双引号,如下面的示例所示:
<LISTITEM value="Won’t Fix"/>
返回页首
请参见
概念
其他资源
修订记录
日期 |
修订记录 |
原因 |
---|---|---|
2011 年 1 月 |
为所有默认元素提供了语法以及为示例提供了更多上下文。 |
信息补充。 |