Dynamics 365 Business Central のデータ の PostgreSQL インターフェースを作成(MySQL リモーティング経由の JDBC)

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Dynamics 365 Business Central JDBC Driver のリモート機能を使用して、データアクセス用の PostgreSQL エントリポイントを作成します。

PostgreSQL には多くの対応クライアントがあります。標準のドライバーから BI、アナリティクスツールまで、PostgreSQL はデータ接続の人気のインターフェースです。JDBC ドライバーのリモーティング機能を使用することで、任意の標準クライアントから接続できる PostgreSQL エントリポイントを簡単に作成できます。

Dynamics 365 Business Central のデータ に PostgreSQL データベースとしてアクセスするには、CData JDBC Driver for Dynamics 365 Business Central のリモーティング機能と、EnterpriseDB の MySQL Foreign Data Wrapper(FDW)を使用します。この記事では、FDW をインストールし、PostgreSQL Server からDynamics 365 Business Central のデータにクエリを実行する方法を説明します。

Dynamics 365 Business Central への接続を設定

以下の手順に従って、Dynamics 365 Business Central への接続に必要な認証情報やその他の接続プロパティをドライバーの MySQL デーモンに設定します。MySQL デーモンは、Dynamics 365 Business Central のデータ を CDataD365BusinessCentral という名前の MySQL データベースとして公開します。デーモンの設定ファイル内の databases セクションに接続プロパティを追加します。設定ファイルは、ドライバーのインストールディレクトリの lib サブフォルダにあります。

以下は一般的な接続文字列です:


[databases]
dynamics 365 business central = "OrganizationUrl=https://myaccount.financials.dynamics.com/;"

また、users セクションにユーザーを作成します。

MySQL デーモンのすべての設定オプションについては、ヘルプドキュメントをご参照ください。

リモーティングサービスを開始

以下の手順に従って、CData JDBC Driver for Dynamics 365 Business Central の MySQL リモーティング機能を有効にします。

  1. ドライバーはテスト用に適したデフォルト設定を作成します。サービスを開始するだけでDynamics 365 Business Central のデータに接続できます。

  2. 以下のコマンドで MySQL リモーティングサービスを開始します:
    java -jar cdata.jdbc.d365businesscentral.jar -f cdata.jdbc.d365businesscentral.remoting.ini
    

MySQL Foreign Data Wrapper をビルドしてインストール

Foreign Data Wrapper は、PostgreSQL を再コンパイルせずに、PostgreSQL の拡張機能としてインストールできます。

お使いの OS で pgxn が利用可能な場合は、以下のコマンドでインストールできます:

pgxn install mysql_fdw USE_PGXS=1

利用できない場合は、以下の手順で自分でビルドしてください:

  1. MySQL C クライアントライブラリをインストールし、EnterpriseDB の MySQL 用 FDW のソースを取得します(例:GitHub から)。
  2. FDW をビルドします。pg_config と mysql_config の実行ファイルを PATH に追加してください:
    env PATH=/usr/local/pgsql/bin:/usr/local/mysql/bin:$PATH make USE_PGXS=1
    
  3. FDW をインストールします:
    make USE_PGXS=1 install
    

インストールを完了するには、libmysqlclient ライブラリを環境にロードする必要があります(例:パスに追加するなど)。

Dynamics 365 Business Central のデータ を PostgreSQL データベースとしてクエリ

拡張機能をインストールした後、以下の手順に従ってDynamics 365 Business Central のデータへのクエリ実行を開始します:

  1. データベースにログインします。
  2. データベースの拡張機能をロードします:
    postgres=#CREATE EXTENSION mysql_fdw;
    
  3. Dynamics 365 Business Central のデータ 用のサーバーオブジェクトを作成します:
    postgres=# CREATE SERVER D365BusinessCentral FOREIGN DATA WRAPPER mysql_fdw OPTIONS (host
    '127.0.0.1', port '3309');
    
  4. MySQL デーモンに認識されているユーザーのユーザー名とパスワードでユーザーマッピングを作成します:
    postgres=# CREATE USER MAPPING for postgres SERVER D365BusinessCentral OPTIONS (username
    'admin', password 'test');
    
  5. ローカルスキーマを作成します:
    postgres=# CREATE SCHEMA D365BusinessCentral_db;
  6. デーモン設定ファイルで定義した Dynamics 365 Business Central データベース内のすべてのテーブルをインポートします:
    postgres=# IMPORT FOREIGN SCHEMA "D365BusinessCentral" FROM SERVER D365BusinessCentral INTO D365BusinessCentral_db;
    

これで Dynamics 365 Business Central に対して 読み取り/書き込み コマンドを実行できます:

postgres=# SELECT * FROM D365BusinessCentral_db."accounts";

はじめる準備はできましたか?

Dynamics 365 Business Central Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Dynamics 365 Business Central (NAV) Icon Dynamics 365 Business Central JDBC Driver お問い合わせ

Items、Sales Orders、Purchase Orders などのDynamics 365 Business Central アカウントデータを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。