こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
この記事では、CData JDBC Driver for PCASales を使ってPCA Sales の連携機能を持つJaspersoft Studio の基本的な帳票をテーブルやチャートで作成する方法を説明します。レポートを実行するたびに、チャートおよびテーブルはリアルタイムデータを表示します。JasperSoft のウィザードを使って、レポートエレメントを埋めるSQL クエリをいくつかビルドします。ドライバーは、リレーショナルデータベースへのデータのコピー処理をスキップする間、標準SQL を利用可能にします。代わりに、クエリは基になるPCA Sales API に直接実行されます。
JDBC データソースとしてPCA Sales のデータに接続
Jaspersoft Studio で、[Data Adapter]ウィザードを使ってJDBC データソースに接続できます。下記の手順に従って、プロジェクトからPCA Sales に接続します。PCA Sales のデータアダプターをワークスペースに追加します。
- [Repository Explorer]で[Data Apters]ノードを右クリックし、[Create Data Adapter]をクリックします。
- [Database JDBC Connection]を選択します。
- ユーザーフレンドリーなドライバー名を入力します。
- [Driver Classpath]タブで[Add]をクリックします。ダイアログが表示されたら、インストールディレクトリの[lib]サブフォルダにナビゲートします。ドライバーのJAR を選択します。
- [Database Location]タブでは、以下の情報が必要です:
- JDBC Driver:JDBC driver のクラス名cdata.jdbc.pcasales.PCASalesDriver を入力。
JDBC URL:JDBC URL に必要な接続プロパティを入力。接続プロパティは、セミコロン区切りでname-value ペアを入力する必要があります。PCA Sales の一般的なJDBC URL は次のとおりです:
jdbc:pcasales:OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;ProductCode=MyProductCode;ApiVersion=V1;DataCenter=DataCenterName;DefaultDataArea=MyDefaultDataArea;
PCA クラウド商魂・商管DX では、OAuth 2 認証標準を使います。
ユーザー資格情報の接続プロパティを設定せずに接続できます。接続に最小限必要な接続プロパティは、次のとおりです。
- InitiateOAuth:GETANDREFRESH に設定。InitiateOAuth を使って、OAuth 交換や、手動での接続文字列のアクセストークン設定の繰り返しを避けられます。
- OAuthClientId:アプリケーション設定のクライアントId に設定。
- OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
- CallbackURL:アプリケーション設定のリダイレクトURL に設定。
- ApiVersion:接続するPCA API Server バージョンを設定。
- DefaultDataArea:接続するデータ領域を設定。
- DataCenter:接続するサーバーのDataCenter 名を設定。
- ProductCode:PCA 製品コード名を設定。
接続すると、CData 製品はデフォルトブラウザでPCA Accounting OAuth エンドポイントを開きます。ログインして、CData 製品にアクセス許可を与えます。CData 製品がOAuth
プロセスを完了します。
ヘッドレスマシンの認証など、他のOAuth 認証フローについては、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。
PCA Sales データ で帳票を作成
PCA Sales のデータアダプターを作成したら、PCA Sales のデータをJasperReports に追加できます。このセクションでは同梱されているテンプレートの一つをPCA Sales のデータに連携させる方法について説明します。
- [File]>[New Jasper Report]をクリックします。テンプレートを選択し、親プロジェクトを選択して、帳票に名前を入力します。
- [Data Adapter]ウィザードで、先のセクションで作成したデータアダプターを選択します。
- [Diagram]タブでは、クエリを視覚的にビルドできます:テーブルをボックスにドラッグしお好みのカラムをクリックします。カスタムクエリも入力可能です。例:
SELECT * FROM MasterSms
- データセットに含めたいフィールドを選択します。
[Preview]タブでは、最新のPCA Sales を使ったものと同じ帳票を見ることができます。
チャートを追加
下記の手順に従って、PCA Sales のチャートを既存の帳票に追加します。棒グラフを、先のセクションで作成した帳票テンプレートの最後に追加します。
- [Design]タブをクリックします。
- [Outline]ビューで、帳票のルートノードを右クリックし[Create Dataset]をクリックします。
- データセット名を入力し、オプションをクリックして接続またはデータソースから新しいデータセットを作成します。
- [Data Adapter]メニューで、最初のセクションで作成した[Data Adapter]を選択します。
- 次のクエリを入力します:
SELECT SyohinCode, SyohinMei FROM MasterSms
- データセットに必要なフィールドを選択します。この例ではすべてのフィールドを使います。
- カラムでグループ化する手順はスキップします。PCA Sales API はGROUP BY のステートメントをサポートしていません。
データセットを追加したら、下記の手順に従ってチャートを作成します。
- [Outline]ビューの[Summary]ノードをクリックします。[Properties]ビューで高さを400ピクセルに設定します。サマリーバンドが帳票の最後にプリントされます。
- チャートを[Palette]からsummary にドラッグします。Chart ウィザードが表示されます。
- チャートの種類を選択します。この例では棒グラフを使います。
- [Dataset]メニューで、チャート用に作成したデータセットを選択します。
- [Dataset]タブで、オプションを選択してマスター帳票と同じ接続を使用します。Chart ウィザードは接続パラメータを入力し、メニューセレクションを[Use Another Connection]に変更します。
- [Series]メニューの隣にあるボタンをクリックし、デフォルトシリーズを削除します。[Add]をクリックします。
- [Expression Editor]が表示されたら、カラムをダブルクリックして各カラム値に新しいシリーズを作成します。例:SyohinCode。シリーズをSyohinCode に設定した場合、SyohinCode ごとに新しい棒グラフが作成されます。
- [Value]ボックスの隣にあるボタンをクリックし、チャートのmeasures 用に[Expression Editor]を開きます。カラムをダブルクリックしてy 軸に追加します。例:SyohinMei。
- [Label]ボックスの隣にあるボタンをクリックし、チャートのdimensions 用に[Expression Editor]を開きます。カラムをダブルクリックしてx 軸に追加します。例:SyohinCode。
- この例ではカテゴリを使用しないため、[Category]ボックスに空の文字列 "" を入力します。
チャートを作成したら基本的なフォーマットを行い、サブレポートをレポートに未使用スペースなくシームレスに追加できるようにします。
- チャートを右クリックして[Size to Container]>[Fit Both]をクリックします。
- メインレポートでサブレポートを右クリックして[Size to Container]>[Fit Both]をクリックします。
プレビューする前に帳票への変更を保存します。チャートが帳票の最後のページに表示されます。