25
bBreak innovative system solution 1 http://www.bbreak.co.jp/ 1. BIRT とは............................................................................................................................................................. 2 2. インストール......................................................................................................................................................... 3 3. レポートの作成..................................................................................................................................................... 5 (ア) プロジェクトの作成 ........................................................................................................................................ 5 (イ) データソース、データセットの作成 .................................................................................................................. 8 (ウ) パラメータ作成............................................................................................................................................ 13 (エ) レポートの出力............................................................................................................................................ 18 作成データの HTML 表示(フレーム使用) .................................................................................................. 19 作成データの HTML 表示(フレームなし) ................................................................................................... 20 作成データの PDF 表示.............................................................................................................................. 20 PDF の日本語表示..................................................................................................................................... 22 4. まとめ................................................................................................................................................................ 25

bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

1 http://www.bbreak.co.jp/

1. BIRT とは ............................................................................................................................................................. 2

2. インストール......................................................................................................................................................... 3

3. レポートの作成..................................................................................................................................................... 5

(ア) プロジェクトの作成 ........................................................................................................................................ 5

(イ) データソース、データセットの作成 .................................................................................................................. 8

(ウ) パラメータ作成............................................................................................................................................ 13

(エ) レポートの出力............................................................................................................................................ 18 ① 作成データの HTML 表示(フレーム使用) .................................................................................................. 19 ② 作成データの HTML 表示(フレームなし) ................................................................................................... 20 ③ 作成データの PDF 表示.............................................................................................................................. 20 ④ PDF の日本語表示..................................................................................................................................... 22

4. まとめ................................................................................................................................................................ 25

Page 2: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

2 http://www.bbreak.co.jp/

本資料ではレポート作成ツール「BIRT」のインストールからレポート作成手順について説明します。

11.. BBIIRRTT ととはは

BIRT(Business Intelligence and Reporting Tools)とは、Eclipse Foundation のトップレベルプロジェクトのひとつであ

り、レポーティングソフトベンダーの米 Actuate 社が開発した Eclipse ベースのオープンソースレポート作成ツールで

す。2005 年 6月に ver1.0 が発表され、現在(2005 年 12 月)のバージョンは 1.0.1 です。

BIRT プロジェクトは Eclipse 上、WEB上、またはサードパーティーベンダ上でのレポートファイル作成機能(レポート

デザインエンジン)、HTML、PDF 形式でのレポート出力機能 (レポートエンジン)、数値データのチャート変換機能(チ

ャートエンジン)を有しています。

Page 3: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

3 http://www.bbreak.co.jp/

22.. イインンスストトーールル

BIRT 動作には以下のパッケージが必要であり、これらは http://download.eclipse.org/birt/downloads/よりダウン

ロードが可能です。

・ JDK 1.4/1.5

・ Eclipse SDK 3.1(2.x での動作は保証されていません)

・ Graphics Editor Framework (GEF) runtime 3.1

・ Eclipse Modeling Framework (EMF) runtime 2.1

・ BIRT

今回は実行環境として以下のバージョンをダウンロード、インストールしました。

・ JDK 1.4.2_10

・ Eclipse SDK 3.1.1

・ Graphics Editor Framework (GEF) runtime 3.1(GEF-runtime-3.1.1.zip)

・ Eclipse Modeling Framework (EMF) runtime 2.1(emf-sdo-runtime-2.1.1.zip)

・ BIRT1.0.1(birt-report-framework-1_0_1.zip)

インストール手順

GEF、EMF、BIRT のインストールを行います。それぞれ圧縮ファイルを解凍すると eclipse ディレクトリ付きで展開さ

れますので、そのまま eclipse ディレクトリへ上書きすればインストール完了です。

Eclipse を起動し、メニューバーから「ウィンドウ(W)」→「パースペクティブを開く(O)」→「その他(O)」に「レポートデザ

Page 4: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

4 http://www.bbreak.co.jp/

イン」が表示されていれば成功です。

加えて今回は DB上のデータを HTML 形式でレポート出力しますので、APサーバ、DBMS が必要となります。

本資料では以下のパッケージをインストールした環境で行います。

・Tomcat 4.1.3

・mySQL5.0

・mySQL Connector/J 3.1.11

構成図

データベ

ース

eclipse

レポート

(HTML,PDF,印刷物)

WEBサーバ

レポートエン

ジン

チャートエンジ出力

レポートデザインエ

レ ポ ー

ト デ ザ

イ ン フ

ァイル 作成

パラメータ

参照

Page 5: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

5 http://www.bbreak.co.jp/

33.. レレポポーートトのの作作成成

BIRT を使用して、DB 上のデータからレポートを作成し、それを WEB ブラウザ、PDF で確認するまでの手順を以下

