第4回:スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力 (3/3)

Eclipse BIRT
Eclipseが提供するBIとレポーティングツール

第4回:スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力
著者:ビーブレイクシステムズ  川本 博之   2006/3/23
前のページ  1  2  3
レポートエンジンを使用してのレポート出力

   続いてレポートエンジンを使用し、Javaアプリケーションからレポートを出力してみます。

   出力するには、先ほど解説したTomcatでのプレビューの項でダウンロードした「birt-runtime-2_0_1」内の「Report Engine」を使用します。

   「Report Engine」内のpluginsフォルダにもiTextのJarとMySQLのドライバが必要となりますのでTomcatの環境設定時と同様にコピーしましょう。


クラス一覧

   表4にレポート出力に使用する「org.eclipse.birt.report.engine.api」パッケージ内の主なクラス群と役割を記します。

クラス群役割
EngineConfigレポートエンジン全体で使用するグローバルな情報を保持します。setEngineHome()にはレポートエンジンのパスをセットします
ReportEngineレポートエンジンクラス。openReportDesign()でレポートデザインファイルを読み込みます。
IReportRunnableレポートエンジンクラスにより、読み込まれたデザインファイルの情報を保持します。
IRunAndRenderTaskレポートを生成する際の実行タスククラス。出力形式、パラメータをセット可能です。
HTMLRenderContext
/PDFRenderContext
imageファイルのディレクトリ設定、フォントの指定などを行います。
HTMLRenderOption
/FORenderOption
出力ファイル名、出力形式を保持し、taskにセットされます

表4:クラス群と役割


使用例

   レポートファイル生成クラス作成し、実際にファイルを生成してみましょう。今回は「Report Engine」配下のJarにパスを通し、以下のサンプルクラスを作成します。

   サンプルでは引数にファイルフォーマット文字列をとり、「店舗一覧」レポートをHTMLかPDFで出力します。実行してファイル出力を確認してみましょう。

ReportExample.java
import org.eclipse.birt.report.engine.api.EngineConfig;
import org.eclipse.birt.report.engine.api.FORenderOption;
import org.eclipse.birt.report.engine.api.HTMLRenderOption;
import org.eclipse.birt.report.engine.api.IReportRunnable;
import org.eclipse.birt.report.engine.api.IRunAndRenderTask;
import org.eclipse.birt.report.engine.api.RenderOptionBase;
import org.eclipse.birt.report.engine.api.ReportEngine;

public class ReportExample {

   public static void main(String[] args) {
      try {
         // EngineConfigの生成とEngineHomeのセット
         EngineConfig config = new EngineConfig();
         config.setEngineHome("C:\\work\\birt-runtime-2_0_1\\Report Engine");

         // レポートエンジン生成とレポートファイル読み込み
         ReportEngine engine = new ReportEngine(config);
         IReportRunnable design =
            engine.openReportDesign("C:\\work\\birt_work
\\birtPrj\\storeList.rptdesign");

         // タスク生成
         IRunAndRenderTask task = engine.createRunAndRenderTask(design);

         // パスを含むファイル名、形式を指定したレンダオプションをtaskにセットします
         // imageファイルの使用などがある場合、HTMLRenderContextのセットも必要となります
         if (RenderOptionBase.OUTPUT_FORMAT_HTML.equals(args[0])) {
            //HTML設定
            RenderOptionBase options = new HTMLRenderOption();
            options.setOutputFileName("c:\\work\\storeList.html");
            options.setOutputFormat(RenderOptionBase.OUTPUT_FORMAT_HTML);
            task.setRenderOption(options);
         } else {
            // PDF設定
            RenderOptionBase options = new FORenderOption();
            options.setOutputFileName("c:\\work\\storeList.pdf");
            options.setOutputFormat(RenderOptionBase.OUTPUT_FORMAT_PDF);
            task.setRenderOption(options);
         }

         // 実行
         task.run();

         engine.destroy();

      } catch (Exception e) {
         e.printStackTrace();
      }
   }
}


まとめ

   これまで4回にわたりEclipse BIRTを紹介してきましたがいかがでしたでしょうか。

   2006年2月に米Gartner社から「BI市場は、2009年までに30億ドル規模に拡大するだろう」という調査結果が発表されました。日本においてBIを導入している企業はまだ少ないですが、今後日本でもBI市場は拡大していくことでしょう。

   Eclipse BIRTは、開発者の視点から見た場合「帳票ツール」という側面のみで捉えてしまいがちですが、Eclipse BIRTは「レポーティングツール」です。もちろん「帳票ツール」としても大きな威力を発揮しますが、Eclipse BIRTにより出力される「レポート」は、それ自身がBIツールとしての機能を持つことができるといってもよいでしょう。

   BIソフトウェアベンダー各社がBIツールに力を注ぐなかで、Eclipse BIRTがどういう位置づけに置かれてゆくか、拡大していくBI市場とともに興味深い点だと思います。

前のページ  1  2  3


株式会社ビーブレイクシステムズ  川本 博之
著者プロフィール
株式会社ビーブレイクシステムズ  川本 博之
Javaスペシャリスト。前職ではJava専業ソフトウェアハウスにおいてプロジェクトリーダーとして活躍。現職ではオープンソースに関する技術の研究活動を日々行なう。常に、ビジネス設計を意識したユーザが使いやすいシステム構築を心掛けている。


INDEX
第4回:スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力
 はじめに
 Tomcatでのプレビュー
レポートエンジンを使用してのレポート出力
Eclipseが提供するBIとレポーティングツール
第1回インストールからはじめるEclipse BIRT
第2回データベースのデータをレポートに出力しよう
第3回レポートを作成しよう
第4回スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力
Eclipse3ではじめるJava Webアプリケーション開発
第1回Eclipse3の概要とインストール
第2回Eclipse3の基本機能
第3回Eclipse3の基本操作を憶えよう
第4回Eclipseの便利な機能
第5回Webアプリケーションの開発(1)〜JSP作成〜
第6回Webアプリケーションの開発(2)〜サーブレットの作成〜
第7回データベースの利用
第8回フレームワークの利用
第9回O/Rマッパーの利用
第10回JUnitの利用
第11回Antの利用
第12回CVSの利用(1)
第13回CVSの利用(2)
Eclipse実践プラグイン開発
第1回Eclipseとプラグイン
第2回プラグインの配布とインストール
第3回基本的なGUIコンポーネントの利用
第4回JFaceのGUIコンポーネント
第5回メニューとポップアップ・メニューの拡張
第6回ビューの拡張
第7回エディタの拡張
第8回パースペクティブの拡張
第9回プロパティと設定の拡張
Eclipse WTPによる標準開発ツールの提供
第1回Eclipse WTPの概要とインストール
第2回Eclipse WTPでHello World
第3回Eclipse WTPのDB系ツールを使う
第4回Eclipse WTPのエディタとその他のツール

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored