Skip to main content

チャレンジ

アプリケーションデータの操作

This content has been updated. Click here to continue your progress in the latest version.

シナリオ

顧客に提供されたサービスの料金のみが請求されるようにするため、プログラムマネージャーはサービスプロバイダによって実施されたサービスのリストをアプリケーションで表示したいと考えています。 このリストには実施されたサービスの名前、サービスの単価、サービスの実施回数、各サービスの総費用、および実施されたサービスの総費用を記載しなければなりません。 「Perform service」フローで、「CopySelectedServices」データトランスフォームを設定し、「Service」ケースから「Assistance request」ケースに実施されたサービスをコピーします。

以下の図は、「Assistance request」ケースタイプにおける「Selected services Embedded」データタイプの関係と、サービスのケースタイプにおける「Services」データの関係と、「Service offered」データタイプの関係を示しています。

entity relationship diagram services offered

以下の表は、チャレンジに必要なログイン情報をまとめたものです。

ロール ユーザー名 パスワード
アプリケーションデベロッパー [email protected] pega123!
補足: 練習環境では、複数のチャレンジの完了をサポートする場合があります。 その結果、チャレンジのウォークスルーに表示される設定は、お客様の環境と完全に一致しない場合があります。

チャレンジ ウォークスルー

このチャレンジを完了するには、Pegaインスタンスを起動する必要があります。

起動には5分ほどかかることがありますので、しばらくお待ちください。

詳細なタスク

1 「Review service summary」ステップを設定します。

  1. App Studioのナビゲーションペインで、「Case types」 > 「Assistance Request」をクリックして、「Assistance Request」ケースタイプを開きます。
  2. 「Assistance request」ケースタイプの「Workflow」タブで、「Review service summary」ステップをクリックしてステッププロパティペインを開きます。
  3. 右側のステッププロパティペインで「Configure view」をクリックすると、ダイアログボックスが表示されます。
  4. ダイアログボックスで、「Add field」をクリックして、新しいフィールドを設定します。
  5. 「Selected services」という名前の複数レコードのデータリレーションシップを作成します。 「Type」リストで「Embedded data」を選択します。 Data objectリストで、「Services offered」を選択します。 List of recordsラジオボタンをクリックして、複数レコードのデータリレーションシップとして指定します。 
    selected-services
  6. 「Submit & add another」をクリックして、新しいフィールドを設定します。
  7. 「Invoiced total」という名前の通貨計算フィールドを作成します。 TypeリストでCurrencyを選択します。 Advancedセクションを展開して、This is a calculated field (read-only)を確認します。 Calculationで、FunctionドロップダウンでSum ofを、「Field」ドロップダウンでLine totalを選択し、Submitをクリックします。
    Invoiced total field configuration
  8. 「Submit」をクリックして新しいフィールドを保存し、ケースライフサイクルの「Workflow」タブに戻ります。
  9. 「Save」をクリックして、ケースライフサイクルの変更を保存します。

