SpagoBI でSalesforce Data Cloud に連携

SpagoBI Studio でリアルタイムSalesforce Data Cloud にフィーチャーしたレポートを作成します。ホストのSalesforce Data Cloud はSpagoBI サーバーを報告します。

古川えりか
コンテンツスペシャリスト

最終更新日:2022-06-13

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

こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。

CData JDBC Driver for SalesforceDataCloud はJDBC 標準をサポートするビジネスインテリジェンスおよびデータマイニングツールからリアルタイムSalesforce Data Cloud に接続することを可能にします。この記事では、Salesforce Data Cloud をSpagoBI Studio のレポートに統合し、SpagoBI サーバーでホストする方法を説明します。

SpagoBI サーバーのJDBC ドライバーをデプロイ

以下のステップに従ってSpagoBI サーバーでJDBC data source for SalesforceDataCloud を作成します。

  1. ドライバーJAR を%CATALINA_BASE%/lib にコピーします。これらのファイルは、インストールディレクトリのlib サブフォルダにあります。
  2. Salesforce Data Cloud ドライバーリソースをコンテクストに追加します。以下のリソース定義をserver.xml の[GlobalNamingResources]要素に追加できます。 <Resource name="jdbc/salesforcedatacloud" auth="Container" type="javax.sql.DataSource" driverclassname="cdata.jdbc.salesforcedatacloud.SalesforceDataCloudDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxactive="20" maxidle="10" maxwait="-1"/>

  3. 以下のリソースリンクを追加し、Web アプリケーションへのアクセスを許可します。この記事では、SpagoBI のMETA-INF\context.xml に次の行を追加します。 <ResourceLink global="jdbc/salesforcedatacloud" name="jdbc/salesforcedatacloud" type="javax.sql.DataSource"/>
  4. サーバーを再起動します。

