第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

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