FAMLog
URLに非ASCII文字列を含める場合の留意点
February 02, 2005
FileMaker Server 7 Advancedにおいて、XMLデータおよびオブジェクトにアクセスするためのURLは、非ASCII文字列についてはURLエンコードされたUTF-8形式の文字列を利用する必要があります。
例えば、「data」フィールドの値を「XMLデータ」に設定する場合には、下記のようなURLを使用します。
(例)http://www.example.com/fmi/xml/fmresultset.xml?-db=dbname
クエリーコマンドを使用する際の注意点 (5)
February 01, 2005
FileMaker Server 7 Advancedにおいて、-findクエリーコマンドを使用した場合には、フィールドの値の大文字と小文字は区別されません。一方、-newおよび-editクエリーコマンドを利用する場合には、フィールドの値に使用した大文字と小文字は保持され、クエリー文字列で指定した通りにデータベースに保存されます。
例えば、検索処理を行うように指定されたクエリー文字列内において、下記のように「Product=FileMaker」と指定しても、「Product=filemaker」と指定しても、両者の検索結果に違いはありません。
http://www.example.com/fmi/xml/fmresultset.xml?-db=dbname
http://www.example.com/fmi/xml/fmresultset.xml?-db=dbname
逆に、-newや-editクエリーコマンドの場合には、前者はFileMakerと、後者はfilemakerと登録もしくは修正され、大文字小文字は保持されます。
FX_charset
January 28, 2005
PHPでFileMakerデータベースへの接続を手軽にするFX.phpを利用する際に、非ASCIIコード文字列の処理時に発生する問題を解決する「FX_charset」が配布されています。
これまで配布されていたFX.php日本語対応版は、FX.php 2.3.2をベースとしたもので、FileMaker 7には対応していませんでした。本日配布開始されたFX_charsetは、FX.php 3.1に対応したものとなっており、FileMaker Server 7 Advancedと共に使用することができます。
なお、FX_charsetのライセンスは、FX.phpのライセンスと同一となっています。
(2005/08/15追記:FX.php 4.0でFX_charsetの機能が統合されたため、FX.php 4.0以降ではFX_charsetを使用する必要がなくなりました。)
クエリーコマンドを使用する際の注意点 (4)
January 27, 2005
FileMaker Server 7 Advancedにおいて、クエリー文字列で使用されるデータベース名、レイアウト名、およびフィールド名では、大文字と小文字は区別されません。
例えば、SampleLayoutという名称のレイアウトを利用する際に、「-lay=SampleLayout」だけでなく「-lay=samplelayout」というようにもクエリー文字列内で指定することができます。
ただし、XSLTスタイルシート内の記述では、大文字と小文字が区別されるため、データベースで使用されている実際の名称に完全に一致させる必要があります。
データベースのフィールド名が「LastName」である場合には、<xsl:value-of select="fmrs:field[@name='LastName']" />というように、フィールドの名称が完全に一致するように記述しなければなりません。
クエリーコマンドを使用する際の注意点 (3)
January 25, 2005
FileMaker Server 7 Advancedでは、クエリーコマンドおよびクエリー引数の名称は、-findや-dbのように小文字で指定する必要があります。
-Findおよび-DBのように大文字を利用して指定すると、無効なコマンドと認識されて正常に処理されません。
ただし、フィールド名クエリー引数およびフィールド名.op(比較演算子)クエリー引数で使用されるフィールド名については、必ずしも小文字である必要はないようです。
しかしながら、フィールド名クエリー引数とフィールド名.opクエリー引数のフィールド名が完全に一致していない場合だと(例:id=1&ID.op=neq)、比較演算子の指定が正常に処理されないため、その点は注意する必要があります。
クエリーコマンドを使用する際の注意点 (2)
January 24, 2005
FileMaker Server 7 Advancedでは、クエリーコマンドごとに、対応するクエリー引数を指定する必要があります。例外として、XMLを使用したカスタムWeb公開で、-dbnamesクエリーコマンドを使用する場合のみ、クエリー引数を指定する必要がありません。
XSLTを使用したカスタムWeb公開では、XML文法を指定するための-grammarクエリー引数がXSLTリクエストで必須となっています。
-dbnamesおよび-processクエリーコマンドは、クエリー対象のデータベースを指定する-db引数を必要としませんが、-processはXSLTリクエストの場合のみ利用できるクエリーコマンドであることから、-grammarクエリー引数の指定が必要です。
AutoUpdate Example for FileMaker Server 7
January 21, 2005
Troi Automatisering社が、FileMaker Server 7の自動更新機能の使用方法を紹介するためのサンプルファイルを配布しています。
FileMaker Serverの自動更新機能を利用すると、FileMaker Server上にある最新のプラグインが、FileMaker Proクライアントに自動的にインストールされるようにすることができます。
Mac版のプラグインで自動更新機能を利用するためには、プラグインファイルをtarコマンドで圧縮された形式のものを利用する必要があります。Troi Automatisering社のWebページからはサンプルファイルと共に、tarで圧縮された同社のプラグインファイルも配布されています。
処理命令
January 20, 2005
FileMaker XSLTスタイルシートにおいて<?xslt-cwp-query?>処理命令を使用することにより、XMLデータを要求するクエリーコマンドおよび引数をあらかじめ定義しておくことができます。
(使用例)
<?xslt-cwp-query params="-grammar=fmresultset&-db=dbname
<?xslt-cwp-query?>処理命令は、FileMaker Server Advanced固有の処理命令です。この処理命令を使用すると、あらかじめ定義したクエリーコマンドや引数が優先されるため、クエリーコマンドとクエリー引数の不正使用を防止することができます。
URLのクエリー文字列でクエリーコマンドや引数を指定する必要もないため、URLを短くできる利点もあります。
クエリーコマンドを使用する際の注意点 (1)
January 19, 2005
FileMakerクエリー文字列でクエリーコマンドおよび引数を使用する場合には、いくつか注意すべき点があります。
まず重要な点として、FileMakerクエリー文字列に含めるクエリーコマンドは、1つだけにする必要があります。クエリーコマンドを指定しなかったり、2種類以上のクエリーコマンドを指定すると、データベースに接続できず正常に処理されません。
XSLTスタイルシート内の<?xslt-cwp-query?>処理命令でクエリーコマンドを指定しなかった場合には、Webブラウザーでアクセスするときに、URLのクエリー文字列でクエリーコマンドを指定する必要があります。
エラー処理対策およびセキュリティ上の観点からすると、<?xslt-cwp-query?>処理命令でクエリーコマンドを指定することが推奨されるでしょう。
バージョン7でサポートされなくなった引数名 (2)
January 18, 2005
FileMaker Server 7 Advancedでは、エラー処理関連やメール送信関連の変数タグもサポートされなくなっています。
下記の変数タグがCDMLのエラー処理に使用されていましたが、バージョン7ではエラーはXSLTスタイルシートで処理されます。
-error
-errnum
-errfmtfield
サポートされなくなったメール送信関連の変数タグは下記の通りで、Web公開エンジンでメールの送信を実行するには、FileMaker XSLT拡張関数を使用することになります。
-mailto
-mailfrom
-mailhost
-mailformat
-mailcc
-mailbcc
-mailsub