ファイルメーカーによるWebデータベース

定番データベースソフトのファイルメーカーProがバージョン4.0になり、インターネット関連の機能が大きく充実しました。HTML形式によるデータ書き出しや電子メールソフトとの連携、データ中のURLの認識など盛り沢山ですが、何といっても目玉は「Webコンパニオン」によるファイル公開機能でしょう。従来、WWWサーバーとCGIプログラムが必要だったブラウザからのデータベース利用が、ファイルメーカー単独に可能になったのです。手軽な「インスタントWeb」は、OS8の「Web共有」のような面白い可能性も秘めています。

データベースをWWWで扱う

Webブラウザからデータベースを操作するには、AppleScriptなどでCGI(Common Gateway Interface)という仕組みをコントロールする必要があります。以前紹介したTango for ファイルメーカーProWEB FMのような製品は、そのステップを引き受けて、とても簡単にブラウザとデータベースとの連動を実現してくれるものです。

今回、ファイルメーカーProがバージョン4.0にアップグレードされ、「Webコンパニオン」という新しい機能(プラグイン)が導入されました。これを用いると、ファイルメーカー自身がWWWサーバーの役割を果たすようになり、独立のWWWサーバーやCGIプログラムをまったく使わずに、データベースをインターネット/イントラネットで共有できるようになります。

簡単な「インスタントWeb」

ファイルメーカーPro 4.0のデータベースをWWWで共有する方法は「インスタントWeb」と「カスタムWeb」の2通りがあります。

最初に簡単な「インスタントWeb」を使ってみましょう。まずデータベースファイルを開き、「編集」メニューの「プレファレンス」から「アプリケーション」を選んでください。図1の環境設定ダイアログでポップアップメニューを「プラグイン」に切り替え、リストの「Webコンパニオン」をチェックして「OK」ボタンをクリック。これでファイルメーカーにWWWサーバーの機能が組み込まれます。

次に、「ファイル」メニューの「共有設定...」を選んで、コンパニオン共有設定で「Webコンパニオン」をチェックします(図2)。以上でこのファイルをブラウザから利用する準備が整いました。あっという間にイントラネットでのデータベース利用が実現してしまいます。

<ビルトイン>で簡単ホームページ

この状態でブラウザからデータベースのあるマシンにアクセスすると、図3のような<ビルトイン>ページが表示されて、公開中のデータベースが選択できるようになります。現在開いている公開ファイルが自動的にリンクとして一覧表示されるので、HTMLは1行も書く必要がありません。まさに「インスタント」Webですね。

この標準的なページの代わりに、独自のHTMLファイルを指定することもできます。このためには、「ファイルメーカーPro 4.0」フォルダ内の「Web」フォルダにオリジナルのHTMLファイルを用意してください。そのうえで、図1のダイアログで「設定」をクリックし、「Webコンパニオン設定」の「ホームページ」ポップアップメニューから作成したHTMLファイルを選んでOKします(図4)。

オリジナルのホームページの場合は、データベースへのリンクは自動的には追加されないので、必要な情報をあらかじめHTMLで記述しておく必要があります。このためには後述するCDMLを使わなければなりませんが、手軽に済ませるなら、<ビルトイン>ページからデータベースを呼び出し、そのURLをコピーしてリンクのひな形とすればよいでしょう。

「インスタントWeb」のデータベース表示

簡単なデータベースにアクセスしてみた結果が図5の画面です。最初に一覧が表示され、各レコードの先頭にある番号をクリックすると図6のような詳細表示に切り替わります。画面左のアイコンを使って検索画面(図7)を呼び出したり、編集画面に切り替えたり(図8)と、基本的な機能は揃っています。表示するフィールドは、「Webコンパニオン環境設定」でレイアウトを選択することで、データベースで表示しているのと同じものを指定できます(図9)。

