Declare OnChangeルール
Declare OnChangeルール
Declare OnChangeルールは指定されたプロパティの値が変更された場合にアクティビティを自動的に実行するか、現在のワークオブジェクトを一時停止します。 たとえば、Declare OnChangeルールを使って、チームが入力したワークアイテムの平均金額をリアルタイムで計算したり、ワークアイテムのすべての処理を強制的に中断させて状況の調査やレビューを行ったりすることができます。
Declare OnChangeルールを明示的に参照するルールは他にありません。 Declare OnChangeルールを保存すると、必要に応じてすぐに実行されます。 Dev Studioから新しいDeclare OnChangeルールを作成できます(「Create」>「Decision」>「Declare OnChange」)。
補足:
は、Declare OnChangeルールと同じクラス、または埋め込みページのクラスである必要があります。Declare OnChangeルールでは、when条件を指定して1つ以上のプロパティ値をテストし、条件の真または偽の結果に基づいてさまざまなアクティビティを実行できます。 Declare OnChangeルールでは、プロパティ値が変化したときに条件が評価されます。
ヒント: 1つのアクティビティだけを実行するには、標準のwhenルール「Always」を入力するか選択します。
補足: Declare OnChangeルールを使用して作業を一時停止する場合、when条件はビジネス例外と呼ばれます。
Declare OnChangeフォームの詳細については、コミュニティの記事「Declare OnChange form - Completing the OnChange Properties tab」を参照してください。
アクティビティの呼び出し
指定されたプロパティの値が変更されたときにアクティビティが自動的に実行されるようにDeclare OnChangeルールを作成すると、自動フォワードチェーニングのフォームになります。
補足: 宣言型ルールで処理の無限ループを開始しないように注意してください。 たとえば、OnChangeアクティビティでは、アクティビティを開始する原因となったプロパティを更新しないでください。 OnChangeアクティビティでは他のプロパティを更新できます。
ユーザーがショッピングカートに商品を追加した場合、ビジネス要件には小計、送料、税金、および合計金額の複雑な計算の実施が含まれるかもしれません。 複雑な計算は、アクティビティを使って実現できます。 このビジネスケースを解決するために、デベロッパーは「Declare OnChange」ルールを作成し、
セクションにプロパティを追加して、プロパティが変更されたときにアクティビティを実行できます。ヒント: アクティビティのタイプがOnChangeであることを確認します。 アクティビティタイプは、「Activity Rule」の「Security」タブで設定できます。 アクティビティは、他のアクティビティを呼び出したり、他のアクティビティに分岐したりできますが、「Activity Type」が「OnChange」の場合に限ります。
注: Declare OnChangeルールを計算に使用するのは、デクレアエクスプレッションが適切でない場合に限られます。
ワークオブジェクトの保留
Declare OnChangeルールでは、1つ以上のフローを使用する独立レビューがサポートされており、状況の独立レビューが完了するまでワークアイテムのすべての処理を強制的に停止できます。 この機能を活用してコンプライアンス、不正検出、および品質管理のスタッフをサポートできます。
たとえば、オンラインショッピングカートの小計がマイナスになるなど、予期しないビジネス例外が発生した場合は、Declare OnChangeルールを使用して、小計プロパティの変更を確認できます。 whenルールを使用して、小計が負の数値になるかを確認し、オブジェクトでワークを一時停止する必要があるかどうかを判断できます。
パフォーマンス
一部のプロパティでは値が頻繁に変更される可能性があるため、OnChangeアクティビティがすばやく実行されるように設計します。
開発やテストの作業中に、プロパティの値が変更される結果、ルールが実行されることがあります。 たとえば、ハーネスのプレビューやフローアクションのフォームなどです。
テストとデバッグ
Tracerを使って、Declare OnChangeルールの評価を見ることができます。 Tracerを起動し、リクエスターセッションを選択します。 「Tracer Settings」で、「Event Types to Trace」セクションのDeclare OnChangeを確認します。 トレースするルールを含むルールセットも確認します。
次の問題に答えて、理解度をチェックしましょう。
このトピックは、下記のモジュールにも含まれています。
If you are having problems with your training, please review the Pega Academy Support FAQs.