Declare OnChangeルール
Declare OnChange ルールは指定されたプロパティの値が変更された場合にアクティビティを自動的に実行するか、現在のワークオブジェクトを一時停止します。 たとえば、Declare OnChangeルールを使って、チームが入力したワークアイテムの平均金額をリアルタイムで計算したり、ワークアイテムのすべての処理を強制的に中断させて状況の調査やレビューを行ったりすることができます。 Declare OnChangeルールを使用して作業を一時停止する場合、When条件はビジネス例外と呼ばれます。
Declare OnChangeルールを明示的に参照するルールは他にありません。 Dev Studioから新しいDeclare OnChangeルールを作成できます()。
Declare OnChange ルールでは、When条件を指定して1つ以上のプロパティ値をテストし、条件の真または偽の結果に基づいてさまざまなアクティビティを実行できます。 Declare OnChangeルールでは、プロパティ値が変化したときに条件が評価されます。
次の画像で「+」アイコンをクリックすると、Declare OnChangeルール設定の詳細が表示されます。
パフォーマンス
「Properties to Watch」が頻繁に変化する場合、OnChangeアクティビティのパフォーマンスに影響が生じる可能性があります。 When条件を追加し、アクションアクティビティが合意されたパフォーマンスのしきい値以内で完了するように設計することを検討してください。
OnChangeプロパティと条件
プロパティ値が変化する場合のWhen条件への対応を容易にするには、変化を監視するプロパティと、プロパティが変化する場合にアクションを取る条件を定義します。
Properties to Watch
最上位のページまたは「Pages & Classes」タブの「Page Context 」フィールドによって識別されるページでプロパティを特定します。 一部の制限が適用されます。
- 複数のプロパティをリストに入れる場合は、同じページ上(最上位ページまたは共通の埋め込みページのいずれか)でなければなりません。
- 複数のプロパティスをリストに入れる場合で、2つ以上のプロパティが値を変更するとき(たとえば、アクティビティの単一ステップ内)、このOnChangeアクティビティは1回だけ実行します。
- ドットが付いている各プロパティ参照を開始します。 ルールの「Applies To」キーに対応するページ以外のページ、または「Pages & Classes」タブの「Page Context 」フィールドによって識別されるページではプロパティを参照できません。
条件
プロパティ値が変化した時に評価されるWhen条件ルールに基づくか、以下の2つのいずれかの形式のシンプルなブール式を入力することでDeclare OnChangeルールの条件を、「Always」として評価するように設定します。
property = "constant value"
property1 > property2
プロパティ値の変化に対するアクション
指定されたプロパティのいずれかが変化した場合のアクションを2つから選択してください。
アクティビティの呼び出し
デベロッパーは「Declare OnChange」ルールを作成し、「Properties To Watch 」セクションにプロパティを追加して、そのプロパティが変化した場合にアクティビティを実行できます。 これは、監査機能を強化して、仕様としてプロパティ値が変化する毎に、そのプロパティ値が変化した際に存在していた条件(時間、変更した人、他の対応するプロパティの値など)とあわせて記録することを求める必要がある状況で役立ちます。
プロパティ値が変化する際にアクティビティを呼び出すには、次の要件が必要です。
- アクティビティタイプは必ず「OnChange」にする。
- アクティビティが呼び出せるブランチやその他のアクティビティのアクティビティタイプは必ず「OnChange」にする。
- 標準のWhenルール「Always 」を入力または選択して1つのアクティビティだけを実行する。
以下のインタラクションで理解度をチェックしてください。
ワークオブジェクトの保留
不正活動が検出されたり、提供されたデータによりコンプライアンス違反が発生したりなど、予期しないビジネス例外が発生した場合は、ワークオブジェクトの一時停止を選択できます。 Declare OnChangeルールを使用してプロパティの変更を確認してください。 「Suspend work object」を選択することで、条件が満たされるとワークアイテムのすべての処理が強制的に停止されます。
以下のインタラクションで理解度をチェックしてください。