前回作成した検索スクリプトの流れを解説していきます。決して難しいことをしているわけではありません。
エラー処理[オン]
「エラー処理」は、FileMakerに標準で組み込まれている警告メッセージが表示されないようにします。
検索で例えば、
このような警告を出さないようにします。
今回作成した検索用フィールドに、氏名レコード上存在しないテキストを入れてみます。例えば数字の「1」を入力して検索ボタンをクリックします。
エラー処理[オフ]の場合
このように警告が出ます。
エラー処理[オン]の場合
検索結果として、「該当しません」ということでレコードが何も表示されません。
標準の警告もいいのですが、少し挙動がわかりずらい部分もあるので何も表示させないようにしました。
全レコードを表示
これは、あるテキストで検索後に、検索結果に該当するレコードだけが表示されている際に、そのなかからだけ検索してしまわないようにするために使用しています。全レコードを表示させてから、該当レコードを検索するためです。
標準のツールバー上にある「全てを表示」と同じ動作をします。このスクリプトは、これを途中に組み込んでいるということです。
切り取り
これは、「検索用フィールド」というグローバルフィールドに入力したテキストをコピーして削除する、という動作を意味します。「切り取り」ではなく「コピー」でも良いのですが、次に違うテキストで検索する際に、前回入力したテキストを削除しなければなりません。
この手間を省くために「切り取り」を使用しています。好みにより使い分けてよいと思います。
検索モードに切り替え[一時停止: オフ]
標準のステータスツールバーにある「検索」をクリックした状態を意味します。
ステータスツールバー上の「検索」をクリックすると、以下のようになります。フィールドにテキストを入れて「検索実行」をクリックすると、検索結果が表示されます。これがFileMaker標準の検索機能です。「一時停止オン」にしてしまうと、ここでスクリプトがストップしてしまうため、今回はオフにしています。オフにすることで次のスクリプトステップに進んでくれます。
これ(以下)をスクリプトで行っているだけなのです。
貼り付け
文字通り、先ほど「検索用フィールド」から切り取ったテキストを、氏名フィールドに指定して貼り付ける動作をしています。
例えば、「三郎」を切り取って貼り付けた時点では、以下のようになっています。
検索実行
最後に検索を実行します。
ステータスツールバー上の「検索」をクリックしたのと同じことです。
一つ一つを振り返ってみると、大したことはしていません。それでも、意図した通りにスクリプトが動いてくれると嬉しく感じます。ぜひ挑戦してみてください。