EspressReport での帳票作成方法とその機能について

株式会社クライム
ソフトウェア事業部
TEL: 03-3360-9336
FAX: 03-3660-9337
soft@climb.co.jp
www.climb.co.jp/soft11.) 概要
EspressReport は情報豊富なレポートをインターネットやイントラネットで簡単にデザインすることができるパワフルな Java レポート・ツールです。EspressReport はあらゆるデータソースにコネクトすることができ、HTML、DHTML、PDF、Microsoft Excel、リッチテキスト、データテキスト、CSV、XML など、これらの形式で情報を表現したり、フォーマットしたりすることが簡単にできます。パワフルな Java API はアプリケーション、サーブレット、アプレットにレポート機能を持たせることを容易にしています。

1.1.) EspressReport 構造
EspressReport にはデザインタイムとランタイムで実行できる数多くのコンフィギュレーションがあります。デザインタイムには、データ・アクセス・ツールを含む Report Designer GUI インタフェースとチャート・ツールが、クライアント・マシーンにアプリケーションとしてロードされるか、またはアプレットとしてクライアント・サーバ構造にロードされます。

When Report Designer is running, the Report Designer が実行中は、EspressManager コンポーネントがサーバサイドで実行されています。EspressManager は、クライアント・アプレットによって、セキュリティ保持のため抑制されているデータアクセスとファイルＩ/Ｏを実行します。EspressManager はマルチユーザ開発環境のための同時コントロールはもちろん、コネクションやデータベースコネクションのデータバッファリングも提供しています。EspressManager はReport Designer と一緒に実行されていなければなりません。

デザインタイムの EspressReport 構造

このドキュメントで紹介する機能の詳細はドキュメントの Designer Guide を参照してください。

2.1.)Report Designer のスタート
まず、Report Designer がスタートする前に、EsspressManager が既に作動している必要があります。EspressManager
は Report Designer のデータアクセスとファイル I/O を管理するバックエンド・コンポーネントです。（このためロー2カルとリモートの両方で実行することができます。）EspressManager をスタートさせるには、インストーレーション・ルートディレクトリにある EspressManager.bat ファイルを実行します。（Unix にインストールした場合はEspressManager.sh）ディフォルトでは EspressManager がスタートすると、EspressManager モニターが新たなウィンドウを開きます。

EspressManager モニター

EspressManager が作動していれば、インストレーション・ルートディレクトリにある ReportDesigner.bat ファイルを実行することによって、Report Designer をスタートさせることができます。（Unix にインストールした場合はReportDesigner.sh）ダイアログボックスが表示されてログインが促されます。ディフォルトユーザでログインするにはユーザ名に「guest」、パスワードは何もいれません。（ユーザ設定の詳細はデザイナーガイドを参照してください。）
ユーザ名とパスワードを入れたら、「Start Report Designer」ボタンをクリックします。Report Designer が新たなウィンドウを開きます。

3

デザイナー・ログイン・ウィンドウ2.2.) データソースのセットアップ
データソースはデータレジストリで維持されます。新データレジストリを作成するには、ファイルメニューから「NEW」を選び新規レポートをスタートさせます。ダイアログが表示され、既存のレジストリを使用するか、新規にレジストリを作成するかのどちらかを選択します。

レジストリ選択ダイアログ

新規データレジストリのスタートを選び「Next>>」をクリック。レジスタの名前を指定するよう促すダイアログが開かれます。データレジスタの名前をなにかしら入れて「OK」をクリックします。データレジストリが新たなウィンドウを開きます。

4データレジストリウィンドウ

2.2.1.) データベース･コネクションのセットアップ

EspressReport は JDBC、ODBIC、JNDI、EJB、SOAP、SalesForce のデータソースにコネクトすることができます。それぞれの例はインストールするときに示されるようになっています。このガイドでは ODBC ソース使って例を示していきます。

2.2.1.2.) ODBC コネクションのセットアップ

Windows プラットフォームで実行している Users は、Sun の ODBC-JDBC ブリッジを使いながら、EspressReport ODBC ソースにもコネクションすることができます。 ここでは、EspressReport のインストールで一緒にインストールされる
Woodview Access データベースへの ODBC コネクションのセットアップを行っていきます。それにはまず、システムにデータソースとして Woodview をセットアップしなければなりません。そのために Windows コントロールパネルから ODBCデータソースウィンドウを起動します。 ユーザもしくはシステム DSN を追加します。データベースドライバとして
Microsoft Access を選び、データソース名を Woodview として指定します。「データベース」の下にある「Select」ボタンをクリックします。

