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

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

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

Access ののデータに接続

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

      Access接続の設定方法

      ローカルファイルへの接続設定

      ローカル環境からAccess への接続は非常にシンプルです。ConnectionTypeLocal に設定することで、CRUD 操作(SELECT、INSERT、UPDATE、DELETE)をすべて実行できます。接続にはDataSource プロパティに以下のようなAcces sデータベースファイルのフルパスを指定します。

      C:\Users\Public\Documents\MyDatabase.accdb

      詳細な接続手順については、ヘルプドキュメントの「はじめに」セクションをご参照ください。

      クラウドストレージ上のAccess ファイルへの接続設定

      各種クラウドストレージに保存されているAccess ファイルへのアクセスにも対応しています。ただし、クラウド上のファイルに対するデータ操作は、INSERT、UPDATE、DELETE に制限されますのでご注意ください。

      S3、Google Driver、OneDrive など、各種クラウドストレージ内のAccess ファイルへの接続方法はこちらの記事をご確認ください。

      クラウド上のファイルを更新したい場合は、以下の手順で実施いただけます。

      1. 対応するCData ドライバーを利用し、クラウドサービスからAccess ファイルをダウンロード
      2. Access ドライバーを使用して、ローカル環境でファイルを編集
      3. クラウドサービス用ドライバーのストアドプロシージャを使用して、更新ファイルをアップロード

      具体例として、SharePoint 上のファイルを更新する場合の手順をご紹介します。

      1. CData SharePoint ドライバーのDownloadDocument プロシージャを使用してファイルを取得
      2. CData Access ドライバーでファイルの更新を実施
      3. SharePoint ドライバーのUploadDocument プロシージャで更新内容を反映

      DataSource 接続プロパティの設定について補足いたします。接続先のクラウドストレージを識別するための一意の接頭辞を指定し、続けて目的のファイルパスまたはフォルダパスを記述します。フォルダを指定した場合は1ファイルが1テーブルとして、単一ファイルの場合は単一テーブルとして扱われます。

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

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

      java -jar cdata.jdbc.access.jar
      

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

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

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

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

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

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

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

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

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

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

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

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

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

 ダウンロード

詳細:

Access Icon Access JDBC Driver お問い合わせ

Microsoft Access データベースに連携するJava アプリケーションを高速開発。