スクリプトで FileMaker Pro データベースからデータを抽出する最良の方法は何ですか?

StackOverflow https://stackoverflow.com/questions/28668

質問

FileMaker Pro データベースから有用な情報を自動的に抽出する方法 (できれば Python スクリプトで) を思いつくことができれば、私の仕事はもっと簡単になるか、少なくとも退屈ではなくなるでしょう。私は Linux マシンで作業しており、FileMaker データベースは OS X マシンで実行されている同じ LAN 上にあります。自分のマシンから Webby インターフェイスにログインできます。

私は SQL がかなり得意なので、FileMaker 内のデータに SQL でアクセスできる FileMaker プラグインを誰かが教えてくれたら、本当にうれしいです。私が見つけたものはすべて、逆方向にしか進みません。FileMaker に SQL ソースからデータを取得させる。役に立たない。

これは私の第一選択ではありませんが、Perl 風のソリューションが手元にあれば、Python の代わりに Perl を使用するでしょう。

注記:XML/XSLT サービス (一部の人々が提案しているように) は FM Server でのみ利用可能であり、FM Pro では利用できません。それ以外の場合は、それがおそらく最善の解決策になります。ODBC は、動作させることさえ非常に困難であることが判明しています。セットアップ時に FM からのフィードバックはまったくないので、/var/log/system.log を調べて、わかりにくいエラー メッセージを解析する必要があります。

結論:ODBC 接続を通じて FM データベースにクエリを実行するマシン上でローカルに Python スクリプトを実行することで、これを機能させることができました。このスクリプトは実際には、LAN 上の他のシステムからのソケット接続を受け入れ、クエリを実行し、ソケット接続を通じてデータを返す TCPServer です。FM Pro がローカルでのみ ODBC 接続を受け入れるという事実を回避するには、これを行う必要がありました (外部接続には FM サーバーが必要です)。

役に立ちましたか?

解決

それは、 本当に FileMaker Pro で何かをするのは久しぶりですが、FileMaker Pro に ODBC (および JDBC) 接続を行う機能があることは知っています (ただし、それが linux/ただし、perl/Python の世界)。

この記事では、ODBC および JDBC 経由で FileMaker データを共有/公開する方法を説明します。
ODBC または JDBC 経由で FileMaker Pro データを共有する

そこから、ODBC/JDBC 接続を作成できれば、必要に応じてデータをクエリできます。

他のヒント

ドライバーを入手するには、FileMaker Pro インストール CD が必要です。 このドキュメント FMP 9 のプロセスの詳細については、バージョン 7.x および 8.x でも同様です。バージョン 6.x 以前は完全に異なるため、わざわざ試す必要はありません (以前のバージョンでの xDBC サポートはせいぜい「最小限」です)。

FMP 9 は、SQL-92 標準構文を (ほとんど) サポートします。テーブルを直接クエリするのではなく、テーブルの別名として機能する「テーブル オカレンス」名を使用してクエリを実行することに注意してください。データ テーブルが複数のファイルに格納されている場合は、それらのデータ テーブルを指すテーブル オカレンス/エイリアスを含む単一の FMP ファイルを作成できます。「文書化されていない機能」があり、ODBC アクセスが機能するには、そのようなファイルにもテーブルが定義されており、そのテーブルがリレーションシップ グラフ上の他のテーブル (どれかは関係ありません) に「関連付けられている」必要があります。そうしないと、クエリは常に結果を返しません。

この PDF ドキュメントには、FMP が提供する xDBC インターフェイスの使用に関するすべての制限事項が詳しく記載されています。単純なクエリのパフォーマンスはかなり高速です、ymmv。「LIKE」演算子を指定したクエリのパフォーマンスがあまり優れていないことがわかりました。

FMP には、HTTP 接続経由で FMP データをクエリするために使用できる XML/XSLT インターフェイスもあります。また、Web アプリケーションで FMP データにアクセスして使用するための PHP クラスも提供します。

Python に興味がある場合は、Filemaker の Python Wrapper をチェックしてみることに興味があるかもしれません。Filemaker の組み込み XML サービスを介して Filemaker データへの双方向アクセスを提供します。これに関する非常に詳細な情報は次の場所で見つけることができます。

http://code.google.com/p/pyfilemaker/

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top