NetSuite SuiteAnalytics データをHeroku Postgres にレプリケーションして、Salesforce Connect から利用する方法
CData Sync は、いろいろなシナリオのデータレプリケーション(同期)を行うことができるスタンドアロンのアプリケーションです。例えば、sandbox および本番インスタンスのデータをデータベースに同期することができます。NetSuite SuiteAnalytics のデータ をHeroku 上のPostgreSQL に同期することで、Salesforce の通常オブジェクトに加えて、Salesforce 外部オブジェクト(Salesforce Connect)としてNetSuite SuiteAnalytics のデータへのアクセスが可能になります。
要件
本レプリケーション例では、次が必要です:
- CData Sync (試用版もしくは商用版)、およびNetSuite SuiteAnalytics のレプリケーションに必要なライセンス。
- Heroku Postgress を含むHeroku app および、Heroku Connect アドオン許可。
- Salesforce アカウント。
レプリケーション同期先の設定
CData Sync を使って、NetSuite SuiteAnalytics のデータ をHeroku 上のPostgreSQL データベースにレプリケーションできます。本記事では、Heroku 上の既存のPostgreSQL を使用します。PostgreSQL データベースをレプリケーション先に指定するには、[接続]タブから進みます。
- [同期先]タブをクリックします。
- PostgreSQL を同期先として選択します。
PostgreSQL への接続には、Port(デフォルトでは5432)、およびデータベース接続プロパティを設定し、サーバーに認証するuser およびpassword を設定します。データベースプロパティが指定されていない場合には、ユーザーのデフォルトデータベースに接続します。
- 接続のテスト]をクリックして、正しく接続できているかをテストします。
- [変更を保存]をクリックします。
NetSuite SuiteAnalytics 接続の設定
データソース側にNetSuite SuiteAnalytics を設定します。[接続]タブをクリックします。
- [接続の追加]セクションで[データソース]タブを選択します。
- NetSuite SuiteAnalytics アイコンをデータソースとして選択します。プリインストールされたソースにNetSuite SuiteAnalytics がない場合には、追加データソースとしてダウンロードします。
- 接続プロパティに入力をします。
前提条件
NetSuite SuiteAnalytics に接続する前に、NetSuite アカウントでSuiteAnalytics Connect を設定する必要があります。
-
Connect Service 機能を有効にします。
-
アカウント管理者がConnect Service 機能を使用するアカウントとロールを有効にしていることを確認します。
-
Setup > Company > Enable Features に移動します。
-
Analytics タブをクリックし、SuiteAnalytics Connect ボックスにチェックを入れます。
-
-
既存のロールにSuiteAnalytics Connect 権限を追加します。
-
Setup > Users/Roles > User Management > Manage Roles に移動します。
-
SuiteAnalytics Connect 権限を追加するロール名の横にあるCustomize をクリックします。
-
Permissions タブの下にあるSetup タブをクリックします。
-
SuiteAnalytics Connect 権限を追加します。
-
Add とSave をクリックします。
-
-
Suite Analytics Connect 権限を確認します。
-
ホームページでSettings ポートレットを見つけ、Set Up SuiteAnalytics Connect をクリックします。
-
Your Configuration をクリックして、サービスホストとアカウントID 情報を表示します。これらの設定はServer とAccount ID 接続プロパティに直接マッピングされます。
-
NetSuite SuiteAnalytics コネクタの追加
Sync でNetSuite SuiteAnalytics のデータを使用するには、まず以下の手順でコネクタを追加します。
-
Sync ダッシュボードのConnections ページを開きます。
-
Add Connection をクリックしてSelect Connectors ページを開きます。
-
Sources タブをクリックし、NetSuite SuiteAnalytics の行を見つけます。
-
その行の末尾にあるConfigure Connection アイコンをクリックしてNew Connection ページを開きます。Configure Connection アイコンが利用できない場合は、Download Connector アイコンをクリックしてNetSuite SuiteAnalytics コネクタをインストールします。新しいコネクタのインストールの詳細については、ヘルプドキュメントのConnections セクションをご参照ください。
NetSuite SuiteAnalytics への認証
コネクタを追加したら、必要なプロパティを設定します。
-
Connection Name:任意の接続名を入力します。
-
Server:前述の手順で確認したService Host の値を入力します。
-
Account Id:前述の手順で確認したAccount Id の値を入力します。
-
Role Id:前述の手順で更新したRole ID を入力します。
-
User:NetSuite アカウントへの認証に使用するユーザー名を入力します。
-
Password:そのアカウントに関連付けられたパスワードを入力します。
-
- [接続のテスト]をクリックして、正しく接続できているかをテストします。
- [変更を保存]をクリックします。
NetSuite SuiteAnalytics インスタンス毎のクエリの設定
Data Sync はレプリケーションをコントロールするSQL クエリを簡単なGUI 操作で設定できます。
レプリケーションジョブ設定には、[ジョブ]タブに進み、[ジョブを追加]ボタンをクリックします。
次にデータソースおよび同期先をそれぞれドロップダウンから選択します。

