EspressReport ES でレポートを作成するための JSON データへのアクセス方法

このガイドでは、EspressReport ES(ERES)からJSONデータにアクセスし、そのデータを使用してレポートを作成する方法について説明します。このJSON接続は、チャートやその他のビジュアルの作成にも使用できます。CData JDBC Driver for JSON は、JSON 構造をテーブルおよび列に変換し、ERES が JDBC を通じてクエリを実行できるようにします。(なお、CData JDBC Driver for JSON は、EspressChart、EspressReport、および EspressDashboard にも同様の方法でデプロイできることにご留意ください。)

このブログでは、Windows を使用し、ERES は C:\ERES にインストールされているものとします。

はじめに

レポートに変換したいJSONデータから始めます。以下のいずれかを使用できます。ローカルのJSONファイルは、最初のテストを行うための簡単な出発点となります。ERESをインストールしたら、以下の手順に従ってCDataドライバーを追加し、データに接続して、レポートを作成してください。

JSONファイル: 売上データのエクスポートなど、既存のファイル

JSON Webサービス: データを提供するエンドポイント

1. CData JSON JDBC ドライバーをインストールする

  1. CData JSON JDBC ドライバーのダウンロードページから Windows 用インストーラーをダウンロードします。ドライバーを評価する場合は、「trial」を選択してください。
  2. インストーラーを実行し、セットアップのダイアログに従ってください。
  3. ドライバーのインストールフォルダ内にある lib フォルダを開きます。次の手順で、このフォルダ内のファイルを使用します。

2026年リリース版の場合、デフォルトのフォルダは C:\Program Files\CData\CData JDBC Driver for JSON 2026\lib です。お使いのコンピュータによっては、バージョン年や場所が異なる場合があります。

2. JSON 接続の設定とテスト

ドライバーの lib フォルダ内で、cdata.jdbc.json.jar をダブルクリックして、接続文字列ビルダーを開きます。このツールを使用すると、設定の入力、テスト、およびすぐに使用できる JDBC URL のコピーを行うことができます。

ツールが開かない場合は、コマンドプロンプトで次のコマンドを実行してください。インストール先に合わせてパスを調整してください:

java -jar 「C:\Program Files\CData\CData JDBC Driver for JSON 2026\lib\cdata.jdbc.json.jar」

Windows が java を見つけられない場合は、ERES に同梱されている Java ランタイムを使用して、以下の完全なコマンドを実行してください:

「C:\ERES\jre\bin\java.exe」 -jar 「C:\Program Files\CData\CData JDBC Driver for JSON 2026\lib\cdata.jdbc.json.jar」

JSON データソース(ローカルの JSON ファイルまたは JSON Web サービス)に合わせて、以下の例を使用してください。どちらの例でも、URI は JSON データの場所を表します。CData 接続文字列ビルダーでは、図に示すように データモデル を リレーショナル に設定してください。末尾のオプションのセクションでは、その他の選択肢について説明しています。

例 A: ローカルの JSON ファイルを使用する

ファイルを、ERES サーバーが読み込める場所に配置してください(例:C:\Data\sales.json)。ERES が別のコンピュータで実行されている場合は、そのサーバーからアクセス可能なパスを使用してください。Windows では、ERES サーバー(Tomcat)を実行しているアカウントに、JSON ファイルを読み取る権限が必要です。

接続文字列ビルダーに以下の設定を入力してください:

設定値
接続タイプLocal
URIJSON ファイルへの完全なパス(例:C:/Data/sales.json)
データモデルこの例ではリレーショナル
認証スキームこのローカルファイルについては無し

CDataツールは、これらの設定に基づいてJDBC URLを生成し、ウィンドウ下部の接続文字列フィールドに表示します。接続のテストをクリックします。テストに成功したら、OKをクリックしてメッセージを閉じ、次にクリップボードにコピーをクリックします。この接続文字列は、手順5でERESに貼り付けます。

スクリーンショットに表示されている接続文字列は次のとおりです。

jdbc:json:JSONFormat=JSON;ConnectionType=Local;URI=c:\data\sales.json;AuthScheme=None;DataModel=Relational;

