単一変数の状況設定
多くの場合、アプリケーションは特定の状況のニーズつまり状況設定に合わせて動作をカスタマイズする必要があります。 たとえば、あるコールセンターではエリートステータスの顧客に対して1セットのパフォーマンス目標を適用し、エリートステータスではない顧客に対して別のセットのパフォーマンス目標を適用しています。
単一変数の値が条件を満たす場合、単一変数の状況設定を適用できます。 たとえば、ルールの状況設定で値を比較するプロパティを指定し、プロパティの値がケースで指定した値と一致した場合に、アプリケーションで基本ルールではなくルールの状況設定バリアントを適用できます。
以下の例は、.ServiceTypeプロパティの値が「"Auto"」の場合に実行されるように状況設定されたフローアクションルールを示しています。
補足: 状況設定ルールの作成について詳しくは、「Creating a rule specialized by circumstance」を参照してください。
日付による状況設定
Date property Rルールバリアントは、データプロパティの値が状況条件を満たしている場合に有効になります。 この条件は、特定の日付または日付範囲のいずれかになります。 プロパティの値が指定された日付以降の場合、または日付範囲内に存在する場合、アプリケーションでは基本ルールではなく、状況設定ルールのバリアントが使用されます。
アプリケーションで指定された日付以降または日付範囲内でルールの状況設定バリアントを適用する必要がある場合は、As-of dateルールバリアントを使用します。 生年月日など比較対象の日付を指定できるDateプロパティとは異なり、As-of dateプロパティでは比較対象の日付としてシステムの日付/時刻が使用されます。
以下の表を使用して、さまざまなビジネス要件を満たすように状況条件を設定できます。
ビジネス要件 |
日付プロパティの指定 |
開始日の指定 |
終了日の指定 |
指定された日付プロパティの値が特定の日付範囲内に存在する場合にのみ有効になるルール |
Yes |
Yes |
Yes |
指定された日付プロパティの値が特定の日付以降になる場合にのみ有効になるルール |
Yes |
Yes |
No |
特定の日付範囲内でのみ有効になるルール |
No |
Yes |
Yes |
特定の日付以降でのみ有効になるルール |
No |
Yes |
No |
ヒント: pxCreateDateプロパティを使用すると、ケースが作成された日付に基づいてルールの状況設定ができます。
状況設定ルールの上書き方法
状況設定ルールをオーバーライドするには、基本ルールにフラグを立てるか、ルールを取り消すか、2つのオプションがあります。
基本ルール
ルールの状況設定を行うには、最初に基本ルールを作成してから、ケースの動作における特定の例外に合わせて調整される専用バージョンを作成します。 Baseチェックボックスを選択すると、ルールレゾリューションアルゴリズムで以前に存在した、同じメジャーバージョンでも下位のマイナーバージョンやパッチバージョンのルールはすべて無視されます。
次の画像で「+」アイコンをクリックすると、基本ルールにフラグを立てることで状況設定ルールをオーバーライドする方法についての詳細が表示されます。
取り消しルール
状況設定ルールが取り消されると、ルールレゾリューションは考慮されませんが、現在のバージョンのルールセットの残りのルールインスタンスがすべて考慮されます。 ルールレゾリューションでは、状況条件が満たされている場合でも、現在のルールセットの基本ルールインスタンスが選択されます。
ただし、状況設定ルールや基本ルールが取り消されると、現在のバージョンのルールセットと前のバージョンのルールセットにあるすべてのルールインスタンスが考慮されなくなります。 ルールレゾリューションでは状況条件が満たされている場合でも、親クラスまたはアプリケーションのルールセットスタックで直上のルールセットにあるルールインスタンスが選択されます。
次の画像で、「+」アイコンをクリックすると、状況設定ルールの取り消しにより、状況設定された住宅ローンのルールがオーバーライドされる例を確認できます。
以下のインタラクションで理解度をチェックしてください。
状況設定条件の確認方法
アプリケーションエクスプローラーでは、ルールの状況条件がルールごとに一覧表示されます。 Pega Platform™では、状況設定されたルールが折りたたみ可能な矢印で示されます。 ルールエントリーを展開して、サポートされている状況設定を表示できます。 以下の例では、PromptForEnrollmentルールの.ServiceTypeの値が「"Auto"」の場合の状況設定について説明しています。
ルールヘッダーのCircumstancedリンクを使用して、ルールの状況条件を確認することもできます。
以下のインタラクションで理解度をチェックしてください。
このトピックは、下記のモジュールにも含まれています。
- 状況設定のケース処理 v5
トレーニングを実施中に問題が発生した場合は、Pega Academy Support FAQsをご確認ください。