ここでの帳票とは、基幹系システムで、定期的に、関係者に配布する目的で、紙に印刷するものとします。
ディスプレイへの出力に関しては、印刷帳票と同じ事項が多いのと、入力画面設計と重複する事項が多いので、ここでは省略します。
帳票設計は、2つのフェーズで必要になります。
- 概要設計
システム設計での初期段階で、どのような帳票が必要なのか、そこで必要なデータは何か、そのデータはシステムで正確でタイミングよく得られるかを検討する作業です。要件定義の最も基本的な要件ですし、システム全体の整合性の検討に必要です。
この段階では、帳票のデザインまで考慮する必要はありません。
- 詳細設計
月次報告書や請求書など具体的な帳票のデザインを決定する段階です。ここではこれを主にします。
帳票設計の手順と留意事項
- 帳票の漏れや重複の確認
帳票類に漏れや重複はないか、帳票に含まれる項目に漏れや重複はないかを確認します。
- 用語の統一
例えば、得意先別売上集計表の売上合計と損益計算書の売上高とは一致するのか、他の要因があって一致しない場合は、同じ「売上高」ではなく「得意先売上高」とすべきでしょうし、同じ「売上高」を用いるのであれば、その違いを関係者が熟知する必要があります。
得意先や商品の正式名称には非常に長いものがあります。それをそのまま出力したのでは、印刷用紙からはみ出てしまいます。正式帳票や外部向け帳票は致し方ありませんが、社内管理用の帳票では略称を用いるのが一般的です。あるいは得意先コードや商品コードだけでもよい帳票もありましょう。略称のオーソライズなどが必要です。
- 統一デザイン
社外向け帳票は「会社の顔」です。ロゴを用いるのか、紙の色、罫線類や地の文字列、計算項目などでの配色などを統一するのが適切です。
社内用でも、できるだけ統一しておくほうが、利用者に好都合なだけでなく、帳票設計者も楽になります。
特に社内用では、帳票のサイズを限定すべきです。A4とB5などまちまちのサイズでは、保管や整理に困ります。
- 白紙帳票と印刷帳票
数枚帳票をインパクトプリンタで出力する場合など、先に印刷してある専用用紙を用いることがあります。
レイアウトでの考慮事項
人とシステムの接点をヒューマンインタフェースといいます。帳票配布先の人はシステム内部の知識はなく、印刷された帳票だけで必要な情報を理解します。必要な項目が網羅されていることは当然です。ここでは「理解のしやすさ」を対象にします。
ヒューマンインタフェースの基本は「驚かせないこと」だといわれます。「人間が予想・期待することと合致していること」「戸惑わせないこと」です。
- 必要最小限の内容にすること
紙面の大きさには限りがあります。あれもこれも取り入れようとしたり、フォントを小さくしたりすると、見にくくなってしまいます。
- 慣習的な体裁に逆らわないこと
請求書や見積書など、一般に用いられている帳票類は、特に理由がない限り、標準的な様式に従うのが無難です。
- 順序を考慮すること
左から右へ、上から下へと読むので、その順序で項目が並んでいること。重要な項目は先頭部分に配置すること、例えば請求書では明細行の最後に合計金額を記載するが、とれとともに、請求書の先頭部分に「ご請求額合計」の欄があるとわかりやすい。
- フォントを考慮すること
ビジネス文書にふさわしい自体を用いる、タイトルや重要項目のサイズを大きくする、重要な部分を太字にする、桁数の大きい数値にはカンマを入れるなど。
- ページをふること
全体の枚数がわかるように、「x/〇〇」(〇〇枚中Xページ)を付けること。
帳票設計支援ツール
- フォームシート(レイアウトシート)
- 印刷用紙に標準的なフォントでのメッシュを入れた方眼紙です。昔はこれに手書きでレイアウトして、それを見ながら出力プログラムを手書きでコーディングしていましたが、自動プラグラム作成ツールもあります。
- フォームオーバレイ
- 帳票の枠や固定的に印刷される項目など(固定項目、オーバーレイデータ)と、計算によって出力される項目(可変項目)に分けておきます。
このオーバーレイデータをあらかじめ印刷した専用用紙に、可変項目だけをプリントすることもできますが、フォームオーバレイとは、オーバーレイデータをプリンタあるいはプリンタサーバに登録しておき、印刷時に可変項目データを重ね合わせて印刷する機能です。
- 帳票設計ツール
- 簡単な機能だけのものから高機能なものまで多様なツールがあります。
- レイアウト設計機能
レイアウトシートをディスプレイに表示、GUIにより固定項目と可変項目の体裁を作成、オーバーレイデータを生成します。
このとき、標準的な請求書や納品書などのサンプルが用意されており、画面で変更をすればよいというツールもあります。
- 可変項目定義機能
各可変項目の定義(変数名)と可変項目間での処理の指定(合計など)をします。その変数名を用いた印刷プログラムを生成する機能をもつものもあります。