はじめに
FileMakerでの開発を行うことになり、いろいろと戸惑うことがありました。。。
特に検索方法を駆使しなければならないのですが、ネット上にはわかりやすい情報が少ない為、まとめてみました。
FileMakerスクリプトでの検索方法
1.検索(単純検索)
エラー処理[オン]
検索モードに切り替え[一時停止:オフ]
フィールド設定[フィールド名;設定値]
検索実行[]
メモ:
検索項目が1つの場合における検索方法です。
最初の「エラー処理[オン]」を設定する理由は、検索時に該当データがない場合、毎回エラーが表示されるため、その抑制のためにつけておきます。
2.検索(複数条件での検索)
エラー処理[オン]
検索モードに切り替え[一時停止:オフ]
フィールド設定[フィールド名;設定値]
新規レコード/検索条件
フィールド設定[フィールド名;設定値]
検索実行[]
メモ:
検索条件が複数ある場合の設定方法です。
ポイントは「新規レコード/検索条件」を付与し、新たにフィールド設定を設けることで検索条件をもう一つ設定するという点です。
例文では検索条件は2個になっていますが、「新規レコード/検索条件」と「フィールド設定」を増やすことで条件は増加させることができます。
3.検索条件からの絞り込み(除外)
# 通常検索
検索モードに切り替え[一時停止:オフ]
フィールド設定[フィールド名;検索対象値1]
新規レコード/検索条件
フィールド設定[フィールド名;検索設定値2]
検索実行[]
# 除外設定
検索モードに切り替え[一次停止:オフ]
フィールド設定[フィールド名:除外したい値]
レコードを対象外に
対象レコードの絞り込み[]
メモ:
他のスクリプトでは1回の検索と同時に、検索内容からの除外設定なのが大半ですが、FileMakerではそのような設定はできません。その為、FileMakerでは検索内容からの除外には一工夫必要となります。
検索内容に対し、再度検索モードに設定して条件から除外する項目を設定し「レコードを対象外に」と「対象レコードの絞り込み[]」を設定します。
そのことにより、最初の検索内容から指定した条件のものを排除することができます。
4.絞り込みからの条件緩和
# 通常の検索
検索モードに切り替え[一時停止:オフ]
フィールド設定[フィールド名;検索対象値1]
新規レコード/検索条件
フィールド設定[フィールド名;検索設定値2]
検索実行[]
# 除外設定
検索モードに切り替え[一次停止:オフ]
フィールド設定[フィールド名:除外したい値]
レコードを対象外に
対象レコードの絞り込み[]
# 拡大検索設定
検索モードに切り替え[一次停止:オフ]
フィールド設定[フィールド名:拡大対象値1]
新規レコード/検索条件
フィールド設定[フィールド名:拡大対象値2]
対象レコードの拡大
メモ:
「検索条件の絞り込みに該当するが、あるものだけは結果に含めたい」ということがあります。
その場合は「対象レコードの拡大」を使用して絞り込み内容から条件を緩和します。
以上