JasperReports Server で Salesforce Data Cloud に連携する帳票を作成

CData JDBC ドライバをJasperReports Server に配置して、Jasper Studio でリアルタイムSalesforce Data Cloud のデータを連携利用する帳票を作ろう。

加藤龍彦
デジタルマーケティング

最終更新日:2022-06-07

この記事で実現できるSalesforce Data Cloud 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。



CData JDBC Driver for SalesforceDataCloud は企業全体のSalesforce Data Cloud へのデータ連携を可能にします。この記事では、JasperReports server にドライバーを配布してレポーティングドメイン、ビルディングブロックを作成し、ad hoc 帳票を作成する方法を説明します。

Salesforce Data Cloud ドライバーのJAR を配布

下記の手順に従って、ドライバーのJAR をJasperReports server に配置します。標準的なプロセスに従って、JNDI データソースをTomcat またはJBoss に配布できます。以下の説明にはSalesforce Data Cloud およびJasperReports Server にバンドルされたTomcat server の詳細が含まれます。

  1. インストールディレクトリの[lib]サブフォルダ内のドライバーJAR およびlic ファイルを、apache-tomcat フォルダの[lib]サブフォルダにコピーします。
  2. 以下のリソースエントリーをjasperserver-pro Web アプリケーションのcontext.xml に追加します。これはアプリケーションの[META-INF]サブフォルダに配置されています。必要な接続プロパティをJDBC URL に指定します。

    Salesforce Data Cloud は、OAuth 標準による認証をサポートしています。

    OAuth

    AuthSchemeOAuth に設定します。

    デスクトップアプリケーション

    CData は、デスクトップでの認証を簡略化する埋め込みOAuth アプリケーションを提供します。

    また、Salesforce Data Cloud コンソールで設定および登録するカスタムOAuth アプリケーションを介してデスクトップから認証することもできます。詳しくは、ヘルプドキュメントカスタムOAuth アプリの作成を参照してください。

    接続する前に、次のプロパティを設定します。

    • InitiateOAuthGETANDREFRESHInitiateOAuth を使えば、繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要はなくなります。
    • OAuthClientId (カスタムアプリケーションのみ):カスタムOAuth アプリケーションの登録時に割り当てられたクライアントID。
    • OAuthClientSecret (カスタムアプリケーションのみ):カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。

    接続すると、本製品 はデフォルトブラウザでSalesforce Data Cloud のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。

    以下のようにドライバーがOAuth プロセスを完了します。

    • コールバックURL からアクセストークンを取得します。
    • 古いトークンの期限が切れたときは、新しいアクセストークンを取得します。
    • OAuthSettingsLocation にOAuth 値を保存し、接続間で永続化します。
    • Web アプリケーションやヘッドレスマシンを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。

      <Resource name="jdbc/salesforcedatacloud" auth="Container" type="javax.sql.DataSource" driverClassName="cdata.jdbc.salesforcedatacloud.SalesforceDataCloudDriver" url="jdbc:salesforcedatacloud:" maxActive="20" maxIdle="10" maxWait="-1" factory="com.jaspersoft.jasperserver.tomcat.jndi.JSBasicDataSourceFactory"/>
    • jasperserver-pro Web アプリケーションのweb.xml に以下の参照を追加します。これはアプリケーションの[WEB-INF]サブフォルダに配置されています。 Salesforce Data Cloud データ JSP jdbc/salesforcedatacloud javax.sql.DataSource Container
    • サーバーを再起動します。

Salesforce Data Cloud JDBC データソースの作成

ドライバーを配布したら、JNDI 接続を作成してバンドルされたあらゆるドライバーと同じように接続できます。

  1. JasperReports Server にログインして[Create]>[Data Source]をクリックします。
  2. [Type]メニューで[JNDI Data Source]を選択します。
  3. [Service Name]ボックスにSalesforce Data Cloud に定義したJDNI ルックアップを入力します。例では、ルックアップは jdbc/salesforcedatacloud です。

ドメイン の作成

データのドメインはJaspersoft のメタデータレイヤです。アドホックな分析および帳票で使うことができます。

  1. [Create]>[Domain]をクリックし、ドメインにID を入力します。
  2. [Data Source]セクションで[ブラウズ]をクリックし、作成したSalesforce Data Cloud のデータソースを選択します。
  3. [Domain Design]セクションで[Create with Database Designer]をクリックします。[Select Database Schema]ダイアログが表示されます。
  4. Salesforce Data Cloud のデータソースを選択します。
  5. [Tables]タブの[Data Source]ペインでテーブルを選択し、矢印をクリックして[Selected Tables]に追加します。 Tables to add on the Tables tab in the Domain Designer. (Salesforce is shown.)
  6. [Display]タブの[Resources]ペインでSalesforce Data Cloud エンティティを選択し、矢印をクリックしてリソースを[Sets and Items]ペインに追加します。 Resources to add on the Display tab in the Domain Designer. (Salesforce is shown.)

ドメインにView Based を作成

ドメインを使ってSalesforce Data Cloud のビジネスビューを作成したら、データに関連あるサブセットを表示するビューを作成します。下記の手順に従って、[Ad Hoc Editor]の[Ad Hoc view]にビューを作成します。

  1. [Create]>[Ad Hoc View]をクリックします。
  2. ダイアログが表示されたら、作成したSalesforce Data Cloud ドメインを選択します。 The domain to be used for the view. (Salesforce is shown.)
  3. [Choose Data]ページで、ビューで使いたいカラムを選択します。[Select Fields]セクションでは、フィルターおよび入力用のプロンプトユーザーを作成できます。[Display]セクションでは、フィールドおよびフィールド名の並び順を変更できます。 The columns to be used in the report. (Salesforce is shown.)
  4. ウィザードを完了したら、ビューの種類を選択しビューにカラムを追加できます。JasperSoft はドライバーのメタデータを使って、利用可能なdimensions およびmeasures をデータの種類に基づいて検出します。 [Columns] および[Rows]ボックスにdimensions およびmeasures をドラッグします。例えば、チャートを作成するには[Columns]ボックスに[excol#1]を、[Rows]ボックスに[excol#2]をドラッグします。
  5. ビューを保存します。

帳票の作成

これでドメインから帳票を作成できます:

A report based on live data. (Salesforce is shown.)

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。