【ノーコード】Power Apps データフローを使ってSalesforce Data Cloud のデータをDataverse に連携する方法

加藤龍彦
加藤龍彦
デジタルマーケティング
Salesforce Data Cloudデータ連携の複雑さをPower Apps データフローとCData Power BI Connectorで解決。オンプレミスゲートウェイ設定からアプリ作成までノーコードで完了する実践的手順を詳しく解説します。



Power Apps はMicrosoft のローコードアプリ開発ツールです。Power Apps には、Power Apps 上で使えるデータベースライクなDataverse(旧CDS)というサービスがあるのですが、このサービスに連携するためのデータフローというデータインテグレーション機能が存在します。

Access やSharePoint リストを元に、Dataverse のエンティティ(テーブルのようなもの)を自動生成し、定期的にデータを同期させてくれるという便利な機能です!デフォルトでも30種類くらいのサービスに接続できるようになっているのですが、CData のPower BI Connectors と組み合わせればSalesforce Data Cloud を含む270種類以上のデータソースに接続できます。 ここでは、汎用ODBC データプロバイダーとしてSalesforce Data Cloud に接続し、Power Apps オンプレミスデータゲートウェイからSalesforce Data Cloud のデータを連携利用する手順を説明します。

Salesforce Data Cloud のデータに接続するDSN を設定

まずは、右側のサイドバーからPower BI Connector for SalesforceDataCloud をダウンロードします。30日間無料で全機能が利用できるので、お気軽にご利用ください。インストールが完了すると、以下のように接続設定画面が表示されるので、 DSN を設定します。 DSN 設定の詳細については、ドキュメントを参照してください。 ODBC DSN設定画面

Salesforce Data Cloud DSN の設定方法

それでは、Salesforce Data Cloud への認証方法を設定していきましょう。Salesforce Data Cloud では、OAuth 標準による認証をサポートしています。

OAuth 認証

AuthSchemeOAuth に設定してください。

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

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

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

接続する前に、以下のプロパティを設定してください。

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

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

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

  • コールバックURL からアクセストークンを取得します
  • 古いトークンの期限が切れた際は、新しいアクセストークンを取得します
  • OAuthSettingsLocation にOAuth 値を保存し、接続間で永続化します

Web アプリケーションやヘッドレスマシンを含むその他のOAuth 認証方法については、ヘルプドキュメントをご確認ください。

オンプレミスデータゲートウェイで Salesforce Data Cloud コネクタを認識させる

次にオンプレミスデータゲートウェイにインストールしたSalesforce Data Cloud コネクターを認識させます。もしデータゲートウェイのインストールがまだであれば、こちらのMS 公式ページからダウンロードできます。

  • Power Apps の環境では、モデル駆動アプリで利用できるDataverse にデータを連携するので、Dataverse の環境を予め構成しておいてください。
  • オンプレミスデータゲートウェイを立ち上げて「コネクタ」のタブに移動し、フォルダパスから「C:\Program Files\CData\CData Power BI Connector for SalesforceDataCloud」を選択します。
  • カスタムデータコネクタが識別されれば、設定完了です。
  • データフローの接続を構成する

    それでは Power Apps の画面に移動して、データフローを作成してみましょう。

    • Power Apps の画面から「データフロー」を選択し、「データフローを作成する」をクリックします。
    • 任意の名称を入力し、「作成」をクリック
    • データソース一覧の中から「ODBC」を選択します。
    • 接続設定画面では、先程設定した接続情報を使うので接続文字列のところに「DSN=接続名称(今回の場合はDSN=CData PBI Salesforce Data Cloud )」と入力します。オンプレミスデータゲートウェイからは接続先のゲートウェイが表示されるので、それを選択。現在のPower Apps データフローの仕様上ODBC 接続では認証が必須のようなので、認証の種類として「Basic」を選択し、適当な文字列を入力しておきます(この文字列は使われないので、特に気にしなくて大丈夫です)。
    • 次の画面に進むと、対象のテーブル・もしくはビュー選択画面に移動します。テーブルを選択すると、プレビューが表示され、正常にコネクターとゲートウェイ経由でSalesforce Data Cloud のデータが参照できていることがおわかりいただけると思います。テーブルを選択して、次へ進みます。
    • クエリの編集画面では、特にカラムの変換など必要ない場合は、変更する必要はありません。そのまま次へ進んでも大丈夫です。
    • 重要なエンティティマップです。ここで、Dataverse にエンティティを構成するための各種設定を実施します。今回は新しくエンティティを構成してしまうので、「新しいエンティティを読み込む」にチェックを入れます。デフォルトでは、対象フィールドのタイプが複数行テキストになってしまうので、これらを「テキスト」のタイプに変更し、最後にプライマリフィールドを選択テーブルへ設定すればOKです。
      また、もしデータの差分をDataverse 側に残しておきたい場合は、「クエリ出力に存在しない行を削除します」にチェックを入れておきましょう。
    • 最後にデータの更新方法を選択します。せっかくなので、自動的に更新にしてみましょう。以下のように1時間ごとに更新というように設定しておけば、1時間毎に随時登録されたデータが吸い上げられ、最新のデータがDataverse 上に登録されていきます。
    • 設定後、「作成」をクリックすると、エンティティの作成と初期のデータ同期が開始されます。「完了済み」になればOKです。
    • データタブの「エンティティ」を選択すると、自動的に生成されたエンティティが一覧に含まれていることがわかります。

    おわりに

    このように、Power Apps から簡単にSalesforce Data Cloud のデータに接続して利用することができました。CData のPower BI Connector は、Salesforce Data Cloud 以外にも270種類以上のデータソースに対応しています。30日間の無償トライアルがありますので、ぜひお試しください。

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

Salesforce Data Cloud Power BI Connector の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Salesforce Data Cloud Icon Salesforce Data Cloud Power BI Connector お問い合わせ

Power BI からSalesforce Data Cloud データにリアルタイムアクセスする認定コネクタ。 ハイパフォーマンス、リアルタイム連携、高度なスキーマ自動検出、SQL-92 をサポート。