「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。
ソフテックだより(発行日順)のページへ
ソフテックだより 技術レポート(技術分野別)のページへ
ソフテックだより 現場の声(シーン別)のページへ
ソフテックだより第143号の技術レポートで「VB-Report7を利用した帳票機能対応」というテーマで、VB-Reportについて紹介させていただきました。VB-Report8を用いてサーバー上のWebアプリケーションから帳票出力を実装する機会がありましたので、今回は具体的な実装方法についてご紹介させていただきます。
VB-Reportとはアドバンスソフトウェア株式会社殿からリリースされている帳票出力支援コンポーネントです。帳票のレイアウトはエクセルで作成したデザインファイルによって決まるため、レイアウト変更にはプログラムの修正が必要ないなどの特徴があります。より詳しい特徴や導入方法については第143号の技術レポートを見ていただければと思います。
実際の開発ではVisualStudioを使用し、ASP.NETを用いてサーバー上のWEBアプリケーションからの帳票出力機能の実装を行いましたので、同じように実装する場合の例を紹介いたします。
ちなみに動作するサーバーPCにはエクセルがインストールされていませんでした。帳票のレイアウトにはエクセルで作成したデザインファイルを使用しますが、エクセルがインストールされていないPCでもデザインファイルを基に帳票を作成することが可能です。
図1は今回の説明用に用意したデザインファイルの内容です。「**〇〇」にはプログラムから値を反映させることがでます。また、合否列のように数式を埋め込んでおくことも可能です。
図1. デザインファイルの内容
ここから帳票出力実装のためのプログラムについて説明していきます。
VisualStudioでASP.NET MVCのプロジェクトを新規作成して、図2のようにVB-Reportのコンポーネントを参照に追加します。
図2. 参照の追加
また、帳票出力処理を実装する前準備として、Usingディレクティブの追加と出力用のデータを用意しておきます。
図3. Usingディレクティブ
図4. 出力用データ
次に、帳票出力を実行する関数を作成します。今回は以下のVB-ReportTest関数を作成しました。
図5. VB-ReportTest関数
3-2で実装した関数を実行すると、成績一覧表.xlsxを保存できます。保存したファイルを開くと、クラス別にシートが作成され一覧表にデータが反映されていることが確認できます。
図6. 出力結果
サーバーからの帳票出力を実装するにあたり、VB-Reportを用いることでスムーズに開発を進めることができました。特に帳票のレイアウトをプログラム修正なしに調整できるのは、仕様変更や改善要望に対応しやすく大きなメリットでした。
今回紹介した他にも、バーコードの出力や出力内容のプリビューを行うなどの機能もあります。
以上、皆様の開発の参考になれば幸いです。拙文ご拝読いただきありがとうございました。
(Y.H.)
関連ページへのリンク
関連するソフテックだより