Skip to main content
バージョンタグがご希望のコンテンツと一致しているかご確認ください。 または、最新バージョンをご利用ください。

データページ

オンデマンドのデータアクセス

ケースの処理では、他のアプリケーションやシステムをソースとするデータへアクセスする必要がよくあります。 ソースとするデータが正確であれば、ケースでエラーや望ましくない結果が生じる可能性が大幅に少なくなります。 Pega Platform™アプリケーションでは、データページが指定のデータソースからデータを取得してメモリー内にキャッシュします。 データページはデータソースとの統合を管理し、ビジネスプロセスを統合の詳細から分離します。 この分離によって、アプリケーションデベロッパーは、データソースや接続の詳細を知らなくても、アプリケーションでソースとなるデータを使用できます。

on-demand-data-gif

Pega Platformで使用される大部分のページとは異なり、アプリケーションは、明示的なアクションを介してではなく、データページにアクセスされた場合にのみ、データページのコンテンツの入力を試みます。 データページのコンテンツのオンデマンドの性質のために、データページは一種の宣言型ルールと見なされます。 Pega Platformは、メモリー内の他のページとデータページを区別するために、データページの名前の先頭に「D_」の文字を自動的に追加します。

補足: 7.1以前のバージョンのPega Platformで作成したデータページは、先頭に「D_」ではなく「Declare_」が付いています。

次の図の「+」アイコンをクリックすると、Pega Platformがデータページのコンテンツを入力する仕組みが表示されます。

次の問題に答えて、理解度をチェックしましょう。

データページの定義

Dev Studioでは、データページを作成できます。 データページを作成するときに、デベロッパーは次の4つの主要な情報を指定する必要があります。

  1. ページのコンテンツの構造
  2. データページのコンテンツによって表されるオブジェクトタイプ
  3. ページでサポートされる編集モード
  4. データページのスコープ

構造 (Structure)

ページの構造によって、データページに項目を1つだけ含められるか、複数含められるかが決まります。 データページの構造を設定するには、「Structure」ドロップダウンリストでオプションを選択します。

リスト構造を使用する場合、データページでは、「pxResults」という名前の順序付き配列にリスト項目が埋め込まれます。 リスト内の特定のレコードにアクセスするには、構文DataPageName.pxResults(n)を使用します。ここで、「n」は、レコードに対応する順序付き配列のインデックスです。

単一の株式の価格情報が含まれるデータページを考えてみましょう。 構造は「Page」に設定します。 ただし、データページに投資ポートフォリオのすべての株式の価格情報が含まれる場合は、構造を「List」に設定します。 

次の図の中央付近にある垂直線を左右に動かして、ページとリスト構造の違いを確認してください。

オブジェクトタイプ(Object type)

ページのオブジェクトタイプは、データページに含まれる情報を識別します。 データページのオブジェクトタイプを設定するには、「Object type」フィールドにオブジェクトのクラスを入力します。 オブジェクトタイプによって、クラスに定義されているプロパティをデータページが参照できるようになります。 たとえば、保険会社が用意している歯科保険プランをリストするデータページには、プラン名、コスト、控除免責金額が含まれます。 顧客が行った現在の注文をリストするデータページには、注文番号、注文日、総費用、配送先住所が含まれます。

object-type-data-page

編集モード(Edit mode)

データページの編集モードには、アプリケーションがデータページの情報を操作する方法や、そのような操作が可能かどうかが示されます。 データページのモードを設定するには、「Mode」ドロップダウンリストでオプションを選択します。

データソースからコンテンツをロードしたり更新したりする場合を除き、アプリケーションによってデータページが更新されないようにするには、編集モードを「Read-Only」に設定します。 読み取り専用モードにすると、ユーザーはシステムオブレコードをソースとする情報を編集できなくなり、データページのコンテンツは、システムオブレコードからロードされるコンテンツと常に一致します。 たとえば、自動車管理局のデータベースで自動車保険顧客の事故歴にアクセスする場合は、法律によってソースデータの編集が禁止されている可能性があります。 この法的要件に準拠するには、ページモードを「Read-Only」に設定します。

補足: データページのモードを「Read-Only」にすると、Clipboardツールの「Data Pages」カテゴリーにデータページがリストされます。

アプリケーションがデータページのコンテンツを編集できるようにするには、編集モードを「Editable」に設定します。 たとえば、顧客がリテーラーで注文をするときに、1件または複数の希望配送先住所を保存できるようにするとします。 住所のリストは、データページを使用して顧客データベースからロードされます。 注文時に顧客が住所を更新できるようにするには、ページのモードを「Editable」に設定します。

補足: データページのモードが「Editable」の場合、Clipboardツールの「User Pages」カテゴリーにデータページがリストされます。

ページのコンテンツをアプリケーションがデータソースにプッシュできるように保存プランを設定するには、編集モードを「Savable」に設定します。 たとえば、顧客が配送先住所を更新すると、アプリケーションが更新後の住所を、顧客データベースを更新するように設定されている保存可能なデータページにコピーします。 顧客が注文を完了すると、アプリケーションが保存プランに従って顧客データベースに接続します。

スコープ (Scope)

データページのスコープによって、アプリケーション内でのページコンテンツの利用範囲が決まります。 ページのスコープを設定するには、「Scope」ドロップダウンで、サポートされているオプション「Thread」「Requestor」「Node」のいずれかを選択します。

次の図の「+」アイコンをクリックすると、スコープオプションの詳細が表示され、スコープ設定を利用してPega Platformアプリケーション内でキャッシュされたデータを管理する方法を確認できます。

次の問題に答えて、理解度をチェックしましょう。

データ ソース

