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

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

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

You are not logged in.

Announcement

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


#1 2023-10-27 20:16:37

tak
Member

ポータルのアクティブ行のボタンだけを表示したい。

ポータル行がアクティブな場合のみ、該当行のボタンを表示させ、非アクティブ行はボタンを非表示にしたいと考えています。
また、ポータル行がアクティブな時には、フィールドの文字を太字にする設定もしたいと思います。
これには条件付き書式を使用しようと考えているのですが、思うように設定ができず困っております。
ご助言いただけますと幸いです。どうぞよろしくお願い申し上げます。

Offline

#2 2023-10-27 21:05:51

himadanee
Guest

Re: ポータルのアクティブ行のボタンだけを表示したい。

ポータル内のテーブルに非保存計算フィールド(rnとする)
Get(レコード番号)
を作れば、オブジェクトを隠す計算式が
Get(アクティブポータル行番号)<>ポータルテーブル::rn
でできますが、ポータルから出たときに再表示しないと表示されたままになりますね。
ポータルのonObjectExitではできないようなので、どうしたものか。

条件付書式の方は、<>の代りに=ということになりますが、こっちは自動的に再表示されるようです。

#3 2023-10-28 08:54:06

Shin
Member

Re: ポータルのアクティブ行のボタンだけを表示したい。

ポータルに設定した onObjectEnter で リレーション::主キー を引数として、onObjectExit で引数をnullにして、トリガーして、
   変数を設定[$$key ; Get ( スクリプト引数 )]
   ウインドウの再表示
というスクリプトを走らせます。
オブジェクトを隠す計算式を
not ( リレーション::主キー = $$key and isvalid ( リレーション::主キー ) )
としておけば良いようです。
https://www.dropbox.com/scl/fi/q5cmkvfw … htveq&dl=0

ポータル行を使うと、、別にポータルがあったときに動作してしまいますよ。

変なところを修正しました。

Last edited by Shin (2023-11-07 14:16:06)

Offline

#4 2023-11-07 10:50:01

himadanee
Guest

Re: ポータルのアクティブ行のボタンだけを表示したい。

まだ解決しないのかな?
>Get(リレーション::主キー)
ここがちょっと変ですね。

>別にポータルが
なるほど、そこは考えてませんでした。

ポータルだからと言って「ポータル行」を使わなくても主キーで判別できるわけですね。
変数を使うので「onObjectExitではまだ出る前なので」という問題も関係なくなる。
グローバル変数なので他の用途とバッティングしないようにする。

#5 2023-11-15 21:49:21

tak
Member

Re: ポータルのアクティブ行のボタンだけを表示したい。

Shin様、himadanee様

この度は回答が遅れ、大変申し訳ございませんでした。

Shin様よりお送りいただいたファイルを拝見し、内容を理解することができました。また、太字の書式設定に関しては、「$$key = テーブル2::副キー and IsValid ( テーブル2::副キー )」という計算式を用いることで実現できたことをご報告いたします。

当初はGet(アクティブポータル行番号)を使用する方法を考えていましたが、Shin様からの異なるアプローチによって新たな学びが得られました。

親テーブルのflagとテキストフィールドに設定されたスクリプトトリガ(新規ポータル行)の使用方法については、まだ完全には把握できておりませんが、今回の目的は無事達成することができました。

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

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 510.23 KiB (Peak: 516.26 KiB) ]