子育てSOHOオヤジ量産プロジェクト[113] FileMaker 8.5登場!! 〜その2:Webからテキストを抜き出す/茂田カツノリ

投稿:  著者:  読了時間:7分(本文:約3,100文字)


みなさん、FileMaker 8.5使ってみてますか〜? まだのひとは、Webビューアの楽しさ、そしていろいろと広がる可能性にぜひ触れてほしい。


・FileMaker 8.5試用版のページ(英語版)
< http://www.filemakertrial.com/ >

●Webビューアはこんなふうに使おう

前回でも「目玉機能」としてご紹介したWebビューアだが、これの使い道についてはまだまだ話し足りていないので、その続きなのだ。

まずご紹介したいのは、Webブラウザで見られるものはすべて見られるという点。特定のWebサイトを表示させるほか、いわゆるティッカーのようなものの表示にも使える。

ファイル形式としては、HTMLやGIF/JPEGはもちろん、Ajaxも動くし、Java ScriptもJAVAアプレットもFlashもOK。PDFの表示ももちろん可能で、WindowsならIEでの表示と同様にツールも表示される。さらにAdobe ReaderではなくPDFが編集できる「Acrobat」のほうをインストールしておけば、注釈を入れるなどの操作までできてしまう。

さらにWindows-IEなら、Word/Excelのデータを表示し、その編集までできてしまうのも面白い。Excelでグラフ書いてFileMaker上に表示、なんてことも可能だ。

JavaScriptも当然ながら動作するので、さっそく時計を作って表示してみた。FileMakerの動作に影響されず、プラグインもスクリプトもなしで表示できるので、とても便利。

サンプルをいくつか用意しているので、近々レクレアルのWebサイトでご紹介する(URIは後述)。

●GetLayoutObjectAttribute関数でテキスト切り出し

単独のページや画像を表示するだけでも面白いけれど、Webビューアの使い方はそれだけじゃない。なんと、Webページ内の特定箇所にあるテキストを切り出し、FileMakerのフィールドに入れるといったことまでできてしまう。

これには8.5で新設された「GetLayoutObjectAttribute関数」というのを使うのだが、これがちょっと難しく、やり方がわからなかったという人もいるかもしれないので、ちゃんと解説しておく。

まず、8.5からはレイアウトに配置したフィールドや図形などのオブジェクトに、名前が付けられるようになった。レイアウトモードのViewメニューから「Object Info」を選ぶと、サイズ等を設定するパレットが表示されるが、その一番上が名前の欄だ。デフォルトでは空欄なので、何かの名前を設定する。

そして「GetLayoutObjectAttribute関数」で、Object Nameと知りたい情報の種類をセットすれば、結果が得られる。この関数の引き数はちょっとややこしく、FileMakerの関数としては比較的難しい部類のものなので、ここでは結果だけお知らせする。

・Step1:
Webビューアのオブジェクトに「web001」という名を付ける。

・Step2:
計算フィールドを定義し、下記の式をセットする。

GetLayoutObjectAttribute ( "web001" ; "content")

これで、表示しているページのHTMLソースコードが取得できる。ちなみに、

GetLayoutObjectAttribute ( "web001" ; "source")

とすれば現在のURLが取得できる。

●mixiのお知らせ部分だけ切り出す

HTMLコードが取得できてしまえば、あとはFileMakerのテキスト関数を駆使して必要な情報を切り出せばよい。

たとえばmixiのお知らせメッセージ欄を切り出したいなら、下記の式を使う。

Let([

web = GetLayoutObjectAttribute ( "web001" ; "content");

start = Position(web;"< !-- お知らせメッセージ ここから -- >";1;1);

end = Position(web;"< !-- お知らせメッセージ ここまで -- >";1;1)

];

Middle(web;start; end - start)

)//Let

この結果からさらにタグを抜いても良いし、このままHTMLとしてローカルに書き出してWebビューアで表示しても良い。

こんな感じで、Web上のテキスト情報をそのままFileMakerのフィールドやスクリプトで扱えるので、データの配信のようなことが可能になるというわけだ。

●広告入りアプリケーション開発します!!

FileMakerで作成したデータベースは、ランタイム化という処理をすることで、FileMakerがインストールされていないパソコン上でも動作できるよう、アプリケーション化することができる。これを使ってCD-ROMコンテンツなども作成できるというわけだ。

で、FileMaker 8.5の「Webビューア」を使えば、Web上に掲載している天気予報やニュース、お知らせやBlogなどが掲載できる。

さらに、アプリケーション内に広告を掲載することだって可能。こうしたアプリケーションの開発を承っているので、ぜひ私に声をおかけ下さい(宣伝♪)。

●FileMaker 8.5のそのほかの機能は「recrear.jp」で!

FileMaker 8.5のそのほかの新機能は、僕の所属する有限会社レクレアルのサイトでご紹介する。
< http://recrear.jp/ >

▼「FileMaker Fun Night! AppleStore銀座」8月26日(土)18:00〜19:00
< http://www.sevensdoor.com/event.html >

「夏休みデベコン報告Special!」
フロリダで開催のFileMaker Developer Conferenceに参加したsevensdoorメンバーが、帰国直後のレポートを致します。Tipsコーナー、デベコン土産プレゼントなども盛り沢山!

【しげた・かつのり】shigeta@amonita.com
Webコンサルタント/プランナー & FileMakerデータベースデザイナー。
うちのフォード・ギャラクシー、新車価格は320万もするくせに、なんと鉄ホイール。純正のフォードキャップがところどころ割れてきたので、オートバックスで売ってたクロームメッキ風の悪趣味なものに交換。キラキラしてて子供には好評だが、カミさんが無言なのが気になっている41歳の夏...。
ちなみにこのクルマ、マジでいい!。ヤフオクで30万そこそこで買えるので、安〜いクルマ狙ってる人にはお勧め。

[有限会社アモニータ(Web制作/プランニング/出版プロデュース)]
< http://www.amonita.com/ >
[有限会社レクレアル(FileMakerソリューション開発)]
< http://www.recrear.jp/ >
[Max_blog —“インターネット拾いモノ”でも執筆中]
< http://www.maxwald.co.jp/ >
[mixi —“永吉克之Fan☆Club”コミュニティ]
< http://mixi.jp/view_community.pl?id=94983 >

photo
ファイルメーカーPro関数・スクリプト事典 Ver.3.0~7.0対応―知りたい機能がすぐわかる
茂田 カツノリ
ラトルズ 2004-09
おすすめ平均 star
star数ある解説本の中で一押しです

by G-Tools , 2006/07/20