スクリプトをテキストとして取得する方法
出典: FileMaker Wiki
FileMakerのスクリプトは、ScriptMakerという専用のインターフェースを用いて管理と編集を行う。 ScriptMakerそのものは、初めて触れるユーザーでもそれなりにスクリプトの作成を行える優れたものだが、スクリプトの編集に慣れてくると冗長に感じる。 そこで、かなり以前からスクリプトをテキストして編集したいという要望があるが、最新のver.9でも叶っていない。
しかし、スクリプトをテキストとして取得するだけならば、方法は幾つかある。 取得できるだけでも、メールやWebでスクリプトの評価をしてもらう為に充分役立つ。
[編集] データベースデザインレポートを使う
データベースデザインレポート(DDR)は、FileMakerのAdvanced版が備える、レポートツールである。 このツールを使用すると、テーブルやフィールドの定義、アカウントやファイルオプション、レイアウト等々、そのFileMakerファイルに関する非常に詳細なレポートが得られる。 もちろんスクリプトもこの中に含まれる。
DDRのレポートはHTMLまたはXMLでの出力を選択できるため、結果はテキストである。 レポートのスクリプトに関する部分を抽出すれば、無事テキストとして取得できる。
[編集] 『ExposeText』を使う(Windowsのみ)
DDRはとても便利で、複雑な開発には重宝するツールだが、スクリプトをテキストとして取得する事だけが目的の場合には大袈裟だ。 また、Advanced版でなければ使用できないし、結果を得るために必要な手順が多い。
これに対し『ExposeText』というWindows用のアプリケーションを使うと、スクリプトの取得のみを簡単に行える。
ExposeTextはフリーソフト置き場で公開されているアプリケーションで、他のWindowsアプリケーションのコントロールから、テキストの取得を行う。 使い方も対象のコントロールへアイコンをドラッグするだけ、という簡単なもので、FileMakerに対しても動作する。
テキストとして取得したいスクリプトをScriptMakerで開きこのアプリケーションを使えば、その全ステップが取得される。 取得されたテキストはステップが行に分かれており、編集もしやすい。
ライセンスは特に明記されていないが、「フリーソフト」として作者自身から紹介されている。
[編集] 注意点
タブ文字を含むスクリプトでは、扱いが面倒になる。
ExposeTextで取得したスクリプトステップは、1行ごとに各ステップが記載されている。 しかしその各行で、タブ文字区切りでもう一度、全く同じステップが繰り返され、以下の様な状態になっている。
検索モードに切り替え [] 検索モードに切り替え [] フィールド設定 [商品::id; $s] フィールド設定 [商品::id; $s] 検索実行 [] 検索実行 []
恐らくFileMakerのコントロールが重複してテキストを保持しているためだが、この重複そのものは正規表現等を用いてタブ文字以降を切り落とせば問題ない。 あるいは、Excelにペーストして必要な部分を列として一括取得することも出来る。 問題はスクリプト中にタブ文字を含む場合で、重複の区切りと区別がつかず一括した処理が難しくなる。 タブ文字を多用したスクリプトの場合は、DDRを使用した方が手っ取り早いかもしれない。