に記します。

((アア)) ププロロジジェェククトトのの作作成成

・ BIRT プロジェクト作成

Eclipse を起動し、メニューバーから「ファイル(F)」→「新規(N)」→「プロジェクト(R)」でレポートプロジェクトを選択し

「次へ(N)>」ボタンを押下します。

プロジェクト名を入力し「終了(F)」ボタンを押下します。

・ レポートファイル作成

レポートの実体となる「*.rptdesign」ファイルを作成します。

メニューバーから「ファイル(F)」→「新規(N)」→「その他(O)」でレポートを選択し「次へ(N)>」ボタンを押下しま

す。

親フォルダは作成したプロジェクトを選択してください。名前を入力し「次へ(N)>」ボタンを押下します。

Page 6: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

6 http://www.bbreak.co.jp/

ここではデフォルトのまま「new_report.rptdesign」とします。

最後にレポートテンプレートを選択します。今回はテンプレートを使用せず、「空のテンプレート」を選択し、「終了

(F)」ボタンを押下します。

Page 7: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

7 http://www.bbreak.co.jp/

・ プロジェクト作成後の eclipse のレイアウト

Page 8: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

8 http://www.bbreak.co.jp/

((イイ)) デデーータタソソーースス、、デデーータタセセッットトのの作作成成

データソース、データセットの作成を行い、DB上のデータを取得し、eclipse でプレビュー表示します。

・ データソース作成

データエクスプローラを表示します。データエクスプローラが表示されない場合は「ウインドウ(W)」→「ビューの表示(V)」→

「その他(O)」より「データエクスプローラ」を選択してください。

データエクスプローラ上で「データソース」を右クリックし「新規データソース」を選択します。表示された「新規データソース」ウ

インドウをから「JDBC Data Source」を選択し、データソース名に「DataSource01」を入力後、「次へ(N) >」ボタンを押下しま

す。

(このとき「フラットファイルのデータソース」を選択すると CSV ファイルのデータをレポート作成時に扱えます。)

Page 9: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

9 http://www.bbreak.co.jp/

今回は mySQL を使用するので「ドライバの管理」から JDBC ドライバの管理ウインドウを表示し、mySQL のドライバである

jar ファイルを指定します。

「接続テスト」ボタンを押下し「接続完了」と表示されれば成功です。

Page 10: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

10 http://www.bbreak.co.jp/

・ データセット作成

「データセット」を作成します。

データエクスプローラ上で「データセット」を右クリックし「新規データセット」を選択します。表示された「新規データセ

ット」ウインドウでデータセット名に「DataSet01」を入力後、「終了(F) >」ボタンを押下します。

「データセットの編集」ウインドウが表示されますので、クエリ書き込みスペースに SQL を書き込みます。

ここでは予め作成した employee テーブルからデータを取得するクエリを作成します。

「プレビューの結果」を選択すると作成したクエリに対応するデータが表示されます。「OKボタン」を押下しデータセッ

トの編集を完了します。

Page 11: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

11 http://www.bbreak.co.jp/

・ プレビュー

作成したデータセットを eclipse 上でプレビューします。

「DataSet01」をレイアウトエディタ上にドラッグすると、ヘッダロウにカラム名、詳細ロウにデータ内容を含むテーブ

ルが作成されます。

プロパティエディタでテーブルの外観を整え、エディタのタブをレイアウトからプレビューに切り替えます。

Page 12: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

12 http://www.bbreak.co.jp/

Page 13: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

13 http://www.bbreak.co.jp/

((ウウ)) パパララメメーータタ作作成成

データの表示をパラメータによって変化させます。

・ データセット編集

SQL にパラメータを渡せるようにします。

3.2 で作成した「DataSet01」を編集します。「DataSet01」をダブルクリックし、表示された「データセットの編集」ウイン

ドウにて、クエリに where 句を追加します。

追加されたwhere 句内の「?」がパラメータとなります。

「パラメタ」を選択し、名前、データ型、方向、初期値を定義します。

ここでは「paramJobs」という文字列を「”CLERK”」という初期値で定義します。

これで「jobs=CLERK」の where 句が成立し、対応データが抽出できます。

Page 14: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

14 http://www.bbreak.co.jp/

プレビューの結果を選択すると jobs が CLERK であるデータの取得が確認できます。

現在のままではパラメータは「CLERK」に限られてしまっているので、パラメータをユーザからの入力値として自由

に設定できるようにします。

データエクスプローラ上のレポートパラメタを右クリック「パラメタの新規作成」を選択し「パラメタの編集」ウインドウ

