Mendix で Odoo 連携アプリを構築
Mendix は、モバイルアプリとWeb アプリの両方を大規模に構築・保守できる高生産性アプリプラットフォームです。CData Connect AI と組み合わせることで、Mendix からクラウド間で即座にOdoo のデータにアクセスできるようになります。この記事では、Mendix からCData Connect AI のデータソースに接続する方法を説明します。
CData Connect AI は Odoo 専用のクラウド間インターフェースを提供し、ネイティブでサポートされているデータベースにデータをレプリケートすることなく、Mendix でリアルタイムのOdoo のデータをインポートできます。Mendix でWeb およびモバイルアプリを構築する際、CData Connect AI はサポートされているすべてのSQL 操作(フィルター、JOIN など)を Odoo に直接プッシュし、サーバーサイド処理を活用して必要なOdoo のデータを迅速に返します。
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 データをデータベースやデータウェアハウスにレプリケートしています。
はじめに
Mendix 用に Odoo への接続を設定
Mendix からOdoo のデータを操作するには、Connect AI から Odoo に接続し、接続へのユーザーアクセスを付与し、Odoo のデータ 用のワークスペースを作成する必要があります。
Connect AI から Odoo に接続
CData Connect AI は、シンプルなポイント&クリック操作でデータソースに接続できるインターフェースを提供しています。
- Connect AI にログインして「Sources」をクリックし、 Add Connection をクリックします
- Add Connection パネルから「Odoo」を選択します
-
Odoo への接続に必要な認証プロパティを入力します。
接続するには、URL にOdoo インスタンスURL、User およびAPIToken にユーザー資格情報、Database にOdoo データベース名を設定します。 API トークン(Odoo 14 以降でのみ利用可能)を使用していない場合、代わりにAPIToken フィールドにパスワードを直接入力することができます。
接続方法の詳細は、ヘルプドキュメントの「はじめに」セクションを参照してください。
- Save & Test をクリックします
-
Add Odoo Connection ページの「Permissions」タブに移動し、ユーザーベースの権限を更新します。
Personal Access Token の追加
REST API、OData API、またはVirtual SQL Server 経由でConnect AI に接続する場合、Personal Access Token(PAT)を使用してConnect AI への接続を認証します。アクセス管理の粒度を維持するために、サービスごとに個別のPAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- Settings ページで「Access Tokens」セクションに移動し、 Create PAT をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- Personal Access Token は作成時にのみ表示されるため、必ずコピーして安全な場所に保存してください。
Mendix 用に Odoo エンドポイントを設定
Odoo への接続後、対象テーブル用のワークスペースを作成します。
-
「Workspaces」ページに移動し、 Add をクリックして新しいワークスペースを作成します(または既存のワークスペースを選択します)。
- Add をクリックしてワークスペースに新しいアセットを追加します。
-
Odoo 接続(例:Odoo1)を選択し、「Next」をクリックします。
-
操作したいテーブルを選択し、「Confirm」をクリックします。
- ワークスペースのOData サービスURL をメモしておきます。例:https://cloud.cdata.com/api/odata/{workspace_name}
接続、PAT、ワークスペースの設定が完了したら、Mendix からOdoo のデータに接続する準備が整いました。
Odoo 連携アプリの構築
OData メタデータファイルのダウンロード
Mendix で接続を作成する際、接続フローにはData Source Contract File が必要です。以下の手順に従って、curl(コマンドラインツール)を使用してCData Connect AI のOData メタデータファイルをダウンロードします:
- お使いのOS 用のコマンドラインウィンドウを開きます。Windows では、スタートメニューを開いて「cmd」と入力し、Enter キーを押してコマンドプロンプトを開きます。macOS およびLinux では、ターミナルウィンドウを開きます。
- curl がシステムにインストールされているか確認するには、「curl -help」と入力してEnter キーを押します。インストールされていない場合は、curl のWeb サイトからインストールしてください。
-
以下のcurl コマンドを実行します。USER をCData Connect AI のユーザー名に、PAT を先ほど生成したPAT に置き換えてください:
curl -u USER:PAT https://cloud.cdata.com/api/odata/{workspace_name}/$metadata -o metadata.xml - curl コマンドで作成されたmetadata.xml ファイルを探し、アクセスしやすい場所に移動します。
Mendix からCData Connect AI に接続
以下の手順に従って、Mendix からCData Connect AI への接続を確立します:
- Mendix にログインし、Data Hub ページを開きます。
- 「Register a Data Source」セクションで「OData」を選択します。
- 上記の手順で取得したmetadata.xml ファイルをアップロードし、「Next」をクリックします。
- 「Data Source Name」と「Data Source Version」に希望する値を入力します。 「Data Source Relative Path」フィールドに「/api/odata/{workspace_name}」と入力し、「Next」をクリックします。
- 「Application information」ページで「Register a new application」をクリックします。
- 「Application Name」に名前を入力し、テクニカルオーナーを選択します(デフォルトでは現在ログインしているユーザーになります)。
- 「Next」をクリックします。「Environment Name」フィールドに希望する名前を入力します(例:CData Connect AI)。 「Environment Location」フィールドに「https://cloud.cdata.com」と入力し、必要に応じて適切な「Environment Type」(例:Production)を選択します。
- 「Done!」をクリックして接続を作成します。
これで、Mendix Studio Pro で接続を使用して、リアルタイムのOdoo のデータにアクセスするアプリケーションを簡単に作成できるようになりました。
CData Connect AI の入手
クラウドアプリケーションから300以上のSaaS、Big Data、NoSQL ソースへのリアルタイムデータアクセスを実現するために、CData Connect AI を今すぐお試しください!