本ブログ・シリーズでは、これまで Claris からお届けしてきた数々の珠玉の技術情報を、FileMaker ビギナーズ & ジュニアズのみなさんに、気になるテーマ別でご紹介します。
名付けて、「FileMaker お蔵出し」。
今回のテーマは、FileMaker の屋台骨である「検索」です。
今回の旅路:
- 「探しものは何ですか」
- FileMaker Pro で「検索」する
- フィールドを横断検索する
- フィールドを指定して検索する
- 複数の条件で検索する
- スクリプトで自動的に検索する
- おまけ:カスタム App を作りながら検索する
- おわりに
「探しものは何ですか」
某名曲の歌詞ではなく、うちの近くの不動産屋の貼り紙です。もう二十年近く前からあるのですが、通りかかった時にふっと視界に入ると、そのたびに虚を衝かれ、思わず目を泳がせてしまいます。
そんなこんなで、意識的にせよ無意識的にせよ、いつも私たちは何かを探しているわけですが、すぐに見つかるものもあれば、絶対に見つからないもの、見つけられないものもありますよね。
要は、探す場所と探し方なのですが、わかっちゃあいるけど、探している最中にはなかなか気が付かない。
今回は、そんな「検索」の方法を復習しましょう。あ、もちろん、FileMaker の話ですよ。
FileMaker Pro で「検索」する
ということでいきなり本題ですが、FileMaker Pro でカスタム App に保存されているデータを検索するには、大きく分けて、「ブラウズモードでの即時検索」「検索モードでの検索」および「スクリプトによる検索」の 3 つの方法があります。
- ブラウズモードでの即時検索
- クイック検索
- ショートカットメニューからの検索
- 検索モードでの検索
- スクリプトによる検索
これらをさっと眺めて全部「あれね、ふっ」と思った方も、ちょっと目が泳いだ方も、取り敢えず、先に進んでください。これらについて、使う場面と使い方をしっかりと学習できるコンテンツを、以下、順にご紹介していきます。
フィールドを横断検索する
カスタム App を前にして、「あれ、あれ、あれがどっかに入ったデータがあったんだけど、あれ、どのフィールドだっけな」とか、「どのフィールドでもいいから、とにかく、アレが入ってるデータを、今すぐ!」とか、とにかく手っ取り早く検索したいときってありますよね。
そういった場合には、「ブラウズモードでの即時検索」の一つ、「クイック検索」が利用できます。
クイック検索は、ブラウズモードでステータスツールバー右上隅の検索ボックスにキーワードを入力して検索します。複数個のキーワードをスペースで区切って入力したときには、「AND 検索」になります。
クイック検索の際に気をつけておきたいのは、フィールドタイプ、さらにテキストの場合は日本語か英数字かによって、キーワード(検索語)の照合方法が異なることです。「中間一致」とか、「前方一致」とか、耳にされたこと、ありますよね? 例えば、あれです。
この辺り、ちょっと不安だなと思われる方は、次の学習コンテンツで振り返ってみてください。
- テキスト
- Claris FileMaker Pro 19 ヘルプ:「ブラウズモードでのクイック検索の実行」
- FileMaker Master Pro 初級編:第 4 章「データと検索:即時検索」
フィールドを指定して検索する
次は、検索したいフィールドがわかっている場合です。例えば、「住所」(フィールド)が「青ヶ島村」(値)の人のデータや、「趣味」(フィールド)が「勉強」(値)の人のデータを探す時とかです。
ブラウズモードで現在表示されているレコードに既に検索したい値が保存されている場合には、「ショートカットメニューからの検索」を利用することができます。
ショートカットメニューからの検索は、検索対象とするフィールドにカーソルを入れて右クリックして表示されるショートカットメニューを使います。「一致するレコードを検索」とすると、そのフィールドの値をキーワードとして、そのフィールドに同じ値を持っているレコードを検索します。
ショートカットメニューからの検索ではさらに、「対象レコードの絞り込み」(絞り込み検索)と「対象レコードの拡大」(拡大検索)ができます。「絞り込み検索」や「拡大検索」は、試行錯誤をしながら目的のデータ集合を作っていく際に、とても便利に使うことができます。
この辺りを復習したい方は、次の学習コンテンツを参照してください。
- テキスト
- Claris FileMaker Pro 19 ヘルプ:「1 つのフィールドの検索条件に基づくレコードの検索」
- FileMaker Master Pro 初級編:第 4 章「データと検索:即時検索」
複数の条件で検索する
「検索モードでの検索」機能は、もちろん、上述のショートカットメニューからの検索のように、特定の 1 つのフィールドを指定した検索に使うこともありますが、真骨頂を発揮するのは、複数のフィールドに複数の条件を指定して検索するときです。
例えば、次の検索モードの図は、「『都道府県』または『名前』フィールドのどちらかに『千葉』が含まれる顧客」を検索する場合の検索条件です(「『千葉』がお得なキャンペーン」のダイレクトメール宛先でしょうか…)。
また、検索モードでは、演算子を使ったちょっと手の込んだ検索や、前述の即時検索ではできなかった「NOT 検索(除外検索)」をすることもできます。フィールド値が重複しているレコードや、フィールド値が未入力(空白)のレコードを検索することもできます。
この辺で、ちらっと「あ」と思われた方は、念のため、次の学習コンテンツを押さえておくと、いいことがあるかもしれません。
- 動画:FileMaker オンライン学習 初級編
- AND 検索、OR 検索
- 演算子を使った検索(日本語の前方一致検索、範囲検索、日付検索、重複検索、空白検索)
- NOT 検索
- 段階的な絞り込み・拡大検索
- 「レコードを対象外に」「複数レコードを対象外に」「検索条件を変更」
- フレーズ検索
- 検索に絞り込んだ対象レコードに対して処理実行
- テキスト
- Claris FileMaker Pro 19 ヘルプ:「検索条件の指定」他
- FileMaker Master Pro 初級編:第 6 章「データと検索:検索モード」
なお、会心の検索条件が出来上がったときや、明日また同じ検索をしそうな予感がするときには、検索条件を保存しておいて、再度利用することができます。詳しくは、次のコンテンツを確認してみてください。
- テキスト
- Claris FileMaker Pro 19 ヘルプ:「検索条件の保存」
- Claris FileMaker Pro 19 ヘルプ:「保存済み検索条件の管理」
スクリプトで自動的に検索する
カスタム App を使っているときにいつも必ず同じ検索をする場合や、頻繁に同じ検索を繰り返す場合には、検索の手順をスクリプトで書いて、ボタンに仕込んでおいたり、スクリプトトリガでレイアウトの切り替え時に実行されるようにしておくと便利です。
「スクリプトによる検索」というと、あ、ちょっとまだいっか、と思いがちですが(※個人差があります)、そんなに気負うほどのものではありません。FileMaker のスクリプトは、基本的に、FileMaker Pro を手で操作して検索するときの手順をそのまま呪文(スクリプト)にして、あとは空気を読む(スクリプトを実行する状況を整えるとか、無意識の操作も入れるとか、エラー処理をするとか)、これだけです(※個人的な感想です)。
必要な呪文と空気の読み方を会得するには、まずは次の学習コンテンツをチェックしてみてください。
- 動画:Claris Web セミナー
- スクリプト作成 検索処理の基本(株式会社ジェネコム, 2021 Apr.)
- 動画:FileMaker オンライン学習 初級編
- 検索ボタンによる検索の自動実行(条件の決まった検索)
- スクリプトステップ:[レイアウトの切り替え], [検索モードに切り替え], [フィールド設定],[レコード/検索条件確定], [検索実行]
- 検索ボタン用スクリプトのエラー処理
- 動画:FileMaker オンライン学習 中級編
- 検索用スクリプトでのエラー処理
- スクリプトデバッガ(エラー時に一時停止)
- 動画:カスタム App アカデミー
- グローバルフィールドを使った検索窓と検索スクリプト
- テキスト
- FileMaker Master Pro 初級編:第 14 章「機能を作ろう(出力と集計)」
- FileMaker Master Pro 中級編:第 11 章「スクリプトと自動化」
経験して初めてわかることも多いので、いろいろ試して失敗しながら経験値を上げて勇者を目指してくださいね。
おまけ:カスタム App を作りながら検索する
慣れてくると、カスタム App を作っている最中の「検索」が便利に使えるようになります。そう、「FileMaker Pro」と「カスタム App 自身」を検索対象とする「検索」です。
例えば、FileMaker Pro 19 で導入された「レイアウトのすばやい切り替え」ができるショートカット(macOS, Windows)は、今作っているカスタム App の何十もあるレイアウトの中から目的のレイアウトを検索して提示してくれます。
次の画面は、ショートカットで表示される [Open Quickly] ボックスに「顧客」を入力したときに表示される一覧です。一覧には、レイアウト名に文字列「顧客」が含まれるレイアウトが列挙されています。この一覧から目的のレイアウトにすばやく切り替えることができます。
また、スクリプトワークスペースでは、ご存知のとおり、スクリプト編集パネル上で直接入力を開始すると、オートコンプリート機能で候補のスクリプトステップが表示されます。このとき、日本語じゃなくても、また、断片的なアルファベット文字列でも、絶妙に候補が表示されます。
例えば次の画面は、「ken」の後にスペースを入れて「ji」と入力したときの様子です。ローマ字読みで「ken」と「ji」が読みに含まれる 4 つのスクリプトステップが候補として提示されています。慣れないと「何でこれが候補に?」と結構びっくりしますが、慣れると自分だけの文字の組み合わせで入力したいスクリプトステップがさっと出てくるので楽しくなりますね。
おわりに
カスタム App に 1 個でもデータを保存したら、そのときから「検索」機能は切り離せません。カスタム App の利用者として即時検索や検索モードを使う場合も、開発者としてカスタム App に検索機能を仕込む場合も、FileMaker Pro の機能を十分に活かして、「さがしもの」がすぐに見つかるようにしてください。
今回の「お蔵出し」は、「蔵」の中どころか、ほとんど現役バリバリの学習コンテンツのご紹介になりました。今後は、公開されてちょっと時間が経ってはいても、今でも十二分に勉強になるコンテンツも交えてご紹介していきたいと思っていますので、次の「FileMaker お蔵出し」もなんとなく楽しみにしてくださっていると嬉しいです。
それでは、ciao!
<後日譚>
この記事を書いて、久しぶりに件の不動産屋の前を通ってみたら、例の貼り紙は「探しものは『New!』か?」になってました(ちょっと高圧的)。