はじめに
Webアプリケーションを社内システムとして使う場合、帳票の印刷機能はほぼ必須です。従来、Microsoft Accessで構築した社内システムをASP.NET + SQL Serverに乗り換える際、Accessのレポート機能などで実現していた帳票印刷を、ASP.NETで実現する必要があります。ここでは、ASP.NETで帳票の印刷機能を実現する方法を説明します。
前提条件
ここでは、以下の開発環境および動作環境を前提条件としています。
- 開発ツール:Visual Studio 2010 Professional Edition(以下、VS2010Pro)
- 開発言語など:Visual Basic(以下、VB)、コードビハインドモデルで開発
- 使用データベース:SQL Server 2008 Express Edition(以下、SQL Server)
帳票の作成方法
ASP.NETで帳票を作成する方法は3通りあります。
(1)「レポート」を用いる方法
レポートでは、以下の条件を満たし、紙への印刷を目的としたきめ細かい帳票を作成できます。本稿でも、レポートを中心に説明していきます。
- 複数ページにわたる印刷をする場合、ページごとにヘッダ(列名)を印刷できる
- 全項目を紙の横幅に納めるために、1列に複数の項目を上下に並べることができる
- 1つのセルの中で、フォントの大きさを変えることができる
(2)「レポートウィザード」を用いる方法
レポートウィザードは、上記の条件を満たせず、業務システムには不向きです。ただ、開発者の印刷ツールとしては手軽な方法なので、後のほうで簡単に取り上げます。
(3)「Crystal Report」を用いる方法
従来よりCrystal Reportという機能が提供されていますが、これは、パワーユーザが対話式にデータベースを分析する、といった意味合いの強いツールです。エンドユーザがボタンを押しただけで定型的な帳票が出力されるような業務システムを、ASP.NETで開発する場合は、「レポート」が適していると言えます。
また、Crystal Reportは、Crystal Report社から提供されている製品のうち、無償部分の機能をVisual Studio向けにバンドルしたものです。そのためトラブルなどが発生した場合、同社からのサポートが十分に得られない可能性があります。
このような理由から、Crystal Reportは、この記事では取り上げないこととします。