(57)【特許請求の範囲】
【請求項１】
複数の異なる様式の帳票を統合して印刷する複数様式帳票統合印刷方法において、
印刷データ解析部が、帳票を印刷した際に出力される統合様式生成用印刷データを読み込み、読み込んだ統合様式生成用印刷データに帳票を識別するための帳票ＩＤを付与し、判定条件及び項目のタイプを有するポリシーテーブルに基づいて、読み込んだ統合様式生成用印刷データの項目を判定し、該項目を識別するアイテムＩＤと項目のタイプと項目の属性と項目の印刷データを対応付ける処理を統合様式生成用印刷データの項目がある限り繰り返して中間印刷データを生成し、生成した中間印刷データを記憶装置に格納するステップと、
アイテム解析部が、前記生成した複数の中間印刷データを読み込み、同じタイプの項目を検索し、同じタイプの項目をグループ化したＩＤであるデータＩＤと帳票ＩＤとアイテムＩＤとを対応付けて帳票データ参照先として記憶装置に格納するステップと、
帳票出力用データ生成部が、統合様式生成用印刷データと同じ様式の任意のデータを持つ統合帳票生成用印刷データから前記印刷データ解析部と同様の処理によって生成した中間印刷データを読み込み、帳票データ参照先に基づいてデータＩＤに対応する帳票ＩＤとアイテムＩＤを取得し、読み込んだ中間印刷データに基づいて、アイテムＩＤに対応する印刷データを取得し、帳票出力用データを生成して記憶装置に格納するステップとを有することを特徴とする複数様式帳票統合印刷方法。
【請求項２】
統合様式解析部が、ユーザによって選択された項目のアイテムＩＤに基づいて帳票データ参照先を参照し、データＩＤ及び各帳票において同じ属性のアイテムＩＤを取得し、その項目の統合帳票印刷時のデータ構造を示す帳票出力用データ構造を生成して記憶装置に格納し、
前記帳票出力用データ生成部が、前記帳票出力用データ構造に示された項目について前記帳票出力用データを生成して記憶装置に格納することを特徴とする請求項１に記載された複数様式帳票統合印刷方法。
【請求項３】
統合帳票出力部が、前記帳票出力用データと印刷用統合様式を読み込んで、帳票出力用データの先頭レコードから順番に印刷用統合様式に基づいて印刷に必要な情報を付加して統合帳票印刷データを生成し、統合帳票印刷データのレコード位置に合わせて所定の方向に並べた帳票出力を出力装置に行うことを特徴とする請求項１または請求項２のいずれかに記載された複数様式帳票統合印刷方法。
【請求項４】
複数の異なる様式の帳票を統合して印刷する複数様式帳票統合印刷システムにおいて、
帳票を印刷した際に出力される統合様式生成用印刷データを読み込み、読み込んだ統合様式生成用印刷データに帳票を識別するための帳票ＩＤを付与し、判定条件及び項目のタイプを有するポリシーテーブルに基づいて、読み込んだ統合様式生成用印刷データの項目を判定し、該項目を識別するアイテムＩＤと項目のタイプと項目の属性と項目の印刷データを対応付ける処理を統合様式生成用印刷データの項目がある限り繰り返して中間印刷データを生成し、生成した中間印刷データを記憶装置に格納する印刷データ解析部と、
前記生成した複数の中間印刷データを読み込み、同じタイプの項目を検索し、同じタイプの項目をグループ化したＩＤであるデータＩＤと帳票ＩＤとアイテムＩＤとを対応付けて帳票データ参照先として記憶装置に格納するアイテム解析部と、
統合様式生成用印刷データと同じ様式の任意のデータを持つ統合帳票生成用印刷データから前記印刷データ解析部と同様の処理によって生成した中間印刷データを読み込み、帳票データ参照先に基づいてデータＩＤに対応する帳票ＩＤとアイテムＩＤを取得し、読み込んだ中間印刷データに基づいて、アイテムＩＤに対応する印刷データを取得し、帳票出力用データを生成して記憶装置に格納する帳票出力用データ生成部とを備えることを特徴とする複数様式帳票統合印刷システム。
【請求項５】
複数の異なる様式の帳票を統合して印刷する複数様式帳票統合印刷方法をコンピュータに実行させる為のプログラムにおいて、
印刷データ解析部が、帳票を印刷した際に出力される統合様式生成用印刷データを読み込み、読み込んだ統合様式生成用印刷データに帳票を識別するための帳票ＩＤを付与し、判定条件及び項目のタイプを有するポリシーテーブルに基づいて、読み込んだ統合様式生成用印刷データの項目を判定し、該項目を識別するアイテムＩＤと項目のタイプと項目の属性と項目の印刷データを対応付ける処理を統合様式生成用印刷データの項目がある限り繰り返して中間印刷データを生成し、生成した中間印刷データを記憶装置に格納するステップと、
アイテム解析部が、前記生成した複数の中間印刷データを読み込み、同じタイプの項目を検索し、同じタイプの項目をグループ化したＩＤであるデータＩＤと帳票ＩＤとアイテムＩＤとを対応付けて帳票データ参照先として記憶装置に格納するステップと、
帳票出力用データ生成部が、統合様式生成用印刷データと同じ様式の任意のデータを持つ統合帳票生成用印刷データから前記印刷データ解析部と同様の処理によって生成した中間印刷データを読み込み、帳票データ参照先に基づいてデータＩＤに対応する帳票ＩＤとアイテムＩＤを取得し、読み込んだ中間印刷データに基づいて、アイテムＩＤに対応する印刷データを取得し、帳票出力用データを生成して記憶装置に格納するステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は帳票の様式とその様式に入力するデータを組み合わせて帳票を生成する複数様式帳票統合印刷技術に関するものである。
【背景技術】
【０００２】
帳票とは、請求書や伝票等の様に決まった様式を持ち、様式内にある項目は、例えばタイトル、宛先、請求金額等の様にある決まった意味を持つ。この様な定型的な帳票では、罫線や静的な語句は様式内に固定情報として保持し、項目に表示するデータはデータベース等から取得し、様式とデータを組み合わせて印刷する。
【０００３】
上記の様な帳票を印刷する技術において、従来は、複数の異なる様式の帳票を組み合わせて印刷する場合、特許文献１の様に、様式とその入力データを元に、様式を変更する為の規則を記述した印刷制御情報を生成し、様式と入力データと印刷制御情報を組み合わせて印刷していた。
【０００４】
【特許文献１】特開２００４−３３４４２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来技術では、複数の異なる様式の帳票を組み合わせて印刷する場合、それぞれの帳票を定義した様式定義言語を統一しなければならなかった。また、印刷制御情報を作成する為には、印刷実行前の様式と入力データの内容について知らないと作成できないが、各帳票の印刷結果のみしかない場合、様式と入力データの入手は困難である。例えば各サービスから取得する帳票を組み合わせて印刷しようとする場合、それぞれの帳票の様式と入力データの内容については各サービスの提供元しか知らないものであり、入手するのは困難である。上記の様に、様式定義言語が異なる帳票や、印刷結果しかない帳票から、複数の異なる様式の帳票を組み合わせて印刷できないと言う課題があった。
【０００６】
また、従来技術では、様式単位でまとめて印刷することは可能だが、表示する項目に意味を持たせていないため項目単位の種別が判らず、項目単位でまとめて印刷することができないと言う課題があった。例えば各様式に「合計金額」という項目がある場合、各帳票で印刷される「合計金額」を同じ表内に表示して印刷することができない。
【０００７】
本発明の目的は上記問題を解決し、複数の異なる様式の帳票を、印刷結果を元に統合して印刷することにより、帳票の生産性を向上することが可能な技術を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、複数の異なる様式の帳票を統合して印刷する複数様式帳票統合印刷システムにおいて、統合様式生成用印刷データからポリシーテーブルの条件に該当する項目の印刷データを統合して出力するための帳票出力用データを生成するものである。
【０００９】
本発明では、上記課題を解決する為に、様式定義言語に依存しない印刷結果から、各帳票に対する様式と入力データに対する知識を必要とすることなく、各様式にある同じ意味を持つ項目をまとめながら一つの帳票に統合して印刷することを目的とし、各帳票内にある同じ意味を持つ項目を抽出する手段と、同じ意味を持つ項目を、統合する様式に定義する手段と、同じ意味を持つ項目に表示されているデータを抽出し、抽出したデータを元に、統合する帳票に対する入力データを生成する手段を備える。
【００１０】
まず本発明の複数様式帳票統合印刷システムでは、様式定義言語に依存しない印刷結果である統合様式生成用印刷データを読み込み、ポリシーテーブルの条件に該当する項目を前記統合様式生成用印刷データから読み出して中間印刷データを生成する処理を、異なる様式の帳票毎に行って複数の中間印刷データを記憶装置に格納する。
【００１１】
次に、前記生成した複数の中間印刷データから、同じ意味を持つ項目、すなわちタイプ等の属性が同じ項目（アイテム）の識別情報（アイテムＩＤ）を読み出してそのアイテムＩＤをユニークなデータＩＤと対応付けた帳票データ参照先を生成して記憶装置に格納する。
【００１２】
その後、前記帳票データ参照先のデータＩＤに対応するアイテムＩＤで識別されるアイテムの印刷データを前記中間印刷データから読み出して、統合帳票印刷データを出力するためのデータである帳票出力用データを生成して記憶装置に格納する。前記アイテムＩＤで識別されるアイテムの印刷データは、異なる様式の帳票における同じ属性の印刷データであるので、前記生成した帳票出力用データに印刷を行えば、複数の異なる様式の帳票における同じ属性のアイテムを統合した印刷を行うことができる。
【００１３】
前記の様に本発明では、様式定義言語に依存しない印刷結果である統合様式生成用印刷データからポリシーテーブルの条件に該当する項目の印刷データを統合して出力するための帳票出力用データを生成するので、複数の異なる様式の帳票を、印刷結果を元に統合して印刷することにより、各帳票の様式や入力データに対する専門知識を必要とせず、また、様式定義言語に依存することなく一つにまとめることができ、帳票の生産性を向上することができる。また、各帳票にある同じ意味を持つ項目をまとめた一つの帳票として印刷することにより、各帳票に分散して表示されていた情報の見落としを防ぎ、帳票の可読性を向上することができる。
【発明の効果】
【００１４】
本発明によれば、複数の異なる様式の帳票を、印刷結果を元に統合して印刷することにより、帳票の生産性を向上することが可能である。
【発明を実施するための最良の形態】
【００１５】
以下に複数の異なる様式の帳票（表）を統合して印刷する一実施形態の複数様式帳票統合印刷システムについて説明する。本実施形態では帳票を一例として説明するが、帳票や表を含む文書にも適用可能である。
【００１６】
図１は本実施形態の複数様式帳票統合印刷システムのシステム全体を示す図である。本実施形態の複数様式帳票統合印刷システムは、統合様式生成装置１０２と統合帳票生成装置１０３で実現されており、統合様式生成装置１０２には印刷データ解析部１１１とアイテム解析部１１３と印刷イメージ表示部１１４と統合様式取得部１１５が割り当てられている。また、統合様式生成装置１０２には、中間印刷データ１１２を保持する内部記憶が割り当てられている。統合帳票生成装置１０３には統合様式解析部１２１と帳票データ参照先取得部１２４と印刷データ解析部１２５と帳票出力用データ生成部１２７と統合帳票出力部１２９が割り当てられている。また、統合帳票生成装置１０３には、帳票出力用データ構造１２２を保持する内部記憶と、印刷用統合様式１２３を保持する内部記憶と、中間印刷データ１２６を保持する内部記憶と、帳票出力用データ１２８を保持する内部記憶が割り当てられている。
【００１７】
また、統合様式生成装置１０２には帳票編集に使用する統合様式定義画面１０４が接続され、また、統合帳票生成装置１０３には印刷物を出力する為のプリンタ１０５がネットワーク接続されている。更に、統合様式生成装置１０２と統合帳票生成装置１０３は帳票データ参照先１０７を持つ外部記憶と、統合様式１０６を持つ外部記憶が共通でネットワーク接続されている。
【００１８】
本実施形態では、ネットワークで接続された各々の計算機に統合帳票出力部１２９等の要素を割り当てることにより実施形態を示したが、複数要素を１台の計算機に割り当てても良く、スタンドアロンシステムに上記全ての要素を割り当てても良い。
【００１９】
図２は本実施形態の各装置のハードウェア構成を示す図である。図２に示す様にＣＰＵ１５０は、バス１５４を通して、メモリ１５１、ハードディスク１５２、ＬＡＮ１５３、プリンタ１５５、キーボードやマウスの様な入力部１５６、ディスプレイの様な出力部１５７に接続されている。ＣＰＵ１５０は演算や装置の制御を行う。ハードディスク１５２にはプログラムやデータが格納されており、読み込まれたプログラムやデータはメモリ１５１に展開される。入力部１５６はユーザからデータ入力等の操作を受け付け、出力部１５７は統合様式定義画面１０４等の操作画面をユーザに表示する。プリンタ１５５は生成された印刷データの印刷を行う。プリンタ１５５はバス１５４で接続されていても良いし、ＬＡＮ１５３を介して接続されていても良い。ＬＡＮ１５３は外部記憶や他装置との接続も行う。
【００２０】
本実施形態において、前記各部の機能をコンピュータに実行させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録されハードディスク１５２等に格納された後、メモリ１５１にロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体からコンピュータにインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００２１】
図５は、印刷データ解析部１１１で統合様式生成用印刷データ１０１を読み込み、中間印刷データ１１２を生成する処理の詳細を示す。また、図３は帳票を印刷した際に出力される統合様式生成用印刷データ１０１の印刷イメージの詳細を示し、図４は統合様式生成用印刷データ１０１を解析する為のルールであるポリシーテーブルの詳細を示し、図６は中間印刷データ１１２の詳細を示す。
【００２２】
図３に示す統合様式生成用印刷データ１０１は、例えば通信サービスの利用明細１７０やガスサービスの利用明細１８０の様な、ある業務で生成された帳票の印刷結果であり、紙上もしくは電子データとして文字や数字、罫線が描画されたものである。
【００２３】
図４に示すポリシーテーブルは項目を解析する為の条件１９０と、条件に当てはまった項目のタイプ１９１を示す内部情報である。ポリシーテーブルはシステム内で固定されている情報であるが、帳票が対象とする業務が変われば、業務に合わせた内容に切り替えてシステムを運用することもできる。
【００２４】
図６に示す中間印刷データ１１２は、どの印刷データに関するデータであるか識別できるユニークなＩＤとして<帳票ＩＤ>２５０を持ち、また、印刷データに表示している一つ一つの項目に対するデータとして<アイテム>２５１を持つ。<アイテム>２５１から</アイテム>２５６内には項目のデータとして、帳票内でユニークな値を持つ<アイテムＩＤ>２５２、タイトルや金額項目等の項目のタイプを表す<タイプ>２５３、項目が表示されている開始位置のＸ、Ｙ座標と終了位置のＸ、Ｙ座標を表す<表示位置>２５４、項目が表示している値を表す<データ>２５５を持つ。<アイテム>２５１は印刷データに表示している項目一つにつき一つ持つ。また、一つの統合様式生成用印刷データ１０１に対して、一つの中間印刷データ１１２が対応する。
【００２５】
ここで、中間印刷データ１１２を生成する処理を示す。統合様式生成用印刷データ１０１を解析し、中間印刷データ１１２にデータを挿入していく処理である。まず、統合様式生成用印刷データ１０１を一つ読み込み、ユニークな帳票ＩＤを採番し（ステップ２０２）、<帳票ＩＤ>２５０を挿入する（ステップ２０３）。
【００２６】
次に、帳票の先頭の項目を読み取り、帳票内でユニークなアイテムＩＤを採番し(ステップ２０４)、<アイテム>２５１、<アイテムＩＤ>２５２を挿入する（ステップ２０５）。
【００２７】
次に以下の判定を行い該当する情報を中間印刷データ１１２に挿入する。判定条件はポリシーテーブルに従うが、ここでは図４に示したポリシーテーブルの内容で判定を行う処理を示す。ポリシーテーブルの内容が異なれば、判定条件も異なる。
【００２８】
まず、読み込んだ項目の表示位置が帳票の上端から２ｃｍ以内であるかを判定し（ステップ２０６）、該当する場合、<タイプ>２５３として「タイトル」を挿入し、表示データを一時保持する（ステップ２０７）。通信サービスの利用明細１７０の場合「○○通信」１７１であり、ガスサービスの利用明細１８０の場合「△△ガス」１８１である。
【００２９】
上記に該当しない場合、次の判定に遷移する。読み込んだ項目が数字を含み、数字の直前か直後に「￥」か「円」が付くか判定し（ステップ２０８）、該当する場合、<タイプ>２５３として「金額」を挿入し、表示データから数字個所のみを抜き出し一時保持する（ステップ２０９）。通信サービスの利用明細１７０の場合「３０００円」１７２であり、ガスサービスの利用明細１８０の場合「￥４０００」１８３である。
【００３０】
上記に該当しない場合、次の判定に遷移する。読み込んだ項目が数字を含み、かつ、それぞれの項目が「年」「月」「日」を持つか、または、読み込んだ項目が数字を含み、かつ、それぞれの項目の間に「／」があるかを判定し（ステップ２１０）、該当する場合、<タイプ>２５３として「日付」を挿入し、表示データから数字個所のみを抜き出しＹＹＹＹＭＭＤＤ形式の８桁の数字として一時保持する（ステップ２１１）。通信サービスの利用明細１７０の場合「２００６／０３／０１」１７３であり、ガスサービスの利用明細１８０の場合「２００６年３月１日」１８２である。
【００３１】
上記に該当しない場合、次の判定に遷移する。読み込んだ項目が罫線で囲まれた四角形であり、中が複数の罫線で区切られているか判定し（ステップ２１２）、該当する場合、<タイプ>２５３として「表」を挿入し、表示データは保持しない（ステップ２１３）。通信サービスの利用明細１７０の場合表１７４であり、ガスサービスの利用明細１８０の場合表１８４である。
【００３２】
上記に該当しない場合、次の判定に遷移する。項目全体が数字で形成されているかの判定を行い（ステップ２１４）、該当する場合、<タイプ>２５３として「数値」を挿入し、表示データを一時保持する（ステップ２１５）。該当しない場合、<タイプ>２５３として「文字列」を挿入し、表示データを一時保持する（ステップ２１６）。ガスサービスの利用明細１８０の場合「ご利用ポイント  ４０ｐｔ」１８５であるので「文字列」となり、これが「４０」の様な数字のみの場合「数値」となる。
【００３３】
上記判定を行った後、<表示位置>２５４に項目が表示されている開始位置のＸ、Ｙ座標と終了位置のＸ、Ｙ座標を挿入し、<データ>２５５に一時保持しておいたデータを挿入し、</アイテム>を挿入する（ステップ２１７）。上記処理を、印刷データの上部から項目がある限り繰り返し行い（ステップ２１８）、中間印刷データ１１２を生成する。
【００３４】
印刷データ解析部１１１において上記処理を施し、通信サービスの利用明細１７０を解析して中間印刷データ１１２を生成した際の例を示す。通信サービスの利用明細１７０の「○○通信」１７１が中間印刷データ１１２の<アイテム>２５１となり、「３０００円」１７２が<アイテム>２６０となり、「２００６／０３／０１」１７３が<アイテム>２６１となり、表１７４が<アイテム>２６２となる。
【００３５】
上記処理を統合様式生成用印刷データ１０１の数だけ繰り返し、統合様式生成用印刷データ１０１に対応した中間印刷データ１１２を生成する。
【００３６】
図７は、アイテム解析部１１３で中間印刷データ１１２を読み込み、帳票データ参照先１０７を生成する処理の詳細を示す。また、図１１は帳票データ参照先１０７の詳細を示す。
【００３７】
まず、帳票データ参照先１０７にデータＩＤカラム５０１と、統合様式生成用印刷データ１０１の数と同じ数の帳票ＩＤカラム５０２を作成する（ステップ３０１）。帳票ＩＤカラム５０２のカラム名は、各統合様式生成用印刷データ１０１に対する中間印刷データ１１２内に定義されている<帳票ＩＤ>２５０のデータと同じ値とする。
【００３８】
次に中間印刷データ１１２を一つ読み込む（ステップ３０２）。読み込んだデータの中から、<アイテム>２５１から</アイテム>２５６までのデータを一つ読む（ステップ３０３）。読み込んだデータをアイテムと定義する。アイテムから<アイテムＩＤ>２５２の値を読み込み、帳票データ参照先１０７の帳票ＩＤカラム５０２の中に同じ値が既に入っていれば、アイテムの読み込み（ステップ３０３）に戻り、入っていなければ次の処理に遷移する（ステップ３０４）。ここで参照する帳票ＩＤカラム５０２は、現在読み込んでいる中間印刷データ１１２の<帳票ＩＤ>２５０のデータと同じカラム名を持つカラムである。
【００３９】
次に、アイテムの意味付けを行う為の比較処理を示す。ここで比較を行う為に、各アイテムの<タイプ>２５３、<データ>２５５、<表示位置>２５４を使用するが、これらをアイテムの属性と定義する。まず、比較対象としているアイテムの属性を取得する。ここでは<タイプ>２５３の値を取得する。中間印刷データ１１２内の全アイテムを検索し、属性（<タイプ>２５３）の比較を行う（ステップ３０５）。同じ属性のアイテムがある場合、比較する属性を追加して条件を絞り込んだ比較としてやり直すため、他に比較する属性があるか判定する（ステップ３０８）。この場合、<タイプ>２５３の他にも<データ>２５５が属性としてあるので、属性として<データ>２５５を追加してアイテムの属性の比較を行う（ステップ３０５）。もし、<表示位置>２５４まで属性に追加してしまっている場合は、他に比較する属性がないので、次のアイテムの取得（ステップ３１０）の処理に遷移する。
【００４０】
属性の比較（ステップ３０５）で、中間印刷データ１１２内に同じ属性のアイテムがない場合、他の中間印刷データ１１２内に同じ属性を持つアイテムがないか検索する（ステップ３０６）。該当するアイテムがない場合は、次のアイテムの取得（ステップ３１０）の処理に遷移する。該当するアイテムがある場合は、該当するアイテムを持つ中間印刷データ１１２内に一つだけしかないかの判定を行う（ステップ３０７）。該当するアイテムが複数ある場合は、属性を追加して条件を絞り込んだ比較としてやり直すため、他の属性があるかの判定処理（ステップ３０８）に遷移する。該当するアイテムが一つだけある場合は、帳票データ参照先１０７の、中間印刷データ１１２に対応した帳票ＩＤカラム５０２に、該当するアイテムの<アイテムＩＤ>２５２を挿入する。該当するアイテムを持つ中間印刷データ１１２に対して上記処理を施す。該当するアイテムを持たない帳票に対しては「−」（ハイフン）を挿入する。全ての中間印刷データ１１２に対して処理を施した後、ユニークなＩＤを採番し、データＩＤカラム５０１に挿入する。ここでは、該当するアイテムの<タイプ>２５３の値に通し番号をつけた値とする。例えば「タイトル１」や「日付１」等とする（ステップ３０９）。
【００４１】
上記処理が終わったら次のアイテムがあるかを検索する（ステップ３１０）。アイテムがある場合は、次のアイテムの読み込み（ステップ３０３）に遷移する。アイテムがない場合は、一つの中間印刷データ１１２が終わったので、次の中間印刷データ１１２を検索する（ステップ３１１）。中間印刷データ１１２がある場合は、次の中間印刷データ１１２の読み込み（ステップ３０２）に遷移する。中間印刷データ１１２がない場合は、アイテム解析部１１３の処理を終了する。
【００４２】
上記の様なアイテム解析部１１３によって生成された帳票データ参照先１０７は、１レコードで、各中間印刷データ１１２で同じ意味を持つアイテムのアイテムＩＤ２５２と、それをグループ化したＩＤであるデータＩＤ５０１を管理することができ、タイトルアイテムや日付アイテム等、複数の同じ意味を持つアイテムがある場合は、複数レコードで管理することができる。
【００４３】
図８と図９は、印刷イメージ表示部１１４で統合様式定義画面１０４を表示し、統合様式取得部１１５がユーザによって定義された帳票の内容を取得し統合様式１０６として出力する処理を示す。また、図１０は統合様式定義画面１０４の詳細を示し、図１２は統合様式１０６の詳細を示す。
【００４４】
まず、印刷イメージ表示部１１４が統合様式定義画面１０４を表示する（ステップ３５０）。ここで、統合様式定義画面１０４の詳細を示す。統合様式定義画面１０４は、印刷データ一覧表示画面４０１と帳票定義画面４０２からなる。印刷イメージ表示部１１４は、各統合様式生成用印刷データ１０１の印刷イメージを印刷データ一覧表示画面４０１に表示する。例として、通信サービスの利用明細４０３、ガスサービスの利用明細４０４、電気サービスの利用明細４０５の印刷イメージの表示を示す。また、帳票定義画面４０２には何も定義されていない白紙の状態のエディタを表示する。
【００４５】
ユーザが、マウスカーソル４１０を使用して、印刷データ一覧表示画面４０１の一つの帳票のアイテム４２０を選択したとき、統合様式取得部１１５はユーザが選択したアイテムのアイテムＩＤ２５２を取得する（ステップ３５１）。ここで、帳票データ参照先１０７を参照し、ユーザがアイテムを選択した印刷イメージに対応する帳票ＩＤカラム５０２に、ユーザが選択したアイテムのアイテムＩＤ２５２があるか判定する（ステップ３５２）。アイテムＩＤ２５２がある場合は、帳票データ参照先１０７の該当するレコードから、各印刷イメージにおける意味が同じアイテムのアイテムＩＤ２５２を取得し、対象となる各印刷イメージのアイテム４２１・４２２をハイライト表示する（ステップ３５３）。アイテムＩＤがない場合は、選択されたアイテムのみをハイライト表示する（ステップ３５４）。
【００４６】
ユーザが、選択したアイテム４２０をマウスカーソル４１１によりドラッグ＆ドロップすることで、帳票定義画面４０２にアイテム４３０を貼り付けることができる（ステップ３５５）。このとき、統合様式取得部１１５は、<アイテム>５５１を統合様式１０６に挿入し、統合様式１０６内でユニークとなるＩＤを取得し、<ＩＤ>５５２として統合様式１０６に挿入する（ステップ３５６）。次に、帳票データ参照先１０７の該当するレコードのデータＩＤ５０１の値を取得し、<データ取得先>５５３として統合様式１０６に挿入する（ステップ３５７）。次に、アイテムを印刷する際に必要な<フォント>５５４等の情報と、</アイテム>を統合様式１０６に挿入する（ステップ３５８）。
【００４７】
次にユーザが、帳票定義画面４０２に貼り付けたアイテムを単数または複数選択することでグループ化４４０し、グループ化４４０したグループに対して繰り返し指定をすることができる（ステップ３７０）。このとき、統合様式取得部１１５は、<テーブル>５８１を統合様式１０６に挿入し、統合様式１０６内でユニークとなるＩＤを取得し、<テーブルＩＤ>５８２として統合様式１０６に挿入する（ステップ３７１）。次に、グループ化４４０に含まれるアイテムから<アイテム>５５１の<ＩＤ>５５２を取得し、統合様式１０６の<テーブル>５８１の<カラム>５８３に挿入する（ステップ３７２）。グループ化４４０に含まれるアイテム全てに対し、上記処理を繰り返す（ステップ３７３）。その後、統合様式１０６に</テーブル>を挿入する（ステップ３７４）。
【００４８】
このとき、帳票定義画面４０２上には、繰り返し指定がされたことを示す為に、印刷データ一覧表示画面４０１上の各印刷イメージにおけるデータＩＤ５０１が同じアイテムの値をそれぞれ表示する。例として、帳票定義画面４０２のアイテム４３０がグループ化４４０されて繰り返された際の状態を示す。帳票定義画面４０２上のアイテム４３０は、通信サービスの利用明細４０３のアイテム４２０を貼り付けたものである。このアイテム４２０をユーザが選択したときにハイライト表示した各印刷イメージ上のアイテムの値を取得し、繰り返し指定された際に、帳票定義画面４０２に表示する。ガスサービスの利用明細４０４ならアイテム４２１の値を帳票定義画面４０２の値４３１に、電気サービスの利用明細４０５ならアイテム４２２の値を帳票定義画面４０２の値４３２に表示する。
ユーザは上記以外にも様式として定義したい場合には、ツールボックス４４５を利用して様式を装飾することができる。
【００４９】
上記の様な統合様式取得部１１５によって生成された統合様式１０６は、アイテム毎の情報<アイテム>５５１とテーブル毎の情報<テーブル>５８１を保持する。<アイテム>５５１には帳票内でアイテムを一意に識別する<ＩＤ>５５２と、<フォント>５５４等のアイテムを表示する為の情報を持つ。また、アイテムが繰り返し指定されている場合、繰り返して表示するデータを取得する為の<データ取得先>５５３を持つ。この値は帳票データ参照先１０７の<データＩＤ>５０１に対応する値である。<テーブル>５８１には、繰り返し指定されたアイテムを表示する為の情報を持つ。帳票内でテーブルを一意に識別する<テーブルＩＤ>５８２と、各カラムに表示するアイテムを位置付ける<カラム>５８３を持つ。<カラム>５８３の値は、<アイテム>５５１の<ＩＤ>５５２に対応する。
【００５０】
図１３に、統合様式解析部１２１で統合様式１０６を読み込み、統合帳票印刷データ１０９に表示するデータを生成する為の帳票出力用データ構造１２２と、帳票出力に必要な帳票様式である印刷用統合様式１２３を生成する処理の流れを示す。また、図１７に帳票出力用データ構造１２２の詳細を示し、図１４に印刷用統合様式１２３の詳細を示す。
【００５１】
まず、統合様式１０６からデータを読み込み（ステップ６０１）、<テーブル>５８１の<カラム>５８３の値を取得する（ステップ６０２）。取得した値をキーに、各<アイテム>５５１の<ＩＤ>５５２を取得し（ステップ６０３）、値が等しいかの判定を行う（ステップ６０４）。等しくない場合は、次の<アイテム>５５１を探し（ステップ６０６）、全ての<アイテム>５５１に対して判定を行う。値が等しい場合は、帳票出力用データ構造１２２のカラム７５１に１から通し番号を、<データＩＤ>７５２に該当する<アイテム>５５１の<データ取得先>５５３を格納する（ステップ６０５）。上記処理を<テーブル>５８１に含まれる<カラム>５８３の数だけ繰り返す（ステップ６０７）。<テーブル>５８１が複数ある場合は、全ての<テーブル>５８１に対して繰り返す。
【００５２】
上記の様な統合様式解析部１２１によって生成された帳票出力用データ構造１２２は、統合帳票印刷データ１０９に表示するテーブルに埋め込むデータの為の情報を保持し、テーブルのカラムに対応するカラム７５１と、該当するカラムに表示するデータの取得先であるデータＩＤ７５２を持つ。データＩＤ７５２は、帳票データ参照先１０７のデータＩＤ５０１に対応している。
【００５３】
上記処理で帳票出力用データ構造１２２を生成した後、帳票出力用データ構造１２２を生成する為に使用した統合様式１０６内のデータ取得先５５３を削除し、印刷用統合様式１２３を生成する（ステップ６０８）。
上記の様な統合様式解析部１２１によって生成された印刷用統合様式１２３は、帳票印刷を実行する為に必要な情報だけを残した様式６２０である。
【００５４】
図１５は本実施形態の帳票データ参照先取得部１２４の処理手順を示すフローチャートである。
図１５に、帳票データ参照先取得部１２４で帳票データ参照先１０７と帳票出力用データ構造１２２を読み込み、印刷データ解析部１２５で統合帳票生成用印刷データ１０８を読み込む処理の流れを示す。
【００５５】
まず、帳票出力用データ構造１２２からデータを読み込み（ステップ６５１）、帳票データ参照先１０７からデータを読み込む（ステップ６５２）。次に、中間印刷データ１２６が既にあるかを判定し（ステップ６５３）、ない場合は、統合帳票生成用印刷データ１０８からデータを読み込み、中間印刷データ１２６を生成する（ステップ６５４）。ある場合は、そのまま処理を終了する。
【００５６】
上記の印刷データ解析部１２５で読み込む統合帳票生成用印刷データ１０８は、印刷される元となった様式は、統合様式生成用印刷データ１０１と同じものである。印刷される元となったデータは統合様式生成用印刷データ１０１と同じものでも、異なるものでも良い。例えば、統合様式生成用印刷データ１０１は各サービスの３月の利用明細であった場合、統合帳票生成用印刷データ１０８は各サービスの４月の利用明細であっても良い。また、上記の印刷データ解析部１２５の処理は統合様式生成装置１０２の印刷データ解析部１１１と同じであり、出力される中間印刷データ１２６の詳細は、統合様式生成装置１０２の中間印刷データ１１２と同じである。
【００５７】
図１６に、帳票出力用データ構造１２２と中間印刷データ１２６から、統合帳票印刷データ１０９に表示するデータである帳票出力用データ１２８を生成する帳票出力用データ生成部１２７の処理の流れを示す。
【００５８】
まず、帳票出力用データ構造１２２の最初のレコードからデータＩＤ７５２を取得する。取得した値をキーに、帳票データ参照先１０７から同じ値をデータＩＤ５０１に持つレコードを取得する（ステップ７０１）。次に、取得したレコードの各帳票カラム５０２のデータを取得する（ステップ７０２）。ここで、取得したデータの判定を行う（ステップ７０３）。データが「−」である場合、帳票出力用データ１２８にデータが無いことを示す欠損値を格納する（ステップ７０６）。データがある場合、帳票ＩＤカラム５０２に対応する中間印刷データ１２６から、取得したデータと同じ値を<アイテムＩＤ>２５２に持つアイテムを取得する。（ステップ７０４）。取得したアイテムの<データ>２５５の値を取得し、帳票出力用データ１２８に格納する（ステップ７０５）。格納するレコード位置は、帳票データ参照先１０７からデータを読み込んでいる帳票ＩＤカラム５０２の位置と同じ位置とする。帳票００１カラム５０２のデータを読み込んでいる場合、帳票出力用データ１２８の１レコード目に値を格納する。帳票００２カラム５０３のデータを読み込んでいる場合、帳票出力用データ１２８の２レコード目に値を格納する。また、格納するカラム位置７７１・７７２は、帳票出力用データ構造１２２のカラム７５１の値と同じ位置とする。
【００５９】
上記処理を、帳票データ参照先１０７から読み込み中のレコードに対して、次の帳票カラム５０３からデータを読み込み処理を続け（ステップ７０７）、最後の帳票カラムまで繰り返す。最後の帳票カラムまでの処理が終了したとき、帳票出力用データ構造１２２の次のレコードからデータを取得して処理を繰り返す（ステップ７０８）。上記処理を帳票出力用データ構造１２２のレコード全てに対して繰り返すことで、帳票出力用データ１２８を生成する。
【００６０】
上記の様な帳票出力用データ生成部１２７によって生成された帳票出力用データは、統合帳票印刷データ１０９に表示するデータとして使用される。
統合帳票出力部１２９では、生成された印刷用統合様式１２３と、帳票出力用データ１２８を組み合わせて、統合帳票印刷データ１０９を生成し、プリンタ１０５に渡して帳票出力を実行する。
【００６１】
図１９は本実施形態の帳票出力された結果の例を示す図である。図１９に示す様に本実施形態では、同じ属性のタイトルや金額等のデータを、それらの帳票出力用データ１２８のレコード位置に合わせてそれぞれ縦に並べた帳票出力を行っている。ここで、同じ属性のデータを横に並べる等、出力方向を他の方向に変更しても良い。
【００６２】
統合様式生成用印刷データ１０１と統合帳票生成用印刷データ１０８が同じ場合、印刷イメージ７９０・７９１の様に各サービスの項目をまとめて印刷することができる。統合様式生成用印刷データ１０１と統合帳票生成用印刷データ１０８が異なる場合、例えば、統合様式生成用印刷データ１０１は各サービスの３月の利用明細で、統合帳票生成用印刷データ１０８は各サービスの４月の利用明細であった場合、３月の利用明細を統合様式生成用印刷データ１０１として一度様式を生成しておけば、統合帳票生成用印刷データ１０８を４月分に変えるだけで、印刷イメージ７９２・７９３の様に４月のデータとして統合して帳票出力することができる。
【００６３】
以上説明した様に本実施形態の複数様式帳票統合印刷システムによれば、統合様式生成用印刷データからポリシーテーブルの条件に該当する項目の印刷データを統合して出力するための帳票出力用データを生成するので、複数の異なる様式の帳票を、印刷結果を元に統合して印刷することにより、各帳票の様式や入力データに対する知識を必要とせず、また、様式定義言語に依存することなく一つにまとめることができ、帳票の生産性を向上することが可能である。また、各帳票にある同じ意味を持つ項目をまとめた一つの帳票として印刷することにより、各帳票に分散して表示されていた情報の見落としを防ぎ、帳票の可読性を向上することができる。
【図面の簡単な説明】
【００６４】
【図１】本実施形態の複数様式帳票統合印刷システムのシステム全体を示す図である。
【図２】本実施形態の各装置のハードウェア構成を示す図である。
【図３】本実施形態の帳票を印刷した際に出力される統合様式生成用印刷データ１０１の印刷イメージの詳細を示す図である。
【図４】本実施形態の統合様式生成用印刷データ１０１を解析する為のルールであるポリシーテーブルの詳細を示す図である。
【図５】本実施形態の印刷データ解析部１１１の処理手順を示すフローチャートである。
【図６】本実施形態の中間印刷データ１１２の詳細を示す図である。
【図７】本実施形態のアイテム解析部１１３で中間印刷データ１１２を読み込み、帳票データ参照先１０７を生成する処理の詳細を示す図である。
【図８】本実施形態の統合様式取得部１１５の処理手順を示すフローチャートである。
【図９】本実施形態のグループ化の際の統合様式取得部１１５の処理手順を示すフローチャートである。
【図１０】本実施形態の統合様式定義画面１０４の詳細を示す図である。
【図１１】本実施形態の帳票データ参照先１０７の詳細を示す図である。
【図１２】本実施形態の統合様式１０６の詳細を示す図である。
【図１３】本実施形態の統合様式解析部１２１の処理手順を示すフローチャートである。
【図１４】本実施形態の印刷用統合様式１２３の詳細を示す図である。
【図１５】本実施形態の帳票データ参照先取得部１２４の処理手順を示すフローチャートである。
【図１６】本実施形態の帳票出力用データ生成部１２７の処理手順を示すフローチャートである。
【図１７】本実施形態の帳票出力用データ構造１２２の詳細を示す図である。
【図１８】本実施形態の帳票出力用データの詳細を示す図である。
【図１９】本実施形態の帳票出力された結果の例を示す図である。
【符号の説明】
【００６５】
１０１…統合様式生成用印刷データ、１０２…統合様式生成装置、１０３…統合帳票生成装置、１０４…統合様式定義画面、１０５…プリンタ、１０６…統合様式、１０７…帳票データ参照先、１０８…統合帳票生成用印刷データ、１０９…統合帳票印刷データ、１１１…印刷データ解析部、１１２…中間印刷データ、１１３…アイテム解析部、１１４…印刷イメージ表示部、１１５…統合様式取得部、１２１…統合様式解析部、１２２…帳票出力用データ構造、１２３…印刷用統合様式、１２４…帳票データ参照先取得部、１２５…印刷データ解析部、１２６…中間印刷データ、１２７…帳票出力用データ生成部、１２８…帳票出力用データ、１２９…統合帳票出力部、１５０…ＣＰＵ、１５１…メモリ、１５２…ハードディスク、１５３…ＬＡＮ、１５４…バス、１５５…プリンタ、１５６…入力部、１５７…出力部、１７０…利用明細、１７１〜１７４…項目、１８０…利用明細、１８１〜１８５…項目、１９０…条件、１９１…タイプ、２５０〜２５６…中間印刷データ例、２６１及び２６２…中間印刷データ例、４０１…印刷データ一覧表示画面、４０２…帳票定義画面、４０３〜４０５…利用明細、４１０及び４１１…マウスカーソル、４２０〜４２２…アイテム、４３０…アイテム、４３１…値、４３２…値、４４０…グループ化、４４５…ツールボックス、５０１…データＩＤ、５０２及び５０３…帳票ＩＤ、５５１〜５５４…統合様式データ例、５８１〜５８３…統合様式データ例、６２０…様式、７５１…カラム、７５２…データＩＤ、７７１及び７７２…帳票出力用データ例、７９０〜７９３…印刷イメージ。
【図１】
0004828318.tif 000002
【図２】
0004828318.tif 000003
【図３】
0004828318.tif 000004
【図４】
0004828318.tif 000005
【図５】
0004828318.tif 000006
【図６】
0004828318.tif 000007
【図７】
0004828318.tif 000008
【図８】
0004828318.tif 000009
【図９】
0004828318.tif 000010
【図１０】
0004828318.tif 000011
【図１１】
0004828318.tif 000012
【図１２】
0004828318.tif 000013
【図１３】
0004828318.tif 000014
【図１４】
0004828318.tif 000015
【図１５】
0004828318.tif 000016
【図１６】
0004828318.tif 000017
【図１７】
0004828318.tif 000018
【図１８】
0004828318.tif 000019
【図１９】
0004828318.tif 000020