初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2023-05-21 07:28:45

Fuji-san-2
Member

リレーション先のデータを即時ポータルに反映したい

バージョン19.6.3
Mac Ventura で利用しています。

現在、あるテーブルの中に、計算フィールドAを作成し、リレーション済みの別のファイルのあるテーブルのテキストフィールドBから、Lookup関数を利用してデータを取得しています。
フィールドBには追加・変更が常時生じるため、Aにもそれに追従して追加・変更させたいのです。
ここまでなら、「索引設定」で「非保存」にすれば希望は叶うのですが、追加・変更の結果を即時別テーブルでポータル表示させたいのです。
私のつたない理解では「非保存」設定された計算フィールドの結果はポータル内に表示できなかったと思います。

となると、「非保存」設定を解除し、「索引」を設定するしかないと想像するのですが、こうすると、Bの追加・変更が即時Aに反映されません。

「索引設定」された計算フィールドの結果を、即時再計算させるにはどのようにしたらよいのでしょうか? Evaluate関数を使うのかな、とも思いこちらの過去ログも見てみましたが、私の理解が足りず、よく分かっていません。

お知恵を貸して下さい。

Offline

#2 2023-05-21 08:43:48

Shin
Member

Re: リレーション先のデータを即時ポータルに反映したい

> 「非保存」設定された計算フィールドの結果はポータル内に表示できなかったと思います。
非保存のフィールドは、リレーション先のキーにできないだけです。ポータルの中の表示は可能です。

フィールドBが変更されたタイミングで、ポータルを更新すればいいのですが、フィールドBの変更のタイミングをこちらのテーブルで検知することが難しく、例えば、共有環境で他のユーザーによって変更されるとか、変更のタイミングでそのレコードを編集中だったとかでは、難しいです。定期的にウインドウの再表示を行ってみるのが現実的なところかと思いますが。

Offline

#3 2023-05-21 10:14:12

Fuji-san-2
Member

Re: リレーション先のデータを即時ポータルに反映したい

Shin様、

結局、

Shin wrote:

> 「非保存」設定された計算フィールドの結果はポータル内に表示できなかったと思います。
非保存のフィールドは、リレーション先のキーにできないだけです。ポータルの中の表示は可能です。

のご助言から、非保存フィールドがリレーションキーになっていたことに気付きました。この部分だけテキストタイプのフィールドに変え、索引設定して期待していた結果をポータル表示できました。

ありがとうございました。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] CCBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 8 queries executed - Memory usage: 507.86 KiB (Peak: 512.4 KiB) ]