リアルタイムSalesforce Data Cloud のデータをkrewData 経由でkintone にノーコードで同期

CData Connect Server を使用してSalesforce Data Cloud のデータに接続し、リアルタイムでデータをkintone に連携します。

杉本和也
リードエンジニア

最終更新日:2022-10-17

こんにちは!リードエンジニアの杉本です。

この記事では、Salesforce Data Cloud のAccount データをkintone に同期する方法を紹介します。グレープシティ社のkrewData というkintone プラグインとCData Connect Server を使うと、Salesforce Data Cloud をはじめとする100を超えるSaaS データをノーコードでkintone に取り込むことが可能です。

krewData とは?

krewData は、グレープシティ社が提供するkintone のプラグインで、kintone の複数のアプリ間やExcel・CSV ファイルとkintone のデータ統合をkintone 上で行うことができます。

https://krew.grapecity.com/products/krewdata.htm

ホスティングについて

krewData からCData Connect Server に接続するには、利用するConnect Server インスタンスをネットワーク経由での接続が可能なサーバーにホスティングして、URL での接続を設定する必要があります。CData Connect がローカルでホスティングされており、localhost アドレス(localhost:8080 など)またはローカルネットワークのIP アドレス(192.168.1.x など)からしか接続できない場合、krewData はCData Connect Server に接続することができません。

クラウドホスティングでの利用をご希望の方は、AWS MarketplaceGCP Marketplace で設定済みのインスタンスを提供しています。


Salesforce Data Cloud のデータの仮想データベースを作成する

CData Connect Server は、シンプルなポイントアンドクリックインターフェースを使用してデータソースに接続し、データを取得します。まずは、右側のサイドバーのリンクからConnect Server をインストールしてください。

  1. Connect Server にログインし、「CONNECTIONS」をクリックします。 データベースを追加
  2. 一覧から「Salesforce Data Cloud」を選択します。
  3. Salesforce Data Cloud に接続するために必要な認証プロパティを入力します。

    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 メソッドについては、ヘルプドキュメントを参照してください。

      コネクションを設定(Salesforce の場合)。
    • Test Connection」をクリックします。
    • 「Permission」->「 Add」とクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー) を追加します。

仮想データベースが作成されたら、krewData を含むお好みのクライアントからSalesforce Data Cloud に接続できるようになります。

コネクションが構成されたら、kintone 上のkrewData プラグインからSalesforce Data Cloud に接続できるようになります。

krewData でSalesforce Data Cloud のデータをkintone に同期する

ここからは、kintone のプラグインであるkrewData での設定になります。

krewData の設定

krewData のプラグインインストールとkintone での設定については、こちらのリンクを参照してください。

https://krew.grapecity.com/products/krewdata.htm

kintone にkrewData プラグインを入れ、必要な権限設定を行ってください。

krewData の入力としてSalesforce Data Cloud を設定

ここからは、実際にSalesforce Data Cloud をkintone にロードするフローを作成していきます。krewData 自体は、複数データソースの統合、データのフィルタリング、集計処理など多様な機能を有するETL ですが、今回はシンプルにSalesforce Data Cloud のAccount データをkintone のアプリに同期するフローを作成します。

  1. kintone 画面でアプリにkrewData が表示されているので、これをクリックします。
  2. krewData アプリ画面の右上の「⚙」をクリックし、「設定」を開きます。
  3. 「設定」タブからプラグインをクリックします。これでkrewData のプラグイン操作画面に来ました。
  4. 「+データ編集フローを作成」の文字をクリックしてフローを作成します。作成されたフローが表示されますので、「⚙」マークをクリックしてフローを編集します。
  5. フロー編集画面が開きます。通常のkrewData フローは「入力アプリ」ではじまり、間にいくつかの処理モジュールを入れた後に「出力アプリ」で閉じる形です。CData Connect Server を使う場合には、一番下の「外部連携」の「CData Connect Server入力」モジュールを使います。
    「CData Connect Server入力」を左ペインからドラッグして、フローキャンバスにドロップします。そこからコマンド設定を行っていきます。「アプリを選択」をクリックします。
  6. 「+新しい外部サービス情報アプリを作成する」をクリックして、アプリ名を入力してアプリを作成します。こちらはkrewData の連携で使われるアプリですので、通常のkintone アプリを設定することはできません。OK をクリックします。
  7. 同じ入力コマンドで「サインイン」をクリックして、CData Connect Server にkrewData からサインインします。アカウント選択画面がでるので、「別のアカウントを追加」ボタンをクリックします。CData Connect Server アカウント設定画面が表示されるので、Connect Server への接続を行います。
    CData Connect Server アカウント:Connect Server のユーザー名
    Personal Access Token:Connect Server ユーザーのパスワード
    OK を押してConnect Server に接続します。
  8. 次に「データソースを選択」ボタンをクリックします。まずどのConnection を使うかを選択するので、先ほど作成したSalesforce Data Cloud のConnection をドロップダウンから選択します。
  9. Salesforce Data Cloud のどのオブジェクト(テーブル)を使うかを選択します。CData Connect Server がSalesforce Data Cloud のオブジェクト(含むカスタムオブジェクト)をフラットなテーブル構造にモデル化しています。今回はAccount を選択します。OK を押してテーブル選択を保存します。
  10. ここでSalesforce Data Cloud からkrewData に取得するデータの絞り込み条件をかけることができます。特にデータ量が多い場合には、パフォーマンスを上げるためにフィルタ条件をかけることをおすすめします。krewData のGUI でフィルタリング条件をかけるカラムを指定し、条件を設定することが可能です。
  11. 最後にkrewData で使用するフィールドを選択します。
  12. テーブル設定、フィルタリング設定、フィールド設定まで終わったら「プレビュー」タブをクリックして、実際に取得されるデータを見ることができます。

kintone へのアウトプットを設定

kintone への出力を行う設定を行います。

  1. 「出力アプリ」を左ペインからドラッグしてフローキャンバスにドロップします。先ほどのCData Connect Server入力アプリと出力アプリを線でつなぎます。
  2. 「アプリを選択」ボタンをクリックして、入力アプリと同様に新しいアプリを作成します。
  3. 出力アプリの設定として、2回目以降の同期の際のデータの更新の方法をしていします。今回はUPSERT 設定で更新または追加にチェックをいれています。
  4. 更新キーをしていできるので、ID カラムにチェックを入れて更新キーにします。
  5. これで出力アプリの設定が完了したので、左上の「アプリを更新」をクリックしてフローを保存します。

Salesforce Data Cloud Account のkintone への同期フローを実行

では、実際にフローを実行していきます。

まずはユーザー情報を指定する必要があります。左上の「設定ファイル」タブをクリックします。kintone のログイン名とパスワードを入力します。セキュアアクセスを使っている場合にはセキュアアクセス設定が必要です。

右上の「▶実行」ボタンをクリックして、フローを実行しましょう!!!
「成功」の表示がでました。

実際にkintone 上で出力アプリとして設定したアプリを開いてみます。ちゃんとSalesforce Data Cloud Account 情報がkintone アプリのレコードとして同期されていました。

まとめ

いかがでしたか?このようにCData Connect Server とkrewData を使って、簡単にSalesforce Data Cloud のAccount データをkintone にノーコードで同期することができました。

是非、CData Connect Server で他の100を超えるデータソースでもkintone への同期をお試しください。

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

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