ページの先頭行へ戻る
MeFt V11.0 ユーザーズガイド
FUJITSU Software

3.2.3 出力処理の種類

  MeFtを使用して帳票を印刷するには、次の3種類の出力方法があります。

      通常出力

      行移動出力

      パーティション出力

  以降に各出力方法について説明します。


3.2.3.1 通常出力

  定義体で指定した位置に項目を印刷する方法です。利用者プログラムは、項目の位置を意識する必要がありません。出力時に項目名または項目群名を指定すると、定義体に指定した位置まで自動的に改行処理を行い、項目または項目群を印刷します。


3.2.3.2 行移動出力

  定義体で指定した位置を基準にして、任意の行数分だけ前またはうしろの位置に項目を印刷する方法です。

  通常出力を使用すると、項目は常に定義体に定義した位置固定に印刷されます。一方、行移動出力を利用すれば、項目の行位置をプログラム内から自由に指定して印刷できます。ただし、印刷位置を指定できるのは文字データだけです。項目の枠などの罫線は、定義体作成時に定義した位置に印刷されます。

  図で、通常出力と行移動出力の印刷結果の違いを説明します。

図3.12 通常出力と行移動出力での定義体例

[印刷方法1:通常出力の場合]
  1. 通常出力で‘○×商店'を印刷する。

  2. 通常出力で‘代表者氏名'を印刷する。

[印刷方法2:行移動出力の場合]
  1. 通常出力で‘○×商店'を印刷する。

  2. 行移動出力で‘代表者氏名'を印刷する。このとき、印刷位置は定義体で指定した位置よりもうしろを指定し、行数に2を指定する。

図3.13 通常出力と行移動出力の印刷結果の違い(通常出力)

定義体で指定した位置に“代表者氏名”が印刷される。

図3.14 通常出力と行移動出力の印刷結果の違い(行移動出力)

定義体で指定した位置から2行うしろに“代表者氏名”が印刷される。


3.2.3.3 パーティション出力

  パーティション出力は、パーティション形式の定義体を使用してパーティション項目群を印刷する出力方法です。

  パーティション出力は、印刷する項目群の位置を、定義体作成時には指定しないでプログラム内から動的に指定して印刷する方法です。直前に印刷した項目の位置を基準にして、項目群の印刷前または印刷後に任意の行数だけ改行を行うことにより、動的に印刷位置を指定します。

  なお、パーティション項目群には、浮動パーティション項目群と固定パーティション項目群の2つがあり、動的に印刷位置を指定できるのは、浮動パーティション項目群だけです。固定パーティション項目群は定義体作成時に項目群の位置を指定し、常に帳票の左上端を基点とした位置に項目群が印刷されます。

  固定パーティション項目群の印刷で、改行数の指定が有効になるのは行送り前印刷のときだけです。

  パーティション出力には、次に示す印刷方法があります。

      行送り前印刷

      行送り後印刷

      絶対行位置印刷

  帳票定義体では、郵便番号項目、ID項目は特殊項目群として定義します。特殊項目群の出力では、プリンタヘッドの位置は更新されません。また、行送り前印刷、行送り後印刷、絶対行位置印刷はできません。

  帳票定義体では、パーティションの情報として縦幅の指定があります。

  パーティションの縦幅と行ピッチの関係は以下のようになります。

図3.15 パーティションの縦幅と行ピッチの関係

出力開始位置

固定パーティションの場合  :  ページ内縦位置

浮動パーティションの場合  :  今現在のプリンタヘッド位置

パーティション最終位置

出力開始位置+パーティション縦幅

次回出力開始位置

出力開始位置+(パーティション縦幅-行ピッチ)

なお、パーティション縦幅が行ピッチより小さいパーティション項目群を出力した場合、次回の出力位置はパーティション出力した開始位置のままとなります。


3.2.3.3.1 行送り前印刷

  パーティション項目群を印刷したあとに、任意の行数だけ改行する印刷方法です。

  行数は出力時に指定します。行数に0を指定すると改行は全く行われません。行数に0を指定して、パーティション出力で浮動パーティション項目群を続けて印刷すると、項目群の先頭行が、前回印刷した項目群の最終行と重なって印字されます。行数には0以外を指定するか、定義体作成時にパーティション項目群の最終行または先頭行を空白行にするなどして、データが重なって印字しないようにします。

  図に、行送り前印刷の動作例を示します。

図3.16 行送り前印刷の動作例

  上記のパーティション項目群を使って行送り前印刷を続けて2回行う。

  印刷後の改行数には4を指定する。


3.2.3.3.2 行送り後印刷

  任意の行数だけ改行したあとに、パーティション項目群を印刷する方法です。

  行数は出力時に指定します。行数に0を指定すると改行はまったく行われません。行数に0を指定して、パーティション出力で浮動パーティション項目群を続けて印刷すると、項目群の先頭行が、前回印刷した項目群の最終行と重なって印字されます。行数には0以外を指定するか、定義体作成時にパーティション項目群の最終行または先頭行を空白行にするなどして、データが重なって印字しないようにします。

  行送り後印刷では、浮動パーティション項目群だけが有効となります。固定パーティション項目群を印刷すると、利用者プログラムで指定した改行数は無視され、常に定義体で指定した位置に印刷されます。

  図に、行送り後印刷の動作例を示します。

図3.17 行送り後印刷の動作例

  上記のパーティション項目群を使って行送り後印刷を続けて2回行う。

  印刷前の改行数には4を指定する。


3.2.3.3.3 絶対行位置印刷

  ページ内の指定した位置にパーティション項目群を印刷する方法です。

  印刷位置はページ先頭を1としたページ内行位置を出力時に指定します。絶対行位置に0を指定するとMEFD_RC_PARA(26)のエラーとなります。

  絶対行位置印刷では、浮動パーティション項目群だけが有効となります。固定パーティション項目群を印刷すると、利用者プログラムで指定した絶対行位置は無視され、常に定義体で指定した位置に印刷されます。

  図に、絶対行位置印刷の動作例を示します。

図3.18 絶対行位置印刷の動作例

  上記のパーティション項目群を絶対行位置印刷を使って印刷する。

  絶対行位置に7を指定する。