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

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

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

You are not logged in.

Announcement

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


#1 2017-10-16 13:38:43

ncg
Member

印刷条件について

初めまして.
現在,職場でFileMakerを使用したデータベースを作成しています.

レコード内の全てのデータを入力していないと,印刷できないようにする設定方法は可能でしょうか?

もし可能でしたら,ご教授頂ければ幸甚に存じます.

何卒,よろしくお願いいたします.

Offline

#2 2017-10-16 14:35:20

肉塊
Member

Re: 印刷条件について

きっともっと良い方法があると思うし、もしかしたらご存知かもしれないのですが、多少の参考になればと思い投稿します。
「印刷をできないようにするだけ」のことであれば、アクセス権セットで実現可能です。

ファイル > 管理 > セキュリティ で新規アカウントを作成し、アクセス権セットを新規作成、
「その他のアクセス権 > 印刷を許可」の✓を外してカスタマイズするとそのアカウントでは「印刷」はできなくなります。

この場合スクリプトで印刷させようとしても印刷のステップだけは拒否してしまうため、
印刷を可能にするとしたら、ユーザ的にも手間になりますが、スクリプトで入力判定後印刷用データをエクスポートさせるとか、でしょうか…


Filemaker Advance 15 (win7) / Filemaker Go 15 (ipad mini/ipad mini2/ipad 2017)

Offline

#3 2017-10-16 14:46:39

チポ
Member

Re: 印刷条件について

印刷しなければ、空白のフィールドがあってもかまわないのでしょうか?

そうでなければ、
入力値の制限で「空欄不可」とすればいいですね。

そうならば、
スクリプトで全てのフィールドを空欄があるか見て、なければ印刷
とできますね。
この場合、
アクセス権で印刷不可にしておいて、
「スクリプトを完全アクセス権で実行」とすればいいでしょう。

Offline

#4 2017-10-16 15:25:16

ncg
Member

Re: 印刷条件について

肉塊さん

返信頂き,誠にありがとうございます.
印刷権限に関しては存じ上げていたのですが,
条件付き(空欄フィールドがあると印刷できない)で,印刷制限がかけられるかわからなくて・・・

Offline

#5 2017-10-16 15:27:56

ncg
Member

Re: 印刷条件について

チポさん

返信頂き,誠にありがとうざいます.

「現在レイアウトのレコード内に空欄フィールドが存在すると印刷できない」と設定したいです.

もし可能でしたら,そのスクリプト内容を教えて頂ければ幸いです.

誠に勝手なことを言って申し訳ありませんが,
何卒,よろしくお願いいたします.

Offline

#6 2017-10-16 16:06:26

チポ
Member

Re: 印刷条件について

Loopでフィールドひとつひとつ見てゆく。
でもいいですが、、

各フィルドに改行テキストがないのなら、こんな方法でも
  ValueCount ( List ( フィールド1; フィールド2 ; フィールド3 ; ・・・) ) = 全フィールドの数
これが真なら空欄はないですね。

スクリプトは
  If [ValueCount ( List ( フィールド1; フィールド2 ; フィールド3 ; ・・・) ) = 全フィールドの数]
    印刷
  End If
でいいでしょう。

Offline

#7 2017-10-16 17:12:13

qb_dp
Member

Re: 印刷条件について

レイアウト上のフィールドの空欄を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

#8 2017-10-17 16:39:12

ncg
Member

Re: 印刷条件について

チポさん

返信ありがとうごいます.
ご教授して頂きました方法では,行うことができませんでした.
せっかく教えて頂いたのに申し訳ありません.

Offline

#9 2017-10-17 16:41:23

ncg
Member

Re: 印刷条件について

qb_dpさん

丁寧なご指導ありがとうざいます.
私の理解不足もあって,教えて頂いた方法では思うようにいきませんでした.
せっかく教えて頂いたのに申し訳ありません.

Offline

#10 2017-10-17 17:31:20

あると
Member

Re: 印刷条件について

>教えて頂いた方法では思うようにいきませんでした.
どう出来ないかを書かれてみては?
エラーが出るなら、どのようなエラーであったとか。
記載したスクリプトを書いてみるとか。

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, 8 queries executed - Memory usage: 517.8 KiB (Peak: 522.34 KiB) ]