(57)【要約】【課題】  複数の表図形を並べて配置することで、例えば、集計行の値を比較しやすくなる。しかしながら複数の表図形を並べて表示する際に、ユーザが集計行の位置を揃える必要があると思った場合、ユーザによる空白行を挿入するなどの操作が必要となり、ユーザの操作負荷が増大するおそれがあった。【解決手段】  第１表図形に第１フィールドデータを割り当てることで算出される第１集計フィールドの位置と第２表図形に第２フィールドデータを割り当てることで算出される第２集計フィールドの位置に基づいて、第１および第２集計フィールドを揃えて出力するための位置を決定する。【選択図】  図６
2015118539.tif 000002
【特許請求の範囲】
【請求項１】
第１フィールドデータが挿入される第１フィールドと前記第１フィールドデータから算出された値が挿入される第１集計フィールドを含む第１表図形と、第２フィールドデータが挿入される第２フィールドと前記第２フィールドデータから算出された値が挿入される第２集計フィールドを含む第２表図形を表示する表示制御手段と、
前記第１表図形の前記第１集計フィールドの位置と前記第２表図形の前記第２集計フィールドの位置を揃えるための指示を受け付ける指示手段と、
前記指示が受け付けられた場合、前記第１表図形に前記第１フィールドデータを割り当てることで算出される前記第１集計フィールドの位置と前記第２表図形に前記第２フィールドデータを割り当てることで算出される前記第２集計フィールドの位置に基づいて、前記第１および第２集計フィールドを揃えて出力するための位置を決定する決定手段を備えることを特徴とする情報処理装置。
【請求項２】
前記指示が受け付けられ、かつ、前記第１集計フィールドの高さが前記第２集計フィールドの高さよりも高い場合、前記第２集計フィールドの高さを前記第１フィールドの高さに更新する更新手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
フィールドデータの所定の項目が変化する際にブレイク用集計フィールドを描画することが前記第１および第２表図形に定義されており、かつ、前記指示が受け付けられた場合、前記決定手段は、前記第１フィールドの所定の項目が変化することで前記第１表図形に描画される第１ブレイク用集計フィールドの位置と、前記第２フィールドの所定の項目が変化することで前記第２表図形に描画される第２ブレイク用集計フィールドの位置に基づいて、前記第１および第２ブレイク用集計フィールドを揃えて出力するための位置を決定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
第１フィールドデータが挿入される第１フィールドと前記第１フィールドデータから算出された値が挿入される第１集計フィールドを含む第１表図形と、第２フィールドデータが挿入される第２フィールドと前記第２フィールドデータから算出された値が挿入される第２集計フィールドを含む第２表図形を表示する表示制御ステップと、
前記第１表図形の前記第１集計フィールドの位置と前記第２表図形の前記第２集計フィールドの位置を揃えるための指示を受け付ける指示ステップと、
前記指示が受け付けられた場合、前記第１表図形に前記第１フィールドデータを割り当てることで算出される前記第１集計フィールドの位置と前記第２表図形に前記第２フィールドデータを割り当てることで算出される前記第２集計フィールドの位置に基づいて、前記第１および第２集計フィールドを揃えて出力するための位置を決定する決定ステップを備えることを特徴とする制御方法。
【請求項５】
前記指示が受け付けられ、かつ、前記第１集計フィールドの高さが前記第２集計フィールドの高さよりも高い場合、前記第２集計フィールドの高さを前記第１フィールドの高さに更新する更新ステップを更に備えることを特徴とする請求項４に記載の制御方法。
【請求項６】
フィールドデータの所定の項目が変化する際にブレイク用集計フィールドを描画することが前記第１および第２表図形に定義されており、かつ、前記指示が受け付けられた場合、前記決定ステップは、前記第１フィールドの所定の項目が変化することで前記第１表図形に描画される第１ブレイク用集計フィールドの位置と、前記第２フィールドの所定の項目が変化することで前記第２表図形に描画される第２ブレイク用集計フィールドの位置に基づいて、前記第１および第２ブレイク用集計フィールドを揃えて出力するための位置を決定することを特徴とする請求項４または５に記載の制御方法。
【請求項７】
コンピュータに、
第１フィールドデータが挿入される第１フィールドと前記第１フィールドデータから算出された値が挿入される第１集計フィールドを含む第１表図形と、第２フィールドデータが挿入される第２フィールドと前記第２フィールドデータから算出された値が挿入される第２集計フィールドを含む第２表図形を表示する表示制御ステップと、
前記第１表図形の前記第１集計フィールドの位置と前記第２表図形の前記第２集計フィールドの位置を揃えるための指示を受け付ける指示ステップと、
前記指示が受け付けられた場合、前記第１表図形に前記第１フィールドデータを割り当てることで算出される前記第１集計フィールドの位置と前記第２表図形に前記第２フィールドデータを割り当てることで算出される前記第２集計フィールドの位置に基づいて、前記第１および第２集計フィールドを揃えて出力するための位置を決定する決定ステップを実行させるための前記コンピュータが読み取り可能なプログラム。
【請求項８】
前記指示が受け付けられ、かつ、前記第１集計フィールドの高さが前記第２集計フィールドの高さよりも高い場合、前記第２集計フィールドの高さを前記第１フィールドの高さに更新する更新ステップを更に備えることを特徴とする請求項７に記載のプログラム。
【請求項９】
フィールドデータの所定の項目が変化する際にブレイク用集計フィールドを描画することが前記第１および第２表図形に定義されており、かつ、前記指示が受け付けられた場合、前記決定ステップは、前記第１フィールドの所定の項目が変化することで前記第１表図形に描画される第１ブレイク用集計フィールドの位置と、前記第２フィールドの所定の項目が変化することで前記第２表図形に描画される第２ブレイク用集計フィールドの位置に基づいて、前記第１および第２ブレイク用集計フィールドを揃えて出力するための位置を決定することを特徴とする請求項７または８に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フィールドと集計フィールドを備える表図形を用いた処理に関する。
【背景技術】
【０００２】
企業の業務システムで扱われるフォームの種類や形式が多様化する中、貸借対照表や月別売上票に代表される罫線を主体として構成された複数のレコードを表形式に並べて表示するための図形（表図形）を生成する技術がある。また、表図形内に定義された集計行の表示位置を動的に変更する技術が特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２８７０９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
複数の表図形を並べて配置することで、例えば、集計行の値を比較しやすくなるが、特許文献１には、複数の表図形の集計行の位置を調整する技術について開示されていない。そのため、ユーザが例えば複数の表図形を並べて表示する際に、集計行を合わせる必要があると思った場合、ユーザによる空白行を挿入するなどの操作が必要となり、ユーザの操作負荷が増大するおそれがあった。
【課題を解決するための手段】
【０００５】
上記課題を解決するために本発明は、第１フィールドデータが挿入される第１フィールドと前記第１フィールドデータから算出された値が挿入される第１集計フィールドを含む第１表図形と、第２フィールドデータが挿入される第２フィールドと前記第２フィールドデータから算出された値が挿入される第２集計フィールドを含む第２表図形を表示する表示制御手段と、前記第１表図形の前記第１集計フィールドの位置と前記第２表図形の前記第２集計フィールドの位置を揃えるための指示を受け付ける指示手段と、前記指示が受け付けられた場合、前記第１表図形に前記第１フィールドデータを割り当てることで算出される前記第１集計フィールドの位置と前記第２表図形に前記第２フィールドデータを割り当てることで算出される前記第２集計フィールドの位置に基づいて、前記第１および第２集計フィールドを揃えて出力するための位置を決定する決定手段を備えることを特徴とする。
【発明の効果】
【０００６】
本発明により、ユーザは容易な操作で、集計行の位置が揃った複数の表図形を出力することが可能となる。
【図面の簡単な説明】
【０００７】
【図１】本実施形態のシステム構成例を示す図。
【図２】フォーム情報設計システムの構成例を示す図。
【図３】オーバレイ印刷システムの構成例を示す図。
【図４】オーバレイ印刷処理の概要を示す図。
【図５】データブレイクの設定を示す図。
【図６】表図形の対照表示設定操作、ならびに対照表示設定を示す図。
【図７】表図形が対照表示設定に従って再描画されたことを示す図。
【図８】対照表示設定された表図形に対するオーバレイ印刷結果を示す図。
【図９】表図形が対照表示設定に従って再描画されたことを示す図。
【図１０】対照表示設定された表図形に対するオーバレイ印刷結果を示す図。
【図１１】データブレイクの設定を示す図。
【図１２】表図形の対照表示設定を示す図。
【図１３】表図形が対照表示設定に従って再描画されたことを示す図。
【図１４】対照表示設定された表図形に対するオーバレイ印刷結果を示す図。
【図１５】フォーム作成処理フローを示す図。
【図１６】オーバレイ印刷処理フローを示す図。
【図１７】オーバレイ印刷処理内のページ生成処理フローを示す図。
【図１８】フォーム作成処理フローを示す図。
【図１９】オーバレイ印刷処理内のページ生成処理フローを示す図。
【発明を実施するための形態】
【０００８】
以下、図面を参照して本発明に係る実施形態を説明する。
【実施例１】
【０００９】
まずは、一般的なオーバレイ印刷について説明する。
【００１０】
例えば、枠線等を印刷するためのフォーム情報をあらかじめ登録する。テキスト形式のデータ（フィールドデータ）と登録されたフォーム情報を呼び出して印刷を指示することで、フォーム情報とフィールドデータを重ねあわせて印刷することができる。このような重ねあわせた印刷のことをオーバレイ印刷と定義している。
【００１１】
図４は、印刷制御装置（ホストコンピュータ、情報処理装置ともよぶ）１０１によるオーバレイ印刷処理の概要について説明した図である。
【００１２】
フォーム情報設計システム２０１は、ユーザの指示に従ってフォーム情報を作成する。フォーム情報はフィールドデータに依存しない固定的な図形（フォーム図形）と、受け取ったフィールドデータを指定した出力書式に従って表示する図形（フィールド図形）から構成されていることが一般的である。なお、フォーム図形とは、例えば、会社のロゴマークなどフィールドデータに依存しない図形であるが、本願の処理には関係がないため、図４等の表図形には現れない。フィールド図形を作成するには、予めフィールドデータを受け取るための項目（フィールド）を作成する必要がある。フィールドはフォーム情報設計システムにて表示された専用の画面から作成することができる。フィールド図形を作成すると作成元であるフィールドとの関連付けが内部的におこなわれる。
【００１３】
表図形４０４、４０５では、項目名のフィールドデータが挿入されるフィールドと、金額のフィールドデータが挿入されるフィールドが作成されている。また、フィールドデータを直接受け取らず、他のフィールドが受け取ったフィールドデータを指定した演算式に従って算出した結果をデータとして扱うフィールド（集計フィールド）も作成することができる。集計フィールド４０６、４０７は、おもに表図形に集計行を作成する時などに使用される。また、表図形の集計行に表示される集計値を算出するために、集計範囲（データブレイク）を設定する必要がある。データブレイクの設定はフォーム情報設計システムにて表示された画面４０１から行うことができる。画面４０１に対する操作により図１１が表示され、ユーザは図１１の画面を使って集計行に対する集計基準とするデータ（ブレイクキー）の設定を行う。
【００１４】
印刷制御装置１０１が、集計行が定義された複数の表図形を含むフォーム情報ファイルと、対応するフィールドデータファイル４０８、４０９とを読み込む。そして、印刷制御装置１０１が、読み込んだフォーム情報ファイルとフィールドデータファイル４０８、４０９とを重ね合わせて印刷を指示することでオーバレイ印刷を実行する。図４の４１１はオーバレイ印刷結果を示す。
【００１５】
図１は、本実施形態のシステム構成例を示す図である。
【００１６】
図１に示すシステムは、印刷制御装置１０１とプリンタ１１１とを備える。印刷制御装置１０１は、本実施形態の情報処理装置であってオーバレイ印刷を指示する。すなわち、印刷制御装置１０１はテキストデータであるフィールドデータファイルと所定のフォーム情報を含むフォーム情報ファイルとを重ね合わせて表図形を含む印刷ページを生成する。そして、印刷制御装置１０１内のプリンタドライバが、印刷ページに基づく印刷ジョブを生成することで、プリンタ１１１は上記生成した印刷ページを印刷する。フォーム情報ファイルは集計行が定義された複数の表図形を含む。
【００１７】
印刷制御装置１０１は、フォーム内の原稿用紙形式の枠線等をフォーム情報として外部記憶装置１０９に記憶する。また、印刷制御装置１０１は、例えば、ネットワーク接続機構１０５やキーボード装置１０３を介して印刷制御装置１０１に入力されたフィールドデータファイルを外部記憶装置１０９に記憶する。印刷制御装置１０１は、ページ情報呼び出し機能を用いてフィールドデータを取得し、フォーム情報呼び出し機能を用いてフォーム情報を取得する。そして、印刷制御装置１０１は、取得したフィールドデータとフォーム情報とを重ね合わせて印刷ページを生成し、印刷を指示する。印刷制御装置１０１は、表示装置１０２、キーボード装置１０３、操作卓制御装置（Ｔｅｒｍｉｎａｌ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ：ＴＣＵ）１０４を備える。また、印刷制御装置１０１は、ネットワーク接続機構（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒ：ＮＩＣ）１０５、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０６を備える。また、印刷制御装置１０１は、主記憶装置（Ｃｅｎｔｒａｌ  Ｓｔｏｒａｇｅ  ：ＣＳ）１０７、外部記憶制御装置（Ａｕｘｉｌｉａｒｙ  Ｓｔｏｒａｇｅ  Ｃｏｎｔｒｏｌｌｅｒ：ＡＳＣ）１０８を備える。また、印刷制御装置１０１は、外部記憶装置（Ａｕｘｉｌｉａｒｙ  Ｓｔｏｒａｇｅ  Ｕｎｉｔ：ＡＳＵ）１０９、入出力制御装置（Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｃｏｎｔｒｏｌｌｅｒ  ：ＩＯＣ）１１０を備える。ＣＰＵ１０６、操作卓制御装置１０４、主記憶装置１０７、外部記憶制御装置１０８、入出力制御装置１１０は、互いにシステムバス１１２を介して接続されている。
【００１８】
ＣＰＵ１０６は、主記憶装置１０７に記憶されている制御プログラムに従って、印刷制御装置全体の動作を制御する。主記憶装置１０７は、外部記憶制御装置１０８を介して外部記憶装置１０９からロードされたアプリケーションプログラムが記憶されるメモリ領域を有する。印刷制御装置１０１は、主記憶装置１０７のメモリ領域内に記憶されるプログラムによって実現されるフォーム情報設計システム２０１とオーバレイ印刷システム３０１とを備える。
【００１９】
ＣＰＵ１０６は、フォーム情報設計システム２０１を用いてフォーム情報を設計し外部記憶装置１０９に記憶する。また、ＣＰＵ１０６は、オーバレイ印刷システム３０１を用いて外部記憶装置１０９からフォーム情報とフィールドデータとを読み込む。ＣＰＵ１０６は、読み込んだフォーム情報とフィールドデータとを重ね合わせて印刷ページとしての表図形を生成する。そして、ＣＰＵ１０６は、プリンタドライバ等を用いて印刷ページに基づく印刷ジョブを生成し、表図形を印刷するために印刷ジョブをプリンタ１１１に送信する。これにより、オーバレイ印刷が実行される。
【００２０】
なお、フォームオーバレイ処理は、プリンタ側で行われても良い。つまり、ＣＰＵ１０６が、印刷指示を受け付ける前にフォーム情報をプリンタ１１１に送信する。そしてプリンタ１１１がフォーム情報を登録する。その後、ＣＰＵ１０６がフィールドデータに基づいて印刷ジョブを生成してプリンタに送信してもよい。そして、ＣＰＵ１０６が印刷ジョブを送信する際に、フォーム情報を指定してオーバレイ印刷を指示することで、フィールド情報と上記印刷ジョブとを用いたオーバレイ印刷がプリンタ１１１にて実行される。
【００２１】
主記憶装置１０７上の制御プログラムや各種アプリケーションプログラムは、オペレータ操作卓とネットワーク接続機構１０５とによって実行される。オペレータ操作卓は、表示装置１０２、キーボード装置１０３、操作卓制御装置１０４を備える。表示装置１０２は表示対象の情報を表示する。キーボード装置１０３は、ユーザの操作入力に応じた操作入力情報を入力する。操作卓制御装置１０４は、表示装置１０２に指示して表示対象の情報を表示させたり、キーボード装置１０３が入力した操作入力情報をＣＰＵ１０６に送信したりする。ネットワーク接続機構１０５は、ＬＡＮやＷＡＮ等のネットワークを介して接続された外部のコンピュータシステムからの指示情報を本コンピュータシステムに取り込む。ＬＡＮはＬｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略語である。また、ＷＡＮはＷｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略語である。入出力制御装置１１０はプリンタ１１１と印刷制御装置１０１との通信を媒介する。
【００２２】
プリンタ１１１は、印刷制御装置１０１のＣＰＵ１０６の指示に従って送信された印刷ジョブに基づいて表図形を印刷する。本実施形態の情報処理装置の制御方法及びそのコンピュータプログラムは、図１に示す印刷制御装置１０１が備える各処理部の機能によって実現される。
【００２３】
図２は、印刷制御装置１０１で動作するフォーム情報設計システムの構成例を示す図である。
【００２４】
フォーム情報設計システム２０１は、ＣＰＵ１０６がフォーム情報設計システムを利用する時に図１に示す主記憶装置１０７上に存在するフォーム情報設計プログラムによって実現される。フォーム情報設計システム２０１は、ＣＰＵ１０６の指示に従ってフォーム情報の設計処理を実行する。
【００２５】
フォーム情報設計システム２０１は、フォーム情報バッファ２０２、表示制御部２０３、描画制御部２０４、ファイル入出力部２０５、ユーザインタフェース部２０６を備える。表示制御部２０３は、ユーザインタフェース部２０６を介してフォーム情報作成命令を受け取る。フォーム情報作成命令は、フォーム情報を設計することを指示するための命令である。表示制御部２０３は、受け取ったフォーム情報作成命令を解析して描画制御部２０４、ファイル入出力部２０５に内部命令として処理要求を発する。また、表示制御部２０３は、描画制御部２０４とファイル入出力部２０５の処理結果を受け取り、この処理結果を表示装置１０２に表示する。
【００２６】
具体的には、表示制御部２０３は、キーボード装置１０３やポインティングデバイス等を用いて入力されたユーザの設定命令やフォーム情報作成命令等の各種命令を受け付ける。また、表示制御部２０３は、描画制御部２０４に指示してフォーム情報を設計させる。設計されたフォーム情報はフォーム情報バッファ２０２に記憶される。表示制御部２０３は、フォーム情報バッファ２０２内に記憶された現在設計中のフォーム情報に基づく表図形を表示装置１０２に表示する。
【００２７】
描画制御部２０４は、フォーム情報を設計しフォーム情報バッファ２０２に記憶する。また、描画制御部２０４は、フォーム情報バッファ２０２からフォーム情報を読み出して、このフォーム情報を表示制御部２０３とファイル入出力部２０５とに送信する。ファイル入出力部２０５は、描画制御部２０４から送信されたフォーム情報を含むフォーム情報ファイル２０７を生成し外部記憶装置１０９に記憶する。また、ファイル入出力部２０５は、ユーザインタフェース部２０６を介して入力された命令に基づいて、フォーム情報ファイル２０７の読み書きを行う。ユーザインタフェース部２０６は、キーボード装置１０３やポインティングデバイス等を用いて入力されたユーザの設定命令やフォーム情報作成命令等の各種命令をフォーム情報設計システム２０１に入力する。
【００２８】
図３は、オーバレイ印刷システムの構成例を示す図である。オーバレイ印刷システムは、フォーム情報設計システム２０１で生成されたフォーム情報ファイル２０７を使って出力処理（例えば、印刷処理や表示処理）を実行する場合に動作する。
【００２９】
オーバレイ印刷システム３０１は、ＣＰＵ１０６がオーバレイ印刷システム３０１を利用する時に図１に示す主記憶装置１０７上に存在するオーバレイ印刷プログラムによって実現される。オーバレイ印刷システム３０１は、ＣＰＵ１０６の指示に従って印刷ページの生成処理を実行する。
【００３０】
ユーザインタフェース部３０３は、ファイル入出力部３０２が読み込んだフォーム情報ファイル３０８とフィールドデータファイル３０９を取得する。なお、図３のフォーム情報ファイル３０８は、フォーム情報設計システム２０１により記憶されたフォーム情報ファイル２０７と同じである。そして、ユーザインタフェース部３０３は、取得したフォーム情報ファイル３０８の名称の一覧と、取得したフィールドデータファイル３０９の名称の一覧とを表示装置１０２に表示させる。また、ユーザインタフェース部３０３は、キーボード装置１０３またはポインティングデバイスを用いて入力されたユーザが指定するフォーム情報ファイルの名称、フィールドデータファイルの名称等の選択指示情報を受け付け、ファイル入出力部３０２へ出力する。
【００３１】
ファイル入出力部３０２は、指定されたフォーム情報ファイルの名称に基づいて、外部記憶装置１０９からフォーム情報ファイル３０８を読み出す。また、ファイル入出力部３０２は、指定されたフィールドデータファイルの名称に基づいて、外部記憶装置１０９からフィールドデータファイル３０９を読み出す。
【００３２】
印刷制御部３０４は、ファイル入出力部３０２が読み出したフォーム情報ファイル３０８が示すフォーム情報と、フィールドデータファイル３０９が示すフィールドデータとを重ね合わせて、印刷ページとしての表図形を生成する。
【００３３】
ページ生成部３０５は、印刷制御部３０４で生成された印刷ページを受け取り、この印刷ページを解析し必要なページ情報を生成・管理する。印刷制御部３０４は、ユーザインタフェース部３０３を介して印刷ページの出力命令を受け取ると、ページ生成部３０５から印刷ページの出力に必要なページ情報を受け取り、出力制御部３０６を介して印刷ページを出力装置３０７に送信する。その結果、印刷ページが表示または印刷される出力装置３０７はプリンタ１１１のほか、処理結果を表示装置１０２に表示する場合もある。
【００３４】
次に、本実施例の具体的な動作について説明する。
【００３５】
図１５は、本発明の実施例のフォーム情報設計システム２０１におけるフォーム情報ファイル２０７を作成するフローチャートである。なお、本願のフローチャートの各ステップは、ＣＰＵ１０６がメモリからフローチャートの処理に関係するプログラムを読み出して実行することで実行される。
【００３６】
ポインティングデバイス等を介して入力されたユーザからのフォーム作成命令を受け取ると、フォーム情報設計システム２０１は、フォーム作成命令を描画制御部２０４、ファイル入出力部２０５に指示しフォーム情報ファイル２０７を作成する（Ｓ１５０１）。次に、フォーム情報設計システム２０１は、ユーザからフィールドデータを受け取るための項目（フィールド）の作成指示命令がされたと判断した場合、フォーム情報ファイル２０７に基づいてフィールドを作成する（Ｓ１５０２）。Ｓ１５０２によって作成されたフィールドは、図４の４０２、４０３、４０６、４０７のような、フォーム情報設計システム２０１にて表示された専用の画面内にアイテムとして表示される。
【００３７】
フォーム情報設計システム２０１は、ユーザから表図形の作成が指示された場合、フォーム情報ファイル２０７に基づいて表図形の作成・編集を行う（Ｓ１５０３）。これにより、フォーム情報ファイル２０７が示す設定が反映された表図形が作成される。
【００３８】
フォーム情報設計システム２０１は、ユーザからの指示命令が、Ｓ１５０３において作成された複数の表図形に対する対照表示の設定を行うものであるか否かを判断する（Ｓ１５０４）。具体的には、ユーザが、図６（ａ）で示すようなメニュー６０２の操作を行ったか否かで判断する。この操作を実現する別の方法として、図６（ｂ）のように、ユーザがポインティングデバイス等を介して対照表示を希望する複数の表図形を選択し（６１１）、表示されるメニュー６１２の操作を行ったか否かで判断するのでも良い。
【００３９】
Ｓ１５０４においてＹｅｓと判断された場合、フォーム情報設計システム２０１は、図６（ｃ）に示対照表示の設定画面６２１を表示する。フォーム情報設計システム２０１は、ユーザから設定画面６２１を介して複数の表図形に対する対照表示の設定を受け付ける（Ｓ１５０５）。ここで設定する項目には、対照表示する表図形の名称６２２と位置を揃える集計行の名称６２３がある。
【００４０】
続いて、Ｓ１５０５における複数の表図形に対する対照表示の設定に従い、フォーム情報設計システム２０１は、対照表示する表図形の表示を更新する必要があるか否かを判断する（Ｓ１５０６）。例えば、対照表示すべき複数の表図形の上端がそろっていない場合（図６（ａ）のような場合）、フォーム情報設計システム２０１は、表図形の表示を更新する必要があると判断する。
【００４１】
Ｓ１５０６において、対照表示する表図形の表示を更新する必要があると判断された場合、フォーム情報設計システム２０１は、フォーム情報ファイルに基づいて対照表示する表図形の表示を更新する（Ｓ１５０７）。具体的には、図６（ａ）のように行数および表図形の上端が揃っていない状態から図７に示す状態に更新される。なお、更新方法の一例としては、図６（ａ）のように表示された複数の表図形を含む外接矩形領域を算出し、対照表示する複数の表図形の描画開始位置が外接矩形領域の上端と揃うように描画する。また、対照表示する複数の表図形の中で位置を揃える対象として指定された集計行７０２、７０３が、外接矩形領域７０１の下端で揃うように描画する。また、必要に応じて各表図形には、行や空白行が追加される。この更新処理により、例えば図６（ａ）が図７に更新される。
【００４２】
次に、フォーム情報設計システム２０１は、表図形の作成・編集が終了したか否かを判断する（Ｓ１５０８）。
【００４３】
Ｓ１５０８において、表図形の作成・編集が終了していないと判断された場合には、Ｓ１５０３に戻る。
【００４４】
Ｓ１５０８において、表図形の作成・編集が終了したと判断された場合、フォーム情報設計システム２０１がフォーム情報ファイル２０７を保存するか否かを判断する（Ｓ１５０９）。
【００４５】
Ｓ１５０９において、フォーム情報設計システム２０１がフォーム情報ファイル２０７を保存しないと判断した場合は処理を終了する。
【００４６】
Ｓ１５０９において、フォーム情報設計システム２０１がフォーム情報ファイルを保存すると判断した場合、フォーム情報ファイル２０７を外部記憶装置１０９に保存する（Ｓ１５１０）。この時、Ｓ１５０７において算出された外接矩形領域の情報も、フォーム情報ファイル２０７内にもつフォームの用紙情報を基準とする座標値として保持される。
図１６は、本発明の実施例のオーバレイ印刷システム３０１において、フォーム情報ファイル３０８とフィールドデータファイル３０９を指定し、オーバレイ印刷を実行する動作を表したフローチャートである。オーバレイ印刷システム３０１は、ユーザの操作入力に応じて、フォーム情報ファイルの名称と、フィールドデータファイルの名称と、オーバレイ印刷の指示命令とが入力されたときにオーバレイ印刷処理を開始する。
【００４７】
最初に、オーバレイ印刷システム３０１は、ユーザの操作入力がオーバレイ印刷の指示命令であるか否かを判断する（Ｓ１６０１）。
【００４８】
Ｓ１６０１において、ユーザの操作入力がオーバレイ印刷の指示命令でないと判断された場合には処理を終了する。
【００４９】
Ｓ１６０１において、ユーザの操作入力がオーバレイ印刷の指示命令であると判断された場合には、オーバレイ印刷システム３０１が、指定されたフォーム情報ファイル３０８を読み込む（Ｓ１６０２）。
【００５０】
続いて、オーバレイ印刷システム３０１は、フォーム情報ファイル３０８内に、Ｓ１６０５において設定された表図形の対照表示の設定情報が存在するか否かを判断する（Ｓ１６０３）。
【００５１】
Ｓ１６０３において、表図形の対照表示の設定情報が存在すると判断された場合、オーバレイ印刷システム３０１は、表図形の対照表示に必要な情報を取得する（Ｓ１６０４）。ここで取得される情報には、表図形の行数、罫線等の構成情報のほか、Ｓ１５０７において算出された外接矩形領域の情報なども含まれる。
【００５２】
次に、オーバレイ印刷システム３０１は、指定されたフィールドデータファイル３０９を読み込む（Ｓ１６０５）。
【００５３】
続いて、オーバレイ印刷システム３０１は、フォーム情報ファイル２０８とフィールドデータファイル３０９を用いてオーバレイ印刷処理を実行する（Ｓ１６０６）。これにより、印刷対象のページである印刷ページが生成される。ページ生成部３０５は、印刷ページ情報を管理する。なお、Ｓ１６０６の処理は、図１７にて詳細に説明する。
【００５４】
Ｓ１６０３において、表図形の対照表示の設定情報が存在しないと判断された場合には、従来のオーバレイ処理を行う（Ｓ１６０７）。
【００５５】
図１７における処理フローは、図１６のステップＳ１６０６において実行されるオーバレイ印刷処理に含まれる処理の一例を示す。
【００５６】
最初に、オーバレイ印刷システム３０１は、印刷ページのカウンタの初期化と（Ｓ１７０１）、対照表示する表図形の集計行を揃えて印刷ページに描画するか否かを判断するためのフラグ（集計行描画フラグ）の初期化を行う（Ｓ１７０２）。続けて、オーバレイ印刷システム３０１は、対照表示する２つの表図形（表図形Ａ、表図形Ｂ）それぞれに指定されたフィールドデータファイル３０９から、表図形Ａ、表図形Ｂとオーバレイされるべきフィールドデータを取得する（Ｓ１７０３、Ｓ１７０４）。
【００５７】
オーバレイ印刷システム３０１は、Ｓ１５０７にて算出された外接矩形領域の上端を各表図形の描画開始位置とし、各表図形に対してデータ行としてＳ１７０３、Ｓ１７０４にて取得したフィールドデータを順次描画した時の描画終了位置を座標値として算出する。そして、オーバレイ印刷システム３０１は、算出された座標値に基づいて、表図形Ａの集計行が外接矩形領域内に描画できるか否かを判断する（Ｓ１７０５）。
Ｓ１７０５において、表図形Ａの集計行が外接矩形領域内に描画できないと判断された場合、オーバレイ印刷システム３０１は、集計行表示フラグをＦＡＬＳＥに更新する（Ｓ１７０７）。
【００５８】
同様に、オーバレイ印刷システム３０１は、表図形Ｂの集計行が外接矩形領域内に描画できるか否かを判断する（Ｓ１７０６）。
【００５９】
Ｓ１７０６において、表図形Ｂの集計行が外接矩形領域内に描画できないと判断された場合、オーバレイ印刷システム３０１は、集計行表示フラグをＦＡＬＳＥに更新する（Ｓ１７０７）。
【００６０】
オーバレイ印刷システム３０１は、Ｓ１５０７において算出された外接矩形領域の上端を各表図形の描画開始位置に設定し、表図形Ａ、表図形Ｂのデータ行としてＳ１７０３、Ｓ１７０４において取得したフィールドデータを順次描画する（Ｓ１７０８、Ｓ１７０９）。この時、表図形Ａ、表図形Ｂのデータ行の描画終了位置は、主記憶装置１０７に一時的に保持される。また、描画終了位置は、各表図形に割り当てられるフィールドデータによって決まる。
【００６１】
次に、オーバレイ印刷システム３０１は、集計行描画フラグの値を判断する（Ｓ１７１０）。
【００６２】
Ｓ１７１０において、集計行描画フラグの値がＴＲＵＥであると判断された場合、オーバレイ印刷システム３０１は、処理対象の印刷ページに表図形Ａ、表図形Ｂの集計行の位置を揃えて描画できると判断する。そのため、オーバレイ印刷システム３０１は、Ｓ１７０８、Ｓ１７０９の各処理で算出された表図形Ａ、表図形Ｂのデータ行の描画終了位置を取得し、この値に基づいて集計行の描画開始位置を決定する（Ｓ１７１１）。具体的に説明する。図８の例では、表図形Ａの集計行の描画開始位置は、４行分のフィールドデータが描画された描画終了位置であり、表図形Ｂの集計行の描画開始位置は、２行分のフィールドデータが描画された描画終了位置である。そして、表図形ＡとＢの集計行の描画開始位置を揃えるために、オーバレイ印刷システム３０１は、表図形Ａにおいて特定された４行分のフィールドデータが描画された描画終了位置を、描画開始位置として決定する。Ｓ１７１１にて決定された集計行の描画開始位置は、主記憶装置１０７に一時的に保持される。
【００６３】
オーバレイ印刷システム３０１は、Ｓ１７１１において算出された集計行の描画開始位置と表図形Ａのデータ行の描画終了位置が同じであるか否かを判断する（Ｓ１７１２）。
Ｓ１７１２において、集計行の描画開始位置が、表図形Ａのデータ行の描画終了位置と異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ａのデータ行の描画終了位置から集計行の描画開始位置の間に配置すべき空行を生成し描画する（Ｓ１７１３）。なお、図８の例では表図形Ａを基準にしているためＳ１７１２にて同じと判定される。
同様に、オーバレイ印刷システム３０１は、Ｓ１７１１において算出された集計行の描画開始位置と表図形Ｂのデータ行の描画終了位置が同じであるか否かを判断する（Ｓ１７１４）。
【００６４】
Ｓ１７１４において、集計行の描画開始位置が表図形Ｂのデータ行の描画終了位置と異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ｂのデータ行の描画終了位置から集計行の描画開始位置の間に配置すべき空行を生成し描画する（Ｓ１７１５）。なお、図８の例では表図形Ａを基準にしているためＳ１７１４にて異なると判定され、表図形Ｂに空行が描画される。続けて、オーバレイ印刷システム３０１は、Ｓ１７１１で算出した集計行の描画開始位置を主記憶装置１０７から取得し、この値に基づいて表図形Ａ、表図形Ｂの集計行を描画する（Ｓ１７１６、Ｓ１７１７）。
【００６５】
Ｓ１７１０において、集計行描画フラグの値がＦＡＬＳＥであると判断された場合、オーバレイ印刷システム３０１は、処理対象の印刷ページに表図形Ａ、表図形Ｂの集計行の位置を揃えて描画できないと判断する。この時、オーバレイ印刷システム３０１は、Ｓ１７０８において算出された表図形Ａのデータ行の描画終了位置を取得し、この値が、印刷ページの外接矩形領域下端と同じであるか否かを判断する（Ｓ１７１８）。
【００６６】
Ｓ１７１８において、表図形Ａに対するデータ行の描画終了位置が外接矩形領域下端と異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ａのデータ行の描画終了位置から外接矩形領域下端の間に配置されるべき空行を生成し描画する（Ｓ１７１９）。
【００６７】
同様に、表図形Ｂに対して、主記憶装置１０７から、Ｓ１７０８において算出されたデータ行の描画終了位置を取得し、この値が、印刷ページの外接矩形領域下端と同じであるか否かを判断する（Ｓ１７２０）。
【００６８】
Ｓ１７２０において、表図形Ｂに対するデータ行の描画終了位置が、外接矩形領域下端と異なると判断された場合には、表図形Ｂのデータ行の描画終了位置から外接矩形領域下端まで空行を生成し描画する（Ｓ１７２１）。続いて、オーバレイ印刷システム３０１は、フィールドデータの解析が終了したか否かを判断する（Ｓ１７２２）。
【００６９】
Ｓ１７２２において、フィールドデータの解析が終了したと判断された場合には、処理を終了する。
【００７０】
Ｓ１７２２において、フィールドデータの解析が終了していないと判断された場合、オーバレイ印刷システム３０１は、印刷ページのカウンタの更新（Ｓ１７２３）、集計行描画フラグの初期化（Ｓ１７２４）を行う。そして、改ページ処理を実行して（Ｓ１７２５）、Ｓ１７０３に戻る。
【００７１】
ここでＳ１７１０にてＦＡＬＳＥと判定された場合の一例を説明する。例えば、表図形Ａには１ページを超えるフィールドデータが挿入され、表図形Ｂには１ページ内に収まるフィールドデータが挿入される場合が考えられる。上記の例では、Ｓ１７１８でＹｅｓと判定され、Ｓ１７２０でＮｏと判定される。そして、表図形Ａには２ページ目に配置すべきフィールドデータが残っているためＳ１７２２にてＮｏと判定され、改ページ処理が実行される。ここで、オーバレイ印刷システム３０１の処理対象ページは２ページ目に変化する。表図形Ａのフィールドデータが２ページ目に収まる場合、２ページ目の処理としてＳ１７１０ではＴＲＵＥと判定され、Ｓ１７１１以降の処理が実行される。なお、２ページ目には表図形Ｂのフィールドデータは配置されず、表図形Ｂの集計行のみが配置されることになる。
【００７２】
図８は、対照表示の設定がされた表図形を含むフォーム情報ファイル８０１と、それぞれの表図形に指定されたフィールドデータファイル８０２、８０３を用いてオーバレイ印刷処理をおこなった場合の一例を示す。オーバレイ印刷結果８１１において、それぞれの表図形の集計行の表示位置を揃えるために、集計行の描画開始位置まで空行８１２が生成され描画される。
【００７３】
以上の処理により、複数の表図形を並べて出力する際にユーザが所望とする行の位置を容易に揃えることが可能となり、ユーザの操作性が向上する。
【実施例２】
【００７４】
実施例１では、行の高さが同じである複数の表図形に対して対照表示の設定を行った場合、それぞれの表図形の集計行の表示位置を揃えて表示できるというものであった。本実施例２では、行の高さが異なる複数の表図形に対して対照表示の設定を行った場合でも、それぞれの表図形の集計行の表示位置を揃えて表示するための方法について説明する。
【００７５】
図１８は、本発明の実施例２のフォーム情報設計システム２０１におけるフォーム情報ファイル２０７を作成するフローチャートである。ここでは、実施例１の図１５の説明と重複する部分については省略する。
【００７６】
Ｓ１８０６において、フォーム情報設計システム２０１は、対照表示する表図形の表示を更新する必要があると判断された場合、対照表示する複数の表図形の行の高さが同じであるか否かを判断する（Ｓ１８０７）。
【００７７】
Ｓ１８０７において、対照表示する表図形の行の高さが異なると判断された場合、フォーム情報設計システム２０１は、対照表示する表図形の中で最大となる集計行の高さを算出する（Ｓ１８０８）。そして、フォーム情報ファイル２０７およびＳ１８０８において算出した値に基づいて、対照表示する表図形の表示を更新する（Ｓ１８０９）。具体的には、図９に示すように、表図形の行の高さが異なる複数の表図形９０２、９０３に対して対照表示の設定が行われた場合、フォーム情報設計システム２０１は、対照表示する表図形を含む外接矩形領域９０４を算出する。そして、フォーム情報設計システム２０１は、対照表示する表図形の描画開始位置が外接矩形領域９０４の上端と揃うように描画する。ただし、対照表示する表図形の集計行９０５については、Ｓ１８０８において算出した値で外接矩形領域９０４の下端で揃うように描画される。つまり、図９では、表図形Ａ９０２と表図形Ｂ９０３では、集計行の高さが異なり、かつ、表図形Ａ９０２の集計行の高さのほうが表図形Ｂ９０３の集計行の高さよりも高い。よって、両者の表図形の集計行の高さが、表図形Ａ９０２の集計行の高さに揃えられる。その結果、図９（ａ）が図９（ｂ）に更新される。
【００７８】
本発明の実施例２のオーバレイ印刷システム３０１において、フォーム情報ファイル３０８とフィールドデータファイル３０９を指定しオーバレイ印刷する動作については、実施例１と同様である。
【００７９】
そして、図９の９０５の状態に更新された後のフィールドデータの挿入処理が図１０に示される。図１０は、Ｓ１８０９の更新処理が行われた複数の表図形を含むフォーム情報ファイル１００１と、それぞれの表図形に指定されたフィールドデータファイル１００２、１００３でオーバレイ印刷処理をおこなった場合の一例を示したものである。オーバレイ印刷結果１０１１において、それぞれの表図形の集計行１０１２は、行の高さならびに表示位置を揃えて描画される。また、実施例１と同様に、データ行と集計行の間には必要に応じて空白行が配置される。
【００８０】
本実施例２の処理により、表図形の行の高さが異なる複数の表図形に対する対照表示が、フォーム情報ファイルを編集することなく実現することができる。つまり、ユーザの操作負荷が増大することなく、集計行の位置が揃った複数の表図形を表示できる。
【実施例３】
【００８１】
実施例１、実施例２では、対照表示する表図形に定義された１つの集計行の表示位置を揃えて表示するというものであった。本実施例３では、表図形に複数の集計行が定義されている場合でも、それぞれの集計行の表示位置を揃えて表示するための方法について説明する。つまり、本実施例３は、図１３の表図形１３０１から図１４の出力結果１４１１を得ることを目的とする。
【００８２】
図１３は、複数の集計行が定義された表図形１３０２、１３０３に対して対照表示の設定が行われ、表図形１３０２、１３０３が、それらを含む外接矩形領域１３１１内で描画された一例を示したものである。表図形１３０２、１３０３は、予め、図１１に示すようなデータブレイクの設定１１０１がされている。図１１では、表図形１３０２の小計Ａ、表図形１３０３の小計Ｂは、項目名をブレイクキー１１０２として集計処理を行うことを設定している。また、図１２に示すように、表図形の対照表示の設定１２０１において、表示位置を揃える集計行組として複数の組が設定されている（１２０２）。なお、ブレイク発生時に描画される集計行（上記例では小計Ａ、小計Ｂ）は、ブレイク用集計フィールドと呼ぶこともある。
【００８３】
図１９−１、図１９−２は、本発明の実施例３のオーバレイ印刷システム３０１におけるオーバレイ印刷処理の一例を示す。
【００８４】
最初に、オーバレイ印刷システム３０１は、印刷ページのカウンタの初期化と（Ｓ１９０１）、対照表示する表図形の集計行を印刷ページに描画するか否かを判断するためのフラグ（集計行描画フラグ）の初期化（Ｓ１９０２）を行う。また、オーバレイ印刷システム３０１は、対照表示する表図形（表図形Ａ、表図形Ｂ）の集計行を描画する際、集計行の集計範囲に集計対象とするデータが存在するか否かを判断するためのフラグ（集計対象データ存在フラグ）の初期化を行う（Ｓ１９０３）。続けて、オーバレイ印刷システム３０１は、表図形Ａ、表図形Ｂそれぞれに指定されたフィールドデータファイル３０９から、データブレイクの設定１１０１に基づいて、表図形Ａで定義された集計行を描画するための集計範囲となるデータを取得する（Ｓ１９０４）。例えば、図１４のフィールドデータファイル１４０２では、３行目のフィールドデータと４行目のフィールドデータでブレイクが発生しているため、３行分のフィールドデータが取得される。
【００８５】
オーバレイ印刷システム３０１は、表図形Ａで定義された集計行を描画するための集計範囲となるデータが存在するか否かを判断する（Ｓ１９０５）。例えば、図１４のフィールドデータファイル１４０２では、３行分のフィールドデータがあるため存在すると判断される。
【００８６】
Ｓ１９０５においてオーバレイ印刷システム３０１が、表図形Ａで定義された集計行を描画するための集計範囲となるデータが存在しないと判断した場合、表図形Ａの集計対象データ存在フラグをＦＡＬＳＥに更新する（Ｓ１９０６）。
【００８７】
同様に、オーバレイ印刷システム３０１は、表図形Ｂで定義された集計行を描画するための集計範囲となるデータを取得する（Ｓ１９０７）。例えば、図１４のフィールドデータファイル１４０３では、１行目のフィールドデータと２行目のフィールドデータでブレイクが発生しているため、１行分のフィールドデータが取得される。
【００８８】
オーバレイ印刷システム３０１は、表図形Ｂで定義された集計行を描画するための集計範囲となるデータが存在するか否かを判断する（Ｓ１９０８）。例えば、図１４のフィールドデータファイル１４０３では、１行分のフィールドデータがあるため存在すると判断される。
【００８９】
Ｓ１９０８においてオーバレイ印刷システム３０１は、表図形Ｂで定義された集計行を描画するための集計範囲となるデータが存在しないと判断された場合、表図形Ｂの集計対象データ存在フラグをＦＡＬＳＥに更新する（Ｓ１９０９）。
【００９０】
次に、オーバレイ印刷システム３０１は、Ｓ１９０４、Ｓ１９０７において取得したフィールドデータを、外接矩形領域１３１１の上端を描画開始位置とし、表図形Ａ、表図形Ｂに対してデータ行として順次描画した時の描画終了位置を座標値として算出する。例えば、フィールドデータ１４０２では、最初のブレイクまでは３行分のフィールドデータが取得されているため、３行分のフィールドデータを描画した時の描画終了位置が座標値として算出される。
【００９１】
そして、オーバレイ印刷システム３０１は、この座標値に基づいて、表図形Ａの集計行が印刷ページの外接矩形領域内に描画できるか否かを判断する（Ｓ１９１０）。図１４の例では小計Ａが外接矩形領域内に描画可能か判定される。
【００９２】
Ｓ１９１０において、表図形Ａの集計行が印刷ページの外接矩形領域内に描画できないと判断された場合、オーバレイ印刷システム３０１は、集計行表示フラグをＦＡＬＳＥに更新する（Ｓ１９１２）。
【００９３】
同様に、オーバレイ印刷システム３０１は、表図形Ｂの集計行が印刷ページの外接矩形領域内に描画できるか否かを判断する（Ｓ１９１１）。図１４の例では小計Ｂが外接矩形領域内に描画可能か判定される。
【００９４】
Ｓ１９１１において、表図形Ｂの集計行が印刷ページの外接矩形領域内に描画できないと判断された場合、オーバレイ印刷システム３０１は、集計行表示フラグをＦＡＬＳＥに更新する（Ｓ１９１２）。
【００９５】
続けて、オーバレイ印刷システム３０１は、外接矩形領域１３１１の上端を描画開始位置に設定して、表図形Ａ、表図形Ｂのデータ行としてＳ１９０４、Ｓ１９０７において取得したフィールドデータを、順次描画する（Ｓ１９１３、Ｓ１９１４）。この時、表図形Ａ、表図形Ｂのデータ行の描画終了位置は、主記憶装置１０７に一時的に保持される。
次に、オーバレイ印刷システム３０１は、集計行描画フラグの値を判断する（Ｓ１９１５）。
【００９６】
Ｓ１９１５において、オーバレイ印刷システム３０１は、集計行描画フラグの値がＴＲＵＥであると判断された場合、印刷ページに表図形Ａ、表図形Ｂの集計行の位置を揃えて描画できると判断する。そのため、オーバレイ印刷システム３０１は、Ｓ１９１３、Ｓ１９１４の各処理で算出された表図形Ａと表図形Ｂのデータ行の描画終了位置を主記憶装置１０７から取得する。そして、オーバレイ印刷システム３０１は、この値に基づいて集計行の描画開始位置を算出する（Ｓ１９１６）。具体的に説明する。図１４の例では、表図形Ａの小計Ａの描画開始位置は、３行分のフィールドデータが描画された描画終了位置であり、表図形Ｂの小計Ｂの描画開始位置は、１行分のフィールドデータが描画された描画終了位置である。そして、小計Ａと小計Ｂの描画開始位置を揃えるために、オーバレイ印刷システム３０１は、表図形Ａにおいて特定された３行分のフィールドデータが描画された描画終了位置を、描画開始位置として算出する。Ｓ１９１６にて算出された集計行の描画開始位置は、主記憶装置１０７に一時的に保持される。
【００９７】
Ｓ１９１６において算出された集計行の描画開始位置が、表図形Ａのデータ行の描画終了位置と同じであるか否かを判断する（Ｓ１９１７）。なお、図１４の例では表図形Ａを基準にしているためＳ１９１７にて同じと判定される。
【００９８】
Ｓ１９１７において集計行の描画開始位置が表図形Ａのデータ行の描画終了位置と異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ａのデータ行の描画終了位置から集計行の描画開始位置の間に配置されるべき空行を生成し描画する（Ｓ１９１８）。
【００９９】
同様に、Ｓ１９１６において算出された集計行の描画開始位置が、表図形Ｂのデータ行の描画終了位置と同じであるか否かを判断する（Ｓ１９１９）。なお、図１４の例では表図形Ａを基準にしているためＳ１９１９にて異なると判定される。
【０１００】
Ｓ１９１９において集計行の描画開始位置が表図形Ｂのデータ行の描画終了位置と異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ｂのデータ行の描画終了位置から集計行の描画開始位置の間に配置されるべき空行を生成し描画する（Ｓ１９２０）。
【０１０１】
次に、オーバレイ印刷システム３０１は、表図形Ａの集計対象データ存在フラグの値を判断する（Ｓ１９２１）。
【０１０２】
Ｓ１９２１において、オーバレイ印刷システム３０１は、表図形Ａの集計対象データ存在フラグの値がＦＡＬＳＥであると判断された場合、集計行に表示する集計値０のデータを生成する（Ｓ１９２２）。そして、オーバレイ印刷システム３０１は、Ｓ１９１６で算出した集計行の描画開始位置に基づいて表図形Ａの集計行を描画する（Ｓ１９２３）。Ｓ１９２３において、集計値も描画される。図１４の例では、表図形Ａに１つ目の小計Ａを描画する場合、Ｓ１９２４にてＴＲＵＥと判定されるため、３行分のフィールドデータの合計値が描画される。なお、算出方法は、各集計行に定義されている。
【０１０３】
同様に、オーバレイ印刷システム３０１は、表図形Ｂの集計対象データ存在フラグの値を判断する（Ｓ１９２４）。
【０１０４】
Ｓ１９２４において、オーバレイ印刷システム３０１は、表図形Ｂの集計対象データ存在フラグの値がＦＡＬＳＥであると判断された場合、集計行に表示する集計値０のデータを生成する（Ｓ１９２５）。そして、オーバレイ印刷システム３０１は、Ｓ１９１６で算出した集計行の描画開始位置に基づいて表図形Ｂの集計行を描画する（Ｓ１９２６）。
Ｓ１９１５において、集計行描画フラグの値がＦＡＬＳＥであると判断された場合、オーバレイ印刷システム３０１は、処理対象の印刷ページに表図形Ａ、表図形Ｂの集計行の位置を揃えて描画できないと判断する。この時、表図形Ａに対して、Ｓ１９１３において算出されたデータ行の描画終了位置を主記憶装置１０７から取得し、この値が、印刷ページの外接矩形領域下端と同じであるか否かを判断する（Ｓ１９２７）。
【０１０５】
Ｓ１９２７において、表図形Ａに対するデータ行の描画終了位置が外接矩形領域下端にと異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ａのデータ行の描画終了位置から外接矩形領域下端の間に空行を生成し描画する（Ｓ１９２８）。
【０１０６】
同様に、オーバレイ印刷システム３０１は、Ｓ１９１４において算出されたデータ行の表図形Ｂの描画終了位置を主記憶装置１０７から取得し、この値が、印刷ページの外接矩形領域下端と同じであるか否かを判断する（Ｓ１９２９）。
【０１０７】
Ｓ１９２９において、表図形Ｂに対するデータ行の描画終了位置が、外接矩形領域下端と異なると判断された場合、オーバレイ印刷システム３０１は、表図形Ｂのデータ行の描画終了位置から外接矩形領域下端の間に空行を生成し描画する（Ｓ１９３０）。
【０１０８】
続いて、オーバレイ印刷システム３０１は、フィールドデータの解析が終了したか否かを判断する（Ｓ１９３１）。
【０１０９】
Ｓ１９３１において、フィールドデータの解析が終了したと判断された場合には、処理を終了する。
【０１１０】
Ｓ１９３１において、フィールドデータの解析が終了していないと判断された場合には、集計行描画フラグを初期化（Ｓ１９３２）し、表図形Ａ、表図形Ｂの集計対象データ存在フラグの初期化を行う（Ｓ１９３３）。そして、オーバレイ印刷システム３０１は、Ｓ１９２３、Ｓ１９２６において描画された集計行の描画終了位置が、外接矩形領域下端と同じであるか否かを判断する（Ｓ１９３４）。
【０１１１】
Ｓ１９３４において、集計行の描画終了位置が、外接矩形領域下端と異なると判断された場合には、Ｓ１９０４に戻る。
【０１１２】
Ｓ１９３４において、集計行の描画終了位置が、外接矩形領域下端と同じであると判断された場合には、オーバレイ印刷システム３０１は、印刷ページのカウンタを更新（Ｓ１９３５）し、改ページ処理を実行して（Ｓ１９３６）、Ｓ１９０４に戻る。
【０１１３】
図１４は、対照表示の設定がされた複数の集計行が定義された表図形を含むフォーム情報ファイル１４０１と、それぞれの表図形に指定されたフィールドデータファイル１４０２、１４０３でオーバレイ印刷処理をおこなった場合の一例を示したものである。オーバレイの出力結果１４１１において、表図形の対応した集計行の表示位置が揃うように、集計行の描画開始位置まで空行１４１２が生成され描画される。また、集計行の集計範囲に集計対象データ（データＢ３）が存在しない場合でも、集計値０のデータを自動的に生成し集計行を描画する（１４１３）。
【０１１４】
複雑な構造の複数の表図形に対する対照表示も、フォーム情報ファイルを編集することなく容易に実現することができる。
【０１１５】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読みだして実行する処理である。
【図１】
2015118539.tif 000003
【図２】
2015118539.tif 000004
【図３】
2015118539.tif 000005
【図４】
2015118539.tif 000006
【図５】
2015118539.tif 000007
【図６】
2015118539.tif 000008
【図７】
2015118539.tif 000009
【図８】
2015118539.tif 000010
【図９】
2015118539.tif 000011
【図１０】
2015118539.tif 000012
【図１１】
2015118539.tif 000013
【図１２】
2015118539.tif 000014
【図１３】
2015118539.tif 000015
【図１４】
2015118539.tif 000016
【図１５】
2015118539.tif 000017
【図１６】
2015118539.tif 000018
【図１７】
2015118539.tif 000019
【図１８】
2015118539.tif 000020
【図１９】
2015118539.tif 000021