各製品の資料を入手。
詳細はこちら →Crystal Reports でElasticsearch のデータに連携して帳票を作成
レポートウィザードを使って、最新のElasticsearch 連携データを使った帳票を作成。
最終更新日:2022-06-11
この記事で実現できるElasticsearch 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
Crystal Reports には、JDBC 標準向けのサポートが組み込まれています。この記事では、Elasticsearch の機能を持つ帳票を作成するレポート作成ウィザードの使い方を説明します。
Elasticsearch JDBC Driver のインストール
CData JDBC Driver for Elasticsearch を、ドライバーのJAR をCrystal Reports のクラスパスに含めてインストール:DataDriverCommonElement の下のClassPath element のパスに、 .jar を含むファイルのフルパスを追加します。
CRConfig.xml は通常C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\java に配置されます。— パスはインストールによって若干異なる場合があります。ドライバーのJAR はインストールディレクトリの[lib]サブフォルダ内にあります。
ClassPath にJAR を追加したら、Crystal Reports を再起動します。
Elasticsearch のデータに接続
下記の手順に従って、レポート作成ウィザードを使ってElasticsearch 接続を作成します。
- 新しい空の帳票で、[Create New Connection]>[JDBC (JNDI)]をクリックします。
ウィザードでJDBC 接続URL を選択します。
jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;
ドライバーのクラス名を設定:
cdata.jdbc.elasticsearch.ElasticsearchDriver
Elasticsearch 接続プロパティの取得・設定方法
接続するには、Server およびPort 接続プロパティを設定します。 認証には、User とPassword プロパティ、PKI (public key infrastructure)、またはその両方を設定します。 PKI を使用するには、SSLClientCert、SSLClientCertType、SSLClientCertSubject、およびSSLClientCertPassword プロパティを設定します。
CData 製品は、認証とTLS/SSL 暗号化にX-Pack Security を使用しています。TLS/SSL で接続するには、Server 値に'https://' を接頭します。Note: PKI を 使用するためには、TLS/SSL およびクライアント認証はX-Pack 上で有効化されていなければなりません。
接続されると、X-Pack では、設定したリルムをベースにユーザー認証およびロールの許可が実施されます。
帳票をデザイン
JDBC 接続をElasticsearch に追加したら、レポート作成ウィザードを使ってElasticsearch を帳票に追加できます。
-
帳票に必要なテーブルやフィールドを選択して、データソースを設定します。この例では、Orders テーブルのOrderName およびFreight カラムを使います。
-
チャートの種類を設定 ウィザードを完了すると、Crystal Reports はElasticsearch のデータ に実行されるSQL クエリをビルドします。ドライバーは、ライブElasticsearch のデータ に対してクエリを実行します。
- 必要に応じて、ほかのフィルタや帳票テンプレートを設定します。
-
データのインポートが終わったら、データをサマライズもしくはソートするチャートやレポートオブジェクトを作成できます。[Insert]>[Chart]をクリックして、チャートエキスパートを開きます。Total Freight by OrderName を表すグラフを作成するには、OrderName を[On Change Of]メニューセレクションの下のボックスに追加してからFreight を[Show Values]の下のボックスに追加します。
完成した帳票をプレビューして、チャートにデータが入っていることを確認します。Null 値を取り除きたい場合は、SelectionFormula を使います。
