マニュアル

明細行数に応じて帳票を発行する

作成者: 非表示執筆者|2024.12.04

実現したい内容

「ファイル生成」パーツを使用して、明細行数が多く2ページ以上にわたる帳票を発行したい場合、単純に ###キーワード### を帳票のフォーマット内に配置すると、出力時に1ページ目の枠が押し広げられ、レイアウトが崩れてしまうことがあります。

これを防ぎ、明細行数に応じて複数ページにわたる帳票を綺麗に発行するための設定方法を説明します。

運用ルールに合わせて、以下の2つのパターンのいずれかで設定を行います。

設定の基本ルール:Excelの関数機能を利用する

複数ページにわたる帳票を発行する際、レイアウト崩れを防ぐための最も基本的な考え方は、「印刷範囲外のセルにデータを出力し、Excelの関数で表示用セルに参照させる」という方法です。

  1. 雛形ファイルの「1シート目」の印刷範囲外(右側の見えない列など)に、出力用キーワード(###キーワード###)を設定します。
    ※「楽楽販売」の仕様上、データが出力されるのはExcelの「1シート目(一番左のシート)」のみとなります。
  2. 印刷範囲内(実際に帳票として表示・印刷させたいセル)に、Excelの関数を入力して枠外のデータを参照させます。
    ※単純な =(イコール)で参照すると、データがないセルに「0」が表示されてしまうため、=IF(参照セル="","",参照セル) のような関数を使用することをおすすめします。
    例:下図の例では、C10のセルに「=IF(L20="","",L20)」を入力。


サンプルのひな形資料は、下記よりダウンロードできます。
【楽楽販売】ファイル生成_雛形ファイル.xlsx

パターン①:フォーマットは固定でよい(空白ページを許容する)場合

出力されるデータが1ページ分だけであっても、あらかじめ用意した複数ページ分(例:最大3ページ)のフォーマットでファイルが生成されても構わない場合の設定です。
自動処理の設定がシンプルで済みます。

概要

  • 最大想定ページ数分のフォーマットを持った雛形ファイルを1つ作成する
  • 自動処理では「ファイル生成」パーツを1つだけ設定する

詳細

  1. 上記「設定の基本ルール」に従い、最大想定ページ数分の枠と関数を仕込んだ雛形ファイルを1つ作成します。
  2. 自動処理設定にて、上記で作成した雛形ファイルを指定した「ファイル生成」パーツを登録します。

パターン②:出力行数に応じて最適なフォーマットにしたい(空白ページをなくしたい)場合

出力される明細行数に応じて、不要な空白ページが発生しないように、最適なページ数のひな形を出し分けたい場合の設定です。
明細行数をカウントし、条件分岐パーツを使って処理を分けます。

必要なパーツ

このパターンを実現するには下記の2種類のパーツが必要になります。

・「条件分岐」パーツ(条件に応じて分岐)
→条件(明細行数)に応じて処理を分岐させます。

・「ファイル生成」パーツ(帳票発行)
→帳票を発行します。

概要

  • 条件に応じたひな形ファイルをそれぞれ作成する
    【例】
    ・明細行数が少ない場合(25行以下:1ページ用)のひな形ファイル
    ・明細行数が多い場合(26行以上:2ページ用)のひな形ファイル
  • 明細行をカウントするためのDB項目を追加する
  • 自動処理を作成する

詳細

  1. 上記「設定の基本ルール」に従い、ページ数に応じたひな形ファイルをそれぞれ作成します。
  2. 項目設定にて明細行数をカウントするための項目を追加し、計算方法を下記のように設定します。
    ※DB項目の追加/設定方法については、下記記事をご確認ください。
     【構築の進め方】(STEP2)データベース項目の設定
     項目設定:項目タイプ「数値計算」

    ・項目タイプ:数値計算
    ・項目名  :【例】明細行数
    ・計算方法 :明細項目のレコード数
    ・計算する項目:明細
  3. 自動処理設定にて、実行単位「レコード単位」を選択のうえ自動処理を作成し「条件分岐」パーツを登録します。
    ※自動処理の設定方法については、下記記事をご確認ください。
     【構築の進め方】(STEP3)自動処理の設定
     自動処理設定:「条件分岐」パーツ
  4. 「条件分岐」パーツにて、処理を分岐させるための条件を設定します。
    【例】明細行数が25行以下か、それより多いかどうかで分ける場合下記のように設定
  5. 「条件分岐」パーツの分岐先にそれぞれ「ファイル生成」パーツを登録します。

    ▼YESの分岐先(明細行数が25行以下)
    明細行数が少ない場合(1ページ用)のひな形ファイルを指定した「ファイル生成」パーツ

    ▼NOの分岐先(明細行数が26行以上)
    明細行数が多い場合(2ページ用)のひな形ファイルを指定した「ファイル生成」パーツ

帳票をPDF形式で出力したい場合

「PDF出力オプション」をご利用いただくことで対応が可能です。


オプションの詳細をお知りになりたい方は、下記記事をご覧ください。
自動でPDF化してもっと楽に!PDF出力オプションのご紹介

(記事ID:1039)