CData Software Blog

クラウド連携のCData Software の技術ブログです。

生産スケジューラAsprovaへSalesforceからデータを取り込む

こんにちは。CData Software Japanエンジニアの浦邊です。

今回はCData Salesforce ODBC Driverを利用し、生産スケジューラのAsprovaへSalesforceからノンコーディングでデータを取り込む方法を紹介します。

Asprova APS

生産スケジューラは生産品目や資源などのマスタデータと受注データをもとに生産スケジュールを立案するソフトウェアです。Asprova APSは世界30か国で2000本を超える導入実績を持つ、国内シェアNo.1の生産スケジューラです。

www.asprova.jp

 

シナリオ

今回はSalesforceの商品データをAsprovaの品目データとして取り込みます。Salesforceの商品データ一覧を以下に示します

 

f:id:urabe_shintaro:20200120234413p:plain

 

必要なもの

* Asprova APS
* Salesforce
* CData Salesforce ODBC Driver


構成

今回のシステム構成を以下に示します。

f:id:urabe_shintaro:20200120234255p:plain

Salesforceへの接続にはCData Salesforce ODBC Driverを使用します。CData ODBC Driverは標準のODBCを介してETLやBIツールとデータのやりとりを実現するドライバです。

Data Salesforce ODBC DriverSalesforceへの標準ODBCアクセスを提供します。AsprovaはSalesforce公式にはサポートしていません。しかし、ODBCによるデータアクセスをサポートしているため、本ドライバを介してSalesforceからデータを取り込むことが可能になります。

事前準備

Salesforceのセキュリティトークン取得

Salesforce Sales Colud開発者アカウント取得、APIにアクセスするためのセキュリティトークンの取得は以下の記事をご参照ください。

qiita.com

CData Salesforce ODBC Driverのインストール

CData Software 社のサイトから CData ODBC Driver for Salesforceをダウンロードします(30日の無償評価版あり)。

f:id:urabe_shintaro:20200120234409p:plain

ダウンロードしたsetup.exeファイルをAsprovaがインストールされているマシンにインストールします。途中、ライセンスサーバーへのオンラインアクティベーションが行われるためネットワーク環境に接続されている必要があります。

インストールが完了すると、ODBCのDSN設定のウィンドウが立ち上がりますのでSalesforce への接続情報を設定します。ここではデータソース名を「CData Salesforce Source」としています。このデータソース名はAsprovaの設定時に使いますのでメモしておいてください。

f:id:urabe_shintaro:20200121005450p:plain

必要な設定を以下に示します:

  • User
  • Password
  • Security Token

接続プロパティの詳細はドキュメントの接続文字列オプション を参照してください。

Asprovaの設定手順

それでは、ここからAsprova上でデータを取り込むための設定を行います。

メニューの「ファイル」から「データ入出力」を選択し、「データ入出力」ダイアログを開きます。

f:id:urabe_shintaro:20200120234423p:plain

 

テーブルの設定

「品目」行のヘッダをダブルクリックし、「データ入出力の編集」ダイアログを開きます。

f:id:urabe_shintaro:20200120234426p:plain


RDBトランザクション」を「いいえ」に変更します。

 

f:id:urabe_shintaro:20200120234429p:plain

 

データソース種別の設定

「品目」の「データソースの種類」を「OLE DB」に変更し、「OK」を押下します。

f:id:urabe_shintaro:20200120234434p:plain

 

ドライバの設定


「接続文字列/フォルダ」列のボタンを押下し、「データ リンク プロパティ」ダイアログを開きます。

f:id:urabe_shintaro:20200120234441p:plain


「プロバイダー」タブで「Microsoft OLE DB Provider for ODBC Drivers」を選択し「次へ」を押下します。
「接続」タブで「データソース名を使用する」が選択されていることを確認し、コンボボックスで先ほどメモしたデータソース名「CData Salesforce Source」を選択します。

f:id:urabe_shintaro:20200120234445p:plain


「接続のテスト」を押下し「接続のテストに成功しました」というメッセージが表示されればドライバの設定に成功です。

「OK」をクリックして画面を閉じます。

スキーマの設定

「外部テーブル名」列のボタンを押下し、「テーブル一覧」ダイアログを開きます。
ここでSalesforceのテーブル一覧が表示されることを確認してください。

 

f:id:urabe_shintaro:20200120234458p:plain


ここで何も表示されない場合は接続情報に問題がある可能性がありますので、前項のドライバ設定の内容を改めてチェックしてください。今回はSalesforceの商品データを紐づけるため、「Product2」テーブルを選択し「OK」を押下します。

フィールドマッピング

出力先テーブル(Asprovaの品目)、入力元テーブル(SalesforceのProduct2)の項目の対応付けを行います。「フィールドマッピング」列のボタンを押下し、「品目-フィールドマッピング」画面を開きます。

f:id:urabe_shintaro:20200120234510p:plain


今回は以下の項目を対応させます。

f:id:urabe_shintaro:20200121004906p:plain


画面の二つのテーブルの間で右クリックし、コンテキストメニューの「全削除」を選択します。すべてのマッピングが削除されたことを確認し、項目同士をドラッグアンドドロップでつなぎ上記のマッピングを設定します。

f:id:urabe_shintaro:20200121132324p:plain

マッピングが完了したら二つのテーブルの間で右クリックし、コンテキストメニューの「適用」を選択します。

インポート

これでデータ取り込みの設定は終了です。メニューの「ファイル」から「インポート」をクリックします。画面下のメッセージでエラーが出なければインポートは完了です。

データ確認

メニューの「テーブル表示」から「品目」を選択します。下図のように、Salesforceの商品データが表示されれば成功です。

 

f:id:urabe_shintaro:20200121000032p:plain

 

おわりに

今回はCData ODBC Driverを使ってSalesforceからAsprovaへデータを取り込みました。本記事で示した通り、GUIの操作だけでデータアクセスの設定が可能なことがお分かりいただけたと思います。もちろんインポートだけではなくエクスポートも実行可能です。

CData ODBC DriverはSalesforceだけでなく多様なデータソースをサポートしています。Asprovaのような生産スケジューラはマスタデータの整備に手間がかかるのが一般的です。その原因の一つは企業内のExcelAccessファイル、ERPや独自システムのデータベースなどに点在する生産関連データを一つ一つ集約していく作業にあります。CData ODBC Driverによりデータ連携処理の実装工数を大幅に削減し、生産スケジューラ導入コストの低減を図ることができます。