Harvest ODBC データソースとの間にInformatica マッピングを作成
Informatica はデータを転送、変換するための強力で洗練された手段です。CData ODBC Driver for API は、Informatica の強力なデータ転送・変換機能とシームレスに連携可能な、業界で実証済みの標準ドライバです。このチュートリアルでは、Informatica PowerCenter でHarvest のデータを転送および参照する方法を説明します。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Harvest をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにHarvest のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてHarvest の接続を設定、2.Informatica 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとHarvest への接続設定
まずは、本記事右側のサイドバーからAPI ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
Harvest への接続に関する情報と、Windows およびLinux 環境でのDSN の設定手順を以下で説明します。
まず、Profile 接続プロパティをディスク上のHarvest プロファイルの場所に設定します(例:C:\profiles\Harvest.apip)。次に、ProfileSettings 接続プロパティをHarvest の接続文字列に設定します(以下を参照)。
Harvest API プロファイル設定
Harvest に認証するには、トークン認証またはOAuth 標準のいずれかを使用できます。自分のデータに接続するにはBasic 認証を使用します。他のユーザーが自分のデータに接続できるようにするにはOAuth を使用します。
トークン認証の使用
トークン認証を使用するには、ProfileSettings 接続プロパティでAPIKey にHarvest パーソナルアクセストークンを設定します。APIKey に加えて、ProfileSettings でAccountId を設定して接続します。
OAuth 認証の使用
まず、Harvest でOAuth2 アプリケーションを登録します。アプリケーションはHarvest ID の「Developers」セクションから作成できます。
以下の接続プロパティを設定すると、接続できるようになります。
- ProfileSettings:ProfileSettings でAccountId を設定します。
- AuthScheme:OAuth に設定します。
- OAuthClientId:アプリ設定で指定したclient ID に設定します。
- OAuthClientSecret:アプリ設定で指定したclient secret に設定します。
- CallbackURL:アプリ設定で指定したRedirect URI に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用して、ドライバーがOAuthAccessToken を取得および更新する方法を管理できます。
Windows
接続プロパティが未設定の場合は、まずODBC DSN(データソース名)で設定します。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。
Linux
CData ODBC Driver for API をLinux 環境にインストールする場合、ドライバーのインストールによってDSN が事前に定義されます。DSN を変更するには、システムデータソースファイル(/etc/odbc.ini)を編集し、必要な接続プロパティを定義します。
/etc/odbc.ini
[CData API Source] Driver = CData ODBC Driver for API Description = My Description Profile = C:\profiles\Harvest.apip ProfileSettings = 'APIKey = my_personal_key AccountId = _your_account_id'
これらの構成ファイルの使用方法については、オンラインのヘルプドキュメントを参照してください。
Invoices データへのリンクテーブルを作成する
「オブジェクトエクスプローラー」からリンクテーブルを作成してライブInvoices データにアクセスする方法は、次のとおりです。
ODBC 接続を作成する
下記の手順に従って、Informatica PowerCenter のHarvest に接続します。
- Informatica Developer ツールで、リポジトリに接続してプロジェクトを作成しておきます。
- 「Connection Explorer」ペインで右クリックし、「Create a Connection」をクリックします。
- 「New Database Connection」ウィザードが表示されたら、接続に名前とID を入力し、「Type」メニューで「ODBC」を選択します。
- 「Connection String」プロパティに
jdbc:api:Profile=C:\profiles\Harvest.apip;ProfileSettings='APIKey=my_personal_key;AccountId=_your_account_id';
を入力します。
注意:Linux オペレーティングシステムで作業している場合は、「Driver Manager for Linux」プロパティをunixODBC 2.3.x に設定します。
Harvest のデータオブジェクトを作成する
Harvest へのODBC 接続を作成したら、Informatica でHarvest エンティティにアクセスできるようになります。下記の手順に従って、Invoices エンティティをプロジェクトに追加します。
- 「Object Explorer」でプロジェクトを右クリックし、「New」->「Data Object」をクリックします。
- ウィザードが表示されたら「Relational Data Object」オプションを選択します。
- 「Connection」ボックス横にある「Browse」ボタンをクリックし、先に作成したODBC 接続を選択します。
- 既存のリソースからデータオブジェクトを作成するオプションを選択し、「Resource」ボックス横にある「Browse」ボタンをクリックします。
- ダイアログが表示されたら、「Show Default Schema Only」オプションの選択を解除してODBC 接続のノードを展開します。必要なエンティティを選択します。
これで、Data Viewer でテーブルをブラウズできます。テーブル用ノードを右クリックし「Open」をクリックします。「Data Viewer」ビューで「Run」をクリックします。
マッピングを作成する
下記の手順に従って、Harvest ソースをマッピングに追加します。
- 「Object Explorer」でプロジェクトを右クリックし、「New」->「Mapping」をクリックします。
- Harvest 接続のノードを展開してから、テーブル用のデータオブジェクトをエディタ上にドラッグします。
- ダイアログが表示されたら「Read」オプションを選択します。
以下のステップに従って、Harvest カラムをフラットファイルにマッピングします。
- 「Object Explorer」でプロジェクトを右クリックし、「New」->「Data Object」をクリックします。
- 「Flat File Data Object」->「Create as Empty」->「Fixed Width」と選択します。
- Harvest オブジェクトのプロパティで目的の行を選択して右クリックし、コピーします。コピーした行をフラットファイルプロパティにペーストします。
- フラットファイルのデータオブジェクトをマッピングにドラッグします。ダイアログが表示されたら「Write」オプションを選択します。
- クリックおよびドラッグしてカラムを接続します。
Harvest のデータを転送するには、ワークスペース内で右クリックして「Run Mapping」をクリックします。
おわりに
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。