スーパークラス機能
データトランスフォームとスーパークラス機能
デベロッパーは、データトランスフォームのモジュール化を進めるために、スーパークラス機能を使用できます。 スーパークラス機能では、複数のデータトランスフォームを結合し、クラス階層のさまざまなレベルで値を設定できます。 この機能を利用すると、データトランスフォームの保守性が向上します。
データトランスフォームのスーパークラス機能を有効にすると、Pega Platform™では実行時、次のように動作します。
- 現在のクラスの親が識別されます。
- 最上位の親クラスが見つかるまで、順に次のレベルの親が識別されます。
- データトランスフォームを探します。
- データトランスフォームを呼び出します。
次の画像で「+」アイコンをクリックすると、実行時プロセスの各部分の詳細が表示されます。
データトランスフォームスーパークラス機能のユースケース
ここでは、「Claim」クラスの「Home」サブクラスについて考えてみます。 「Home」サブクラスには「Rental」サブクラスがあり、データトランスフォームにより各レベルでデフォルト値が設定されています。 一般的なデフォルト値は「Claim」クラスで設定され、特定の値はサブクラスで設定されるように、データトランスフォームを設定できます。
ケースタイプでは、親クラスに含まれる「Date of loss」フィールドと「Address」フィールドという2つのフィールドが必要となります。 各クラスにSetDefaultデータトランスフォームを設定し、「Date of Loss」と「Prefix」(ケースIDの接頭辞)の共通のデフォルト値を「Claim」クラスに設定します。「Address」は「Home」クラス、「Name on lease」は「Rental」クラスに設定されています。
次の画像は、「Rental」ケースタイプを作成し、すべてのデータトランスフォームでスーパークラス機能を有効にしているときに呼び出されるSetDefaultデータトランスフォームのルール実行シーケンスを示しています。 「+」アイコンをクリックすると、各ルール実行ステップが表示されます。
次の問題に答えて、理解度をチェックしましょう。
データトランスフォームのスーパークラス機能を設定する
スーパークラス機能を設定するには、Dev Studioのワークスペースから、各レベルに同じクラス名でデータトランスフォームを作成し、そのデータトランスフォームで「Call superclass data transform」オプションが選択されていることを確認します。 親クラスとサブクラスの両方でプロパティが指定されている場合、サブクラスのデータトランスフォームにより親クラスのデータトランスフォームが上書きされます。
Pega Platformでは、「Work」クラスに標準の「pyDefault」データトランスフォームが用意されており、そこからケースタイプが継承します。 標準のWork- pyDefaultデータトランスフォームは、すべてのケースタイプで使用されるプロパティ値を設定する。 プロパティには、ワークステータス、業務の緊急度、オペレーターの組織の情報が含まれます。
ヒント: これらのデフォルト設定は、「pyDefault」ケースタイプのデータトランスフォームで上書きできます。 たとえば、Work- pyDefaultの業務の緊急度の値が10設定されるとします。 ケースタイプの設定を優先したい場合は、すべての新しいケースのデフォルトの緊急度の値を40に変更できます。
次の問題に答えて、理解度をチェックしましょう。