OData を介してTIBCO Spotfire でOdoo のデータをビジュアライズ
OData は、クラウドベース、モバイル、およびその他のオンラインアプリケーション間のリアルタイム通信を可能にする主要なプロトコルです。CData API Server は、Odoo のADO.NET Provider for Odoo と組み合わせると、Odoo のデータ(またはその他の250+ のADO.NET Providers データ)をTIBCO Spotfire などのOData コンシューマに提供します。この記事では、API Server とSpotfire のOData の組み込みサポートを使用して、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 データをデータベースやデータウェアハウスにレプリケートしています。
はじめに
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなOdoo OData サービスを作成していきましょう。
Odoo への接続
TIBCO Spotfire からOdoo のデータを操作するには、まずOdoo への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Odoo」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、Odoo への接続設定を行っていきましょう!
-
接続するには、URL にOdoo インスタンスURL、User およびAPIToken にユーザー資格情報、Database にOdoo データベース名を設定します。 API トークン(Odoo 14 以降でのみ利用可能)を使用していない場合、代わりにAPIToken フィールドにパスワードを直接入力することができます。
接続方法の詳細は、ヘルプドキュメントの「はじめに」セクションを参照してください。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
接続するには、URL にOdoo インスタンスURL、User およびAPIToken にユーザー資格情報、Database にOdoo データベース名を設定します。 API トークン(Odoo 14 以降でのみ利用可能)を使用していない場合、代わりにAPIToken フィールドにパスワードを直接入力することができます。
接続方法の詳細は、ヘルプドキュメントの「はじめに」セクションを参照してください。
API Server のユーザー設定
次に、API Server 経由でOdoo にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
Odoo 用のAPI エンドポイントの作成
ユーザーを作成したら、Odoo のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でOdoo への接続を設定してユーザーを作成し、API Server でOdoo データのAPI を追加しました。これで、OData 形式のOdoo データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
外部Odoo のデータでデータビジュアライゼーションを作成する
- Spotfire を開き、「Add Data Tables」->「OData」をクリックします。
- 「OData Connection」ダイアログで、以下の情報を入力します。
- Service URL:API Server のOData エンドポイントを入力します。例:
http://localhost:8032/api.rsc
- Authentication Method:Username とPassword を選択します。
- Username:API Server ユーザーのユーザー名を入力します。管理コンソールの「Security」タブでAPI ユーザーを作成できます。
- Password:API Server でユーザーの認証トークンを入力します。
- Service URL:API Server のOData エンドポイントを入力します。例:
- ダッシュボードに追加するテーブルとカラムを選択します。この例ではres_users を使います。
- リアルタイムデータを使いたい場合は、「Keep Data Table External」オプションをクリックします。このオプションは、データの変更をリアルタイムでダッシュボードに反映します。
データをメモリにロードしてローカルで処理したい場合は、「Import Data Table」オプションをクリックします。このオプションは、オフラインでの使用、またはネットワーク接続が遅くダッシュボードとのやり取りが遅延する場合に適しています。
- テーブルを追加すると「Recommended Visualizations」ウィザードが表示されます。テーブルを選択すると、Spotfire はカラムのデータ型を使ってnumber、time、category カラムを検出します。この例ではNumbers セクションでemail を、Categories セクションでname を使用しています。

[Recommended Visualizations]ウィザードでいくつかビジュアライズを作成したら、ダッシュボードにその他の修正を加えることができ、例えばフィルタを適用できます。「Filter」ボタンをクリックすると、各クエリで使用可能なフィルタが「Filters」ペインに表示されます。