製品をチェック

製品の詳細・30日間の無償トライアルはコチラ

CData Sync

SAP Netweaver Gateway データ をHeroku Postgres にレプリケーションして、Salesforce Connect から利用する方法

データパイプラインツールのCData Sync を使って、SAP Netweaver Gateway データのHeroku Postgres へのETL パイプラインをノーコードで作成してデータを統合する方法を解説します。

宮本航太
プロダクトスペシャリスト

最終更新日:2024-01-01
sapgateway ロゴ

CData

sync ロゴ画像
Salesforce ロゴ

こんにちは!プロダクトスペシャリストの宮本です。

CData Sync は、いろいろなシナリオのデータレプリケーション(同期)を行うことができるスタンドアロンのアプリケーションです。例えば、sandbox および本番インスタンスのデータをデータベースに同期することができます。SAP Netweaver Gateway データ をHeroku 上のPostgreSQL に同期することで、Salesforce の通常オブジェクトに加えて、Salesforce 外部オブジェクト(Salesforce Connect)としてSAP Netweaver Gateway データへのアクセスが可能になります。

要件

本レプリケーション例では、次が必要です:

  1. CData Sync (試用版もしくは商用版)、およびSAP Netweaver Gateway のレプリケーションに必要なライセンス。
  2. Heroku Postgress を含むHeroku app および、Heroku Connect アドオン許可。
  3. Salesforce アカウント。

レプリケーション同期先の設定

CData Sync を使って、SAP Netweaver Gateway データ をHeroku 上のPostgreSQL データベースにレプリケーションできます。本記事では、Heroku 上の既存のPostgreSQL を使用します。PostgreSQL データベースをレプリケーション先に指定するには、[接続]タブから進みます。

  1. [同期先]タブをクリックします。
  2. PostgreSQL を同期先として選択します。

    PostgreSQL への接続には、Port(デフォルトでは5432)、およびデータベース接続プロパティを設定し、サーバーに認証するuser およびpassword を設定します。データベースプロパティが指定されていない場合には、ユーザーのデフォルトデータベースに接続します。

  3. 接続のテスト]をクリックして、正しく接続できているかをテストします。 PostgreSQL データベースの接続設定。
  4. [変更を保存]をクリックします。

SAP Netweaver Gateway 接続の設定

データソース側にSAP Netweaver Gateway を設定します。[接続]タブをクリックします。

  1. [接続の追加]セクションで[データソース]タブを選択します。
  2. SAP Netweaver Gateway アイコンをデータソースとして選択します。プリインストールされたソースにSAP Netweaver Gateway がない場合には、追加データソースとしてダウンロードします。
  3. 接続プロパティに入力をします。

    SAP Gateway はBasic 認証とOAuth 2.0 認証の両方を許可します。Basic 認証を使用して自分のアカウントに接続するか、OAuth を使用して他のユーザーが彼らのアカウントでサービスからデータを取得できるようにすることができます。基本となる認証情報に加え、SAP Gateway テーブルへのアクセスには以下の追加プロパティが必要です。

    • Url: 環境のURL、またはサービスの完全URL に設定。例えば、完全URL は次のようになります:https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/。この例では、環境URL は次のようになります:https://sapes5.sapdevcenter.com。
    • Namespace: 適切なService Namespace を設定。先ほどの例では、IWBEP が名前空間です。サービスへの完全URL が指定されている場合は任意です。
    • Service: データを取得するサービスに設定。先ほどの例では、サービスはGWSAMPLE_BASIC です。完全URL が指定されている場合は必須ではありません。

    Basic 認証での認証

    Basic 認証では、自分のログインクレデンシャルを使用して接続します。次のプロパティを設定します。

    • User: これはSAP Gateway へのログインに使用するユーザー名です。
    • Password: これはSAP Gateway へのログインに使用するパスワードです。

    OAuth 認証での認証

    ユーザー資格情報の接続プロパティを設定せずに接続できます。 接続すると、CData 製品はデフォルトブラウザでSAP Gateway OAuth エンドポイントを開きます。ログインして、CData 製品にアクセス許可を与えます。CData 製品が以下のOAuth プロセスを完了します。 他のOAuth 認証フローについては、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。

    データソースの接続設定(NetSuite の例)。
  4. [接続のテスト]をクリックして、正しく接続できているかをテストします。
  5. [変更を保存]をクリックします。

SAP Netweaver Gateway インスタンス毎のクエリの設定

Data Sync はレプリケーションをコントロールするSQL クエリを簡単なGUI 操作で設定できます。 レプリケーションジョブ設定には、[ジョブ]タブに進み、[ジョブを追加]ボタンをクリックします。 次にデータソースおよび同期先をそれぞれドロップダウンから選択します。 レプリケーションジョブのソースおよび同期先を選択。