データベースをインターネットで公開するとにきは、セキュリティの配慮が重要です。ファイルメーカープロでアクセス権を設定しておくと、ブラウザからファイルを開くときに認証ダイアログが表示され、危険な利用を防ぐことができます。また「Webセキュリティ」データベースを使って、利用者ごとに細かくフィールドの閲覧や編集の権利を制限することも可能になっており、インスタントといっても安全面ではきちんとした配慮がなされています。

応用のきく「カスタムWeb」

手軽にデータベースを公開できるという点では「インスタントWeb」は確かに画期的です。LAN上で使うなら、レスポンスもまずまずでしょう。しかし、最初の画面がテーブルを使った一覧表示になっているため、このままではレコードが増えると入り口で相当時間がかかってしまう恐れがあります。また、モバイルへの応用として、外出先からWebを使ってデータベースを検索したり更新したりするためには、不要なグラフィックなどを省いたカスタムページを用意するべきでしょう。

こういう様々なケースに対応するために、ファイルメーカーPro 4.0には、もうひとつ「カスタムWeb」という手段が用意されています。これは、CDML(クラリス・ダイナミック・マークアップ言語)という機能によってHTMLを拡張し、データベースの操作と結果の表示を細かく操作できるようにするものです。これを利用すれば、必要な情報だけをシンプルに表示することも、他のリソースと合わせて詳細に表示することも思いのままになります。

CDMLを使ったカスタムWeb

CDMLで定義されている「命令」は大きく分けて3通りあります。ひとつは、データベースに特定の情報を送るための「変数タグ」、ふたつめは検索や編集などの動作を指示する「アクションタグ」、そして最後にファイルメーカーから戻された結果をHTML内で表示するための「置換タグ」です(図10)。

最初の2つはブラウザからデータベースへの“送信手段”と考えればよいでしょう。「タグ」とはいっても、HTMLでいうような独立したタグではなく、フォームから情報を送信するときに<input>タグの一部として用います。検索を指示するボタンにアクションタグ「-Find」を

  <input type="submit" name="-find" value="検索">

のようにして埋め込むのです。

「置換タグ」は逆に“受信手段”という位置づけです。これをHTMLファイルの中に書き込んでおくと、この部分がファイルメーカーからのデータで置き換えられて表示されます。例えば、住所録の検索結果で氏名をリストアップするためには

  [FMP-Record]
    氏名:[FMP-Field: Name]
  [/FMP-Record]

と記述します。HTMLのタグとは異なり、[]で囲まれている点に注意してください。HTMLファイルが呼び出されたとき、この部分にデータベースの氏名(Name)フィールドの値が代入されて、ブラウザに届きます。カスタムWebでは、これらのCDMLを使ってデータベースと対話しながら、HTMLでページ全体をコントロールし、もっとも適切な形で情報を表示させることができるわけです。

CDMLツールによるアプローチ

CDMLは強力ですが、やはりその概念を理解した上で100以上もの命令を使いこなすのは容易ではありません。そのためファイルメーカーPro4.0には、「CDMLツール」というアシスタントが用意されました(図11)。このツールを開いて、「テンプレート」で対象となるデータベースや検索、削除などのアクションを選んでいくと、詳細な解説つきのひな形が用意されます。これをコピーしてHTMLファイルに貼り付け、フィールドの名前などを修正するだけで、図12のような基本画面ができあがります。あとは、目的に応じてHTMLの形を整えれば、オリジナルなデータベース操作ページの完成です。

これくらいの手間でできるなら、「カスタムWeb」でイントラネット構築を目指すのも悪くないかも知れません。しかし本格的なデータベース公開を考える場合は、性能やWeb作成の効率を他の製品ともじっくり比べてみるべきでしょう。むしろ、制約はあるものの「インスタントWeb」が注目です。これによって個人のデータベースを気楽に公開できるようになれば、オフィスの情報共有もなかなかおもしろい展開を見せるのではないでしょうか。

(MacFan 1998-02-01号)