Skip to main content

データリレーションシップの作成

Pega Platform™では、アプリケーションの各データオブジェクトは、そのアプリケーション内のすべてのケースタイプで使用できます。データオブジェクトは、データリレーションシップを通じてケースタイプで利用できるようになります。

このトピックでは、データリレーションシップの概念と、データオブジェクトに関連する情報をケースタイプからアクセスできるようにする方法について説明します。

データリレーションシップ

データリレーションシップは、関連するフィールドのセットを関連付けるコンテナです。データオブジェクトや、データを含むフィールドとは異なり、データリレーションシップにはデータがありません。データリレーションシップは、むしろ、データを保存するアプリケーションの要素と、ケースを正常に完了するためにそのデータを必要とするアプリケーションの要素との間で、データを関連付ける働きをします。

データリレーションシップは、データオブジェクトとケースタイプの間、データオブジェクト間、およびケースタイプ間でデータを関連付けるために使用されます。

データリレーションシップのフィールドタイプ

データリレーションシップにはさまざまなユースケースがあるため、さまざまな設定をサポートするためのいくつかのフィールドタイプが用意されています。以下の表では、データリレーションシップに関連するさまざまなフィールドタイプを示しています。

データリレーションシップのフィールドタイプ データソース ユースケース
Embedded Data 情報は、アプリケーションのユーザーがケースに直接入力または選択します。 企業はユーザーのクレジットカード情報や新しい配送先住所を取得する必要があります。
Data reference

情報は、Pegaデータベースにローカルに保存されているデータレコードや、外部のシステムオブレコードから取得した情報から取得されます。

オンライン小売企業は、自社データベースから取得した在庫のある商品のリストを提供しています。
Case reference 情報は、選択したケースタイプから取得されます。 ユーザーは、サービスケースのリストからServiceケースタイプを選択します。

どのフィールドタイプを使用するかを決定する際には、データオブジェクトに関連付けられた値が、どこに由来するものであるのかを考慮します。

An Embedded Dataフィールドタイプは、ケースインスタンス内で直接行われるユーザー入力またはユーザーアクションからデータが取得される場合に使用します。

データオブジェクトが、ケースの外部(Pegaデータベースにローカルに保存されているデータレコードか、クライアントが管理する外部のシステムオブレコードからアクセスされたデータレコードのいずれか)から取得されるか、以前に実行されたケースから取得される場合、Data reference Case referenceなど、これらのユースケースを考慮した特殊なフィールドタイプがあります。 

 

1つのレコードのデータリレーションシップまたはレコードリストのデータリレーションシップ

データリレーションシップの定義に使用されるフィールドタイプにかかわらず、データリレーションシップは、1つのレコードまたは複数のレコードのいずれかを参照するように設定されます。 

1つのレコードのデータリレーションシップでは、データオブジェクトからのフィールドと値の単一セットのみが、ケースの完了に使用される状況を参照します。次の画像に示すように、1つのレコードのリレーションシップの例はCustomerレコードです。

customerField

レコードのリストのデータリレーションシップでは、データオブジェクトからのグループ化されたフィールドと値のリストがケース完了に使用される状況を参照します。取得されるかレコードのリストのデータリレーションシップの例は、選択した顧客のレコードが含まれる現在の顧客のリストです。「Current customer list of records」データリレーションシップの例は、次の画像のようになります。

Current customers multiple-record data relationship

以下のインタラクションで理解度をチェックしてください。

データリレーションシップを理解しやすくするために、スーパーマーケットのOnline Orderアプリケーションの例を使用して、3つの一般的なシナリオを検討します。アプリケーションはデータリレーションシップを使用して、データオブジェクトをDelivery Orderケースタイプに関連付けます。

Embedded dataリレーションシップ

Embedded Dataフィールドタイプは、ケースインスタンス内で直接行われるユーザー入力またはユーザーアクションからデータが取得される場合に使用します。Embedded Dataフィールドタイプをフィールドに割り当てると、フィールドの使用はすべて、アプリケーションに関連付けられたすべてのケースタイプに共通の形式で行われる必要があります。 Embedded Dataフィールドタイプのフィールドにより取得されたデータは、特定の各ケースインスタンスに関連付けられたデータとともに保存されます。 Embedded Dataフィールドタイプを使用すると、アプリケーションレベルのデータオブジェクトを多くのケースタイプに関連付けることができ、アプリケーション全体でより効率的で一貫性のあるデータ取得が保証されます。

