【FileMaker】条件付き値一覧で選択した項目の別フィールドを取得する

条件付き値一覧、前回前々回に引き続き、今回は選択した項目の別フィールドを取得したいというお題をいただきました。

※元々のサンプルを作成したFM13は、私のMacOSバージョンではすでに起動できない。。。ので、FM14で追加しました。

このサンプルでは、メニューのタイプというかカテゴリから、それぞれの項目(品名)を条件付き値一覧で表示する、という内容です。
今回は、選択した項目(品名)の単価を注文データにセットするという拡張になります。

前回、オプションを追加しましたので、ちょっとメニューにオプション内容を追加しています。
オプションが存在しない場合は、「なし」としています。
これは、オプションリストから選択したときに単価を決定したいからです。
スクリーンショット 2018-04-04 10.29.12.png
メニューテーブルには、単価フィールドを追加してあります。

注文テーブルにも、メニューから選択した項目(品名)の単価を保存する単価フィールドを追加しました。
このとき、単価を自動的に設定できるように、ルックアップを設定します。
ルックアップを設定するには、オプションまでのリレーションシップを張って確実に注文が決まるようにします。
スクリーンショット 2018-04-04 10.24.44.png
もし、オプションなしで、項目(品名)までで一意に決まる場合は、メニュー2までで十分です。

このリレーションシップを使い、注文テーブルからメニューテーブルへのルックアップを設定します。
スクリーンショット 2018-04-04 10.24.30.png

この設定をし、実行してみます。

オプション「なし」と設定したランチのサンドウィッチ。
スクリーンショット 2018-04-04 10.42.05.png

オプションが複数あるディナーのステーキ。今回は和風ソースを選択。
スクリーンショット 2018-04-04 10.42.16.png

今回の参照フィールドを持ってくる方法として挙げたルックアップの設定は、実装方法のほんの一例です。
他にも、スクリプトトリガを使う方法、別ウィンドウを表示して単価を持ってくる方法、決定ボタンなどボタンにスクリプトを設定する方法など、たくさんあります。

やりたいことに対して、この方法しかない、、、ではなく、いろんな方法があることを実例を通して身につけていくのも幅が広がっていいですよね。

では、FileMakerライフをお楽しみください。