FAMLog
Get(システムバージョン)関数
June 28, 2007
FileMaker Proの「Get(システムバージョン)関数」をスクリプト内で使用すると、スクリプトを実行しているユーザーのコンピューターに搭載されているオペレーティングシステムのバージョンが返されます。
FileMaker Pro 7、8および8.5では、この関数の戻り値は下記のようになります。
・「5.0」:Windows 2000の場合
・「5.1」:Windows XPの場合
・「10.4.9」:Mac OS X v10.4.9の場合
なお、Windows Vistaでは、Get(システムバージョン)関数の戻り値は「6.0」となります。
FileMaker Pro 8.5 5ライセンスパックキャンペーン
May 16, 2007
ファイルメーカー社が、「FileMaker Pro 8.5 5ライセンスパック」をキャンペーン価格159,600円(希望小売価格、税込)で提供する「FileMaker Pro 8.5 5ライセンスパックキャンペーン」を実施しています。
「FileMaker Pro 8.5 5ライセンスパック」は、4本分の値段で5本分のFileMaker Pro 8.5を利用できるキャンペーン製品です。期間限定のキャンペーンであり、実施期間は2007年5月15日から2007年8月31日までとなっています。
このキャンペーン製品は、販売店およびFileMaker Storeにおいて誰でも購入することが可能です。
fmsadminコマンドの活用 (8)
April 10, 2007
FileMaker Server 8およびFileMaker Server 7のfmsadminコマンドを利用すると、CLI(コマンドラインインターフェース)で任意のデータベースファイルを閉じることができます。
fmsadminコマンドを使用してFileMakerデータベースを閉じるには、CLOSEコマンドを使用します。
[構文]
fmsadmin CLOSE [FILE...] [PATH...] [options]
[使用例]
$ fmsadmin close -y FMServer_Sample
$ fmsadmin close -y FMServer_Sample -m "Please close."
$ fmsadmin close --grace-time 120
通常は指定した名称(もしくはパス)のファイルが閉じられますが、ファイルやパスが指定されていない場合は、ホストされたファイルがすべて閉じられます。
CLOSEコマンドのオプションには「-m message(--message message)」、「-t seconds(--grace-time seconds)」および「-f(--force)」を指定することができます。
-f(--force)オプションを利用すると、強制的にデータベースを閉じます。また、接続しているクライアントに送信するテキストメッセージを指定する場合には-m(--message)オプションを利用し、クライアントの接続を強制的に解除するまでの合計の秒数を指定する場合には-t(--grace-time)オプション(デフォルトおよび最小の値は120秒)を利用します。
GetAsURLEncoded関数
March 27, 2007
GetAsURLEncoded関数は、FileMaker 8.5で追加された関数であり、URLエンコードされた文字列を返します。
[構文]
GetAsURLEncoded(テキスト)
[例]
GetAsURLEncoded("FileMaker Pro")の戻り値:FileMaker%20Pro
GetAsURLEncoded("関数")の戻り値:%E9%96%A2%E6%95%B0
この関数は文字コードUTF-8でURLエンコードされる仕様となっているので、その点は注意が必要です。
Mac OS Xでカーネルパラメーターの値を確認する方法
March 26, 2007
Mac OS Xにおいてsysctlコマンドを使用すると、カーネルパラメーターの値を確認することができます。
[実行例]
$ sysctl -a
sysctlコマンドで-aオプションを使用することで、すべてのパラメーターが表示されます。
[関連]Broadband Tuner 1.0(FAMLog)
(2015/11/19追記:「すべてのパラーメーター」を「すべてのパラメーター」に修正しました。)
ModSecurity 2.1.0
February 27, 2007
Webサーバーへの侵入の検知および防御を目的としたApacheのモジュール「ModSecurity 2.1.0」が公開されています。
ModSecurity 2.1.0では、パフォーマンスが向上し、ModSecurity Core Rules 2.1-1.3.2b4が同梱されています。数多くの機能改善や不具合の修正が行われている他、statusアクションのデフォルト値が403に変更になっています。
なお、ModSecurity 2以降は、Apache HTTP Server 2.0以降で動作する前提となっており、Apache HTTP Server 1.3での動作はサポートされていません。
グローバルフィールドの定義
February 26, 2007
FileMaker Proでグローバル格納オプションが有効になっているフィールドは、「グローバルフィールド」と呼ばれます。
グローバルフィールドには、ファイル内のすべてのレコードで共通に使用される単一の値が含まれます。フィールドオプションの[データの格納]タブにおいて、[グローバル格納(すべてのレコードに1つの値)を使用する]にチェックをつけると、そのフィールドはグローバルフィールドとして扱われるようになります。
FileMaker Pro 7以降において、グローバルフィールドには、集計以外のすべてのフィールドタイプ(テキスト、数字、日付、時刻、タイムスタンプ、オブジェクト、計算)を使用することができます。
なお、グローバルフィールドに索引を設定することはできません。
データベースセッションとグローバルフィールドに関する注意点
February 23, 2007
FileMaker Server AdvancedのXSLTを使用したカスタムWeb公開で[データベースセッション]オプションを有効にした場合、リクエスト間でグローバルフィールドの値を保持することができます。
ただし、処理対象のデータベースファイルを切り替えると、グローバルフィールドの値は保持されません。Web公開エンジンが内部的に、新しい第2のファイルを開く前に、それまで開いていた第1のファイルを閉じてしまうためです。
代替手段として、第1のデータベースファイル内のレイアウト上に、第2のデータベースファイルにあるテーブルのレコードを表示するように設定する方法があります。これにより、処理対象のデータベースファイルを切り替えずに、第1のデータベースファイルを経由して第2のデータベースファイルのデータにアクセスすることができます。
[関連]FileMaker Server 7 Advanced カスタムWeb公開の新機能 (5)、データベースセッションの長所と短所(FAMLog)
fmxslt:set_session_object関数の引数
February 22, 2007
「FileMaker Server 8 Advanced カスタムWeb公開ガイド」には、fmxslt:set_session_object関数の引数としてノードセットや論理値を指定できることが記載されていますが、実際にはノードセットおよび論理値を指定することはできません。
fmxslt:set_session_object関数に渡されるオブジェクトは文字列として解釈されるようになっています。オブジェクトが文字列に変換されない場合はセッションに値が保存されず、FileMaker XSLT拡張関数のエラーコードは10100(原因不明のセッションエラー)が設定されます。また、空の文字列やnullを使用してセッションオブジェクトを設定しようとしても、上記と同様のエラーコード10100のエラーが発生します。このことは、fmxslt:set_session_timeout関数の件と同様、「FMS Web お読みください.pdf」にて言及されています。
なお、セッションの変数を削除する場合には、fmxslt:remove_session_object関数を使用します。
FileMaker Pro 8.5でサポートされている日付の範囲
February 08, 2007
FileMaker Pro 8.5の日付フィールドおよびタイムスタンプフィールドには、0001年1月1日から4000年12月31日までの値を保存することができます。
日付のみ保存する場合には日付フィールドを、1つのフィールドに日付と時刻を保存する場合にはタイムスタンプフィールドを利用します。
混乱を避けるため、FileMaker Proにおいて西暦で日付を入力する場合には、2桁ではなく4桁の西暦で年を入力することが推奨されます。これは、2桁の西暦を入力すると、一定のルールに基づいて4桁の西暦に自動的に変換されるためです。