JReport Designer で Excel ののデータを連携利用

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
JReport Designer で Excel のデータ をもとにチャートとレポートを作成。

CData JDBC Driver for Excel のデータ を使えば、ダッシュボードやレポートから Excel をリレーショナルデータベースのように扱い、使い慣れた SQL クエリで Excel のデータ のライブデータにアクセスできます。この記事では、JReport Designer で Excel のデータ に JDBC データソースとして接続し、Excel のデータ のデータをもとにレポートを作成する方法を説明します。

Excel ののデータに接続

  1. C:\JReport\Designer\bin\setenv.bat を編集して、JAR ファイルの場所を ADDCLASSPATH 変数に追加します。
    ...
    set ADDCLASSPATH=%JAVAHOME%\lib\tools.jar;C:\Program Files\CData\CData JDBC Driver for Excel 2016\lib\cdata.jdbc.excel.jar;
    ...
    
  2. File メニューから New、Data Source と進み、新しいデータソースを作成します。
  3. 表示されるダイアログでデータソース名を入力し(例:CData JDBC Driver for Excel)、JDBC を選択して OK をクリックします。
  4. Get JDBC Connection Information ダイアログで、JDBC ドライバーへの接続を設定します。
    • Driver: Driver ボックスにチェックが入っていることを確認し、ドライバーのクラス名を入力します。
      cdata.jdbc.excel.ExcelDriver
    • URL: JDBC URL を入力します。URL は jdbc:excel: から始まり、その後に接続プロパティをセミコロン区切りで記述します。

      Authentication セクションのExcelFile には有効なExcel ファイルを設定する必要があります。

      Amazon S3 内のExcel への接続

      URI をバケット内のExcel ファイルに設定します。さらに、次のプロパティを設定して認証します。

      • AWSAccessKey:AWS アクセスキー(username)に設定。
      • AWSSecretKey:AWS シークレットキーに設定。

      Box 内のExcel への接続

      URI をExcel ファイルへのパスに設定します。Box へ認証するには、OAuth 認証標準を使います。 認証方法については、Box への接続 を参照してください。

      Dropbox 内のExcel への接続

      URI をExcel ファイルへのパスに設定します。Dropbox へ認証するには、OAuth 認証標準を使います。 認証方法については、Dropbox への接続 を参照してください。ユーザーアカウントまたはサービスアカウントで認証できます。ユーザーアカウントフローでは、以下の接続文字列で示すように、ユーザー資格情報の接続プロパティを設定する必要はありません。

      SharePoint Online SOAP 内のExcel への接続

      URI をExcel ファイルを含むドキュメントライブラリに設定します。認証するには、User、Password、およびStorageBaseURL を設定します。

      SharePoint Online REST 内のExcel への接続

      URI をExcel ファイルを含むドキュメントライブラリに設定します。StorageBaseURL は任意です。指定しない場合、ドライバーはルートドライブで動作します。 認証するには、OAuth 認証標準を使用します。

      FTP 内のExcel への接続

      URI をExcel ファイルへのパスが付いたサーバーのアドレスに設定します。認証するには、User およびPassword を設定します。

      Google Drive 内のExcel への接続

      デスクトップアプリケーションからのGoogle への認証には、InitiateOAuth をGETANDREFRESH に設定して、接続してください。詳細はドキュメントの「Google Drive への接続」を参照してください。

      組み込みの接続文字列デザイナー

      JDBC URL の構築には、Excel JDBC Driver に組み込まれている接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。

      java -jar cdata.jdbc.excel.jar
      

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。

      JDBC URL を設定する際には、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限され、レポートやビジュアライゼーションのデザイン時のパフォーマンス向上に役立ちます。

      一般的な JDBC URL は次のとおりです。

      jdbc:excel:Excel File='C:/MyExcelWorkbooks/SampleWorkbook.xlsx';
    • User: 認証に使用するユーザー名です。通常は空白のままにします。
    • Password: 認証に使用するパスワードです。通常は空白のままにします。
  5. Add Table ダイアログで、レポートに含めるテーブル(または、このデータソースを使用する今後のレポート用のテーブル)を選択し、Add をクリックします。

    テーブルの読み込みが完了したら Done をクリックします。

  6. Catalog Browser で、レポートを作成するためのクエリを作成できます。これはレポート作成前でも作成後でも行えます。データソース(CData JDBC Driver for Excel)を展開()し、Queries を右クリックして Add Query を選択します。
  7. Add Table/View/Query ダイアログで、JDBC URL と Tables を展開()し、クエリで使用するテーブルを選択して OK をクリックします。
  8. Query Editor ダイアログで、含めるカラムを選択するか、SQL ボタンをクリックして独自のクエリを手動で入力します。例えば次のようになります。
    SELECT Name, Revenue FROM Sheet
    

    クエリが構築できたら、OK をクリックして Query Editor ダイアログを閉じます。これで Excel のデータ を新規または既存のレポートに追加する準備が整いました。

    NOTE: クエリが構築できたら、そのクエリをもとに Business View を作成できます。Business View を使用すると、クエリに基づいた Web レポートやライブラリコンポーネントを作成できます。詳しくは、JReport のチュートリアルを参照してください。

Excel ののデータをレポートに追加

これで Excel のデータ を使用したレポートを作成する準備が整いました。

  1. File メニューから New、Page Report と進んで新しいレポートを作成するか、既存のレポートの Chart Wizard を開きます。
  2. Query を選択します(または新規作成します。上記を参照)。
  3. クエリのカラムからチャートの Category と Value を設定し、Finish をクリックします。
  4. レポートの View タブをクリックして、チャートを表示します。

はじめる準備はできましたか?

Excel Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Microsoft Excel Icon Microsoft Excel JDBC Driver お問い合わせ

Java / J2EE アプリケーションをExcel スプレッドシートのリアルタイムデータに簡単に接続できます。Excel を使用して、アプリケーションの要となるデータを管理できます。