(57)【要約】【課題】文字サイズや行間等の見栄えを変更せず、また、利用環境に応じて適切なブレイク処理を行って、データの視認性向上または無駄な印刷出力を行うことなく仕分けの利便性も保ちつつ、ユーザの所望のページ数に収めたり、余分な余白領域をなくし、ユーザが望む出力結果を取得できるようにすること。【解決手段】複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して生成される出力ページの制約条件（余白領域制限、ページ数制限等）を設定しておき、生成された出力ページが設定された出力ページの制約条件にあてはまる場合、フォーム作成アプリケーションプログラム１２１は、前記データの変化を判定するデータ項目を変更し、該変更された前記データの変化を判定するデータ項目におけるデータの変化に応じて区切り処理を適用した出力ページを生成する構成を特徴とする。【選択図】図４
2007164685.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成する情報処理装置において、
前記生成される出力ページの制約条件を設定する設定手段と、
前記生成された出力ページが前記設定手段により設定された出力ページの制約条件にあてはまらない場合、前記データの変化を判定するデータ項目を変更する制御手段と、
前記制御手段によって変更された前記データの変化を判定するデータ項目におけるデータの変化に応じて区切り処理を適用した出力ページを生成する生成手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記出力ページの各ページにおいて、前記データが配置されていない余白サイズを判定する余白サイズ判定手段を有し、
前記設定手段は、制約条件として前記生成される出力ページの余白領域制限を設定可能であり、
前記制御手段は、前記余白判定手段によって判定された余白サイズが前記設定手段によって設定された前記出力ページの余白領域制限を超える場合、前記データの変化を判定するデータ項目を変更することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記出力ページのページ数を判定する出力ページ数判定手段と、
前記設定手段は、制約条件として前記生成される出力ページのページ数制限を設定可能なものであり、
前記制御手段は、前記出力ページ数判定手段によって判定された出力ページのページ数が前記ページ数制限を超える場合、前記データの変化を判定するデータ項目を変更することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記データの変化を判定するデータ項目を変更する方法を設定する変更方法設定手段を有し、
前記制御手段は、前記変更方法設定手段によって設定された前記データの変化を判定するデータ項目を変更する方法に基づいて、前記データの変化を判定するデータ項目を変更することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記データの変化を判定するデータ項目を変更する方法は、前記区切り処理を解除するデータ項目を指定し、該区切り処理を解除するように指定されたデータ項目におけるデータの変化に応じた区切り処理を解除する第１の方法を含み、
前記制御手段は、前記第１の方法が設定された場合には、前記区切り処理を解除するように指定されたデータ項目におけるデータの変化に応じた区切り処理を解除することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記データの変化を判定するデータ項目変更する方法は、前記データの変化を判定するデータ項目の優先順位を指定し、該優先順位に基づく順序で該データ項目におけるデータの変化に応じた区切り処理を解除する第２の方法を含み、
前記制御手段は、前記第２の方法が設定された場合には、前記優先順位に基づく順序で該データ項目におけるデータの変化に応じた区切り処理を解除することを特徴とする請求項４または５に記載の情報処理装置。
【請求項７】
前記複数のデータ項目からなるデータにおいて、前記データの変化を判定するデータ項目を変更することにより、変更後のデータ項目におけるデータの変化に基づいて、該データの変化前までのデータを決められた領域内に収めることができるか否かを判定するデータ溢れ判定手段と、
前記データの変化を判定するデータ項目を変更後のデータ項目におけるデータの変化に基づいて、該データの変化前までのデータを決められた領域内に収めることができないと判定された場合の出力処理内容を設定する出力内容設定手段を有し、
前記データ溢れ判定手段により前記データの変化を判定するデータ項目を変更後のデータ項目におけるデータの変化に応じて、該データの変化前までのデータを決められた領域内に収めることができないと判定された場合、前記生成手段は、前記出力内容設定手段によって設定された出力処理内容に基づいて出力ページを生成することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記出力内容設定手段は、前記データの変化前までのデータを決められた領域内に収めることができないと判定された場合の処理として、決められた出力領域内にそのまま出力する処理、又は、前記決められた出力領域を含む出力可能な領域まで出力する処理を設定可能なものであり、
前記データ溢れ判定手段により前記データの変化を判定するデータ項目を変更後のデータ項目におけるデータの変化に基づいて、該データの変化前までのデータを決められた領域内に収めることができないと判定され、前記出力内容設定手段により前記出力可能な領域まで出力する処理が設定された場合、前記生成手段は、前記複数項目からなるデータを前記出力可能な領域まで配置した出力ページを生成することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記データの変化を判定するデータ項目を変更することにより前記区切り処理を解除した箇所に、空行を挿入する処理、区切り処理を解除した箇所の属性を変更する処理、なにも挿入しない処理、のいずれかを設定可能な区切り処理箇所設定手段を有し、
前記生成手段は、前記データの変化を判定するデータ項目を変更することにより区切り処理を解除した箇所に対して前記区切り処理箇所設定手段によって設定された処理内容に基づき出力ページを生成することを特徴とする請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記ページ数制限設定の際、該ページ数制限に基づいて前記データの変化を判定するデータ項目を変更しても、生成される出力ページのページ数が前記ページ数制限を超えてしまう場合のページ数制限処理として、そのまま出力する処理、又は、エラーとする処理を設定可能な出力設定手段を有し、
前記生成手段は、前記出力ページ数判定手段によって、前記データの変化を判定するデータ項目を変更しても出力ページのページ数が前記ページ数制限を超えてしまうと判定された場合、前記出力設定手段によって設定された情報に基づいて、出力ページを生成することを特徴とする請求項３に記載の情報処理装置。
【請求項１１】
前記生成手段によって生成された出力ページの出力設定情報を判定する出力設定情報判定手段を有し、
前記制御手段は、前記出力設定情報判定手段によって判定された出力設定情報が第１出力設定情報であると判定された場合、前記データの変化を判定するデータ項目の変更処理を実行せず、前記出力設定情報判定手段によって判定された出力設定情報が第１出力設定情報であると判定された場合、前記データの変化を判定するデータ項目の変更処理を実行することを特徴とする請求項１乃至１０のいずれか１項に記載の情報処理装置。
【請求項１２】
複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成する情報処理装置において、
前記生成される出力ページの制約条件を設定する設定手段と、
前記予め定められたデータ項目におけるデータの変化を判定するデータ判定手段と、
前記データ判定手段によって、予め定められたデータ項目においてデータの変化が生じたと判定された場合、前記区切り処理を実行する区切り処理実行手段と、
前記区切り処理実行手段による区切り処理を実行して生成された出力ページが前記設定手段により設定された出力ページの制約条件にあてはまらない場合、前記区切り処理の処理内容を変更する制御手段と、
前記制御手段によって変更された前記区切り処理の処理内容に基づいて出力ページを生成する生成手段と、
を有することを特徴とする情報処理装置。
【請求項１３】
前記出力ページの各ページにおいて、前記データが配置されていない余白サイズを判定する余白サイズ判定手段を有し、
前記設定手段は、制約条件として前記生成される出力ページの余白領域制限を設定可能であり、
前記制御手段は、前記余白判定手段によって判定された余白サイズが前記設定手段によって設定された前記出力ページの余白領域制限を超える場合、前記区切り処理の処理内容を変更することを特徴とする請求項１２に記載の情報処理装置。
【請求項１４】
前記出力ページのページ数を判定する出力ページ数判定手段と、
前記設定手段は、制約条件として前記生成される出力ページのページ数制限を設定可能なものであり、
前記制御手段は、前記出力ページ数判定手段によって判定された出力ページのページ数が前記ページ数制限を超える場合、前記区切り処理の処理内容を変更することを特徴とする請求項１２に記載の情報処理装置。
【請求項１５】
前記区切り処理の処理内容を改ページ処理から改行処理に変更する変更方法設定手段を有し、
前記生成手段は、前記予め定められたデータ項目におけるデータの変化に応じて前記変更方法設定手段によって変更された改行処理を適用して出力ページを生成することを特徴とする請求項１２乃至１４のいずれか１項に記載の情報処理装置。
【請求項１６】
前記改行処理を実行する箇所に、空行を挿入する処理、区切り処理を解除した箇所の属性を変更する処理、なにも挿入しない処理、のいずれかを設定可能な区切り処理箇所設定手段を有し、
前記生成手段は、前記区切り処理箇所設定手段によって設定された処理内容に基づき出力ページを生成することを特徴とする請求項１５に記載の情報処理装置。
【請求項１７】
前記ページ数制限設定の際、該ページ数制限に基づいて前記区切り処理の処理内容を変更しても、生成される出力ページのページ数が前記ページ数制限を超えてしまう場合のページ数制限処理として、そのまま出力する処理、又は、エラーとする処理を設定可能な出力設定手段を有し、
前記生成手段は、前記出力ページ数判定手段によって、前記区切り処理の処理内容を変更しても出力ページのページ数が前記ページ数制限を超えてしまうと判定された場合、前記出力設定手段によって設定された情報に基づいて、出力ページを生成することを特徴とする請求項１４に記載の情報処理装置。
【請求項１８】
前記生成手段によって生成された出力ページの出力設定情報を判定する出力設定情報判定手段を有し、
前記制御手段は、前記出力設定情報判定手段によって判定された出力設定情報が第１出力設定情報であると判定された場合、前記区切り処理の処理内容を変更せず、前記出力設定情報判定手段によって判定された出力設定情報が第１出力設定情報であると判定された場合、前記区切り処理の処理内容を変更することを特徴とする請求項１２乃至１７のいずれか１項に記載の情報処理装置。
【請求項１９】
前記生成される出力ページは、枠情報にデータを流し込んで生成される表形式の出力ページを含むことを特徴とする請求項１乃至１８のいずれか１項に記載の情報処理装置。
【請求項２０】
前記前記データの変化を判定するデータ項目におけるデータの変化に基づいて、集計処理する集計処理手段を有し、
前記生成手段は、前記集計処理手段による集計結果を含んだ出力ページを生成することを特徴とする請求項１乃至１１のいずれか１項に記載の情報処理装置。
【請求項２１】
前記変更された区切り処理内容に基づく区切り処理に応じて集計処理する集計処理手段を有し、
前記生成手段は、前記集計処理手段による集計結果を含んだ出力ページを生成することを特徴とする請求項１２乃至１８のいずれか１項に記載の情報処理装置。
【請求項２２】
複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成する情報処理装置におけるデータ出力制御方法において、
前記生成される出力ページの制約条件を設定する設定ステップと、
前記生成された出力ページが前記設定手段により設定された出力ページの制約条件にあてはまらない場合、前記データの変化を判定するデータ項目を変更する変更ステップと、
該変更された前記データの変化を判定するデータ項目におけるデータの変化に応じて区切り処理を適用した出力ページを生成する生成ステップと、
を有することを特徴とするデータ出力制御方法。
【請求項２３】
複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成する情報処理装置におけるデータ出力制御方法において、
前記生成される出力ページの制約条件を設定する設定ステップと、
前記予め定められたデータ項目におけるデータの変化を判定するデータ判定ステップと、
該予め定められたデータ項目においてデータの変化が生じたと判定された場合、前記区切り処理を実行する区切り処理実行ステップと、
該区切り処理を実行して生成された出力ページが前記設定手段により設定された出力ページの制約条件にあてはまらない場合、前記区切り処理の処理内容を変更する変更ステップと、
該変更された前記区切り処理の処理内容に基づいて出力ページを生成する生成手段と、
を有することを特徴とするデータ出力制御方法。
【請求項２４】
請求項２２又は２３に記載されたデータ出力制御方法をコンピュータに実行させるためのプログラム。
【請求項２５】
請求項２２又は２３に記載されたデータ出力制御方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票データ等の出力の際に改ページを制御可能な情報処理装置およびデータ出力制御方法に関する。
【背景技術】
【０００２】
従来、帳票等を出力する際に、出力フォームのレイアウトを示すフォームファイル（テンプレート）の所定の個所（フィールド）に対し、指定されたデータを流し込んで出力フォームを得られるようにしていた。そして、指定されたデータにおいて特定の項目のデータ変化を認識することに応じて、ブレイク処理（例えば、改ページまたは改行処理を指し、区切り処理ともいう）が行われている。このブレイク処理により、データの視認性が向上する。
【０００３】
しかし、このブレイク処理は、予め定められた特定の項目のデータが変化する度にブレイク処理が行われるため、ユーザが流し込むデータの内容を認識していない場合、ユーザの意図しない出力結果となる恐れがあった。
【０００４】
こういったユーザの意図に反した出力を防止する技術として、帳票とは異なる技術分野であるが特許文献１が開示されている。
【０００５】
特許文献１では、指定されたページ数の文書を作成するために、予めパラメータの自動調整の可否や優先順位、調整範囲を設定しておく。そして、文書データのページ数がユーザが指定したページ数よりも多いと判定された場合、設定した情報に基づいてパラメータ値を減少する処理を実行して文書データのページ数をユーザが指定したページ数に収めることが記述されている。
【特許文献１】特開平１０−１０５５４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上述した上記特許文献１に記載の技術では、出力結果のページ数についてはユーザの所望とする結果を得ることができる。しかし、文字サイズや行間間隔の幅を変更してしまうため、見栄えに影響する部分が大きく、結果的にユーザが意図していない印刷物が生成されてしまうという問題点があった。
【０００７】
従来のブレイク処理では、予め設定された所定のデータ項目においてデータが変化することに応じて、設定された所定のブレイク処理が実行される。
【０００８】
よって、従来のブレイク処理では、予め設定された固定的なブレイク処理を実行するため、ユーザの意図しない出力結果となる恐れがある。
【０００９】
例えば、テスト印刷等のページ数の節約が望まれる環境下で、ブレイク処理により改ページが実行されると、出力結果のページ数が膨大な量となる恐れがある。また、配布用の資料を作る場面等においては、ページ数が膨大な量となっても、改ページブレイク処理を行うことで、視認性を高めた印刷結果が望まれる。
【００１０】
このようにユーザの利用環境によって、ユーザが望む出力結果は異なるが、従来の固定的なブレイク処理では、利用環境に応じたブレイク処理を実行することはできなかった。
【００１１】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、利用環境に応じて適切なブレイク処理を行うことで、データの視認性向上または無駄な印刷出力を行うことなくユーザが望む出力結果を取得できるようにする仕組を提供することである。
【課題を解決するための手段】
【００１２】
本発明は、複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成する情報処理装置において、前記生成される出力ページの制約条件を設定する設定手段と、前記生成された出力ページが前記設定手段により設定された出力ページの制約条件にあてはまる場合、前記データの変化を判定するデータ項目を変更する制御手段と、前記制御手段によって変更された前記データの変化を判定するデータ項目におけるデータの変化に応じて区切り処理を適用した出力ページを生成する生成手段を有することを特徴とする。
【００１３】
また、本発明は、複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成する情報処理装置において、前記生成される出力ページの制約条件を設定する設定手段と、前記予め定められたデータ項目におけるデータの変化を判定するデータ判定手段と、前記データ判定手段によって、予め定められたデータ項目においてデータの変化が生じたと判定された場合、前記区切り処理を実行する区切り処理実行手段と、前記区切り処理実行手段による区切り処理を実行して生成された出力ページが前記設定手段により設定された出力ページの制約条件にあてはまる場合、前記区切り処理の処理内容を変更する制御手段と、前記制御手段によって変更された前記区切り処理の処理内容に基づいて出力ページを生成する生成手段
を有することを特徴とする。
【発明の効果】
【００１４】
本発明は、利用環境に応じて適切なブレイク処理を行うことで、データの視認性向上または無駄な印刷出力を行うことなくユーザが望む出力結果を出力することが可能となる。
【発明を実施するための最良の形態】
【００１５】
〔第１実施形態〕
図１は、本発明の一実施形態を示す帳票印刷処理システムに適用可能な情報処理装置のハードウェアの構成の一例を示すブロック図である。
【００１６】
図１において、１０１は情報処理装置としてのホストコンピュータである。
【００１７】
図１に示すように、ホストコンピュータ１０１は、ＣＰＵ１０による中央処理装置と、ＲＯＭ１１／ＲＡＭ１２による主記憶装置、ＦＤ（フレキシブルディスク）ドライブ１３やＨＤ（ハードディスク）ドライブ１５等による外部記憶装置を備える。また、ホストコンピュータ１０１は、キーボード１６およびマウス１８等のポインティングデバイスによる入力装置、ＣＲＴディスプレイ１７等による表示装置を備える。さらに、ホストコンピュータ１０１は、プリンタやプロッタ等の印刷装置とネットワークを介して通信可能なネットワークインタフェースカード（ＮＩＣ；Network Interface Card）１９を備える。なお、このＮＩＣ１９の代わりに、ＵＳＢ，セントロニクスインタフェース，ＳＣＳＩ等の他のインタフェースを備え、印刷装置を接続する構成であってもよい。また、ワードプロセッサ専用装置等のように、印刷装置を備える構成であってもよい。
【００１８】
そして、ホストコンピュータ１０１は、上記各デバイスとそれらを結ぶシステムバス２０とからその主要部が構成されるコンピュータシステムであり、このコンピュータシステムが図示しないネットワークバスによって複数相互に接続されているものである。
【００１９】
ホストコンピュータ１０１は、基本Ｉ／Ｏプログラム、ＯＳ（オペレーションシステム）,およびプログラムをＣＰＵ１０が実行することにより動作する。基本Ｉ／ＯプログラムはＲＯＭ１１に書き込まれており、ＯＳはＨＤ１５に書き込まれている。
【００２０】
そして、ホストコンピュータ１０１の電源がＯＮされたときに、基本Ｉ／Ｏプログラム中のＩＰＬ(イニシャル・プログラム・ローディング)機能により、ＨＤ１５からＯＳがＲＡＭ１２に読み込まれ、ＯＳの動作が開始される。
【００２１】
本実施形態の場合は、本実施形態の制御プログラムおよび関連データは、ＦＤ１４内に記録されており、その記録されている内容の構成を図２に示す。
【００２２】
図２は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムおよび関連データを格納する記憶媒体（記録媒体）のメモリマップを説明する図である。
【００２３】
図２において、３１はボリューム情報、３２はディレクトリ情報である。３３は本実施形態の制御プログラムの実行ファイル、３４は制御プログラム３３の関連データファイルである。なお、制御プログラム３３は、後述する制御手順を示すフローチャートに基づいてプログラムコード化されたものである。
【００２４】
図２に示すように、ＦＤ１４に記録された制御プログラム３３及び関連データ３４は、図１に示したようにＦＤドライブ１３を介して本コンピュータシステムにロードすることができる。
【００２５】
このＦＤ１４をＦＤドライブ１３にセットすると、ＯＳおよび基本Ｉ／Ｏプログラムの制御の下に本制御プログラムおよび関連データがＦＤ１４から読み出され、ＲＡＭ１２にロードされて動作可能となる。この様子を図３に示す。
【００２６】
図３は、図２に示した制御プログラム３３がＲＡＭ１２にロードされ実行可能となった状態のメモリマップを説明する図である。
【００２７】
図３において、４１は基本Ｉ／Ｏプログラム、４２はＯＳである。４３は、図２に示した制御プログラム３３に対応する。４４は、図２に示した制御プログラム関連データファイル３４に対応する。４５はワークエリアである。
【００２８】
図３に示すように、本実施形態では、ＦＤ１４から制御プログラム３３及び関連データ３４を直接ＲＡＭ１２にロードして実行させる例を示した。しかし、この他に、ＦＤ１４からプログラム及び関連データを一旦、ＨＤ１５に格納(インストール)しておき、本プログラムを動作させる際に、ＨＤ１５からＲＡＭ１２にロードするようにしてもよい。
【００２９】
また、制御プログラム３３を記録する媒体は、ＦＤ１４以外にＣＤ−ＲＯＭ、ＩＣメモリカード等であってもよい。さらに、本プログラムをＲＯＭ１１に記録しておき、これをメモリマップの一部をなすように構成し、直接ＣＰＵ１０で実行することも可能である。
【００３０】
図４は、帳票等のデータを印刷するシステムの一例を示すブロック図である。
【００３１】
図４において、１００は帳票印刷処理システムである。ホストコンピュータ１０１において、１２１はフォーム作成アプリケーションプログラム（FORM EDITING APPLICATION）であり、図３に示した制御プログラム３３に対応する。このフォーム作成アプリケーションプログラム１２１は、典型的にＦＤドライブ１３やＨＤドライブ１５に常駐し、ＣＰＵ１０により実行、読み込み、コントロールされる。
【００３２】
フォーム作成アプリケーションプログラム１２１は、２つのソフトウェアコンポーネントを含んでいる。これらのうち１つめのコンポーネントは、ライブラリ（LIBRARY）コンポーネント１０５（以下、ライブラリ）である。このライブラリ１０５は、オーバーレイ印刷処理等の処理を行うソフトウェアコンポーネントである。なお、オーバーレイ印刷処理とは、フォームデータの所定の領域に、所定のコンテンツデータをレイアウトして印刷出力する処理を指す。なお、本実施形態のオーバーレイ印刷処理は、指定された項目においてデータが変化した場合、改ページ処理が実行される。
【００３３】
２つめのコンポーネントはユーザインタフェース（USER INTERFASE）コンポーネント（以下、ＵＩコンポーネント）１０３である。このＵＩコンポーネント１０３は、ユーザにフォームや設定ファイルを作成させるメカニズムを提供する。なお、このＵＩコンポーネント１０３とライブラリ１０５は、コミュニケーションチャネル１２３を介して通信する。即ち、フォーム作成アプリケーション１２１に含まれるＵＩコンポーネント１０３が、本実施形態に記載される設定部分に関する制御を行う。なお、ユーザにより設定された値は、ＲＡＭ１２等に保持される。
【００３４】
そして、ライブラリ１０５は、上記ＲＡＭ１２に保持された設定情報を参照して、該設定情報に基づくレイアウト処理（フォームデータに対してコンテンツデータを流し込む処理や後述する動的ブレイク処理）を実行する。
【００３５】
ホストコンピュータ１０１は、ネットワーク１０７を介してデータベースサーバ１１７内のデータベース１１９、ファイルサーバ１１５、プリントサーバ１０９にアクセスすることが可能である。そして、ホストコンピュータ１０１は、プリントサーバ１０９を介してプリンタ１１３を用いた印刷処理を実行可能である。なお、１１１はプリントサーバ１０９とプリンタ１１３のインタフェースである。
【００３６】
以下、フォームデータに対してコンテンツデータを流し込む処理について説明する。
【００３７】
図５は、フォームデータに対してコンテンツデータを流し込む処理を説明する図である。
【００３８】
図５において、５０１はフォームデータである。フォームデータ５０１には項目として「部」、「課」、「名前」がある。５０２はフォームデータ５０１に流し込むコンテンツデータである。本実施形態において、フォームデータに対してコンテンツデータを流し込む処理とは、コンテンツデータ５０２を、５０３に示すようにフォームデータ５０１に流し込む処理である。
【００３９】
次に、本実施形態の動的ブレイク処理について説明する。
【００４０】
まず、動的ブレイク処理を説明する前に、本実施形態のブレイクについて説明する。本実施形態においてブレイクとは、表のある項目のデータ（例えば、列データ等）においてデータが変化することを示す。例えば、「場所」という項目で“東京“というデータが続いている列データにおいて、”大阪”というデータがきた時にブレイクが発生したという。このようにデータの変化に応じて実行される処理をブレイク処理という。なお、本願では、ブレイク処理について区切り処理と記述する場合があるが、同じ意味を指す。また、ブレイク処理（区切り処理）とは、例えば改ページ処理、改行処理を指す。
【００４１】
上記帳票５０３において、ブレイクキー（ブレイク判定を行う項目）が「部」，「課」である場合、５０４，５０５でブレイクが発生する。実際、５０４では、「課」のデータが“１”から“２”に変化している。また、５０５では、「部」のデータが“Ａ”から“Ｂ”に変化し、「課」のデータも“２”から“３”に変化している。
【００４２】
このブレイク箇所５０４や５０５で、改ページを行うことにより、データ区切りのよい印刷物を生成することが可能となる。
【００４３】
また、動的ブレイクとは、予め設定された動的ブレイク条件に従って、ブレイク箇所のブレイクを有効にするか否かを動的に変更することを指す。また、動的ブレイク条件とは、動的ブレイクを実行するか否かの設定を示す。ここで設定可能な条件は、大きく分けて余白領域指定及びページ数指定がある。
【００４４】
以下、図６〜図３３を参照して、動的ブレイク条件の設定について説明する。
【００４５】
図６は、本実施形態における動的ブレイクキー選択ＵＩの一例を示す図である。このＵＩは、図１に示したＣＰＵ１０により実行される図４に示したＵＩコンポーネント１０３の制御によりディスプレイ１７に表示され、キーボード１６又はマウス１８により入力指示可能に制御される。また、このＵＩによる設定は、ＲＡＭ１２等に保持される。
【００４６】
さらに、このＵＩは、キーボード１６又はマウス１８から、フォーム（例えば図５の５０１）が選択され、所定の操作がなされると、ＵＩコンポーネント１０３の制御によりディスプレイ１７に表示される。
【００４７】
図６に示すように、動的ブレイクキー選択ＵＩでは、ブレイクキーの中で動的ブレイクキーにしたいキー（項目）を選択追加するためのものである。即ち、ブレイク箇所を判定するデータ項目を優先順位を付けて複数設定するためのものである。なお、この動的ブレイクキーの選択は、フォームデータ毎に可能である。
【００４８】
図６において、１７０１はブレイクキー表示欄であり、対応する（選択された）帳票のブレイクキーが表示される。なお、ブレイクキーは、予め選択されたフォームデータの項目名をフォーム作成アプリケーション１２１が抽出して表示した不図示のＵＩから選択設定されＲＡＭ１２に保持されている。
【００４９】
１７０２は追加ボタンであり、このボタンが指示されると、ブレイクキー表示欄１７０１で選択されたブレイクキーが動的ブレイクキーとして選択され、動的ブレイクキー表示欄１７０４に表示される。なお、動的ブレイクキーは複数選択可能である。
【００５０】
１７０５は動的ブレイクキー順序変更ボタンであり、動的ブレイクキーが複数選択されている場合に、このボタンが指示されると、動的ブレイクキー表示欄１７０４の動的ブレイクキーの優先順序が変更される。なお、本願では、上にある項目から優先順位が上とする。
【００５１】
１７０３は削除ボタンで、このボタンが指示されると、動的ブレイクキー表示欄１７０４で選択された動的ブレイクキーが削除され、ブレイクキー表示欄１７０１に表示される。
【００５２】
１７０６はＯＫボタンである。このＯＫボタン１７０６が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図７に示すＵＩが表示される。なお、このＵＩによる設定は、優先順位の順序構造を保った状態でＲＡＭ１２等に保持される。
【００５３】
図７は、本実施形態における動的ブレイク動作条件設定ＵＩ（ユーザインタフェース）の一例を示す図である。なお、本願のＵＩは、図１に示したＣＰＵ１０により実行される図４に示したＵＩコンポーネント１０３の制御によりディスプレイ１７に表示され、キーボード１６又はマウス１８により入力指示可能に制御される。また、本願では、ＵＩによる設定は、ＲＡＭ１２等に保持される。
【００５４】
図７に示すように、この動的ブレイク動作条件は、オーバーレイ処理により生成される出力ページ（出力結果）の制約や条件を示し、フォーム毎に設定可能である。また、動的ブレイク動作条件には、“余白領域指定“設定１００１、“ページ数制限“設定１００２、“しない“設定１００３の選択肢がある。
【００５５】
“余白領域指定”設定１００１の“割合指定”１００４は、ブレイクが発生した時点での余白領域を計算し、余白領域が１００５の指定された値に当てはまる場合に、動的ブレイクを実行する設定である。例えば、図７の項目１００５には、「５０％以下」または「５０％以上」という値を設定することができる。また、“行数指定”１００６は、１ページに１００７の指定数行以上の空白行がある場合に、動的ブレイクが実行される設定である。“余白領域指定”設定１００１が選択された状態で、詳細ボタン１０１０が指示されると、ＵＩコンポーネント１０３の制御により、図１４に示すＵＩが表示される。
【００５６】
“ページ数制限”設定１００２は、項目１００８の設定値に一致するように動的ブレイクを実行させるための設定である。項目１００８に設定可能な値の例としては、「２ページ以上」または「３ページ以下」などが挙げられる。ページ数制限”設定１００２が選択された状態で、詳細ボタン１０１１が指示されると、ＵＩコンポーネント１０３の制御により、図１１に示すＵＩが表示される。
【００５７】
“しない”設定１００３は、動的ブレイクを実行しない設定である。
【００５８】
１００９はＯＫボタンである。“余白領域指定”設定１００１又はページ数制限”設定１００２が選択された状態で、ＯＫボタン１００９が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図８に示すＵＩが表示される。
【００５９】
図８は、本実施形態における動的ブレイク設定ＵＩの一例を示す図である。
【００６０】
この動的ブレイク設定ＵＩは、動的ブレイク設定として、ブレイクを解除するデータの切れ目を指定するための条件を設定するためのものである。
【００６１】
図８に示すように、動的ブレイク設定として指定できる項目としては次の３つの項目がある。
【００６２】
まず、“選択したブレイクキー設定をすべて解除”設定１１０１は、図６により選択されＲＡＭ１２内に保持されるブレイクキーのうち、指定されたブレイクキー（以下、指定ブレイクキー）として選択されたものに関してはブレイクを行わない設定である。例えば、図５に示した帳票５０３のブレイクキー「課」が指定ブレイクキーとして選択されると、ブレイク箇所５０４ではブレイクが行われなくなる。即ち、ブレイクを解除するブレイク箇所を判定するデータ項目をブレイクキーとして設定する。なお、指定ブレイクキーの選択は、選択ボタン１１０４を指示することにより表示される図示しないＵＩにより行うものとする。このＵＩは、例えば、図６により選択されＲＡＭ１２内に保持されるブレイクキーを表示して、該ブレイクキーからユーザに指定ブレイクキーを選択させるものである。なお、このＵＩにより選択された指定ブレイクキーもＲＡＭ１２内に保持される。
【００６３】
また、“先頭ブレイクキー優先”設定１１０２は、末尾の項目からブレイクの解除が行なわれる設定である。この処理は、例えばブレイク処理を実行することにより、指定されたページ数に収まらなくなった場合に有効な処理である。
【００６４】
最後に、“末尾ブレイクキー優先”設定１１０３は、先頭の項目からブレイクの解除が行なわれる設定である。この処理は、例えば、ブレイク処理を実行してもページ数が少ないため、もっとページ数を増やしたいときに有効な処理である。
【００６５】
１１０５は詳細設定ボタンで、この詳細設定ボタン１１０５が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図９に示すＵＩが表示される。
【００６６】
図９は、本実施形態における動的ブレイク実行時処理ＵＩの一例を示す図である。フォーム作成アプリケーションは、図９のＵＩにて入力された区切り処理を解除した箇所に、空行を挿入する処理、区切り処理を解除した箇所の属性を変更する処理、なにも挿入しない処理、のいずれかを設定する。
【００６７】
そして、フォーム作成アプリケーション１２１は、データの変化を判定するデータ項目を変更することにより区切り処理を解除した箇所に対して図９にて設定された処理に基づき出力ページを生成する。
【００６８】
図９に示すように、動的ブレイク実行時処理の設定として大きく分けて３つある。
【００６９】
まず、“固定空行挿入”設定１２０１は、動的ブレイクが実行された場合、そのブレイクで改ページを行わず、１２０４で指定された空行列を表と表の間（即ち、動的ブレイク箇所（改ページが解除された箇所））に挿入する設定である。
【００７０】
また、“罫線変更”設定１２０２は、動的ブレイクが実行された場合、表と表を合体させる際に接合箇所（即ち、動的ブレイク箇所）の罫線属性を１２０５で指定された属性に変更する設定である。
【００７１】
最後に、“なし”設定１２０３は、動的ブレイクが実行された場合、特に処理を行わずに表と表を合体させる（動的ブレイク箇所になにも挿入しない）設定である。
【００７２】
１２０６はＯＫボタンで、このＯＫボタン１２０６が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図１０に示すＵＩが表示される。
【００７３】
図１０は、本実施形態における動的ブレイクキー詳細設定ＵＩの一例を示す図である。
【００７４】
図１０に示すように、動的ブレイクキー詳細設ＵＩでは、以下の３つに関して設定を行う。
【００７５】
まず、“動的ブレイク回数”設定１３０１は、ページ制御を行う回数を指定する設定であり、指定なし／指定ありのいずれかを選択設定可能である。なお、「指定あり」の場合、１３０４に回数を指定する。
【００７６】
また、“動的ブレイク実行対象領域”設定１３０２は、動的ブレイクが発生したと判断するデータ領域を指定する設定であり、前行と比較して変化があれば実行／１３０５で指定される前行数中に変化があれば実行のいずれかを選択設定可能である。
【００７７】
最後に、“動的ブレイクキーを挿入するタイミング”設定１３０３は、動的ブレイクキー指定された全体の文字列の比較か一部の比較の設定であり、全体を比較して変化があれば挿入／一部を比較して変化があれば挿入のいずれかを選択設定可能である。なお、「一部を比較して変化があれば挿入」が選択された場合、１３０６に動的ブレイクキー指定された文字列を比較する先頭からの文字数を指定する。
【００７８】
１３０７はＯＫボタンで、このＯＫボタン１３０７が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、動的ブレイクキー条件の設定が全て終了する。
【００７９】
図１１は、本実施形態におけるページ数設定ＵＩの一例を示す図である。
【００８０】
このページ数設定ＵＩでは、図７に示した動的ブレイク動作条件ＵＩで、“ページ数制限”設定１００２が指定された場合の設定が可能である。
【００８１】
図１１において、１４０１は“デフォルトページ数指定”であり、図７に示した動的ブレイク動作条件ＵＩで、“ページ数制限”設定１００２が指定され、且つ、１００８のページ数が指定されなかった場合に、このページ数がデフォルト値として使用される。即ち、フォーム作成アプリケーションプログラム１２１は、“ページ数制限”設定１００２が指定され、且つ、１００８のページ数が指定されなかった場合には、デフォルトページ数指定１４０１に指定されたデフォルト値に基づいて制御を行う。
【００８２】
１４０２は“オーバーフロー時処理指定”であり、図７の動的ブレイク動作条件ＵＩで“ページ数制限”設定１００２が指定された状態で動的ブレイクを実行したが、どうしても指定ページ数に収まらない場合の動作を「出力」／「エラー」のいずれかに規定する。「出力」はオーバーフロー時でもそのまま出力する設定であり、「エラー」はオーバーフロー時には出力は行わずエラーとする設定である。
【００８３】
１４０５はＯＫボタンで、このＯＫボタン１４０５が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図７のＵＩに表示が戻る。
【００８４】
図１２は、本実施形態の出力設定ＵＩの一例を示す図である。
【００８５】
図１２に示すように、オーバーフロー時の出力設定の選択肢としては３つある。
【００８６】
まず、“警告ダイアログ表示”設定１５０１は、オーバーフロー時に警告設定を行う設定である。また、“ログ出力表示”設定１５０２は、オーバーフロー時に警告設定を行う設定である。最後に、“なにもしない”設定１５０３は、オーバーフロー時もなにもしない設定である。
【００８７】
１５０４はＯＫボタンで、このＯＫボタン１５０４が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図１１のＵＩに表示が戻る。
【００８８】
図１３は、本実施形態におけるエラー設定ＵＩの一例を示す図である。図１に示したＣＰＵ１０により実行される図４に示したＵＩコンポーネント１０３の制御によりディスプレイ１７に表示され、キーボード１６又はマウス１８により入力指示可能となる。
【００８９】
図１３に示すように、オーバーフロー時のエラー設定の選択肢としては３つある。
【００９０】
まず、“エラーダイアログ表示”設定１５０１は、オーバーフロー時にエラーダイアログを表示する設定である。また、“最小ページ数表示”設定１５０２は、オーバーフロー時に最小ページ数（全てのページを収めることが可能なページ数）を表示する設定である。最後に、“なにもしない”設定１５０３は、オーバーフロー時になにもエラー処理を行わない設定である。
【００９１】
１６０４はＯＫボタンで、このＯＫボタン１６０４が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図１１のＵＩに表示が戻る。つまり、フォーム作成アプリケーションは、例えばページ数制限設定の際、ページ数制限に基づいてデータの変化を判定するデータ項目を変更しても、生成される出力ページのページ数がページ数制限を超えてしまう場合の処理を設定されるために図１３を表示する。なお、図１３にて設定可能な処理は、そのまま出力する処理、又は、エラーとする処理がある。そして、フォーム作成アプリケーションは、後述するＳ４２の出力ページ数判定により、データの変化を判定するデータ項目を変更しても出力ページのページ数がページ数制限を超えると判定された場合、図１３で設定された情報に基づき出力ページを生成する。
【００９２】
図１４は、本実施形態における余白領域設定ＵＩの一例を示す図である。
【００９３】
この余白領域設定ＵＩでは、図７に示した動的ブレイク動作条件ＵＩで、“余白領域指定”１００１が指定され動的ブレイクが実行された場合にブレイク解除を実行する。そして、ブレイクキーを変更した場合、変更されたブレイクキーの項目において、データの変化前までのデータを所定の領域内に収めることができないと判定された場合の処理を設定するためのＵＩである。設定可能な処理は、所定の出力領域内にそのまま出力する「そのまま出力」１８０１処理、又は、所定の出力領域を含む出力可能な領域まで出力する「印字領域最大まで出力を行う」１８０３処理である。さらに、動的ブレイクを実行せず、通常のブレイク処理を行う「ブレイクさせる」１８０２も選択できる。
【００９４】
フォーム作成アプリケーション１２１は、データの変化を判定するデータ項目を変更後のデータ項目におけるデータの変化に基づいて、該データの変化前までのデータを所定の領域内に収めることができないか判定する。ここで、所定の領域内に収めることができないと判定された場合、図１４にて設定された内容に基づいて出力する。例えば、図１４のＵＩにて、出力可能な領域まで出力する処理が設定された場合、複数項目からなるデータを出力可能な領域まで配置した出力ページを生成する。
【００９５】
図１４において、１８０１は“そのまま出力”設定であり、ブレイク解除時に、結果データが複数ページにまたがる場合にそのまま出力する設定である。
【００９６】
１８０４はＯＫボタンで、このＯＫボタン１８０４が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存され、図７のＵＩに表示が戻る。なお、この図１４に示した余白設定に応じて後述する余白領域処理が実行される。
【００９７】
以下、図１５〜図２６を参照して、本実施形態における動的ブレイク設定について説明する。
【００９８】
まず、図１５〜図２０を参照して、図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定１１０１が選択された場合のブレイクキー解除動作を具体的に説明する。
【００９９】
図１５〜図２０は、図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定１１０１が選択された場合のブレイクキー解除動作を具体的に説明するための図である。なお、詳細な説明は後述する。
【０１００】
図１５において、２８０１は、本実施形態におけるフォームデータの一例である。なお、本願では図１５のような可変表をフォームデータとして想定している。可変表とは、入力されるレコード数に応じて、表のデータが増加するものである。また。本願に記載のレコードとは、各項目のデータの組み合わせである。例えば、図５の５０２の例では、「Ａ、１、ああ」の組み合わせで構成される１行が１レコードとなる。
【０１０１】
図１６において、２９０１は、図１５に示したフォームデータ２８０１にオーバーレイすべきコンテンツデータの一例である。
【０１０２】
なお、オーバーレイとは、フォームデータの所定の領域に、所定のコンテンツデータをレイアウトする処理を指す。また、本実施形態のオーバーレイ処理は、図６に示したＵＩで指定された項目においてデータが変化した場合、改ページ処理が実行される。
【０１０３】
図１７において、３００１〜３００４は、図１５に示したフォームデータ２８０１に図１６に示したコンテンツデータ２９０１を配置したオーバーレイ処理結果を示す。
【０１０４】
ここで、図８に示した動作ブレイク設定として“選択したブレイクキーのみブレイクをすべて解除“設定１１０１が選択された状態で動的ブレイク処理が実行されると以下、図１８〜図２０に示すようになる。
【０１０５】
そして、「課」をブレイクキーから削除（解除）してオーバーレイ処理を実行すると、図１７に示した用紙の半分近く生じていた余白領域がなくなり、コスト削減を実現することができる。
【０１０６】
なお、図２０の３３０３，３３０４は、動的ブレイクが実行され、表と表とが合体された接合箇所を示す。図２０に示す例は、図９に示した動的ブレイク実行処理ＵＩで“なし”設定１２０３が設定されている場合に対応する。よって、表と表とが合体された接合箇所３３０３，３３０４に特に何の処理も施されていない。
【０１０７】
次に、図２１〜図２３を参照して、図８に示した動的ブレイク設定で“先頭ブレイクキー優先”設定１１０２が選択された場合のブレイクキー解除動作を具体的に説明する。
【０１０８】
図２１〜図２３は、図８に示した動的ブレイク設定で“先頭ブレイクキー優先”設定１１０２が選択された場合のブレイクキー解除動作を具体的に説明する図である。なお、詳細は後述する。
【０１０９】
なお、図２３の３６０３，３６０４は、動的ブレイクが実行され、表と表とが合体された接合箇所を示す。図２３の例は、図９に示した動的ブレイク実行処理ＵＩで“罫線変更”設定１２０２が設定されている場合に対応する。よって、表と表とが合体された接合箇所３６０３，３６０４の罫線変更（ここでは、太い罫線に変更）され、他の罫線と差別化されている。
【０１１０】
次に、図２４〜図２６を参照して、図８に示した動的ブレイク設定で“末尾ブレイクキー優先”設定１１０３が選択された場合のブレイクキー解除動作を具体的に説明する。なお、詳細な説明は後述する。
【０１１１】
なお、図２６の３９０４は、動的ブレイクが実行され、表と表とが合体された接合箇所を示す。図２１の例は、図１３に示した動的ブレイク実行処理ＵＩで“固定空行挿入”設定１２０１が設定されている場合に対応する。よって、表と表とが合体された接合箇所３９０４に空行が挿入されている。
【０１１２】
以下、図２７〜図３３を参照して、本実施形態における余白領域処理について説明する。
【０１１３】
図２７〜図３３は、本実施形態における余白領域処理について具体的に説明する図である。
【０１１４】
図２７に示すようなデータにおいて、「部」「課」がブレイクキーとして指定されていた場合、２つのブレイク箇所２１０１，２１０２がある。このブレイク箇所２１０１，２１０２にて改ページを行うと、図２８に示すように３つのページ２２０１，２２０２，２２０３に分割される。
【０１１５】
ここで、１ページ目２２０１に、図７に示した余白領域指定で指定された割合以上の余白があり、図８に示した動的ブレイク設定で“先頭ブレイク優先“が選択されている場合、上述した通り、末尾から順次ブレイクキーが選択され、ブレイク処理が解除される。つまり、指定ブレイクキーである「部」および「課」において、末尾にある「課」の項目にて発生するブレイク処理は無視される。
【０１１６】
これにより、図２９の２３０１に示すように、ブレイク箇所が１つになり、図２８において２ページ目に配置されていたデータが１ページ目に配置されるようになる。
【０１１７】
この際に、２ページ目に配置されていたデータを１ページ目に生じた余白領域に収めることができるのかを判定する処理を行う。なお、余白領域よりも新たに配置すべきデータの方が大きいため、ページから溢れるる場合を図３０に示す。
【０１１８】
そして、余白領域に収めることができない場合（ページ溢れが発生する場合）、図３１に示すようなＵＩが表示される。なお、このＵＩは図１に示したＣＰＵ１０が図４に示したフォーム作成アプリケーションプログラム１２１を実行することによりディスプレイ１７に表示され、キーボード１６又はマウス１８により入力指示可能に制御される。
【０１１９】
図３１に示すＵＩにおいて、選択された動的ブレイク処理を続行するか、動的ブレイクを変更するかを、“続行”ボタン２４０１，“変更”ボタン２４０２により選択することができる。
【０１２０】
ここで、図３１のＵＩにて“続行”ボタン２４０１が選択された場合、図１４に示した余白領域設定ＵＩで設定済のページ溢れに対する対処法が実行される。また、図３１のＵＩにて“変更”ボタン２４０２が選択された場合、図８に示した動的ブレイク設定ＵＩが表示され、再度、どの動的ブレイク処理を実行するかを選択することが可能となる。
【０１２１】
図３１のＵＩにて“続行”ボタン２４０１が選択され、図１４に示した余白領域設定ＵＩにて“そのまま出力”設定１８０１がなされていた場合は、図３２に示すようになる。即ち、図３２に示すように、ページに設定されている余白領域１３２０１までデータを配置して、残りのデータは次のページへと配置される。なお、図３２において生じている余白領域が図７にて設定した値に一致するのであれば、３ページ目に配置されるべきデータを２ページ目３２０２に配置することになる。しかし、図３２の場合、新たに２ページ目３２０２に配置されるデータはブレイクキーの項目が「Ａ」から「Ｂ」に変化している。このような場合は、ユーザに問い合わせることで次の処理を実行するようにしてもよい。なお、図３２では図２８の３ページ目（２２０３）は省略してある。
【０１２２】
また、図３１のＵＩにて“続行”ボタン２４０１が選択され、図１４に示した余白領域設定ＵＩにて“ブレイクさせる”設定１８０２がなされていた場合は、動的ブレイク処理を無効化したブレイク処理を実行する。よって、図２８に示したようになる。
【０１２３】
また、図３１のＵＩにて“続行”ボタン２４０１が選択され、図１４に示した余白領域設定ＵＩにて“印字領域最大まで出力を行う”設定１８０３がなされていた場合は、図３３に示すようになる。即ち、図３３に示すように、ページに設定されている余白領域を無視し、印字可能領域３３０１までデータを配置して、残りのページは次のページへと配置される。なお、図３３では図２８の３ページ目（２２０３）は省略してある。
【０１２４】
以下、図３４〜図３９のフローチャートを参照して、本実施形態における各種制御処理について説明する。
【０１２５】
図３４は、本発明における第１の制御処理手順の一例を示すフローチャートであり、余白領域条件設定時の全体の処理に対応する。なお、本願のフローチャートの処理は、図１に示したホストコンピュータ１０１のＣＰＵ１０が図４に示したフォーム作成アプリケーションプログラム１２１を実行することにより実現される。また、図３４中、Ｓ４１〜Ｓ４６は各ステップを示す。さらに、本フローチャートの実行前に、図７〜図１４に示した各種ＵＩによる設定は終了しており、各設定値はＲＡＭ１２等に保持されている。なお、本願の情報処理装置は、複数のデータ項目からなるデータにおいて、予め定められたデータ項目におけるデータの変化に応じて区切り処理を実行して出力ページを生成することが可能である。
【０１２６】
フォームとコンテンツが指定され、出力処理（プリンタ１１３への印刷出力処理やディスプレイ１７への表示出力処理等）の開始が指示されると、本フローチャートの処理が開始される。
【０１２７】
まず、ステップＳ４１において、ＣＰＵ１０により実行されるフォーム作成アプリケーション１２１は、動的ブレイク条件として「余白領域指定」が選択されているかチェックする。詳細には、動的ブレイク条件の設定は、予め図７に示したＵＩにより設定されＲＡＭ１２等に保持されているので、フォーム作成アプリケーション１２１が、ＲＡＭ１２を参照することにより、確認可能である。つまり、フォーム作成アプリケーション１２１は、生成される出力ページの制約条件を設定する。
【０１２８】
ステップＳ４１で、動的ブレイク条件として「余白領域指定」が選択されていない場合、フォーム作成アプリケーション１２１は、そのまま処理を終了させる。
【０１２９】
一方、ステップＳ４１で、動的ブレイク条件として「余白領域指定」が選択されている場合、フォーム作成アプリケーション１２１は、ステップＳ４２に処理を進める。そして、フォーム作成アプリケーション１２１は、オーバーレイ処理の結果、生成された出力ページが図７のＵＩにて設定された値（出力ページの制約条件）にあてはまるか判定する。オーバーレイ処理については、ユーザがどのフォームデータに対してどのコンテンツデータをレイアウトするかを設定しており、この設定情報がＲＡＭ１２に記憶されている。よって、フォーム作成アプリケーション１２１は、ＲＡＭ１２に記憶されている内容に従って、指定されたフォームデータに対して、処理対象となるコンテンツデータを読み出してオーバーレイ処理を実行する。さらに、フォーム作成アプリケーション１２１は、該オーバーレイ処理結果に基づく出力データを生成してＲＡＭ１２上に格納する。Ｓ４２の判定処理の一例としては、出力ページの各ページにおいて、データが配置されていない余白サイズを判定する処理である。そして、この判定処理により、フォーム作成アプリケーション１２１は、判定された余白サイズが図のＵＩにて設定された出力ページの余白領域制限を超える場合、データの変化を判定するデータ項目を変更するため、Ｓ４３への処理へと進む。または、Ｓ４２の判定処理の一例としては、出力ページのページ数を判定する処理である。そして、この判定処理により、フォーム作成アプリケーション１２１は、判定された出力ページのページ数がページ数制限を超える場合、データの変化を判定するデータ項目を変更するため、Ｓ４３へと処理を進める。なお、判定処理の基準となる例えば、制約条件としての余白領域制限や出力ページのページ数制限は、図７のＵＩにて設定可能である。
【０１３０】
なお、オーバーレイとは、フォームデータの所定の領域に、所定のコンテンツデータをレイアウトする処理を指す。そして、動的ブレイク処理が設定されていない場合、フォーム作成アプリケーション１２１は、指定された項目においてデータが変化した場合、改ページ処理を実行する。
【０１３１】
例えば、図２７では、項目「部」が指定項目であるとする。図２７の「部」の縦方向の列では、７および８行目間においてデータが変化している。よって、７行目までのデータが１ページ目に配置され、８行目以降のデータは２ページ目に配置される。
【０１３２】
そして、上述したようにオーバーレイ処理を実行した結果、フォーム作成アプリケーション１２１は、各ページにおいて生じた余白量を計算する。計算方法の一例としては、フォーム作成アプリケーション１２１はフォーム１行分の高さを認識している。そして、改ページ処理が発生するまでに流し込むべきデータ行数が決まると、「データ行数×フォーム１行分の高さ」を計算することによって、オーバーレイ処理済みのフォームサイズが認識できる。この認識したオーバーレイ処理済みのフォームサイズを用紙サイズから減算することにより余白サイズが決定される。そして、決定された余白サイズと動的ブレイク処理を実行するために設定された余白サイズの閾値（ＲＡＭ１２に保持される図７のＵＩ設定値に基づく）を比較することで、ステップＳ４２の処理が可能となる。
【０１３３】
ステップＳ４２の判定処理で、フォーム作成アプリケーション１２１が、生成された出力ページが図７のＵＩにて設定された値（出力ページの制約条件）にあてはまる判定された場合、処理を終了させる。なお、この場合、フォーム作成アプリケーション１２１は、ＲＡＭ１２上に保持された出力データをプリンタ１１３やディスプレイ１７等に出力するように制御する。
【０１３４】
一方、ステップＳ４２の判定処理で、フォーム作成アプリケーション１２１が、生成された出力ページが図７のＵＩにて設定された値にあてはまらない場合、ステップＳ４３に処理を進め、選択されている動的ブレイク方法に従って処理を分岐させる。なお、動的ブレイク方法には、図８に示したように、ブレイク設定解除、先頭ブレイク優先、末尾ブレイク優先が挙げられる。つまり、フォーム作成アプリケーション１２１は、データの変化を判定するデータ項目を変更する方法を図７のＵＩを介して入力された値を設定する。そして、後述するＳ４３移行の処理において、フォーム作成アプリケーション１２１は、設定されたデータの変化を判定するデータ項目を変更する方法に基づいて、データの変化を判定するデータ項目を変更する。
【０１３５】
フォーム作成アプリケーション１２１は、図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクをすべて解除”が設定されていると判断した場合には、ステップＳ４４のブレイク解除時動的ブレイク処理（図３６）を実行するように制御する。そして、ステップＳ４４のブレイク解除時動的ブレイク処理が終了後、本フローチャートの処理を終了させる。つまり、データの変化を判定するデータ項目を変更する方法は、前記区切り処理を解除するデータ項目を指定し、該区切り処理を解除するように指定されたデータ項目におけるデータの変化に応じた区切り処理を解除する方法が挙げられる。フォーム作成アプリケーション１２１は、“選択したブレイクキーのみブレイクをすべて解除”が設定された場合、ブレイク処理を解除するように指定されたデータ項目におけるデータの変化に応じた区切り処理を解除する。
【０１３６】
また、フォーム作成アプリケーション１２１は、図８に示した動的ブレイク設定で“先頭ブレイクキー優先”が設定されていると判断した場合には、ステップＳ４５の先頭ブレイク優先時動的ブレイク処理（図３７）を実行するように制御する。そして、ステップＳ４５の先頭ブレイク優先時動的ブレイク処理が終了後、本フローチャートの処理を終了させる。
【０１３７】
また、フォーム作成アプリケーション１２１は、図８に示した動的ブレイク設定で“末尾ブレイクキー優先”が設定されていると判断した場合には、ステップＳ４６の末尾ブレイク優先時動的ブレイク処理（図３８）を実行するように制御する。そして、ステップＳ４６の末尾ブレイク優先時動的ブレイク処理が終了後、本フローチャートの処理を終了させる。なお、この場合、フォーム作成アプリケーション１２１は、ＲＡＭ１２上に保持された出力データをプリンタ１１３やディスプレイ１７等に出力するように制御する。
【０１３８】
つまり、データの変化を判定するデータ項目変更する方法は、データの変化を判定するデータ項目の優先順位を指定し、該優先順位に基づく順序で該データ項目におけるデータの変化に応じた区切り処理を解除する方法も挙げられる。なお、ここに記述した優先順位とは、図６のＵＩにて設定した順位でもあり、先頭ブレイク優先が設定された場合は、先頭項目ほど優先順位が高くなる。一方、末尾ブレイク優先が設定された場合は、末尾項目ほど優先順位が高くなる。そしれ、フォーム作成アプリケーション１２１は、優先順位に基づく順序で該データ項目におけるデータの変化に応じた区切り処理を解除する。
【０１３９】
つまり、フォーム作成アプリケーション１２１は、Ｓ４２にて生成された出力ページが図７の設定ＵＩにより設定された出力ページの制約条件にあてはまらない場合、Ｓ４４からＳ４６の処理を用いてデータの変化を判定するデータ項目を変更する。
【０１４０】
図３５は、本発明における第１の制御処理手順の一例を示すフローチャートであり、ページ数指定条件設定時の全体の処理に対応する。また、図３５中、Ｓ５１〜Ｓ５６は各ステップを示す。さらに、本フローチャートの実行前に、図７〜図１４に示した各種ＵＩによる設定は終了しており、各設定値はＲＡＭ１２等に保持されている。
【０１４１】
まず、ステップＳ５１において、ＣＰＵ１０により実行されるフォーム作成アプリケーション１２１は、動的ブレイク条件として「ページ数制限」が選択されているかチェックする。詳細には、動的ブレイク条件の設定は、予め図７に示したＵＩにより設定されＲＡＭ１２等に保持されているので、フォーム作成アプリケーション１２１が、ＲＡＭ１２を参照することにより、確認可能である。
【０１４２】
ステップＳ５１で、動的ブレイク条件として「ページ数制限」が選択されていないと判断した場合には、フォーム作成アプリケーション１２１は、そのまま処理を終了する。
【０１４３】
一方、ステップＳ５１で、動的ブレイク条件として「ページ数制限」が選択されている場合、フォーム作成アプリケーション１２１は、ステップＳ５２に処理を進める。そして、フォーム作成アプリケーション１２１は、オーバーレイ処理の結果、生成された出力ページが図７のＵＩにて設定された値（出力ページの制約条件）にあてはまるか判定する。オーバーレイ処理については、上述したため、省略する。そして、フォーム作成アプリケーション１２１は、該出力データのページ数を計算して、ＲＡＭ１２の制限ページ数と比較することにより、Ｓ５２の処理が可能となる。
【０１４４】
ステップＳ５２で、オーバーレイ処理後のページ数が図７の設定ＵＩにて設定された値に当てはまる場合、処理を終了させる。なお、この場合、フォーム作成アプリケーション１２１は、ＲＡＭ１２上に保持された出力データをプリンタ１１３やディスプレイ１７等に出力するように制御する。
【０１４５】
一方、ステップＳ５２で、フォーム作成アプリケーション１２１が、オーバーレイ処理後のページ数が図７の設定ＵＩにて設定した値に当てはまらないと判断された場合には、ステップＳ５３に処理を進める。
【０１４６】
ステップＳ５３において、フォーム作成アプリケーション１２１は、選択されている動的ブレイク方法に従って処理を分岐させる。なお、動的ブレイク方法には、図８に示したように、ブレイク設定解除、先頭ブレイク優先、末尾ブレイク優先が挙げられる。なお、Ｓ５３からＳ５６の処理は、図３４のＳ４３からＳ４６の処理と同様であるため詳細な説明は省略する。
【０１４７】
そして、ステップＳ５７において、フォーム作成アプリケーション１２１は、動的ブレイク処理の結果、図７にて指定された値に当てはまるかチェックする。なお、ステップＳ５７の処理は、ステップＳ５２の処理と同様である。
【０１４８】
ステップＳ５７で、フォーム作成アプリケーション１２１が、動的ブレイク処理後のページ数が図７の設定ＵＩにて設定された値に当てはまると判断した場合には、そのまま処理を終了する。
【０１４９】
一方、ステップＳ５７で、フォーム作成アプリケーション１２１が、動的ブレイク処理後のページ数が図７の設定ＵＩにて設定された値に当てはまらないと判断した場合、データオーバーフロー時処理を行う。詳細には、フォーム作成アプリケーション１２１は、図１１のＵＩで設定したオーバーフロー時処理指定が“出力”となっていた場合には、図１２に示した出力設定に従って処理を行う。例えば、出力設定の“警告ダイアログ表示”が有効に設定されていた場合には、フォーム作成アプリケーション１２１は、図示しない警告ダイアログをディスプレイ１７に表示制御する。また、出力設定の“ログ出力”が有効に設定されていた場合には、フォーム作成アプリケーション１２１は、ログをＨＤドライブ１５に出力制御する。また、出力設定の“なにもしない”が有効に設定されていた場合には、フォーム作成アプリケーション１２１は、特に処理は行わない。
【０１５０】
一方、図１１に示したオーバーフロー時処理指定が“エラー”となっていた場合には、図１３に示したエラー設定に従って処理を行う。例えば、エラー設定の“エラーダイアログ表示”が有効に設定されていた場合には、フォーム作成アプリケーション１２１は、図示しないエラーダイアログをディスプレイ１７に表示制御する。また、エラー設定の“最小ページ数表示”が有効に設定されていた場合には、フォーム作成アプリケーション１２１は、最小ページ数（オーバーフロー時のページ数）を表示する図示しないダイアログをディスプレイ１７に表示制御する。また、エラー設定の“なにもしない”が有効に設定されていた場合には、フォーム作成アプリケーション１２１は、特に処理は行わない。
【０１５１】
なお、上記オーバーフロー時処理指定が“出力”の場合、本フローチャートの処理終了後、フォーム作成アプリケーション１２１は、ＲＡＭ１２上に保持された出力データをプリンタ１１３やディスプレイ１７等に出力するように制御する。一方、上記オーバーフロー時処理指定が“エラー”の場合、フォーム作成アプリケーション１２１は、ＲＡＭ１２上に保持された出力データのプリンタ１１３やディスプレイ１７等への出力は行わない。
【０１５２】
図３５に示したように、オーバーレイの処理結果が、図７にて指定された値に当てはまらない場合（Ｓ５２−Ｎｏ）、動的ブレイク処理を実行して、改ページすべき項目を動的に変更すること出力結果を変更することが可能となる。また、動的ブレイク処理を実行してもユーザが所望とする出力結果を得られない場合（Ｓ５７−Ｎｏ）は、データオーバーフロー処理を実行することで対応する。このように２段階の判定処理を用いることで、可能な限りユーザが指定したページ数に収まるようにコンテンツデータを配置するため、リソースを浪費する可能性を低減することができる。
【０１５３】
図３６は、本発明における第３の制御処理手順の一例を示すフローチャートであり、図３４のステップＳ４４に示した動的ブレイク動作条件が余白領域指定時のブレイク解除時動的ブレイク処理に対応する。また、図３６中、Ｓ６１〜Ｓ６ｂは各ステップを示す。
【０１５４】
まず、ステップＳ６１において、フォーム作成アプリケーション１２１は、設定されている指定ブレイクキーを解析する。指定ブレイクキーは、予め図８に示したＵＩの選択ボタン１１０４を指示することにより表示されるＵＩで選択設定されＲＡＭ１２に保持されている。よって、フォーム作成アプリケーション１２１は、ＲＡＭ１２を参照することで指定ブレイクキーを解析することができる。
【０１５５】
次に、ステップＳ６２において、フォーム作成アプリケーション１２１は、指定されたブレイクキーがＲＡＭ１２に記憶されているか否かを判定する。ステップＳ６２で、フォーム作成アプリケーション１２１は、ブレイクキーが存在しないと判定した場合、本フローチャートの処理を終了させる。
【０１５６】
一方、ステップＳ６２で、ブレイクキーが存在すると判定した場合、ステップＳ６３において、フォーム作成アプリケーション１２１は、指定されているブレイクキーを全てＲＡＭ１２内にあるブレイク解除するブレイクキーテーブルに登録する。
【０１５７】
次に、ステップＳ６４において、フォーム作成アプリケーション１２１は、ブレイク解除するブレイクキーテーブルにブレイクキーが登録されている（存在する）か否かを判定する。
【０１５８】
そして、ステップＳ６４で、フォーム作成アプリケーション１２１は、ブレイク解除するブレイクキーテーブルにブレイクキーが登録されていないと判断した場合には、そのまま本フローチャートの処理を終了させる。
【０１５９】
一方、ステップＳ６４で、フォーム作成アプリケーション１２１は、ブレイク解除するブレイクキーテーブルにブレイクキーが登録されている場合には、ステップＳ６５においてブレイクキーテーブルからブレイクを解除するブレイクキーを１つ選択する。詳細には、フォーム作成アプリケーション１２１が、ブレイク解除するブレイクキーテーブルに登録されているブレイクキーをディスプレイ１７に表示して、ユーザによりブレイクキーを選択させる。そして、フォーム作成アプリケーション１２１が、該ユーザにより選択されたブレイクキーを認識することでステップＳ６５の処理が実行される。
【０１６０】
次に、ステップＳ６６において、フォーム作成アプリケーション１２１は、ステップＳ６５で選択されたブレイクキーにおける改ページブレイクを全て解除する。つまり、フォーム作成アプリケーション１２１は、図３４のＳ４２でＲＡＭ１２内に保持されている出力データを編集し、ステップＳ６５で選択されたブレイクキーに属する項目データで発生するブレイク箇所に挿入された改ページを全て解除（削除）する。即ち、出力するデータにおいて、改ページする箇所を変更する。これにより、ステップＳ６５で選択されたブレイクキーの項目におけるデータにブレイクが発生する（データが変更される箇所があった）としても、ブレイク発生に伴う改ページ処理が行われなくなる。
【０１６１】
次にステップＳ６７において、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されているか否かを判断する。なお、動的ブレイク実行時処理の指定は、図９に示したＵＩにより行われ、ＲＡＭ１２内に格納されているので、フォーム作成アプリケーション１２１がＲＡＭ１２を参照することにより、Ｓ６７の処理が可能となる。
【０１６２】
そして、ステップＳ６７で、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されていないと判断した場合には、そのままステップＳ６９に処理を進める。
【０１６３】
一方、ステップＳ６７で、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されていると判断した場合には、ステップＳ６８に処理を進め、該動的ブレイク実行時処理の設定に従って、動的ブレイク実行時処理を実行する。詳細には、動的プレイク実行時処理に“固定空行挿入”が指定されている場合、フォーム作成アプリケーション１２１は、ＲＡＭ１２内の出力データからステップＳ６６でページブレイクを解除した箇所に指定行数の空行を挿入するように編集制御する。なお、その結果の一例が、図２６である。また、動的プレイク実行時処理に“罫線変更”が指定されている場合、フォーム作成アプリケーション１２１は、ＲＡＭ１２内の出力データからステップＳ６６でページブレイクを解除した箇所の罫線を指定された罫線に変更するように編集制御する。なお、その結果の一例が、図２３である。また、動的プレイク実行時処理に“なし”が指定されている場合、フォーム作成アプリケーション１２１は、特に処理は行わない（その結果の一例が、図２０である）。
【０１６４】
そして、ステップＳ６９において、フォーム作成アプリケーション１２１は、ステップＳ６５にて選択されたブレイクキーをブレイク解除テーブルから削除する。
【０１６５】
次に、ステップＳ６ａにおいて、フォーム作成アプリケーション１２１は、ステップＳ６６の改ページブレイクの解除結果、ステップＳ６８の動的ブレイク実行時処理結果に基づいて、ＲＡＭ１２内の出力データの全ページを再編集処理する。この再編集処理では、上記Ｓ６６，Ｓ６８の各処理を実行したことにより生じる不具合を修正する。例えば、上記Ｓ６６，Ｓ６８の各処理により、全体のページ数情報等と差分が生まれてしまう場合、それらの情報をＲＡＭ１２上で更新する。この処理により、ステップＳ６５で選択されたブレイクキーに属するデータにおいて、ブレイクが発生するとしても、ブレイク発生に伴う改ページ処理が実行されない出力データがＲＡＭ１２上に保持されることになる。
【０１６６】
次に、ステップＳ６ｂにおいて、フォーム作成アプリケーション１２１は、ステップＳ６ａの再編集結果の各出力ぺージの余白領域を計算し、図７のＵＩにて設定された値にあてはまるか否かを判定する。
【０１６７】
そして、ステップＳ６ｂで、フォーム作成アプリケーション１２１は、ステップＳ６ａの再編集結果の出力ぺージが、図７のＵＩにて設定された値にあてはまらないと判定された場合、ステップＳ６４に処理を戻す。そしてステップＳ６４〜Ｓ６ｂの処理を繰り返す。
【０１６８】
一方、ステップＳ６ｂで、フォーム作成アプリケーション１２１は、ステップＳ６ａの再編集結果の出力ページが、図７のＵＩにて設定された値にあてはまると判断した場合には、そのまま本フローチャートの処理を終了させる。
【０１６９】
なお、図３５のステップＳ５４に示した動的ブレイク動作条件がページ数制限時のブレイク解除時動的ブレイク処理は、上記図３６に示したフローチャートのステップＳ６ｂを、以下のように変更したものとなる。例えば、フォーム作成アプリケーション１２１が、ステップＳ６ａの再編集結果のページ数を計算し、図７のＵＩにて設定された値にあてはまるか否かを判定する。そして、フォーム作成アプリケーション１２１が、ステップＳ６ａの再編集結果が図７のＵＩにて設定された値にあてはまらないと判断した場合には、ステップＳ６４に処理を戻す。そしてステップＳ６４〜Ｓ６ｂの処理を図７のＵＩにて設定された値にあてはまるまで繰り返す。一方、フォーム作成アプリケーション１２１は、ステップＳ６ａの再編集結果が動的ブレイク動作条件での指定ページ数を超えないと判断した場合には、そのままフローチャートの処理を終了させる。以上の変更により、図３６のフローチャートは、図３５のステップＳ５４に示した動的ブレイク動作条件がページ数制限時のブレイク解除時動的ブレイク処理に適用可能である。
【０１７０】
上述した図１５〜図２０を用いてブレイク解除時動的ブレイク処理の具体例を示す。
【０１７１】
図１５のフォームデータ２８０１には、項目として「センター」、「部」、「課」、「氏名」があり、ここで、図６に示した動的ブレイクキー選択ＵＩによりブレイクキーとして「部」２８０２，「課」２８０３が選択されたものとする。
【０１７２】
図１６のコンテンツデータ２９０１を参照すると、指定されたブレイクキー２８０２，２８０３に該当する項目において、２９０２，２９０３，２９０４の位置でブレイク（データの変更）が発生しているため、改ページ処理が実行される。よって、フォームデータ２８０１にコンテンツデータ２９０１をオーバーレイ処理した結果は、図１７に示すとおりになる。
【０１７３】
図１７を参照すると、オーバーレイの処理結果、３００１〜３００４の４ページ分のデータが生成されている。しかしながら、各ページには用紙に対して半分近い余白が発生しているためコストを浪費する恐れがある。
【０１７４】
ここで、図３６に示したブレイク解除時動的ブレイク処理を実行する。そして、図３６のステップＳ６５において、図１５に示した「課」の項目についてのブレイクキー２８０３を解除するブレイクキーとして選択する。そして、ステップＳ６６において、該選択されたブレイクキーの改ページブレイクが全て解除されると、その結果、図１９のように、コンテンツデータ３２０１では、ブレイク処理が発生する箇所は３２０２に示す１箇所となる。よって、ステップＳ６ａで再編集された結果は、図２０に示すように、３３０１，３３０２の２ページ分のデータとなる。この結果、図１７に示した用紙の半分近く生じていた余白領域がなくなり、コスト削減を実現することができる。
【０１７５】
図３７は、本発明における第４の制御処理手順の一例を示すフローチャートであり、図３４のステップＳ４５に示した動的ブレイク動作条件が余白領域指定時の先頭ブレイク優先時動的ブレイク処理に対応する。なお、図３７中、Ｓ７１〜Ｓ７ｃは各ステップを示す。
【０１７６】
ステップＳ７１において、フォーム作成アプリケーション１２１は、ブレイクキーを先頭から順番を保持して、動的ブレイクキーテーブルに保持する。なお、先頭とはフォームデータのデータ項目において、所定の設定条件に従い先頭項目を特定する。例えば、図１５のようなフォームデータを対象とする場合、左の項目から先頭とすることが指定されていると、先頭項目は「センター」であり、「部」、「課」、「氏名」と続く。
【０１７７】
次に、ステップＳ７２において、フォーム作成アプリケーション１２１は、動的ブレイクテーブルにブレイクキーが存在するか否か判断する。
【０１７８】
そして、ステップＳ７２で、フォーム作成アプリケーション１２１は、動的ブレイクテーブルにブレイクキーが存在しない場合には、そのまま本フローチャートの処理を終了させる。
【０１７９】
一方、ステップＳ７２で、フォーム作成アプリケーション１２１は、動的ブレイクテーブルにブレイクキーが存在する場合、ステップＳ７３において、動的ブレイクテーブルにおいて末尾ブレイクキーとして記憶されているブレイクキーを選択する。つまり、図１５の例では「氏名」が末尾ブレイクキーに相当する。
【０１８０】
ステップＳ７５において、フォーム作成アプリケーション１２１は、選択されたフォームデータに配置すべきコンテンツデータを読み出し、ステップＳ７３で選択されたブレイクキーの項目に流し込むべきデータを解析し、ブレイク箇所が存在するか判断する。
【０１８１】
そして、ステップＳ７５で、フォーム作成アプリケーション１２１は、ブレイク箇所が存在しないと判断した場合には、ステップＳ７４において、ステップＳ７３で選択したブレイクキーをテーブルから削除し、ステップＳ７２に処理を戻す。
【０１８２】
一方、ステップＳ７５で、フォーム作成アプリケーション１２１は、ブレイク箇所が存在すると判断した場合には、ステップＳ７６において、ステップＳ７５で確認されたいずれかの１つのブレイク箇所に対する余白領域処理を実行する。この余白領域処理では、該ブレイク箇所のブレイク解除を実行することによりページ溢れが発生する場合の処理が行われ、該ブレイク箇所のブレイク解除を実行するか否かが決定される。なお、余白領域処理については図３９を用いて後述する。
【０１８３】
次に、ステップＳ７７において、フォーム作成アプリケーション１２１は、ステップＳ７６の余白領域処理結果に基づいて、ブレイク解除を実行するか否かを判断する。
【０１８４】
そして、ステップＳ７７で、フォーム作成アプリケーション１２１は、ブレイク解除を実行しないと判断した場合には、ステップＳ７ｃへ処理を進める。
【０１８５】
一方、ステップＳ７７で、フォーム作成アプリケーション１２１は、ブレイク解除を実行すると判断した場合には、ステップＳ７８へ処理を進める。
【０１８６】
次に、ステップＳ７８において、フォーム作成アプリケーション１２１は、ステップＳ７３で選択されたブレイクキーにおける改ページブレイクを１つ解除する。つまり、フォーム作成アプリケーション１２１は、ＲＡＭ１２内の出力データを編集し、ステップＳ７６で余白領域処理を実行したブレイク箇所に挿入されている改ページを１つ解除（削除）する。即ち、出力するデータを改ページする箇所を変更する。
【０１８７】
次にステップＳ７９において、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されているか否かを判断する。なお、動的ブレイク実行時処理の指定は、図９に示したＵＩにより行われ、ＲＡＭ１２内に格納されているので、フォーム作成アプリケーション１２１がＲＡＭ１２を参照することにより、Ｓ７９の処理が可能となる。
【０１８８】
そして、ステップＳ７９で、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されていないと判断した場合には、そのままステップＳ７ｂに処理を進める。
【０１８９】
一方、ステップＳ７９で、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されていると判断した場合には、ステップＳ７ａに処理を進め、該動的ブレイク実行時処理の設定に従って、動的ブレイク実行時処理を実行する。なお、Ｓ７ａの詳細は、図３６のＳ６８にて説明したため、省略する。
【０１９０】
次に、ステップＳ７ｂにおいて、フォーム作成アプリケーション１２１は、ステップＳ７６，Ｓ７８，Ｓ７ａの処理の結果に基づいて、ＲＡＭ１２内の出力データの全ページを再編集処理する。この再編集処理では、上記ステップＳ７６，Ｓ７８，Ｓ７ａの各処理を実行したことにより生じる不具合を修正する。例えば、上記ステップＳ７６，Ｓ７８，Ｓ７ａの各処理により、全体のページ数情報等と差分が生まれてしまう場合、それらの情報をＲＡＭ１２上で更新する。
【０１９１】
次に、ステップＳ７ｃにおいて、フォーム作成アプリケーション１２１は、ステップＳ７ｂの再編集結果の各出力ぺージの余白領域を計算し、図７のＵＩにて設定された値にあてはまるか否かを判定する（末尾（最終ページ）を除く）。
【０１９２】
そして、ステップＳ７ｃで、フォーム作成アプリケーション１２１は、ステップＳ７ｂの再編集結果の出力ぺージが、図７のＵＩにて設定された値にあてはまらないと判断した場合には、次の項目をブレイクキーとする。図１５の例では、「氏名」が最初の対象となっていたため、次は「課」がブレイクキーとなる。ステップＳ７５に処理を戻す。そして、ステップＳ７５〜Ｓ７ｃの処理を図７のＵＩにて設定された値にあてはまるまで繰り返す。なお、ステップＳ７５のブレイク箇所存在の判定処理では、ステップＳ７７で一度、ブレイク解除しないと判定されたブレイク箇所については含めないものとする。
【０１９３】
一方、ステップＳ７ｃで、フォーム作成アプリケーション１２１は、ステップＳ７ｂの再編集結果の出力ぺージが、図７のＵＩにて設定された値にあてはまると判断した場合には、そのまま本フローチャートの処理を終了させる。
【０１９４】
以上示した図３７の処理を実行することで、ユーザが所望とする項目におけるブレイク処理は有効としながら、改ページ処理により発生する余白領域の無駄を省くことが可能となり、効率的な処理を実行できる。また、動的ブレイク処理により図３０のようなページ溢れが発生しても、ユーザにページ溢れを通知することができ、ユーザはページ溢れを防ぎたい場合、異なる動的ブレイク処理に変更することが可能となる。また、先頭項目を優先とするのみで、項目を１つ１つ設定することなく動的ブレイク処理を行うことができるため、例えば項目数が膨大なフォームデータを対象とする場合に便利である。
【０１９５】
なお、図３５のステップＳ５５に示した動的ブレイク動作条件がページ数制限時の先頭ブレイク優先時動的ブレイク処理は、上記図３７に示したフローチャートのステップＳ７６，Ｓ７７を削除し、ステップＳ７ｃを、以下のように変更したものとなる。例えば、フォーム作成アプリケーション１２１が、ステップＳ７ｂの再編集結果のページ数を計算し、図７のＵＩにて設定された値にあてはまるか否かを判定する。そして、フォーム作成アプリケーション１２１が、ステップＳ７ｂの再編集結果が図７のＵＩにて設定された値にあてはまらないと判断した場合には、ステップＳ７５に処理を戻す。そしてステップＳ７５〜Ｓ７ｃの処理を繰り返す。一方、フォーム作成アプリケーション１２１は、ステップＳ７ｂの再編集結果が図７のＵＩにて設定された値にあてはまると判断した場合には、そのまま本フローチャートの処理を終了させる。以上の変更により、図３７のフローチャートは、図３５のステップＳ５５に示した動的ブレイク動作条件がページ数制限時の先頭ブレイク優先時動的ブレイク処理に適用可能である。
【０１９６】
これにより、ユーザが所望とする項目におけるブレイク処理は有効としながら、指定されたページ数制限に収めることが可能となり、効率的な処理を実行できる。
【０１９７】
なお、図３７では、ステップＳ７８において、ステップＳ７３で選択したブレイクキーの改ページブレイクを１つ解除する構成について説明した。しかし、ステップＳ７８において、ステップＳ７３で選択したブレイクキーの改ページブレイクを全て解除するように構成してもよい。
【０１９８】
以下、上記図３７に示した先頭ブレイク優先時動的ブレイク処理を図２１〜図２３を用いて説明する。
【０１９９】
図２１に示すように、図６に示した動的ブレイクキー選択ＵＩにより、フォームデータ３４０１のブレイクキーとして「部」３４０２および「課」３４０３が選択され、「部」３４０２，「課」３４０３の順に優先順位が設定されているものとする。“先頭ブレイク優先”設定の場合、末尾のブレイクキーから削除（解除）されるため、「課」３４０３が削除されることとなる。
【０２００】
よって、「課」の項目で発生するブレイク処理は無視されるので、図２２に示すように、コンテンツデータ３５０１においてブレイクする箇所は３５０２の１箇所となる。その結果、動的ブレイク処理を実行しない場合には、上述した図１７のように４ページ分のデータが生成されていたが、“先頭ブレイク優先”設定の動的ブレイク処理を実行することで、図２３の３６０１，３６０１のように、２ページに収めることが可能となる。この結果、効率的な印刷処理を実行することが可能となる。
【０２０１】
図３８は、本発明における第５の制御処理手順の一例を示すフローチャートであり、図３４のステップＳ４６に示した動的ブレイク動作条件が余白領域指定時の末尾ブレイク優先時動的ブレイク処理に対応する。なお、図３８中、Ｓ８１〜Ｓ８ｃは各ステップを示す。
【０２０２】
ステップＳ８１において、フォーム作成アプリケーション１２１は、ブレイクキーを末尾から順番を保持して、動的ブレイクキーテーブルに保持する。なお、末尾とはフォームデータのデータ項目において、所定の設定条件に従い先頭項目を特定する。例えば、図１５のようなフォームデータを対象とする場合、左の項目から先頭とすることが指定されていると、先頭項目は「氏名」であり、「課」、「部」、「センター」と続く。
【０２０３】
次に、ステップＳ８２において、フォーム作成アプリケーション１２１は、動的ブレイクテーブルにブレイクキーが存在するか否か判断する。
【０２０４】
そして、ステップＳ８２で、フォーム作成アプリケーション１２１は、動的ブレイクテーブルにブレイクキーが存在しない場合には、そのまま本フローチャートの処理を終了させる。
【０２０５】
一方、ステップＳ８２で、フォーム作成アプリケーション１２１は、動的ブレイクテーブルにブレイクキーが存在する場合、ステップＳ８３において、動的ブレイクテーブルにおいて先頭ブレイクキーとして記憶されているブレイクキーを選択する。なお、図１５の  例では、「センター」が該当する。
【０２０６】
ステップＳ８５において、フォーム作成アプリケーション１２１は、選択されたフォームデータに配置すべきコンテンツデータを読み出し、ステップＳ８３で選択されたブレイクキーの項目に流し込むべきデータを解析し、ブレイク箇所が存在するか判断する。
【０２０７】
そして、ステップＳ８５で、フォーム作成アプリケーション１２１は、ブレイク箇所が存在しないと判断した場合には、ステップＳ８４において、ステップＳ８３で選択したブレイクキーをテーブルから削除し、ステップＳ８２に処理を戻す。
【０２０８】
一方、ステップＳ８５で、フォーム作成アプリケーション１２１は、ブレイク箇所が存在すると判断した場合には、ステップＳ８６において、ステップＳ８５で確認されたいずれかの１つのブレイク箇所に対する余白領域処理を実行する。なお、詳細な説明は図３７のＳ７６と同等であるため省略する。
【０２０９】
次に、ステップＳ８７において、フォーム作成アプリケーション１２１は、ステップＳ８６の余白領域処理結果に基づいて、ブレイク解除を実行するか否かを判断する。
【０２１０】
そして、ステップＳ８７で、フォーム作成アプリケーション１２１は、ブレイク解除を実行しないと判断した場合には、ステップＳ８ｃへ処理を進める。
【０２１１】
一方、ステップＳ８７で、フォーム作成アプリケーション１２１は、ブレイク解除を実行すると判断した場合には、ステップＳ７８へ処理を進める。
【０２１２】
次に、ステップＳ８８において、フォーム作成アプリケーション１２１は、ステップＳ８３で選択されたブレイクキーにおける改ページブレイクを１つ解除する。つまり、フォーム作成アプリケーション１２１は、ＲＡＭ１２内の出力データを編集し、ステップＳ８６で余白領域処理したブレイク箇所に挿入されている改ページを１つ解除（削除）する。即ち、出力するデータを改ページする箇所を変更する。
【０２１３】
次にステップＳ８９において、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されているか否かを判断する。なお、動的ブレイク実行時処理の指定は、図９に示したＵＩにより行われ、ＲＡＭ１２内に格納されているので、フォーム作成アプリケーション１２１がＲＡＭ１２を参照することにより、Ｓ８９の処理が可能となる。
【０２１４】
そして、ステップＳ８９で、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されていないと判断した場合には、そのままステップＳ７ｂに処理を進める。
【０２１５】
一方、ステップＳ８９で、フォーム作成アプリケーション１２１は、動的ブレイク実行時処理が指定されていると判断した場合には、ステップＳ８ａに処理を進め、該動的ブレイク実行時処理の設定に従って、動的ブレイク実行時処理を実行する。なお、詳細な説明は、図３６のＳ６８にて説明したため、省略する。
【０２１６】
次に、ステップＳ８ｂにおいて、フォーム作成アプリケーション１２１は、ステップＳ８６，Ｓ８８，Ｓ８ａの処理の結果に基づいて、ＲＡＭ１２内の出力データの全ページを再編集処理する。Ｓ８ｂの処理は、Ｓ７ｂの処理とほぼ同様である。
【０２１７】
次に、ステップＳ８ｃにおいて、フォーム作成アプリケーション１２１は、ステップＳ７ｂの再編集結果の各出力ぺージの余白領域を計算し、図７のＵＩにて設定された値にあてはまるか否かを判定する。
【０２１８】
そして、ステップＳ８ｃで、フォーム作成アプリケーション１２１は、ステップＳ８ｂの再編集結果の出力ぺージが、図７のＵＩにて設定された値にあてはまらないと判断した場合には、次の項目をブレイクキーと設定してステップＳ８５に処理を戻す。図１５の例では、最初に先頭項目の「センター」をブレイクキーとしたため、次の項目である「部」をブレイクキーとする。そして、ステップＳ８５〜Ｓ８ｃの処理を図７のＵＩにて設定された値にあてはまるまで繰り返す。なお、ステップＳ８５のブレイク箇所存在の判定処理では、ステップＳ８７で一度、ブレイク解除しないと判定されたブレイク箇所については含めないものとする。
【０２１９】
一方、ステップＳ８ｃで、フォーム作成アプリケーション１２１は、ステップＳ８ｂの再編集結果の出力ぺージが、図７のＵＩにて設定された値にあてはまると判断された場合には、そのまま本フローチャートの処理を終了させる。
【０２２０】
以上示した図３８の処理を実行することで、ユーザが所望とする項目におけるブレイク処理は有効としながら、ユーザが所望とする出力結果を得ることが可能となる。
【０２２１】
なお、図３５のステップＳ５６に示した動的ブレイク動作条件がページ数制限時の末尾ブレイク優先時動的ブレイク処理は、上記図３８に示したフローチャートのステップＳ８６，Ｓ８７を削除し、ステップＳ８ｃを、以下のように変更したものとなる。例えば、フォーム作成アプリケーション１２１が、ステップＳ８ｂの再編集結果のページ数を計算し、図７のＵＩにて設定された値にあてはまるか否かを判定する。そして、フォーム作成アプリケーション１２１が、ステップＳ８ｂの再編集結果が図７のＵＩにて設定された値にあてはまらないと判断した場合には、ステップＳ８５に処理を戻す。そしてステップＳ７５〜Ｓ７ｃの処理を図７のＵＩにて設定された値にあてはまるまで繰り返す。一方、フォーム作成アプリケーション１２１は、ステップＳ８ｂの再編集結果が図７のＵＩにて設定された値にあてはまると判断した場合には、そのまま本フローチャートの処理を終了させる。以上の変更により、図３８のフローチャートは、図３５のステップＳ５６に示した動的ブレイク動作条件がページ数制限時の末尾ブレイク優先時動的ブレイク処理に適用可能である。
【０２２２】
これにより、ユーザが所望とする項目におけるブレイク処理は有効としながら、指定されたページ数制限に収めることが可能となり、効率的な処理を実行できる。
【０２２３】
なお、図３８では、ステップＳ８８において、ステップＳ８３で選択したブレイクキーの改ページブレイクを１つ解除する構成について説明した。しかし、ステップＳ８８において、ステップＳ８３で選択したブレイクキーの改ページブレイクを全て解除するように構成してもよい。
【０２２４】
以下、上記図３８に示した末尾ブレイク優先時動的ブレイク処理を図２４〜図２６を用いてより具体的に説明する。
【０２２５】
図２４に示すように、図６に示した動的ブレイクキー選択ＵＩにより、フォームデータ３７０１のブレイクキーとして「部」３７０２および「課」３７０３が選択され、「部」３７０２，「課」３７０３の順に優先順位が設定されているものとする。“末尾ブレイク優先”設定の場合、先頭のブレイクキーから削除（解除）されるため、「部」３７０２が削除されることとなる。
【０２２６】
よって、「部」の項目で発生するブレイク処理は無視されるので、図２５に示すように、コンテンツデータ３５０１においてブレイクする箇所は３８０２，３８０３の２箇所となる。その結果、動的ブレイク処理を実行しない場合には、上述した図１７のように４ページ分のデータが生成されていた。しかし、“先頭ブレイク優先”設定の動的ブレイク処理を実行することで、図２６の３９０１，３９０１，３９０３のように、３ページに収めることが可能となる。この結果、効率的な印刷処理を実行することが可能となる。
【０２２７】
よって、フォーム作成アプリケーションは、Ｓ４４以降のいずれかの処理を実行することにより変更されたデータの変化を判定するデータ項目におけるデータの変化に応じて区切り処理を適用した出力ページを生成することが可能となる。
【０２２８】
なお、図３７および図３８では、フォームデータの構成から先頭項目と末尾項目を決定していたがこれに限ることはなく、例えば、図６のように優先する項目をユーザが指定することもできる。これにより、各項目の優先順位を設定した状態で、先頭項目優先を選択された場合、優先順位の低い項目からブレイクキーが解除される。また、末尾項目優先を選択した場合、優先順位の高い項目からブレイクキーが解除される。
【０２２９】
図３９は、本発明における第６の制御処理手順の一例を示すフローチャートであり、図３７のステップＳ７６，図３８のステップＳ８６に示した余白領域処理に対応する。なお、図３９中、Ｓ９１〜Ｓ９５は各ステップを示す。
【０２３０】
ステップＳ９１において、フォーム作成アプリケーション１２１は、指定されたブレイク箇所において発生するブレイクを無効化することにより、コンテンツデータを挿入したフォームデータを各ページ内に収めることができるか否かを判定する。以下、このステップＳ９１の処理を具体的に説明する。つまり、フォーム作成アプリケーションは、複数のデータ項目からなるデータにおいて、データの変化を判定するデータ項目を変更する。その結果、フォーム作成アプリケーション１２１は、変更後のデータ項目におけるデータの変化に基づいて、該データの変化前までのデータを所定の領域内に収めることができるかを判定する。なお、Ｓ９１にてデータの変化前までのデータを所定の領域内に収めることができないと判定された場合の出力処理内容は、図１４にて設定可能である。そして、フォーム作成アプリケーションは、Ｓ９１によりブレイクキーの変更後のデータ項目のデータ変化に応じて、データ変化前までのデータを所定の領域内に収められないと判定した場合、図１４にて設定された出力処理内容に基づいて出力ページを生成する。なお、ブレイクキーの変更とは、データの変化を判定するデータ項目を変更する処理に当たる。
【０２３１】
フォーム作成アプリケーション１２１は、動的ブレイク処理を行う前のデータ（この時点でＲＡＭ１２内の保持されている出力データ）を解析する。そして、フォーム作成アプリケーション１２１は、図３７のＳ７３又は図３８のＳ８３で選択されたブレイクキーのブレイク箇所において、改ページブレイクで生成されたページの前ページに生じた余白領域をＲＡＭ１２内に記憶する。続いて、フォーム作成アプリケーション１２１は、次にブレイクが発生するまでのデータを上記改ページブレイクで生成されたページの前ページの余白領域に収めることができるか否かにより、ページ溢れが発生するか否かを判定する。例えば、図３０では、動的ブレイク処理を行う前において、「部」と「課」の項目がブレイクキーとして指定されていたとする。その場合、「課」の項目においてデータが「１」から「２」に変わる箇所でブレイクが発生し、改ページ処理される。つまり、「Ａ部１課ああ」と「Ａ部１課いい」が１ページ目に配置され、それ以降のデータは２ページ以降に配置される。ここで、フォーム作成アプリケーション１２１は、「Ａ部１課ああ」と「Ａ部１課いい」を配置するために必要となる領域を算出する。算出方法の一例としては、１行当たりのサイズを予め設定しておき、何行のデータを配置するかにより必要となる領域を算出する。例えば、図３０の場合、１行の高さ３ｃｍ×横９ｃｍと設定した場合、２行分のデータを配置するため６×９ｃｍ分の領域が必要となる。この算出結果と用紙サイズを用いることで余白領域が算出される。
【０２３２】
さらに、次のブレイクが発生するまで５行分のデータがあることから、この５行分のデータを配置するために必要となる領域は１５×９となる。よって、算出された余白領域と、次のブレイクが発生するまでのデータを配置するために必要となる領域を比較する。その結果により、フォーム作成アプリケーション１２１は、次にブレイクが発生するまでのデータを上記ページの余白領域に収めることができるか判定できる。フォーム作成アプリケーション１２１は、上記処理を実行して、ステップＳ９１の判定処理を行う。
【０２３３】
そして、ステップＳ９１で、フォーム作成アプリケーション１２１は、ページ溢れが発生しないと判断した場合には、図示しないステップにおいて、ブレイク解除を実行する旨の情報をＲＡＭ１２上に設定し、処理を終了させる。よって、この場合、図３７のステップＳ７７，図３８のステップＳ８８では、ブレイク解除を実行すると判定される。
【０２３４】
一方、ステップＳ９１で、フォーム作成アプリケーション１２１は、ページ溢れが発生すると判定した場合には、図示しないステップにおいて、図３１に示したＵＩをディスプレイ１７に表示制御する。これにより、ページ溢れが発生することをユーザに通知し、現在選択されている動的ブレイク処理を続行するか、異なる動的ブレイク処理に変更するか等を選択させることができる。
【０２３５】
図３１のＵＩで、現在選択されている動的ブレイク処理の“変更”ボタン２４０２が選択された場合、フォーム作成アプリケーション１２１は、図示しないステップにおいて、図８に示した動的ブレイク設定ＵＩをディスプレイ１７に表示制御する。そして、動的ブレイク設定が行われると、図示しないステップにおいて、該動的ブレイク設定をＲＡＭ１２内に格納し、図３４のステップＳ４２から再度処理を開始させる。
【０２３６】
一方、図３１のＵＩで、現在選択されている動的ブレイク処理の“続行”ボタン２４０１が選択された場合、ステップＳ９２に処理を進める。
【０２３７】
ステップＳ９２において、フォーム作成アプリケーション１２１は、予め図１４のＵＩで設定されＲＡＭ１２内の余白領域設定を参照して解析し、処理を分岐させる。
【０２３８】
ステップＳ９２で、ページ溢れが発生した場合の処理として“そのまま出力”が設定されていると判断した場合、ステップＳ９３において、そのまま出力させるための処理を行う（即ち、ブレイク解除を実行する旨の情報をＲＡＭ１２上に設定する）。そして、処理を終了させる。よって、この場合、図３７のステップＳ７７，図３８のステップＳ８８では、ブレイク解除を実行すると判定される。結果として、図３２に示すように、ページに設定されている余白領域１３２０１までデータを配置され、残りのデータは次のページへと配置されて出力されることになる。
【０２３９】
また、ステップＳ９２で、ページ溢れが発生した場合の処理として“ブレイクさせる”が設定されていると判断した場合、ステップＳ９４において、フォーム作成アプリケーション１２１は、ブレイクさせるための処理を行う。即ち、ブレイク解除を実行しない旨の情報をＲＡＭ１２上に設定する。そして、処理を終了させる。よって、この場合、図３７のステップＳ７７，図３８のステップＳ８８では、ブレイク解除を実行しないと判定される。結果として、図２８に示すように各ブレイク箇所で改ページされて出力されることになる。この場合の出力結果は、図２８のようなレイアウト結果となる。
【０２４０】
また、ステップＳ９２で、ページ溢れが発生した場合の処理として“印字領域最大まで出力させる”が設定されていると判断した場合、ステップＳ９５において、フォーム作成アプリケーション１２１は、印字領域最大まで出力させる処理を行う。詳細には、図３３に示すように、ページに設定されている余白領域を無視し印字可能領域最大までデータを配置するようにＲＡＭ１２内の出力データを編集し、さらに、ブレイク解除を実行する旨の情報をＲＡＭ１２上に設定する。そして、処理を終了させる。よって、この場合、図３７のステップＳ７７，図３８のステップＳ８８では、ブレイク解除を実行すると判定される。また、結果として、図３２に示すように、ページに設定されている余白領域は無視され、印字可能領域３３０１最大までデータを配置され、残りのデータは次のページへと配置され出力されることになる。
【０２４１】
以上のように、ページ溢れが発生する場合の処理を選択しておくことで、選択された動的ブレイク処理を実行するとページ溢れが発生する場合でも、ユーザが所望とする対処方法で処理することが可能となる。
【０２４２】
以上の処理を用いることで、ユーザが所望とする項目のブレイクキーにて発生するブレイク処理の有効性を保持しながら、図７のＵＩにてユーザが設定した内容に基づきユーザが所望とする出力結果を得ることが可能となる。
【０２４３】
なお、図３６に示したブレイク解除時動的ブレイク処理においても、図３９に示した余白領域処理を実行するように構成してもよい。即ち、図３６のステップＳ６５とステップＳ６６の間に、該ステップＳ６５で選択されたブレイクキーに対応する全てのブレイク箇所に対する余白領域処理を実行するように制御する。さらに、この余白領域処理結果に基づいて、ブレイク解除を実行するか否かを判断し、ブレイク解除すると判断した場合、ステップＳ６６に処理を進め、一方、ブレイク解除しないと判断した場合、ステップＳ６ｂに処理を進めるように制御する。以上のように構成してもよい。
【０２４４】
次に図４１と図４２を用いて印刷目的に応じて動的ブレイク処理を実行する処理について説明する。
【０２４５】
図４１は、印刷目的を選択するためのＵＩ図であり、「試し印刷」または「本番印刷」のいずれかを選択することが可能である。
【０２４６】
次に図４２を用いて図４１の印刷目的が設定された場合のフローチャートについて説明する。
【０２４７】
フォーム作成アプリケーション１２１は、図４１の設定ＵＩにて設定された内容を解析して、試し印刷が設定されたか否かを判定する（Ｓ１０１）。
【０２４８】
フォーム作成アプリケーション１２１は、Ｓ１０１により試し印刷が設定されていると判定した場合、動的ブレイク処理が設定されているか否かを判定する（Ｓ１０２）。詳細には、動的ブレイク処理を設定する場合、図８の設定ＵＩにて設定した内容がＲＡＭに保存されているため、フォーム作成アプリケーション１２１が、ＲＡＭを参照することにより判定可能である。
【０２４９】
Ｓ１０２においてブレイク処理が設定されていると判定された場合、Ｓ４１へ進む。一方、Ｓ１０２において、ブレイク処理が設定されていないと判定された場合、フォーム作成アプリケーション１２１は、図７から図１４を必要に応じて表示して動的ブレイク処理に必要となる項目の設定値を認識する（Ｓ１０３）。その後、図３４のＳ４１へと処理が引き継がれる。なお、図４２では、Ｓ１０３において動的ブレイク処理を設定してブレイク項目を変更する処理について説明したがこれに限ることはない。例えば、ブレイク処理内容が改ページブレイクであれば、改行ブレイク処理に変更して、ページ数を節約するように処理しても構わない。なお、詳細な説明は図４５にて行う。
【０２５０】
図４２の処理を実行することで、例えば試し印刷などページ数の節約が望まれる環境下では、可能な限りページ数を設定する必要がある。そのため、レイアウト編集アプリケーション１２１は、試し印刷と判定され、動的ブレイク処理の実行が設定されていない場合、図７から図１４のＵＩを必要に応じて表示する。そして、設定された値を用いて動的ブレイク処理を実行することで、ユーザの環境や目的を反映した出力を行うことが可能となる。
【０２５１】
一方、図４２のＳ１０１において、試し印刷でないと判定された場合、つまり、本番印刷の場合、図４３のフローチャートが実行される。
【０２５２】
フォーム作成アプリケーション１２１は、動的ブレイク処理が設定されているか否かを判定する（Ｓ１１０）。ここで、動的ブレイク処理が設定されていない場合、通常のブレイク処理が実行されるので、そのまま出力される。一方、Ｓ１１０により動的ブレイク処理が設定されていると判定された場合、フォーム作成アプリケーション１２１は、動的ブレイク処理設定を解除する（Ｓ１１１）。
【０２５３】
フォーム作成アプリケーション１２１は、Ｓ１１２において生成された出力ページを出力する。
【０２５４】
図４３の処理を実行することで、例えば本番印刷などデータの高い視認性が求められている環境下では、ユーザが予め指定した項目においてデータの変化が生じることに応じたブレイク処理を行うことで、視認性の高い出力結果を得ることが可能となる。
【０２５５】
このように、図４１から図４３の処理を実行することで、ユーザの環境や目的を反映した出力を行うことが可能となる。なお、図４１では、試し印刷と本番印刷を例にあげたがそれ以外の項目であっても構わない。
【０２５６】
つまり、フォーム作成アプリケーション１２１は、図４１から図４３の処理を用いて、生成された出力ページの出力設定情報を判定する。具体的には、本番印刷か試し印刷かを判定する。そして、本番印刷であると判定された場合、データの変化を判定するデータ項目の変更処理を実行しない。または、ブレイク処理の内容を変更しない。つまり、フォーム作成アプリケーション１２１は、予め設定された所定のブレイクキー項目および所定のブレイク処理内容にて出力ページを生成する。一方、試し印刷であると判定された場合、フォーム作成アプリケーション１２１は、データの変化を判定するデータ項目の変更処理を実行する。または、ブレイク処理の処理内容を変更する。
【０２５７】
また、図４４に示すＵＩにより出力結果の配布先に応じて動的ブレイク処理を実行しても構わない。図４４のＵＩには配布先として、「部長」「課長」が表示されている。これは、ユーザが任意に登録しても、別の方法で登録しても構わない。
【０２５８】
ここで、部長が選択された場合、部単位でブレイク処理を行うことにより、利便性の高い出力結果を得ることができると想定できる。よって、選択されているブレイクキーが「部」および「課」の場合、自動的に部単位で動的ブレイク処理が実行されるように「先頭ブレイクキー優先」が選択される。一方、課長が選択された場合は、課単位で動的ブレイク処理が実行されるように「末尾ブレイクキー優先」が選択される。
【０２５９】
本願第１実施例のように、オーバーレイ処理により生成された出力結果が図７のＵＩにて設定された条件に当てはまらない場合、ブレイク処理の判定項目（データの変化を判定するデータ項目）を変更する。この処理により、ユーザが指定したブレイク処理内容（例えば改ページブレイク）を変更することなく、ユーザが図７のＵＩにて設定した条件に一致した出力結果を得ることが可能となる。
【０２６０】
〔第２実施形態〕
第１実施形態では、所定の条件（余白領域制限やページ数制限）に一致した場合、ブレイク処理の判定項目を変更してユーザが所望とする出力結果を得ていた。第２実施例では、ブレイク処理の内容を変更することにより、ユーザの所望とする出力結果を得ることを目的とする。なお、第２実施例では、第１実施例と異なる点に着目して記載する。そのため、第２実施例に記載されていない内容は、第１実施例に記載されている内容を用いて処理を進めても良い。
【０２６１】
フォーム作成アプリケーション１２１は、予め図７から図１４の設定ＵＩを介して必要な項目に入力された値を設定しているものとする。そして、フォーム作成アプリケーション１２１は、予め定められたデータ項目におけるデータの変化を判定し、予め定められたデータ項目においてデータの変化が生じたと判定された場合、区切り処理を実行する。なお、この処理は、本願において共通の処理である。
【０２６２】
図４５は、第２実施例におけるフォーム作成アプリケーション１２１の処理内容を示したものである。
【０２６３】
フォーム作成アプリケーション１２１は、上述したオーバーレイ処理を実行する（Ｓ１２１）。
【０２６４】
フォーム作成アプリケーション１２１は、オーバーレイにより生成された出力ページが図７の設定ＵＩにて設定された値にあてはまるか否かを判定する（Ｓ１２２）。
【０２６５】
Ｓ１２２により、図７のＵＩにて設定した値に当てはまらないと判定された場合、レイアウト編集アプリケーション１２１は、図４７のようなＵＩを表示する。ここで、ブレイク処理内容変更が選択された場合、詳細画面である図４８を表示し、ユーザに設定された内容に従ってブレイク処理内容を変更する（Ｓ１２３）。図４７および図４８について説明する。図４７には、ブレイク処理を変更するか否かを設定するためのＵＩであり、ここで変更することを指定すると、図４８のＵＩが表示され、例えば「改ページ→改行」と表示されている。これは、現在のブレイク処理が改ページブレイクであるため、このような表示になる。もし、現在のブレイク処理が改行ブレイクであれば、「改行→改ページ」と表示されても良い。また、「改ページ→改行」および「改行→改ページ」を表示して選択させるようにしても良い。つまり、Ｓ１２２からＳ１２３の処理は、区切り処理を実行して生成された出力ページが図７のＵＩにて設定された出力ページの制約条件にあてはまらない場合、区切り処理の処理内容を変更することである。そして、フォーム作成アプリケーション１２１は、変更された区切り処理の処理内容に基づいて出力ページを生成する。なお、区切り処理内容とはブレイク処理内容と同義である。
【０２６６】
以上、図４５の処理を実行することによりブレイク処理内容が必要に応じて変更される。そのため、オーバーレイ処理の結果、ユーザが所望とする出力結果を得ることができなくとも、ユーザが予め設定したデータ項目のブレイク処理を反映しつつ、データの高い視認性を保ち、無駄な印刷出力を行うことなくユーザが所望とする出力結果を得られる。
【０２６７】
図４６に、第２実施例を用いた場合の出力結果を示す。なお。フォームデータは、図１５のデータ、流し込むべきデータは図１６を用いた場合を想定している。
【０２６８】
まず、指定されたブレイクキーである「部」および「課」の項目において、ブレイク処理を実行すると図１７に示すように４ページの出力結果となる。また、ユーザは図７のＵＩを用いて、「ページ数制限」として２ページ以内に収めることが指定されているとする。また、図９は改行ブレイク時に使用することができ、図４６では、空行挿入が指定されているとする。以上を踏まえて、第２実施例を適用することにより、出力結果は図４６のように変更される。
【０２６９】
なお、図４９は、ブレイク処理の処理内容を設定する画面である。オーバーレイ処理を実行するために、フォームデータや該フォームデータに流し込むデータを選択する際に、同様に設定するものである。図４９では、改ページブレイクまたは改行ブレイクを設定することが可能となっている。
【０２７０】
なお、第２実施例においても出力ページの各ページにおいて、前記データが配置されていない余白サイズを判定することができる。そして、フォーム作成アプリケーション１２１は、各ページの余白サイズが図７のＵＩにて設定された出力ページの余白領域制限を超える場合、前記区切り処理の処理内容を変更する。同様に、フォーム作成アプリケーションは、出力ページのページ数を判定し、出力ページのページ数が図７のＵＩにて設定されたページ数制限を超える場合、区切り処理の処理内容を変更する。
【０２７１】
また、フォーム作成アプリケーション１２１は、Ｓ１２３にて区切り処理の処理内容を改ページ処理から改行処理に変更することができる。そして、フォーム作成アプリケーション１２１は、予め定められたデータ項目におけるデータの変化に応じてよって変更された改行処理を適用して出力ページを生成する。なお、改行処理を実行する場合は、図９を介して設定された改行処理を実行する箇所に、空行を挿入する処理、区切り処理を解除した箇所の属性を変更する処理、なにも挿入しない処理、のいずれかに基づき出力ページを生成する。また、フォーム作成アプリケーションは、ページ数制限設定の際、該ページ数制限に基づいて前記区切り処理の処理内容を変更しても、生成される出力ページのページ数がページ数制限を超えてしまう場合のページ数制限処理を図１４を介して設定できる。その設定内容は、そのまま出力する処理、エラーとする処理が挙げられる。そして、フォーム作成アプリケーション１２１は、区切り処理の処理内容を変更しても出力ページのページ数が前記ページ数制限を超えてしまうと判定された場合、図１４にて設定された情報に基づいて、出力ページを生成する。
【０２７２】
また、ブレイクが発生した時に、小計／集計が出力可能に構成し、さらに、該小計／集計の出力を動的に変更し、表示/非表示を切り替え可能に構成してもよい。以下、その実施形態について説明する。
【０２７３】
図４０は、本実施形態における小計／集計設定ＵＩの一例を示す図である。図１に示したＣＰＵ１０により実行される図４に示したＵＩコンポーネント１０３の制御によりディスプレイ１７に表示され、キーボード１６又はマウス１８により入力指示可能に制御される。また、このＵＩによる設定は、ＲＡＭ１２等に保持される。
【０２７４】
この小計／集計設定ＵＩでは、ブレイク発生時に小計／集計を表示する／表示しないの設定、及び、小計／集計のみの表示を行う設定を行うことができる。
【０２７５】
図４０において、１９０１は“小計／集計を表示する”設定であり、ブレイク時に、結果データの小計／集計を表示する設定である。１９０２は“小計／集計を表示しない”設定であり、ブレイク時に、結果データの小計／集計を表示しない設定である。
【０２７６】
１９０３は“小計／集計のみ表示”設定であり、ブレイク時に、結果データの小計／集計のみを表示する設定である。
【０２７７】
１９０４はＯＫボタンで、このＯＫボタン１９０４が指示されると、ＵＩコンポーネント１０３の制御により、このＵＩによる設定値がＲＡＭ１２等に保存される。
【０２７８】
そして、フォーム作成アプリケーション１２１は、上記各フローチャートに示したオーバーレイ処理の実行時に、上記図４０のＵＩで設定されＲＡＭ１２に保持される小計／集計設定に基づく処理を実行する。
【０２７９】
即ち、フォーム作成アプリケーション１２１は、図４０のＵＩの設定が“表示する”であった場合、ブレイク発生時に該ブレイク箇所における帳票データの小計／集計を算出する。そして、フォーム作成アプリケーション１２１は、該算出された小計／集計を該当するブレイク箇所に出力（印刷や表示）するように、出力データをＲＡＭ１２内で編集制御する。一方、フォーム作成アプリケーション１２１は、図４０のＵＩの設定が“表示しない”であった場合、ブレイク発生時に該ブレイク箇所における帳票データの小計／集計を出力（印刷や表示）しないように制御する。
【０２８０】
また、フォーム作成アプリケーション１２１は、図４０のＵＩの設定が“小計／集計のみ表示”であった場合、前記算出された小計／集計のみを出力（印刷や表示）するように、出力データをＲＡＭ１２内で編集制御する。
【０２８１】
つまり、フォーム作成アプリケーション１２１は、データの変化を判定するデータ項目におけるデータの変化に基づいて、集計処理する集計処理手段を有し、集計処理手段による集計結果を含んだ出力ページを生成する。
【０２８２】
以上の処理により、ブレイクを解除するだけでなく、小計／集計の出力を動的に制御することで、更なる用紙スペースの削減を行うことができる。
【０２８３】
なお、フォーム作成アプリケーションによって生成される出力ページは、枠情報にデータを流し込んで生成される表形式の出力ページを含む。
【０２８４】
なお、図１に示したホストコンピュータ１０１は、パーソナルコンピュータであってもサーバコンピュータ等であってもよい。
【０２８５】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０２８６】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０２８７】
以上、説明したように、フォーム作成アプリケーション１２１は、ブレイク処理により生成されたページの余白量が閾値以上か判定し、閾値以上であれば動的ブレイク（ブレイクキーの変更）を行って、動的に改ページ箇所を変更制御する。これにより、余分な余白領域をなくし必要なデータだけが記載された印刷物を生成することができる。
【０２８８】
また、フォーム作成アプリケーション１２１は、ブレイク処理により生成されたページのページ数が閾値以上か判定し、閾値以上であれば動的ブレイク（ブレイクキーの変更）を行って、動的に改ページ箇所を変更制御する。これにより、文字サイズや行間などの見栄えを変更せずユーザが指定する指定数ページに収めることができる。
【０２８９】
このように、条件・制約を外部から与えることで、その条件・制約の元で動的にブレイク設定を変更し、ユーザの望む印刷結果を出力することができる。
【０２９０】
なお、上記各実施形態では、オーバーレイ処理を実行して出力データをＲＡＭ１２上に生成しておき、該出力データを設定される動的ブレイク動作条件に基づいて編集して、ブレイク箇所や出力領域を変更等する構成を示した。これにより、データを改ページする箇所や出力領域を動的に変更することが可能となった。しかし、以下のように構成してもよい。まず、動的ブレイク動作条件とフォームデータやコンテンツデータに基づいて、実行すべきブレイク変更の箇所や出力領域変更等を決定して、その情報をＲＡＭ１２内に保持させる。そして、実行すべきブレイク変更の箇所や出力領域変更等の情報に基づいて、オーバーレイ処理を実行して、改ページする箇所は出力領域を動的に変更するように構成してもよい。
【０２９１】
以下、上述の図２に示したメモリマップを参照して、本発明に係る帳票印刷処理システムに適用可能な情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップの構成について説明する。
【０２９２】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０２９３】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０２９４】
本実施形態における図３４，図３５，図３６，図３７，図３８，図３９，図４２，図４３，図４５に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD-ROMやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０２９５】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２９６】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２９７】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【０２９８】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【０２９９】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０３００】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のプログラムそのものをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また、該ホームページから圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやFTPサーバ等も本発明の請求項に含まれるものである。
【０３０１】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布する。さらに、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。さらに、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０３０２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、以下のような構成も含まれることは言うまでもない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０３０３】
さらに、記憶媒体から読み出されたプログラムコードを、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込む。そして、該メモリに書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０３０４】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０３０５】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組み合わせを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０３０６】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【０３０７】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【０３０８】
以上より、文字サイズや行間等の見栄えを変更せず、また、データ仕分けの利便性も保ちつつ、ユーザの所望のページ数に収めたり、余分な余白領域をなくし、ユーザが望む出力結果を取得できるようにすることができる。
【図面の簡単な説明】
【０３０９】
【図１】、本発明の一実施形態を示す帳票印刷処理システムに適用可能な情報処理装置のハードウェアの構成の一例を示すブロック図である。
【図２】本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムおよび関連データを格納する記憶媒体（記録媒体）のメモリマップを説明する図である。
【図３】図２に示した制御プログラムがＲＡＭにロードされ実行可能となった状態のメモリマップを説明する図である。
【図４】帳票等のデータを印刷するシステムの一例を示すブロック図である。
【図５】フォームデータに対してコンテンツデータを流し込む処理を説明する図である。
【図６】本実施形態における動的ブレイクキー選択ＵＩの一例を示す図である。
【図７】本実施形態における動的ブレイク動作条件設定ＵＩ（ユーザインタフェース）の一例を示す図である。
【図８】本実施形態における動的ブレイク設定ＵＩの一例を示す図である。
【図９】本実施形態における動的ブレイク実行時処理ＵＩの一例を示す図である。
【図１０】本実施形態における動的ブレイクキー詳細設定ＵＩの一例を示す図である。
【図１１】本実施形態におけるページ数設定ＵＩの一例を示す図である。
【図１２】本実施形態の出力設定ＵＩの一例を示す図である。
【図１３】本実施形態におけるエラー設定ＵＩの一例を示す図である。
【図１４】本実施形態における余白領域設定ＵＩの一例を示す図である。
【図１５】図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図１６】図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図１７】図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図１８】図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図１９】図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２０】図８に示した動的ブレイク設定で“選択したブレイクキーのみブレイクを全て解除”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２１】図８に示した動的ブレイク設定で“先頭ブレイクキー優先”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２２】図８に示した動的ブレイク設定で“先頭ブレイクキー優先”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２３】図８に示した動的ブレイク設定で“先頭ブレイクキー優先”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２４】図８に示した動的ブレイク設定で“末尾ブレイクキー優先”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２５】図８に示した動的ブレイク設定で“末尾ブレイクキー優先”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２６】図８に示した動的ブレイク設定で“末尾ブレイクキー優先”設定が選択された場合のブレイクキー解除動作を具体的に説明する図である。
【図２７】本実施形態における余白領域処理について具体的に説明する図である。
【図２８】本実施形態における余白領域処理について具体的に説明する図である。
【図２９】本実施形態における余白領域処理について具体的に説明する図である。
【図３０】本実施形態における余白領域処理について具体的に説明する図である。
【図３１】本実施形態における余白領域処理について具体的に説明する図である。
【図３２】本実施形態における余白領域処理について具体的に説明する図である。
【図３３】本実施形態における余白領域処理について具体的に説明する図である。
【図３４】本発明における第１の制御処理手順の一例を示すフローチャートである。
【図３５】本発明における第２の制御処理手順の一例を示すフローチャートである。
【図３６】本発明における第３の制御処理手順の一例を示すフローチャートである。
【図３７】本発明における第４の制御処理手順の一例を示すフローチャートである。
【図３８】本発明における第５の制御処理手順の一例を示すフローチャートである。
【図３９】本発明における第６の制御処理手順の一例を示すフローチャートである。
【図４０】本実施形態における小計／集計設定ＵＩの一例を示す図である。
【図４１】本発明における出力目的を設定するためのＵＩの一例を示す図である。
【図４２】本発明の試し印刷が選択された場合の処理を示すフローチャートである。
【図４３】本発明の本番印刷が選択された場合の処理を示すフローチャートである。
【図４４】本発明の出力先を指定するためのＵＩの一例を示す図である。
【図４５】本発明のブレイク処理内容を変更するフローチャートである。
【図４６】本発明のブレイク処理内容を変更した場合の出力結果の一例を示す図である。
【図４７】本発明のブレイク処理内容を変更設定ＵＩの一例を示す図である。
【図４８】本発明のブレイク処理内容の変更内容設定ＵＩの一例を示す図である。
【図４９】本発明のブレイク処理内容を設定するＵＩの一例を示す図である。
【符号の説明】
【０３１０】
１０    ＣＰＵ
１１    ＲＯＭ
１２    ＲＡＭ
１３    ＦＤドライブ
１４    ＦＤ
１５    ＨＤドライブ
１６    キーボード
１７    ディスプレイ
１８    マウス
１９    ＮＩＣ（Network Interface Card）
２０    システムバス
１０３    ユーザインタフェース（USER INTERFASE）
１０５    ライブラリ（LIBRARY）
１２１    フォーム作成アプリケーションプログラム（FORM EDITING APPLICATION）
【図１】
2007164685.tif 000003
【図２】
2007164685.tif 000004
【図３】
2007164685.tif 000005
【図４】
2007164685.tif 000006
【図５】
2007164685.tif 000007
【図６】
2007164685.tif 000008
【図７】
2007164685.tif 000009
【図８】
2007164685.tif 000010
【図９】
2007164685.tif 000011
【図１０】
2007164685.tif 000012
【図１１】
2007164685.tif 000013
【図１２】
2007164685.tif 000014
【図１３】
2007164685.tif 000015
【図１４】
2007164685.tif 000016
【図１５】
2007164685.tif 000017
【図１６】
2007164685.tif 000018
【図１７】
2007164685.tif 000019
【図１８】
2007164685.tif 000020
【図１９】
2007164685.tif 000021
【図２０】
2007164685.tif 000022
【図２１】
2007164685.tif 000023
【図２２】
2007164685.tif 000024
【図２３】
2007164685.tif 000025
【図２４】
2007164685.tif 000026
【図２５】
2007164685.tif 000027
【図２６】
2007164685.tif 000028
【図２７】
2007164685.tif 000029
【図２８】
2007164685.tif 000030
【図２９】
2007164685.tif 000031
【図３０】
2007164685.tif 000032
【図３１】
2007164685.tif 000033
【図３２】
2007164685.tif 000034
【図３３】
2007164685.tif 000035
【図３４】
2007164685.tif 000036
【図３５】
2007164685.tif 000037
【図３６】
2007164685.tif 000038
【図３７】
2007164685.tif 000039
【図３８】
2007164685.tif 000040
【図３９】
2007164685.tif 000041
【図４０】
2007164685.tif 000042
【図４１】
2007164685.tif 000043
【図４２】
2007164685.tif 000044
【図４３】
2007164685.tif 000045
【図４４】
2007164685.tif 000046
【図４５】
2007164685.tif 000047
【図４６】
2007164685.tif 000048
【図４７】
2007164685.tif 000049
【図４８】
2007164685.tif 000050
【図４９】
2007164685.tif 000051