HOME > ソフテックだより > 第143号(2011年8月3日発行) 技術レポート「VB-Report 7を利用した帳票機能対応」

「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。

ソフテックだより(発行日順)のページへ
ソフテックだより 技術レポート(技術分野別)のページへ
ソフテックだより 現場の声(シーン別)のページへ


ソフテックだより 第143号(2011年8月3日発行)
技術レポート

「VB-Report 7を利用した帳票機能対応」

1. はじめに

弊社で開発協力させていただいているWindowsアプリケーション開発では、生産管理システムやデータ監視収集システムなど様々なシステム要件において『帳票機能の具備』を要望いただく機会がございます。

ソフテックだより本号では、帳票機能の導入事例として帳票作成支援コンポーネント『VB-Report 7 for .NET』を利用したアプリケーション開発についてご紹介させていただきます。

2. 『VB-Report 7 for .NET』の特徴

帳票作成支援コンポーネント『VB-Report 7 for .NET』は、アドバンスソフトウェア株式会社殿より製品提供されている汎用コンポーネントです。製品名からも推察できるように、帳票作成支援を目的とした汎用コンポーネント製品になります。

以下のような特徴があります。

(1)
帳票デザインにエクセル(Excel)を利用可能
専用のデザインツールではなく、使い慣れたエクセル(Excel)で帳票デザインを構築可能です(デザインツールの使い方が分からずに対応可能な担当者が限定される可能性も低く、対応効率化も見込めます)。
エクセルの豊富な機能を用いて帳票デザインすることで、自由度の高い帳票イメージにも対応可能。
(2)
プログラミング実装は、帳票テンプレート(キーセル)へのデータ出力処理部分のみ
帳票デザインはエクセルファイルで構築しているので、プログラムで実装すべき処理は帳票テンプレートへのデータ出力処理のみだけで済みます(必要最低限の処理実装で、帳票機能を実現することができます)。
(3)
エンドユーザ様からの帳票レイアウトに関する要望に、迅速に応えることが可能
帳票出力データに増減がなく、帳票イメージのレイアウトなどを調整するだけであれば、プログラム変更の必要なく帳票テンプレートのエクセルファイルだけ編集すれば良い。
(4)
クライアント環境へ配布するランタイムライブラリはロイヤリティフリーで配布が可能
『VB-Report 7 for .NET』を使用したアプリケーションをクライアント環境(運用環境)へ公開する場合、実行に必要なランタイムライブリはベンダ製品使用許諾に基づき、無償にて配布することができます。
WEBアプリケーション(ASP.NET)などサーバ上へランタイムファイルを配布する場合には、運用するサーバ毎にサーバライセンスが必要になります。
(5)
エクセル(Excel)がインストールされていないPCでも印刷が可能
帳票デザインにエクセルファイルを利用している場合でも、エクセル(Excel)がセットアップされていないPCで帳票印刷することができる。

弊社協力システムに『VB-Report 7 for .NET』を導入したきっかけは、「帳票機能を効率良く対応することを目的とした、汎用コンポーネント製品の調査を行った」ことが始まりです。コストに見合った使い勝手の良さそうな製品をWEB上で意識しながら探していて見つけました。
特長に挙げているような理由から、『VB-Report 7 for .NET』を利用することで帳票機能を容易にシステムへ具備できる点、帳票デザインをエクセルファイルで構築でき、顧客からの要望に柔軟にカスタマイズしていける汎用性が導入ポイントとなりました。
また、体験版ソフトウェアが提供されているので、事前に製品に関する使用感を把握することができ、安心してシステムへの導入を決めることもできました。

3. 『VB-Report 7 for .NET』の導入方法概要