例 B: JSON Web サービスへの接続

サービスから提供された JSON エンドポイントの URL を使用します。以下の設定は、ログインを必要としない HTTPS エンドポイント用です。https://api.example.com/sales を実際の URL に置き換えてください。

設定値
接続タイプHTTPS
URIJSONエンドポイント(例:https://api.example.com/sales)
データモデルこの例ではリレーショナル
認証スキーム無し(Webサービスで認証が不要な場合)

JDBC URLの例:

jdbc:cdata:json:ConnectionType=HTTPS;URI=https://api.example.com/sales;AuthScheme=None;DataModel=Relational;

HTTP ベーシック認証を使用すると、Web サービスは JSON データを返す前にユーザー名とパスワードを確認できます。サービスプロバイダーがこの認証方法を指定している場合は、CData の接続文字列ビルダーに以下の設定を入力してください。これにより、JDBC URL にこれらの設定が反映されます。以下の例では、https://api.example.com/sales、your-user、および your-password を、実際のサービス URL およびアカウント情報に置き換えてください。

  1. Auth Scheme を Basic に設定します。
  2. User を、JSON Web サービスで指定されたユーザー名に設定します。
  3. Password を、そのアカウントのパスワードに設定します。
jdbc:cdata:json:ConnectionType=HTTPS;URI=https://api.example.com/sales;AuthScheme=Basic;User=your-user;Password=your-password;DataModel=Relational;

OAuth またはその他の認証方法を必要とするサービスについては、その方法に関する CData HTTP(S) 接続手順に従ってください。

接続のテストとコピー

  1. CDataツールで接続のテストをクリックします。
  2. テストに成功したら、OKをクリックしてメッセージを閉じ、次にクリップボードにコピーをクリックします。これにより、接続文字列フィールドから完全なJDBC URLがコピーされます。これを手順5でERESに貼り付けます。

3. ERESにドライバーを追加する

CDataのlibフォルダ内にある以下の2つのファイルを探します。ERESを実行しているコンピュータで、有効な試用版またはライセンス版を使用してください。

  • cdata.jdbc.json.jar
  • cdata.jdbc.json.lic
  1. 両方のファイルをERESのライブラリフォルダにコピーします。この例では、C:\ERES\WEB-INF\libです。JARファイルとライセンスファイルは一緒に保管してください。
  2. ERES を実行している Tomcat サーバーを再起動し、ドライバが読み込まれるようにします。

4. オーガナイザーを開き、データレジストリを作成する

  1. ERESにログインし、左側のメニューからオーガナイザーを選択します。
  2. オーガナイザーを開きます。ERESのインストールフォルダからERESOrganizer.batを実行することもできます。オーガナイザーで、ファイル → データソースの管理を選択して、データレジストリマネージャーを開きます。
  3. 追加をクリックし、新しいデータレジストリに名前を付けます(例:JSONチュートリアル)。
  4. 新しいレジストリで、データベースを選択し、追加をクリックして接続を作成します。

5. JSON データソースを追加する

以下の設定を使用して、データベース接続ダイアログに入力してください:

設定値
NameJSON Sales のような、説明的な名前であれば何でも可
Driver ListCData JSONが利用可能な場合はそれを選択し、そうでない場合はその他を選択してください
Drivercdata.jdbc.json.JSONDriver
URLCData接続テストツールからコピーした完全なJDBC URL
User Nameローカルファイルや認証不要のエンドポイントの場合、またはJDBC URLにすでに認証情報が含まれている場合は、空欄のままにしてください。
Passwordローカルファイルや認証不要のエンドポイントの場合、あるいはJDBC URLに認証情報がすでに含まれている場合は、空欄のままにしてください。

ドライバ一覧でその他を選択した場合は、[ドライバ]フィールドにcdata.jdbc.json.JSONDriverと入力してください。テストが失敗した場合は、以下を確認してください。その他の接続設定については、CData JSON JDBC ドライバのドキュメントを参照してください。

  1. CDataツールからコピーしたJDBC URLをURLフィールドに貼り付けてください。
  2. 接続テストをクリックします。
  3. テストが成功したら、接続を保存してください。
  • 両方の CData ドライバーファイルが ERES ライブラリフォルダ内にあることを確認してください。
  • ドライバーファイルを追加した後、Tomcat を再起動したことを確認してください。
  • ERES サーバーが JSON ファイルまたは Web サービスにアクセスできることを確認してください。

その他の接続設定については、CData JSON JDBC ドライバーのドキュメントを参照してください。

6. クエリの作成と確認

  1. JSON接続の下で、クエリを選択し、追加をクリックします。
  2. Sales Dataなどのクエリ名を入力し、クエリビルダーを開きます。
  3. データベーステーブルでテーブルを選択し、追加をクリックしてから、閉じるをクリックします。この例では、salesを選択します。クエリに含めたいフィールドをダブルクリックします。
  4. 必要に応じて、フィルタや並べ替えを追加します。レポートでネストされた配列から作成された関連テーブルを使用する場合は、適切な結合を追加します。
  5. データシートビューを開き、期待通りのレコードと値が表示されていることを確認します。
  6. クエリビルダーで[ファイル] → [完了]を選択して、クエリを保存します。データレジストリに戻り、[完了]をクリックして、レポートを作成する前にレジストリを保存します。

テーブル名と列名は、JSONの構造およびCData接続設定で選択されたデータモデルによって異なります。必要なフィールドがない場合は、以下のオプションのセクションを参照してください。データをページ単位で返すWebサービスの場合は、クエリに必要なすべてのレコードが含まれているかどうかも確認してください。

7. レポートの作成

  1. Data Registry Managerで、保存済みのレジストリを選択し、編集をクリックします。JSON接続を展開し、保存済みのクエリを選択して、表示をクリックします。
  2. レポートの作成を選択します。以下の例では、Simple Columnarを選択し、次へをクリックします。
  3. レポートマッピングで、すべて追加をクリックしてクエリフィールドを含め、次へをクリックします。列情報を確認し、もう一度次へをクリックします。
  4. [レポートタイトルの追加] を選択し、JSON 売上レポート と入力します。[次へ] をクリックし、[左揃え] を選択して、[完了] をクリックします。
  5. [列の自動調整] が表示された場合は、[はい] を選択して列を 1 ページに収め、書式調整を確認します。
  6. [プレビュー] を開きます。[ライブデータを使用] を選択し、[OK] をクリックします。行と値がクエリの結果と一致していることを確認します。

7.「ファイル」→「保存」を選択し、レポートにReportFiles/JSON Sales Report.rptなどの名前を付けます。プロンプトが表示されたら、オーガナイザーのフォルダを選択し、「OK」をクリックします。

オプション:JSONのテーブル表示方法を調整する

最初のテストでは、例のRelational設定のままにしておいても構いません。JSONにネストされたデータが含まれている場合、これらのDataModelオプションによって、クエリビルダーでの表示方法が制御されます。ドライバーが、レコードのソースとして希望するJSON配列を使用しない場合は、JSONPathを使用して、JSONデータのどの部分に目的のレコードが含まれているかを指定してください。CDataのデータモデルガイドおよびJSONPathガイドでは、これらの設定について解説しています。設定を変更した後は、レポートでクエリを使用する前に、テーブル、フィールド、および返されるデータを再度確認してください。

リレーショナル: ネストされたオブジェクト配列を関連テーブルとして表示し、それらを結合するために使用できるキーを提供します。

ドキュメント: トップレベルのレコードを1つのテーブルに表示し、ネストされたオブジェクト配列はJSON値として保持します。

FlattenedDocuments: 親レコードとネストされた配列を1つのテーブルに統合します。親レコードは複数の行に表示される場合があります。

まとめ

これで、JSONデータがCData JDBCドライバーを介してERESに接続されました。接続とクエリが保存されたため、レポート、チャート、ダッシュボードでデータを使用でき、今後のレポート作成タスクでもこの設定を再利用できます。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください。