[FileMaker] タブの切り替えでスクリプトを実行する
FileMaker でタブ・コントロールパネルを使うとき、タブの切り替えでスクリプトが走るようにしたい。このやり方に意外と手こずったのでメモしておく。
環境:macOS Catalina Version 10.15.6(英語環境)、FileMaker Pro 18 Advanced
(0)レイアウト上にタブ・コントロールパネルを配置する。例えば、タブが2つあるとする。
(1)以下のようなスクリプトを用意する。
1If [ GetValue ( Get ( TriggerTargetPanel ) ; 1 ) = 1 ]
2 [1つ目のタブで実行する処理]
3Else
4 [2つ目のタブで実行する処理]
5End If
(2)タブ・コントロールパネルで「右クリック>Set Script Triggers>OnPanelSwitch」に1のスクリプトを割り当てる。
(3)レイアウト読み込み時に [1つ目のタブで実行する処理] が実行されるように別途スクリプトを設定する。
これで、タブ切り替えで処理を実行できるようになった。
昔のバージョンの FileMaker では OnPanelSwitch は OnTabSwitch と呼ばれていたみたい。
参考:
FileMaker Pro 13 – 新しいスクリプトトリガ
https://support.claris.com/s/article/FileMaker-Pro-13-%E6%96%B0%E3%81%97%E3%81%84%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%83%88%E3%83%AA%E3%82%AC-1503693045841?language=ja
Get (トリガターゲットパネル)
https://fmhelp.filemaker.com/help/18/fmp/ja/index.html#page/FMP_Help%2Fget-triggertargetpanel.html%23ww1293306
Get (トリガ現在のパネル)
https://fmhelp.filemaker.com/help/18/fmp/ja/index.html#page/FMP_Help/get-triggercurrentpanel.html#ww1292980
GetValue
https://fmhelp.filemaker.com/help/18/fmp/ja/index.html#page/FMP_Help/getvalue.html