川村渇真の「知性の泉」

データを読み取りやすい印刷用レイアウト


印刷用レイアウトも専用のものを用意するのが基本だ。印刷用の作成ポイントは、表示用と共通する部分が多いが、印刷に適した設定に少し変える。タイトルの内容やデータの文字サイズなど、紙の上で見やすく分かりやすいように整える。


●印刷はできる限り避ける

【内容】印刷するデータは、本当に必要なものだけに限定する。印刷用のレイアウトがあると使ってしまうので、不要なものは作らないのが基本。画面表示で済ませられない状況など、特別な理由があるときだけ、その目的に適したレイアウトを用意する。
【理由】最初からテーマと矛盾するような意見だが、非常に大切なこと。印刷したデータは最新でない可能性があるので、最新だと信じて処理を進めると、余計なトラブルを引き起こす。
【作成上の注意点】その印刷物が、本当に必要かどうかを先に考える。画面表示で済ませられるものは、基本的に作らない。どうしても印刷しなければならないのは、外部に出す資料だろう。宛名ラベルの印刷や、取引先へ渡す明細書などだ。これも、データベースから直接ファクスを送るとか、電子メールに切り替えることで、印刷しない形に変更できる。

●印刷専用のレイアウトを用意する

【内容】印刷専用のレイアウトを用意して、印刷に適したデザインや設定を選ぶ。
【理由】表示用と兼用すれば、印刷の目的でレイアウトを変更する際に、表示したときの影響まで考えなければならない。独立したレイアウトなら、印刷のことだけ考えて作成できる。
【作成上の注意点】使用目的やプリンタの特性を考慮して作る。具体的な注意点は、これ以降の項目を参照。

図1、印刷用レイアウトの例。専用のレイアウトを使うことで、印刷に最適なものを作れる。

図1

●レイアウト名は、使用目的が分かるように付ける

【内容】レイアウト名には、印刷用だと分かる名前を付ける。たとえば、名前の最初を「印刷/」で始め、「印刷/一覧/全項目」のように付ける(詳しくは、表示用レイアウトのページを参照)。2番目以降の言葉で、レイアウトのタイプや目的を示す。
【理由】レイアウトの数が多いと、どれが何の目的で作られたのか区別しにくい。各レイアウトの目的を明確に示すことで、別なレイアウトを変更するなどのミスを防止できる。
【作成上の注意点】印刷用レイアウトも他のレイアウトと一緒に名前を表示するので、同じ命名ルールを適用する。言葉の文字数、区切りの文字など、決めたルールに合わせる。レイアウト名の一覧表示では、印刷用だけ続けて並べたほうが、目的のレイアウトを見付けやすい。

●全フィールドを入力禁止に設定する

【内容】印刷用レイアウトでは、すべてのフィールドを入力できないように設定する。
【理由】誤った操作で切り替えたときでも、入力ができなければ、データを更新されることがない。間違って切り替える状況は、使い方を知らない人が操作している可能性が高い。そんな場合なら、誤操作でデータを壊すことも起こりやすい。データを守るためには絶対に必要。
【作成上の注意点】レイアウト作成の機能の中に、フィールド属性の1つとして入力禁止がある。これを選ぶだけで簡単に設定できるはず。

●全部のページにロゴマークを入れる

【内容】個々のデータベースごとに別々のロゴマークを付けている場合には、同じマークを印刷物にも入れる。入れる場所も表示用レイアウトと合わせる。たいていはヘッダー内の左端。
【理由】印刷物にロゴマークがあると、何のデータベースなのか素早く判断できる。
【作成上の注意点】プリンタがモノクロならば、貼り付けるロゴマークも最初からグレーに変換する。これによって、画面に表示したとき印刷用レイアウトだと分かりやすい。

●全部のページに印刷日付を入れる

【内容】印刷した日付を全部のページに入れる。一般的にはヘッダー部分に付ける。何の日付か分かるように、「印刷日:199X.XX.XX」といった書式にする。1日に何度か印刷する可能性があるなら、時刻も含める。これも「時刻:XX:XX」のような書式にする(印刷時刻だけを単独で付ける場合には「時刻:」の部分を「印刷時刻:」に変える)。日付や時刻を挿入する機能は、ほとんどのデータベース・ソフトが持っている。なお、すべてのレイアウトで、日付や時刻の印刷位置を統一することも重要。
【理由】印刷したときの日付や時刻があると、いつの時点のデータなのか知れる。かなり古いなら、新しく印刷しようと思うだろう。また、同じ印刷物が複数あるとき、どちらが新しいかを見分けられる。
【作成上の注意点】印刷した日付なので、処理した日付と異なる場合もある。処理日が必要なら、印刷日とは別に処理日を加える。その際、処理日は「処理日:199X.XX.XX」として付け、印刷日も「印刷日:199X.XX.XX」として残す。処理日のデータは、データベース内に入れる場所(別なデータベースや特別な変数など)を用意して、処理したときに日付を保存する。それを、印刷の処理でレイアウト上の表示エリアに入れる。

