Office File Creatorで差し込み項目に集計関数を使って子レコードの合計金額を出力する手順をご紹介いたします。
※本機能はOffice File Creator Proで使用可能です。
出力イメージ
合計行に集計関数を使用し、子レコードの合計金額を出力します。
集計関数は、OFC_子オブジェクトオプションレコードでグループ化を設定した子オブジェクトにのみ使用できます。もし、グループ化せず以下のようの子レコード明細行と合計行を設定した場合、OpportunityLineItemsの子オブジェクト差し込み項目は5行目と6行目に存在するため、ブロックとして扱われ、すべて明細行として出力されることになります。
合計行は1行のみ出力するように設定していきます。
差し込み項目の設定
集計関数
差し込み項目に集計関数を使用します。形式は{!子リレーション名.集計関数(項目API名)}で設定します。
集計関数 |
説明 |
Sum() |
合計を返します。 |
Count() |
件数を返します。 |
Avg() |
平均値を返します。 |
Min() |
最小値を返します。 |
Max() |
最大値を返します。 |
子リレーション名
合計の子リレーション名は、明細行の子リレーション名以外の任意の名前を設定し、明細行と同じ1つのブロックとして認識されないようにします。子リレーション名はこの後に設定するOFC_子オブジェクトオプションレコードとの紐づけのためのみに使用されます。カスタム項目API名と同様にローマ字で始まり、英数字とアンダーバーのみ使用可能です。
今回、子リレーション名を「ProductsTotal」とし、Sum()関数によりTotalPriceの合計を出力します。
例: {!ProductsTotal.Sum(TotalPrice)}
OFC_子オブジェクトオプションレコードの設定
OFC_子オブジェクトオプションレコードを作成します。
名前: 任意の名前を入力します。ここではProducts Totalとします。
子リレーション名: 合計行の差し込み項目に設定した子リレーション名「ProductsTotal」を入力します。
次に、「(Pro) 高度なリレーション設定」セクション内の各項目を入力します。通常、子レコードは子リレーション名よりレコードが取得されますが、高度なリレーションを設定した場合、子レコードは入力した「オブジェクトAPI名」と「主オブジェクトId項目API名」より取得されます。
オブジェクトAPI名: 子オブジェクトAPI名「OpportunityLineItem」を入力します。※子リレーション名ではありません。
主オブジェクトId項目API名: 親の参照項目「OpportunityId」を入力します。
次に、「(Pro) グループ」セクション内の各項目を入力します。今回、子レコードをグループ化して出力するためではなく、子レコード全体の合計金額を取得するためグループ項目は親の参照項目とします。
グループ項目API名: 親の参照項目「OpportunityId」を入力します。
グループヘッダー行数: 子レコード全体の合計行の場合、ヘッダー行数は0を入力します。
グループフッター行数: 合計行数を入力します。ここでは1を入力します。
ファイル出力
出力後、子リレーション名OpportunityLineItemは4行、子リレーション名ProductTotalはフッター合計行のみの1行が出力されます。
参考