5

Windows ODBC データソース アドミニストレータ

Woodview の DSN をセットアップしたら、データソースマネージャのに戻ります。左側のフレームにある「Database」をクリックし、「Add」ボタンをクリックします。すると、新規データベースへのコネクション情報を入力するダイアログが表示されます。Sun の JVM(例 JRE1.2 またはそれ以上)を使用する場合は、指定されたディフォルトドライバが作動するでしょう。 データベースの名前として、「WoodviewODBC」と入れます。そして URL に「jdbc:odbc:Woodview」と入れます。「Require Login」と「Save Password」のチェックボックスをクリックしてチェックをいれます。ユーザ名とパスワード両方に「admin」と入力します。

セットアップデータベースダイアログ「OK」をクリックしてデータソースマネージャウィンドウに戻ります。ウィンドウには「Database」下に Woodview の新しいノードができています。

EspressReport は、レポートデータを取り出すためにデータベースクエリーへのインタフェースを豊富に用意しています。SQL ステートメントを直接タイプすることもできれば、クエリービルダーを使うこともできます。また、エンドユ

6

ーザがデータベース構造に悩まされることがないように用意されたクエリーインタフェースを作成するデータビュー使うこともできます。ここでは、クエリーを作成するクエリービルダーを使った例を紹介します。

*注 - この例は、データが同じであれば、JDBC または ODBC データソースを使って行うことができます。スクリーンシ
ョットは Access データベースからです。

新規クエリーを作成するには、データソースマネージャーの左側のフレームに help/examples/DataSources/database にある EspressReport Woodview.mbd ファイルをブラウズします。そしてこのファイルを選びます Woodview か
WoodviewODBC をクリックして開きます。2 つのサブノードが現われ、ひとつは「Queries」もうひとつは「Data View」です。Queries ノードを選び、「Add」をクリックします。ダイアログが表示されるので、クエリー名を指定し、クエリビルダーを起動するか、SQL ステートメントを入力するかのどちらかを選びます。

クエリー名前ダイアログ

適当な名前を入力し、「Open query builder」を選んで「OK」をクリックします。クエリービルダーが起動します。メインのクエリービルダーウィンドウには、上部に別ウィンドで Woodview のテーブルすべてを含んでいるウィンドウがあります。

7

クエリービルダーダイアログ

クエリービルダーウィンドウの上部半分にテーブルが表示されます。テーブルのウィンドウをクリックして閉じます。
クエリービルダーウィンドウの各テーブルをそれぞれドラッグして適度に間隔を空けます。テーブルのフィールド間つなぐ結合線があるのがわかります。

テーブルとクエリービルダー

88 番目のカラムは空白まま、Field フィールドで右クリックしてポップアップメニューから「Build」を選びます。これにより、計算式の入ったカラムを作成できるフォーミュラビルダーインタフェースを開きます。

フォーミュラービルダーウィンドウ

カラムを作成するためには、まず左丸括弧ボタンをクリックします。次に「Tables」フォルダをダブルクリックします。
5 つのノードが開き、各テーブルは先にクエリー用に選択したテーブルです。それぞれテーブルのフォルダを開くと、そのテーブルにあるカラムフィールドがリストされます。
「Products」フォルダを開き、「UnitPrice」を選んで、「Insert」ボタンをクリックします。 そして「+」（たし算）ボタンをクリックします。次に「Order Details」テーブルから「StainCost」を挿入します。今度は右丸括弧ボタンをクリックします。
「*」（かけ算）ボタンをクリックします。最後に「Order Details」
テーブルから「Quantity」を挿入します。完成したフォーミュラは次のようになります。 (Products.UnitPrice + [OrderDetails].StainCost) * [Order Details].Quantity.

フォーミュラービルダーウィンドウに表示されるフォーミュラ9

「OK」をクリックすると、計算式の入ったカラムがクエリーに追加されます。次にエイリアスを作るカラムを与えます。
Next we will give the column you build an alias.そのカラムを右クリックしてポップメニューから「Alias」を選びます。カラムエイリアスを指定するダイアログが表示されます

