OpenOffice Base で Salesforce データをクエリする方法:CData Salesforce ODBC Driver

f:id:sugimomoto:20211118181321p:plain

こんにちは。CData Software Japanリードエンジニアの杉本です。

CData Driver の連携シナリオとして未だに根強い人気を誇るのが、Microsoft Accessのリンクテーブル連携です。

www.cdata.com

普段遣いの業務アプリが作られているプラットフォームに、クラウドサービスのデータを統合したい、帳票などにつなげて、ビジネスプロセスに統一させたいという要望から多くご利用いただいています。

そんなMS Accessですが、Apacheで公開されているOpenOfficeでも類似製品である「Base」というものが公開されていますね。

www.openoffice.org

f:id:sugimomoto:20211118180819p:plain

そんなOpenOffice BaseでもODBCを経由して、データを取り込む方法があるので、紹介したいと思います。

シナリオ

今回は OpenOffice Base からSalesforce APIに接続しますが、 OpenOffice Base は単純にSalesforceと接続することができません。

それは OpenOffice Base がどのようにSalesforce API側へリクエストを投げるべきかの判断材料やメタデータの情報が無いためです。

f:id:sugimomoto:20211118180828p:plain

そこで、CData ODBC Salesforce Driverを用いて、このボトルネックを解決します。

まず、 OpenOffice Base からはODBCインタフェースでSQL(Select文)をCData Salesforce ODBC Driverに向けて発行してもらいます。そのリクエストを受け取った、CData Salesforce ODBC Driverは、SalesforceのWebAPIのエンドポイントに対して、SQL文を解釈し、HTTPリクエスト形式に変換して発行します。

リクエスト後、XMLフォーマットで返ってきたデータセットはCData Salesforce ODBC DriverがODBCインタフェースのResultsetに変換して OpenOffice Base に返します。

f:id:sugimomoto:20211118180834p:plain

これにより、 OpenOffice Base からアドホックにSQLによるリクエストがあったタイミングで最新のデータを Salesforce から取得することが可能です。

それでは実際に、 OpenOffice Base を使ってSalesforce データを元にした簡単な帳票を作成してみたいと思います。

今回作成する帳票は以下のようにSalesforceからのデータを一覧表示するシンプルなものです。

f:id:sugimomoto:20211118180841p:plain

手順

CData Salesforce ODBC Driverのインストール・セットアップ

最初に CData Salesforce ODBC Driverを対象のマシンにインストール・セットアップします。

CData Salesforce ODBC Driver は以下のURLから30日間のトライアル版が入手できます。

www.cdata.com

f:id:sugimomoto:20210302162708p:plain

インストーラーを立ち上げると、以下のような画面になるので、ダイアログに従ってセットアップを完了してください。

f:id:sugimomoto:20210302162714p:plain

セットアップ完了後、接続設定画面が立ち上がります。下記の項目に Salesforce への接続情報を設定します。

Salesforceの接続情報 設定項目 備考
ユーザID User
パスワード Password
セキュリティートークン Security Token 取得方法はこちら

「接続のテスト」ボタンをクリックします。下記のようなダイアログが表示されれば成功です。「接続ウィザード」の「OK」ボタンをクリックして保存します。

f:id:sugimomoto:20210125142555p:plain

ODBC への接続を追加

それではOpenOffice Baseの作業を進めていきましょう。

まずODBCへの接続を行ったデータベースを作成します。

OpenOffice Baseを立ち上げて「既存のデータベースに接続」から「ODBC」を選択し、「次へ」をクリックします。

f:id:sugimomoto:20211118180848p:plain

システム上のODBCデータソースの名前を入力する画面が表示されるので「ブラウズ」をクリックし

f:id:sugimomoto:20211118180853p:plain

先程作成した「CData Salesforce Source」の接続設定を選択します。

f:id:sugimomoto:20211118180857p:plain

あとは「完了」をクリックすれば、新しいデータベースファイルが作成されます。

f:id:sugimomoto:20211118180903p:plain

テーブルデータを確認する

データベースファイルが作成されるとテーブル一覧には自動的にSalesforce のオブジェクト一覧が表示されます。

例えばAccountをクリックしてみると

f:id:sugimomoto:20211118180917p:plain

以下のようにSalesforceのデータが表示されていることが確認できます。

f:id:sugimomoto:20211118180923p:plain

これだけで、OpenOffice BaseでSalesforceのデータが扱える状態になったことがわかりますね。

レポートを作成

せっかくなのでレポートも併せて作成してみましょう。

「レポート」タブに移動して「ウィザードを使用してレポートを作成」をクリックします。

f:id:sugimomoto:20211118180928p:plain

レポートウィザードでは「テーブルまたはクエリー」でSalesforceのオブジェクトを選択できるので、任意のテーブルを選択し、使用したいフィールドを設定していくだけでOKです。

f:id:sugimomoto:20211118180934p:plain

完了をクリックすると、簡単ですがSalesforceのデータを元にしたレポートが作成できました。

f:id:sugimomoto:20211118180938p:plain

補足:JREについて

ちなみに、64Bitのマシンで実行する場合、32Bit用のJREが必要になるので、予めインストールしておきましょう。

forum.openoffice.org

おわりに

CData ODBC Driver は Salesforce以外にも多様なデータソースをサポートしています。

すべて30日間のトライアルを提供しているので、是非自社で使っているデータソースとOpenOffice Base を合わせて活用してみてください。

www.cdata.com

f:id:sugimomoto:20210125142529p:plain

また、ODBC接続等でわからない点があれば、テクニカルサポートまでお気軽にどうぞ!

https://www.cdata.com/jp/support/submit.aspx

トライアル・お問い合わせ

関連コンテンツ