 |

|
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専業ソフトウェアハウスにおいてプロジェクトリーダーとして活躍。現職ではオープンソースに関する技術の研究活動を日々行なう。常に、ビジネス設計を意識したユーザが使いやすいシステム構築を心掛けている。
|
|
|
|