2 CopySelectedServicesデータトランスフォームを設定する

  1. App Studioのナビゲーションパネルで、「Case types」 > 「Service」をクリックして「Service」ケースタイプを開きます。
  2. Perform serviceプロセスで「Configure Process」をクリックします。
  3. 「Open process in Dev Studio」をクリックし、フローキャンバスで「Perform service」フローレコードを開きます。
  4. フローキャンバスで「Select services」コネクターを右クリックし、「View Properties」を選択して、「Connector properties」ダイアログボックスを表示します。
     
    Select services connector View properties
  5. 「Connector properties」ダイアログボックスの「Set properties」エリアで、「Apply data transform」を選択して、データトランスフォームをコネクターに追加します。
  6. 「Data transform」フィールドに「CopySelectedServices」と入力し、データトランスフォームに名前を付けます。 
    connector properties CopySelectedServices data transform
  7. 「Data transform」フィールドの右側の「Open」アイコンをクリックして、「Create Data Transform」タブを開きます。
  8. 「Create Data Transform」タブで「Create and open」をクリックして、新しいデータトランスフォームレコードを表示します。
  9. データトランスフォームレコードの「Definition」タブで、CopySelectedServicesデータトランスフォームを設定します。
    1. データトランスフォームレコードで、「Action」リストから、「For Each Page In」を選択し、リスト内でアイテムを反復します。 「1.1」とラベルが付き、インデントされた2番目の行がレコードに表示されます。
    2. 「1」とラベルが付いた行の「Target」フィールドで、「.Services」を入力または選択し、「Services」リスト内でアイテムを反復します。
    3. 「Source」列で、「Also use each page as source context」チェックボックスを選択し、「Services」ページをソースコンテキストとして使用し、プロパティの参照を解決します。
    4. 「1.1」と」ラベルが付いた行の「Actions」リストから、「When」を選択して行を選択する条件を設定します。 「1.1.1」とラベルが付き、インデントされた3番目の行がレコードに表示されます。
    5. 「1.1」と」ラベルが付いた行の「Target」フィールドに「.Quantity>0」と入力し、ゼロより大きい数量の行のみを選択します。
    6. 「1.1.1」とラベルが付いた行の「Actions」リストで、「Append to」を選択し、選択された行のコンテンツを別のリストに付加します。
    7. 「1.1.1」とラベルが付いた「Target」フィールドに「pyWorkCover.SelectedServices」と入力し、選択された行のコンテンツをAssistance request親ケースの「Selected Services」データリレーションシップにコピーします。
    8. 「1.1.1」とラベルが付いた「Relation」リストで、「current source page」を選択し、選択した行のコンテンツをServiceケースの「Services」データリレーションシップにコピーします。 
      data-transform
    9. タトランスフォームレコードで「Pages & Classes」タブをクリックして「pyWorkCover」ページを定義し、データトランスフォームが「Selected services」プロパティ参照を完了できるようにします。
    10. 「Page name」フィールドに、定義するページの名前として「pyWorkCover」を入力します。
    11. 「Class」フィールドで、「GoGo-GoGoRoad-Work-AssistanceRequest」を入力するか選択して、「pyWorkCover」ページのコンテキストを「Assistance Request」ケースタイプクラスとして定義します。 
      page-classes
    12. 「Save」をクリックして、データトランスフォームの設定を完了します。
  10. 「PerformService」タブをクリックして、「Perform service」フローレコードに戻ります。
  11. 「Connector properties」ダイアログボックスで「Submit」をクリックして、「Select services」コネクターの設定を完了し、「CopySelectedServices」データトランスフォームを実行します。
  12. 「Save」をクリックして、「Perform service」フローレコードの設定を完了します。

作業の確認

  1. Dev Studioのヘッダーで「Create」 > 「New」 > 「Assistance Request」をクリックして、新しいケースを作成します。
  2. ケースを「Service」ステージに進めます。
    補足: 「Enter customer information」ステップで、Standardの補償レベルに加入している顧客を選択します。
  3. 「Select service provider」ビューでサービスプロバイダを選択します。
  4. 「Select services」ビューで、以下の図に示されている数値を入力します。
  5. 総費用が210ドルになることを確認します。
    selected-services
  6. 「Submit」をクリックして「Select services」アサインメントを完了し、「Service」ケースを完了します。 「Review service summary」ビューが表示されます。
  7. 「Review service summary」ビューで、「Selected Services」の表に、Serviceケースに入力された3つの行が表示され、「Invoice total」フィールドの値が210ドルであることを確認します。
    補足: 実際の実装では、「Assistance Request」ケースの選択したサービスのリストが読み取り専用であることと、ユーザーによる項目の追加や削除が制限されることを確認してください。 リストを表示するセクションルールを編集してAdd itemDeleteのコントロールを削除できますが、これは今回のチャレンジの範囲外です。
    reviewServices
補足: リストの最初の行が空になっているのは、「Selected Services」リストの初期化のためです。 pySetFieldDefaultsデータトランスフォームでデフォルトで作成された.SelectedServices(1).pyLabelを削除することで、空の1行目を削除することができますが、これはこのチャレンジの範囲外です。


このモジュールは、下記のミッションにも含まれています。

If you are having problems with your training, please review the 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