を表示します。ここではパラメータの名前を「inputJobs」、型を「文字列」、パラメータのデフォルト値を「ANALYST」と

して定義します。(型は「文字列」、「コンボボックス」、「リストボックス」、「ラジオボタン」が選択可能です。)

入力後、「OK ボタン」押下します。

Page 15: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

15 http://www.bbreak.co.jp/

さらに、レポートパラメータとテーブルを結びつけ、レポートパラメータによって表示データを変化できるようにしま

す。

レイアウトエディタ上で作成したテーブルを選択し、プロパティエディタのバインドタブを選択します。

値の初期値が「”CLERK”」になっているので、これをレポートパラメータに変更するため、右にあるボタンを押下し

「式ビルダ」ウインドウを表示します。

「このレポートのパラメタ」内の「inputJobs」をダブルクリックし、式編集スペースに「params[“inputJobs”]」が表示さ

れたら、OKボタンを押下します。

これで inputJobs に指定した文字列がwhere 句に設定されるようになります。

Page 16: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

16 http://www.bbreak.co.jp/

・ プレビュー

エディタのプレビュータブを選択します。初期表示されるデータはパラメータ指定がありませんので、レポートパラメ

ータの初期値である「ANALYST」のデータが表示されます。

また、「レポートパラメタを表示します。」ボタンにより表示される「パラメタの入力」ウインドウから任意のパラメータ

を設定できます。「SALESMAN」を入力します。

Page 17: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

17 http://www.bbreak.co.jp/

パラメータ変更後。「SALESMAN」のデータがプレビューされます。

Page 18: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

18 http://www.bbreak.co.jp/

((エエ)) レレポポーートトのの出出力力

これまでに作成したレポートの HTML、PDF 出力を、WEB ブラウザ上で確認します。

レポートファイル(*.rptdesign)を見るためにはレポートエンジンを J2EE アプリケーション上に配置する必要があり

ます。

ここではレポートエンジンとしてプラグインに付属の BIRTViewer を使用します。

[clipse インストールフォルダ]\plugin\org.eclipse.birt.report.viewer_1.0.1 の配下に birt というフォルダがあります。

これは BIRT インストールの際に配置されたものです。この birt フォルダを tomcat 上にアプリケーションとして設定す

る必要があります。(ダウンロードサイトにより提供されるレポートエンジン(WebViewerExample)を使用しても同機能

を実現できます。birt-runtime-1_0_1.zip)

・ インストール確認ページの表示

「http://localhost:8080/birt/」で以下の画面が確認されればインストール成功です。

Page 19: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

19 http://www.bbreak.co.jp/

①① 作作成成デデーータタのの HHTTMMLL 表表示示((フフレレーームム使使用用)) 3 章で作成した rptdesign ファイルをレポートエンジンに配置します。

[tomcat インストールフォルダ]\webapps\report の下に new_report.rptdesign を配置し、

