FAMLog
-lay.responseクエリー引数
June 22, 2006
-lay.responseクエリー引数は、FileMaker Server AdvancedのカスタムWeb公開において、リクエストの処理に使用するレイアウトとは異なるレイアウトを利用して応答データを出力させる場合に使用します。
(使用例)
-db=employees&-lay=Budget&Salary=100000&Salary.op=gt&-find
例えば、ある特定のフィールド(上記例では「Salary」フィールド)を検索対象にしたいが、そのフィールドのデータを出力する必要がない場合などに使用できます。ソーステーブルが違うレイアウトでも指定することは一応可能ですが、-lay.responseクエリー引数による処理が発生するまでにどこかでエラーが発生すると、途中で処理が中断され、-lay.responseクエリー引数の指定が無効になってしまいます。通常は、ソーステーブルが同じレイアウトを指定するとよいでしょう。
-lay.response引数が含まれていない場合は、リクエストの処理時も、応答の処理時も、-layクエリー引数で指定されているレイアウトが使用されます。ただし、意図しないレイアウトが指定されることを防止するために、常に-lay.responseクエリー引数の値を指定するようにしておくことが大事です。
-layクエリー引数
June 21, 2006
-layクエリー引数は、FileMaker Server AdvancedのカスタムWeb公開において、FileMakerデータベースのレイアウトを指定する際に使用します。
-layクエリー引数の値にはリクエストの処理に使用するレイアウトの名前を指定します。基本的に、FileMaker ServerとWeb公開エンジンは、-layクエリー引数で指定されたレイアウトの情報を基にXMLデータを生成します。
-dbnames、-layoutnames、-scriptnamesおよび-process以外のすべてのクエリーコマンドで必須となるクエリー引数であり、-dbクエリー引数と同様に、FileMakerクエリー文字列に必ず含まれる引数であると言えます。
-dbクエリー引数
June 20, 2006
-dbクエリー引数は、FileMaker Server Advancedにおいて、クエリーコマンドを適用するFileMakerデータベースの名称を指定する際に使用します。
-dbnamesおよび-process以外のすべてのクエリーコマンドで必須となるクエリー引数であり、ほぼすべてのリクエストで必ずFileMakerクエリー文字列に含まれる引数であると言えます。
注意点として、実際のデータベースファイル名にはオプションで拡張子を含めることができますが、-dbクエリー引数の値にはファイル拡張子を含めた形式で指定することはできません。
(使用例)
http://www.example.com/fmi/xml/fmresultset.xml?-db=employees
FileMakerクエリー文字列
June 16, 2006
FileMaker Server AdvancedのカスタムWeb公開では、HTTP経由でFileMakerデータベースからXML形式のデータを取得したり、処理した結果の内容をXML形式のデータとして取得できます。
FileMaker Server Web公開エンジンにXMLデータを要求するには、FileMaker固有の命令であるクエリーコマンドとクエリー引数、およびそれらの値で構成される「FileMakerクエリー文字列」の情報をサーバーに送信します。
FileMakerクエリー文字列は、主に下記のような方法で指定することができます。
・HTTPリクエストのGETリクエストメソッドを使用してクエリー文字列等で指定する
・HTTPリクエストのPOSTリクエストメソッドを使用してフォーム等で指定する
・XSLTスタイルシートにおいてxslt-cwp-query処理命令で指定する
・XSLTスタイルシートでdocument関数を使用して新しいHTTPリクエストを発生させる
例えば、GETリクエストメソッドの場合には、URLにおける「?」以降の文字列(クエリー文字列)がそのままFileMakerクエリー文字列として扱われます。
FileMaker Pro 8におけるフィールド数の上限
June 06, 2006
FileMakerにおける1ファイルあたりのフィールド数の上限は、ファイルメーカーPro 6ではおよそ5900でしたが、FileMaker Pro 8では合計で2億5千6百万となっています。
FileMaker Pro 8のデータファイルフォーマットは、バージョン7と同じフォーマットであるため、FileMaker Pro 7もバージョン8と同様の仕様です。
なお、ファイルメーカーPro 6におけるフィールド数の上限である5900は目安であり、実際にはフィールド名の長さによりその上限値は変わります。
[関連]Technical Specifications Of FileMaker Pro 5.5、Technical Specifications Of FileMaker Pro 7、Technical Specifications of FileMaker Pro 8 and FileMaker Pro 8 Advanced
(FileMaker Knowledge Base)
GetValue関数
May 31, 2006
GetValue関数は、FileMaker 8で追加された関数です。改行で区切られた値の一覧から指定した位置の値を返します。
(構文)
GetValue(値一覧; 値番号)
値とは改行で区切られた文字列のことであり、例えば、「GetValue("ロンドン¶パリ¶香港"; 2)」の結果は「パリ」になります。
値には、空白、文字、単語、文章または段落を使用することができます。また、最後の値は、改行の有無に関わらず認識されるようになっています。
スクリプトに引数を渡すクエリー引数を使用する際の注意点 (4)
May 25, 2006
FileMaker Server 8 AdvancedのカスタムWeb公開では、FileMakerのスクリプトに引数を渡すことができるクエリー引数が追加されましたが、基本機能では複数の引数を渡すことができないという制限があります。
複数の引数を渡したい場合は、区切りとなる文字をあらかじめ決めておき、その区切り文字で値を連結して、引数を受け取るスクリプト側でそれぞれの値を取得するようにします。区切りとなる文字を改行コードにして、スクリプト側ではGetValue関数を使用すれば、より手軽に任意の値を取得できます。
具体的には、URLエンコードされた改行コード(%0aや%0d)を使って値を連結した場合の、FileMakerクエリー文字列の例は次のようになります。
(例)-script=SCRIPTNAME&-script.param=PARAMETER1%0aPARAMETER2%0aPARAMETER3
上記例の場合、引数を受け取るスクリプトにおいて、次のように関数を使用することで文字列「PARAMETER2」を取得できます。
(使用例)
GetValue(Get(スクリプト引数); 2)
スクリプトに引数を渡すクエリー引数を使用する際の注意点 (2)
May 19, 2006
FileMaker Server 8 AdvancedのカスタムWeb公開では、FileMakerのスクリプトに引数を渡すことができるクエリー引数(-script.param、-script.prefind.param、-script.presort.param)が追加されました。
FileMakerクエリー文字列に、-script.paramクエリー引数が複数含まれている場合には、Web公開エンジンでは最後の値が使用されるように解析されます。
例えば、FileMakerクエリー文字列において「-script.param=1&-script.param=2」というようにクエリー引数とその値が並んでいる場合には、-script.paramの値としては2を取得することになります。
FileMaker Web News:第6回 2006年5月号
May 15, 2006
書籍「FileMaker Server カスタムWebテクニック」に関する出版後の情報を補足することを主目的とした「FileMaker Web News」第6回目をお届けします。
■FileMaker 8v3 アップデータ
「FileMaker Server 8v3 アップデータ」と「FileMaker Server 8v3 Advanced Web公開エンジン アップデータ」が2006年4月下旬に公開されました。これにより、FileMaker Server 8およびWeb公開エンジンの最新版はバージョン8v3(8.0v3)となっています。サーバー関連のアップデータだけでなく、「FileMaker Pro 8v3 アップデータ」と「FileMaker Pro 8v3 Advanced アップデータ」も同時に公開されています。
[関連]FileMaker 8v3 アップデータ(FAMLog)
■FileMaker Pro 8 5ライセンスパック
ファイルメーカー社が、4本分の値段で5本分のFileMaker Pro 8を購入できるキャンペーン製品「FileMaker Pro 8 5ライセンスパック」を特別価格159,600円(税込)で提供する「FileMaker Pro 8 5ライセンスパック キャンペーン」を2006年4月28日から実施しています。期間限定のキャンペーンであり、実施期間は2006年8月31日までとなっています。
[関連]FileMaker Pro 8 5ライセンスパック キャンペーン(FAMLog)
(2007/01/08追記:リンク先のページがなくなっていたので、リンクを一部削除しました。)
(2008/03/15追記:カテゴリーをBookからNewsに変更しました。)
スクリプトに引数を渡すクエリー引数を使用する際の注意点 (1)
May 11, 2006
FileMaker Server 8 AdvancedのカスタムWeb公開では、FileMakerのスクリプトに引数を渡すことができるようになり、そのためのクエリー引数(-script.param、-script.prefind.param、-script.presort.param)が追加されました。
引数はテキストとして扱われることになり、テキストでない値として処理する場合は、スクリプト内で値を変換して利用するようにします。通常は、Get(スクリプト引数)関数を使用してスクリプト引数を取得しますが、例えば、値を数字として扱う場合には、GetAsNumber関数もあわせて使用することになります。
(使用例)
GetAsNumber(Get(スクリプト引数))