●全部のページにページ番号を入れる

【内容】ヘッダーまたはフッターにページ番号を付けて、全部のページに印刷する。ページ番号だと分かるように、「ページ:」の文字を前に加える。なお、すべてのレイアウトで、ページ番号の印刷位置を統一することも重要。フッターを付けないレイアウトもあるなら、印刷位置をヘッダーに統一するしかない。
【理由】ページ番号が入っていないと、紙がばらけたときに順序よく揃えるのが大変。ページ番号が付いていれば簡単に戻せる。
【作成上の注意点】ページ番号の形式として「そのページの番号/全ページ数」というのがある。これだと、どれが最後のページか容易に判断できる。データベース・ソフトが対応しているなら、この形式を選びたい。

●印刷用では、一回り小さい文字用いる

【内容】印刷用のレイアウトでは、表示用よりも小さな文字を指定する。読みやすさが低下しない範囲内で、小さなサイズを選ぶ。かなり小さなサイズを指定した場合には、書体をできるだけ細身のものにする。
【理由】画面表示に比べて、プリンタのほうが解像度は高い。その分だけ、小さなサイズでも文字を区別できる。文字が小さくなると読みづらいが、1ページ内に多くの情報を入れられるメリットがある。サイズの小さな文字では、細い書体ほど字がつぶれにくい。
【作成上の注意点】どの程度まで小さなサイズが使えるかは、プリンタの解像度に大きく依存する。いろいろなサイズを実際に印刷してみて判断するしかない。その際、英数字と漢字では差がある。日本語を入力するフィールドでは、複雑な漢字を用いてテストする。印刷したものをコピーする可能性もあるので、極端に小さなサイズはお勧めできない。テストでは、印刷したものだけでなく、2度ほどコピーした結果も参考にすべきだ。また、インクジェット方式のように、インクがにじむ可能性のあるプリンタでは、にじみを考慮して少し大きめのサイズを選ぶ。細身の書体のほうが、にじみが大きくなりにくい。もう1つ、文字サイズに関しては、印刷物を実際に使う人に使用感を確認したほうがよい。文字サイズが小さくてもよいから、1ページに収まるレコード数を増やしてほしいとか、ファックスで送信するから大きな文字に変更してほしいとか、使う人にしかわからない要望があるからだ。

●プリンタに適した書体を選ぶ

【内容】使用するプリンタに合わせて、レイアウト上のフィールドに適した書体を設定する。ポストスクリプトのプリンタなら、プリンタに搭載した書体を選ぶ。その他のプリンタでも、印刷速度を重視するなら、プリンタが持っている書体を指定する。それ以外の場合には、美しく印刷できる書体を選ぶ。
【理由】プリンタの方式に適した書体やサイズを選ばないと、印刷した文字が読みづらいし、印刷時間も伸びる。理想的には、特定のプリンタに依存しないようにレイアウトを作るべきだが、現実にはそうもいかない。
【作成上の注意点】印刷時間を短くするには、プリンタに内蔵するフォントを指定するのが一番。それ以外では、できるだけアウトラインフォントを選ぶと仕上りが美しい。

●レコードや項目の区切り線の太さは極細に

【内容】レイアウト上で描く区切り線は、極細を基本にする。それより強調したい線に、画面上の1ドットと同じ太さを用いる。もしその半分の太さが使えるなら、それを最初の強調線にする。複数の太さを使い分けるのは、データを表組で作るとき。外枠や見出しとの境などに、強調する部分に太い線を用いる。
【理由】画面表示に比べると、プリンタの解像度はかなり高い。区切り線の使用目的は、データの構造や関係を伝えること。その役割を果たせれば、できるだけ目立たないほうがよい。それには細い線のほうが適していて、データのほうを目立たせる。
【作成上の注意点】表のどの部分に度の太さを用いるかは、画面上で確認しづらい。使用するプリンタによっても異なるので、実際に印刷して確かめるしかない。

●網掛けはできるだけ使わない

