(57)【要約】      （修正有）【課題】帳票の作成を行う際に、複数の可変表について、データが１ページ内に収まらない場合の動作を制御して帳票を作成する。【解決手段】文書データが合成されるフォームデータであって、前記文書データに含まれる文字列の数に応じて段数が変化する表のフォームを少なくとも２つ含む第１のページと、いずれかを含む第２のページとで構成されるフォームデータとを格納する記憶手段と、前記フォームデータに前記文書データを合成する合成処理手段と、前記合成処理手段における処理結果を出力する出力手段と、前記少なくとも２つの表のフォームのいずれかに合成される文字列の全てが、前記第１のページにおける対応する表のフォーム内に合成されるか否かを判定する判定手段とを備え、前記文字列の全てが前記第１のページの表のフォームに合成されないと判定された場合に、前記合成処理手段は前記第２のページの表のフォームに合成されていない文字列を合成する。【選択図】図１ａ
2005352905.tif 000002
【特許請求の範囲】
【請求項１】
文書データと、前記文書データが合成されるフォームデータであって、前記文書データに含まれる文字列の数に応じて段数が変化する表のフォームを少なくとも２つ含む第１のページと、前記少なくとも２つの表のフォームのいずれかをそれぞれ単一に含む第２のページとでページ単位に構成されるフォームデータとを格納する記憶手段と、
前記フォームデータに前記文書データを合成する合成処理手段と、
前記合成処理手段における処理結果を出力する出力手段と、
前記文書データに含まれる文字列のうち、前記少なくとも２つの表のフォームのいずれかに合成される文字列の全てが、前記第１のページにおける対応する表のフォーム内に合成されるか否かを判定する判定手段とを備え、
前記判定手段により前記文字列の全てが前記第１のページの表のフォームに合成されないと判定された場合に、前記合成処理手段は前記第２のページの表のフォームに合成されていない文字列を合成することを特徴とする情報処理装置。
【請求項２】
前記判定手段は、前記第１のページ及び第２のページに共通に含まれる表のデータに合成される文字列を該共通に含まれる表に合成した場合に、前記第１のページにおいて所定の段数を超えるか否かに基づいて、前記判定を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判定手段は、前記文書データに、改ページを表す文字列が存在するか否かに基づいて、前記判定を行うことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記出力手段は、前記第１のページに含まれる表のフォームの数に一致する枚数分だけ、前記第１のページについての処理結果を出力することを特徴とする請求項１乃至３のいずれかに記載の情報処理装置。
【請求項５】
文書データと、前記文書データが合成されるフォームデータであって、前記文書データに含まれる文字列の数に応じて段数が変化する表のフォームを少なくとも２つ含む第１のページと、前記少なくとも２つの表のフォームのいずれかをそれぞれ単一に含む第２のページとでページ単位に構成されるフォームデータとを格納する記憶手段を備える情報処理装置の制御方法であって、
前記文書データに含まれる文字列のうち、前記少なくとも２つの表のフォームのいずれかに合成される文字列の全てが、前記第１のページにおける対応する表のフォーム内に合成されるか否かを判定する判定工程と、
前記フォームデータに前記文書データを合成する合成処理工程であって、前記判定工程において前記文字列の全てが前記第１のページの表のフォームに合成されないと判定された場合に、前記第２のページの表のフォームに合成されていない文字列を合成する工程と、
前記合成処理工程における処理結果を出力する出力工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項６】
前記判定工程では、前記第１のページ及び第２のページに共通に含まれる表のデータに合成される文字列を該共通に含まれる表に合成した場合に、前記第１のページにおいて所定の段数を超えるか否かに基づいて、前記判定が行われることを特徴とする請求項５に記載の情報処理装置の制御方法。
【請求項７】
前記判定工程では、前記文書データに、改ページを表す文字列が存在するか否かに基づいて、前記判定が行われることを特徴とする請求項５又は６に記載の情報処理装置の制御方法。
【請求項８】
前記出力手段では、前記第１のページに含まれる表のフォームの数に一致する枚数分だけ、前記第１のページについての処理結果が出力されることを特徴とする請求項５乃至７のいずれかに記載の情報処理装置の制御方法。
【請求項９】
請求項５乃至８のいずれか１項に記載の情報処理装置の制御方法をコンピュータに実行させるためのコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納した、コンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びその制御方法、コンピュータプログラム、記憶媒体に関連する。
【背景技術】
【０００２】
帳票等、一定の書式（フォーム）にデータを書き込んで作成される印刷物を作成するために、フォームオーバーレイと呼ばれる手法が用いられている。フォームオーバーレイでは、フォーム部分を表すフォームデータを予め作成し、そのフォームデータの所定箇所に数値や文字列等のフィールドデータと呼ばれるデータを重ね合わせて（オーバーレイして）、それを印刷あるいは表示する（特許文献１を参照。）。
【０００３】
例えば、帳票をオーバーレイ出力する際に、図４のように、帳票のレイアウトを示すフォームファイル４０１（帳票テンプレート）の所定の個所４０２（フィールド）に対し、データファイル４０３のデータを流し込んで出力フォーム４０４を得られるようにしていた（例えば特許文献１参照）。以下、本明細書ではデータが流し込まれる個所（フィールド）を示す図形４０２をフィールド図形と呼ぶことにし、データファイル４０３をフィールドデータと呼ぶことにする。
【０００４】
また、図５のように、サイズが可変的な表を含む帳票を作成することができる。つまり、フィールドデータのデータ量にあわせて、表の行数が可変的に変化する帳票を作成できる。このとき、表が１ページに収まらない場合、複数ページにまたがって表が作成される。また、表の編集により、ある列の合計等の計算結果も表示させることができる。以降、行数が可変的に変化する表を可変表と明記する。
【特許文献１】特開２００１−２８３１４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このようなフィールド図形を用いて、複数の可変表を含む帳票を作成することができるが、複数のうちいずれかの表が１ページに収まらない場合の動作は、制御が困難であった。そのため、ユーザが期待するような帳票出力ができない場合があった。
【０００６】
そこで、本発明では、帳票の作成を行う際に、複数の可変表について、データが１ページ内に収まらない場合の動作を制御して、帳票を作成することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明は、文書データと、前記文書データが合成されるフォームデータであって、前記文書データに含まれる文字列の数に応じて段数が変化する表のフォームを少なくとも２つ含む第１のページと、前記少なくとも２つの表のフォームのいずれかをそれぞれ単一に含む第２のページとでページ単位に構成されるフォームデータとを格納する記憶手段と、前記フォームデータに前記文書データを合成する合成処理手段と、前記合成処理手段における処理結果を出力する出力手段と、前記文書データに含まれる文字列のうち、前記少なくとも２つの表のフォームのいずれかに合成される文字列の全てが、前記第１のページにおける対応する表のフォーム内に合成されるか否かを判定する判定手段とを備え、前記判定手段により前記文字列の全てが前記第１のページの表のフォームに合成されないと判定された場合に、前記合成処理手段は前記第２のページの表のフォームに合成されていない文字列を合成することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ユーザは、複数の可変表が連動する帳票を作成できるようになる。
【発明を実施するための最良の形態】
【０００９】
図１ａは、本実施形態に対応する帳票処理を行う情報処理装置１のハードウェアの構成を表わすブロック図である。このシステムは、ＣＰＵ１０などで構成される中央処理装置と、ＲＯＭ１１／ＲＡＭ１２などで構成される主記憶装置、ＦＤドライブ１３やＨＤドライブ１５などで構成される外部記憶装置、マウス１８などのポインティングデバイス（座標指示手段）やキーボード１６で構成される指示入力装置、ＣＲＴディスプレイ１７などで構成される表示装置、プリンタやプロッタで構成される印刷装置１９と情報処理装置１とを接続するためのプリンタインタフェース（Ｉ／Ｆ）２１とそれらを結ぶシステムバス２０とからなるコンピュータシステムであるものとする。また、このシステムは、ネットワークなどの通信回線を介して他のコンピュータシステムと接続されているものとする。なお、本発明における情報処理装置を、一般のワークステーションやパーソナルコンピュータなどの端末装置を用いて実現することも可能である。
【００１０】
情報処理装置１は、基本Ｉ／ＯプログラムやＯＳおよび帳票処理プログラムをＣＰＵ１０が実行することにより動作する。基本Ｉ／ＯプログラムはＲＯＭ１１に書き込まれており、ＯＳはＨＤ１５に書き込まれているものとする。そして本システム１００の電源がＯＮされたときに、基本Ｉ／Ｏプログラム中のＩＰＬ（イニシャル・プログラム・ローディング）機能によりＨＤ１５からＯＳがＲＡＭ１２に読み込まれ、ＯＳの動作が開始される。
【００１１】
また、本実施形態を実現するための処理プログラム（帳票処理プログラム）および関連データはたとえばＦＤ１４中に記録されており、その記録されている内容の構成を図２に示す。ＦＤ１４に記録された処理プログラム及び関連データは、図１に示すようにＦＤドライブ１３を通じて本コンピュータシステムにロードすることができる。このＦＤ１４がＦＤドライブ１３にセットされると、ＯＳおよび基本Ｉ／Ｏプログラムの制御の下に本処理プログラムおよび関連データがＦＤ１４から読み出され、ＲＡＭ１２にロードされて動作可能となる。図３は、本処理プログラムがＲＡＭにロードされ実行可能となった状態のメモリマップを示す。
【００１２】
なお、本実施形態では、ＦＤ１４から処理プログラム及び関連データを直接ＲＡＭ１２にロードして実行させる例を示したが、この処理プログラム及び関連データを、ＨＤ１５に予め格納（インストール）しておき、本プログラムを動作させる段にＨＤ１５からＲＡＭ１２にロードするようにしてもよい。また本処理プログラムを記録する媒体は、ＦＤ以外にＣＤ−ＲＯＭ、ＩＣメモリカードなど他のリムーバブル記憶媒体１４'を用いることも可能である。さらに本プログラムをＲＯＭ１１に記録しておき、これをメモリマップの一部をなすように構成し、直接ＣＰＵ１０で実行することも可能である。また、ネットワークを介して他の装置から本処理プログラムを読み込んで実行するようにしても構わない。
【００１３】
［第１の実施形態］
まず、フォームオーバーレイ処理全体についてそのあらましを述べる。図１１は、帳票作成プログラムを含む、オーバーレイ印刷全体についての処理の流れを示している。帳票作成プログラム（以後フォームエディタと呼ぶこともある）１１１１は、フォーム（拡張子が「ｆｃｐ」のファイル）あるいは複数のフォームを組み合わせた複合フォーム（拡張子が「ｆｃｐ」のファイル）を作成する。フォームや複合フォームは、ＨＤ１５などに用意されたフォームデータ格納部１１１２に格納される。各フォーム（複合フォームを含む）は、フォームそのものを表すフォームデータ１１１２ａと、フォームと合成されるフィールドデータについて、その位置や文字種等を表したフィールド属性データ１１１２ｂとを含む。
【００１４】
これらフォームデータは、所定のランタイムライブラリ１１１５によってＯＳに対する出力形式のフォームプリントデータ１１１６ａに変換されて、外部記憶装置１５内に確保されたプリンタデータ格納部１１１６に格納される。
【００１５】
一方、フォームオーバーレイ印刷されるフィールドデータは、適当な業務ファイル１１１３により生成され、テキストデータ格納部１１１４に格納される。このデータはオーバーレイされる各フィールドを区分できる形式であればよく、例えばＣＳＶ形式と呼ばれる、一般的に利用されているカンマ区切りの形式等を用いることができる。このフィールドデータも、ランタイムライブラリ１１１５によってフォームデータと同時にＯＳの出力形式の印字プリントデータ１１１６ｂに変換され、プリントデータ格納部１１１６に格納される。このようにランタイムライブラリ１１１５により作成されるＯＳの出力形式の描画データは、Ｗｉｎｄｏｗｓ（登録商標） ＯＳでは、ＧＤＩ関数（Graphical Device Interface）と呼ばれ、ＯＳの描画部であるＧＤＩに渡される。
【００１６】
このようにして作成されたフォームプリントデータ及び印字プリントデータは、オペレーティングシステム１１１７及びプリンタドライバ１１１８によってプリンタ１９に出力され、そこで合成されて印刷される。
【００１７】
図４はフォームファイル４０１のフィールド４０２に対してフィールドデータ４０３をオーバーレイして出力フォーム４０４を生成する形態を示す一例である。本実施形態において、フォームファイル４０１は、帳票のレイアウトを示すファイルであり、フォームファイル４０１上のフィールドは、フィールドデータ４０３のデータが上書きされる領域であり、予め定められた形式が与えられている。フィールド４０２の形式には、例えば文章を記載するための形式や、項目毎にデータを表示する表形式などが含まれる。
【００１８】
フィールドデータ４０３は、テキスト形式のデータで構成され、フィールド４０２の形式に対応して、文字列がカンマで区切られている。例えば、フィールド４０２が表形式であれば、表を構成する各項目に対応してカンマで区切られる。より具体的には、表の項目が「商品名」と「販売価格」であれば、フィールドデータ４０３は、「鞄、１２０００、ベルト、５０００」のように生成される。
【００１９】
フィールドデータ４０３中の文字列は、フィールド４０２の項目の構成に合わせて、各項目を埋めていくように順に上書きされ、出力フォーム４０４として帳票データが作成できる。
【００２０】
フィールドデータ４０３が、１ページ内のフィールド４０２に収まりきらない場合には、複数ページに渡ってフィールドデータをオーバーレイすることとなるが、フィールド４０２が表の場合には、表のサイズが可変となるので、これを本実施形態では特に可変表と呼ぶこととする。
【００２１】
図５は、可変表を含む帳票を作成する一例を記載した図である。ここで、フォームファイル４０１上に構成されるフィールドは、可変表の表示領域５０１と、可変表の入力内容の合計値を表す領域５０２とで構成される。可変表の表示領域では、フィールドデータ５０３のデータ量にあわせて、表の行数が可変的に変化する帳票が作成される。このとき、表が１ページに収まらない場合、複数ページにまたがって表が作成される。
【００２２】
このように複数ページにまたがって表が作成される場合には、ページ毎に異なるフォームを利用することができる。例えば、図６に示すように、各ページで用いるフォームを設定し、ファイルとして保存しておくことが可能である。本実施形態ではこの設定ファイルを、複合フォーム設定ファイルと呼ぶ。
【００２３】
図６では、複数ページが１ページ目のフォームファイル６０１と、２ページ目以降のフォームファイル６０５とで構成され、フォームファイル６０１は、本実施形態では３つのフォーム、６０２から６０４（フォーム１から３）までで構成されている。フォーム１から３はそれぞれ、ページ内のそれぞれ異なる位置にフィールド４０２が配置されている。各フォーム及びフォームファイルの構成例は、図６の右側に示す通りであり、１ページ目の場合には、フォーム１から３までを同一のページ上に合成することにより、フォームファイル６０１が構成される。２ページ目以降の場合には、フォーム１（６０２）のみが含まれることになるので、フォームファイル６０５は、フォーム１そのものとして構成される。
【００２４】
なお、複合フォーム設定ファイル自体には各フォームが格納されている必要はなく、例えば、フォームのファイルパス名等の、フォームの保存場所が一意に決まるものが格納されていればよい。
【００２５】
図６に示すような復号フォーム設定ファイルを利用して、フィールドデータをオーバーレイした場合を図７を参照して説明する。図７において、７０１はフィールドデータの一例を示している。フィールドデータ７０１は、オーバーレイされるフォームに対応づけられて、例えば＜ｆｏｒｍ１＞・・・＜／ｆｏｒｍ１＞のようにタグで分割されている。また、フォーム１に対応するデータでは、オーバーレイされるページを変更するための文字列として"ＮＥＸＴＰＡＧＥ"が挿入されている。このようなページ変更を表す文字列を挿入することにより、任意の位置でページの切替を行うことができる。なお、このようなページ変更用の文字列が挿入されていない場合には、１ページにデータが収まり切らなくなった場合に、次のページに移行してオーバーレイが行われる。
【００２６】
なお、図６に示すフィールドデータの構成は本実施形態に対応する本願発明を説明するための一例として記載したものであり、タグ以外の手段によりフォームを区別してもよいし、次ページへの切替位置を示すために"ＮＥＸＴＰＡＧＥ"以外の文字列を利用しても良い。
【００２７】
図７において７０２及び７０３は、それぞれフィールドデータ７０１をオーバーレイした場合の１ページ目と２ページ目の出力結果の一例を示している。７０２では、フォーム１乃至３について、それぞれデータがオーバーレイされ出力される。一方、７０３では、図６において２ページ目以降はフォーム１のみがページを構成することとなるので、フィールドデータ７０１におけるフォーム１に対応するデータのみがオーバーレイされる。図７には示していないが、３ページ目は、フォーム１について、ＤＫＫＤＫ、ＫＤＫＤといったデータがオーバーレイされて出力されることとなる。
【００２８】
このように複合フォーム設定ファイルを利用すれば、同一ページ内に複数のフォームを重畳して出力することが可能となる。設定ファイルの内容によっては、同一ページ内に可変表を複数包含させることも可能となる。
【００２９】
この場合、複数の可変表のうちある表のフィールドデータのみが１ページ内に収まらない場合などの制御が必要である。また、フォームのレイアウトによっては、複数の可変表が互いに関連しつつ行数を変化させていく際の制御が必要となる。このような制御がうまく行われない場合には、複数の可変表のある複合フォーム設定ファイルを作成しても、意図した出力結果と異なる結果が出てしまうおそれがある。
【００３０】
そこで本実施形態では、複合フォーム設定ファイルを用いて、フォームに複数の可変表が定義されていた場合のオーバーレイ動作を制御して、設定に合致した出力結果が得られるようにする。図８ａ、図８ｂ及び図９を参照して詳細な動作の説明を行う。図８ａ及び図８ｂは、可変表が先頭ページにおいて２以上含まれる場合の複合フォーム設定ファイルの一例を示す図である。図９は、図８ａ、図８ｂのような設定ファイルを用いた本実施形態における帳票処理プログラムを実行した場合の帳票作成処理に対応するフローチャートである。
【００３１】
図８ａに示す場合では、複数ページが１ページ目のフォームファイル８０１と、２ページ目以降のうち、ｎページ目がフォームファイル８０５、ｍページ目がフォームファイル８０６で、それぞれ構成されている。ここで、ｎは２以上で所定の整数値Ｍよりも小さい値を示すパラメータであり、同様にｍは、Ｍ以上の値を示すパラメータである。即ち、Ｍは、フォームファイルの切替を判定するための基準値となる。また、Ｍは予め定められた数値ではなく、フォーム１及びフォーム２を利用して可変表の表１に書き込まれるべきフィールドデータを、全て書き込んだ場合に決定されるページ数（１ページ目を含む）である。
【００３２】
フォームファイル８０１は、本実施形態ではフォーム８０２（フォーム１）で構成されている。フォーム１には、ページ内のそれぞれ異なる位置に、表１及び表２に対応するフィールド４０２がそれぞれ配置されている。各フォーム及びフォームファイルの構成例は、図８ａの右側に示す通りであり、１ページ目の場合には、フォーム１を同一のページ上に合成することにより、フォームファイル８０１が構成される。
【００３３】
ｎページ目は、表１の続きが入力されるフィールド４０２を含むフォーム２（８０３）が含まれる。また、ｍページ目は、表２の続きが入力されるフィールド４０２を含むフォーム３が含まれる。
【００３４】
図８ａに対応する複合フォーム設定ファイルをより詳細に説明すると、図８ｂのように設定ファイルには、ページ毎にフォームの格納場所と、該フォームにおける可変表の制限行数が少なくとも含まれる。ここで制限行数とは、可変表において１ページ内に包含可能な行数の上限を表すものである。本実施形態の場合、１ページ目には２つの可変表が含まれるため、表１について１０行、表２について２０行が設定されている。一方、２ページ目以降では、１ページ内に包含される可変表が１つになるので、一つの可変表で１ページ内に包含可能な行数の上限として、制限行数の値が設定される。ここでは表１が５０行、表２が６０行となっている。
【００３５】
次に、図８ａ及び図８ｂに示す複合フォーム設定ファイルを利用して、フィールドデータをオーバーレイする処理の一例を図９を参照して説明する。
【００３６】
まず、ステップＳ９０１において、複合フォーム設定ファイル及びフィールドデータを読み込む。ステップＳ９０２において、ページ数を表すデータＮｐを１にリセットする。ステップＳ９０３では、現在のページ数Ｎｐに対応するフォームファイルを選択する。具体的に、図８ａのような複合フォーム設定ファイルであれば、Ｎｐが１の場合には、フォームファイル８０１を選択し、Ｎｐが２以上Ｍ未満の場合には、フォームファイル８０５を、ＮｐがＭ以上の場合はフォームファイル８０６を選択することとなる。また、フォームファイル内に含まれるフィールド（表）数に基づいて、フィールド数の閾置Ｆｔｈを設定する。
【００３７】
ステップＳ９０４では、処理すべきフィールド（表）を表すデータＮｆを１にリセットする。ステップＳ９０５では現在のＮｆの値に対応するフィールドについて、対応するフィールドデータの書込を行う。例えば、Ｎｆが１の場合、図８ａに示す例では、表１のフィールドが選択され、表１にオーバーレイされるデータが該フィールド内に書き込まれることとなる。
【００３８】
ステップＳ９０６では、書き込むページを切り替えるべきかどうかを判定する。例えば、フィールドデータ内にページの切替を表す"ＮＥＸＴＰＡＧＥ"の文字列が登場したかどうか、或いは、フィールドの途中で書き込むべきデータを全て書き込んでしまったかどうかにより、判定を行うことができる。もし、ページ切替のタイミングと判定された場合にはステップＳ９１２へ移行する。一方、フィールドデータ内にページの切替を表す"ＮＥＸＴＰＡＧＥ"が登場しない等の場合は、ステップＳ９０７へ移行して、フィールドについて書込可能な制限行数に到達したかどうかを判定する。この制限行数は、図８ｂに示すとおり、Ｎｐが１であれば、表１について"１０"、表２について"２０"である。また、Ｎｐが２以上Ｍ未満であれば"５０"、ＮｐがＭ以上であれば"６０"となる。ステップＳ９０８で、制限行数に到達していないと判定された場合には、ステップＳ９０８へ移行する。一方、制限行数に到達している場合には、ステップＳ９１２へ移行する。
【００３９】
ステップＳ９０８では、Ｎｆ番目のフィールドに対応するフィールドデータの書込が終了したかどうかを判定する。ここでは、フィールド毎に対応するフィールドデータの書込が終了したかどうかを判定する。まだ書き込まれていないデータが存在する場合にはステップＳ９１２へ移行し、全てのデータが書き込まれた場合にはステップＳ９０９へ移行する。
【００４０】
ステップＳ９０９では、現在のページ数Ｎｐが２以上であるかどうかを判定する。ここでは、２ページ目以降でのフォーム２に対する書込の終了を判定している。ステップＳ９０９においてＮｐが２以上であると判定された場合には、フォーム２に対するフィールドデータの書込が終了したこととなるので、フォーム３に対するフィールドデータの書込を行うべく、ステップＳ９１０においてページ数ＮｐをＮｐ＋１に更新し、ステップＳ９１１において、フォームファイルの切替を判定するための基準値であるＭをＮｐに設定する。これにより、以降のフォームファイルの選択ではフォームファイル８０６が選択されることとなる。さらにステップＳ９１５に移行する。一方、ステップＳ９０９においてＮｐが２未満、即ちＮｐ＝１の場合には、ステップＳ９１２に移行する。これは、フォーム内の別の表についての書込が終了していない場合があるためである。
【００４１】
ステップＳ９１２では、フォーム数ＮｆをＮｆ＋１に更新する。更にステップＳ９１３において現時点のＮｆの数がステップＳ９０３で設定された閾置Ｆｔｈ以上であるかを判定する。ステップＳ９１３において現在のＮｆがＦｔｈに届いていない場合には、書込が行われていないフィールドデータが存在することとなるので、ステップＳ９０５に戻って対応するＮｆ番目のフィールドについて書込を行う。
【００４２】
一方、ＮｆがＦｔｈに一致する場合には、ページ内の全ての表（フィールド）についての書込が終了したこととなるので、ステップＳ９１４へ移行して、ページ数ＮｐをＮｐ＋１に更新して、ステップＳ９１５へ移行する。ステップＳ９１５では、フォームに未書込のフィールドデータが存在するかどうかを判定し、未書込のデータが存在する場合には、ステップＳ９０３へ移行して、現在のページ数Ｎｐに対応するフォームファイルを選択して処理を継続する。一方、未書込のデータが存在しない場合には、全てのデータが書き込まれたこととなるので、ステップＳ９１６へ移行して、出力フォームを出力する。ここでの出力形式には、ディスプレイ１７における表示出力と、プリンタ１９における印刷出力が含まれる。
【００４３】
以上の説明では、可変表が２つの場合を記載したが、可変表が３つ以上の場合は、
フォームファイルの切替を判定するためのパラメータ（上記の場合は、Ｍ）数を増やすことにより対応可能である。
【００４４】
以上説明したように、本実施形態によれば、帳票の作成・編集時において、複数の可変表のうち、データが１ページ内に収まらない場合を制御し、用途にあわせた出力をすることができる。
【００４５】
［第２の実施形態］
上述の第１の実施形態では、複数の可変表のうちのいずれかに対して、フィールドデータが１ページ内に入りきらなかった場合にそれぞれ別フォームに出力する場合を説明した。本実施形態では、別フォームに出力する際の出力のバリエーションについて説明する。
【００４６】
フィールドデータが１ページ内に入りきらない場合の出力の形態には、図１０に示すような二通りが考えられる。
【００４７】
図１０（ａ）においては、１００１において可変表１００２と１００３とが共に包含されたページが１枚分出力され、１００１内に入り切らなかったデータは、それぞれ１００４及び１００５で別々に出力される。このような形態は、出力結果をまとめて誰かに渡したいような場合には有効である。
【００４８】
その一方で、可変表１００２と１００３とを必要とする対象が別個に存在する場合には、図１０（ｂ）に示すように、１００１が２枚出力され、１００４及び１００５がそれぞれ１枚づつ出力されることが好ましい。
【００４９】
第１の実施形態では図１０（ａ）の出力結果が得られるが、図１０（ｂ）のような出力結果を得るためには、複合フォーム設定ファイルにおいて１ページ目に含まれている可変表の数に基づいて、１ページ目の印刷枚数を設定すればよい。なお、可変表が複数ある場合でも、可変表の数と配布人数とが必ずしも一致しない場合がある。そこで、１ページ目の印刷枚数の設定をユーザーから受け付けても良い。
【００５０】
［第３の実施形態］
上記実施形態に対応する本発明においては、複合フォーム設定ファイルを予め複数パターン用意しておき、ユーザーから所望の複合フォーム設定ファイルの選択を受け付けることにより、適切な出力を得ることができる。また、ユーザーが任意のフォームファイルを組み合わせて、複合フォーム設定ファイルを生成することもできる。
【図面の簡単な説明】
【００５１】
【図１ａ】本発明の実施形態に対応する情報処理システムのハードウェア構成の一例を示す図である。
【図１ｂ】本発明の実施形態に対応する、記録媒体から情報処理システムにプログラムやデータが供給されることを説明するための図である。
【図２】本発明の実施形態に対応する処理プログラムを格納した記憶媒体の構成の一例を示す図である。
【図３】本発明の実施形態に対応する処理プログラムが動作する際のメモリマップの一例を示す図である。
【図４】フィールドデータをフォームデータにオーバーレイする処理を説明するための図である。
【図５】本発明の実施形態に対応する表を含む出力フォームの生成例を示す図である。
【図６】複合フォーム設定ファイルの一例である。
【図７】図６の複合フォーム設定ファイルにフィールドデータをオーバーレイした場合の一例を示す図である。
【図８ａ】本発明の実施形態に対応する、複合フォーム設定ファイルを利用したオーバーレイ処理の一例を説明するための図である。
【図８ｂ】本発明の実施形態に対応する複合フォーム設定ファイルの構成例を示す図である。
【図９】本発明の実施形態に対応する処理のフローチャートである。
【図１０】本発明の実施形態に対応する出力フォームのバリエーションの例を示す図である。
【図１１】本発明の実施形態に対応するフォームオーバーレイ処理の全体を説明するための図である。
【図１ａ】
2005352905.tif 000003
【図１ｂ】
2005352905.tif 000004
【図２】
2005352905.tif 000005
【図３】
2005352905.tif 000006
【図４】
2005352905.tif 000007
【図５】
2005352905.tif 000008
【図６】
2005352905.tif 000009
【図７】
2005352905.tif 000010
【図８ａ】
2005352905.tif 000011
【図８ｂ】
2005352905.tif 000012
【図９】
2005352905.tif 000013
【図１０】
2005352905.tif 000014
【図１１】
2005352905.tif 000015