本記事では CData サポート担当からこんなことを聞かれたらどこを確認すべきか?という観点で、よく頂くお問合せ内容をご紹介します。
記事はこちら →JDBC 標準を使用して読み取りと書き込みをQuickBooks に接続することにより、基準のスキルを活用します。 Oracle Data Integrator (ODI) ののようなETL ツールへのドロップイン統合により、CData JDBC Driver for QuickBooks は、リアルタイムQuickBooks をデータウェアハウスやビジネスインテリジェンス、Big Data テクノロジーに接続します。
JDBC 接続により、ODI の他のデータベースと同じようにQuickBooks を操作できます。RDBMS と同様に、フラットファイルを操作する代わりに、ドライバーを使用してQuickBooks API にリアルタイムで直接接続できます。
この記事では、JDBC ベースのQuickBooks データのETL からOracle へのロードまでについてを説明します。QuickBooks エンティティのデータモデルをリバースエンジニアリングした後、マッピングを作成し、データ読み込み戦略を選択します。ドライバーはSQL-92 をサポートしているため、この最後のステップは、組み込みのSQL からSQL Loading Knowledge Module をセンタすることで簡単に実行できます。
ドライバーをインストールするには、インストールフォルダにあるドライバーJAR を.lic ファイルをODI userlib ディレクトリにコピーします。
Unix:
~/.odi/oracledi/userlib
Windows
%APPDATA%\Roaming\odi\oracledi\userlib
ODI を再起動してインストールを完了します。
モデルをリバースエンジニアリングすると、QuickBooks のドライバーのリレーショナルビューに関するメタデータが取得されます。リバースエンジニアリング後、リアルタイムのQuickBooks をクエリし、QuickBooks テーブルに基づいてマッピングを作成できます。
ローカルQuickBooks インスタンスへの接続には接続プロパティ入力は不要です。
本製品は、リモートコネクタ経由でQuickBooks にリクエストを作成します。リモートコネクタはQuickBooks と同じマシン上で動作し、軽量の組み込みWeb サーバーを介して接続を受け入れます。サーバーはSSL/TLS をサポートし、ユーザーにリモートマシンからのセキュアな接続を可能にします。
初めて接続するときは、本製品をQuickBooks で認証する必要があります。詳しくは、ヘルプドキュメントの「Using the Remote Connector」を参照してください。
JDBC URL の構成については、QuickBooks JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.quickbooks.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
以下は一般的な接続文字列です。
jdbc:quickbooks:URL=http://remotehost:8166;User=admin;Password=admin123;
リバースエンジニアリング後、ODI でQuickBooks を操作できるようになります。
QuickBooks を編集し保存するには、Designer ナビゲーターでモデルアコーディオンを展開し、テーブルを右クリックして[Ⅾata]をクリックします。[Refresh]をクリックしてデータへの変更を取得します。変更が完了したら[Save Changes]をクリックします。
以下のステップに従って、QuickBooks からETL を作成します。Customers エンティティをODI Getting Started VM に含まれているサンプルデータウェアハウスにロードします。
SQL Developer を開き、Oracle データベースに接続します。[Connections]ペインでデータベースのノードを右クリックし、[New SQL Worksheet]をクリックします。
もしくは、SQLPlus を使用することもできます。コマンドプロンプトから、以下のように入力します。
sqlplus / as sysdba
CREATE TABLE ODI_DEMO.TRG_CUSTOMERS (CUSTOMERBALANCE NUMBER(20,0),Name VARCHAR2(255));
これで、マッピングを実行してQuickBooks をOracle にロードできます。