データページフォームの「Data sources」セクションを使用して、アプリケーションがデータページを参照したときにPega Platformがデータページのコンテンツを入力する方法を指定します。 データソースを設定するために、データソースのソースタイプと名前を指定します。 以下のオプションのいずれかを使用して、データページのデータソースを設定できます。

  • データトランスフォーム
  • 業務
  • コネクター
  • レポートディフィニッション
  • Database lookup
  • ロボティックオートメーション
  • Robotic desktop automation

ソースタイプごとに、照会するデータソースを特定します。 以下の例は、クラス「GoGo-GoGoRoad-Data-Customer」「DataTableEditorReport」を実行して、データページにリスト構造を入力するように設定されたデータソースを示したものです。

Data source configured to populate a data page using a report definition

以下の場合に、データトランスフォームを設定して、ケースタイプかデータタイプのデータモデルにレスポンスをマップする必要があります。

  • レポートディフィニッションを使ってページ構造をソースとする
  • ルックアップを使ってリスト構造をソースとする
  • Robotic Automationを使う
  • Robotic Desktop Automationを使う

複数のデータソースをソースとするデータ

複数ソースのデータを組み合わせてデータページに入力する必要がある場合、「Aggregate sources」オプションを選択します。 次に、照会する各データソースを特定します。 Pega Platformが、リストされている順序で、指定されているソースからデータページに入力します。

1つのデータソースをソースとする条件付きデータ

データページに、少なくとも1つのデータソースを指定する必要があります。 データページに複数のソースが含まれる場合は、データソースを照会するかどうかをテストするように各ソースの論理条件を設定します。 Pega Platformがデータページのデータソースを常に特定できるように、最後にリストされるデータソースの条件は「Otherwise」に設定されます。 アプリケーションがデータページを参照すると、Pega Platformが各条件をデータソース順に評価して、trueの結果を返した最初の条件のデータソースを使用します。

パラメーター

データページに入力するときに、ページのコンテンツを関連項目だけに制限したいことがあります。 たとえば、保険会社が引き受けているすべてのポリシーのレコードがデータベースに含まれるとします。 顧客が自動車保険ポリシーの補償範囲の調整を希望している場合は、データページに関連するポリシーレコードのみ入力する方法が必要です。

パラメーターを使って、データページのコンテンツを制限できます。 たとえば、データソースとしてルックアップを選択する場合、データページのレコードが一意に識別されるように、キー値を指定する必要があります。 また、パラメーターを使用してデータをレポートフィルターに渡し、在庫データベース内の特定の製品タイプなど、特定のレコードセットに結果を制限することもできます。 ドロップダウンやラジオボタン、プロパティ、その他の特定のルールタイプなどのUI要素からデータページにパラメーターを渡せます。 データページにパラメーターを渡すことができるルールタイプの完全なリストについては、ヘルプトピック「Passing Parameters to data pages from non-UI rules」を参照してください。

注: パラメーター化されたデータページを使用すると、クリップボードに複数のデータページインスタンスが表示される可能性があります。 データページにパラメーターを追加する場合は、これらの複数のデータページインスタンスの影響を考慮してください。 パラメーターの一意の組み合わせごとにインスタンスが必要でない場合は、「Load Management」タブの「Limit to a single data page」チェックボックスを選択し、パラメーターを変更したときにPega Platformが上書きする、パラメーター化された単一インスタンスページを保持するようにします。

パラメーター化されたデータソースを使用するには、データページレコードの「Parameters」タブでパラメーターのエントリーを追加します。

パラメーター化されたデータページを参照するには、各パラメーターの名前と値を含めます。 構文DataPageName[Parameter1_Name:Parameter1_Value,Parameter2_Name:Parameter2_Value,...].を使用し、括弧で各パラメーターの名前と値を指定します。

補足: ユーザーがパラメーター化されたデータページにアクセスしようとすると、Pega Platformでは、同じパラメーターに異なる値が含まれているデータページのインスタンスは無視されます。

以下のデータページの図の「+」アイコンをクリックすると、パラメーター設定の詳細が表示されます。

データページの参照

データページからデータを参照する必要がある場合は、Queryフィールドタイプを使用します。 Integration Designerで作成されたほとんどのデータオブジェクトには、キーや、参照関係を作成するために必要なその他のデータページがありません。 Queryフィールドには、リストまたはルックアップデータページが必要です。

Queryフィールド自体にはキー値は保存されません。このため、データページへのパラメーターはすべてフィールド外にあります。 フライトインストラクションを管理し、生徒用のフライトプランを作成するケースタイプを考えてみましょう。 このケースタイプでは、ケースの外部にソースを持つ空港コードをQueryに渡して空港の天気を取得すると、天気の詳細が返され、フライトプラン確認ビューに自動的に入力されます。 

補足: Queryのパラメーターは、ケースの外部にソースを持つフィールドである必要はありません。 コンテナとしてのオブジェクトのコンテキストに含まれる任意のフィールドや、アクティビティに由来するフィールドに由来するパラメーターを持つことができます。 

Queryフィールドのパラメーターは、そのフィールドで使用されるように設定されたデータページまたはビューによって定義されます。 たとえば、データページでは、どのトランザクションを返すべきかを決定するパラメーターとして、日付の範囲を使用できます。 Queryは、最初のアクセス時にデータページの情報をケースにコピーするように設定できます。 さらに、値を更新するときなどに、保存可能なデータページを使って情報をシステムオブレコードにプッシュできます。 

次の問題に答えて、理解度をチェックしましょう。


このトピックは、下記のモジュールにも含まれています。

If you are having problems with your training, please review the Pega Academy Support FAQs.

このコンテンツは役に立ちましたか?

このコンテンツは 60% のユーザーにとって役に立ちました。

改善できるところはありますか?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice