こんにちは!テクニカルディレクターの桑島です。
この記事では、Claris FileMaker の外部SQL データソース(ESS)機能とCData ODBC ドライバを利用して、Sybase のデータにシームレスに連携する方法を紹介します。
FileMaker とSybase のデータを連携する3つの方法
FileMaker からSybase と連携するには大きく3つの方法があります。本記事では③の方法を解説しますが、①や②の方法を解説する記事も用意していますので、必要に応じて参照してください。
- ODBC インポート機能を活用:ODBC プロトコルを活用してFileMaker にデータを取り込みます。最も簡単な方法ですが、データに変更があった場合に全件再取り込みが必要になります。定期的にデータを更新する場合には、②の方法がベターです。詳しくはこちらの記事をご確認ください。
- スクリプト機能を活用:FileMaker に搭載されているスクリプト機能を活用することで、初回だけ全件データを取り込み、その後は変更のあったデータだけを取り込む差分更新でデータを更新できます。詳しくはこちらの記事をご確認ください。
- ESS(External SQL Source)機能を活用:本記事で解説する方法です。ESS はFileMaker から外部データソースにリアルタイム接続できる機能です。接続設定は少し面倒ですが、ESS ではリアルタイム接続が可能なので、データ変更をすぐに反映したい、という場合にはベストな方法です。
FileMaker のESS 機能とは?
FileMaker のESS 機能は、FileMaker から外部データソースにリアルタイムで接続できる機能です。ただし、ネイティブで使用できるODBC Driver はFileMaker 側がサポートしているドライバーのみであり、CData ODBC ドライバのような任意のサードパーティドライバーを使用することができません。
SQL Gateway でESS のデータソースを拡充
そこで今回は、CData ODBC ドライバをMySQL に仮想化してアクセスできるようにするSQL Gateway という機能を活用します。この機能を使うことで、FileMaker のESS 側ではデフォルトのMySQL ODBC Driver を使いつつ、SQL Gateway 経由でSybase のデータに連携することが可能となります。
ちなみに、リアルタイム連携ではなくインポートだけの処理であれば、ESS やSQL Gateway を使わなくてもサードパーティODBC のデータをインポートすることが可能です。詳しくはODBC でSybase のデータをFilemaker にインポートの記事を参照してください。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Sybase をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにSybase のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてSybase の接続を設定、2.Claris FileMaker 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとSybase への接続設定
まずは、本記事右側のサイドバーからSybase ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
インストールが完了したら、Sybase との接続設定を進めていきましょう。
インストール後自動的にSybase DSN の設定画面が表示されるので、必要な接続プロパティを取得・設定していきます。
Sybase は、Basic 認証、Kerberos 認証、LDAP 認証などの認証方法をいくつかサポートしています。
Basic 認証を使用した接続
次を設定してデータを認証し接続します。User およびPassword を設定してSybaseIQ 認証を使用します。
- User:認証Sybase ユーザーのユーザー名に設定。
- Password:認証Sybase ユーザーのパスワードに設定。
- Server:SybaseIQ またはSAP SQL Anywhere データベースインスタンスの名前またはネットワークアドレスに設定。
- Database:指定されたサーバーで実行されているSybaseIQ またはSAP SQL Anywhere データベースの名前に設定。
オプションで、UseSSL をtrue に設定することにより、TLS/SSL で接続を保護できます。
Note: 上記のCData 製品 設定でSAP SQL Anywhere のインスタンスに接続することもできます。
Kerberos 認証を使用した接続
Kerberos 認証を活用するには、次の接続プロパティを使用してそれを有効にすることから始めます。
- AuthScheme:Kerberos に設定すると、Sybase への認証に使用されます。
Kerberos 認証用に設定する必要がある接続プロパティに関しては、Kerberos の使用
情報を参照してください。
以下は接続文字列の例です。
Server=MyServer;Port=MyPort;User=SampleUser;Password=SamplePassword;Database=MyDB;Kerberos=true;KerberosKDC=MyKDC;KerberosRealm=MYREALM.COM;KerberosSPN=server-name
LDAP 認証を使用した接続
LDAP 認証で接続するには、LDAP 認証メカニズムを使用するようにSybase サーバーサイドを設定する必要があります。
LDAP 用にSybase を設定したら、Basic 認証と同じクレデンシャルを使用して接続できます。
SQL Gateway でSybase ODBC のサービスを設定
次にSQL Gateway で上の手順で作成したSybase ODBC DSN をMySQL サービスとして公開します。
- CData ODBC ドライバをインストールしたWindows マシンのプログラムメニューから「CData SQL Gateway」を起動します。
- 起動するとCData SQL Gateway のコンソールが開きます。「サービス」タブを開き、「追加」ボタンをクリックします。「新規サービスの追加」ダイアログが表示されるので以下の項目をセットします。
- サービス名:任意(アルファベットでスペースなどの特殊文字系は含めないのが望ましい、本例では「CData」)
- 選択(TDS(SQLServer)、MySQL)ラジオボタン:「MySQL」を選択
- データソース :CData ODBC ドライバのシステムDSN 名を選択(本例では、CData Sybase Sys)
- ポート:同マシンにMySQL が既に起動している場合は、デフォルトの3306が既に利用されているので本例では「3307」を指定
- 「OK」ボタンをクリックして「新規サービスの追加」ダイアログを閉じ、上記で設定したサービスが追加されたのを確認します。
- 「ユーザー」タブを開き、「追加」ボタンをクリックします。「新規ユーザーの追加」ダイアログが表示されるので任意の名称で「ユーザー」および「パスワード」を設定します。本情報が、仮想MySQL へのログイン情報となりますので手元に控えておいてください。
- 「サービス」タブに移動して上段メニューの「変更を保存」、その後に「開始」ボタンをクリックします。仮想MySQL インスタンスが起動するとサービス名左横のランプが緑になります。
Claris Filemaker のESS からSybase に連携
それでは、ESS からSybase に連携していきましょう。MySQL Driver のインストールからはじめます。
MySQL ODBC Driver のインストールと設定
- MySQL ODBC 8.0 Unicode Driver の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 ドライバのDSN 名称「CData Sybase Sys」を選択
- 「Test」ボタンをクリックして「Connection Successful」ダイアログが表示されることを確認してダイアログ含め「OK」ボタンで保存して「ODBC データソース アドミニストレーター(64ビッド)」ウィンドウまで閉じてください。
FileMaker ESS 機能からSybase のデータに連携
- FileMaker のデータベースの管理にて、「リレーションシップ」タブから「テーブル」を追加します。データソース として「ODBC データソース の追加」を選びます。
- ODBC データソースを選択の画面で、MySQL ODBC Driver で設定したデータソース名(ドライバがMySQL ODBC 8.0 Unicode Driver のもの)を選択します。注意点としては、ここでCData ODBC ドライバのデータソース 名(CData Sybase Sys)を選択しないでください。
- 「データソース の編集」画面で以下の項目をセットして「OK」ボタンをクリックします。
- 名前:任意(本例では「CData」)
- 認証(ユーザ名とパスワードを指定) :SQL Gateway で設定した仮想MySQLへのログイン ユーザ名、および、パスワード
- カタログ名:CData ODBC ドライバのDSN 名(CData Sybase Sys)
- 「テーブルを指定」ダイアログにてFileMaker のレイアウトで利用したデータソース 内のテーブルを選択します。
- 「データベースの管理」に選択したテーブルが追加されたことを確認します。
- 指定したテーブルをレイアウトにセットします。データソース 内のデータが表示されれば成功です。
おわりに
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。