製品をチェック

Dynamics CRM Driver の30日間無償トライアルをダウンロード

 30日間の無償トライアルへ

製品の詳細

Dynamics CRM アイコン Dynamics CRM JDBC Driver 相談したい

潜在顧客、連絡先、営業案件、アカウントなどのMicrosoft Dynamics CRM アカウントデータを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。

RunMyProcess のDSEC 経由からDynamics CRM データに連携しDigitalSuite Studio で利用

Akorbi Digital 社のローコードのクラウドネイティブプラットフォームRunMyProcess のDigitalSuite EnterpriseConnect(通称DSEC)を利用してDynamics CRM をConnector とする方法。

桑島義行
テクニカルディレクター

最終更新日:2023-02-05

こんにちは!テクニカルディレクターの桑島です。

CData JDBC Driver for DynamicsCRM は、JDBC 標準をインプリメントし、BI ツールからIDE まで幅広いアプリケーションでDynamics CRM への接続を提供します。この記事では、Akorbi Digital RunMyProcess のDSEC からDynamics CRM に接続し、iPaaS 上のRunMyProcess からDynamics CRM データを利用する方法を説明します。

EnterpriseConnect Agent の初期設定

RunMyProcess のマニュアル内の「EnterpriseConnect」 の手順に従い、EnterpriseConnect Agent を設定します。

JDBC Adapter の設定

「JDBC Adapter」にJDBC経由でRDBMSに接続する手順が記載されているので、本章の内容を参考に「JDBC.config」ファイルを開きます。

#DBAgent Configuration DynamicsCRM = {"sqlDriver" : "cdata.jdbc.dynamicscrm.DynamicsCRMDriver", "sqlSource" = "jdbc:dynamicscrm:User=myuseraccount;Password=mypassword;URL=https://myOrg.crm.dynamics.com/;CRM Version=CRM Online;","sqlDriverPath" = "cdata.jdbc.dynamicscrm.jar" }

JDBCドライバのライブラリ cdata.jdbc.dynamicscrm.jar をunified-adapter-[version].jar と同じパスに配置します。

runmyprocess

(注意)CDataのライセンスファイルcdata.jdbc.dynamicscrm.lic も同じパスに配置してください。なお、ラインセンスはCData 製品をインストールしたマシンの固有情報から生成していますので、インストールしたマシンと配置するマシンが異なる場合は、オフラインアクティベーションが別途必要になります。

DigitalSuite EnterpriseConnect Agent の起動

Windows 版の場合は、Windows サービス内のRunMyProcess DigitalSuite EnterpriseConnect Agent を起動します。コマンドでの起動はRunMyProcess マニュアル内の「Starting the EnterpriseConnect Agent」を参照ください。

JDBC Adapter の起動

runAdapter.bat からJDBC Adapter を起動します。Adapter が起動するとagent address(例:127.0.0.1:8080)でアクセスできるようになります。以下、Windows 環境でのコマンド実行結果の例です。

C:\Program Files (x86)\dsec-agent\jdbc>java -Djava.util.logging.config.file=./log.properties -cp lib/* org.runmyprocess.sec2.AdapterHandler : 2021-06-09 14:37:58|INFO|correlationId=|Searching for config file... 2021-06-09 14:37:58|INFO|correlationId=|Adapter Handler started with [JDBC] configuration 2021-06-09 14:37:59|INFO|correlationId=|agent address: 127.0.0.1:8080 2021-06-09 14:38:00.251:INFO::ConnectionThread: Logging initialized @1820ms to org.eclipse.jetty.util.log.StdErrLog 2021-06-09 14:38:00|INFO|correlationId=|onConnect() websocket connection between Agent and Adapter established

DigitalSuite EnterpriseConnect Agent および、JDBC Adapter が正常に起動した状態だと、ローカルマシンのブラウザから http://localhost:(指定したポート番号)/ にアクセスすると下記の画面が表示されます。

runmyprocess

Postman やcURL といったAPI にアクセス出来るツールからJDBC Adapter に対してアクセス出来るか確認します。本手順ではPostman を利用してHTTP POST リクエストを発行します。

RequestHeader には以下の通り設定します。

Content-Type application/json

RequestBody には以下の通り設定します。

{ "protocol":"JDBC", "data":{ "DBType":"DynamicsCRM", "sqlUsername":"", "sqlPassword":"", "sqlStatement":"SELECT * FROM (テーブル名))" } }

「JDBC.config」ファイルにてクレデンシャル情報を含めている場合は、sqlUsername およびsqlPassword は空のままで構いません。テーブル名がわからない場合は、「SELECT * FROM sys_tables」で一覧を取得出来ます。

Response のStatus が200でBody にJSON 形式でDynamics CRM データが返ってきていれば成功です。

runmyprocess

DSEC Agent 経由でのDegitalSuite Studio からのアクセス

DegitalSuite Studio プロジェクトを作成して、作成したプロジェクト内にProvider を作成します。

  • URL : JDBC Agent へのアクセスURL(例:http:localhost:8080/)
  • Authentication Scheme : Login/password
  • Login : application.properties ファイルのagent.user
  • Password : application.properties ファイルのagent.password
  • Secured : Checked
  • Use DigitalSuite EnterpriseConnect : Checked
  • With domain : application.properties ファイルのagent.domain を選択
runmyprocess

続いてProvider 内にConnector を作成します。

  • Connector URL : 空白のまま
  • Architecture : REST/XML-RPC
  • Method : POST
  • Result format : JSON
  • Accept media type : application/json
  • Character set : Automatic
  • Content : JDBC AdapterでテストしたRequest body と同じ
  • Content type : application/json
runmyprocess

ContentにはJDBC Adapter でテストしたRequest body と同じJSON データを登録します。

{ "protocol":"JDBC", "data":{ "DBType":"DynamicsCRM", "sqlUsername":"", "sqlPassword":"", "sqlStatement":"SELECT * FROM (テーブル名))" } }

「Launch Test」を開いて、テストを実行します。右側ペインの「Result」内にDynamics CRM 内のデータが取得出来ている事を確認出来たら成功です。

runmyprocess

このようにDynamicsCRM 内のデータをDSEC 経由でRunMyProcess DegitalSuite Studio で利用することができるようになります。

サポートされるSQL についての詳細は、ヘルプドキュメントの「サポートされるSQL」をご覧ください。テーブルに関する情報は「データモデル」をご覧ください。

関連コンテンツ

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

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