Skip to main content

計算値

フィールド間の関係

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

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

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

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

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

関数

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

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

次の合計

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

次の平均

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

最大

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

最小

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

単純なフィールドやファンシーフィールド、データリレーションシップの値を自由に使用して、フィールド値の計算式を設定します。 次の例では、オンライン注文アプリケーションが数量に単価を掛けて各アイテムタイプのコストを計算します。

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

式を構成する場合、ピリオド(.)を使用して名前でフィールドを参照します。 フィールドがデータリレーションシップの一部になっている場合は、プロパティ名またはリストをプレフィックスとして追加します。 以下の例は、2つのデータ参照フィールド「TeamHats」TeamHats「Cost」フィールドを追加するカスタム計算を示したものです。

Calculated field example

式では、以下のような一般的な操作をサポートしています。

  • 加法
  • 減法
  • 乗法
  • 担当部署
  • グルーピング(カッコを使用)
  • ブール(値)AND
  • ブール(値)OR

たとえば、計算を構成すれば、注文合計額に税率を掛けて注文時の税を計算できます。

.TaxRate * .OrderTotal

Email、Phone、Picklistを除くすべてのSimpleフィールドタイプの式を定義できます。 テキストベースのフォーマットの場合、コンカチネート(連結)と呼ばれるプロセスを使用して、テキスト文字列を作成する計算を構成できます。 たとえば、ある鑑定会社が、アイテムを送ってくる顧客向けに、収集価値のあるアイテムの見積りを提示するとします。 この会社は、アイテムを表示するページに以下の情報をコメントとして追加したいと考えています。

  • 鑑定アイテムの名前
  • おおよその評価額
  • 鑑定人ID
  • 鑑定日

フィールド参照と静的テキストの組み合わせを使用して、コメントを作成する計算を定義できます。ここでは静的テキストは引用符(")で囲まれています。

"Appraiser " + .AppraiserID + " appraised " + .ItemName + " at a value of " + .AppraisedAmount + " on " + .AppraisalDate + "."

計算を評価する際に、アプリケーションが各フィールドへの参照を現在のフィールド値に置き換えます。 計算により、次の例のような文字列が作成されます。

鑑定人04795ADが2019年1月9日銀の大皿に350米ドルの価値があると鑑定しました

補足: 先の例では、斜体を適用したテキストは参照されるフィールドの値を示しています。

デシジョンテーブル

デシジョンテーブルは、1つまたは複数のフィールドの値を、一連のロジックテストで評価し、適切な結果を返します。 たとえば、ローンの種類に応じてローンの金利を設定するには、ユーザーはローンの種類を選択します。 デシジョンテーブルでは、ローンタイプを使用して適切な金利を決定し、計算によりUIでレンダリングするフィールドの値を設定します。

補足: デシジョンテーブルが計算フィールドのデシジョンテーブルリストに表示されるには、関連レコードとしてマークされている必要があります。 関連レコードのマーキングの詳細については、Pega CommunityのMarking records as relevant recordsの記事を参照してください。

次の画像の中央の縦棒をスライドすると、システムアーキテクトが左のDev 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