みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になります。FM pro12、Win8、FM server12です。過去トピにもありましたが、アクセス権セットを使わずに、記入確定したレコードの各フィールドのデータを変更できないようにしたいと思い、最後に記入確定というボタンを押して「確定」と表示させてフィールドにスクリプトトリガを設定しon object enterで「確定」が表示している場合には変更ができないようにしました。通常のフィールドだとうまくいくのですが、ラジオボタンフィールドやチェックボックスフィールドだとこれがうまくいかず、ラジオボタンやチェックボックスに新たにデータが入ってしまいます。これらをうまく変更禁止にする方法はありますでしょうか。
アクセス権セットだとうまくいくでしょうが、カスタムアクセス権を使うと、いろんな部分で不具合が出てしまい(今のところ理由不明)、結局は入力のみ許可のアクセス権セットを主に使っております。
ご教示宜しくお願いいたします。
そのフィールドにModifyトリガを設定して、スクリプトを
If[確定フィールド="記入確定?"]
元に戻す
End If
にする。
Offline
試してみたらダメだった・・・没
OnObjectValidateならいいのかな?使った事が無いのだ。
Last edited by 旅人 (2014-11-22 14:32:01)
Offline
トリガーを無視して、チャックボックスやラジオボタンが変更できる不具合は、FileMaker社も確認している不具合です。今の所、そのフィールド全体に被せる透明ボタンか、アクセス権以外での制限は出来ない様です。
カスタムアクセス権での不具合とは?経験した事が有りませんが。
Offline
早々のご回答ありがとうございます。フィールド全体にかぶせる透明ボタンとはどういうものでしょうか。ボタンにスクリプトトリガーをくっつけるということでしょうか。
カスタムアクセス権での不具合はたとえばオブジェクトフィールドにiPadから写真を取り込めないとか、そういうものなのですが、そのあたりについてのアクセス権を設定した覚えはなく、試しにすべて削除も編集も許可に変更しても直らず、カスタムアクセス権をやめて入力のみ許可にしたら解決された、というものです。たぶん自分の気づかないところで何かおかしな設定になっていたのでしょうが、それ以来カスタムアクセス権をやめております。
レイアウトをコピーしちゃって
確定か未確定のフラグでレイアウト変更するようにして
確定用レイアウトの変更させたくないフィールドの【ブラウズモードでのフィールド入力】のチェックを外すってのはユルイでしょうか
Offline
OnObjectEnterに以下のスクリプトで、ラジオもチェックも復帰されませんか?
手元のWin8, FileMaker Advanced 12.0v4では入力防止できています。
If [ロック条件]
レコード/検索条件復帰 [ダイアログなし]
End Ifそれより問題は、フィールドへのドラッグアンドドロップによる変更で、
これはEnterやValidate、Save等発火すべきイベントがどれも発火しません(13でも同様)。
Modifyのみは発火してくれるので、簡易的な入力防止にスクリプトトリガを使う場合、
上記のようなリバートスクリプトをEnterとModifyで実行していました。
カスタムアクセス権は煩雑な面もあるので、
手探りで運用と開発並行する場合などでは重宝しました。
返信遅くなりまして失礼いたしました。
fukurowさんの方法だと確実なのかもしれません(レイアウト変更して、という部分がよく飲み込めませんでしたが)が、複数の職員で入力作業をしており、デバイスとしてiPadも使っているので、ブラウズモードでのフィールド入力のチェックを外す操作を全部に施すのが難しいと思われます。
hondaさんのスクリプトでどうなるのか、明日試してみます。
それから、変更禁止のスクリプトトリガーでうまく動作してくれるフィールドでも、iPad上では動作しないことがわかりました。しかもオブジェクトフィールドに関して言えば、iPadで写真やスキャンしたPDFなど取り込んでいるのですが、これもiPadからだとアクセス権設定で削除できないアクセス権からでも簡単に削除できてしまいます。これはどうしようもないのでしょうか。
本日、hondaさんの方法でやり直したところ、うまくいきました!On object modifyだと、Filemakrt Goのオブジェクトフィールドでもちゃんとロックされ、削除もできないようになりました。
ありがとうございました!!
Pages: 1
[ Generated in 0.010 seconds, 11 queries executed - Memory usage: 566.26 KiB (Peak: 571.14 KiB) ]