Definizione dell'ambito delle regole di campo per stato, transizione o causa
Aggiornamento: novembre 2007
Come descritto in Definizione del flusso di lavoro degli elementi di lavoro, è possibile utilizzare le regole dei campi per determinare il comportamento del tipo di elemento di lavoro a prescindere dallo stato dell'elemento di lavoro. Ad esempio, un campo necessario per la gestione di un bug nuovo e attivo rimane tale fino a quando il bug non è chiuso.
Le regole dei campi possono anche essere limitate ad alcuni stati, ad alcune transizioni e anche ad alcune cause. Il gruppo completo delle regole che si applicano a un particolare campo deriva da quattro sottoinsiemi:
Regole specifiche per il tipo di elemento di lavoro
Regole specifiche per lo stato
Regole specifiche per le transizioni
Regole specifiche per le cause
Regole specifiche per il tipo di elemento di lavoro
Le regole relative agli elementi di lavoro si applicano a prescindere dalla posizione di un elemento di lavoro all'interno del modello di stato. Ad esempio, una regola <REQUIRED/> effettuerà il seguente controllo:
"MyField Value" != NULL
Regole specifiche per lo stato
Le regole specifiche per lo stato sono limitate a un'istanza dell'elemento di lavoro quando questo si trova in un determinato stato. Il controllo relativo a una regola specifica per lo stato è il seguente.
State field value == "MyState" && "MyField Value" != NULL
Regole specifiche per le transizioni
Le regole specifiche per le transizioni sono limitate a un elemento di lavoro sottoposto a una determinata transizione. Il controllo relativo a una regola specifica per le transizioni è il seguente.
State field value == "ToState" &&
"Previous State Before Edit/New" == "FromState"
&& "MyField Value" != NULL
Regole specifiche per le cause
Le regole specifiche per le cause sono limitate a una causa particolare che determina una particolare transizione. Il controllo relativo a una regola specifica per le cause è il seguente.
Reason field == "MyReason" &&
State field value == "ToState" &&
"Previous State Before Edit/New" == "FromState" && "MyField Value" != NULL
Determinazione dell'ambito per le regole dei campi
È possibile definire un ambito per le regole dei campi utilizzando gli elementi <FIELDS> e <FIELD> all'interno degli elementi <STATE>, <TRANSITION> e <REASON>.
Nota: |
---|
Quando vengono elencati i campi per un flusso di lavoro, specificare solo il nome di riferimento del campo. |
Esempio
Nell'esempio riportato di seguito viene definita la seguente regola: quando un bug è nello stato attivo, non consentire la modifica del campo severity del cliente.
<STATE name="Active">
<FIELDS>
<FIELD refname="MyCorp.Severity" />
<READONLY />
</FIELD>
</FIELDS>
</STATE>