Establecer un ámbito de reglas de campo por estado, transición o razón

Actualización: noviembre 2007

Como se describe en Definir el flujo de trabajo de elemento de trabajo, puede utilizar las reglas de campo para determinar el comportamiento del tipo de elemento de trabajo sin tener en cuenta el estado del elemento de trabajo. Por ejemplo, un campo que es necesario para un error que es nuevo y está activo continúa siendo necesario hasta que se cierra el error.

Las reglas de campo también pueden aplicarse a algunos estados, transiciones e incluso las razones. El conjunto completo de reglas que se aplican a un campo determinado es aditivo de cuatro subconjuntos:

  • Específico del tipo de elemento de trabajo

  • Específico del estado

  • Específico de la transición

  • Específico de la razón

Reglas específicas del tipo de elemento de trabajo

Las reglas específicas del tipo de elemento de trabajo se aplican sin tener en cuenta la ubicación de un elemento de trabajo en su modelo de estado. Por ejemplo, una regla <REQUIRED/> realiza la comprobación siguiente:

"MyField Value" != NULL

Reglas específicas del estado

Las reglas específicas del estado se aplican a una instancia del elemento de trabajo cuando está en cierto estado. Una regla específica del estado se comprueba del modo siguiente.

State field value == "MyState" && "MyField Value" != NULL

Reglas específicas de la transición

Las reglas específicas de la transición se aplican a un elemento de trabajo que está experimentando cierta transición. Una regla específica de la transición se comprueba del modo siguiente.

State field value == "ToState"  &&

"Previous State Before Edit/New" == "FromState"

&& "MyField Value" != NULL

Reglas específicas de la razón

Las reglas específicas de la razón se aplican a una razón determinada en una transición determinada. Las reglas específicas de la transición se comprueban del modo siguiente.

Reason field == "MyReason" &&

State field value == "ToState"  &&

"Previous State Before Edit/New" == "FromState" && "MyField Value" != NULL

Ámbito de las reglas de campo

Puede definir el ámbito de las reglas de campo utilizando los elementos <FIELDS> y <FIELD> dentro de los elementos <STATE>, <TRANSITION> y <REASON>.

Nota:

Cuando enumere los campos en el flujo de trabajo, especifique sólo el nombre de referencia de campo.

Ejemplo

En el ejemplo siguiente se define esta regla: Cuando un error está en estado activo, no se permite la modificación del campo customer severity.

<STATE name="Active">
<FIELDS>
<FIELD refname="MyCorp.Severity" />
<READONLY />
</FIELD>
</FIELDS>
</STATE>

Vea también

Otros recursos

Definir el flujo de trabajo de elemento de trabajo