report

2011年8月21日オフラインミーティング・レポート

レポーター(大澤和晃 ウェルダンシステム株式会社)

今回、FM-TOKYOのレポートをさせて頂く事になりました。レポート遅れてすみません。。
仕事はFileMakerを使ったシステムの受託開発をしております。

今回のメインテーマは
「BaseElements始めの一歩」「DevCon直後企画:「これ聞いてきた!」フィードバック大会」でした


第1部 事例/紹介

「BaseElements始めの一歩」
speaker:今泉 みゆき さん

BaseElementsの事例紹介をというリクエストがあったためという事でした。
実際に利用されている方は少数のようで、大体の方は初見だったようです。

BaseElementsとは?
DDR(データベースデザインレポート)を使って、ソリューション(FileMakerで作った物)の解析をする。

無料?
残念ながら有料のようです。Goya Pty Ltd というオーストラリアの会社で5万円程のようです。
http://www.goya.com.au/baseelements
興味を持たれた方は円高のうちに…

なぜ自己流管理ではなく、またDDRのみではなくBaseElementsを使うのか?

スクリプトのPDF保存やフィールド定義のコメントだけでは情報がちらかり、管理が大変。100%網羅出来ない。
また、DDRだけでは情報が足りない、DDR内の検索に時間がかかる、見づらい。等の理由。

BaseElementsでできること
・エラー
・警告
・新旧バージョン差分検出
・FileMaker間の互換性確認

新旧バージョンの差分検出ができるとか素晴らしい!

ここで実演デモ

留意点:英語環境でないと動かない、プラグインを使って動作するため、iPadでは見れない
※現在のバージョンでは日本語環境のまま使えるそうです、後から訂正情報が入りました。
作業時間はソリューションのボリュームに応じて結構かかるようです。仕組みとしては、DDR吐き出して解析して
FileMakerに取込直す、FileMakerソリューションとして出来上がる。という感じです。

例えばスクリプトであれば、1ステップづつポータルに分割されているデータ(1ステップが1レコード)と
1つのスクリプトが1つのテキストフィールドにまとまっているデータが用意されるので、検索しやすい。
うお、すごい。

また、用意されているレイアウトを自由に変えて良いそうなので、ビューモードを変えたり、
レイアウトを見やすいようにフィールド追加したり、いろいろ変えて見やすく出来ますとの事。

実際どのように活用されているか
・スクリプト内容の差分:いつどこを編集したか調べる
・サブスクリプトがどこで使われているかという関連を調べる
・計算フィールドの内容変更やフィールド削除したい時に影響範囲を調べるのが容易
・カスタム関数を他のファイルにコピーペースト出来る。

さ・ら・に
・「統合」というの使うと、二つのファイルをマージする際に必要となる作業が分かる
・「比較」はIDとNAMEで選べる。
 ※IDとは内部で持っている、フィールドやレイアウトやスクリプトの固有のID
これらは
 ・違っているところだけ抽出してくれる(赤く表示される)
 ・コイツ、どこにも使われてませんよ?という情報も表示してくれる。
 ・作業した箇所にチェックやメモも付けられる。印刷もできる。ので作業漏れも最小限に抑えられる!

これは何という神ツールなのでしょうか?保守作業していて、修正コード等を移植した際に
スクリプト内のフィールドやレイアウトの参照が狂ったりした経験がある方は、このツールを使えば、
参照が狂うのを恐れてチマチマ修正コードを移植したりする手間が省けます。エコですね。

という事でデモ終了。ありがとうございました。

よくある質問:日本語マニュアルはないのか
その質問に対してはこの開発元の会社さんは、そもそものマニュアルが無い、必要と考えていない、見れば分かるでしょ?
というスタンスだそうです。要望としては上がっているようですので、もっと要望としてあげれば、ローカライズ作業の
プライオリティ上がるかもとの事でした(by 蜷川さん)

他の方はどのように使われていらっしゃるのか?
竹内さん:FileMakerServerに置いて使ってる
蜷川さん:リリースバージョンのチェックのために
という事でした。

FileMakerは容量も大きいのですが、容量が許すならば、作業チケット毎とか1修正作業毎とかに本当は使いたいですね。
と思いました。

以上、BaseElementsの事例紹介のレポートでした。



次に

「DevCon直後企画:「これ聞いてきた!」フィードバック大会」

で自分は結構期待していた
のですが、要約すると、こういった場で話せる内容が雰囲気の紹介以外はあまりない。という事でした。
ただ、今度日本で開かれますFileMakerカンファレンスのテクニカルトラックで、幾つかFileMaker社の方が
為になるお話をしてくれそうですので、技術的なことに興味のある方は11月の9日、10日は椿山荘に行きましょう!

紹介頂いた内容としては
・将来のバージョンの要望についての事はお答えできません
 (現行バージョンの仕様質問よりも要望が多かったようです)
・GO FARTHER→雲はただの雲でした

DevConの雰囲気等はスライドを交え説明して頂きました。

行って良かったこと
・ためになるセッションがあった(レイアウトの作り方、考え方についていろいろ勉強になった)
 →fmpatterns.com