SpagoBI サーバーのリソースにドライバーを追加した後、データソースを追加します。SpagoBIで[Resources]->[Data Source]->[Add]と進み、以下の情報を入力します。

  • Label:ドライバーに独特の識別子を入力します。
  • Description:ドライバーにディスクリプションを入力します。
  • Dialect:デフォルトの方言を選択します。
  • Read Only:読み取り専用オプションを選択します。このオプションは、データソースがエンドユーザーによって作成された、データセットを保存するためのデフォルトデータベースであるかどうかを決定します。
  • Type:[JDBC]を選択します。
  • URL:
  • 必要な接続文字列プロパティを使用して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 メソッドについては、ヘルプドキュメントを参照してください。

      ビルトイン接続文字列デザイナ

      JDBC URL の構成については、Salesforce Data Cloud JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

      java -jar cdata.jdbc.salesforcedatacloud.jar

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

      Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

      以下は一般的なJDBC URL です。

      jdbc:salesforcedatacloud:InitiateOAuth=GETANDREFRESH
    • Driver:ドライバーのクラス名にcdata.jdbc.salesforcedatacloud.SalesforceDataCloudDriver を入力します。
  • The configuration for the Salesforce Data Cloud JDBC data source.(Salesforce is shown.)

    SpagoBI Studio でレポートを作成

    以下のステップに従い、SpagoBI StudioでSalesforce Data Cloud に基づいたレポートを作成します。SQL クエリの結果をチャートに挿入するデータセットを作成します。次のセクションでは、このレポートをSpagoBI サーバーでホストします。

    初めに、SpagoBI Studio のレポートからSalesforce Data Cloud に接続してください。

    1. SpagoBI Studio で、[File]->[New]->[Project]とクリックしていき、[Business Intelligence and Reporting Tools]フォルダで[Report Project]を選択します。
    2. [File]->[New]->[Report]と進み、[Blank Report]を選択します。
    3. [Data Explorer]ビューで[Data Sources]を右クリックし、[New Data Source]をクリックします。
    4. [JDBC Data Source]を選択し、データソース名を入力します。
    5. [Manage Drivers]をクリックし、[Add]をクリックしてドライバーJAR(cdata.jdbc.salesforcedatacloud.jar) を追加します。
    6. ドライバーJAR は、インストールディレクトリのlib サブフォルダにあります。
    7. [Driver Class]メニューでドライバークラス(cdata.jdbc.salesforcedatacloud.SalesforceDataCloudDriver)を選択します。
    8. [Database URL]ボックスに、[JDBC URL]を入力します。以下は一般的な接続文字列です。 jdbc:salesforcedatacloud:InitiateOAuth=GETANDREFRESH 必要な接続プロパティを取得するためのガイドについては、ドライバーヘルプの[Getting Started]チャプターを見てください。 The JDBC data source.(Salesforce is shown.)

    Salesforce Data Cloud に接続した後、SQL クエリの結果を含むデータセットを作成します。

    1. [DataSet]フォルダを右クリックし、[New Data Set]をクリックします。JDBC data source for SalesforceDataCloud を選択し、データセットの名称を入力します。
    2. SQL クエリを構築します。ここでは、このクエリを使用してダッシュボードにチャートを追加します。例: SELECT [Account ID], [Account Name] FROM Account WHERE EmployeeCount > 250 The query to be used to populate a chart.(Salesforce is shown.)

    データセットを使用して、レポートオブジェクトにデータを入力できます。以下のステップに従って、チャートを作成します。

    1. [Palette]ビューで、チャートをキャンバスにドラッグします。
    2. [Select Chart Type]タブで棒グラフを選択します。
    3. [Select Data]タブで[Use Data From]オプションをクリックし、メニューからSalesforce Data Cloud のデータセットを選択します。
    4. [Account ID] をテーブルからx 軸の系列にドラッグします。
    5. [Account Name] をテーブルからy 軸の系列にドラッグします。 Columns in the dataset defined as the x- and y-axes for the chart.(Salesforce is shown.)

    SpagoBI サーバーに関するホストSalesforce Data Cloud レポート

    以下のステップに従って、SpagoBI サーバーでリアルタイムSalesforce Data Cloud に基づいてドキュメントをホストできます。前のセクションで作成したレポートをテンプレートとして使用します。レポートユーザーがリアルタイムデータにアクセスできるようにするには、サーバー上のSalesforce Data Cloud JDBC データソースに置き換えられるプレースホルダパラメータを作成します。

    1. 未実行の場合、SpagoBI Studio で[Report Design]パースペクティブで開きます。
    2. [Data Explorer]ビューで[Report Parameters]フォルダを右クリックし、[New Parameter]をクリックします。url パラメータを追加し、それに空の値を割り当てます。このパラメータはSpagoBI サーバー上のJDBC データソースのプレースホルダです。
    3. Salesforce Data Cloud のデータソースを右クリックし、[Edit]をクリックします。
    4. [Property Binding]ノードで、JDBC Driver のURL バインディングプロパティurl パラメータに設定します。プロパティのボックスをクリックします。[Category]セクションで[Report Parameters]を選択します。[Subcategory]セクションで[All]を選択し、パラメータをダブルクリックします。

      JavaScript構文に以下のように入力することもできます。

      params["url"].value Placeholder values in the report for the JDBC data source on the server.

    続いて、SpagoBI サーバーでレポート用の新しいドキュメントを作成します。

    1. SpagoBI サーバーで、[Documents Development]->[Create Document]->[Generic Document]と進みます。[Document Details]ページが表示されます。
    2. 以下の情報を入力し、ドキュメントを作成します。
      • Label:ドキュメントに独自の識別子を入力します。
      • Name:ドキュメントのわかりやすい名前を入力します。
      • Type:メニューから[Report]を選択します。
      • Engine:[BIRT Report Engine]を選択します。
      • Data Source:SpagoBI サーバーのCreate a JDBC Data Source for SalesforceDataCloud で作成したSalesforce Data Cloud Data Source を選択します。
    3. [Show Document Templates]セクションで、ドキュメントを格納したいフォルダを選択します。
    4. [Template]セクションで、[Choose File]をクリックします。レポートプロジェクトを含むフォルダに移動します。.rptdesign ファイルを選択します。

      Noteプロジェクトへのパスは、プロジェクトプロパティで確認できます。

    5. [Save]ボタンをクリックします。
    The document using the report as a template.(Salesforce is shown.)

    サーバーでレポートを実行すると、プレースホルダurl パラメータがサーバーで定義されたJDBC URL に置き換えられます。

    The chart running on the SpagoBI Server.(Salesforce is shown.)

関連コンテンツ

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

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