集計表
(SubTotal)
はじめに(課題)
 下記のように、担当者毎の品目別売上の小計を取り、部署毎にそれらの合計を取るような集計表は頻繁に使われます。
このような集計表の作成はXcuteの得意とするところです。本稿は、集計表の作成について解説します。
元になるテーブル
 本項で使用する集計表の元となるテーブルは、下記とします。
 なお、本稿の詳細は、マニュアル(ManualXcute.xls)の3章に解説されていますので、本稿では要点を重点的に解説することにします。
 本稿のサンプルは、SubTotalフォルダーに収録され、そこのSubTotal.plsをProles.exeで実行しながら、つぎの解説をお読みください。
1. Group2(集計表の基本:親子2段)
 最初は、簡単な例として下記のように、担当者の売り上げを支社毎に集計する例を取り上げます。
このレポート(Group2)は、下記のように、SQL文で2つのテーブル作りそれを親子としてリンクするものです。
 作成のポイントは、ひな型で、親テーブルの1レコードの読み書きの範囲(上記の赤の箱)の中に子テーブルのそれ(上記の緑の箱)を含ませるように作ることです。
箱の中に箱が入るかたちで、「入れ子」構造とすることです。
2. Group2小計を下(1項の変形)
前項では小計を支社と同じ行で行っていたが、本項は小計を下で取る例です。
前項との相違は、下記のように、子テーブルを1行上に書き出すことです。
3. Group3(親子孫3段の集計表)
本項は、下記のように、親子孫3段の集計表です。
このレポート(Group3)は、下記のように、3つのテーブル作りそれを親子孫としてリンクするものです。
ひな型の作成は、上記のように、もう1段増やします。
考え方は、前項と同じように、「入れ子」としてテーブルをリンクすることです。
参考までに: 行コピーせずの設定と$$除去の使い方(Group2参考;行コピーせず)
 Xcuteのひな型の設定パネルには、右図のように、「行コピーせず」や「$$除去」の設定がありますので、この使い方について説明します。
「行コピーせず」の設定を使うと、下記のように、小計比 %の計算も可能となります。
本項の例は、「Group2参考;行コピーせず」レポートにありますので実行してください。
 ひな型は、下記のように、親テーブルの読み書き範囲を大きめに設定し、子テーブルでは、「行コピーせず」を設定します。
「$$除去」は、データの無い行を書き出し後に除去(削除)するためのものです。
 なお、「行コピーせず」の設定を行うと、書き出しが早くなることも覚えておいてください。
早くなる理由は、レコードの書き出し操作に起因します。Xcuteは、Excelで1レコードの読み書き範囲を行コピーした後にレコードの値をセル位置に貼りつける操作を繰り返しますが、Excelの行コピーに時間がかかるためです。
参考までに: Xcuteは集計表が得意(貸借対照表)
 Xcuteは、集計表の作成は得意とします。参考までに、会計処理の貸借対照表の例を下記に示します。
貸借対照表の作成は、通常の帳票ツールではかなり困難なはずです。困難な理由は、左に資産の部を、右上に負債の部を、右下に資本の部を配置させるためです。これら3つのパートは独立したレポートで、それらを1つのページにまとめることが難しいのです。
 Xcuteは、こののような要求にも答えられます。本稿で学習したように、テーブルやひな型を「入れ子」として作成するのです。
 本稿のキーワードは「入れ子」構造であることを改めて強調します。
本項の例は、貸借対照表フォルダーに収録されています。興味のある方は、このフォルダーのKaikeiWeb.plsをProles.exeで開いて実行して見てください。