Zoho CRM のデータ のPostgreSQL インターフェースを作成

加藤龍彦
加藤龍彦
デジタルマーケティング
Zoho CRM JDBC Driver のリモート機能を使用し、データアクセス用のPostgreSQL エントリポイントを作成します。

PostgreSQL には多くの対応クライアントがあります。標準のドライバーからBI、アナリティクスツールまで、PostgreSQL はデータ接続の人気のインターフェースです。JDBC ドライバーを使用することで、簡単に任意の標準クライアントから接続できるPostgreSQL エントリポイントを作成できます。

Zoho CRM にPostgreSQL データベースとしてアクセスするには、CData JDBC Driver for ZohoCRM とJDBC foreign data wrapper (FDW) を使用します。この記事ではFDW をコンパイルしてインストールし、PostgreSQL サーバーからZoho CRM にクエリを実行します。

JDBC データソースとしてZoho CRM のデータに接続する

JDBC データソースとしてZoho CRM に接続するには、以下が必要です。

  • Driver のJAR パス:JAR ファイルは、インストールディレクトリのlib サブフォルダにあります。
  • Driver クラス

    cdata.jdbc.zohocrm.ZohoCRMDriver
    
  • JDBC URL: URL は、"jdbc:zohocrm:" で始まり、セミコロンで区切られた名前と値の組み合わせで任意の接続プロパティを含めることができます。

    Zoho CRM への接続

    それでは、Zoho CRM に接続していきましょう。データに接続するには、以下の接続パラメータを設定します。

    • Region:Zoho CRM サーバーURL のドメインに関連付けられたリージョン
    • Schema:Zoho CRM のバージョン(v2v2.1、またはv4)。Zoho CRM のバージョンごとに独自のデータモデルがあります

    これらのプロパティに加えて、認可時にサンドボックスまたは開発者インスタンスのいずれかを選択した場合は、InstanceType 接続プロパティでも同じ設定を行ってください。

    Zoho CRM への認証

    Zoho CRM では、データへの認証に2つの方法が用意されています。お使いの環境に応じて適切な方法を選択てください。

    デスクトップ経由で自分のローカルデータに認証を行う場合(非ブラウザ接続):CData 製品が提供する埋め込みOAuth アプリケーションを使用

    CData 製品はすでにZoho CRM にOAuth アプリケーションとして登録されています。そのため、デスクトップアプリケーションを介したローカルデータへの接続では、自動的に組み込みアプリケーションが使用されます。 OAuth 交換の繰り返しを避け、ローカルデータにアクセスするたびにOAuthAccessToken を手動で設定する手間を省くには、InitiateOAuthGETANDREFRESH に設定してください。

    ネットワーク経由で共有データに認証を行う場合(ブラウザ接続):カスタムOAuth アプリケーションを使用

    すべてのOAuth フローで、この認証を有効にするにはAuthSchemeOAuth に設定する必要があります。

    より詳細な認証手順については、ヘルプドキュメントの「Zoho CRM への認証」をご確認ください。

    ビルトイン接続文字列デザイナ

    JDBC URL の構成については、Zoho CRM JDBC Driver に組み込まれている接続文字列デザイナを使用できます。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

    java -jar cdata.jdbc.zohocrm.jar
    

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

    以下は一般的なJDBC URL です。

    jdbc:zohocrm:AuthToken=2ad3b3e719f6bed7368e5e7e26e4f988;
    

JDBC FDW を構築する

FDW は、PostgreSQL を再コンパイルせずに、PostgreSQL の拡張機能としてインストールできます。例としてjdbc2_fdw 拡張子を使用します。

  1. ご使用のバージョンのJRE 共有オブジェクトから、/usr/lib/libjvm.so にシンボリックリンクを追加します。コマンド例:
    ln -s /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/libjvm.so /usr/lib/libjvm.so
    
  2. ビルドするには、以下のコマンドを実行してください。
    make install USE_PGXS=1
    

Zoho CRM のデータをPostgreSQL データベースとしてクエリする

拡張機能をインストールした後、以下のステップに従ってZoho CRM へのクエリの実行を開始します。

  1. データベースにログイン
  2. データベースの拡張機能をロード
    CREATE EXTENSION jdbc2_fdw;
    
  3. Zoho CRM のオブジェクトを作成
    CREATE SERVER ZohoCRM
    FOREIGN DATA WRAPPER jdbc2_fdw OPTIONS (
    drivername 'cdata.jdbc.zohocrm.ZohoCRMDriver',
    url 'jdbc:zohocrm:AuthToken=2ad3b3e719f6bed7368e5e7e26e4f988;',
    querytimeout '15',
    jarfile '/home/MyUser/CData/CData\ JDBC\ Driver\ for\ Salesforce MyDriverEdition/lib/cdata.jdbc.zohocrm.jar');
    
  4. PostgreSQL デーモンに認識されているユーザーのユーザー名とパスワードのユーザーマッピングを作成
    CREATE USER MAPPING for postgres SERVER ZohoCRM OPTIONS (
    username 'admin',
    password 'test');
    
  5. ローカルデータベースに外部テーブルを作成
    postgres=# CREATE FOREIGN TABLE accounts (
    accounts_id text,
    accounts_Account_Name text,
    accounts_Annual_Revenue numeric)
    SERVER ZohoCRM OPTIONS (
    table_name 'accounts');
    
Zoho CRM に対して 読み取り/書き込みコマンドを実行可能にする
postgres=# SELECT * FROM accounts;

おわりに

このようにCData JDBC Driver for ZohoCRM を使って簡単にZoho CRM のデータを取得して検索対象にすることができました。ぜひ、30日の無償評価版 をお試しください。

はじめる準備はできましたか?

Zoho CRM Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Zoho CRM Icon Zoho CRM JDBC Driver お問い合わせ

潜在顧客、連絡先、営業案件、アカウントなどのZoho CRM アカウントデータを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。