以前、FileMakerのレイアウト移動を共通化するテクニックをFileMakerの自習室にてご紹介しました。
ですが、思ったほどには反響はありませんでした。
ただ、自分の中ではかなり手応えがありました。
文章だけでは伝わりにくかったのだと思い、今回はその背景も含めて整理し、あわせて動画を撮っています。
レイアウト移動スクリプトが増えていく問題
FileMakerでは、ボタンごとにレイアウト移動用のスクリプトを作る構成になりがちです。
画面が増えるほどスクリプトも増え、後から見返すのが大変になります。
そこでよく使われるのが、レイアウト名を引数で渡して移動処理を共通化する方法です。
ここまでは自然な流れですが、多くの場合この先で詰まります。
共通化を止めてしまう本当の理由
原因は、レイアウト移動後にやりたい処理が画面ごとに違うことです。
検索をしたい画面もあれば、何もしたくない画面もあります。
結果として、移動と処理をセットにしたスクリプトを個別に作ることになり、結局スクリプトは減りません。
共通化しきれないまま、なんとなく複雑になっていくケースをよく見ます。
この手法の発明ポイント
この問題を解決するために考えたのが、移動そのものと移動後の処理を完全に分離するやり方です。
レイアウトを切り替える直前に Get ( レイアウト名 ) で移動前のレイアウト名を保持します。
移動後にもう一度 Get ( レイアウト名 ) を取得し、今どこにいるかを確定させます。
その二つを使って。
「移動前レイアウト名 → 移動後レイアウト名」。
という命名規則でサブスクリプト名を組み立て、「名前でスクリプトを実行」で呼び出します。
該当するスクリプトが存在しない場合は、エラー処理をオンにしておくだけで何も起こらずに終了します。
共通化と個別対応を両立できる理由
レイアウト移動の本体は常に一つなので、修正箇所が明確になります。
一方で、特定の移動パターンにだけ処理を足すことができるため、無理な分岐も不要です。
スクリプトの複製が減り、処理内容の微妙な揺れも起きにくくなります。
ファイルが大きくなるほど、この差は効いてきます。
仕込んでおくと後が楽になる
最初に少しだけ設計が必要ですが、一度入れてしまえばその後の開発はかなり楽になります。
規模が小さいうちは実感しにくくても、後から効いてくるタイプの仕組みです。
動画とあわせて、実際にサンプルファイルで試してみてください。
きっと長期的には助けになるはずです。
投稿がお役に立ちましたら、いいねをしていただけると嬉しいです。
お困りごとをお聞かせください。
FileMakerについてのご相談、ご依頼など。お気軽にお問い合わせください。
頂いた内容については、3営業日以内の返信を心がけております。
既に稼働中のFileMakerの修正も、頻繁にご依頼頂いております。
小さなことから、お気になさらずお気軽にご相談ください。
投稿がお役に立ちましたら、いいねをしていただけると嬉しいです。
その他のFileMaker一覧
-
FileMaker
FileMaker の自習室にて「 Claris Connect で Google カレンダーの空き時間候補を計算する(Claris FileMaker - 10分でスキルアップ)」が公開されました
動画内のサンプルがダウンロードできます。 ダウンロードはこちらから この動画のこぼれ話最初はGoogleカレンダーに予定を追加する、というシンプルな内容で考えていました。ですが、こちらは別の方が作成される...
続きを読む
-
Web関連
今回のPHP騒動(php2shell)について
026年10月21日、多くのWebサイトで使われているPHPについて、重大な脆弱性への注意喚起と修正版の公開がありました。条件によっては、外部から不正なプログラムを実行される可能性がある問題です。弊社でも、保守...
続きを読む
-
技術
「ごじゅの」のUI改善を、制作したAIが振り返る
はじめにAIにできるだけ作業を任せる(AIに作業を自走させる、と世間では言われているのでしょうか)テストを兼ねて、当社が運営する「ごじゅの」のUIをフルリニューアルいたしました。日数は約2日ほど。今回はそ...
続きを読む
-
スマレジ
スマレジでできる、テーブルオーダー、モバイルオーダー
お客様からスマレジを使ったテーブルオーダー、モバイルオーダーについてご質問があったので、まとめました。価格やシステムは2026年10月15日付の情報となります。フードビジネスプラン月額利用料:15,400円(税...
続きを読む
-
技術
Macのリマインダーは、メールアプリと連動できる
Macのメールアプリから「メールを後で見る」というリマインダーを設定することができます。ですが、「該当メールへの関連付けを含んだリマインダーを登録する」ことは、Macのメールアプリではできません。ですが...
続きを読む
-
技術
ASAHIネットの固定IPをRTX830で使う設定手順【フレッツ光クロス・XG-100NE配下】
以下ChatGPTとやり取りした履歴を、最終的に記事にまとめてもらったものです。 今回は手直ししない方がわかりやすい為、チェックだけ行い公開いたしました。 ASAHIネットにもYahamaのサイトにも「最終的にこうし...
続きを読む