Dynamics AXData のPostgreSQL インターフェース

Dynamics AX JDBC Driver のRemoting 機能を使用して、データアクセス用のPostgreSQL エントリポイントを作成します。

インターネット上には利用可能な膨大な数のPostgreSQL クライアントがあります。標準のドライバーからBI および分析ツールまで、PostgreSQL はデータアクセスのための人気の高いインタフェースです。 JDBC ドライバーを使用して、標準クライアントから接続できるPostgreSQL エントリポイントを作成することができます。

PostgreSQL データベースとしてDynamics AX data にアクセスするには、CData JDBC Driver for Dynamics AX とJDBC 外部データラッパー(FDW)を使用します。ここでは、FDW をコンパイルしてインストールし、PostgreSQL サーバーからDynamics AX data をクエリします。

JDBC データソースにDynamics AX Data を設定

To connect to Dynamics AX as a JDBC data source, you will need the following:

  • Driver JAR path: The JAR is located in the lib subfolder of the installation directory.
  • Driver class: cdata.jdbc.dynamicsax.DynamicsAXDriver

  • JDBC URL: The URL must start with "jdbc:dynamicsax:" and can include any of the connection properties in name-value pairs separated with semicolons.

    To connect to DynamicsAX, specify User, Domain, and ObjectServer. You can also surface tables for a specific Company; when this property is blank, the default company is used.

    Alternatively, you can use the .NET Business Connector to connect on behalf of DynamicsAX users. You can obtain the ProxyUser and ProxyDomain properties on the System service accounts form: Click System Administration -> Setup -> System -> System Service Accounts. Additionally, set ProxyPassword.

    By default, only transaction data and base information from the TRANSACTION and MAIN table groups is returned. You can specify which groups to return with TableGroups.

    Set Language to use the same language you use in your DynamicsAX labels.

    ビルトイン接続文字列デザイナー

    For assistance in constructing the JDBC URL, use the connection string designer built into the Dynamics AX JDBC Driver.Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.dynamicsax.jar

    Fill in the connection properties and copy the connection string to the clipboard.

    A typical JDBC URL is below:

    jdbc:dynamicsax:User=MyUser;Domain=MyDomain;objectserver=MicrosoftDynamicsAX@WIN-1IP52JPQVJS:2712;

JDBC Foreign Data Wrapper をビルド

The Foreign Data Wrapper can be installed as an extension to PostgreSQL, without recompiling PostgreSQL.The jdbc2_fdw extension is used as an example.

  1. Add a symlink from the shared object for your version of the JRE to /usr/lib/libjvm.so.For example: ln -s /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/libjvm.so /usr/lib/libjvm.so
  2. Start the build: make install USE_PGXS=1

Dynamics AX Data をPostgreSQL データベースとしてクエリ

After you have installed the extension, follow the steps below to start executing queries to Dynamics AX data:

  1. Log into your database.
  2. Load the extension for the database: CREATE EXTENSION jdbc2_fdw;
  3. Create a server object for Dynamics AX: CREATE SERVER DynamicsAX FOREIGN DATA WRAPPER jdbc2_fdw OPTIONS ( drivername 'cdata.jdbc.dynamicsax.DynamicsAXDriver', url 'jdbc:dynamicsax:User=MyUser;Domain=MyDomain;objectserver=MicrosoftDynamicsAX@WIN-1IP52JPQVJS:2712;', querytimeout '15', jarfile '/home/MyUser/CData/CData\ JDBC\ Driver\ for\ Salesforce MyDriverEdition/lib/cdata.jdbc.dynamicsax.jar');
  4. Create a user mapping for the username and password of a user known to the MySQL daemon. CREATE USER MAPPING for postgres SERVER DynamicsAX OPTIONS ( username 'admin', password 'test');
  5. Create a foreign table in your local database: postgres=# CREATE FOREIGN TABLE custinvoicetrans ( custinvoicetrans_tableid text, custinvoicetrans_Name text, custinvoicetrans_Qty numeric) SERVER DynamicsAX OPTIONS ( table_name 'custinvoicetrans');
You can now execute read/write commands to Dynamics AX: postgres=# SELECT * FROM custinvoicetrans;
 
 
ダウンロード