【DO!BOOK・ページリンク】
migaro_tech2013   46 / 100

BOOKをみる

10秒後にBOOKのページに移動します


44 帳票も簡単に生成できることがわかる。 データベース帳票の 応用例  データセットを使用する帳票の作成手 順を見てきたが、ここからは帳票レイア ウト作成の応用例を説明する。  前述の作成した帳票は「気象官署ごと の年間降水量一覧」である。この帳票を さらに拡張していこうと思う。 ・地域別:計算項目の出力  まず、各地域の気象官署ごとに、年ご との年間降水量についてその平均値を右 側に追加する。【図11】  これは簡単である。Master Data バ ンド部に、新たにText Object を追加 すればよい。このText Object には、 先ほど紹介した固定テキストや変数以外 に計算式も追加できる。  今回の場合、各年の年間降水量を合計 したものを8 で割り、結果を整数値に置 き換えるという計算式を記載すればよ い。【図12】 ・年別:データベースの集計  次に、全国の年別平均降水量を出力で きるように実装する。【図13】  これは、フィールドごとの全レコード の平均値を取ればよい。最終レコード出 力後に情報を出力するため、新たにバン ドをFooter として追加する。そして追 加したFooter バンドにText Object を 追加すればよい。  ここでは、Insert Aggregate ボタン を押下し、Function 欄に平均を表す AVG を選択し、集計対象となるバンド とデータセットおよびフィールドを選択 する。【図14】  これで、最終レコードに平均値が表示 されるようになる。  なお、今回は全レコードの集計だった ため、Footer バンドを用いた実装とし たが、これ以外にも、GroupHeader バ ンドおよびGroupFooter バンドを使用 すると、合計だけでなく、小計や中計を 出力したり、改ページ条件を指定した帳 票も作成可能である。 ・1000 ミリ未満:条件指定の出力  3 つ目の応用例は、出力項目に対する でデータベースを扱う帳票はどのように 作成するかを説明する。 ・TfrxDBDataSet コンポーネント  データベースから取得した値(データ セット) を使う帳票では、TfrxDB Dataset コンポーネントを使用する。画 面に貼りつけたfrxDBDataset1 の DataSet プロパティに、出力したいデー タセットを指定すればよい。【図6】  データセットの準備ができたら、先ほ どと同様にfrxReport1 をダブルクリッ クし、レポートデザイナ画面を立ち上げ る。メニューバーより[Report | Data]を選択すると先ほどフォーム画 面に貼りつけたfrxDBDataset1 が選択 できるので、選択してOK を押下する。 すると、レポートデザイナ画面の右側に あるData Tree に、選択したデータセッ トの項目(フィールド)が一覧表示され る。【図7】  これで、帳票でデータセットが利用で きるようになる。 ・データセットの帳票出力  次に、定義したデータセットを帳票に 出力する手順を説明する。FastReport では、帳票をヘッダー、明細、フッター 等のエリアごとにバンドと呼ばれるもの を作成し、出力項目を設定する。  具体的には、コンポーネントパレット よりバンドコンポーネントを選択し、 PageHeader とMaster Data を貼りつ ける。【図8】  Master Data を貼りつけた際には、 使用したいデータセットを選択するダイ アログ画面が表示されるので、frxDB Dataset1 を選択する。  これで準備が整ったので、後は貼りつ けた各バンドに出力項目を定義してい く。PageHeader 部には、Text Objects を貼りつけて列タイトルを定義する。そ して、Master Data 部には、レポート デザイナ画面右側のData Tree 部から 出力項目を定義すればよい。帳票設計結 果は、都度レポートデザイナ上でプレ ビューすることも可能である。【図9】  一通り帳票設計ができたので、後はプ レビュー処理(ShowReport メソッド) を記述すれば完成である。【図10】  このように、データセットを使用した の統合開発画面(IDE)同様の手法で設 計することができる。 ・帳票レイアウト設計  では実際の設計だが、今回は「タイト ル」と書かれた表題と、画面上のEdit1 コンポーネントに指定された文字列(変 数)を出力する2つのコンポーネントを 使用する。  具体的には、ともにText Object コ ンポーネントを貼りつける。Text Object コンポーネントをデザイナに貼 りつけると、出力する文字列を編集する ウィンドウが開く。ここに出力する文字 列を指定すればよい。この文字列を編集 するウィンドウでは、単なる文字列だけ でなく、変数等も指定可能である。変数 を指定する場合、Insert Expression ボ タンを押下し、表示されたウィンドウの Variables タブにあるExpression 欄に 変数名を記載すればよい。【図5】  コンポーネントを貼りつけて文字列を 定義したら、あわせてフォントの指定も 行おう。オブジェクトインスペクタから Font プロパティを選択し、日本語フォ ント(例:MS ゴシック)を選択すれば よい。このとき文字セットを「日本語」 に指定することがポイントになる。  一通り帳票レイアウトの設計が完了す れば、そのままレポートデザイナを「×」 ボタンで終了する。(ここではファイル 保存は不要)  これで帳票レイアウト設計は終了であ る。後は、フォーム上のボタン(Button1) を押下したときに帳票出力するロジック を記述すればよい。【ソース1】  プレビューの表示は、ShowReport メ ソッドを実行する。そしてプログラムで 変数にセットするのは、Script プロパ ティのVariables プロパティに値をセッ トすればよい。たったこれだけで、図2 のような帳票出力プログラムが作成でき る。 データベースを使用した 帳票作成  帳票の基本的な作成手順は説明した が、実際の帳票作成では、主にデータベー スから取得した値を出力項目としてセッ トすることが多い。では、FastReport