Compartir a través de


Definir valores predeterminados o copiar valores en un campo

Puede especificar un valor predeterminado para un campo, o puede copiar otro valor definido por el sistema o campo. Los valores predeterminados de campo son reglas que controlan cómo se asignan automáticamente los valores de campo. Puede asignar un valor predeterminado de campo mediante uno de los siguientes elementos: COPY, DEFAULT y SERVERDEFAULT. Puede especificar estos elementos como elementos secundarios del elemento FIELD (Definición) o del elemento FIELD (Flujo de trabajo).

Debe agregar estos elementos a la definición de un tipo de elemento de trabajo (WIT). Para obtener más información, vea Modificar o agregar un tipo de elemento de trabajo (WIT) personalizado.

Los elementos COPY y DEFAULT rellenan valores cuando se empieza a editar, pero la regla SERVERDEFAULT rellena un valor cuando el elemento de trabajo se confirma en la base de datos. Esta acción se produce cuando un usuario guarda los cambios en un elemento de trabajo, y el usuario no puede invalidar el valor. Estos campos suelen aparecer como de solo lectura en el formulario del elemento de trabajo. La regla SERVERDEFAULT se usa para campos como "Última modificación por" y "Fecha de última modificación" para garantizar seguimientos de auditoría seguros.

Sintaxis

Puede usar los elementos COPY, DEFAULT y SERVERDEFAULT para copiar un valor de un campo a otro, copiar un valor del servidor en un campo o especificar un valor predeterminado con el fin de definirlo para un campo.

NotaNota

Si se está cambiando el elemento de trabajo, la regla de los elementos COPY o DEFAULT podría seleccionar el valor actual o el anterior desde el campo de origen.

  • Puede especificar un valor para copiarlo de otro campo, el valor del reloj o el nombre del usuario actual. Si especifica value o field para el atributo from, debe especificar el atributo value o field. Cuando un usuario cambia o crea un elemento de trabajo, la regla COPY rellena un valor de campo independientemente de que ya exista un valor en dicho campo.

    <COPY for="userGroupName" not="userGroupName"  from="value | field | clock | currentuser" value="valueToCopy" field="fieldReferenceName/>
    
  • Puede especificar un valor predeterminado para un campo mediante la regla DEFAULT. Cuando un usuario crea o edita un elemento de trabajo, la regla DEFAULT rellena un valor si el campo está vacío. Puede especificar un valor para copiarlo de otro campo, la marca de fecha y hora que registra el reloj del servidor o el nombre del usuario actual. Si un campo ya tiene un valor, se ignora esta regla.

    <DEFAULT for="userGroupName" not="userGroupName" from="value | field | clock | currentuser" value="defaultValue" field="fieldReferenceName" />
    
  • Puede especificar un valor para copiarlo del servidor en un campo cuando se guarde el elemento de trabajo. Cuando un usuario cambia el estado de un elemento de trabajo, la regla SERVERDEFAULT especifica un valor que se copiará en el campo actual a partir de un valor derivado de un componente del servidor. Los elementos DEFAULT y COPY rellenan valores cuando un usuario abre un elemento de trabajo para modificarlo, pero la regla SERVERDEFAULT rellena un valor cuando el elemento de trabajo se confirma en la base de datos. Esta acción se produce cuando el usuario guarda el elemento de trabajo. El usuario no puede invalidar el valor. Estos campos suelen aparecer como de solo lectura en el formulario. La regla SERVERDEFAULT se usa para campos como "Última modificación por" y "Fecha de última modificación" para garantizar seguimientos de auditoría seguros.

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

Cada uno de estos elementos de regla especifica un atributo from="fromType" que identifica el origen del valor. En función del valor fromType, podrían necesitarse otros atributos. La tabla siguiente describe todos los atributos a los que hacen referencia los elementos de regla COPY, DEFAULT y SERVERDEFAULT.

Atributo

