FileMaker Pro からOdoo のデータへの双方向アクセス

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
JDBC ドライバーのMySQL リモート機能を使用して、Mac またはWindows 版FileMaker Pro にOdoo のデータ を連携。

この記事では、CData JDBC Driver for Odoo を使用して、FileMaker Pro のExternal SQL Sources(ESS)機能と連携する方法を説明します。ESS を利用すると、FileMaker Pro 内のレコードを他のデータストアの関連レコードとリンクできます。

MySQL リモート機能を使用して、Odoo をリモートMySQL データベースとしてアクセスします。CData JDBC Driver for Odoo は、JDBC とMySQL の両規格を実装しており、FileMaker Pro のように従来のMySQL データベースへの接続はサポートしていても、汎用のJDBC 接続をサポートしていないアプリケーションとの連携を実現します。

Odoo データ連携について

CData を使用すれば、Odoo のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:

  • Odoo API 8.0+ と Odoo.sh クラウド ERP の両方からライブデータにアクセスできます。
  • 多対一、一対多、多対多のデータプロパティをインテリジェントに処理することで、ネイティブの Odoo 機能を拡張できます。CData の接続ソリューションは、Odoo 内の複雑なデータプロパティもインテリジェントに処理します。テキストや日付などの単純な値を持つカラムに加えて、各行に複数の値を含むカラムもあります。ドライバーは、値の元となるカラムのタイプに応じて、これらの種類の値を異なる方法でデコードします:
    • 多対一カラムは、別のモデル内の単一の行への参照です。CData ソリューションでは、多対一カラムは整数として表され、その値は他のモデルで参照している ID です。
    • 多対多カラムは、別のモデル内の多くの行への参照です。CData ソリューションでは、多対多カラムはカンマ区切りの整数リストを含むテキストとして表されます。リスト内の各値は、参照されている行の ID です。
    • 一対多カラムは、別のモデル内の多くの行への参照です。多対多カラムと同様(カンマ区切りの整数リスト)ですが、参照されるモデルの各行はメインモデルの 1 つにのみ属する必要があります。
  • SQL ストアドプロシージャを使用して、Odoo 内のサーバーサイド RFC を呼び出すことができます。

ユーザーは、Power BI や Qlik Sense などの分析ツールと Odoo を統合し、当社のツールを活用して Odoo データをデータベースやデータウェアハウスにレプリケートしています。


はじめに


FileMaker Pro 連携方式の選択

FileMaker Pro には2つのデータアクセス方式があります。

  • データインポート:Odoo データをFileMaker Pro データベースにコピーし、必要に応じて更新できます。この方式を簡素化するには、CData ODBC ドライバーを使用します。FileMaker Pro はODBC をネイティブサポートしていますが、JDBC はサポートしていません。この方式については、FileMaker Pro でのODBC Odoo 連携を参照してください。
  • ESS:データのローカルコピーを使用する代わりに、JDBC ドライバーを使用して外部SQL ソースを作成できます。リモートデータはFileMaker Pro で変更でき、テーブルは標準のFileMaker Pro テーブルと同様にリレーションシップグラフで使用できます。

ESS セットアップの概要

JDBC ドライバーはデータアクセスチェーンの一部です。ネイティブのODBC 連携と比較すると、MySQL リモートを使用するFileMaker Pro 連携には追加のコンポーネントがあります。この記事では、以下の各コンポーネントをFileMaker Pro とリンクする方法を説明します。

  1. CData JDBC ドライバー
  2. CData MySQL リモートデーモン(ドライバーに同梱)
  3. MySQL 用ODBC ドライバー

    Windows では、FileMaker Pro は公式のMySQL ドライバー、MySQL Connector\ODBC を必要とします(現時点でのベストオプションはConnector\ODBC 8.0.11 です)。

    macOS では、FileMaker Pro はActual Technologies Open Databases ODBC ドライバーを必要とします。

  4. ODBC ドライバーマネージャー

    Windows では、ドライバーマネージャーは組み込みです。macOS では、ODBC ドライバーをインストールする前にドライバーマネージャーをインストールする必要があります。iODBC ドライバーマネージャーをインストールしてください。

リモートデーモンの起動

