Jaspersoft Studio でUSPS データに連携

詳細情報をご希望ですか?

製品の詳細情報:

USPS 連携ソリューション


Jaspersoft Studio でリアルタイムUSPS データを基に帳票を作成。



この記事では、CData JDBC Driver for USPS を使ってUSPS の連携機能を持つJaspersoft Studio の基本的な帳票をテーブルやチャートで作成する方法を説明します。レポートを実行するたびに、チャートおよびテーブルはライブデータを表示します。JasperSoft のウィザードを使って、レポートエレメントを埋めるSQL クエリをいくつかビルドします。ドライバーは、リレーショナルデータベースへのデータのコピー処理をスキップする間、標準SQL を利用可能にします。代わりに、クエリは基になるUSPS API に直接実行されます。

JDBC データソースとしてUSPS データに接続

Jaspersoft Studio で、[Data Adapter]ウィザードを使ってJDBC データソースに接続できます。下記の手順に従って、プロジェクトからUSPS に接続します。USPS データアダプターをワークスペースに追加します。

  1. [Repository Explorer]で[Data Apters]ノードを右クリックし、[Create Data Adapter]をクリックします。
  2. [Database JDBC Connection]を選択します。
  3. ユーザーフレンドリーなドライバー名を入力します。
  4. [Driver Classpath]タブで[Add]をクリックします。ダイアログが表示されたら、インストールディレクトリの[lib]サブフォルダにナビゲートします。ドライバーのJAR を選択します。
  5. [Database Location]タブでは、以下の情報が必要です:
    • JDBC Driver:JDBC driver のクラス名cdata.jdbc.usps.USPSDriver を入力。
    • JDBC URL:JDBC URL に必要な接続プロパティを入力。接続プロパティは、セミコロン区切りでname-value ペアを入力する必要があります。USPS の一般的なJDBC URL は次のとおりです:

      jdbc:usps:PostageProvider=ENDICIA; RequestId=12345; Password='abcdefghijklmnopqr'; AccountNumber='12A3B4C'

      USPS に認証するには、次の接続プロパティを設定してください。

      • PostageProvider:リクエストの処理に使用するポステージプロバイダです。利用可能なオプションはENDICIA とSTAMPS です。指定されていない場合、 デフォルトはENDICIA です。
      • UseSandbox:ライブまたはテストリクエストを、運用サーバーに送るかサンドボックスサーバーに送るかを制御します。 true に設定した場合、Password、AccountNumber、StampsUserId プロパティは無視されます。
      • StampsUserId:この値はStamps サーバーに認証してログインするために使用されます。この値は Endicia には使用されず、UseSandbox がtrue の場合はオプションです。
      • Password:この値はEndicia とStamps サーバーへのログインに使用されます。ポステージプロバイダがEndicia の場合、この値はポステージアカウントに紐づけられたパスフレーズになります。 UseSandbox がtrue の場合にはオプションです。
      • AccountNumber:郵送者のアカウント番号です。UseSandbox がtrue の場合にはオプションです。
      • PrintLabelLocation:このプロパティは、GenerateLabels またはGenerateReturnLabels ストアドプロシージャを使用する場合には必須です。 生成されたラベルが格納されているフォルダの場所を指定してください。

      キャッシュデータベース

      USPS から利用可能な有用なタスクには多くのデータを要求します。データの入力を簡単にして後日思い出せるようにするには、 キャッシュデータベースを使用してリクエストを行ってください。キャッシュの使用にはキャッシュ用の接続プロパティを設定してください。

      • CacheLocation:デフォルトのキャッシュプロバイダーで接続が設定される、キャッシュの場所へのパスです。例えば、C:/users/username/documents/uspscache

      CacheLocation の代わりに、CacheConnectionCacheProvider を設定して デフォルト以外のプロバイダーを使用してキャッシュ接続を設定することもできます。

USPS Data で帳票を作成

USPS のデータアダプターを作成したら、USPS データをJasperReports に追加できます。このセクションでは同梱されているテンプレートの一つをUSPS データに連携させる方法について説明します。

  1. [File]>[New Jasper Report]をクリックします。テンプレートを選択し、親プロジェクトを選択して、帳票に名前を入力します。
  2. [Data Adapter]ウィザードで、先のセクションで作成したデータアダプターを選択します。
  3. [Diagram]タブでは、クエリを視覚的にビルドできます:テーブルをボックスにドラッグしお好みのカラムをクリックします。カスタムクエリも入力可能です。例: SELECT * FROM Senders
  4. データセットに含めたいフィールドを選択します。

[Preview]タブでは、最新のUSPS を使ったものと同じ帳票を見ることができます。

チャートを追加

下記の手順に従って、USPS のチャートを既存の帳票に追加します。棒グラフを、先のセクションで作成した帳票テンプレートの最後に追加します。

  1. [Design]タブをクリックします。
  2. [Outline]ビューで、帳票のルートノードを右クリックし[Create Dataset]をクリックします。
  3. データセット名を入力し、オプションをクリックして接続またはデータソースから新しいデータセットを作成します。
  4. [Data Adapter]メニューで、最初のセクションで作成した[Data Adapter]を選択します。
  5. 次のクエリを入力します:

    SELECT FirstName, Phone FROM Senders WHERE SenderID = '25'
  6. データセットに必要なフィールドを選択します。この例ではすべてのフィールドを使います。
  7. カラムでグループ化する手順はスキップします。USPS API はGROUP BY のステートメントをサポートしていません。

データセットを追加したら、下記の手順に従ってチャートを作成します。

  1. [Outline]ビューの[Summary]ノードをクリックします。[Properties]ビューで高さを400ピクセルに設定します。サマリーバンドが帳票の最後にプリントされます。
  2. チャートを[Palette]からsummary にドラッグします。Chart ウィザードが表示されます。
  3. チャートの種類を選択します。この例では棒グラフを使います。
  4. [Dataset]メニューで、チャート用に作成したデータセットを選択します。
  5. [Dataset]タブで、オプションを選択してマスター帳票と同じ接続を使用します。Chart ウィザードは接続パラメータを入力し、メニューセレクションを[Use Another Connection]に変更します。
  6. [Series]メニューの隣にあるボタンをクリックし、デフォルトシリーズを削除します。[Add]をクリックします。
  7. [Expression Editor]が表示されたら、カラムをダブルクリックして各カラム値に新しいシリーズを作成します。例:FirstName。シリーズをFirstName に設定した場合、FirstName ごとに新しい棒グラフが作成されます。
  8. [Value]ボックスの隣にあるボタンをクリックし、チャートのmeasures 用に[Expression Editor]を開きます。カラムをダブルクリックしてy 軸に追加します。例:Phone。
  9. [Label]ボックスの隣にあるボタンをクリックし、チャートのdimensions 用に[Expression Editor]を開きます。カラムをダブルクリックしてx 軸に追加します。例:FirstName。
  10. この例ではカテゴリを使用しないため、[Category]ボックスに空の文字列 "" を入力します。

チャートを作成したら基本的なフォーマットを行い、サブレポートをレポートに未使用スペースなくシームレスに追加できるようにします。

  1. チャートを右クリックして[Size to Container]>[Fit Both]をクリックします。
  2. メインレポートでサブレポートを右クリックして[Size to Container]>[Fit Both]をクリックします。

プレビューする前に帳票への変更を保存します。チャートが帳票の最後のページに表示されます。