FileMakerでルックアップを行うと、参照元の他テーブルのデータが参照先フィールドにコピーされます。
コピーなので参照元のフィールドデータが更新されても参照先フィールドの値は変化しません。
(C言語で言うと参照渡しではなく、値渡し的なやつ)
税率や顧客名など過去のレコードの値を変更させたくない場合に使用します。
今回は
・顧客マスタから顧客名を見積に取得
を想定してルックアップの設定方法を見ていきましょう。
1.FileMakerのルックアップ設定はこれが定番、ほとんどコレ!
リレーションはこんな感じ
見積テーブル
フィールド「顧客名」のオプションからルックアップを設定
設定を開くとこんな感じ
ルックアップしたいテーブルを選択
デフォルト状態
いつもの設定にします
1.値のコピー元フィールド選択
2.内容が空欄の場合コピーしないのチェックを外す
3.完全に一致する値がない場合→使用する値に変更する
これでおっけ!
いつもの設定で期待通りの動きになりました
2.他の設定の動きを確認しよう
いつもこの設定を使っているけど、他の設定だとどうなるんだろう?
ということで実際に
・空欄の場合コピーしない:ON
・完全に一致する値がない場合:コピーしない
・完全に一致する値がない場合:近似値(小さい値)を使用
・完全に一致する値がない場合:近似値(大きい値)を使用
の4パターン試してみました。
・空欄の場合コピーしない:ON
↓設定
↓動作
ルックアップ先:顧客名が空欄の場合、値がコピーされなくなりました
・完全に一致する値がない場合:コピーしない
↓設定
↓動作
存在しない顧客コード6を入力した場合、
空欄で値が書き換わらず値がそのままになるようになりました
・完全に一致する値がない場合:近似値(小さい値)を使用
↓設定
↓動作
わかりやすく
顧客コード→奇数
に変更し
すると
といった結果になりました
・完全に一致する値がない場合:近似値(大きい値)を使用
↓設定
↓動作
という結果になりました
近似値を使用する場合は
・小さい値の場合は最小値未満
・大きい値の場合は最大値を超える
場合、値が変化しないので使用には注意が必要そうですね
3.こういう場合はこの用途に使えるかもね!
近似値は
通信料金のルックアップとか、
お会計金額による割引率などに使用できそうですね!
通信料 | 金額 |
0~3Gまで | 500円 |
3~5Gまで | 800円 |
5G~ | 1000円 |
お買物金額 | 割引率 |
0~1000円まで | 1% |
1000~5000円まで | 3% |
5000円~ | 8% |
(株)未来Switchでは
通勤中にスマホでサクサク見れる
【FileMaker1分動画】を配信中です
字幕多めで電車でも見やすくなっていますので
ぜひご覧下さい
Clarisのルックアップ公式説明
Comments