Claris FileMaker (ファイルメーカー)印刷時の設定のちょっとしたコツ
2022年12月28日 12:00 PM
ファイルメーカーのTips
Claris FileMaker(ファイルメーカー) のカスタムAppで帳票などを印刷している方も多いと思いますが、どのような設定をしていますか?
「今日から正しい用紙サイズで印刷されなくなった」「印刷の向きが変わってしまった」といったご相談を時々いただくことがあります。「印刷ダイアログで変更して印刷をしても、その時だけ正しく印刷できて、次回からまた元に戻ってしまうので困る」という内容も意外と多いです。これは「手動での印刷」と「スクリプトやボタン等で設定した印刷」を混同されているように思われます。
今回は、この違いや、スクリプト設定時のちょっとしたコツをご紹介したいと思います。
以下の順でご説明していきます。
・印刷方法
・印刷設定
・スクリプトのコツ
◆印刷方法◆
Claris FileMaker Pro で印刷するには以下の方法があります。
1) [ファイル] メニュー > [印刷]
2) ショートカットキー Ctrl+P(Macの場合はcommand+P )を使用
3) プレビューモードでステータスツールバーの「印刷」ボタンを押す
4) ボタンに「印刷」ステップを設定
5) スクリプトを作成し、ボタン等に設定
上記5つのうち、1)~3)のように手動で都度印刷を行う場合は、デフォルトのプリンタ、もしくは直前に印刷したプリンタとなります。印刷時に用紙のサイズや向き等の用紙設定を変更したい場合は、印刷ダイアログで設定を変更するか、印刷前に以下の方法で設定を変更します。
・ [ファイル] メニュー > [印刷設定]
・プレビューモードでステータスツールバーの「印刷設定」ボタンを押す
◆印刷設定◆
先ほども記載しましたが、[ファイル] メニュー > [印刷設定] 等で、都度設定を行うことができます。ですが、印刷のたびに設定するのは面倒ですね。ここでは、設定を記憶させておく印刷方法4)・5)についてご説明します。
印刷に関してのスクリプトステップは、以下の2つがあります。
・印刷
・印刷設定
・「印刷」ステップ
FileMaker Pro ヘルプに以下の記載があります。
——————————————————————————–
現在の FileMaker Pro ファイルの情報を印刷します。
[印刷オプションの指定] を選択すると、出力先を指定できます (スクリプトステップに印刷オプションを保存すると [記憶する] になります)。スクリプトを実行すると、このスクリプトステップからの出力は指定したプリンタまたはファックスに送信されます。
——————————————————————————–
このステップでは、歯車マークを押して「印刷オプション」を指定できます。
以下の内容を指定し、記憶させることができます。
・出力先(プリンタ等)
・印刷対象(現在のレコード/対象レコード)
・印刷範囲
・印刷部数
等
・「印刷設定」ステップ
FileMaker Pro ヘルプに以下の記載があります。
———————————————————————-
用紙サイズや印刷方向などの印刷設定オプションを設定してこのスクリプトステップとともに保存することができます。
———————————————————————-
このステップでは、歯車マークを押して「用紙設定」を指定できます。
以下の内容を指定し、記憶させることができます。
・用紙サイズ
・給紙方法
・用紙の向き
・倍率
・両面・片面
・カラーモード
等
◆スクリプトのコツ◆
印刷用のスクリプトでは「印刷設定」「印刷」ステップをセットで使います。ボタンに「印刷」の単一ステップのみを設定することもできますが、用紙サイズ等の印刷設定を考慮すると「スクリプトを作成し、それをボタンに設定する」方法がより使いやすいと思います。
さて、下図のようなスクリプを作成されている方も多いのではないでしょうか。
印刷用のレイアウトに切り替える → 印刷の用紙や向きなどのオプションを設定する →印刷する → 元のレイアウトに切り替える という流れです。一見これでよい感じですが、「保守」と「エラー対応」というところで少し問題があると思われます。
1.今後の保守を考慮しましょう
先ほどのスクリプトには、保守の観点において以下の懸念点があります。
1)スクリプトを見ただけでは設定内容が分からない。
作成した人の異動・退職で後任者が引き継いだ場合、設定内容がすぐに分からず、確認の時間がかかるかもしれません。また、開発会社へ保守や改修を依頼した場合、設定内容の調査に費用がかかってしまう、なんてことも起きるかもしれません。費用はかからなくても対応に時間をとられることも多いでしょう。
2)出力先が変わった場合、印刷設定が変わることがある。
プリンタの入替等は一定期間ごとに行なわれると思います。その際に「スクリプトの印刷設定がクリアされてしまう」ということが起きることがあります。冒頭に記載しましたが、スクリプトで設定した内容は、設定を変えて印刷するだけでは変更されません。スクリプトステップの内容を変更後の出力先に合わせて再設定し、記憶させ直す必要があります。該当するスクリプトが10個あれば、印刷と印刷設定の2ステップを10回設定しなければならないので、スクリプトの数が多いほど作業は煩雑になります。
1)はコメントを付けることで解決しそうですが、2)も含めた解決策としては、「印刷設定」「印刷」用のサブスクリプトを用意するとよいでしょう。
用紙のサイズや向き等を設定した「印刷設定」ステップだけのスクリプトを作成します。A4縦、A3横など用紙サイズや向き等の設定内容ごとにそれぞれ作成します。
そして、出力先や出力対象(現在のレコード/対象レコード)等を設定した「印刷」ステップだけのスクリプトを作成します。こちらも設定内容ごとに作成しますが、印刷ダイアログの有無でも分けておくと良いでしょう。
これらをサブスクリプトとして、各印刷スクリプトの「印刷設定」および「印刷」ステップと置き換えます。
このようにしておくと、出力先が変わった場合にも、サブスクリプトの設定を変更して記憶させ直すだけで、変更作業が完了します。
2. エラー処理を追加しましょう
図7や図10のスクリプトを実行し、印刷ダイアログで印刷をキャンセルすると、下図のようなエラーメッセージが表示されてしまいます。
「キャンセル」を押すとスクリプトが途中で終了し、「続行」を押すとスクリプトが続行して実行されます。このスクリプトの場合、「キャンセル」を押すと「元のレイアウトに切り替える」ステップが実行されず、印刷用レイアウトを表示した状態で終わってしまいます。
印刷ダイアログでキャンセルしても元のレイアウトに切り替わるように、「印刷」用のサブスクリプトに「エラー処理」ステップを追加しましょう。サブスクリプト内に追加すると、メインスクリプトの他の処理にも影響がありません。もちろんメインスクリプト内に追加しても大丈夫です。
いかがでしたでしょうか。ちょっとしたことで、後々の作業量を減らしたり、運用時の利用をスムーズにすることができます。ご活用いただけますと幸いです。