8 返信 最新の回答 日時: Aug 12, 2014 7:04 PM ユーザー:rabbit7

    スクリプトを使用した一括印刷時のトラブル【解決しました】

    rabbit7

      タイトル

      スクリプトを使用した一括印刷時のトラブル【解決しました】

      フォーラムに投稿

           Filemaker Pro13を使用しています。

           OSはWin8.1、プリンタはEPSONのEP-806AWです。

           スクリプトで条件が一致するレコードを一括印刷するようにしていますが、プリンタ側で問題(用紙切れ、インク切れ、印刷に異様に時間がかかる、その他エラー)が発生した際に、問題解消後、再度最初のレコードから印刷を始めてしまいます。

           例えば20名分印刷したい時に、7名分印刷後に用紙切れになったとして、補充した後再度1人目から印刷を始めます。

           これはスクリプトの組み方の問題でしょうか、それともプリンタ側の問題でしょうか・・・

           プリンタは無線で接続していましたが、それが悪いのかと現在は有線で接続していますがまだトラブルが再発しません。

           切り分けが出来ない為、アドバイスを頂けると助かります。

           スクリプトは以下のように組んであります。

           -----------------------------------------------------------

           ユーザーによる強制終了を許可[オフ]

           レイアウト切り替え[「患者情報」(患者情報)]

           検索モードに切り替え[ ]

           フィールド設定[患者情報::透析日;"月AM"]

           検索実行[ ]

           対象レコードの絞り込み [記憶する]

           スクリプト実行[「全患者選択」]

           表示方法の切り替え[フォーム形式]

           印刷設定[記憶する;ダイアログなし]

           印刷[記憶する]

           フィールド内容の全置換[ダイアログなし;患者情報::印刷;""]

           レイアウト切り替え「[一括印刷メニュー」(患者情報)]

           -----------------------------------------------------------------------------

           流れとしては「月AM」の現在の患者のみを抽出し、「印刷」フィールド (チェックボックスセット)にチェック を入れ、

           チェックの入ったレコードを印刷後、「印刷」フィールドのチェックを外すようにしています。

            

           宜しくお願い致します

        • 1. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
          sago350@未来Switch

               例えば、Wordで複数ページ印刷した際に用紙切れを故意に起こせば、プリンタ側の問題かFileMakerの問題か切り分け出来るかなと思います。

               しかし、もしFileMaker側の問題だったとしてもスクリプトどうこうで解決出来る問題でも無いような気がします。
               1レコードずつ移動して1枚1枚印刷するスクリプトを書けば多少は問題が解決するかもしれません。

               Loop
                印刷
                次のレコードへ移動
               End Loop

               のような感じで。

          • 2. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
            rabbit7

                 sago35さん

                 早速のアドバイスありがとうございます。

                 Wordで用紙切れを起こして試してみましたが、問題なく続きから印刷されました。

                 スクリプトの問題かと思ったのは、以前に問題なく印刷されていたのに上記スクリプトをいじった後に、今回と同様の現象が起き、元に戻したところ直ったからです。

                 残念なことにその時何をしようとしてスクリプトを変更し、何を直したのかの記憶がありません・・・。

                 その後はおそらく問題なく動いていたと思います(申し訳ありません、実際印刷作業をしているのが私ではないので・・・)

                  

                 教えていただいた、1レコードずつ移動しての印刷ですが、1人3枚ずつの印刷などは可能でしょうか?

                 患者さん毎に1治療1枚使用する記録用紙の印刷のため

                 Aさん3枚

                 Bさん3枚

                 Cさん3枚 のようにまとめての出力ではなく、

                 Aさん Bさん Cさん 1セット

                 Aさん Bさん Cさん 1セット

                 Aさん Bさん Cさん 1セット の計3セットという形で出したいです。

                  

            • 3. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
              sago350@未来Switch
                   印刷を3回すればいいんじゃないかと。(Loop使ってもOK)
                   今は、印刷設定の中で3枚印刷するようにしてるんですかね。
                    
                   -----------------------------------------------------------
                    
                   ユーザーによる強制終了を許可[オフ]
                   レイアウト切り替え[「患者情報」(患者情報)]
                    
                   検索モードに切り替え[ ]
                   フィールド設定[患者情報::透析日;"月AM"]
                   検索実行[ ]
                    
                   対象レコードの絞り込み [記憶する]
                   スクリプト実行[「全患者選択」]
                   表示方法の切り替え[フォーム形式]
                    
                   印刷設定[記憶する;ダイアログなし]
                    
                   印刷[記憶する]
                   印刷[記憶する]
                   印刷[記憶する]
                    
                   フィールド内容の全置換[ダイアログなし;患者情報::印刷;""]
                    
                   レイアウト切り替え「[一括印刷メニュー」(患者情報)]
                    
                   -----------------------------------------------------------------------------
                    
              • 4. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
                rabbit7

                     sago35さん

                     本当に早い回答ありがとうございます!

                     そうなんです。

                     1人の患者さんが1週間に3回治療を受けるため、治療日毎に同じ患者さんの用紙を3セット出力しています。

                      

                     単純に印刷3回でいいんですね!

                     次のレコードへ移動で3回ずつの印刷を試してみます。

                     これでも解消されなければ、再度質問させていただくかもしれません・・・

                      

                • 5. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
                  sago350@未来Switch

                       いや、

                       Aさん Bさん Cさん 1セット
                       Aさん Bさん Cさん 1セット
                       Aさん Bさん Cさん 1セット
                        
                       と出すなら、最初に提示したLoopと次のレコードへを使うテクニックは不要で、rabbit7さんのスクリプトの印刷ステップを3つにするのでOKです。
                  • 6. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
                    rabbit7

                         そうでしたか、ありがとうございます。

                         ちなみにこの方法で印刷した場合、印刷ジョブが患者数×3(20人なら60ジョブ)出来るということでしょうか・・・

                         それであれば困っている現象は起きないのだろうと思いますが、

                         そうではなく1セットが1つのジョブとして処理されるとすると、

                         1セット目印刷中にトラブルが起きた場合、結局その1セット目を最初から印刷し始めるのではないかという懸念があります・・・

                    • 7. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
                      sago350@未来Switch

                           対象レコードに対しての印刷であれば3ジョブです。

                           1セットが1つのジョブとして処理されるので、懸念通り1セット目印刷中にトラブルが起きると、最初からになっちゃいますね。

                      • 8. Re: スクリプトを使用した一括印刷時のトラブル【解決しました】
                        rabbit7

                             sago35さん

                             ご報告が遅れましたが、おそらく解決しました。

                             やはりFilemakerとは関係なく、プリンタが無線で繋がれていたことが原因のようです。

                             なんらかの事情で最近ネットワークが不安定になっているようで印刷データの送信が途切れるためプリンタが勝手に停止したようです。

                             プリンタを有線で接続し(何度やっても勝手に無線接続のプリンを追加するので少々苦労しましたが)無線では一切接続させないようにしたところ、今のところ勝手に印刷中止することなく動いています。

                             結局Filemakerとは関係のない質問でお騒がせしました・・・。