テーブル全体をレプリケーションする
テーブル全体をレプリケーションするには、[テーブル]セクションで[テーブルを追加]をクリックします。表示されたテーブルリストからレプリケーションするテーブルをチェックします。
テーブルをカスタマイズしてレプリケーションする
レプリケーションはテーブル全体ではなく、カスタマイズが可能です。[変更]機能を使えば、レプリケーションするカラムの指定、同期先でのカラム名を変更しての保存、ソースデータの各種加工が可能です。レプリケーションのカスタマイズには、ジョブの[変更]ボタンをクリックしてカスタマイズウィンドウを開いて操作を行います:
- チェックボックスでフィールドを追加もしくは削除
- カラムリストの下に新しく計算されたフィールドを追加する
- フィルタセクションを利用してフィルタを追加する
インターフェースを使って変更を行うと、レプリケーションのSQL クエリは以下のようなシンプルなものから:
REPLICATE [Account]
次のような複雑なものになります:
REPLICATE [Account] SELECT [AnnualRevenue], [NumberOfEmployees] FROM [Account] WHERE [Industry] = Life Sciences
レプリケーションのスケジュール起動設定
[スケジュール]セクションでは、レプリケーションジョブの自動起動スケジュール設定が可能です。反復同期間隔は、15分おきから毎月1回までの間で設定が可能です。
レプリケーションジョブを設定したら、[変更を保存]ボタンを押して保存します。複数のNetSuite SuiteAnalytics のデータ のジョブを作成して、Salesforce の外部オブジェクトとして利用可能です。
外部オブジェクトとしてNetSuite SuiteAnalytics データレプリケーションにアクセス
NetSuite SuiteAnalytics のデータ がHeroku 上のPostgreSQL データベースとしてレプリケーションされたので、Heroku のOData インターフェースを設定し、Salesforce Connect から外部オブジェクトとしてデータ連携できるようにします。
Heroku のOData Service を設定します
まずは、Heroku 上のPostgreSQL データベースに複製されたNetSuite SuiteAnalytics のデータ への接続のために、データベースに対しHeroku External Object を設定します。
- Heroku ダッシュボードで、[Connect Add-on] をクリックします。
- [External Objects]を指定します。はじめてHeroku External Object を使用する場合には、OData Server のログインクレデンシャルを作成するようにナビゲートされます。
- OData service URL およびクレデンシャルを確認します。このクレデンシャルをSalesforce Connect 接続時に利用します。
- [Data Sources]において、前のプロセスで作成したレプリケーション済みデータベースを設定します。
詳しくは、こちらのHeroku documentation を参照してください。
Salesforce の外部データソースの設定
Heroku のOData サービスの設定が終わったら、Salesforce Connect を使って、複製されたNetSuite SuiteAnalytics のデータ のデータに外部データソースとして連携します。
- Salesforce で設定をクリックします。
- Administration (管理)セクションで、[データ]→[外部データソース]をクリック。
- データソースパラメータプロパティを設定します:
- External Data Source: Salesforce UI に表示される名前
- Name: API の一位の識別子
- Type: Salesforce Connect: OData 4.0
- URL: Heroku Connect のOData エンドポイント
- Format: JSON
- 認証の設定:
- Identity Type: Named Principal
- Authentication Protocol: Password Authentication
- Username: Heroku Connect username
- Password: Heroku Connect password
- [保存]をクリック。
NetSuite SuiteAnalytics オブジェクトの同期
Salesforce の外部データソース登録が終わったら、次の方法でNetSuite SuiteAnalytics 外部データソースに変更を反映させます。NetSuite SuiteAnalytics テーブルの定義とNetSuite SuiteAnalytics 外部オブジェクトの定義を同期します。
- 作成した外部データソースのリンクをクリック。
- [Validate and Sync]をクリック
- NetSuite SuiteAnalytics テーブルを選択して、[同期]をクリックします。
Salesforce オブジェクトとしてNetSuite SuiteAnalytics データにアクセス
これで、レプリケーションされたNetSuite SuiteAnalytics エンティティに対して、Salesforce の通常オブジェクトと同じように外部オブジェクトとしてアクセスが可能になりました。
是非、CData Sync の30日の無償評価版 をダウンロードして、Salesforce との連携をお試しください!