みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
windows7 64
FileMaker Pro12
=============
指定のフィールドに入力した値、選択した値を
管理者権限以外で変更・削除できないようにしたいのですが
そういう事は出来るんでしょうか。
一度入力したら、管理者しか変更・削除できないようにしたいんです。
お分かりになる方いらっしゃいましたらお願いします。
Offline
一度入力した
が難しいのですが、
そのフィールドに入力が有ったら、そのフィールドを選択できない。
でいいのなら
アクセス権とスクリプトトリガで可能ですヨ
Offline
ありがとうございます。
それは、空のフィールドに入力したら
その後選択できなくなるという事でしょうか。
そういった仕様でしたら
具体的に教えて頂けるとたすかります。
Offline
スクリプト
If[Get (アカウントアクセス権) ≠ "Full Access"]
If [not IsEmpty (フィールド)]
#フィールドが複数有るのならGet(アクティブフィールド内容)に変えるとこのスクリプト一つで使い回せます
レコード確定
#または 次のフィールドへ移動 でもいいでしょう
End If
End If
このスクリプトをトリガ
OnObjectEnter
で実行します。
これは、
入力して次のフィールドへ行った後に
「あ、間違えた」
で訂正できません。
Offline
ありがとうございます。
早速実装して試してみます。
Offline
チポ様
アカウントアクセス権ですが
現在「ゲスト」と「管理者」の2つのアカウントで
使っているのですが、今回の件は
アカウントを新規作成する必要がありますでしょうか。
もしゲストアカウントで実行できる場合は
スクリプト内の表記法について教えて頂けませんでしょうか。
お手数ですがご回答をお待ちしております。
Offline
If[Get (アカウントアクセス権) ≠ "Full Access"]
↓
(アカウントアクセス権)への表記法がわかりませんでした。
Offline
ああ、ごめんなさい、間違えていますね。
関数一覧の取得関数に有る
Get ( アカウントアクセス権セット名 )
が正しいです。
タイプしないで、一覧のクリックで入力してください。
"Full Access"
これが管理者のアクセス権ですから、
それ以外全てが制限されます。
Offline
ありがとうございます!
やってみます。
Offline
チポ様
すいません。
実装したところ入力は出来ないのですが
説明が不足しておりまして、
該当のフィールドはプルダウンでした。
プルダウン選択バージョンで同じように動作させることは可能でしょうか??
お手間をおかけして申し訳ないです。
宜しくお願いします。
Offline
プルダウン?
ドロップダウンならそのままで出来るでしょう。
他の値一覧だと他の方法になりますが、、
Offline
実装してみたのですが
やはりドロップダウン選択できてしまいます。
=======
If [ Get ( アカウントアクセス権セット名 ) ≠ "Full Access" ]
If [not IsEmpty (フィールド名)]
次のフィールドへ移動
End If
End If
=======
以上のスクリプトをENTERトリガに設定してるのですが。
何か間違ってるのでしょうか。
Offline
※「フィールド名」は該当のフィールド名を設定しています。
Offline
ポップアップメニューの間違いでは?
スクリプトを
If [ Get ( アカウントアクセス権セット名 ) ≠ "Full Access" ]
元に戻す[元に戻す]
If [IsEmpty (フィールド)]
元に戻す[再実行]
End If
End If
として、これをトリガ
OnObjectModify
で実行。
これなら何でも。。
しかし変更した気がしても出来ていない。
と言うことに。
警告音でも付ければいいかも。
Offline
ポップアップメニューでした;
下記ありがとうございます。
試してみます。
==========
スクリプトを
If [ Get ( アカウントアクセス権セット名 ) ≠ "Full Access" ]
元に戻す[元に戻す]
If [IsEmpty (フィールド)]
元に戻す[再実行]
End If
End If
として、これをトリガ
OnObjectModify
で実行。
=========
確かに警告でも出せればいいですね。
変更しようとしたとき警告を出せますか??
Offline
元に戻す[元に戻す] が見当たらないのですが
直接入力してもいいのでしょうか。
Offline
スクリプトステップの編集グループに
元に戻す/再実行
が有ります。
このオプションで
元に戻す (または 再実行)
を指定します。
Offline
チポ様
ありがとうございます。
無事に実装できました。
最後に一点ご教示をお願いしたいのですが、
ポップアップメニューの任意の値のみ
変更可能にすることは出来るのでしょうか?
お手数ですがご教示をお願いします。
Offline
ポップアップメニューの任意の値のみ
変更可能にすることは出来るのでしょうか
質問が理解できません -_-
別の質問は別スレにした方がよろしいかと思いますよ。
Offline
すいません。関連の質問です。
ご教示頂いたスクリプトを実装し
任意のフィールドで、ポップアップメニューにて選択した値が
管理者権限以外では変更不可にすることができました。
ありがとうございます。
今回の質問は、このポップアップメニューの値の中で
指定した値を選択した場合のみ
「変更不可」を無効にできないかと思いましてご質問させて頂いた次第です。
分かりにくい質問で恐れ入りますが
何か方法はございますでしょうか。
宜しくお願い致します。
Offline
そういうことでしたか、、
前レスのスクリプトを
If [ フィールド ≠ 変更可能の値 ]
End If
でくくればいいでしょう。
Offline
度々すいません。
私の説明が不十分だったかもしれませんが
教えて頂きました方法ですと
「指定した値」には変更できました。
これを
「指定した値にした場合は他の値に変更出来て
指定外の値に変更したら管理者権限以外では変更できない」
ように設定したいです。
例:(ポップアップメニュー項目)
A
B
C
D
説明:
最初に「D」を選択しても、その他のABCに変更できるが
一度ABCのどれかを選択すると管理者権限以外は変更できない。
ご面倒ですがよろしくおねがいします。
Offline
説明が下手で申し訳ありません。
Offline
前スクリプトを変更
If [ Get ( アカウントアクセス権セット名 ) ≠ "Full Access" ]
元に戻す[元に戻す]
If [IsEmpty (フィールド) or フィールド = "D"]
元に戻す[再実行]
End If
End If
でいいのでは。
私が分からず屋かも、ですが、
今回の例は分りやすいですね。
Offline
ああ、自分で言い出しておいて、警告音を忘れていた、、
If [ Get ( アカウントアクセス権セット名 ) ≠ "Full Access" ]
元に戻す[元に戻す]
If [IsEmpty (フィールド) or フィールド = "D"]
元に戻す[再実行]
Else
警告音
End If
End If
でお試し下さい。
Offline
[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 565.7 KiB (Peak: 586.24 KiB) ]