Compartir a través de


Utilizar las reglas <WHEN*>, <DEFAULT> y <COPY>

Actualización: noviembre 2007

En esta sección se describe el comportamiento y las interacciones que se esperan cuando se utilizan las reglas <DEFAULT>, <COPY> y <WHEN*> Los pasos siguientes muestran, en la secuencia apropiada, las interacciones que realizan Team Foundation Server y el usuario de un formulario de elemento de trabajo. El usuario realiza sólo los pasos 1, 8 y 13.

  1. Con la interfaz de usuario de Visual Studio, un usuario crea un nuevo elemento de trabajo o modifica uno existente.

  2. Rellenar los valores predeterminados del campo. Para todos los campos, utilice cualquier regla <DEFAULT> que esté fuera de <WHEN*>.

  3. Copiar valores de campos. Para todos los campos, utilice cualquier regla <COPY> que esté fuera de <WHEN*>.

  4. Para todos los campos con una regla <WHEN> coincidente, haga primero las reglas <DEFAULT> y después las reglas <COPY> en el interior.

  5. Para todos los campos con una regla <WHENNOT> coincidente, haga primero las reglas <DEFAULT> y después las reglas <COPY> en el interior.

    Nota:

    En Team Foundation Server siempre se procesan las reglas <WHEN> antes de las reglas <WHENNOT>.

  6. Para todos los campos cuyos valores hayan cambiado desde el paso 1 y que contengan reglas <WHENCHANGED>, haga primero las reglas <DEFAULT> y después las reglas <COPY> en el interior.

  7. Permitir que el usuario inicie la edición.

  8. El usuario cambia un valor de campo y después desplaza el foco del campo.

  9. Provocar las reglas <WHEN> para ese campo que coincidan con el nuevo valor.

  10. Provocar las reglas <WHENNOT> para ese campo que coincidan con el nuevo valor.

  11. Provocar las reglas <WHENCHANGED> para ese campo que coincidan con el nuevo valor.

  12. Devolver la capacidad de edición al usuario.

  13. El usuario guarda los cambios en la base de datos.

  14. Para todos los campos, realice operaciones <SERVERDEFAULT> que estén definidas para el campo directa o indirectamente bajo una regla <WHEN> o <WHENNOT>.

Procesar pulsaciones de tecla

Cuando un usuario modifica un formulario de elemento de trabajo a través de la interfaz de usuario, se establece un nuevo valor para cada pulsación de tecla que se introduce en un campo. Esto significa que puede producirse inesperadamente una regla <WHEN* cada vez que se cumplen las condiciones de requisito previo de la regla.

En el siguiente ejemplo XML, se vaciará SubStatus según escriba “Approved Again” en el campo Status, porque la regla <WHEN*> se produce en cuanto el usuario escribe la letra "e" de Approved, incluso aunque el valor final que se espera no sea "Approve". Por esta razón, considere cuidadosamente la utilización de reglas condicionales.

<FIELD refname="MyCorp.SubStatus" />
<WHEN field="MyCorp.Status" value="Approve" >
<EMPTY />
</WHEN>
</FIELD>

Vea también

Conceptos

Reglas de campo disponibles

Utilizar las condiciones de los elementos <WHEN>, <WHENNOT> y <WHENCHANGED>