BIRT によるレポートの作成

ビジネス・インテリジェンスおよびレポート作成ツール (BIRT) は、Eclipse ベースのレポート作成システムであり、グラフィックス、テーブル、グラフ、および図表などを、洗練された PDF や HTML フォーマットで出力できるようにするものです。 Java™ 用に生成されるプログラムをコーディングするときは、BIRT に対する EGL サポートを使用できます。

出力の設計を開始するには、ワークベンチの「レポート設計」パースペクティブを開いて、レポート・プロジェクトを作成します。 代わりに、EGL または Web プロジェクトですべての作業を行うこともできます。

レポート を作成します。 ここでいうレポートとは (出力の設計作業のコンテキストでは)、デフォルトの拡張子が .rptdesign である XML ファイルのことです。 次のステップを実行します。
  1. 「ファイル」をクリックするか、プロジェクトで右クリックします。
  2. 「新規」 > 「その他」と選択します。
  3. 「ウィザードを選択」ダイアログで、「ビジネス・インテリジェンスおよびレポート作成ツール」 > 「レポート」と選択します。
  4. 親フォルダーおよびレポート名を指定して、「次へ」をクリックします。
  5. 「新規レポート」ダイアログで、レポートの基礎となるテンプレートを選択します。 質問アイコンを押した場合にヘルプが使用可能になります。 「レポート作成の虎の巻を表示」にチェックを入れると、 それ以降、レポート設計の詳細が表示されます。
  6. 「終了」をクリックします。
  7. 次のタスクには、データ・ソース (JDBC 接続など) の指定、データ・セット (SQL SELECT ステートメントで指定されたデータベース列など) の指定のほか、ラベルおよびテーブルなどの要素をドラッグ・アンド・ドロップするパレットの使用が含まれます。 以下の Web サイトでチュートリアルおよびバックグラウンド詳細にアクセスして、虎の巻を利用したり、レポート設計のより詳しい概要を取得したりすることができます。

      http://www.eclipse.org/birt

EGL または Web パースペクティブでの作業で、出力の作成を実行する EGL コードを作成します。 作成には、以下の 2 つのステップがあります。
  1. レポート (今後は 設計ファイル と呼びます) は、文書ファイル と呼ばれる、第二のファイルに変換されます。このファイルには、デフォルトの拡張子 .rptdocument が付き、中間フォーマットのデータを含んでいます。
  2. 文書ファイルは、PDF または HTML 出力に変換されます。
処理速度を速めるには、このほかに 2 つの選択肢があります。
  • 個々の文書ファイルの作成をスキップできます。
  • 設計ファイルの代わりに、既存の文書ファイルから処理を開始できます。
EGL における BIRT の処理に関する基本概念は、以下のとおりです。
  • EGL BIRT レポート を作成します。これは、外部型の BIRTReport に基づく変数です。 その変数の宣言時に、さまざまな詳細 (設計ファイルの名前など) を含めることができます。あるいは、詳細の一部またはすべてを指定せずに、関数を起動するか EGL BIRT レポートに固有のフィールドを設定することにより、それらを後で追加することもできます。 いずれの場合でも、開発時にリテラルを使用するか、実行時に変数を使用することにより、詳細を指定できます。
    以下に、最初に EGL BIRT レポートを作成し、次に設計ファイルの完全修飾名を指定する構文の例を示します。
      myReport BIRTReport { };
      myReport.designFile = "C:/MyBIRTReport.rptdesign";
  • 以下の例では、出力を作成する関数を呼び出します。
      myReport.createReportFromDesign();
    次の作成関数が使用可能です。
    • createReportFromDesign() は、文書ファイルにレポート・データを保存せずに、 設計ファイルの出力を作成します。
    • createReportFromDocument() は、文書ファイルの出力を作成します。
    • createDocument() は、設計ファイルの文書ファイルを作成します。
  • BIRTHandler 型の EGL レポート・ハンドラーを作成できます。このオプションの論理パーツは、イベント・ハンドラーとして機能する関数を含んでおり、レポート出力に影響を与える多くの詳細をカスタマイズできるようにします。 (createDocument または createReportFromDesign により可能であるように) EGL が レポート文書を作成するときに、EGL ランタイム・コードは、特に以下のイベントに応答して、イベント・ハンドラーを起動します。
    • テキスト・ファイルまたはデータベース接続のオープンまたはクローズ
    • データベース・カーソルのオープンまたはクローズ
    • レポート・フィールドのデータベース・データ行の取り出し
    • ラベルやグリッドなどのレポート要素の作成
    イベント・ハンドラーは、(例えば) 以下のタスクの 1 つを実行する場合があります。
    • レポート処理のいくつかの局面をガイドするレポート・パラメーターの値を指定する。
    • データベースへの接続に関するユーザー ID およびパスワードを指定する。
    • SQL SELECT ステートメントをセットアップして、データベースからのデータ取得をガイドする。
    • 中継として機能し、EGL プログラムから表示可能データを受け取って、その後で適時にそのデータをレポート・エンジンに送る。
    • レポートに配置される特定の値に応答して、レポートのフォーマットおよびテキストを変更する。

カスケーディング・スタイル・シート (CSS) を使用して、レポートの表示特性を制御することができます。