みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
初心者です。
リレーションする2つのテーブルがあり、
リレーション先の情報を表示するフィールドを、
フィールドのオプションで、
1)ルックアップ値 で設定する
2)計算値 で設定する
3)計算フィールドにして、計算式を設定する
のどれでやっても同じ動きなのか、
評価するタイミングや動きが変わるのか????と疑問がわいています。
コンテキスト、ルックアップしているフィールドは当然同じです。
わかる方がいたら教えてください。
Offline
> 1)ルックアップ値 で設定する
ルックアップ元の値をルックアップ先で持ちます。
そのテーブルの固定値になりますね。
> 2)計算値 で設定する
上とほぼ同じと考えていいでしょう。
しかしルックアップは再ルックアップが出来ますが、
こちらはそれが出来ません。
再入力するには再照合をするとか考えないとダメですね。
> 3)計算フィールドにして、計算式を設定する
固定値にはならずに、照合先が変わったり、参照フィールドの値が変わるとそれに追随します。
このフィールドは索引非保存となり、リレーションの照合先にはできず、
また、ソートや検索に時間がかかります。
位かな。。
Offline
チポさん、ありがとうございます。
1)2)だと、ルックアップ元のデータが変わっても、
見に行っているレコードが作成された時点で見に行って、その時点の値になるということでしょうか?
逆に、その時点の役職や単価、税率などルックアップ元が変わっても、
レコード作成時点のデータを保存したいときは1)2)のやり方がいい?2)じゃなきゃダメなのかな?
Offline
> 1)2)だと、ルックアップ元のデータが変わっても、
> 見に行っているレコードが作成された時点で見に行って、その時点の値になるということでしょうか?
その通りです。
> 逆に、その時点の役職や単価、税率などルックアップ元が変わっても、
> レコード作成時点のデータを保存したいときは1)2)のやり方がいい?2)じゃなきゃダメなのかな?
1)でも2)でも同様ですね。
Offline
チポさん、大変ありがとうございます。
あいまいなまま作っていたら、あとで大変な苦労をしたと思います。
感謝です。
Offline
実際にやったことはないけど
2)計算値自動入力
では
Evaluate("table::field";[field1;field2...])
とやると、任意のフィールド1,2...を変更したときに最新の値にできます。
Listerさん、ありがとございます
使うときは、
計算フィールドにしたくないけど、再計算させたいというケースですかね?
Offline
ありがとうございます
Pages: 1
[ Generated in 0.007 seconds, 10 queries executed - Memory usage: 513.36 KiB (Peak: 517.9 KiB) ]