2000年12月25日新規作成
関谷トップページへ
トップページへ
No.24 AM「Access_2 第3章 レポートの活用」
2000.12.25 関谷
レポート(印刷)機能の基礎(レポートウィザードによる作成と編集)は、Tの「7章 レポート機能」で学習した。ここでは、前章の「フォームの活用」での売上伝票と同様に、メイン/サブレポートの請求書などを学習する。
(参考)XML(拡張可能なマーク付け言語(Extensible Markup Language))について
今後の傾向としては、紙に印刷した書類ではなく、電子的なデータ(ファイル)が使われるようになると思われる。その場合、人もコンピュータも共に読める文書形式が求められる。現在、Web-インターネット-を使っての商取引などでは、htmlが使われているが、XMLなどの標準化とそのツールの開発などが行われている。XMLについては、関谷のKIPスクール_XMLページなどを参照のこと。
3-1 レポートのコントロール
3-1-1 コントロールの種類
- ラベル
- テキストボックス
- オブジェクトフレーム
(注)OLEについて:(MSDNライブラリから)OLE は当初、オブジェクトのリンクと埋め込み (Object Linking and Embedding) の略称でした。現在では、単に OLE と呼ばれています。
OLE 文書、つまり、複合文書には、各種のデータ (つまり、コンポーネント) が継目なく統合されます。OLE 文書に収容されるコンポーネントの代表例として、サウンド クリップ、スプレッドシート、ビットマップなどがあります。
- 直線
- 四角形
- サブレポート
3-1-2 連結コントロールと非連結コントロール
- 連結コントロール:テーブルやクエリのデータがもとになっているコントロールで、印刷プレビューで表示する。
- 非連結コントロール:テーブルやクエリのデータがもとになっていない独立したコントロールで、デザインビューで挿入し、デザインビューに保存される。
3-2 請求書を作成する
3-2-1 メイン/サブレポート
「メインレポート」の中に明細部の「サブレポート」が組み込まれたレポート。
作成の手順
- メインレポート(単票形式)を作成する
- サブレポート(表形式)を作成する
- メインレポートのコントロールの一つとしてサブレポートを組み込む
3-2-2 メインレポート「R4請求書」の作成
3-2-2-1 もとになるテーブルの確認
メイン/サブレポートは、それぞれのもとになるテーブル(またはクエリ)を必要とする。メインレポートのもとになるクエリは、「T5売上伝票」、「T3得意先マスター」と「T2担当者マスター」から作成する。
3-2-2-2 もとになるクエリ「Q4請求書」の作成
「伝票NO」フィールドの《抽出条件》セルに、[伝票NOを入力]をキーインする。データシートビューに切り替えると、《パラメータの入力》ダイアログボックスが表示されるから、テーブルに格納されている任意の「伝票NO」を入力する。
3-2-2-3 メインレポート「R4請求書」の作成
クエリ「Q4請求書」をもとに、メインレポート「R4請求書」を作成する。
3-2-3 サブレポート「R5請求内訳」の作成
3-2-3-1 もとになるテーブルの確認
サブレポートのもとになるクエリは、「T6売上明細」と「T1商品マスター」から作成する。
3-2-3-2 もとになるクエリ「Q3売上明細」の確認
メイン/サブフォームで作成したクエリ「Q3売上明細」と同じで良い。
3-2-3-3 サブレポートの作成
クエリ「Q3売上明細」をもとに、サブレポート「R5請求内訳」を作成する。
《集計のオプション》ダイアログボックスで、「金額」の《合計》をチェックする。
《印刷形式》の選択で《レイアウト》グループの《アウトライン1》をチェックする。
3-2-4 メインレポートとサブレポートの合体
3-2-4-1 リレーションシップの確認
メイン/サブレポートのそれぞれもとになるテーブルの共通フィールドには、リレーションシップが設定されている必要がある。
3-2-4-2 サブレポートの組込み
コントロールウィザードを使って、メインレポートにサブレポートを組み込む。リンクするフィールドの指定は、《一覧から選択する》で、一覧の《伝票NOでリンクし、Q4請求書の各レコードに対しQ3売上明細を・・・》が選択されていること。
Point サブレポートのプロパティ
- ソースオブジェクト:サブレポート名
- リンク子フィールド:サブレポート側の共通フィールド名
- リンク親フィールド:メインレポート側の共通フィールド名
参考 セクション幅の調整
レポートのセクション幅が用紙のページ幅より小さくなるようにする。
1)すべてのコントロールを用紙のページ幅に収まるように、移動・調整する。
2)セクション領域の右端の境界線をポイントし、用紙のページ幅までドラッグする。
Let's Try 請求書のレイアウトの修正
XMLのようにアプリケーションでも利用したいデータのときには、ラベルに相当するタグで括る。しかし、単に印刷した帳票を人が見るときには、却って、フィールド名を示すラベルが邪魔となる。そのために、この練習ではラベルの削除を行っている。
ラベルのコントロールサイズを小さくすると、指定のフォントサイズとの関連で、文字が表示されなくなる。(「〒」の例があった。)
サブレポートの編集をするときには、その前に、サブレポートの下のハンドルをポイントして上下の矢線になったら下にドラッグして、レポートの表示範囲を広げるのが良い。
レポートヘッダー部を詰めるためには、先にすべてのコントロールを削除すること。(「直線」などがセクション見出しの境界に接近して配置されているので、わかりずらい。)
参考 複数のコントロールの配置を調整するコマンド
3-3 請求書を編集する
3-3-1 レポート「R4請求書」の編集
直線の作成、OLEオブジェクトの挿入、四角形の作成、ラベルの作成、テキストボックスの作成を行い、請求書として完成させる。
3-3-2 ラベルの作成
3-3-2-1 ラベル「御中」の作成
ラベルの書式の[フォント」の変更では、「@MS明朝」を選択すると縦書きになる。「MS明朝」が横書きのフォントである。
3-3-2-2 書式のコピー/貼付け
コントロールに設定した書式を、別のコントロールに貼り付ける。
Point 書式のコピー/貼付けの連続指定
《書式のコピー/貼付け》ツールボタンをダブルクリックすると、連続して貼付けができる。
Let's Try 請求書のレイアウトの修正
ラベルの作成と書式の変更、書式のコピー/貼付け、コントロールのサイズと位置の調整。
3-3-3 テキストボックスの作成
サブフォームの集計行の「金額の合計」を参照する「本体価格」テキストボックスを作り、《コントロールソース》で式ビルダを使って作成する。
Let's Try 請求書のレイアウトの修正
消費税、御請求金額、検収期限をそれぞれ、コントロールソースに式を編集して作成する。
3-3-4 直線の作成
3-3-4-1 直線の作成
3-3-4-2 直線のコピー
直線のコピーに、コピーボタンと貼付けボタンを使う。その後でマウスのドラッグで、移動する。
3-3-5 四角形の作成
Let's Try 請求書に直線と四角形を配置する
3-3-6 OLEオブジェクトの挿入
3-3-6-1 OLEオブジェクトの挿入
Point 連結オブジェクトフレームと非連結オブジェクトフレーム
(連結コントロールと非連結コントロールの例でもある。)
- 連結オブジェクトフレーム:フォームビューで挿入し、テーブルに保存される。印刷プレビューで表示する。
- 非連結オブジェクトフレーム:デザインビューで挿入し、デザインビューに保存される。
3-3-6-2 《OLEサイズ》プロパティ
Point 《OLEサイズ》プロパティ
- クリップ:OLEオブジェクトの実際のサイズで表示
- ストレッチ:オブジェクトフレームのサイズに合わせて拡大/縮小する
- ズーム:OLEオブジェクトの縦横比を変えずにOLEフレームにOLEオブジェクト全体を表示する
3-4 売上累計表を作成する
3-4-1 レポート「R6売上累計表」の作成
3-4-2 元になるクエリの作成
3-4-3 レポートの作成
Let's Try 売上累計表のレイアウトの修正
3-5 売上累計表を編集する
3-5-1 レポート「R6売上累計表」の編集
3-5-2 累計の設定
3-5-3 改ページの設定
3-5-4 パラメータの設定
以上