CData Arc を利用してDynamics 365 Business Central とSQLServerを双方向にデータを連携する方法

この記事のシナリオ

by 杉本雄太 | February 28, 2025

Title2

こんにちは。CData Software Japan の杉本です。
本記事では、Dynamics 365 Business Central と他システムとの連携を想定して、CData Arc を使ってノーコードでDynamics 365 Business Central とSQL Server を双方向にデータ連携する方法をご紹介します。

この記事では「Dynamics 365 Business Central のデータをSQL Server に」と「SQL Server のデータをDynamics 365 Business Central に」連携するシナリオをそれぞれ作成します。

Dynamics 365 Business Central コネクタについて

CData ArcではアプリケーションコネクタとしてDynamics 365 Business Central コネクタが用意されております。

CData Arc - Dynamics 365 Business Central Connector Setup

またDynamics 365 Business Central コネクタはOData Web サービス経由でMicrosoft Dynamics 365 Business Central への読み/書きアクセスを行います。

Dynamics 365 Business Central 側の準備

Dynamics 365 Business Central コネクタではOData Webサービス経由でデータのアクセスを行うため、必要に応じてアクセスしたいデータをODataとして公開する設定が必要になります。
データの公開方法は以下のCData JDBC Driver for Microsoft Dynamics 365 Business Central のヘルプに記載がございます。

CData JDBC Driver for Microsoft Dynamics 365 Business Central - Tables

今回は以下のCustomer CardのPageをODataとして公開して、対象のデータへのアクセスを行います。

CustomerCard

SQLServerの準備

今回はDynamics 365 Business Central のCustomerCardテーブルを対象としたいと思いますので、SQL Server 側には事前に同じ構成のテーブルを用意しました。

SQLServer1

連携フローの作成(Dynamics 365 Business Central → SQLServer)

Dynamics 365 Business Central コネクタ

ワークスペースの左上にある「追加」ボタンから「Dynamics 365 Business Central コネクタ」を検索して追加します。

D365BCConnector1

今回は起点のコネクタとなるため「Selectアクション」を選択して、コネクタを作成します。

D365BCConnector2

追加された「Dynamics 365 Business Central コネクタ」を開き、接続を作成します。

D365BCConnector3

接続設定についてはヘルプの「接続設定の入力」をご参照ください。

CData Arc - Dynamics 365 Business Central Connector Setup

D365BCConnector4

接続情報の入力後には赤枠の「接続」ボタンを押下して、実際に接続出来るを確認してから「接続の追加」で接続を保存します。

D365BCConnector5

その後はテーブルの追加より、対象のテーブルを選択します。

D365BCConnector6

今回は商品情報が格納されたItemsテーブルを選択します。
また補足ですが黒い部分はスキーマ名となり、「Dynamics 365 Business Central コネクタ」ではCompany名が入ります。

D365BCConnector7

 

選択したテーブルのカラム情報が表示されることが確認出来たら、右上の保存ボタンを押して、「Dynamics 365 Business Central コネクタ」を閉じてください。

D365BCConnector8

SQL Server コネクタ

「Dynamics 365 Business Central コネクタ」と同様にワークスペースの左上にある「追加」ボタンから「SQLServerコネクタ」を検索して追加します。

SQLServerConnector1

今回は連携先のコネクタとなるため「Upsertアクション」を選択して、コネクタを作成します。

SQLServerConnector2

追加された「SQL Server コネクタ」を開き、接続を作成します。接続設定についてはヘルプをご参照ください。

CData Arc - SQL Server Connector Setup

SQLServerConnector3

接続設定を追加後はテーブルの追加より、連携先のCustomerCardテーブルを選択します。

SQLServerConnector4

SQLServerConnector5

XMLMap コネクタ

「Dynamics 365 Business Central コネクタ」と「SQL Server コネクタ」の設定が完了したら、次は「XMLMapコネクタ」を構成します。
「XMLMap コネクタ」をワークスペースに追加して、以下のように「Dynamics 365 Business Central コネクタ」と「SQL Server コネクタ」に接続します。

XMLMapConnector1

「XMLMap コネクタ」を開いて、連携する項目を以下のようにマッピングします。

XMLMapConnector2

連携フローの実行

トリガー開始の「手動で受信」からフローを実行します。

Flow1

フロー実行後にSQL Server 側のデータを確認すると、Dynamics 365 Business Central のCustomerCardテーブルの内容が連携されていることを確認出来ます。

Flow2

連携フローの作成(SQL Server → Dynamics 365 Business Central)

SQLServer 側のデータを更新

Dynamics 365 Business Central からSQLServer に連携したデータを更新します。今回は[NAME]カラムを更新します。更新前のデータは以下の通りです。

SQLServer2

UPDATE文を実行してデータを更新します。

SQLServer3

SQLServer4

そして今度はこのデータをDynamics 365 Business Central に書き戻すフローを作成します。

SQL Server コネクタ

「Selectアクション」の「SQLServer コネクタ」を追加します。

SQLServerConnector6

そしてCustomerCardテーブルを選択します。

SQLServerConnector7

Dynamics 365 Business Central コネクタ

そして「Upsertアクション」の「Dynamics 365 Business Central コネクタ」を追加します。

D365BCConnector9

補足ですが「Upsertアクション」ではキー項目である「No」に一致する項目が存在すればUpdate、存在しなければInsertが行われます(以下の赤枠箇所が設定箇所に該当します)。今回は一度Dynamics 365 Business Central から連携したデータをSQLServer で更新した値を書き戻しするような動きになるため、Updateされる動きになります。

D365BCConnector10

また一部の項目は読み取り専用で更新出来ませんので、今回は更新する項目以外のチェックを外します(NOとNAMEだけにチェックを入れます)。

D365BCConnector11

XMLMapコネクタ

「XMLMap コネクタ」をワークスペースに追加して、「SQL Server コネクタ」と「Dynamics 365 Business Central コネクタ」に接続します。

XMLMapConnector3

連携フローの実行

トリガー開始の「手動で受信」からフローを実行します。フロー実行後にDynamics 365 Business Central 側のデータを確認すると、該当のデータが更新されていることを確認出来ます。

Flow3

おわりに

今回はCData Arc でDynamics 365 Business Central に双方向にデータ連携を行うシナリオについて解説しました。
CData Arc はシンプルで拡張性の高いコアフレームワークに、豊富なMFT・EDI・エンタープライズコネクタを備えたパワフルな製品です。CData Drivers との組み合わせで270を超えるアプリケーションへの連携を実現できます。

皆さんのつなぎたいシナリオでぜひ CData Arc を試してみてください。

CData Arc | データ連携、EAI、マネージドファイル転送(MFT)、電子データ交換(EDI)のオールインワンツール

この記事ではCData Arc™ 2024 - 24.3.9159.0を利用しています。