次の方法で共有


状態、遷移、または理由を使ってフィールドの規則をスコープする

更新 : 2007 年 11 月

作業項目ワークフローの定義」で説明したとおり、フィールドの規則を使って、作業項目の状態に関係なく作業項目の種類の動作を決定できます。たとえば、アクティブな新規のバグに必須のフィールドは、バグが終了するまで必須であり続けます。

フィールドの規則は、特定の状態、遷移、および理由に従ってスコープすることもできます。特定のフィールドに適用される完全な規則のセットには、次の 4 つのサブセットを加えることができます。

  • 作業項目の種類固有

  • 状態固有

  • 遷移固有

  • 理由固有

作業項目の種類に固有の規則

作業項目の種類全体の規則は、作業項目が状態モデルのどの位置にあるかに関係なく適用されます。たとえば、<REQUIRED/> 規則は、次のチェックを実行します。

"MyField Value" != NULL

状態固有の規則

状態固有の規則は、作業項目インスタンスが特定の状態にあるときに適用されます。状態固有の規則のチェックは、次のように実行します。

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

遷移固有の規則

遷移固有の規則は、作業項目インスタンスが特定の遷移過程にあるときに適用されます。遷移固有の規則のチェックは、次のように実行します。

State field value == "ToState"  &&

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

&& "MyField Value" != NULL

理由固有の規則

理由固有の規則は、特定の遷移における特定の理由に対して適用されます。理由固有の規則のチェックは、次のように実行します。

Reason field == "MyReason" &&

State field value == "ToState"  &&

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

フィールドの規則のスコープ

フィールドの規則にスコープを適用するには、<STATE>、<TRANSITION>、および <REASON> 要素内で <FIELDS> 要素と <FIELD> 要素を使います。

ms194951.alert_note(ja-jp,VS.90).gifメモ :

ワークフロー内のフィールドを一覧にする場合は、フィールドの参照名だけを指定します。

次の例では、バグがアクティブな状態にあるときに重要なフィールドの変更を禁止する規則を定義します。

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

参照

その他の技術情報

作業項目ワークフローの定義