[http://localhost:8080/birt/frameset?__report=report\new_report.rptdesign]をブラウザで確認します。

「__report」パラメータの value に作成したレポートファイルを指定しています。

パラメータを変更して表示。

Page 20: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

20 http://www.bbreak.co.jp/

②② 作作成成デデーータタのの HHTTMMLL 表表示示((フフレレーームムななしし)) アドレスの「frameset」を「run」に変更することによりフレームなしで表示可能です。この場合はパラメータを入力す

ることができないのでパラメータ初期値のデータを表示します。

[http://localhost:8080/birt/run?__report=report\new_report.rptdesign]をブラウザで確認します。

③③ 作作成成デデーータタのの PPDDFF 表表示示

PDF でレポートを出力するには2つの方法があります。

① HTML でフレーム表示した際に画面右上の PDF アイコンをクリックする。

Page 21: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

21 http://www.bbreak.co.jp/

別ウインドウで PDF が起動し表示されます。

② パラメータとして_「__format」に「pdf」を指定する。

URL パラメータの「__format」には「html」と「pdf」が指定可能であり、「__format」パラメータを指定しなかった場合

html 表示となります。

Page 22: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

22 http://www.bbreak.co.jp/

④④ PPDDFF のの日日本本語語表表示示 現在のBIRTのバージョン 1.0.1 では、レポートに日本語フォントがある場合、PDF表示時に正しく表示されません。

これは PDF 作成時の FOP に日本語フォントが含まれていないためです。

日本語フォントを含むレポート

PDF 表示時

Page 23: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

23 http://www.bbreak.co.jp/

以下の手順で日本語フォントを追加し、PDF 表示できるようにします。

・ FOP のダウンロード

FOP のダウンロードサイト(http://xmlgraphics.apache.org/fop/download.html)より FOP のアーカイブをダウンロ

ードし解凍(本資料の例では C ドライブ直下)します。現在(2005 年 12 月)の最新バージョンは 0.20.5 です。

・ fontmetrics ファイルの作成

今回は「MS 明朝」と「MS ゴシック」をレポート内で表示できるようにしますので、2 種類の fontmetrics ファイルを作

成します。

コマンドプロンプトで FOP の解凍フォルダに移動し、以下のコマンドを実行し、「MS 明朝」の fontmetrics ファイル

(msmincho.xml)を作成します。

java -cp build/fop.jar;lib/xerces.jar;lib/xalan.jar;lib/batik.jar org.apache.fop.fonts.apps.TTFReader -ttcname

"MS Mincho" C:/WINDOWS/Fonts/msmincho.ttc msmincho.xml

続いて「MS ゴシック」の fontmetrix ファイルを作成します。

java -cp build/fop.jar;lib/xerces.jar;lib/xalan.jar;lib/batik.jar org.apache.fop.fonts.apps.TTFReader -ttcname

"MS Gothic" C:/WINDOWS/Fonts/msgothic.ttc msgothic.xml

・ 設定ファイルの編集

FOP の config ファイルの編集し、fontmetrix ファイルと font の指定をします。

FOP の解凍フォルダ\conf\userconfig.xml を編集します。

<fonts></fonts>の間に「MS 明朝」と「MS ゴシック」のフォント指定を追加します。

「font-triplet」の「name」属性には日本語ではなく、unicode 変換した文字列を指定するのがポイントです。

・ JVM 起動オプションへの追加

編集した userconfig.xml を FOP の config ファイルとして、JVMの起動オプションに設定します。

<fonts>

<font metrics-file="C:\fop-0.20.5\msmincho.xml" embed-file="C:\WINDOWS\Fonts\msmincho.ttc" kerning="yes">

<font-triplet name="&#xff4d;&#xff53; &#x660e;&#x671d;" style="normal" weight="normal"/>

<font-triplet name="&#xff4d;&#xff53; &#x660e;&#x671d;" style="normal" weight="bold"/>

<font-triplet name="&#xff4d;&#xff53; &#x660e;&#x671d;" style="italic" weight="normal"/>

<font-triplet name="&#xff4d;&#xff53; &#x660e;&#x671d;" style="italic" weight="bold"/>

</font>

<font metrics-file="C:\fop-0.20.5\msgothic.xml" embed-file="C:\WINDOWS\Fonts\msgothic.ttc" kerning="yes">

<font-triplet name="&#xff4d;&#xff53; &#x30b4;&#x30b7;&#x30c3;&#x30af;" style="normal" weight="normal"/>

<font-triplet name="&#xff4d;&#xff53; &#x30b4;&#x30b7;&#x30c3;&#x30af;" style="normal" weight="bold"/>

<font-triplet name="&#xff4d;&#xff53; &#x30b4;&#x30b7;&#x30c3;&#x30af;" style="italic" weight="normal"/>

<font-triplet name="&#xff4d;&#xff53; &#x30b4;&#x30b7;&#x30c3;&#x30af;" style="italic" weight="bold"/>

</font>

</fonts>

Page 24: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

24 http://www.bbreak.co.jp/

今回は tomcat をサーバとして使用していますので%TOMCAT_HOME%\bin\Catalina.bat に以下の一文を追加しま

す。

JAVA_OPTS=-DFOP_CONFIG_FILE="C:\fop-0.20.5\conf\userconfig.xml"

・ PDF プレビュー

Page 25: bBreak innovative system solution...bBreak innovative system solution 4 イン」が表示されていれば成功です。 加えて今回はDB上のデータをHTML形式で

bBreak innovative system solution

25 http://www.bbreak.co.jp/

44.. ままととめめ

BIRTは、本資料で紹介した以外にもチャート機能、BIRTJavaScriptなどの多様な機能を有し、またそれらを作成す

るのにも自らコーディングすることはほとんどなく、短時間で様々なデータを様々な表示形式で出力することが可能で

ある。

ユーザは、データ構造やテーブルやデータソースを意識せず、複数のテーブル、複数のデータソースからデータを

抽出し、それをひとつのレポートにまとめることができる。しかも専門のアナリストではなく、SQL をまったく知らないエ

ンドユーザが容易にレポート出力を可能とする、これはビジネス・インテリジェンスのコンセプトである「経営者や一般

のビジネスパーソンが、情報分野の専門家に頼らずに自らが売上分析、利益分析、顧客動向分析などを行い、迅速

に意思決定することの実用性」を実現しているといえよう。

記述内容に何かお気づきの点、質問等ありましたら下記までご連絡ください。

開発部

川本 博之

[email protected]