Beschränken der Reichweite von Feldregeln nach Zustand, Übergang oder Grund
Aktualisiert: November 2007
Wie unter Definieren des Workflows für Arbeitsaufgaben beschrieben, können Sie Feldregeln verwenden, um das Verhalten von Arbeitsaufgabentypen unabhängig vom Zustand der Arbeitsaufgabe zu bestimmen. Ein für einen neuen und aktiven Fehler erforderliches Feld ist beispielsweise so lange erforderlich, bis der Fehler geschlossen wird.
Die Reichweite von Feldregeln kann auch auf bestimmte Zustände, Übergänge und sogar Gründe beschränkt werden. Die gesamte Regelgruppe, die auf ein bestimmtes Feld angewendet wird, ergibt sich aus vier Untergruppen:
Arbeitsaufgabentyp-spezifisch
Zustandsspezifisch
Übergangsspezifisch
Grundspezifisch
Arbeitsaufgabentyp-spezifische Regeln
Auf den gesamten Arbeitsaufgabentyp angewendete Regeln gelten unabhängig von der Position einer Arbeitsaufgabe im jeweiligen Zustandsmodell. Durch eine <REQUIRED/>-Regel wird beispielsweise Folgendes geprüft:
"MyField Value" != NULL
Zustandsspezifische Regeln
Zustandsspezifische Regeln sind auf eine Arbeitsaufgabeninstanz beschränkt, die sich in einem bestimmten Zustand befindet. Sie suchen wie folgt nach einer zustandsspezifischen Regel:
State field value == "MyState" && "MyField Value" != NULL
Übergangsspezifische Regeln
Übergangsspezifische Regeln sind auf eine Arbeitsaufgabe beschränkt, die einen bestimmten Übergang durchläuft. Sie suchen wie folgt nach einer übergangsspezifischen Regel:
State field value == "ToState" &&
"Previous State Before Edit/New" == "FromState"
&& "MyField Value" != NULL
Grundspezifische Regeln
Grundspezifische Regeln sind auf einen bestimmten Grund in einem bestimmten Übergang beschränkt. Sie suchen wie folgt nach grundspezifischen Regeln:
Reason field == "MyReason" &&
State field value == "ToState" &&
"Previous State Before Edit/New" == "FromState" && "MyField Value" != NULL
Reichweite von Feldregeln
Sie können den Umfang von Feldregeln begrenzen, indem Sie <FIELDS>-Elemente und <FIELD>-Elemente innerhalb der Elemente <STATE>, <TRANSITION> und <REASON> verwenden.
Hinweis: |
---|
Wenn Sie Felder im Workflow auflisten, geben Sie nur den Feldverweisnamen an. |
Beispiel
Im nachstehenden Beispiel wird die folgende Regel definiert: Wenn sich ein Fehler im aktiven Zustand befindet, darf das Feld Customer Severity nicht geändert werden.
<STATE name="Active">
<FIELDS>
<FIELD refname="MyCorp.Severity" />
<READONLY />
</FIELD>
</FIELDS>
</STATE>