Ready to get started?

Learn more about the CData JDBC Driver for Elasticsearch or download a free trial:

Download Now

Jaspersoft Studio でElasticsearch Data に接続

Jaspersoft Studio でライブデータを基に帳票を作成。



この記事では、CData JDBC Driver for Elasticsearch を使ってElasticsearch data の機能を持つJaspersoft Studio の基本的な帳票をテーブルやチャートで作成する方法を説明します。レポートを実行するたびに、チャートおよびテーブルはライブデータを表示します。JasperSoft のウィザードを使って、レポートエレメントを埋めるSQL クエリをいくつかビルドします。ドライバーは、リレーショナルデータベースへのデータのコピー処理をスキップする間、標準SQL を利用可能にします。代わりに、クエリは基になるElasticsearch API に直接実行されます。

JDBC データソースとしてElasticsearch Data に接続

Jaspersoft Studio で、[Data Adapter]ウィザードを使ってJDBC データソースに接続できます。下記の手順に従って、プロジェクトからElasticsearch data に接続します。Elasticsearch データアダプターをワークスペースに追加します。

  1. [Repository Explorer]で[Data Apters]ノードを右クリックし、[Create Data Adapter]をクリックします。
  2. [Database JDBC Connection]を選択します。
  3. ユーザーフレンドリーなドライバー名を入力します。
  4. [Driver Classpath]タブで[Add]をクリックします。ダイアログが表示されたら、インストールディレクトリの[lib]サブフォルダにナビゲートします。ドライバーのJAR を選択します。
  5. [Database Location]タブでは、以下の情報が必要です:
    • JDBC Driver:JDBC driver のクラス名cdata.jdbc.elasticsearch.ElasticsearchDriver を入力。
    • JDBC URL:JDBC URL に必要な接続プロパティを入力。接続プロパティは、セミコロン区切りでname-value ペアを入力する必要があります。Elasticsearch の一般的なJDBC URL は次のとおりです:

      jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;

      Set the Server and Port connection properties to connect. To authenticate, set the User and Password properties, PKI (public key infrastructure) properties, or both. To use PKI, set the SSLClientCert, SSLClientCertType, SSLClientCertSubject, and SSLClientCertPassword properties.

      The data provider uses X-Pack Security for TLS/SSL and authentication. To connect over TLS/SSL, prefix the Server value with 'https://'. Note: TLS/SSL and client authentication must be enabled on X-Pack to use PKI.

      Once the data provider is connected, X-Pack will then perform user authentication and grant role permissions based on the realms you have configured.

Elasticsearch Data で帳票を作成

Elasticsearch のデータアダプターを作成したら、Elasticsearch data をJasperReports に追加できます。このセクションでは同梱されているテンプレートの一つをElasticsearch data で埋める方法について説明します。

  1. [File]>[New Jasper Report]をクリックします。テンプレートを選択し、親プロジェクトを選択して、帳票に名前を入力します。
  2. [Data Adapter]ウィザードで、先のセクションで作成したデータアダプターを選択します。
  3. [Diagram]タブでは、クエリを視覚的にビルドできます:テーブルをボックスにドラッグしお好みのカラムをクリックします。カスタムクエリも入力可能です。例: SELECT * FROM Orders
  4. データセットに含めたいフィールドを選択します。

[Preview]タブでは、最新のElasticsearch data を使ったものと同じ帳票を見ることができます。

チャートを追加

下記の手順に従って、Elasticsearch data のチャートを既存の帳票に追加します。棒グラフを、先のセクションで作成した帳票テンプレートの最後に追加します。

  1. [Design]タブをクリックします。
  2. [Outline]ビューで、帳票のルートノードを右クリックし[Create Dataset]をクリックします。
  3. データセット名を入力し、オプションをクリックして接続またはデータソースから新しいデータセットを作成します。
  4. [Data Adapter]メニューで、最初のセクションで作成した[Data Adapter]を選択します。
  5. 次のクエリを入力します:

    SELECT Orders.Freight, Customers.ContactName FROM Customers INNER JOIN Orders ON Customers.CustomerId=Orders.CustomerId
  6. データセットに必要なフィールドを選択します。この例ではすべてのフィールドを使います。
  7. カラムでグループ化する手順はスキップします。Elasticsearch API はGROUP BY のステートメントをサポートしていません。

データセットを追加したら、下記の手順に従ってチャートを作成します。

  1. [Outline]ビューの[Summary]ノードをクリックします。[Properties]ビューで高さを400ピクセルに設定します。サマリーバンドが帳票の最後にプリントされます。
  2. チャートを[Palette]からsummary にドラッグします。Chart ウィザードが表示されます。
  3. チャートの種類を選択します。この例では棒グラフを使います。
  4. [Dataset]メニューで、チャート用に作成したデータセットを選択します。
  5. [Dataset]タブで、オプションを選択してマスター帳票と同じ接続を使用します。Chart ウィザードは接続パラメータを入力し、メニューセレクションを[Use Another Connection]に変更します。
  6. [Series]メニューの隣にあるボタンをクリックし、デフォルトシリーズを削除します。[Add]をクリックします。
  7. [Expression Editor]が表示されたら、カラムをダブルクリックして各カラム値に新しいシリーズを作成します。例:OrderName。シリーズをOrderName に設定した場合、OrderName ごとに新しい棒グラフが作成されます。
  8. [Value]ボックスの隣にあるボタンをクリックし、チャートのmeasures 用に[Expression Editor]を開きます。カラムをダブルクリックしてy 軸に追加します。例:Freight。
  9. [Label]ボックスの隣にあるボタンをクリックし、チャートのdimensions 用に[Expression Editor]を開きます。カラムをダブルクリックしてx 軸に追加します。例:OrderName。
  10. この例ではカテゴリを使用しないため、[Category]ボックスに空の文字列 "" を入力します。

チャートを作成したら基本的なフォーマットを行い、サブレポートをレポートに未使用スペースなくシームレスに追加できるようにします。

  1. チャートを右クリックして[Size to Container]>[Fit Both]をクリックします。
  2. メインレポートでサブレポートを右クリックして[Size to Container]>[Fit Both]をクリックします。

プレビューする前に帳票への変更を保存します。チャートが帳票の最後のページに表示されます。

 
 
ダウンロード