みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
ページ: 1
バージョン19.6.3
Mac Ventura で利用しています。
現在、あるテーブルの中に、計算フィールドAを作成し、リレーション済みの別のファイルのあるテーブルのテキストフィールドBから、Lookup関数を利用してデータを取得しています。
フィールドBには追加・変更が常時生じるため、Aにもそれに追従して追加・変更させたいのです。
ここまでなら、「索引設定」で「非保存」にすれば希望は叶うのですが、追加・変更の結果を即時別テーブルでポータル表示させたいのです。
私のつたない理解では「非保存」設定された計算フィールドの結果はポータル内に表示できなかったと思います。
となると、「非保存」設定を解除し、「索引」を設定するしかないと想像するのですが、こうすると、Bの追加・変更が即時Aに反映されません。
「索引設定」された計算フィールドの結果を、即時再計算させるにはどのようにしたらよいのでしょうか? Evaluate関数を使うのかな、とも思いこちらの過去ログも見てみましたが、私の理解が足りず、よく分かっていません。
お知恵を貸して下さい。
オフライン
> 「非保存」設定された計算フィールドの結果はポータル内に表示できなかったと思います。
非保存のフィールドは、リレーション先のキーにできないだけです。ポータルの中の表示は可能です。
フィールドBが変更されたタイミングで、ポータルを更新すればいいのですが、フィールドBの変更のタイミングをこちらのテーブルで検知することが難しく、例えば、共有環境で他のユーザーによって変更されるとか、変更のタイミングでそのレコードを編集中だったとかでは、難しいです。定期的にウインドウの再表示を行ってみるのが現実的なところかと思いますが。
オフライン
Shin様、
結局、
> 「非保存」設定された計算フィールドの結果はポータル内に表示できなかったと思います。
非保存のフィールドは、リレーション先のキーにできないだけです。ポータルの中の表示は可能です。
のご助言から、非保存フィールドがリレーションキーになっていたことに気付きました。この部分だけテキストタイプのフィールドに変え、索引設定して期待していた結果をポータル表示できました。
ありがとうございました。
オフライン
ページ: 1