(57)【要約】【課題】      所望のプレビューデータ、印刷データを検索するために、検索結果の視認性、印刷範囲の設定において操作性の優れた情報処理技術を提供すること。【解決手段】  帳票データに基づいて印刷装置で処理するための印刷データを生成する情報処理装置は、帳票データに含まれるフィールドにおけるレコードデータの変化が発生した場合に、変化前のレコードデータと変化後のレコードデータを同じ階層のノードとしたツリー表示を表示するツリー表示部と、ツリー表示の中から選択されたノードに対応するデータを取得する取得部とを備えることを特徴とする。【選択図】  図９
2007156902.tif 000002
【特許請求の範囲】
【請求項１】
帳票データに基づいて印刷装置で処理するための印刷データを生成する情報処理装置であって、
前記帳票データに含まれるフィールドにおけるレコードデータの変化が発生した場合に、変化前のレコードデータと変化後のレコードデータを同じ階層のノードとしたツリー表示を表示するツリー表示手段と、
前記ツリー表示の中から選択されたノードに対応するデータを取得する取得手段と、
を備えることを特徴とする情報処理装置。  
【請求項２】
前記取得手段は、前記ツリー表示の中から選択されたノードに対応するデータにおけるページ情報を取得し、
前記取得手段により取得されたページ情報に基づいて特定される印刷範囲の印刷データを生成する印刷データ生成手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得手段により取得されたページ情報に基づいて、前記選択されたノードの先頭ページまたは末尾ページに対応する前記帳票データをプレビュー表示するプレビュー表示手段を更に備えることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記印刷データ生成手段は、前記取得手段により取得されたページ情報に基づいて特定される帳票データの印刷範囲で、前記帳票データに含まれるフォーム情報とフィールドデータとを重畳して前記印刷データを生成することを特徴とする請求項２に記載の情報処理装置。
【請求項５】
ブレイク指示が設定されたフィールドを特定する特定手段を更に備え、
前記ツリー表示手段は、前記特定手段により特定されたフィールドにおけるレコードデータの変化が発生した場合に、変化前のレコードデータと変化後のレコードデータを同じ階層のノードとしてツリー表示を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項６】
帳票データに基づいて印刷装置で処理するための印刷データを生成する情報処理方法であって、
前記帳票データに含まれるフィールドにおけるレコードデータの変化が発生した場合に、変化前のレコードデータと変化後のレコードデータを同じ階層のノードとしたツリー表示を表示するツリー表示工程と、
前記ツリー表示の中から選択されたノードに対応するデータを取得する取得工程と、
を備えることを特徴とする情報処理方法。
【請求項７】
前記取得工程は、前記ツリー表示の中から選択されたノードに対応するデータにおけるページ情報を取得し、
前記取得工程により取得されたページ情報に基づいて特定される印刷範囲の印刷データを生成する印刷データ生成工程を更に備えることを特徴とする請求項６に記載の情報処理方法。
【請求項８】
前記取得工程により取得されたページ情報に基づいて、前記選択されたノードの先頭ページまたは末尾ページに対応する前記帳票データをプレビュー表示するプレビュー表示工程を更に備えることを特徴とする請求項７に記載の情報処理方法。
【請求項９】
前記印刷データ生成工程は、前記取得工程により取得されたページ情報に基づいて特定される帳票データの印刷範囲で、前記帳票データに含まれるフォーム情報とフィールドデータとを重畳して前記印刷データを生成することを特徴とする請求項７に記載の情報処理方法。
【請求項１０】
ブレイク指示が設定されたフィールドを特定する特定工程を更に備え、
前記ツリー表示工程は、前記特定工程により特定されたフィールドにおけるレコードデータの変化が発生した場合に、変化前のレコードデータと変化後のレコードデータを同じ階層のノードとしてツリー表示を行うことを特徴とする請求項６に記載の情報処理方法。
【請求項１１】
請求項６乃至１０のいずれかに記載の情報処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムを格納したことを特徴とするコンピュータ可読の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票データの表示及び印刷に関する情報処理技術に関するものである。
【背景技術】
【０００２】
フォームデータを不揮発性のメモリに蓄積しておき、フォームデータと帳票データとを用いてフォームオーバレイ処理を行い、その結果を印刷出力する技術がある。ここで、一般に帳票データは、複数のカテゴリのデータがフィールド単位で内部的に仕切られた構成で格納されたデータ構造になっている。
【０００３】
ユーザが特定のページをプレビュー、あるいは、印刷する場合、帳票データをフィールド単位に文字列検索して、所望のデータを検索する必要がある。
【０００４】
データ構造をツリー表示により可視化する技術としては特許文献１がある。
【特許文献１】特開２００４−２５２７２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１は、文書データを構成する章の情報を取得して、文書構造を階層的に表示するものであり、帳票データの検索において、フィールド単位の検索を意識したものではない。
【０００６】
帳票データの検索結果をプレビュー表示させて、更に、異なるページ（フィールド）をプレビューさせたり、印刷範囲の指定をする場合、各フィールド単位に検索キーとなる文字列を再度指定して再検索をする必要がある。
【０００７】
大量の帳票データからユーザが所望するデータを特定するために、文字列を再度指定して検索する操作は、煩雑なものである。所望のデータ（プレビューデータ、印刷データ）を検索するためには、検索の操作性、検索結果の視認性、印刷範囲の設定において、効率の悪い操作をユーザに強いるものであった。
【課題を解決するための手段】
【０００８】
本発明は上記課題に鑑みてなされたものであり、所望のプレビューデータ、印刷データを検索するために、検索結果の視認性、印刷範囲の設定において操作性の優れた情報処理技術の提供を目的とする。
【０００９】
上記の目的を達成するべく、本発明に係る情報処理装置は、帳票データに基づいて印刷装置で処理するための印刷データを生成する情報処理装置であって、
前記帳票データに含まれるフィールドにおけるレコードデータの変化が発生した場合に、変化前のレコードデータと変化後のレコードデータを同じ階層のノードとしたツリー表示を表示するツリー表示手段と、
前記ツリー表示の中から選択されたノードに対応するデータを取得する取得手段と、
を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、所望のプレビューデータ、印刷データを検索するために、検索結果の視認性、印刷範囲の設定において操作性の優れた情報処理技術の提供が可能になる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００１２】
図１は、本発明の実施形態に係る帳票印刷システムの全体構成を示す図である。図１において、クライアント端末１１０と、帳票保存サーバ１２０と、印刷装置１３０とは、通信回線１００を介して接続されている。
【００１３】
ここで、通信回線１００とは、双方向に通信可能なネットワークをいう。例えば、インターネット等のＬＡＮ、ＷＡＮ、電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれか又はこれらの組み合わせにより実現される。通信回線１００は、データの送受信が可能であればよく、クライアント端末１１０から帳票保存サーバ１２０への通信手段、及び帳票保存サーバ１２０から印刷装置１３０への通信手段が異なっていてもよい。
【００１４】
クライアント端末１１０は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、ＰＤＡ(パーソナルデータアシスタント)等から成るが、プログラム機能(iモード(登録商標)等)が内蔵された携帯電話であってもよい。クライアント端末１１０は、帳票データのプレビュー表示を行うプレビュー表示部１１１と、帳票データのブレイク位置を検索するブレイク検索部１１２を備える。ここで、帳票データに対して指定されたフィールドをブレイクキーと呼び、帳票データにおけるブレイクキーの位置をブレイク位置と呼ぶ。
【００１５】
また、クライアント端末１１０は、帳票データのブレイク位置を検索した結果をツリー表示するツリー表示部１１３と、通信回線１００を介してデータの送受信を行う送受信部１１４を備える。
【００１６】
更に、クライアント端末１１０は、ツリー表示部１１３によるツリー表示から選択されたノードに対応する帳票データにおけるページ情報を取得するページ情報取得部１１５を備える。ページ情報取得部１１５により取得されたページ情報に基づいて帳票データにおける印刷範囲を特定することができる。また、ページ情報取得部１１５により取得されたページ情報に基づいて選択されたノードの先頭ページまたは末尾ページに対応する帳票データを特定することができる。プレビュー表示部１１１は、特定されたノードの先頭ページまたは末尾ページのプレビュー表示を行うことができる。
【００１７】
帳票保存サーバ１２０は、ハードディスクにより構成される、保存管理情報を記憶する保存管理情報記憶部１２３と、帳票データを記憶する帳票データ記憶部１２４と、印刷データを記憶する印刷データ記憶部１２５を備える。
【００１８】
また、帳票保存サーバ１２０は、保存管理情報を生成する保存管理部１２１と、帳票データに含まれるフォーム情報とフィールドデータを重畳して印刷データを生成するフォームオーバレイ部１２２とを備える。ここで、フォームオーバレイ部１２２は、ページ情報取得部１１５により取得されたページ情報に基づいて特定される帳票データにおける印刷範囲において、フォーム情報とフィールドデータを重畳して印刷データを生成する。
【００１９】
更に、帳票保存サーバ１２０は、通信回線１００を介してデータの送受信を行う送受信部１２６を備える。
【００２０】
印刷装置１３０は、ネットワーク等を含む通信回線１００に接続が可能なプリンタ(例えば、レーザプリンタやインクジェットプリンタ等が含まれる)である。印刷装置１３０は、通信回線１００を介して、帳票保存サーバ１２０またはクライアント端末１１０から送信されてくるデータを受信するデータ受信部１３１と、受信したデータを印刷処理するための印刷制御部１３２を有する。更に、印刷装置１３０は、シート媒体上に印刷を実行するための印刷処理部１３３を有する。
【００２１】
図２は、図１におけるクライアント端末１１０、帳票保存サーバ１２０及び印刷装置１３０において共通となる基本的なハードウェア構成を示すブロック図である。
【００２２】
ハードウェア構成には、ＣＰＵ２１、ＲＡＭ２２、ＲＯＭ２３、ＬＡＮアダプタ２４、ビデオアダプタ２５、入力部(キーボード)２６、入力部(マウス)２７、ハードディスク２８、及びＣＤ-ＲＯＭドライブ２９が含まれる。これらの構成要素は、システムバス２０を介して互いに接続されている。システムバス２０は、例えば、ＰＣＩバス、ＡＧＰバス、及びメモリバス等から成る。尚、図２の構成において、バス間の接続用チップやキーボードインタフェース、いわゆるＳＣＳＩやＡＴＡＰＩのような入出力用インタフェースは省略されている。
【００２３】
ＣＰＵ２１は、オペレーションシステムのプログラムやアプリケーションプログラムに基づく四則演算、比較演算等の各種の演算やハードウェアの制御を行うことが可能である。ＲＡＭ２２には、ハードディスク２８や、ＣＤ-ＲＯＭドライブ２９に装着されたＣＤ-ＲＯＭやＣＤ-Ｒ等の記憶媒体から読み出されたオペレーションシステムのプログラムやアプリケーションプログラム等が記憶されている。これらのプログラムはＣＰＵ２１により実行可能である。
【００２４】
ＲＯＭ２３には、オペレーションシステムと協働してハードディスク２８等へのデータの入出力を制御する、いわゆるＢＩＯＳ等が記憶される。ＬＡＮアダプタ２４は、ＣＰＵ２１によって制御されるオペレーションシステムの通信プログラムと協働してネットワークを介して接続された外部装置との通信を行う。
【００２５】
ビデオアダプタ２５は、ディスプレイ装置に出力する画像信号を生成する。キーボード２６やマウス２７の入力部は、例えば、クライアント端末１１０の画面に表示される操作メニュー等に指示を入力したり、検索や表示に関する設定を入力するために用いられる。ハードディスク２８は、オペレーションシステムやアプリケーションプログラム(例えば、クライアント端末１１０におけるプレビュー表示プログラム、帳票保存サーバ１２０におけるフォームオーバーレイプログラム等)を記憶している。これらのアプリケーションプログラムはＣＰＵ２１により実行可能である。
【００２６】
ＣＤ-ＲＯＭドライブ２９は、ＣＤ-ＲＯＭ、ＣＤ-Ｒ、及びＣＤ-Ｒ/Ｗなどの記憶媒体を装着してアプリケーションプログラムをハードディスク２８にインストールするのに用いられる。なお、ＣＤ-ＲＯＭドライブに代えてＣＤ−Ｒドライブ、ＣＤ−Ｒ／Ｗドライブ、又はＭＯドライブ等を用いてもよい。
【００２７】
（印刷処理）
図３は、帳票印刷システムにおける印刷処理の流れを説明するフローチャートである。本フローチャートにおいて、ステップＳ３０１〜Ｓ３０５、Ｓ３１０はクライアント端末１１０のＣＰＵによる制御の下に実行される処理である。また、ステップＳ３０６〜Ｓ３０８は帳票保存サーバ１２０のＣＰＵによる制御の下に実行され、ステップＳ３０９は印刷装置１３０のＣＰＵによる制御の下に実行される処理である。
【００２８】
まず、ステップＳ３０１において、ユーザからの指示によって、クライアント端末１１０の送受信部１１４から帳票保存サーバ１２０に対して帳票データ送信要求が送信される。
【００２９】
帳票保存サーバ１２０は、ステップＳ３０６において、送受信部１２６で受信した帳票データ送信要求に基づいて、帳票データ記憶部１２４から指定された帳票データを検索する。そして、帳票保存サーバ１２０は、検索された帳票データを要求元のクライアント端末1１０に送受信部１２６を介して送信する。
【００３０】
ステップＳ３０２において、クライアント端末１１０の送受信部１１４が帳票保存サーバ１２０より送信された帳票データを受信する。受信された帳票データは、クライアント端末１１０のＲＡＭ２２に記憶される。クライアント端末１１０におけるプレビュー表示部１１１は、帳票データに基づき、クライアント端末１１０の画面に図８のようなプレビュー画面を表示するための表示制御を行う。
【００３１】
ステップＳ３０３では、ユーザからの指示によって、ブレイク検索部１１２によりプレビュー表示されている帳票データに対して、指定されたフィールドのブレイク位置の検索が実行される。
【００３２】
ステップＳ３０４では、ツリー表示部１１３により、先のステップＳ３０３の検索結果がツリー表示される。
【００３３】
ステップＳ３０５では、表示されたツリー表示において、ユーザの指示により指定されたノードに対する印刷要求が入力された場合（Ｓ３０５−ＹＥＳ）、印刷要求が帳票保存サーバ１２０に対して送信される。この印刷要求の送信に関する具体的な処理は図１０を参照して説明する。
【００３４】
ステップＳ３０７において、帳票保存サーバ１２０の送受信部１２６がクライアント端末１１０から送信された印刷要求を受信する。フォームオーバレイ部１２２は、印刷すべきページ番号が指定された印刷要求に基づいて、帳票データに含まれるフォーム情報にフィールドデータを重ねるフォームオーバレイ処理を実行し、印刷データを生成する。
【００３５】
ステップＳ３０８において、帳票保存サーバ１２０の送受信部１２６は、生成された印刷データを印刷装置１３０に送信する。
【００３６】
ステップＳ３０９において、印刷装置１３０のデータ受信部１３１が、帳票保存サーバ１２０より送信された印刷データを受信すると、印刷装置１３０のＲＡＭ２２に印刷データは記憶される。そして、印刷制御部１３２の制御の下、印刷用画像情報が生成され、印刷処理部１３３により印刷処理が実行される。
【００３７】
一方、クライアント端末１１０のステップＳ３０５の処理で、印刷要求が入力されずに、指定されたノードの先頭ページまたは末尾のページのプレビュー表示が選択された場合（Ｓ３０５−ＮＯ）、処理はステップＳ３１０に進められる。この先頭ページまたは末尾のページのプレビュー表示に関する具体的な処理は、図１１または図１２を参照して説明する。
【００３８】
本実施形態では、クライアント端末１１０と帳票保存サーバ１２０は別々の筐体として帳票印刷システムが構成されているが、これらは同一の筐体中に構成するものであってもよい。また、クライアント端末１１０、帳票保存サーバ１２０の双方、または少なくとも一方を印刷装置に含む構成であってもよい。
【００３９】
図４は、帳票データ記憶部１２４に格納される帳票データのデータ構造を説明する図である。帳票データは、帳票のフォームを構成するためのフォーム情報４０１を含み、フォーム情報に対応する複数のページデータ（４０２、４０３、４０４）が含まれる。
【００４０】
フォーム情報には、図形情報と後付けデータを挿入するための概念的な箱である複数のフィールド（４１０、４１１、４１２）と、それぞれのフィールドに関連付けられた書式情報（４２０、４２１、４２２）を含む。
【００４１】
ページデータは、複数のレコード（４３０、４３１、４３２）を含み、レコードは、フォーム情報に含まれる複数のフィールドにそれぞれ対応したフィールドデータ（４４０、４４１、４４２）を含む。
【００４２】
図３のステップＳ３０７で、印刷データはフォーム情報に対して、各ページデータに含まれるフィールドデータを、フォーム情報で定義されたフィールドの書式情報に従って書式化し、オーバレイ処理することによって生成される。
【００４３】
（ツリー表示）
図５はプレビュー表示されている帳票データに対して指定されたフィールド（ブレイクキー）の位置（ブレイク位置）の検索結果をツリー表示する処理（Ｓ３０３〜Ｓ３０４）を説明するフローチャートである。
【００４４】
本フローチャートのステップＳ５０１〜Ｓ５１６はクライアント端末１１０におけるＣＰＵ２１の制御の下に実行される。
【００４５】
まず、ステップＳ５０１では、帳票データに含まれるページデータのレコードから、ブレイクキー１（図８の８０３）に指定されたフィールド名に一致するフィールドのフィールドデータを取得する。
【００４６】
ステップＳ５０２で、このフィールドデータに対応するツリーのノードが存在するかどうかを判定する。ノードが存在しないと判定された場合（Ｓ５０２−ＮＯ）、ステップＳ５０１で取得したフィールドデータに対応するツリーのノードを作成し（Ｓ５０３）、ステップＳ５０４に処理を進める。
【００４７】
一方、ステップＳ５０２の判定で、ノードが存在すると判定された場合（Ｓ５０２−ＹＥＳ）、ステップＳ５０４に処理は進められる。
【００４８】
ステップＳ５０４において、帳票データに含まれるページデータのレコードから、ブレイクキー２（図８の８０４）に指定されたフィールド名に一致するフィールドのフィールドデータを取得する。
【００４９】
そして、ステップＳ５０５で、先のステップＳ５０４で取得したフィールドデータに対応するノードが、現在のノードの子ノードに存在するかどうかを判定する。子ノードが存在しないと判定された場合（Ｓ５０５−ＮＯ）、ステップＳ５０４で取得したフィールドデータに対応する子ノードを作成して（Ｓ５０６）、ステップＳ５０７に処理は進められる。
【００５０】
一方、ステップＳ５０５の判定で、子ノードが作成済みで存在する場合（Ｓ５０５−ＹＥＳ）、処理は子ノードの移動に進められる（Ｓ５０７）。
【００５１】
次に、ステップＳ５０８において、帳票データに含まれるページデータのレコードから、ブレイクキー３（図８の８０５）に指定されたフィールド名に一致するフィールドのフィールドデータを取得する。
【００５２】
そして、ステップＳ５０９で、先のステップＳ５０８で取得したフィールドデータに対応するノードが、現在のノードの子ノードに存在するかどうかを判定する。子ノードが存在しないと判定された場合（Ｓ５０９−ＮＯ）、処理はステップＳ５１０に進められ、ステップＳ５０８で取得したフィールドデータに対応する子ノードを作成して、ステップＳ５１１に処理は進められる。
【００５３】
一方、ステップＳ５０９の判定で、子ノードが存在すると判定された場合（Ｓ５０９−ＹＥＳ）、処理はステップＳ５１１に進められる。
【００５４】
ステップＳ５１１で、現在のページ番号を、ステップＳ５０９で存在すると判定された子ノード、あるいは、ステップＳ５１０で作成したノードに保存する。そして、ステップＳ５１２で、現在のレコードがページの最後のレコードかどうかを判定する。ステップＳ５１２の判定で、ページの最後のレコードでないと判定された場合（Ｓ５１２−ＮＯ）、ステップＳ５１３で次のレコードに処理を移し、ステップＳ５１６で親ノードに処理を移して、ステップＳ５０１に処理が戻される。
【００５５】
ステップＳ５１２の判定で、ページの最後のレコードであると判定された場合（Ｓ５１２−ＹＥＳ）、ステップＳ５１４で、現在のページが最後のページかどうかを判定する。ステップＳ５１４で、最後のページであると判定された場合（Ｓ５１４−ＹＥＳ）、処理を終了する。
【００５６】
一方、ステップＳ５１４で、最後のページでないと判定された場合（Ｓ５１４−ＮＯ）、ステップＳ５１５で、次のページデータに処理を移し、ステップＳ５１６で親ノードに移動し、ステップＳ５０１に処理が戻る。ステップＳ５０１に処理が戻されると、ステップＳ５０１以降同様の処理が全てのページの終わり（Ｓ５１４−ＹＥＳ）まで続けられる。
【００５７】
（帳票データの適用例）
図６、図７は、例示した帳票データをブレイク位置で検索した結果をツリー表示する図である。
ブレイクキーとして、帳票データに含まれるフィールド名（本実施形態では「支社名」、「部門名」及び「部署名」、「社員番号」等）を指定することが可能である。ここでレコードデータとは、帳票の各フィールドに格納されている値（本実施形態では、「営業部」、「大阪支社」等）をいう。ブレイクが発生するとは、特定のフィールド列に格納されている連続したレコードデータに変化が生じることをいう。ブレイクが発生している様子が、図６に例示されている。フィールド８０４「部門名」には、営業部が連続してレコードデータとして格納され、企画部が連続したレコードデータとして格納されている。営業部と企画部との連続したデータの間にデータの切れ目が発生しており、これをブレイクという。
【００５８】
図６の６０１は、帳票データの１ページ目の１レコード目を検索処理した結果を示す図である。ここでは、指定されたフィールドの位置として、「支社名」、「部門名」及び「部署名」が指定されている。ブレイク位置は、図８の画面中のブレイクキー指定欄（８０３〜８０５）から入力することが可能である。また、ブレイクキー１（８０３）、ブレイクキー２（８０４）及びブレイクキー３（８０５）の設定は、帳票データ中に含まれるフォーム情報（４０１）に含めて設定することも可能である。
【００５９】
６０２は、帳票データの３ページ目の１レコード目を検索処理した結果を示す図である。ここでは、指定されたフィールドの位置（ブレイク位置）として、「部署名」が指定されている。
【００６０】
ブレイク検索部１１２の制御の下、帳票データとブレイク位置との対応関係を検索すると、「部署名」を指定するブレイクキー３(８０５)に対応するフィールドデータのノードには（２課）が対応する。この対応関係に基づいて、ツリー表示部１１３はノード（営業部）の子ノードとして（２課）を追加するツリー表示６０２を構成する。
【００６１】
ここで、フィールドデータの子ノード（１課）にはページ番号[１]と[２]が、ブレイクキー３(８０５)に対応する子ノード（２課）には、ページ番号[３]が保存される。
【００６２】
６０３は、帳票データの５ページ目の１レコード目を検索処理した結果を示す図である。ここでは、指定されたフィールドの位置（ブレイク位置）として、「部門名」及び「部署名」が指定されている。
【００６３】
ブレイク検索部１１２の制御の下、帳票データと各ブレイク位置との対応関係を検索すると、「部門名」を指定するブレイクキー２（８０４）に対応するフィールドデータのノードには（企画部）が対応する。その子ノードとして、「部署名」を指定するブレイクキー３（８０５）に対応するフィールドデータのノードには（１課）が対応する。この対応関係に基づいて、ツリー表示部１１３はノード（大阪支社）の子ノードとして（企画部）を追加し、ノード（企画部）の子ノードとして（１課）を追加するツリー表示６０３を構成する。
【００６４】
ここで、ノード（営業部）の子ノード（１課）にはページ番号[１]と[２]が保存され、子ノード（２課）にはページ番号[３]と[４]が保存される。また、ノード（企画部）の子ノード（１課）にはページ番号[５]が保存される。
【００６５】
６０４は、帳票データの７ページ目の１レコード目を検索処理した結果を示す図である。ここでは、指定されたフィールドの位置（ブレイク位置）として、「部署名」が指定されている。
【００６６】
ブレイク検索部１１２の制御の下、帳票データとブレイク位置との対応関係を検索すると、「部署名」を指定するブレイクキー３（８０５）に対応するフィールドデータのノードには、ノード（企画部）の子ノードとして（２課）が対応する。この対応関係に基づいて、ツリー表示部１１３はノード（企画部）の子ノードとして（２課）を追加するツリー表示６０４を構成する。
【００６７】
ここで、ノード（営業部）の子ノード（１課）にはページ番号[１]と[２]が保存され、子ノード（２課）にはページ番号[３]と[４]が保存される。更に、ノード（企画部）の子ノード（１課）にはページ番号[５]と[６]が保存され、子ノード（２課）にはページ番号[７]が保存される。
【００６８】
図７の６０５は、帳票データの８ページ目の１レコード目を検索処理した結果を示す図である。ここでは、指定されたフィールドの位置として、「支社名」、「部門名」及び「部署名」が指定されている。
【００６９】
６０６は１０ページ目の１レコード目を処理した結果を示す図である。ここでは、指定されたフィールドの位置（ブレイク位置）として、「部門名」及び「部署名」が指定されている。
【００７０】
ブレイク検索部１１２の制御の下、帳票データとブレイク位置との対応関係を検索すると、ブレイクキー２（８０４）に対応するフィールドデータのノードには（総務部）が対応する。そして、その子ノードとして、ブレイクキー３(８０５)に対応するフィールドデータのノードには（総務課）が対応する。この対応関係に基づいて、ツリー表示部１１３はノード（東京本社）の子ノードとして（総務部）を追加し、ノード（総務部）の子ノードとして（総務課）を追加するツリー表示６０６を構成する。
【００７１】
ここで、ノード（経理部）の子ノード（経理課）にはページ番号[８]と[９]が保存され、ノード（総務部）の子ノード（総務課）にはページ番号[１０]が保存される。
【００７２】
この例では、最終的な検索結果として、図６のツリー表示６０４と図７のツリー表示６０６が、ツリー表示部１１３の制御の下、図８の領域８０７に表示される。
【００７３】
（プレビュー表示）
図８は、図３のステップＳ３０２における処理で、プレビュー表示部１１１によりクライアント端末１１０の画面に表示されるプレビュー表示画面を例示する図である。
【００７４】
８０２は帳票データのプレビュー画面を表示する表示領域であり、８０１は、プレビュー表示された帳票データに対する検索領域である。８０３〜８０５は検索対象となるフィールドの位置（ブレイク位置）を指定するためのブレイクキー指定欄である。８０６は、検索の開始を指示するための操作部である。この検索開始の操作部８０６が選択されると、ブレイクキー指定欄（８０３〜８０５）で指定されたフィールドの位置（ブレイク位置）に対応するデータが、ブレイク検索部１１２の制御の下、帳票データから検索される。そして、ツリー表示部１１３の制御の下、検索結果としてツリー表示が領域８０７に表示される。
【００７５】
図９は、ブレイク位置の検索結果を例示する図であり、ブレイクキーとして、支社名（８０３）、部門名（８０４）、部署名（８０５）が指定されている。
【００７６】
クライアント端末１１０のブレイク検索部１１２は、ブレイクキーとして指定されたフィールドデータを検索し、ツリー表示部１１３は、その検索結果をツリー表示する。図９の領域８０７には、検索されたフィールドデータがツリー表示される。
【００７７】
図９の領域８０７におけるツリー表示において、６０４は図６で説明したフィールドデータの検索結果に基づくものであり、６０６は図７で説明したフィールドデータの検索結果に基づくものである。
【００７８】
このツリー表示中、ツーザは、キーボードまたはマウスの入力部（２６、２７）を使用して、印刷またはプレビュー表示の対象としていずれかのノードを選択することが可能である。図９のツリー表示６０４では、例として、ノード（営業部）の子ノード（１課）が選択された状態を示している。
【００７９】
ツリー表示（階層構造）により検索結果を表示することにより、検索結果の視認性の向上が可能になる。
【００８０】
図９におけるツリー表示中、いずれかのノードがユーザにより選択されると、選択されたノードを処理するための操作メニューがプレビュー表示部１１１の表示制御の下に表示される。９０１は、領域８０７に表示されているツリー表示からいずれかのノードが選択された際に、プレビュー表示部１１１の表示制御の下に表示される操作メニューの表示例を示す図である。この操作メニュー９０１からユーザは「印刷」、「先頭のページをプレビュー」、「末尾のページをプレビュー」、三つの操作の選択が可能である。
【００８１】
次に、この操作メニュー９０１から選択された各処理の流れを説明する。
【００８２】
（印刷要求の処理）
図１０は、図９に示した操作メニュー９０１で「印刷」が指定された場合の処理の流れを説明するフローチャートである。この処理は、図３のステップＳ３０５で、印刷要求を実行する処理（Ｓ３０５−ＹＥＳ）に対応するものである。本処理はクライアント端末１１０のＣＰＵによる制御の下に実行される処理である。
【００８３】
ステップＳ１００１において、現在のノード（初期状態のツリーの最上流側のノード（例えば、図６のツリー表示６０１の（大阪支社））、または、ユーザによって印刷が指示されたノード）に子ノードがあるかどうか判定する。
【００８４】
ステップＳ１００１で子ノードがあると判定された場合（Ｓ１００１−ＹＥＳ）、該当する子ノードに処理を移し（Ｓ１００２）、処理をステップＳ１００１に戻す。ステップＳ１００１では、子ノードについて、更に子ノードが設定されているか判定する。子ノードが設定されている場合、ステップＳ１００２に進み同様の処理を繰り返す。
【００８５】
ステップＳ１００１で子ノードがないと判断された場合（Ｓ１００１−ＮＯ）、ステップＳ１００３において、現在のノードに保存されているページ番号を取得する。
【００８６】
ステップＳ１００４で、現在のノードが、ユーザによって印刷が指示されたノードかどうかを判定する。現在のノードがユーザの指示により印刷要求が入力されたノードである場合（Ｓ１００４−ＹＥＳ）、処理はステップＳ１００８に進められる。そして、先のステップＳ１００３で取得したページ番号を指定した印刷要求を帳票保存サーバ１２０に対して送信し（Ｓ１００８）、処理を終了する。
【００８７】
一方、ステップＳ１００４の判定で、ユーザによって印刷が指示されたノードでないと判定された場合（Ｓ１００４−ＮＯ）、親ノードに処理を移し（Ｓ１００５）、親のノードに次の子ノードがあるか判定する（Ｓ１００６）。
【００８８】
例えば、図９のツリー表示６０４において、親ノード（企画部）の子ノード（１課）に印刷の設定がされていない場合（Ｓ１００４−ＮＯ）、ステップＳ１００５で親のノード（企画部）に処理を移す（Ｓ１００５）。そして、その親ノード（企画部）に次の子ノードがあるか判定する（Ｓ１００６）。
【００８９】
ステップＳ１００６の判定で、次の子ノードがあると判定された場合（Ｓ１００６−ＹＥＳ）、次の子ノードに処理を移し（Ｓ１００７）、ステップＳ１００１に処理は戻される。例えば、図９のツリー表示６０４の場合、親ノード（企画部）には次の子ノード（２課）が設定されているので、子ノード（２課）に対して、ステップＳ１００１以降の処理が同様に行われる。
【００９０】
すなわち、ステップＳ１００１に処理が戻されると、先のステップＳ１００７で処理の対象となった子ノードに、更に子ノードが設定されているか判定される。子ノードが設定されていない場合（Ｓ１００１−ＮＯ）、ステップＳ１００３でページ番号が取得される。そして、子ノードに印刷が指定されている場合（Ｓ１００４−ＹＥＳ）、取得したページ番号を指定した印刷要求を帳票保存サーバ１２０に対して送信し（Ｓ１００８）、処理を終了する。
【００９１】
例えば、図９のツリー表示６０４でノード（企画部）の子ノード（１課）を選択して「印刷」が指示された場合、子ノード（１課）に保存されているページ番号[５]、[６]が取得される（Ｓ１００３）。そして、ステップＳ１００８の印刷要求の送信において、ページ番号[５]、[６]が指定された印刷要求が帳票保存サーバ１２０に対して送信され、クライアント端末１１０側の処理を終了する。
【００９２】
ステップＳ１００６の判定で、次の子ノードがないと判定された場合（Ｓ１００６−ＮＯ）、ステップＳ１００４に処理は戻される。
【００９３】
ステップＳ１００４において、ステップＳ１００５で処理の対象となった親ノードが印刷の対象として指定されているか判定する。その親ノードに印刷が指定されている場合（Ｓ１００４−ＹＥＳ）、処理はステップＳ１００８に進められる。そして、先のステップＳ１００３で取得したページ番号が指定された印刷要求が生成され、帳票保存サーバ１２０に送信される（Ｓ１００８）。親ノードに印刷が指定されている場合、その親ノードにリンクする子ノード全てが印刷の対象となる。
【００９４】
例えば、図９のツリー表示６０４で、親ノード（企画部）が印刷の対象と指定されている場合、子ノード（１課）に保存されている[５]ページ、[６]ページ及び子ノード（２課）の保存されている[７]ページが印刷の対象となる。
【００９５】
以上の処理により、選択したノードに対応する帳票データ中のページを一括して印刷範囲として設定することが可能になる。これにより、印刷範囲の設定において操作性の向上が可能になる。
【００９６】
（先頭のページをプレビュー表示）
図１１は、図９に示した操作メニュー９０１で「先頭のページをプレビュー」が指示された場合の処理の流れを説明するフローチャートである。この処理は、図３におけるステップＳ３１０で「先頭ページのプレビュー」に対応するものである。本処理はクライアント端末１１０のＣＰＵによる制御の下に実行される処理である。
【００９７】
ステップＳ１１０１で、現在のノード（初期状態のツリーの最上流側のノード（例えば、図６のツリー表示６０１の（大阪支社））、または、ユーザによって指示されたノード）に子ノードがあるかどうかを判定する。
【００９８】
ステップＳ１１０１で子ノードがあると判定された場合（Ｓ１１０１−ＹＥＳ）、該当する子ノードに処理を移し（Ｓ１１０２）、処理をステップＳ１１０１に戻す。ステップＳ１１０１では、子ノードについて、更に子ノードが設定されているか判定する。子ノードが設定されている場合、ステップＳ１１０２に進み同様の処理を繰り返す。
【００９９】
ステップＳ１１０１で子ノードがないと判断された場合（Ｓ１１０１−ＮＯ）、ステップＳ１１０３において、現在のノードに保存されているページ番号を取得する。
【０１００】
ステップＳ１１０４において、プレビュー表示部１１１は、先のステップＳ１１０３で取得したページ番号の先頭ページのプレビュー表示を表示領域８０２に表示して処理を終了する。
【０１０１】
例えば、図９のツリー表示６０４でノード（企画部）を選択して「先頭のページをプレビュー」が指示された場合、子ノード（１課）に保存されているページ番号[５]、[６]が取得される（Ｓ１１０３）。このうち、先頭の５ページ目がステップＳ１１０４でプレビュー表示される。
【０１０２】
（末尾のページをプレビュー表示）
図１２は、図９に示した操作メニュー９０１で「末尾のページをプレビュー」が指示された場合の処理の流れを説明するフローチャートである。この処理は、図３におけるステップＳ３１０で「末尾のページのプレビュー」に対応するものである。
【０１０３】
ステップＳ１２０１で、現在のノード（初期状態のツリーの最上流側のノード（例えば、図６のツリー表示６０１の（大阪支社））、または、ユーザによって指示されたノード）に子ノードがあるかどうかを判定する。
【０１０４】
ステップＳ１２０１で子ノードがあると判定された場合（Ｓ１２０１−ＹＥＳ）、該当する子ノードに処理を移し（Ｓ１２０２）、処理をステップＳ１２０１に戻す。ステップＳ１２０１では、子ノードについて、更に子ノードが設定されているか判定する。子ノードが設定されている場合、ステップＳ１２０２に進み同様の処理を繰り返す。
【０１０５】
ステップＳ１２０１で子ノードがないと判断された場合（Ｓ１２０１−ＮＯ）、ステップＳ１２０３において、現在のノードに保存されているページ番号を取得する。
【０１０６】
ステップＳ１２０４において、親ノードに処理を移し、ステップＳ１２０５において、次の子ノードがあるか判定する（Ｓ１２０５）。
【０１０７】
例えば、図９のツリー表示６０４において、ノード（企画部）の子ノード（１課）に保存されているページ番号を取得した後（Ｓ１２０３）、ステップＳ１２０４で親のノード（企画部）に処理を移す。そして、その親ノード（企画部）に次の子ノードがあるか判定する（Ｓ１２０５）。
【０１０８】
ステップＳ１２０５の判定において、次の子ノードがあると判定された場合（Ｓ１２０５−ＹＥＳ）、次の子ノードに処理を移し（Ｓ１２０６）、ステップＳ１２０１に処理は戻される。例えば、図９のツリー表示６０４の場合、親ノード（企画部）には次の子ノード（２課）が設定されているので、子ノード（２課）に対して、ステップＳ１２０１以降の処理が同様に行われる。
【０１０９】
すなわち、ステップＳ１２０１に処理が戻されると、先のステップＳ１２０６で処理の対象となった子ノードに、更に子ノードが設定されているか判定される。子ノードが設定されている場合は（Ｓ１２０１−ＹＥＳ）、ステップＳ１２０２に処理を進め、該当する子ノードに処理を移し（Ｓ１２０２）、処理をステップＳ１２０１に戻す。ステップＳ１２０１では、子ノードについて、更に子ノードが設定されているか判定する。子ノードが設定されている場合、ステップＳ１２０２に進み同様の処理を繰り返す。
【０１１０】
子ノードが設定されていない場合（Ｓ１２０１−ＮＯ）、ステップＳ１２０３に処理を進め、該当する子ノードに保存されているページ番号を取得する。
【０１１１】
親ノードに処理を移し（Ｓ１２０４）、次の子ノードがない場合（Ｓ１２０５−ＮＯ）、ステップＳ１２０７に処理は進められる。そして、ステップＳ１２０７において、プレビュー表示部１１１は、先のステップＳ１２０３で取得したページ番号のうち、末尾のページのプレビュー表示を表示領域８０２に表示して処理を終了する。
【０１１２】
例えば、図９のツリー表示６０４でノード（企画部）を選択して「末尾のページをプレビュー」が指示された場合、子ノード（２課）に保存されているページ番号[７]が取得される（Ｓ１２０３）。このページ番号に基づいてステップＳ１２０７でプレビュー表示される。
【０１１３】
以上の処理により、選択したノードに対応する帳票データにおけるページ情報を取得し、その先頭ページまたは末尾ページに対応する帳票データを検索して、容易にプレビュー表示することが可能になる。これにより、検索結果の視認性の向上が可能になる。
【０１１４】
尚、本実施形態では、ブレイク位置を検索するために、ユーザが指定可能な３つのブレイクキーを指定する例を示しているが、本発明の趣旨は、これに限定されるものではなく、指定可能なブレイクキーの数が可変であってもよい。
【０１１５】
また、ユーザによるブレイクキーの指定は、本発明の趣旨において必要条件ではなく、例えば、帳票データに含まれるフォーム情報に、あらかじめブレイクキーが設定されていてもよい。帳票保存サーバ１２０において、フォーム情報の設定とともに、ブレイクキーを設定することも可能である。
【０１１６】
以上説明したように、本実施形態に拠れば所望のプレビューデータ、印刷データを検索するために、検索結果の視認性、印刷範囲の設定において操作性の優れた情報処理技術の提供が可能になる。
【０１１７】
（他の実施形態）
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給することによっても、達成されることは言うまでもない。また、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０１１８】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１９】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１２０】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。また、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１２１】
【図１】本発明の実施形態に係る帳票印刷システムの全体構成を示す図である。
【図２】図１におけるクライアント端末、帳票保存サーバ及び印刷装置の基本的なハードウェア構成を示すブロック図である。
【図３】帳票印刷システムにおける印刷処理の流れを説明するフローチャートである。
【図４】帳票データ記憶部に格納される帳票データの構造を説明する図である。
【図５】プレビュー表示されている帳票データに対して指定されたフィールドの位置の検索結果をツリー表示する処理を説明するフローチャートである。
【図６】例示した帳票データをブレイク位置で検索した結果をツリー表示する図である。
【図７】例示した帳票データをブレイク位置で検索した結果をツリー表示する図である。
【図８】クライアント端末の画面に表示されるプレビュー表示画面を例示する図である。
【図９】ブレイク位置の検索結果を例示する図である。
【図１０】図９に示した操作メニューで「印刷」が指定された場合の処理の流れを説明するフローチャートである。
【図１１】図９に示した操作メニューで「先頭のページをプレビュー」が指示された場合の処理の流れを説明するフローチャートである。
【図１２】図９に示した操作メニューで「末尾のページをプレビュー」が指示された場合の処理の流れを説明するフローチャートである。
【図１】
2007156902.tif 000003
【図２】
2007156902.tif 000004
【図３】
2007156902.tif 000005
【図４】
2007156902.tif 000006
【図５】
2007156902.tif 000007
【図６】
2007156902.tif 000008
【図７】
2007156902.tif 000009
【図８】
2007156902.tif 000010
【図９】
2007156902.tif 000011
【図１０】
2007156902.tif 000012
【図１１】
2007156902.tif 000013
【図１２】
2007156902.tif 000014