トランザクションマネージャーのユースケース:明細行レベルの価格の合計を計算する
トランザクションマネージャーには、明細行レベルの正味価格の合計を計算する決定ルールを含めて、ヘッダーレベルのフィールドに格納することができます。
CPQトランザクションマネージャーでは、決定ルールを使用して明細行レベルの合計正味価格の合計を計算し、その結果をヘッダーレベルのフィールドに格納できます。これは、品目からトランザクションヘッダーに複数のフィールドを集計する必要がある場合に特に便利です。
ルール構成例
- ルールアクションタイプ:決定ルール
- トリガーポイント:明細レベルの更新後 (明細品目が追加、削除、または更新されたとき)
- スコープ:トランザクションヘッダー
ルールを作成して使用する手順
- ヘッダーレベルのフィールドがあることを確認します。
または、[関連フィールド] セクションに合計を保存するカスタムフィールド (txn.custom.totalList など) を作成することもできます。
- ルールの実行対象となる適切な条件で、ヘッダーレベルのルールを作成します。
- アクションタイプを決定に設定します。
- [ この値を使用 (Use this value)] で [詳細設定 ] を true に設定し、フィールドを計算するための詳細スクリプトを記述します。
たとえば、すべての品目の表示価格の合計を計算します。合計表示価格を計算するには、
sumField関数を使用して、すべての明細行レベルの表示価格を単一のフィールドに計算します。 - ルールを保存してアクティブ化し、トランザクションのライフサイクル中にリアルタイムで適用されるようにします。
- ルールをテストするには、取引を作成し、正味価格が異なる品目を追加します。
明細行レベルの正味価格の合計が正しく計算され、ヘッダーレベルのフィールドに表示されていることを確認します。
その他の例
ヘッダーレベルのフィールドに格納される明細行レベルの計算の例をさらに 2 つ示します。
- 全体の割引額
詳細スクリプト:
return txn.line.functions.sumField(txn.line.custom.listUnitPrice) - txn.line.functions.sumField(txn.line.pricing.extendedNet); - 正味合計
詳細スクリプト:
return txn.line.functions.sumField(txn.line.pricing.extendedNet);