テーブル全体をレプリケーションする

テーブル全体をレプリケーションするには、[テーブル]セクションで[テーブルを追加]をクリックします。表示されたテーブルリストからレプリケーションするテーブルをチェックします。

テーブル全体をレプリケーション(NetSuite の例)。

テーブルをカスタマイズしてレプリケーションする

レプリケーションはテーブル全体ではなく、カスタマイズが可能です。[変更]機能を使えば、レプリケーションするカラムの指定、同期先でのカラム名を変更しての保存、ソースデータの各種加工が可能です。レプリケーションのカスタマイズには、ジョブの[変更]ボタンをクリックしてカスタマイズウィンドウを開いて操作を行います:

  • チェックボックスでフィールドを追加もしくは削除 Choose which fields to replicate.
  • カラムリストの下に新しく計算されたフィールドを追加する Add a computed field.
  • フィルタセクションを利用してフィルタを追加する Add a replication filter.

インターフェースを使って変更を行うと、レプリケーションのSQL クエリは以下のようなシンプルなものから:

REPLICATE [SalesOrderLineItems]

次のような複雑なものになります:

REPLICATE [SalesOrderLineItems] SELECT [ProductID], [Quantity] FROM [SalesOrderLineItems] WHERE [Quantity] = 15

レプリケーションのスケジュール起動設定

[スケジュール]セクションでは、レプリケーションジョブの自動起動スケジュール設定が可能です。反復同期間隔は、15分おきから毎月1回までの間で設定が可能です。

スケジュール起動設定。

レプリケーションジョブを設定したら、[変更を保存]ボタンを押して保存します。複数のSAP Netweaver Gateway データ のジョブを作成して、Salesforce の外部オブジェクトとして利用可能です。

外部オブジェクトとしてSAP Netweaver Gateway データ レプリケーションにアクセス

SAP Netweaver Gateway データ がHeroku 上のPostgreSQL データベースとしてレプリケーションされたので、Heroku のOData インターフェースを設定し、Salesforce Connect から外部オブジェクトとしてデータ連携できるようにします。

Heroku のOData Service を設定します

まずは、Heroku 上のPostgreSQL データベースに複製されたSAP Netweaver Gateway データ への接続のために、データベースに対しHeroku External Object を設定します。

  1. Heroku ダッシュボードで、[Connect Add-on] をクリックします。
  2. [External Objects]を指定します。はじめてHeroku External Object を使用する場合には、OData Server のログインクレデンシャルを作成するようにナビゲートされます。
  3. OData service URL およびクレデンシャルを確認します。このクレデンシャルをSalesforce Connect 接続時に利用します。
  4. [Data Sources]において、前のプロセスで作成したレプリケーション済みデータベースを設定します。
Heroku Connect でのOData サービスの設定。

詳しくは、こちらのHeroku documentation を参照してください。

Salesforce の外部データソースの設定

Heroku のOData サービスの設定が終わったら、Salesforce Connect を使って、複製されたSAP Netweaver Gateway データ のデータに外部データソースとして連携します。

  1. Salesforce で設定をクリックします。
  2. Administration (管理)セクションで、[データ]→[外部データソース]をクリック。
  3. データソースパラメータプロパティを設定します:
    • External Data Source: Salesforce UI に表示される名前
    • Name: API の一位の識別子
    • Type: Salesforce Connect: OData 4.0
    • URL: Heroku Connect のOData エンドポイント
    • Format: JSON
  4. 認証の設定:
    • Identity Type: Named Principal
    • Authentication Protocol: Password Authentication
    • Username: Heroku Connect username
    • Password: Heroku Connect password
  5. [保存]をクリック。
Salesforce 外部オブジェクトの設定。

SAP Netweaver Gateway オブジェクトの同期

Salesforce の外部データソース登録が終わったら、次の方法でSAP Netweaver Gateway 外部データソースに変更を反映させます。SAP Netweaver Gateway テーブルの定義とSAP Netweaver Gateway 外部オブジェクトの定義を同期します。

  1. 作成した外部データソースのリンクをクリック。
  2. [Validate and Sync]をクリック
  3. SAP Netweaver Gateway テーブルを選択して、[同期]をクリックします。
外部データソースの同期。

Salesforce オブジェクトとしてSAP Netweaver Gateway データ にアクセス

これで、レプリケーションされたSAP Netweaver Gateway エンティティに対して、Salesforce の通常オブジェクトと同じように外部オブジェクトとしてアクセスが可能になりました。

是非、CData Sync の30日の無償評価版 をダウンロードして、Salesforce との連携をお試しください!

関連コンテンツ

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

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