帳票印刷

7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • 投稿者
    投稿
  • #6088
    yuzuki1010
    参加者

    いつもお世話になっております。
    ページ数の変更について質問があります。
    データ20個未満なら1ページのみで印刷、20以上なら1、2ページの印刷をしたいと思っています。
    帳票印刷で1,2ページ用のテーブル①、②を作成し、
    帳票の起動メソッド’remove paper page’と’add paper page’でページ数を設定しようと試みましたが、1ページ目しか印刷されませんでした。
    ページの変更方法の良い方法はないでしょうか?

    #6089
    MZPlatformユーザー会
    キーマスター

    説明していただいた内容であれば、テーブル帳票要素の「繰り返し印刷機能」で対応できそうに思います。付属ドキュメントの「サンプル(帳票).pdf」(C:\MZPlatform\3.6\docs\sample)をご覧ください。帳票要素のテーブルに「繰り返し印刷」を設定すれば、データが多い場合に自動的に複数ページが印刷されます。

    いろいろ制限がありますので、ご希望の処理が実現できそうかお試しいただけますでしょうか。ご不明な点は再度お問い合わせください。

    FAQにも同様の質問がありますので、こちらもご覧ください。
    https://ssl.monozukuri.org/mzplatform/faq/faq/faq_technical/paper_print/paper_print_a20.html

    #6090
    yuzuki1010
    参加者

    サンプルを拝見させて頂きました。
    表示行数を指定し次ページに繰り延べる方法では難しいと感じました。

    テーブル1の行数は11行で固定になっていて、データ数は2列分入力できるように列数も固定しています。合計22個のデータを入力できるようになっています。22個以上はテーブル2のほうに設定されるようになっています。

    行数が固定されているので繰り返しは難しいと思います。
    帳票コンポーネントの起動メソッドでページの追加したりできないのでしょうか?

    #6091
    MZPlatformユーザー会
    キーマスター

    帳票コンポーネントの起動メソッドを駆使することで、一応ページの追加は可能です。しかし、このやり方ですとすべての処理をご自身で書かなければならず、おすすめできません。例えば、データが何ページ分になるか判定し、その数のページを追加し、各ページに必要な帳票要素を起動メソッドで追加することになります。できなくはないですが、あまりにも処理が複雑になりますし、すべての処理を実現できるかわかりません。

    それよりも、繰り返し印刷用のテーブルデータをテーブル格納変数などで作成して、ページ数が自動で増えるようにした方がまだ楽だと思います。サンプルを改変した例を添付します。2列のテーブルの行をデータ数に応じて5行ずつ追加して、左の列の上から順にデータを埋めていって作成したテーブルを印刷用のテーブルデータとして、帳票に表示しています。このように印刷用のテーブルを別に作成すれば、ページの方はデータに応じて自動的に追加されます。このやり方は印刷用のテーブルの形式によっては今回のように処理が長くなりますが、さまざまなパターンに対応できます。

    一方、もしラベルの繰り返し印刷でテーブルのような印刷レイアウトを実現するのでよければ、かなり処理が簡単になります。こちらもサンプルを改変してありますのでご確認ください。ラベルの繰り返し印刷では、テーブルに対して特定列のセルの値を、繰り返し印刷が設定されたラベル要素に対して行の順に埋めていくので、要素が不足すればページも自動で追加されますし、上記のように印刷用のテーブルデータを別に作成する必要がありません。

    添付ファイル:
    #6093
    yuzuki1010
    参加者

    サンプルデータありがとうございます。
    拝見しました。そのような簡単な方法があったのですね。
    こちらで作成したものはかなり複雑になってしまいました。
    CSV入力してテーブル作成と手入力できるように汎用性を持たせて作成しましたが、すべて一列にし、印刷用テーブルを作成するほうがかなり楽そうです。
    直すのにかなり手間取りそうですが、さまざまなパターンに対応できるのは魅力的です。
    作りなおしてみたいと思います。
    ありがとうございました。

    #6094
    yuzuki1010
    参加者

    ラベルの繰り返し印刷について質問があります。
    テーブル①の0列目のデータを繰り返しラベル貼り付けすることはできましたが、同じテーブルの1列目のデータも同じようにラベルの貼り付けができず、すべて0列目のデータになってしまいます。
    テーブルを分ける必要があるのか、それとも他に別のやり方があるのでしょうか?

    #6095
    MZPlatformユーザー会
    キーマスター

    帳票要素の繰り返し印刷は、一種類のデータしか扱えないという制限があります。そのため、同じテーブルでも別の列を同時に繰り返し印刷することができません。元のテーブルデータで列がわかれている二種類のデータを、同じ帳票内で繰り返し印刷をしたい場合は、印刷用にテーブルを作成して同じ列に必要な順番でデータが並ぶように工夫する必要があります。

    FAQでも同様の回答がありますので、ご覧ください。
    https://ssl.monozukuri.org/mzplatform/faq/faq/faq_technical/paper_print/paper_print_a36.html

7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • このトピックに返信するにはログインが必要です。