Eclipse BIRTを使ってみる (2) - データバインディング -

2012-11-01T00:00:00+00:00 Eclipse BIRT Java

今度はJava側から変数をぶっこんでそれをBIRTレポートに反映させるっていうのをやってみる

レポートファイルの作成

レポートファイルを作成して、レイアウトにダイナミックテキストを設定する。で更にレポートパラメーターを定義する。今回はlabel1というレポートパラメーターを定義する。でここまでやったらアウトラインがこんな感じになる

で、このダイナミックテキストにバインディングするデータを指定しないといけないのでプロパティ->バインディングから追加する

これでレポートファイルは完成

Client.java

import org.eclipse.birt.report.engine.api.EngineConfig;
import org.eclipse.birt.report.engine.api.IReportRunnable;
import org.eclipse.birt.report.engine.api.IRunAndRenderTask;
import org.eclipse.birt.report.engine.api.PDFRenderOption;
import org.eclipse.birt.report.engine.api.RenderOption;
import org.eclipse.birt.report.engine.api.ReportEngine;

public class Client {
    public static void main(String[] args) throws Exception {
        EngineConfig config = new EngineConfig();
        //config.setEngineHome("/opt/birt");

        ReportEngine engine = new ReportEngine(config);
        IReportRunnable design = engine.openReportDesign("sample.rptdesign");

        IRunAndRenderTask task = engine.createRunAndRenderTask(design);

        // 追加
        task.setParameterValue("label1", "2012/10/31のアクセスレポート");

        RenderOption options = new PDFRenderOption();
        options.setOutputFileName("output.pdf");
        options.setOutputFormat(RenderOption.OUTPUT_FORMAT_PDF);

        task.setRenderOption(options);
        task.run();
    }
}

ってな感じでIRunAndRenderTask.setParameterValueメソッド等を用いてレポートパラメーターにデータを設定してレンダリングする

Eclipse BIRTを使ってみる (3) - チャートを出力する - Eclipse BIRTを使ってみる (1)