以下の手順に従って、MySQL リモート機能を有効にします。

  1. ターミナルを開き、インストールフォルダのlib サブフォルダに移動します。

    $ cd "/Applications/CData/CData JDBC Driver for Odoo/lib"
    
  2. 構成ファイル(デフォルトではcdata.jdbc.odoo.remoting.ini)を編集します。
    • [databases] セクションをOdoo 用のJDBC 接続URL で更新します。
      	odoo = "User=MyUser;APIToken=MyToken;URL=http://MyOdooSite/;Database=MyDatabase"
      	

      接続するには、URL にOdoo インスタンスURL、User およびAPIToken にユーザー資格情報、Database にOdoo データベース名を設定します。 API トークン(Odoo 14 以降でのみ利用可能)を使用していない場合、代わりにAPIToken フィールドにパスワードを直接入力することができます。

      接続方法の詳細は、ヘルプドキュメントの「はじめに」セクションを参照してください。

      利用可能な接続プロパティやその他のリモート設定オプションの詳細については、ヘルプドキュメントを参照してください。

  3. コマンドラインで構成ファイルまたは設定を指定して、MySQL デーモンを起動します。以下の例では、同梱のサンプル構成ファイルを使用しています。

    $ java -jar cdata.jdbc.odoo.jar -f "cdata.jdbc.odoo.remoting.ini"
    

DSN の作成

Odoo への接続に成功しMySQL デーモンを起動したら、MySQL ODBC データソースを作成します。 ODBC データソースを使用する場合、DSN(データソース名)で接続プロパティを指定します。

ODBC ドライバーとドライバーマネージャーをまだ入手していない場合は、「ESS セットアップの概要」を参照して、お使いのプラットフォームでサポートされているコンポーネントを確認してください。

macOS

以下の手順に従って、iODBC グラフィカル管理ツールを使用します。

  1. Launchpad で検索してiODBC を開きます。
  2. システムDSN タブで、「追加」をクリックし、Actual Open Source Databases を選択します。
  3. 以下の情報を入力してウィザードを完了します。
    • 名前:DSN を入力します。
    • サーバー:127.0.0.1 またはMySQL デーモンが実行されているマシンのアドレスを入力します。
    • ポート:デーモンがリッスンしているポートを入力します。例:3306。
    • データベース:デーモンの構成ファイルで指定されたデータベース名を入力します。例:Odoo。
    • 「メタデータ」タブで、以下のチェックボックスをオンにします。
      • 「Ignore schema in column specifications」
      • 「Don't use INFORMATION_SCHEMA for metadata」
  4. 「接続テスト」をクリックし、ダイアログで資格情報を入力します。

Windows

組み込みのMicrosoft ODBC データソースアドミニストレータを使用してODBC DSN を作成できます。

  1. コントロールパネルから「データソース(ODBC)のセットアップ」を選択します。ODBC データソースアドミニストレータが表示されます。
  2. システムDSN タブで、「追加」をクリックし、MySQL ODBC ドライバーを選択します。
  3. 以下の情報を入力してウィザードを完了します。
    • 名前:DSN を入力します。
    • サーバー:127.0.0.1 またはMySQL デーモンが実行されているマシンのアドレスを入力します。
    • ポート:デーモンがリッスンしているポートを入力します。例:3306。
    • データベース:デーモンの構成ファイルで指定されたデータベース名を入力します。例:Odoo。
    • 「メタデータ」タブで、以下のチェックボックスをオンにします。
      • 「Ignore schema in column specifications」
      • 「Don't use INFORMATION_SCHEMA for metadata」
  4. 「接続テスト」をクリックし、ダイアログで資格情報を入力します。

Odoo シャドウテーブルの作成

シャドウテーブルは外部SQL ソースに存在しますが、FileMaker データベースの他のテーブルとほぼ同様に使用できます。リレーションシップグラフに追加したり、データを参照したり、レイアウトを作成したりできます。

  1. 「ファイル」->「管理」->「データベース」をクリックします。
  2. 表示されるダイアログの「リレーションシップ」タブで、「テーブル/リレーションシップ」セクションの「テーブルを追加」ボタンをクリックします。
  3. 「データソース」メニューで、「ODBC データソースを追加」を選択し、前のセクションで作成したDSN を選択します。

DSN のユーザー名とパスワードを指定すると、Odoo テーブルをリレーションシップグラフに追加できます。 「表示」->「ブラウズモード」をクリックすることで、リモートMySQL データベースと同様にOdoo のデータ のスクロール、ソート、編集、集計が可能になります。

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

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

 ダウンロード

詳細:

Odoo Icon Odoo JDBC Driver お問い合わせ

Odoo ERP のSales Orders、Purchase Orders、Accounts データに連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。