http://fmpatterns.com/patterns/list
・興味のあるセッションが同じ時間にやっていて自分のクローンが欲しくなった
 →会社で複数人でいっていると複数のセッションを同時に受けられる。

・デモ(サンプル)を見せてくれるセッションは英語が分からなくてもだいたい分かった
等々…

実際に参加された方々の感想などを聞かせて頂いて、英語あんまり分からなくても何とかなるよとか
いろいろ楽しそうな印象を持つことが出来ました。
来年のDevConは2012年7月16日〜19日にマイアミビーチで開催されるそうです。



お次はライトニングトークスです。今回もいろんなネタが紹介されました!

1人目:竹内 康二さん

「「DevConで参考になったセッションの抜粋」

データの読み込みについてLTして頂きました。

◆データ読み込みについて
・数字フィールド1つ読み書きしたいだけの時でもそのレコードのすべて読み込む
 (※但し非保存の計算フィールド、オブジェクトフィールド、レイアウトに置いていない集計フィールドは除く)
なのでテーブルに沢山のフィールドを定義するのはよくない。
→必要最小限のテーブルを別途作り、元のテーブルと1:1のリレーションを作成するとよいとの事です。
 また、非保存や集計オブジェクトフィールドはレイアウトに無闇に置かなければ必要最小限の読み込みになる。

◆レコードはある程度まとめて読み込まれる
・フォーム画面の場合
 →レコードを25件づつ読む、26件目を表示する時に50件目まで読み込む。
・リスト画面の場合
 →最初は25レコード読むがそれ以降は必要分のみ読み込む

これはネットワーク利用をする際のテーブル設計やレイアウト設計の指針になりそうです。
2人目:鈴木 健太郎さん

「FileMakerでRSSを取得する」

FileMakerとScriptMasterというプラグインを使って、RSSを取得して表示するデモを行なって頂きました。

ScriptMasterは、Groovyというスクリプト言語のコードを実行させるプラグインで外部関数として、
FileMakerからデータを変数にセットしたり、変数の値を取得したりとかがあります。

私も旅行会社向けシステムの開発で、BtoBの航空券予約システムとの連携で使いました。
結構簡単に書けちゃいます。

URL: http://www.360works.com/scriptmaster/

取得RSSはエミックさんの「FMGo情報局」のRSSを取得。
このプラグインにはJavaが必要なのでLionの人は注意!との事でした。

デモ用に作成されたサンプルにはScriptMasterプラグインのサンプルファイルを利用されたそうです。
・サンプルの「GetURLasText」と「XPathPars」を利用して作られたものをデモして頂きました。
 別の方法でGroovyっぽい書き方をすると…
————–

1:feed = new groovy.util.XmlParse(url)//変数「url」にfeedのURLをプラグインの関数で入れておく
2:list = "" //変数初期化
3:feed.channel.item.each{item -> list += item.title.text() + "|" + item.link.text() + "\n" }
  //取得したXMLのitemタグがあるだけ繰り返し処理。itemタグのtitleタグとlinkタグの値を「|」で区切って末尾に
  //改行記号をつけたデータを生成
4:return list //実行結果として変数「list」の値を返す。

————–
みたいな感じでしょうか。

3人目:有ヶ谷 薫さん

「くうちゃんとFileMaker(仮)」

 →くうちゃんにとても興味があったのですが、実態は最近の開発作業の中での
  失敗談と反省点をLTして頂きました。

事例として、週間のカレンダーを印刷という機能を作成された時の事で
・時間をレコードに
・反映させるデータは連想配列にして用意
という設計で作成されたところ、動いたものの遅かったそうです。

原因として
・ポータルが多くて遅い
・計算フィールドが多くて表示が遅い
・計算フィールドの中身もカスタム関数で再帰を使っているので更に遅い

結論として
テストではちゃんと実運用を見越したデータ量を用意しましょう!

聞いていて、あぁ、あるある!というLTでした。
設計を思いついた時に「俺凄い!」みたいなことがあって、一気に作成してみるものの、
実際に運用レベルのデータ量で使ってみたり、負荷をかけてみると遅すぎて使えない(´・ω・`)
って事がままあります。運用を見越したテストって大事です。

4人目:松尾 篤さん

「LionとWeb公開エンジン」

LionでWeb公開エンジンの設定を行うにあたって必要となる作業について等LTして頂きました。

詳細は以下のURLを参照してください。
http://d.hatena.ne.jp/matsuo_atsushi/20110812/p1


最後に質問のコーナー

ネットワークプリンターにアクセスする時に固まってしまう、他の方で同じ症状の方いませんか
Win7 FMv11 CANON
→結構な時間放置していてもフリーズしたまま。
 →もう少し待ってみましょう。という話に。

メーリングリスト以外にもFileMakerナレッジベースも参考に使いましょうという話も出ました。
http://www.filemaker.co.jp/kb
リダイレクトされて下のURLに移動します。
http://filemaker-jp.custhelp.com/app/answers/list

以上、レポート提出遅くなり申し訳ありませんでした。

広告

ディスカッション

コメントは受け付けていません。

%d人のブロガーが「いいね」をつけました。