SSIS で SQL Server から Odoo へのデータフローを構築
SQL Server データベースは、エンタープライズレコードの保存に広く使用されています。このデータを他の場所に移動する必要がある場合がよくあります。CData SSIS Task for Odoo を使用すると、Odoo のデータを簡単に転送できます。この記事では、SQL Server から 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 データをデータベースやデータウェアハウスにレプリケートしています。
はじめに
ソースとデスティネーションコンポーネントの追加
まず、新しい ADO.NET Source コントロールと新しい Odoo Destination コントロールを Data Flow Task に追加します。
ADO.NET ソースの設定
以下の手順に従って、SQL Server インスタンスへの接続に必要なプロパティを指定します。
- ADO.NET Source を開き、新しい接続を追加します。ここでサーバーとデータベースの情報を入力します。
- Data access mode メニューで「Table or view」を選択し、Odoo にエクスポートするテーブルまたはビューを選択します。
- ADO NET Source ウィザードを閉じ、デスティネーションコンポーネントに接続します。
Odoo 用の新しい Connection Manager を作成
以下の手順に従って、Connection Manager で必要な接続プロパティを設定します。
- 新しい Connection Manager を作成します:Connection Manager ウィンドウで右クリックし、New Connection をクリックします。Add SSIS Connection Manager ダイアログが表示されます。
- メニューから CData Odoo Connection Manager を選択します。
-
接続プロパティを設定します。
接続するには、URL にOdoo インスタンスURL、User およびAPIToken にユーザー資格情報、Database にOdoo データベース名を設定します。 API トークン(Odoo 14 以降でのみ利用可能)を使用していない場合、代わりにAPIToken フィールドにパスワードを直接入力することができます。
接続方法の詳細は、ヘルプドキュメントの「はじめに」セクションを参照してください。
Odoo デスティネーションの設定
デスティネーションコンポーネントの Connection Manager で、SQL Server ソーステーブルから Odoo デスティネーションテーブルへのマッピングと、Odoo のデータに対して実行するアクションを定義します。この記事では、res_users エンティティを Odoo に挿入します。
- Odoo Destination をダブルクリックして、デスティネーションコンポーネントエディタを開きます。
- Connection Managers タブで、先ほど作成した Connection Manager を選択します。
-
Use a Table メニューで res_users を選択します。
Action メニューで Insert を選択します。
-
Column Mappings タブで、入力カラムからデスティネーションカラムへのマッピングを設定します。
プロジェクトの実行
これでプロジェクトを実行できます。 SSIS Task の実行が完了すると、SQL テーブルのデータが選択したテーブルにエクスポートされます。