カラム・エイリアス・ダイアログ「OK」をクリックするとクエリービルダーでカラム名が変更されるのがわかります。次にクエリービルダーの「DatasheetView」タブをクリックします。クエリーが実行されるのでクエリー結果の最初の 30 レコードが見られるはずです。

クエリービルダーデータシートビュー

これでクエリーのデザイン作業は完了です。ファイルメニューの「Done」を選んで、変更を保存してください。クエリービルダーウィンドウが閉じられ、データソースマネージャーウィンドウに戻ります。「Queries」の下のノードに、たった今デザインしたクエリーができています。

10データソースマネージャーとクエリー

3.) レポートマッピング
EspressReport ではレポートタイプとして、シンプル帳票、サマリーブレイク、クロス集計、基本デイアル、メーリングラベルをサポートしています。レイアウトとマッピングオプションの詳細はデザインガイドの Chapter 4 を参照してください。 ここではサマリーブレイクレイアウトについて紹介します。

3.1.) サマリーブレークレイアウト

レポートをマッピングするには、ますデータソースマネージャーのクエリーノードを選択し、次に、「Next」ボタンをクリックします。新たにウィンドウが開かれ、クエリーのリザルト（最初の 20 レコードのみ）が入ったテーブルを表示します。このクエリーはパラメータを含んでいるので、パラメータが初期化されたときに指定したデフォルト値で実行していることがわかります。

11クエリーリザルト画面

レポートウィザードを続けるために、「Next」ボタンをクリックします。すると、どのレポートレイアウトオプションを使用するかを選ぶダイアログが表示されます。

レポートレイアウト選択ダイアログ

サマリーブレークレイアウトは、レポートカラムのグループ化と総計の機能が追加されている意外は、帳票レイアウトに似ています。サマリーブレークレポートは少なくとも 1 カラムによってグループ化されていなければなりません。

12レポートレイアウトタイプをサマリーブレークに選択し、「Next」をクリックします。次の画面では、カラム選択はそのまま同じにして、「Next」をクリックしデータマッピングウィンドウへ行きます。このウィンドウにはカラムレイアウトのオプションよりオプションが多いことがわかります。

デサマリブレークレイアウトのデータマッピング画面

データマッピングダイアログでは最初の 2 つのカラムの「Row Break」というところにチェックを入れます。この 2 つのカラムによってレポートグループが作られます。そして、Quantity と Sales カラムの「Aggregation」のドロップダウンメニューから SUM を選択します。シンプル帳票レイアウトからフォーマットを引き継ぐ必要はないので「ApplyTemplate」オプションにはチェックをいれないでおきます。オプションの指定が完了したら、「Done」ボタンをクリックします。レポートデザイナーに戻り、すべてを反映した新しいマッピングが見られます。

13

デザインウィンドウのサマリーブレークレポート

I デザイナーでは、レポートに 2 つのレベルにネストされたグループがあるので、それぞれに対応するグループヘッダーとフッターセクションがあります。レポートセクションとその作用の詳細はデザイナーガイドの section 5.1 を参照してください。ここで「Preview」タブをクリックしてレポートをプレビューします。すると再び、パラメータの値を指定するように促されます。プレビューウィンドウでレポートをみれば、どのようにカテゴリ名、注文 ID によってグループ化されているか、また各グループサマリーの計算経過がわかります。

サマリーブレークレポートプレビュー

14４．）レポートの基本フォーマッティング機能
EspressReportの基本フォーマッティング機能を使って更に洗練されたレポートを作成が可能です。
レポートの基本フォーマティング機能：
レポートエレメントの移動と配置、データフォーマッティング、デュアルカラーの設定、エレメントの挿入（イメージの挿入、タイトルの挿入タイトルの挿入、ラインの挿入）、セクションオプションの設定など
詳しくはユーザガイド及びクイック・スタート・ガイドを参照ください。

完成したレポート

4.)最後にEspressReportのレポートの基本フォーマッティング機能はまだ多くの機能がありますが、詳しくはユーザガイド及びクイック・スタート・ガイドを参照ください。
○フォーミュラとスクリプト
フォーミュラの追加、スクリプトの追加、集計の追加○ドリルダウン○

サブレポート、○API他

15