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

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

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

You are not logged in.

Announcement

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


#1 2020-12-03 11:33:15

sai0306
Member

フィールドの値を変更した際に、別のフィールドの値をクリアしたい

いつもお世話になっております。
掲題の件で質問させていただきます。

◆環境
FM18
Win10

◆内容
会社名フィールド(テキスト)の値を変更した際、同レイアウト上に存在する人数フィールド(ドロップダウンリスト)の値をクリアしたいです。

当初、スクリプトトリガのOnObjectModifyをチェック(会社名フィールドへ設定)し、スクリプトは下記を設定することで対応できるかと思いましたが、うまくいきません。
(反応なし)

消去[選択; T指示書::人数]
フィールド設定[T指示書::人数; ""]

また、会社名フィールドへは、OnObjectEnterも既に別処理で使用しています。

どの様にしたら、実装出来るでしょうか。
連日質問させていただくばかりで申し訳ないですが、どなたかご教授いただけますでしょうか。

Offline

#2 2020-12-03 11:48:28

Moz
Member

Re: フィールドの値を変更した際に、別のフィールドの値をクリアしたい

[OnObjectModify]で[フィールド設定]が正しいフィールドを指定できているなら値は空欄になりますよ。
他に何か処理をしていませんか?

反応なしというのは見た目上変わらないだけなのか、スクリプトデバッガで見てもトリガが発火していないのかどちらでしょうか?

なお、値が元のままでも消えますけど構わないのでしょうか?
(例:「あいうえお」→誤って消して再度「あいうえお」と入れても消えます)

Offline

#3 2020-12-03 13:26:35

sai0306
Member

Re: フィールドの値を変更した際に、別のフィールドの値をクリアしたい

Mozさん

いつもお世話になっております。

>[OnObjectModify]で[フィールド設定]が正しいフィールドを指定できているなら値は空欄になりますよ。
>他に何か処理をしていませんか?
起票時に記載した処理のみです・・・。

>反応なしというのは見た目上変わらないだけなのか、スクリプトデバッガで見てもトリガが発火していないのかどちらでしょうか?
OnObjectEnterの処理が走った後、OnObjectEnterの処理は実行されませんでした。

>なお、値が元のままでも消えますけど構わないのでしょうか?
>(例:「あいうえお」→誤って消して再度「あいうえお」と入れても消えます)
はい。その場合でもクリアされて構いません。

Offline

#4 2020-12-03 13:30:18

sai0306
Member

Re: フィールドの値を変更した際に、別のフィールドの値をクリアしたい

Mozさん

会社名フィールド以外のフィールドで試したところ、クリア処理走りました。
会社名フィールドですが、フィールド選択時に別の検索用レイアウトを起動する設定にしています。
その検索用レイアウト上で会社名を選択すると、会社名フィールドに名称が入るように作成しています。
恐らく↑が悪さしていると思われますが、この処理を残したまま、クリア処理を実装することは可能でしょうか。

Offline

#5 2020-12-03 13:36:06

Moz
Member

Re: フィールドの値を変更した際に、別のフィールドの値をクリアしたい

つまりは「会社名」フィールドはスクリプトで値を入れているということですよね?
[OnObjectModify]は[フィールド設定]による値の変更では発火しません。

その検索用レイアウト上で会社名を選択すると、会社名フィールドに名称が入る

この処理で「会社名」が書き換わっているのですからスクリプトの中で「人数」を空にすれば良いでしょう。
もし、同じ会社名を選択しても変わっても良いと前述されていますから問題ないでしょう。

Last edited by Moz (2020-12-03 13:36:37)

Offline

#6 2020-12-03 13:53:19

sai0306
Member

Re: フィールドの値を変更した際に、別のフィールドの値をクリアしたい

Mozさん

>この処理で「会社名」が書き換わっているのですからスクリプトの中で「人数」を空にすれば良いでしょう。
おっしゃる通りですね・・・。
ありがとうございました。会社名をセットするスクリプトの中にクリア処理も実装し、対応できました。

早々のご回答ありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 515.95 KiB (Peak: 520.48 KiB) ]