たとえば、スーパーマーケットのオンライン注文アプリケーションには、Credit cardデータオブジェクトが含まれています。Credit cardデータオブジェクトには、Card typeCard numberExpiration date、および一意に割り当てられたPega IDフィールド(pyGUID)が含まれています。  Delivery OrderケースタイプのMLP1のビジネス要件は、注文を行う顧客が、注文のたびに支払情報を入力する必要があり、1つのクレジットカードの情報のみが注文の支払いに使用できることを示しています。

ユーザーは、ケースインスタンスで直接データを提供しているため、Credit cardデータオブジェクトは、Embedded Dataフィールドタイプを持つ「Payment information」と呼ばれるフィールドのOrderケースタイプに関連しています。各注文に対して1つのクレジットカード情報のみを入力できるため、Single recordオプションが選択されます。 Credit cardデータオブジェクトとPayment informationのEmbedded Dataデータフィールドは、次の図のように表示されます。 

The Credit card data object added as Embedded Data field in Delivery Order Case Type

Payment informationデータリレーションシップを作成することで、Delivery OrderケースタイプはCredit card データオブジェクトに関連付けられたすべてのフィールドにアクセスできるようになります。

ユーザーがDelivery Orderケースを操作する際のタスクは、クレジットカード、特にカードの種類、カード番号、有効期限のデータを入力することです。Credit cardデータオブジェクトはユーザーが入力した情報を保持し、がこのデータを特定のDelivery Orderケースに関連付けられたデータに埋め込みます 。ケースインスタンスが保存されると、それには顧客のクレジットカードに関連付けられたデータが含まれます。顧客のクレジットカード情報にアクセスするには、その特定のケースに関連付いた情報を取得する必要があります。

Data Referenceデータリレーションシップ

ケースを処理するために、ケース外から取得したデータにアクセスしなければならないことがよくあります。Data referenceデータリレーションシップは、ケースに必要なデータが、Pegaデータベースにローカルに保存されているか、クライアントが管理する外部のシステムオブレコードからアクセスされるデータレコードから取得される場合に使用されます。

たとえば、オンライン注文アプリケーションにはCustomerデータオブジェクトが含まれています。Customerデータオブジェクトには、First nameLast nameFull nameEmail、およびPhoneフィールドが含まれています。CustomerデータオブジェクトのFirst nameLast nameFull nameEmail、およびPhoneに関連する情報は、スーパーマーケットのIT部門が管理する外部のシステムオブレコードに保存されています。各Delivery orderケースは1人の顧客にのみ関連付けられているため、Single recordオプションが選択されます。 CustomerデータオブジェクトとOrdering customer Data Referenceフィールドは、次の図のように表示されます。 

The Customer data object added as a Data reference field in Delivery Order Case Type

Ordering customerデータリレーションシップを作成することで、Delivery OrderケースタイプはCustomerデータオブジェクトに関連付けられたすべてのフィールドとデータ値にアクセスできるようになります。 

データオブジェクト間のデータリレーションシップ

データリレーションシップを通してケースタイプでデータオブジェクトに関連付けられたフィールドやデータ値を利用できるようにするほか、データリレーションシップによって、別のデータオブジェクト内の1つのデータオブジェクトを参照することもできます。

たとえば、オンラインデリバリー注文を作成するには、利用可能な製品のリストを表示するケースタイプが必要です。Productデータオブジェクトには、NameDescriptionPrice per unit、およびSKUフィールドが含まれています。Productデータオブジェクトは、スーパーマーケットのIT部門が管理する外部データベースから取得します。顧客が商品情報の横に数量を入力して、購入する商品を特定するワークフローをサポートするには、Order lineデータオブジェクトを作成します。Order lineデータオブジェクトには、Quantityフィールドや、ProductデータオブジェクトとのデータリレーションシップであるOrder itemフィールドも含まれています。Productデータオブジェクトは外部のシステムオブレコードから取得されているため、データリレーションシップのフィールドタイプはData referenceです。Order lineの目標は1つのProductの数量を取得することなので、選択するオプションは「Single record」です。 

Delivery OrderケースタイプでOrder lineデータオブジェクトを使用できるようにするために、別のデータリレーションシップが作成されます。Order lineデータオブジェクトでは、ユーザーはQuantityフィールドに数値を入力する必要があるため、Ordered productsデータリレーションシップには、Embedded Dataフィールドタイプが付与されます。顧客は複数の商品を注文することが想定されるため、選択するオプションはList of recordsです。

Productデータオブジェクト、Order lineデータオブジェクト、Ordered items Embedded Dataフィールドのリレーションシップが次の図に示されています。

Illustration of the relationship between the Product and Order line data objects.

 

以下のインタラクションで理解度をチェックしてください。


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

トレーニングを実施中に問題が発生した場合は、Pega Academy Support FAQsをご確認ください。

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

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

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