Node.js からSalesforce Data 360 のデータをSQL Server データベースとしてクエリ

加藤龍彦
加藤龍彦
デジタルマーケティング
Node.js からSalesforce Data 360 のデータにSQL Server クエリを実行します。

CData Connect AI を使用すると、SQL Server インターフェース経由でSalesforce Data 360 のデータをクエリできます。以下のステップに従って、Connect AI にSalesforce Data 360 の仮想データベースを作成し、Node.js を使用してクエリを実行します。

CData Connect AI は、Salesforce Data 360 のピュアMySQL かつクラウドベースのインターフェースを提供し、ネイティブにサポートされているデータベースにデータを複製することなくNode.js からの手軽なリアルタイムSalesforce Data 360 のデータクエリを実現します。Node.js でデータをクエリすると、CData Connect AI はサポートされているすべてのSQL 操作(フィルタ、JOIN など)を直接Salesforce Data 360 にプッシュし、サーバー側の処理を活用してSalesforce Data 360 のデータを高速で返します。

Connect AI からSalesforce Data 360 に接続する

CData Connect AI は直感的なクリック操作ベースのインターフェースを使ってデータソースに接続します。
  1. Connect AI にログインし、 Add Connection をクリックします。 コネクションを追加
  2. Add Connection パネルから「Salesforce Data 360」を選択します。 データソースを選択
  3. 必要な認証情報を入力し、Salesforce Data 360 に接続します。

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

    OAuth 認証

    AuthScheme をOAuth に設定してください。

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

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

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

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

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

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

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

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

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

    コネクションの設定(Salesforce の例)
  4. Create & Test をクリックします。
  5. Edit Salesforce Data 360 Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。 権限の更新

パーソナルアクセストークンを追加する

OAuth 認証をサポートしないサービス、アプリケーション、プラットフォーム、フレームワークから接続する場合、パーソナルアクセストークン(PAT)を認証に使用できます。きめ細かくアクセスを管理するために、サービスごとに個別のPAT を作成するのがベストプラクティスです。

    1. User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
    2. PAT の名前を入力して Create をクリックします。 新しいPAT を作成
    3. パーソナルアクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。

    接続が設定されたら、Node.js からSalesforce Data 360 のデータに接続できるようになります。

    Node.js からSalesforce Data 360 をクエリ

    以下の例は、SQL Server モジュールを使用してSalesforce Data 360 へのクエリを実行する方法を説明しています。以下の情報が必要です。

    • server:tds.cdata.com
    • port:14333
    • user:Connect AI ユーザー(例:[email protected])
    • password:上記のユーザーのPAT
    • database:Salesforce Data 360 用に構成した接続(SalesforceDataCloud1)

    以下のコードで、Salesforce Data 360 に接続してクエリが実行できます。

    var sql = require('mssql')
    var config = {
    	server: 'tds.cdata.com',
    	port:14333,
    	user: '[email protected]', //update me
    	password:'CONNECT_USER_PAT', //update me
    	options: {
    		encrypt: true,
    		database: 'SalesforceDataCloud1'
    	}
    }
    
    sql.connect(config, err => {
        if(err){
            throw err ;
        }
        new sql.Request().query('SELECT * FROM Account', (err, result) => {
            console.dir(result)
        })
    
    });
    
    sql.on('error', err => {
        console.log("SQL Error: " ,err);
    })
    

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

CData Connect AI の詳細、または無料トライアルにお申し込みください:

無料トライアル