みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
初めまして.
現在,職場でFileMakerを使用したデータベースを作成しています.
レコード内の全てのデータを入力していないと,印刷できないようにする設定方法は可能でしょうか?
もし可能でしたら,ご教授頂ければ幸甚に存じます.
何卒,よろしくお願いいたします.
Offline
きっともっと良い方法があると思うし、もしかしたらご存知かもしれないのですが、多少の参考になればと思い投稿します。
「印刷をできないようにするだけ」のことであれば、アクセス権セットで実現可能です。
ファイル > 管理 > セキュリティ で新規アカウントを作成し、アクセス権セットを新規作成、
「その他のアクセス権 > 印刷を許可」の✓を外してカスタマイズするとそのアカウントでは「印刷」はできなくなります。
この場合スクリプトで印刷させようとしても印刷のステップだけは拒否してしまうため、
印刷を可能にするとしたら、ユーザ的にも手間になりますが、スクリプトで入力判定後印刷用データをエクスポートさせるとか、でしょうか…
Filemaker Advance 15 (win7) / Filemaker Go 15 (ipad mini/ipad mini2/ipad 2017)
Offline
印刷しなければ、空白のフィールドがあってもかまわないのでしょうか?
そうでなければ、
入力値の制限で「空欄不可」とすればいいですね。
そうならば、
スクリプトで全てのフィールドを空欄があるか見て、なければ印刷
とできますね。
この場合、
アクセス権で印刷不可にしておいて、
「スクリプトを完全アクセス権で実行」とすればいいでしょう。
Offline
肉塊さん
返信頂き,誠にありがとうございます.
印刷権限に関しては存じ上げていたのですが,
条件付き(空欄フィールドがあると印刷できない)で,印刷制限がかけられるかわからなくて・・・
Offline
チポさん
返信頂き,誠にありがとうざいます.
「現在レイアウトのレコード内に空欄フィールドが存在すると印刷できない」と設定したいです.
もし可能でしたら,そのスクリプト内容を教えて頂ければ幸いです.
誠に勝手なことを言って申し訳ありませんが,
何卒,よろしくお願いいたします.
Offline
Loopでフィールドひとつひとつ見てゆく。
でもいいですが、、
各フィルドに改行テキストがないのなら、こんな方法でも
ValueCount ( List ( フィールド1; フィールド2 ; フィールド3 ; ・・・) ) = 全フィールドの数
これが真なら空欄はないですね。
スクリプトは
If [ValueCount ( List ( フィールド1; フィールド2 ; フィールド3 ; ・・・) ) = 全フィールドの数]
印刷
End If
でいいでしょう。
Offline
レイアウト上のフィールドの空欄をLoopで調べるスクリプトの例:
空欄の場合、$EmptyFieldName にフィールド名が入ります。
変数を設定 [$FieldNames; 値:FieldNames ( Get ( ファイル名 ) ; Get ( レイアウト名 ) )]
変数を設定 [$TableName; 値:Get ( レイアウトテーブル名 )]
変数を設定 [$MAX; 値:ValueCount ( $FieldNames )]
変数を設定 [$n; 値:1]
Loop
Exit Loop If [$n > $MAX]
変数を設定 [$FieldName; 値:GetValue ( $FieldNames ; $n )]
変数を設定 [$FieldName; 値:If ( PatternCount ( $FieldName ; "::" ) ; $FieldName ; $TableName & "::" & $FieldName )]
If [IsEmpty ( Evaluate ( $FieldName ) )]
変数を設定 [$EmptyFieldName; 値:$EmptyFieldName & If ( IsEmpty ( $EmptyFieldName ) ; "" ; ¶ ) & $FieldName]
End If
変数を設定 [$n; 値:$n + 1]
End Loop
Offline
チポさん
返信ありがとうごいます.
ご教授して頂きました方法では,行うことができませんでした.
せっかく教えて頂いたのに申し訳ありません.
Offline
qb_dpさん
丁寧なご指導ありがとうざいます.
私の理解不足もあって,教えて頂いた方法では思うようにいきませんでした.
せっかく教えて頂いたのに申し訳ありません.
Offline
>教えて頂いた方法では思うようにいきませんでした.
どう出来ないかを書かれてみては?
エラーが出るなら、どのようなエラーであったとか。
記載したスクリプトを書いてみるとか。
Offline
Pages: 1
[ Generated in 0.004 seconds, 8 queries executed - Memory usage: 517.8 KiB (Peak: 522.34 KiB) ]