EspressReportのコンポーネントとアーキテクチャ【Java対応レポート・帳票ツールEspressReport】


EspressReportは次のコンポーネントから構成されています。

Report Designer
ReportDesignerはポイント・クリック環境をユーザに提供するGUIツールです。ReportDesignerにはまたデータ・アクセス、データベース・クェリ、チャート・デザイン機能が含まれます。ReportDesignerはクライアント・アプリケーション、またはWebブラウザでのアプレットとしてロードしたDesignerでクライアント/サーバ構成で稼動させることができます。

ChartDesigner
ChartDesignerはポイント・クリック環境でユーザにチャートのデザイン・構築環境を提供するGUIツールです。ReportDesignerから起動させ、レポートに作成したチャートを組み込むか、ReportAPIを使用してスタンド・アローンでチャートを作成できます。

ReportAPI
ReportAPIはユーザがサーバ・サイド及びクライアント・サイドに、アプリケーション、サーブレット、JSPにレポートを組み込むことができるアップリケーション・プログラム・インターフェイスです。その100%Javaという利点で、数多くのプラットフォームをサポートしています。またAPIを使用してレポート・フォーマットをカスタマイズすることが可能です。

サンプル・コード: サーブレットを使用してhtmlとしてクライアントへのレポートのオープンとストリーム
——————————————————-
import java.awt.*;
import java.applet.*;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import quadbase.reportdesigner.ReportAPI.*;
import quadbase.reportdesigner.ReportElements.*;
import quadbase.reportdesigner.ReportViewer.*;
import quadbase.reportdesigner.util.*;
import quadbase.reportdesigner.lang.*;

public class SampleServlet extends HttpServlet implements SingleThreadModel {

public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {

// Set the “content type” header of the response
res.setContentType(“text/html”);

// Get the response’s OutputStream to return content to the client.
OutputStream toClient = res.getOutputStream();

try {
// Open up specified Report
QbReport report = new QbReport((Applet)null, “templates/SampleReport.rpt”);

// Export (Stream) the report to DHTML
report.export(QbReport.DHTML, toClient)
} catch(Exception e) {
e.printStackTrace();
}

// Flush and close the outputStream
toClient.flush();
toClient.close();
}

public String getServletInfo() {
return “SampleServlet servlet for EspressReport”;
}
}
————————————————-

ReportViewer
ReportViewerはアプレットにインテグレートして、レポートのビュー、インターアクト(相互使用)が可能です。アプレットViewerのポップアップ・メニュやツールバーを使用してレポートを回覧することができます。

PageViewer
PageViewerはReportViewerと同様にアプレットにインテグレートされたページ・サービス技術です。PageViewerを使用してレポートを指定した時にレポート内のページをクライアントに送信することができます。これにより、ユーザは大型のレポートのビュー/プレビューが可能となります。

EspressManager
EspressManagerはReportDesignerとSchedulerのバックエンドとして機能します。EspressManagerはサーバ・サイドのデータ・アクセス、ファイルI/Oを処理します。さらにEspressManagerはデータベース接続、データ・バッファリングを供給します。またEspressManagerユーザが指定したジョブに従ってサーバ・サイドでスケジュールしたプロセスを実行します。


Scheduler
ShedulerはEspressManagerと相互に稼動するインターフェイスです。ユーザはレポートのEmail,プリント等スケジュールしたタスクの実行が可能です。

 

関連するトピックス: