by 疋田 圭介 | March 16, 2016

Dynamics CRM Drivers を使ってみた

Microsoft Dynamics CRM は、"「everything-as-a-service」モデルによって、製品・サービスの認知から検討、購入、アフターフォローまで、顧客の状況や対応履歴を把握したうえで、どこからでも誰でも顧客の対応を可能にすることで、企業がお客様に提供するサービスを次の次元へと高める"ことを可能にします。

CData Drivers for Dynamics CRM を使って、Dynamics CRM に保有されているユーザーのデータを、ほかのシステムから連携して使用することができます。 NETやJava で開発されたカスタムアプリケーションから直接ADO.NET、ODBC、JDBC という標準規格を使ってDynamics CRM のデータを利用したり、BI ツール、帳票ツール、ETL ツールでDynamics CRM のデータを扱うことがノンコーディングで可能になります。

ユーザーのDynamics CRM データのCRUD (作成、読み出し、更新、削除))

CData Drivers for Dynamics CRM では、API を書かずに、SQL でDynamcs CRM のデータを扱うことができます。 データのCRUD (作成、読み出し、更新、削除)を、API を書かずに、エンジニアが慣れ親しんだSQL で書ける点です。

JOIN クエリ

データ取得はSELECT だけではなく、より複雑なクエリにより、よりターゲットを絞ったデータ、集計されたデータ、テーブル間のリレーションに基づくデータを提供できます。 Dynamics CRM API の中で、フィルタリング、集計、およびJOIN はすでにサポートされていますので、それらを使えば、簡単かつ正確に複雑なデータ取得が可能です。 Dynamics CRM データをテーブルにモデル化したものに対して、テーブル間のリレーションシップを反映させたJOIN を含むクエリを投げることが可能です。 例:

SELECT 
  Account.Id, Account.Name, Equipment.Id AS Eid, Equipment.Name AS Ename 
FROM Account 
JOIN Equipment ON Equipment.Id = Account.Preferredequipmentid_id;

データ集計

CData Drivers を使えば、簡単にデータのグルーピングや集計を行うことができます。< 例:

pre class="brush:sql;"> SELECT COUNT(Name) AS Name_Count, SUM(CreditLimit) AS CreditLimit_Sum, AVG(Account.CreditLimit) AS CreditLimit_Avg, Name, CreditLimit FROM Account GROUP BY Name, CreditLimit;

個別のアイテムへの動作実行

データの取得などのほかに、Dynamics CRM 内の個別のアイテムに対して、ストアドプロシージャを使ってアクションを起こすことができます。 たとえば、指定されたユーザーにアイテムをAssign (割り当て)したり、SetState (ステータス設定)したりが可能です。

Assign

Account テーブルのアイテムを特定のユーザーに割り当てるには、次のようなクエリを実行します:

EXEC Assign
  @Table = 'Account',
  @ID = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX',
  @AssigneeType = 'User',
  @AssigneeID = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX';

SetStatus

Account テーブルの特定のID のアイテムのステータスを設定するにには、次のようなクエリを実行します(ステータスコードなどは、Dynamics CRMの有効なコードを使います):


EXEC Assign
  @Table = 'Account',
  @ID = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX',
  @StateCode= '1',
  @StatusCode= '2';

このように、一般的なCData Driver の機能のほかに、さまざまな処理をお好みのアプリケーションからDynamicsCRM に対して行うことができます!

製品情報と無償評価版の案内

Dynamics CRM 製品ページ

30日の無償評価版