はじめに
こんにちは。CData技術ディレクターの桑島です。本日は、Claris FileMaker(以下、FileMaker)のESS(External SQL Source)機能からCData ODBC Driver、および、SQL Gateway製品を利用して各種SaaSデータに接続する方法をご紹介します。
FileMakerのESS機能とは
FileMakerのESS(External SQL Source)機能は、FileMakerから外部データソースにライブ接続できる機能です。
ESS機能で利用できるODBC Driverは、以下FileMaker側がサポートされているDriverのみ利用できます。
外部 SQL データソースに対してサポートされている ODBC ドライバ
実際にFileMakerのESS機能からCData ODBC Driverを利用しようとすると以下のようなダイアログが表示されます。
実現方法
そこで、FileMakerのESS機能からCData ODBC Driverを利用する方法として、CData SQL Gatewayという機能を利用します。CData SQL Gatewayは、CData ODBC Driverのエンタープライズエディションにバンドルする機能です。SQL Gatewayの詳細については、本CData Software Blogの下記の記事をご覧ください。
CData SQL Gatewayは、CData ODBC Driverで接続可能なSaaS/NoSQLデータを、MySQL(もしくは、SQLServer)としてアクセスできる機能です。FileMakerのESS機能では「MySQL ODBC 8.0 Unicode Driver version 8.0.15(https://dev.mysql.com/downloads/connector/odbc/)」をサポートしておりますので、本MySQL ODBC Driverから、SQL Gatewayで起動した仮想MySQLインスタンスに接続することで、CData ODBC Driverで接続するSaaS/NoSQLデータを利用できるようにしました。
用意するもの
- Claris FileMaker Pro : 45日間の無償評価版あり
- CData ODBC Driver : 30日間の無償評価版あり、製品版の場合は、エンタープライズエディションが必要
- 接続データソース の環境 : 本記事ではZohoCRMを例にご紹介します
- Windowsマシン(Claris FileMaker Pro、および、CData ODBC Driverをインストール) ※MacOSの場合は、「MySQL ODBC 8.0 Unicode Driver version 8.0.15」の代わりにActualTechnologyのMySQL ODBC Driverが必要となります
手順
CData ODBC Driverのインストール、および、データソース への接続設定
FileMakerがインストールされているマシンに接続したいデータソースのCData ODBC Driver をダウンロードします。
ダウンロードしたODBCドライバのインストーラを実行してインストールします。
インストールが完了すると、製品ヘルプと下記のようなODBC DSN設定画面が起動します。
接続タブ > Authenticationグループ内にデータソース 毎に接続に必要な項目をセットします。接続に必要な項目は、起動した製品マニュアルの「はじめに」の章をご覧ください。
接続テストを実行して「接続に成功しました。」ダイアログ(OAuth認証認可のデータソースであればブラウザが起動してデータソース へのサインインが求められます)が表示されれば、CData ODBC Driverからデータソース への接続は成功です。失敗する場合は、弊社サポート窓口までお問い合わせください。社内ネットワークからデータソース のAPIに接続する際にプロキシサーバやファイアウォールが設置されている場合は別途設定が必要となります。
CData SQL Gatewayの設定
CData ODBC DriverをインストールしたWindowsマシンのプログラムメニューから「CData SQL Gateway」を起動します。
起動すると下記のWindowが起動します。
「サービス」タブを開き、「追加」ボタンをクリックします。「新規サービスの追加」ダイアログが表示されるので以下の項目をセットします。
- サービス名:任意(アルファベットでスペースなどの特殊文字系は含めないのが望ましい、本例では「CData」)
- 選択(TDS(SQLServer)、MySQL)ラジオボタン:「MySQL」を選択
- データソース :CData ODBC DriverのシステムDSN名を選択(本例では、CData Zoho CRM Sys)
- ポート:同マシンにMySQLが既に起動している場合は、デフォルトの3306が既に利用されているので本例では「3307」を指定
「OK」ボタンをクリックして「新規サービスの追加」ダイアログを閉じ、上記で設定したサービスが追加されたのを確認します。
「ユーザー」タブを開き、「追加」ボタンをクリックします。「新規ユーザーの追加」ダイアログが表示されるので任意の名称で「ユーザー」および「パスワード」を設定します。本情報が、仮想MySQLへのログイン情報となりますので手元に控えておいてください。
「OK」ボタンをクリックしてダイアログを閉じ、ユーザーが追加されたことを確認してください。
「サービス」タブに移動して上段メニューの「変更を保存」、その後に「開始」ボタンをクリックします。仮想MySQLインスタンスが起動するとサービス名左横のランプが緑になります。
同マシンにMySQL WorkBenchなどのMySQLクライアントツールが入っている場合は仮想MySQLに接続して確認することができます。
- Hostname : localhost、もしくは、同マシンのIPアドレス
- Port : SQL Gatewayで設定したポート(本手順では「3307」を使用)
- Username : SQL Gatewayで設定したユーザー名
- Password : SQL Gatewayで設定したユーザーのパスワード
ODBCのDSN名(CData {データソース 名} Sys)がスキーマ名となります。スキーマを開くとデータソース 内のデータがテーブルリストとして表示されます。「SELECT * FROM {スキーマ名}
.{テーブル名};」のSQLでデータソース内のデータを取得することができます。
MySQL ODBC Driverのインストール
MySQL ODBC 8.0 Unicode Driver version 8.0.15」の64bit Windows版をダウンロードしてインストールします。
インストールが完了したら、Windowsの検索から「odbc」と入力して「ODBCデータソース (64bit)」を起動します。
「システムDSN」タブを開き、「追加」ボタンから「データソース の新規作成」にて「MySQL ODBC 8.0 Unicode Driver」を選択して「完了」ボタンをクリックします。
「MySQL Connector/ODBC Data Source Configuration」が起動して以下の項目をセットします。
- Data Souce Name : 任意の名称(本例では、「CData」)
- TCP/IP Server : CData SQL Gatewayの仮想MySQLが起動しているマシンのIPアドレス(同一マシンの場合は「localhost」)
- Port : SQL Gatewayで設定したポート(本手順では「3307」を使用)
- User : SQL Gatewayで設定したユーザー名
- Password : SQL Gatewayで設定したユーザーのパスワード
- Database : ドロップダウンリストからCData ODBC DriverのDSN名称「CData {データソース 名} Sys」を選択
「Test」ボタンをクリックして「Connection Successful」ダイアログが表示されることを確認してダイアログ含め「OK」ボタンで保存して「ODBC データソース アドミニストレーター(64ビッド)」ウィンドウまで閉じてください。
FileMaker ESS機能からの利用
FileMakerのデータベースの管理にて、「リレーションシップ」タブから「テーブル」を追加します。データソース として「ODBCデータソース の追加」を選びます。
ODBCデータソースを選択の画面で、MySQL ODBC Driverで設定したデータソース名(ドライバがMySQL ODBC 8.0 Unicode Driverのもの)を選択します。注意点としては、ここでCData ODBC Driverのデータソース 名(CData {データソース 名} Sys)を選択しないでください。
「データソース の編集」画面で以下の項目をセットして「OK」ボタンをクリックします。
- 名前:任意(本例では「CData」)
- 認証(ユーザ名とパスワードを指定) :SQL Gatewayで設定した仮想MySQLへのログイン ユーザ名、および、パスワード
- カタログ名:CData ODBC DriverのDSN名(CData {データソース名} Sys)
「テーブルを指定」ダイアログにてFileMakerのレイアウトで利用したデータソース 内のテーブルを選択します。
「データベースの管理」に選択したテーブルが追加されたことを確認します。
指定したテーブルをレイアウトにセットします。データソース 内のデータが表示されれば成功です。
まとめ
如何でしたでしょうか。FileMakerからCData ODBC Driverの利用は、インポート、および、スクリプト機能だけ利用可能でしたが、SQL Gateway機能を利用することでESS機能での利用できることを確認できました。FileMakerからのSaaS連携についてはこちらの記事もございますのでご紹介させていただきます。手順にご不明な点などがありましたら弊社サポート窓口までお問い合わせください。