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

by 浦邊信太郎 | January 30, 2020

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

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

  • Asprovaの設定手順
  • データ確認
  • おわりに
  • 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 DriverはSalesforceへの標準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のような生産スケジューラはマスタデータの整備に手間がかかるのが一般的です。その原因の一つは企業内のExcelやAccessファイル、ERPや独自システムのデータベースなどに点在する生産関連データを一つ一つ集約していく作業にあります。CData ODBC Driverによりデータ連携処理の実装工数を大幅に削減し、生産スケジューラ導入コストの低減を図ることができます。