みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になります。
FM17 Pro Advance
ファイルメーカーを作っていて疑問なのですが、フィールドの計算値の設定の部分に
「フィールドに既存の値が存在する場合は置き換えない」というものがあるかと思います。
新規テーブルを作ると、主キーに計算値でUUIDが入るようになっており、
「フィールドに既存の値が存在する場合は置き換えない」のチェックが外れています。
文言から考えると、このチェックが外れているとUUIDが書き換えられてしまうのではないかと思います。
私の勘違いなのでしょうか?
その設定での自動入力は、レコードが作成されたときのみに評価されます。ですから、その後に、自動入力で値が入ることはありません。
上書きが許可されているのは、何らかのリレーションなどを使ってレコードの新規作成された場合に、そのフィールドが UUID 以外が入力されてしまう可能性がありますので、それを UUID で上書きするために許可しているのでは、と類推しています。
Last edited by Shin (2018-11-06 10:07:30)
Offline
入力値の自動化・計算値で
「フィールドに既存の値が存在する場合は置き換えない」のチェックを外しておくと、
その計算式の引数に変更があった場合、再計算されて値が自動で更新されます。
しかし、
それがリレーション先の参照フィールドや、
今回の Get ( UUID ) の様な取得関数の場合は再計算されません。
ですからそのチェックの有無はどちらでも同じことになりますね。
書き換えたくないのでしたら、
チェックを入れておいた方が精神上よいのでは^^
Offline
> Shinさん
レコードが作成されたときのみ評価されるんですね。
ありがとうございます。
> チポさん
計算式の引数に変更があった場合のみということですね。
いつの間にかUUIDが変わるのではないかとヒヤヒヤしていました^^;
ありがとうございます。
お二人ともありがとうございました。
安心して作成できそうです。
エラーメッセージに、「識別番号」の値は既存値のみの定義されています。この新しい値を既存値として加えますか?
と出ています。今まではこのメッセージは出なかったのですが、ファイルメーカーの更新を行ったのが原因でしょうか?
それなら何か解決策はありますでしょうか?
フィールドの入力制限で、既存値 になっているのでしょう。
Offline
Pages: 1
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 508.91 KiB (Peak: 515.68 KiB) ]