【内容】印刷用レイアウトでは、文字と重なる部分の網掛けは使わない。表組なら、網掛けでなく区切り線の強弱でデータを目立たせる。
【理由】網掛けで困るのは、文字と重なったとき読みにくいこと。プリンタの解像度が低いほど、読みにくさが高まる。また、印刷物をコピーしたときも文字がつぶれやすい。
【作成上の注意点】もし網掛けを使うなら、できるだけ薄い濃度の網を選ぶ。

●各レイアウトごとに最適なレコードの並び順を採用する

【内容】そのレイアウトの使用目的を十分に検討して、レコードの最適な並び順を求め、印刷時の並び順として採用する。1つのレイアウトで、複数の並び順を印刷できるように作ることもある。
【理由】紙に印刷してしまうと、パソコン上のように自由な検索はできない。それだけに、使用目的に合った並び順でデータを並べることは重要。
【作成上の注意点】キーとなる項目がユニーク値でなければ、2つ以上の項目を選ぶ必要がある。細かな並び順が確定するまで、複数の項目を組み合わせる。

●レコードの並び順を明示する

【内容】レコードの並び順を、全部のページに印刷する。ヘッダーかフッターに文字列として加えるのが一般的な方法で、「レコードの並び:○○順」といった文字を加える。ソートキーが複数なら、「レコードの並び:○○、△△順」とする。タイトルの横か、タイトルと見出しの間に入れる。
【理由】そのページに印刷してあるデータによっては、どんな順番で並んでいるのか、すぐに判断できないこともある。並び順を明記すれば迷わずに済む。そもそも、データを見ながら並び順を考えさせるようなことは、すべきでない。印刷する時点で決まっているので、印刷物の中で知らせるのが基本だ。
【作成上の注意点】1つのレイアウトを複数の並び順で印刷する場合には、レイアウト上に表示エリアを用意し、その中に項目名の文字列を入れる。このような場合は、データベース・ソフトにプログラミング機能がないと難しい。プログラミングができない場合でも、実現する方法はある。レイアウトをコピーして複数用意し、それぞれに並び順の文字列を加える。これらを目的別に使い分ければ、同じ結果が得られる。

●レコードの抽出条件を明示する

【内容】印刷対象データの抽出条件を、全部のページに印刷する。抽出条件を指定できてもできなくても、必ず付ける。ヘッダーかフッターに文字列として加えるのが一般的な方法。抽出条件の文字列は、「抽出条件:(年齢≧30)AND(性別=男)」のように正確に記述するのが理想だ。しかし、これが分かりづらいと言われるなら、「抽出条件:年齢≧30、性別=男」のように簡易表記方法でも構わない。ただし、簡易表記を用いる場合には、複雑な抽出機能を付けないほうがよい。抽出条件を指定できない場合でも、「抽出条件:全データ」と印刷しておけば、印刷してある分で全部だと見る人が理解できる。ただし、抽出条件を指定しない場合でも、全データが印刷対象とならないこともある。処理の内容に適した条件表示を加えることが重要。
【理由】印刷時に指定した条件を、いつまでも覚えているとは限らない。また、印刷した人とは別な人が使う場合は、なおさらである。一部のデータだけを印刷したのに、これで全部のデータだと勘違いするかもしれない。そんな間違いを防ぐには、抽出条件を全ページに印刷するのが一番。1ページだけ見た場合でも、抽出条件の表記を見て、抜けているデータがあるかもしれないと判断できる。
【作成上の注意点】実現には、プログラミング機能を備えたデータベース・ソフトが不可欠。レイアウト上にテキスト表示エリアを用意し、条件抽出の文字列を入れる。難しいのは、文字列の生成処理だ。とくに、ユーザーが条件を入力する場合は、そのデータを流用する必要がある。そのために、抽出条件の入力画面は、データベースの提供するものを用いず独自に作る。もし抽出条件を詳しく表記できないときは、「抽出条件:ユーザーが指定」と付け、一部のレコードであること見る側に知らせる。
【表記の例】抽出条件の表記例をいくつか示す。簡易表現では、1つの項目内で並べた値はORを、項目間の関係はANDを意味する。
・正確「抽出条件:(種類=(パソコン OR プリンタ))AND(金額≧100,000)」
・簡易「抽出条件:(種類=パソコン、プリンタ)、(金額≧100,000)」
・正確「抽出条件:種類≠(パソコン OR プリンタ)」
・簡易「抽出条件:種類≠(パソコン、プリンタ)」

(1997年6月25日)


下の飾り