始めの言葉

「プリンターから印刷できて当たり前」と、ユーザーからもSIerからも軽視されがちなプリンターの世界ですが、実際にはお困りだったり、思ったような印刷結果が得られないまま我慢してお使いの皆様のために、今までの経験が役立てばと、このブログを立ち上げました。印刷の基本から、応用情報、問題の解決方法を情報発信すると共に、PDF化など、これからどうするかについても、ご相談に乗れれば幸いです。ご質問はコメントでお寄せください。

2015年12月6日日曜日

バーコードの印刷方法 - 第3回 もっと柔軟な方法 - Mapping Suite の場合-1

前回までのバーコードの印刷は、プリンターの制御コマンドをプリンターに送信して、プリンター内部でバーコード・イメージを生成して印刷する方法でした。そのため、バー幅の指定が細かくできるといったメリットがある一方、どうしても使用可能なプリンターのモデルやメーカーの制限が出てきます。今回は、そのような制限の無い、もっと柔軟な印刷方法をお話します。併せて、mayayam様からいただいたコメント"1ページ目と2ページ目以降で異なるバーコード指定が可能なソリューション"もご紹介したいと思います。

1. APWの使用を前提にすると、"CHGMRG"データを使用すると、スプールのページ単位で異なるフォームを適用する、つまり、位置や種類の異なるバーコードを指定することは可能です。"CHGMRG"データの使用方法に関しては、次の資料(APWのマニュアル)の14ページ目以降にで公開されています。
http://www.ricoh.co.jp/pps/download/pdf/apw_print.pdf
ただ、これは、APWを使用する以上、使用可能なプリンターの制約はありますし、コーディングも大変だと思います。

2. 一般的な Windows Office アプリを使用するとしては、MS Access 上で予めバーコード指定のある帳票設計を行っておき、そこへ、MS Access の機能を使って、AS/400 上の DB から抽出したデータをはめ込んで、Windows プリンターに印刷するという方法が考えられます。この方法では、プリンターから見ると、文字や数字だけでなく、バーコードも全てイメージ・データとして送られてくることになります。従って、読み取り精度を向上させるには、バーコード全体の大きさを調整することになると思います。

3. "帳票ソリューション"を使用する方法は、費用は掛かるものの、既存のアプリケーション・プログラムを変更せずに、柔軟な条件でバーコードを付加した帳票を作成することができるものです。
様々な種類の"帳票ソリューション"が販売されていますが、価格の違い以外に、大きくは次の 2 種類に分けられます。
- OS/400 上で印刷データ(PDF ファイルを含む)を生成するタイプ
- AS/400からスプールを Windows サーバーに受信して、Windows サーバー上で印刷データ(PDF ファイルを含む)を生成するタイプ
それぞれには得失があります。
前者は、Windows サーバーを立てて保守・運用していく必要が無いという大きなメリットがあります。また、運用への組み込みには、ユーザーが馴染んだ RPG や CL のスキルを活用することができます。
後者は、AS/400 側の CPU への負荷が最小限で済むというメリットがあります。
どちらのタイプを選択するかは、価格面も考慮に入れて総合的に判断する必要があるかと思います。
ここからは、筆者が技術サポートを担当している、前者のタイプのソリューション"Mapping Suite"上で、バーコードをどのように指定し、印刷するかをお話します。

"Mapping Suite"では、帳票設計は、"MapDraw"というツールを使って、Windows PC 上で行ないます。
"MapDraw"は、下の画面のように、左右で分かれています。
MapDraw画面(左側オーバーレイ設計画面・右側スプール表示画面)
左側の画面で、オーバーレイ(固定文字や固定罫線)の設計を行ないます。
右側の画面は、対象となるスプール・データを表示し、それを参照しながら、左側の画面で、オーバーレイ上へのデータの配置を指定していきます。







バーコードを指定するには、下の画面にあるように、バーコードに変換するデータのフィールド(右側の画面で背景が青色になっている箇所)を、左側の設計画面に配置し、そのゾーン(と呼びます)のプロパティ(属性)でバーコードとして表示することを指定します。
ゾーンのプロパティ画面(CODE39を指定)
左の画面では、プロパティとして、
- 5 行目の、106 桁目から長さ 9桁を
- バーコード CODE39
で表示することを表わしています。

なお、"Mapping Suite"では、1次元バーコードは専用フォントを使って生成しますので、プロパティの中の"フォントとスタイル"画面で、フォントに"BC39L"を指定します。バーコードの大きさは、このフォントのサイズと、高さ(50% - 200%間)で指定します。
フォントとスタイル画面(フォントにBC39Lを指定)
1次元バーコードで使用する専用フォントは、"MapDraw"と一緒に Windows 用の TrueType フォントとしてご提供しています。

ちなみに、2次元コードである"QRコード"は、上の"データ位置"の画面で、バーコードの種類を"QRコード"を選択した上で、"詳細"ボタンをクリックすると、"バーコードの幅"で大きさと、他に"エラー・レベル"を指定します。


プレビュー表示すると、設定したバーコードがどのように表示されるかを画面上で確認できます。
プレビュー表示(青矢印がCODE39)

では、1ページ目と2ページ目以降で異なる種類のバーコードを異なる場所に表示するには、どのように設計すかを次回、お話します。





0 件のコメント:

コメントを投稿