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

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

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

You are not logged in.

Announcement

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


#1 2017-11-10 18:32:24

macs
Member

入力制限をドラッグアンドドロップで突破されてしまう

フィールドA、フィールドBがありまして、Bに値が入っているときはAを編集不可にしたい。
Aにスクリプトトリガで OnObjectEnter を設定。Bに値があるときは フィールドへ移動[] とした。
一見うまくいったように見えたが、よそのフィールドからドラッグアンドドロップでAの値を変更できてしまう。
これはどのように回避したらよいのでしょうか?

Offline

#2 2017-11-10 18:43:57

Shin
Member

Re: 入力制限をドラッグアンドドロップで突破されてしまう

OnObjectModify でいかがでしょう。
フィールド値は書き変わっていますので、元に戻空 を使ってみるといいでしょう。

Offline

#3 2017-11-10 18:56:16

macs
Member

Re: 入力制限をドラッグアンドドロップで突破されてしまう

Shinさん返信ありがとうございます。
OnObjectModify に
IF [フィールドB ≠ ""]
元に戻す/再実行 [元に戻す]
フィールドに移動[]
End IF
を入れてみました。
Aの値を変更すると直ちに元に戻るのですが、ドラックアンドドロップには反応しませんでした。

Offline

#4 2017-11-10 23:27:34

Shin
Member

Re: 入力制限をドラッグアンドドロップで突破されてしまう

駄目でしたか。
そのフィールドを参照する計算フィールドを作り、重ねて表示させておく、クリックしたら、トリガーで本来のフィールドに移動させる、という方法は。

Offline

#5 2017-11-11 01:06:40

Hiro
Member

Re: 入力制限をドラッグアンドドロップで突破されてしまう

トリガー発火による入力制限は、動作抜けがあるのでお勧めできません。
FM標準のフィールド設定の入力制限では拙い事案でしょうか?

Offline

#6 2017-11-11 14:00:12

macs
Member

Re: 入力制限をドラッグアンドドロップで突破されてしまう

Shinさん、Hiroさんアドバイスありがとうございます。
スクリプトトリガーはどうもうまくいかないので今回は
フィールドAに「A」フィールドBに「B」と名前を付ける。
フィールドAはフィールド入力のブラウズモードをOFFにしてフィールドに入れなくする。
フィールドAにボタン設定で

IF[Get(ウインドウモード)=1]
オブジェクトへ移動[オブジェクト名:A]
現在のスクリプト終了
End IF
オブジェクトへ移動[オブジェクト名:B]
IF[Get(アクティブフィールド内容)≠""]
オブジェクトへ移動[オブジェクト名:A]
Else
フィールドへ移動[]
End IF

とすることで対応しました。
フィールドに名前を付けたのは異なるリレーションでも対応できるようにしたためです。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 9 queries executed - Memory usage: 551.4 KiB (Peak: 578.98 KiB) ]