Skip to main content

計算値の実行

計算値は、1つ以上の入力フィールドに基づいた計算フィールドの値を設定することで、フィールド間の関係を明らかにします。 たとえば、オンライン ショッピングカート アプリケーションでは、単価と数量に基づいて、各アイテムの小計を顧客に示した後、注文された全アイテムの合計を計算します。

その後、課税金を算定し、注文合計額に税金を追加して、顧客への最終的な請求額を算出します。 その他、プロモーション割引や買い物ポイントの値も計算できます。 計算は、ユーザーが入力フィールドの値を更新するたびに行われます。 フィールド計算を定義すると、手動の計算が不要になるので、エラーの可能性が減り、プロセスの効率化が図れます。

計算フィールドを別の計算への入力として使用して、従属計算のネットワークを作成できます。 ユーザーが計算入力として機能するフィールドの値を更新すると、結果として生じる計算により、従属フィールドに追加計算がトリガーされます。

App Studioでは、3種類の計算を利用できます。

  • 関数はリスト内の項目を反復処理します。
  • では単純なフィールドや複雑なフィールド、データリレーションシップを自由に組み合わせて参照し、フィールド値を計算します。
  • デシジョンテーブルは、一連の条件に基づいてプロパティ値をテストし、適切な応答を返します。
Calculated fields options

 

ユースケースに応じて、計算フィールドはケースタイプまたはデータオブジェクトのデータモデルで作成されます。 次の画像の中央にある縦線をスライドすると、ケースタイプのData modelタブにフィールドを追加する場合(左側)と、データオブジェクトのData modelタブにフィールドを追加する場合(右側)を比較できます。

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

関数

関数はデータ関係の項目を反復処理し、Decimal、Currency、Integerのフィールドタイプでサポートされます。 App Studioでは、計算に使用する以下の4つの基本的な関数が提供されています。

  • Sumは、指定されたプロパティインスタンスのすべてのアイテムを追加します。
  • Averageは、指定されたプロパティのすべてのインスタンスの平均値を計算します。
  • MAXは、指定されたすべてのプロパティインスタンスの最大値を決定します。
  • MINは、指定されたすべてのプロパティインスタンスの最小値を決定します。

Sum of

オンラインショップでは、ショッピングカートの合計金額を計算する必要があります。 顧客が注文にアイテムを追加したり、削除したり、数量を更新したりすると、アプリケーションは合計額を更新しなくてはなりません。 Sum of関数を使用すれば注文合計フィールドの値を計算できます。

Average of

あるオンラインショップは、アプリケーション ダッシュボードを構成して顧客の購買パターンを分析し、マネージャーが顧客一人当たりの最大および最小収益を生み出す地域を特定したいと考えています。 地域別にフィルターされた注文リストを作成できます。 次に、Average of関数を使用して、平均注文額を特定できます。

Maximum of

オンラインショップでは、顧客が1回限りのプロモーション割引を注文に適用できるようにする必要があります。 顧客は1つ以上のプロモーションコードを送信して、最高額商品の20%割引、指定された額を超える注文の配送料の免除など、複数の割引を適用しようとします。 プロモーション割引データ参照を作成すると、リスト内の各アイテムのプロモーションコードと割引額が識別されます。 次にMaximum of関数を使用すれば、注文に適用すべき最も価値のあるプロモーション割引を決定できます。

Minimum of

オンラインショップでは、注文時に無料アイテムと指定されたリストから最安値のアイテムを1つ贈呈するプロモーションが必要です。 Minimum of関数を使用すれば、注文で最低価格のアイテムを特定し、その金額のクレジットを注文に適用できます。

計算式

単純なフィールドやファンシーフィールド、データリレーションシップの値を自由に使用して、フィールド値の計算式を設定します。 次の図に示すように、オンライン注文アプリケーションでは、TeamHatsのコストとTeamMagnetsのコストを追加して、トランザクションの総費用を計算します。

Sample shopping cart display for sale of team hats and magnets.

式を設定する場合は、ドット演算子(".")を使用した名前でフィールドを参照します。 この演算子により、現在のケースのコンテキストで利用できるすべてのフィールドのリストが表示できます。 フィールドがデータリレーションシップの一部になっている場合は、プロパティ名またはリストをプレフィックスとして追加します。

次の図は、ドット演算子を使用して現在のケース内のフィールドのリストを表示する例を示しています。 TeamHatsTeamMagnetsが、利用可能なデータリレーションシップです。 次のドット演算子は、それぞれのデータリレーションシップのすべてのフィールドを表示します。 これらのデータオブジェクトには、それぞれCostフィールドがあります。

An example of a calculated field using an expression.

デシジョンテーブル

デシジョンテーブルは、1つまたは複数のフィールドの値を、一連のロジックテストで評価し、適切な結果を返します。 たとえば、ローンの種類に応じてローンの金利を設定するには、ユーザーはローンの種類を選択します。 デシジョンテーブルでは、ローンタイプを使用して適切な金利を決定し、計算によりUIでレンダリングするフィールドの値を設定します。 Pegaビジネスアーキテクトとしてあなたは、App Studioでカスタムデシジョンテーブルを設定するか、App Studioで参照できるデシジョンテーブルをDev Studioで設定するように、システムアーキテクトに依頼することができます。 

補足: App Studioで再利用できるデシジョンテーブルをDev Studioで設定するには、デシジョンテーブルを関連レコードとしてマークする必要があります。 関連レコードのマーク付けの詳細については、「Marking a record as relevant」を参照してください。

次の画像の中央にある縦線をスライドさせると、Dev Studioでのデシジョンテーブルの設定(左側)と、App Studioのデシジョンテーブルリファレンス(右側)を比較できます。

補足: Constellationに基づくアプリケーションのみが、App Studioでのカスタムデシジョンテーブルの作成をサポートしています。 詳細については、「App Studioでのデシジョンテーブルのオーサリング」を参照してください。

計算ネットワーク(Calculation networks)

フィールド間の関係を識別するために、Pega Platform™ではアプリケーションの計算ネットワークを確立して更新します。フィールド計算を定義すると、Pega Platformにより、それが計算ネットワークに追加されます。 この計算ネットワークにより、Pega Platformは、値が変更されるたびにすべての関連フィールドを更新できます。 たとえば、ショッピングカートでは、アイテムの数量を変更すると、いくつかの依存する計算フィールドを介して更新をプッシュできます。

次の図で+アイコンをクリックすると、ショッピングカートの計算をトリガーする関数が表示されます。

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


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

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