可変型の明細行がある帳票で各明細行の金額の合計を算出し、明細の最終行に出力したいという場合があると思います。このような場合には「明細数が増減する帳票を作りたい(可変行)」で使用した「レコード」の「レコードタイプ」の設定と「計算式」を使用すれば簡単に実現することができますよ。
まずは先に「明細数が増減する帳票を作りたい(可変行)」を参照してサブフォームとレコードを作成してみましょう。
それでは次に合計行として出力するレコードを作成していきたいと思います。
既に作成しているレコードとは間隔を少し空けてもう1つレコードを作成しましょう。※レコードの間隔を空けているのは設計上見易くしているためです。間隔を空けても帳票出力時には何も影響がないので安心して下さい。
次に2つ目に作成したレコードをクリックし、左部プロパティより[名前]を「合計」、レコードタイプを「総計レコード」にします。今回はすべてのデータが処理された後(明細レコードの最終行)に自動的にレコードを印字したいので「総計レコード」を選択します。
さらに今回は一目見ただけで総計行と判別できるように総計行はグレーアウトで出力したいと思います。
レコードをクリックし、左部のプロパティの[塗り込み]を選択します。選択後塗り込みパターンのリストの中から「グレースケール」を[グレースケール(%)]は「90」とします。[グレースケール(%)]の値が0に近いほど濃く、100に近いほど薄くなります。
それでは次に[固定文字の作成]で「合計」、[フィールドの作成]で「合計金額」を作成しましょう。
フィールド「合計金額」には明細レコードの金額の合計を算出する計算式を設定するので[データ型]を数値にすることを忘れないようにしましょう。
※固定文字とフィールドを配置する際には階層に気を付けて配置して下さいね。階層については「明細レコードに正しく項目が印字されない」を参照して下さい。
次に各明細行の金額の合計を算出する関数を設定していきます。フィールド「合計金額」をクリックして、プロパティウインドウ[計算式]の右部をクリックすると[計算式]の入力画面が別ウインドウで起動します。
計算式の入力画面起動については「単価と数量を使って金額を算出したい(可変型)」を参照して下さい。
計算式画面が表示されるので、[関数の参照]をクリックして関数一覧の中から「SUM():合計値の取得」を選択して下さい。
今回は金額の総合計を印字するので「金額」フィールドの値を合計します。計算式入力欄に「SUM(金額)」と入力されていることを確認したら[OK]をクリックして下さい。
最後に金額項目になるので「数字を3桁区切りで表示したい」を参照してフィールド「合計金額」にカンマ区切りの設定をしてみましょう。
以上の設定で各明細行の金額の合計を算出し、総計行として明細の最終行に出力することができますよ。
今後公開する機能と組み合わせて活用するによって、例えば明細レコードに印字されている月毎の金額の合計を算出し出力するといったことも簡単に実現できるので、今後の記事も楽しみに待っていて下さいね。