Descripción

for

Opcional. Especifica el nombre de un usuario o grupo en Team Foundation al que se le aplica la regla. Los nombres válidos constan de una cadena de texto que contiene entre 1 y 255 caracteres.

Valor de patrón: ^[^\\]+\\[^\\]+$

Ejemplo de valor de patrón: Domain\UserID

not

Opcional. Especifica el nombre de un usuario o grupo en Team Foundation al que no se le aplica la regla. Los nombres válidos constan de una cadena de texto que contiene entre 1 y 255 caracteres.

Valor de patrón: ^[^\\]+\\[^\\]+$

Ejemplo de valor de patrón: Domain\UserID

from

Requerido. Especifica si se debe copiar el valor predeterminado del atributo value, el atributo field, el reloj del sistema o el usuario actual. Si especifica value o field para el atributofrom, debe especificar el atributo value o field respectivamente. Puede especificar los siguientes valores:

  • clock: copia la hora del reloj del sistema. Usa la fecha y la hora actuales como valor. No son necesarios otros atributos. En el caso de las reglas COPY y DEFAULT, el valor se toma del reloj del equipo local. En el caso de la regla SERVERDEFAULT, el valor se toma del reloj del servidor a la hora de confirmación. Solo es válido para campos DateTime.

  • currentuser: copia el nombre del usuario que ha iniciado sesión. Use como valor el nombre de usuario corto del usuario actual. No son necesarios otros atributos. Solo es válido para campos de cadena.

  • field: copia el valor que está definido para el atributo field que especifique. Requiere un atributo field="abc". De manera predeterminada no se realiza nada si está vacío el campo "from" especificado. El atributo field solo se usa para las reglas COPY y DEFAULT.

  • value: copia el valor del atributo value especificado.

value

Opcional. Especifica el valor que se copiará en el campo cuando se especifique value para el atributo from. Los valores válidos constan de una cadena de texto que contenga entre 1 y 255 caracteres.

El valor que va a copiarse puede estar vacío.

field

Opcional. Especifica el nombre del campo cuyo valor se copiará en el campo cuando field se especifique para el atributo from. Debe definir este atributo si el atributo from tiene "field" como valor.

Nombre de referencia del campo que se va a copiar. El nombre de referencia debe coincidir con el nombre de referencia tal y como se define en el elemento FIELD (Definición). Para obtener más información, vea Referencia de elemento FIELD (Definición).

Valor de modelo: ^[a-zA-Z_][a-zA-Z0-9_]*(\.[a-zA-Z0-9_]+)+$

Ejemplo de un valor de modelo: Company.Division.IssueType

Volver al principio

Definir un valor predeterminado

El ejemplo siguiente establece P3 como valor predeterminado para el campo Prioridad.

<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>

Borrar un campo automáticamente

En el ejemplo siguiente, se borra el campo Estado.

<FIELD refname="MyCorp.Status" name="Status" type="String">
    <COPY from="value" value="" />
</FIELD>

Guardar un valor de campo

En el ejemplo siguiente, se guarda el nombre del usuario que cambió un elemento de trabajo por última vez.

<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>

Especificar el reloj como valor predeterminado

En el ejemplo siguiente, el valor de un campo usa la fecha actual, pero los usuarios pueden cambiar dicho valor.

<FIELD refname="MyCorp.FoundOn" name="Found On" type="DateTime">
    <HELPTEXT>Defines when a bug was found.</HELPTEXT>
    <DEFAULT from="clock" />
</FIELD>
NotaNota

En el caso de los valores que contienen un apóstrofo, como "Won’t Fix", debe usar comillas dobles en el XML, como muestra el ejemplo siguiente:

<LISTITEM value="Won’t Fix"/>

Vea también

Conceptos

Referencias de todos los elementos FIELD de XML

Otros recursos

Aplicar reglas a un campo de elemento de trabajo

Definir campos de elementos de trabajo