Skip to main content

チャレンジ

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

シナリオ

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

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

entity relationship diagram services offered

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

ロール ユーザー名 パスワード
アプリケーションデベロッパー author@gogoroad 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行目を削除することができますが、これはこのチャレンジの範囲外です。


下記のミッションにも含まれています。

トレーニングを受講中に何か問題がありましたら、こちらをご覧ください: Pega Academy サポートのよくある質問 (FAQ).

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

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

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