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

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
JReport Designer で FreshBooks のデータ をもとにチャートとレポートを作成。



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

FreshBooks ののデータに接続

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

      まず、Profile 接続プロパティをディスク上の FreshBooks プロファイルの場所に設定します(例:C:\profiles\FreshBooks.apip)。次に、ProfileSettings 接続プロパティを FreshBooks の接続文字列に設定します(以下を参照)。

      FreshBooks API プロファイル設定

      FreshBooks Developer Dashboard で OAuth アプリケーションを登録し、Client ID と Client Secret を取得します。アプリケーションのコールバック URL にリダイレクト URI を設定します。

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

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

      java -jar cdata.jdbc.api.jar
      

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

      組み込みの接続文字列デザイナーを使用して JDBC URL を生成(図は Salesforce)

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

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

      jdbc:api:Profile=C:\profiles\FreshBooks.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;InitiateOAuth=GETANDREFRESH;
    • User: 認証に使用するユーザー名です。通常は空白のままにします。
    • Password: 認証に使用するパスワードです。通常は空白のままにします。
    JDBC ドライバーへの接続を設定(図は Salesforce)
  5. Add Table ダイアログで、レポートに含めるテーブル(または、このデータソースを使用する今後のレポート用のテーブル)を選択し、Add をクリックします。

    テーブルを追加(図は Salesforce)

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

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

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

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

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

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

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

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

API Driver で FreshBooks のライブデータに接続

FreshBooks に接続