始めの言葉

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

2018年2月24日土曜日

AS/400 プリンティングに求められるソリューション 第28回 - Mapping Suite の帳票設計方法 - 6 -

前回、"データの配置を設計する方法は、2 つに分かれます" と申し上げて、その内の 1 つの方法をお話ししました。今回は、残るもう 1 つの方法をお話しします。
前回の方法は、スプール・データの中の、特定の場所(行と、桁の範囲)にあるデータを、帳票上の任意の場所に配置するという方法でした。この方法では、ある範囲のデータ毎に配置場所を指定できますので、配置の自由度は高い反面、ある特定の桁の範囲にあるデータが何行も繰り返されるような場合、実際にはこのようなデータの並びであることの方が多いのですが、この方法では非常に手間が掛かります。
そのような場合に使用するのが、もう 1 つの方法で、縦と横の組み合わせを使用します。

具体的には、次のような手順になります。
スプール・ビューに表示された見積り書のスプール・データ "DEMO1.pag" の 1 ページ目のデータの中で、各分野毎の分野名と合計金額が、28 行目から 40 行目まで繰り返されています。その時には、スプール・ビュー画面上でマウスを使って、横幅は任意、縦幅が 28 行目から 40 行目までの領域(次の図の "Group" と書かれた領域)を指定し、左側の画面にドラッグ & ドロップします。
Group 範囲の指定
そうすると、次のような "固定グループ" という画面が自動的に開きます。
固定グループのプロパティ画面
ここで、グループ名は任意です。私は、ゾーンの名称と同様に "g1" から順番に定義しています。"開始行" と "終了行" が、自分で指定した領域の縦幅を表わしています。もちろん、後でそれぞれ修正して縦幅を変更することが可能です。
"OK" ボタンを押すと、左側の画面に次のように、赤い四角形が表示されます。
これで "縦" の指定はできたので、次は "横" の指定を行います。
スプール・データを見ると、分野名と金額の間がかなり空いていますので、A4 サイズの横幅の中に自然に収まって見えるように、間隔を詰めて配置するものとします。そのために、番号と分野名は一緒に 1 つのゾーンとし、金額は別のゾーンとして、間隔を詰めて先ほどの固定グループの中に配置します。つまり、番号と分野名に必要な桁の範囲、8 桁目から 23 桁を範囲指定したゾーンを、固定グループ "g1" の中にドラッグ & ドロップします。
そうすると、次のような "ゾーンのプロパティ" 画面が表示されます。やはりゾーンの名称は任意なので、ここでは、"g1" の中の 1 番目のゾーンなので、"Z11" と名付けます。
グループの中へゾーンを定義する
注意していただきたい点は、独立したゾーンと異なり "データ位置" に行の指定が無いことです。(行は、グループ "g1" の方で指定しているからです。)
"OK" ボタンを押すと、次の左側画面のように、固定グループ "g1" の中にゾーン "Z11" が配置されたことが分かります。更に Ctrl + W キーを押してプレビューすると、右側画面のように、ゾーン "Z11" で指定した桁の範囲のデータが、グループ "g1" で指定した行に対して繰り返し表示されたことが分かります。
(右側のスプール・ビューの画面では、左側画面でプレビューされたデータが、黄緑色で表示されていることにお気づきでしょうか。)
ゾーン "Z11" の追加とその結果
"縦と横の組み合わせ" とお話しした意味は、このように "横 = ゾーン" を "縦 = グループ" で指定した行数だけ繰り返して実行するということを表わしています。
続けて、金額を表示させるために、つまり金額の桁数のゾーンを配置するために、左側画面の固定グループの赤四角を、少し右横へ幅を広げます。
その後、右側の画面で金額に必要な桁 116 桁目から 11 桁を範囲指定して、左側画面の グループ "g1" の中へ、ドラッグ & ドロップします。ゾーン名を "Z12" としてから、"OK" ボタンを押します。
ゾーン "Z12" の追加
次の左側画面のように、固定グループ "g1" の中にゾーン "Z12" が追加されて配置できたことが分かります。更に Ctrl + W キーを押してプレビューすると、右側画面のように、ゾーン "Z11" と "Z12" で指定した桁の範囲のデータが、グループ "g1" で指定した行に対して繰り返し表示されたことが分かります。
また、グループをクリックして、黒四角が表示された状態にすると、右側画面では、グループとゾーンの組み合わせで表示されるデータの範囲が、紫色の四角形で表示されます。
ゾーン "Z12" の追加とその結果
 次回は、位置の調整と、文字ピッチ、行ピッチの調整方法をお話しします。

2 件のコメント:

  1. 初めての投稿で失礼します。

    AS400で帳票のラインが66行を超える印刷をした場合、
    印刷セッションのWSを66行以上に設定した場合、正常に印刷されますが、
    66行を超える印刷のスプールが複数ある場合(例えば5つとか)、
    途中から66行で改行され次ページに印刷されてしまいます。

    この現象が全てのドットプリンターやレーザープリンターで起こります。(インパクトプリンターを除く)

    解決策はございますか?

    返信削除
  2. コメントを投稿していただき、誠にありがとうございます。
    (なかなか、コメントが無いので、本当にありがたいです。)
    PDTを指定した印刷をされているのだと思いますが、そのPDTファイルの元になっているPDFファイルの中に次のような記述があると思います。
    (ibm5577.pdfの例)
    /**********************************************************************/
    /* Session Parameters */
    /**********************************************************************/
    MAXIMUM_PAGE_LENGTH=066
    この"066"が、1ページ66行までの元になっていますので、この値をもっと大きな値にしてみてください。
    PDF編集後は、PDTファイルへのコンパイルをお忘れなく、よろしくお願い申し上げます。

    返信削除