今回はFileMakerラベル印刷の応用編です。
例として、A4 -14枚の任意のラベルに、または任意の位置から連続で印刷する方法をファイルメーカーで構築したいと思います。使用したFileMakerは、 Advanced Pro Ver.14、ラベルはマクセルL7163-20A(レーザーラベル14枚)です。PCはMac Mini Late 2012、レーザープリンターはCanon MF222dwを使用しました。
<Photo Data>2016/11/07 権現山の銀杏
Canon EOS5DMarkⅡ EF16-35mm f/2.8L USM
何故こんな面倒なことをとお思いでしょう。ラベル印刷は印刷残りが出ます。この残りのラベルを再度利用したいだけです。ただし、この方法はレーザープリンターのドラムが傷みます。ほどほどにということにはなります。
ラベルのある位置にだけ印刷するには少し工夫が必要です。ここで説明致する方法は空レコードを使う方法です。14枚ラベルでは空レコードを14個用意します。そして指定位置のみ実データを転送します。
任意のラベルに印刷するには、まずメインの住所録から印刷対象のデータを選びます(下記住所録画面)。印刷データは右上の方の宛先を会社か自宅宛かをあらかじめ選択しておきます。
次に右上のラベル1枚印刷ボタンより印刷スクリプトを実行します。
下記のスクリーンショットは、「氏名」、「住所」など住所録のデータを印刷する時の印刷レイアウトです。印刷フィールドは小さなスペースへの印字となるためマージフィールドを使用します。
スクリプトはラベルの印刷位置指定(住所録の次のの画面)に飛び、ラベルが残っていて印刷したい場所をマウスで選択します。
印刷はラベル1枚印刷という印刷用のテーブルとレイアウトを作成します。このテーブルとメイン住所録をリレーションで結合します。
(リレーション図を参照下さい)
住所録IDをキーフィールドとしてリレーションをかけて該当IDの住所データをルックアップで取り出しラベル1枚印刷のテーブルにコピーします。
この印刷手続きはスクリプトで行います。
先ずラベル1枚印刷というテーブルに14個の空白レコードを用意します。
印刷位置の検出は位置検出スクリプトで選択された番号を取得します。
(位置検出選択の方法は前の投稿の年賀はがき印刷に例を記載しています。ご参照下さい。)
変数「$$選択位置」にラベル番号が入ります。
印刷スクリプトは下記になります(メインの記述のみです)
レイアウト切り替え 「ラベル1枚印刷のフィールド」(ラベル1枚印刷」
レコード・検索条件/ページへ移動[ $$選択位置 ][ ダイヤログ無し ]
フィールド指定 [ ラベル1枚印刷::ラベル1枚氏名; Lookup ( 住所:: 氏名; ”” )
…..
その他の必要な住所データを同様にlookupで取得します。
レイアウト切り替え「自宅宛ラベル1枚印刷l-7163」(ラベル1枚印刷)
印刷指定 [ 用紙の向き 縦; 用紙サイズ 8.26” x 11.69”
印刷 [ 対象レコード; 全てのページ; 印刷の向き 縦 ; 用紙サイズ: 8.26” x 11.69” ]
[ 記憶する: Canon MF220 ]
3枚目のラベルに印刷する場合、2枚目まで空白レコード、3枚目は実データ、4枚目以降再び14枚目まで空データを印刷します。
注意事項として、プリンターの設定は空レコードも印刷しますので、印刷設定は対象レコードを全てとします。
また2段7行のような段組印刷は使用したプリンターに設定がありません。
ファイルメーカーにはレイアウトが利用出来ます。
下記のスクリーンショットの様に、レイアウト設定の印刷で、印刷時の段数をチェックし段数を入力します。2段7枚計14枚のラベルは2段とします。
3枚目以降連続データとする時も以上の応用となります。
一番下に3番目にサンプル印刷した例を載せました。
1st 2016/12/05
2nd 参照位置修正 2016/12/06
3rd 説明と事例画面追加 2017/06/24
4th 事例画面再追加 とファイルメーカーにカテゴリー変更2017/06/25
K.Fukuma