LoginSignup
1
0

More than 5 years have passed since last update.

ETL ツール DM ExpressでCData ODBC Driver for Dynamics CRM を使い、SQL Serverにデータを連携する方法

Posted at

はじめに

本記事ではETLツールの DM Express を使って、Dynamics CRM の顧客リストを取得し、SQL Serverにデータを連携する方保を解説します。

DM Expressとは

syncsoft 社が提供している高機能な ETL 製品群です。

実現イメージ

今回はDM ExpressからDynamicsCRM APIに接続しますが、DM Expressは単純にDynamicsCRMと接続することができません。
DM ExpressがどのようにDynamicsCRM API側へリクエストを投げるべきかの判断材料やメタデータの情報が無いためです。

image.png

そこで、CData ODBC DynamicsCRM Driverを用いて、このボトルネックを解決します。

まず、各ツールからはODBCインタフェースでSQL(Select文)をCData DynamicsCRM ODBC Driverに向けて発行してもらいます。そのリクエストを受け取った、CData DynamicsCRM ODBC Driverは、DynamicsCRMのWebAPIのエンドポイントに対して、SQL文を解釈し、HTTPリクエスト形式に変換して発行します。

リクエスト後、XML/JSON フォーマットで返ってきたデータセットはCData DynamicsCRM ODBC DriverがODBCインタフェースのResultsetに変換してツールに返します。

image.png

これにより、DM ExpressからアドホックにSQLによるリクエストがあったタイミングで最新のデータをDynamics CRMから取得することが可能です。

必要なもの

  1. DM Express (本記事では体験版を利用します)
  2. Dynamics CRM アカウント
  3. CData ODBC Dynamics CRM Dirver

事前準備

今回の資料ではDynamics CRM から SQL Serverに顧客情報を連携します。

予めSQL Serverには出力先となるテーブルを構成しておいてください。

DM Express のインストール

DM Express Sudioは以下のサイトからトライアル版を取得できます。

[https://www.ashisuto.co.jp/product/category/etl/syncsort-dmexpress/]

インストーラーを入手後、Wizardに従ってDM Express のインストールを進めてください。

CData DynamicsCRM ODBC Driverのインストール

以下のサイトから評価版ビルドをダウンロードします。

ダウンロードされたインストーラ形式(.exe)のファイルを起動します。
(注)ODBCデータアドミニストレーターを閉じてから実行してください。
(注)途中オンラインでのアクティベーションが実行されるためインターネットアクセス出来る環境で行ってください。

下記のようなインストーラが起動するので、ライセンス契約書を確認した上で、デフォルト設定のままインストールを進めて完了させます。

image.png

インストールが完了するとデフォルトブラウザが起動して製品ヘルプファイルが起動します。

image.png

また、ODBCのDSN構成ダイアログが表示されます。
image.png

(注)ODBCデータソースアドミニストレーターはマシンのビット数(32bit, 64bit)にあった方をご利用ください。

CData DynamicsCRM ODBC Driverの接続設定

起動した「ODBCのDSN構成」ダイアログ内の下記の項目に、DynamicsCRM評価版アカウント取得、および、サンプルアプリケーションの作成方法で事前に取得した接続情報を設定します。

DynamicsCRMの接続情報 設定項目
CRM Version CRM Online
Url 例)https://***crm7.dynamics.com/
User 例)@.onmicrosoft.com
Password 例)password

「接続テスト」ボタンをクリックします。下記のようなダイアログが表示されれば成功です。「ODBCのDSN構成」の「OK」ボタンをクリックして保存します。

image.png

タスクの作成

それでは実際にDM Expressを用いてETL処理を構成していきます。

まず、DM Expressを立ち上げて、処理の単位となるタスクを作成します。

左上のタスクアイコンを選択し

image.png

以下のようにタスクを配置します。

image.png

取得元データベースの定義

続いて、CData ODBC Driverへの接続を作成します。

作成したタスクの詳細画面を表示し、「データベース」をクリックします。

image.png

「DBMS」から「Other」、「アクセス方法」で「ODBC」を選択すると、データベースの一覧に先の手順で構成したODBC DSNの「CData DynamicsCRM Source」が表示されるので、これを選択し「OK」をクリックします。

image.png

以上のように接続情報が作成されれば、OKです。

image.png

出力先データベースの定義

次にデータを出力する先となるSQL Serverへの接続を作成します。

先程と同じように「データベース」をクリックし

image.png

「DBMS」から「SQL Server」、「アクセス方法」で「ODBC」を選択し、データベースの一覧から「sql server dsn」を選択します。

ユーザー名とパスワードには、SQL Server User Accountを指定してください。

正常に接続検証が行えれば、接続完了です。

image.png

以上で、それぞれの接続情報が構成できました。

入力条件の設定

それでは、実際にETL処理部分、まず取得元として構成した接続情報を元に、どのようなデータ、カラムを取得するのか? の定義を行います。

DM Express タスクの「入力」を右クリックし「データベーステーブルを追加」を選択します。

image.png

以下のような入力データベーステーブルの設定ウィンドウが表示されるので、接続先として事前に作成したCData ODBC DriverのConnection情報選択し、取得した対象のテーブルを選択します。

image.png

テーブルを選択すると、左下にカラム一覧が表示されるので、どのカラムを抽出するのか? を下記のように構成します。

選択後、「OK」をクリックして、出力構成は完了となります。

image.png

出力条件の設定

続いて、取得したデータをSQL Serverにどのように出力するのか? の定義を行います。

入力の時と同様に「DM Express タスク」から、今度は出力を右クリックし「データベーステーブルを追加」を選択します。

image.png

接続先にはSQL ServerのConnection情報を選択し、事前に作成しておいた出力先のテーブルを選択します。

選択後、カラムマッピングが表示されるので、ここの画面で入力元と出力先の各カラムの紐づけを行います。

image.png

紐づけが完了し「OK」をクリックすれば、ETL処理タスクの作成は完了です。

テスト実行

それでは実際に作成したタスクを動かしてみたいと思います。

テスト実行を行う場合は左上の「実行」ボタンをクリックします。

image.png

DM Expressサーバは任意のサーバを選択してください。。今回はローカルホストで実行します。

image.png

テスト実行の確認画面が表示されるので、「OK」をクリックします。

image.png

クリック後、処理状況を確認する画面に移り、構成したタスクの処理が実施されます。

image.png

おわりに

今回はDynamics CRMのデータを取得してみましたが、CDataではDynamics CRM以外にもおよそ100種類ほどのODBC Driverを提供しています。

ERP・CRM・NoSQLやSNS等、様々なツールからODBC 経由でデータが取得できるので、是非DM Expressと組み合わせて様々なデータ連携に役立ててみてもらえればと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0