『VB-Report 7 for .NET』は、開発環境(プラットフォーム)としてMicrosoft Visual Studio 2005/2008/2010(開発言語: Visual Basic.NET,Visual C#)に対応しています。

実行環境は、現時点での運用想定されるWindows系 OS(XP/Vista/7/Server 2003 R2/Server 2008 R2 ※32bit/64bit OSとも)を一通りサポートしています。「導入を検討する上でシステム稼働環境(OS)を意識する必要」はほとんどないと思います。

システム導入方法の概要(帳票を直接出力する場合)を簡単にご紹介いたします。

アプリケーションの対応流れ
図1. アプリケーションの対応流れ

以下のような特徴があります。

(1)
帳票デザイン エクセルファイルを作成する

エクセルファイルは、Excel 2000/2002/2003/2007/2010用いて作成したものが利用可能です。

※Excel 2000/2002/2003
⇒ XLS形式ファイルを利用
Excel 2007/2010
⇒ XLSX形式ファイルを利用
(2)
帳票機能を実装したいプロジェクト(VB.NET 又は、C#)にコンポーネントを追加する

帳票機能を実装したいシステムアプケーションプロジェクトに、『VB-Report 7 for .NET』のコンポーネントを追加します。
以下、2点に注意して対象プロジェクトへコンポーネントを追加する必要があります。

エクセル形式 アプリケーション種類
 クライアントアプリケーション WEBアプリケーション 
Xls形式 VBReport7.Xls.IO
VBReport7.Xls.Report
VBReport7.Xls.IO
VBReport7.Xls.Web.Report
Xlsx形式 VBReport7.Xlsx.IO
VBReport7.Xlsx.Report
VBReport7.Xlsx.IO
VBReport7.Xlsx.Web.Report

表1. 作成するアプリケーションの種類及び、Excelファイル形式

対象フレームワーク  32bit用OS 64bit用OS 
.NET Framework 2.0/3.0/3.5 \VB-Report7\Bin\ \VB-Report7\Bin_x64\
.NET Framework 4.0 \VB-Report7\Bin2010\ \VB-Report7\Bin2010_x64\

表2. 運用環境(対象フレームワーク、OSタイプ(32bit/64bit))

(3)
帳票機能のプログラムを実装する

プログラム実装は、以下の流れで対応します。

  • 帳票クラスのインスタンスを定義 ※(2)で追加したコンポーネントのクラス
  • 帳票クラス − 帳票デザインシートをロード
  • 帳票クラス − 帳票シートのセルにデータ出力
  • 帳票クラス − 出力(印刷プリンタ or Excelファイル or PDFファイルなど)

プログラムコード例は、ベンダから提供されている豊富なサンプルソースコードを参考にしていただくのが分かり易いため、本技術レポートでの掲載は割愛させていただきます。

(4)
アプリケーションを配布する
『VB-Report 7 for .NET』を使用したアプリケーションをクライアント環境(運用環境)へ公開する場合、実行に必要なランタイムライブリはベンダ製品使用許諾に基づき、無償にて配布することができます。
WEBアプリケーション(ASP.NET)などサーバ上へランタイムファイルを配布する場合には、運用するサーバ毎にサーバライセンスが必要になります。

プロジェクトに組み込んだコンポーネントの再頒布可能アセンブリ(DLLファイル)をアプリケーションと同じフォルダに配置します。
(2)のコンポーネントの追加でも注意事項として挙げさせていただいた点に注意して、適切な再頒布可能アセンブリを利用するようにします。

弊社協力システムへの導入時の開発では、『(1) 帳票デザイン(エクセル)ファイルを作成する』作業と『(2)(3)のプログラム実装』作業を互いに独立して対応を進めることができましたので、開発工期の圧縮にも繋がりました。
帳票種類が多いシステム開発では『複数人で分担した対応を図ることが可能』というメリットを強く感じました。

4. その他 付加機能の紹介

その他に、『VB-Report 7 for .NET』コンポーネントでは、以下のようなことを実現できます。システム要件で複雑な帳票出力機能を要望いただいた場合などにも、高い拡張性をもってカスタマイズを行える点も魅力です。

(1)
バーコードイメージの帳票出力

コンポーネントパッケージに含まれているバーコードクラスを利用することで、JANコードや2次元コードといったバーコードイメージを作成して、帳票に出力することができます。

(2)
プレビュー表示機能の実装

コンポーネントパッケージに含まれているビューアコントロールクラスを利用することで、帳票のプレビュー表示機能を容易に実装することが可能です。

(3)
PDFファイル出力、ストリーム出力機能

電子文書のスタンダートとして広く普及してきているPDFファイルに直接出力することが可能です。
生成した帳票はストリームに出力することができるので、WEB帳票アプリケーションなどで簡単に利用できます。

(4)
プログラム上から、帳票デザイン(エクセル)を変更可能

読み込んだ帳票デザインシートに対して、プログラムからセル、行、列単位のコピー、罫線や背景、文字色といった書式設定の変更が可能です。

5. 最後に

冒頭でも特徴として挙げましたように、『VB-Report 7 for .NET』は帳票機能要件を容易に機能実現するうえで有用だと思います。
但し、システム要件によっては、機能具備すべき帳票種類が1〜2種類と少ない場合など、独自に帳票機能をプログラムで作りこんで対応した方が開発コスト面で有利なケースも考えられます。
『VB-Report 7 for .NET』のシステム導入に際しては、このあたりも考慮することが肝要です。

今回のソフテックだよりで取り上げさせていただいた内容が帳票機能のシステム実現方法をご検討いただく際の検討材料のひとつになれば幸いです。

(M.S.)


関連ページへのリンク

関連するソフテックだより

ページTOPへ