(57)【要約】【課題】帳票ファイルを効率よく生成する帳票処理装置、帳票処理方法、及びプログラムを提供する。【解決手段】帳票処理装置１００は、データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類し、分類した固定文字データと罫線データとを用いて、入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、第一の生成部２００を有する。【選択図】図１
2020144653.tif 000002
【特許請求の範囲】
【請求項１】
データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類し、分類した前記固定文字データと前記罫線データとを用いて、前記入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、第一の生成部
を有することを特徴とする帳票処理装置。
【請求項２】
請求項１に記載の帳票処理装置であって、
分類した前記可変文字データのうち文字列を表すデータを用いて、前記入力帳票ファイルと、前記入力帳票ファイルに対して用いられる前記出力帳票ファイルとにおいて共通で用いられる可変文字データを抽出し、前記入力帳票ファイルから抽出した可変文字データと、前記出力帳票ファイルから抽出した可変文字データとを関連付けて、可変データ関連情報を生成する、第二の生成部
を有することを特徴とする帳票処理装置。
【請求項３】
請求項２に記載の帳票処理装置であって、
分類した前記可変文字データを用いて、新規に作成された入力帳票ファイルから可変文字データを抽出する、抽出部
を有することを特徴とする帳票処理装置。
【請求項４】
請求項３に記載の帳票処理装置であって、
新規の入力帳票ファイルから抽出した前記可変文字データを用いて、前記可変データ関連情報を参照し、前記マスタ帳票ファイルから当該可変文字データを出力する出力領域を検出し、当該出力領域に当該可変文字データを関連付けて、新規に出力帳票ファイルを生成する、第三の生成部
を有することを特徴とする帳票処理装置。
【請求項５】
（ａ）データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類する、ステップと、
（ｂ）分類した前記固定文字データと前記罫線データとを用いて、前記入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、ステップと、
を有することを特徴とする帳票処理方法。
【請求項６】
請求項５に記載の帳票処理方法であって、
（ｃ）分類した前記可変文字データのうち文字列を表すデータを用いて、前記入力帳票ファイルと、前記入力帳票ファイルに対して用いられる前記出力帳票ファイルとにおいて共通で用いられる可変文字データを抽出する、ステップと、
（ｄ）前記入力帳票ファイルから抽出した可変文字データと、前記出力帳票ファイルから抽出した可変文字データとを関連付けて、可変データ関連情報を生成する、ステップと、
を有することを特徴とする帳票処理方法。
【請求項７】
請求項６に記載の帳票処理方法であって、
（ｅ）分類した前記可変文字データを用いて、新規に作成された入力帳票ファイルから可変文字データを抽出する、ステップと、
を有することを特徴とする帳票処理方法。
【請求項８】
請求項７に記載の帳票処理方法であって、
（ｆ）新規の入力帳票ファイルから抽出した前記可変文字データを用いて、前記可変デー
タ関連情報を参照し、前記マスタ帳票ファイルから当該可変文字データを出力する出力領域を検出し、当該出力領域に当該可変文字データを関連付けて、新規に出力帳票ファイルを生成する、ステップと
を有することを特徴とする帳票処理方法。
【請求項９】
コンピュータに、
（ａ）データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類する、ステップと、
（ｂ）分類した前記固定文字データと前記罫線データとを用いて、前記入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、ステップと、
を実行させることを特徴とするプログラム。
【請求項１０】
請求項９に記載のプログラムであって、
（ｃ）分類した前記可変文字データのうち文字列を表すデータを用いて、前記入力帳票ファイルと、前記入力帳票ファイルに対して用いられる前記出力帳票ファイルとにおいて共通で用いられる可変文字データを抽出する、ステップと、
（ｄ）前記入力帳票ファイルから抽出した可変文字データと、前記出力帳票ファイルから抽出した可変文字データとを関連付けて、可変データ関連情報を生成する、ステップと、
を実行させることを特徴とするプログラム。
【請求項１１】
請求項１０に記載のプログラムであって、
（ｅ）分類した前記可変文字データを用いて、新規に作成された入力帳票ファイルから可変文字データを抽出する、ステップと、
を実行させることを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムであって、
（ｆ）新規の入力帳票ファイルから抽出した前記可変文字データを用いて、前記可変データ関連情報を参照し、前記マスタ帳票ファイルから当該可変文字データを出力する出力領域を検出し、当該出力領域に当該可変文字データを関連付けて、新規に出力帳票ファイルを生成する、ステップと
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票を処理する帳票処理装置、帳票生成方法、及びプログラムに関する。
【背景技術】
【０００２】
例えば、発行された請求書に基づいて支払依頼書を作成する場合、帳票（電子文書）の作成、データ入力などの作業が発生する。そこで、従来においては、このような作業の負担を軽減するための方法が提案されている。
【０００３】
特許文献１には、汎用的なデータ形式で表現された帳票ファイルを解析し、異なるデータ形式へ効率よく変換する方法が開示されている。また、特許文献２には、異なる種類の帳票ファイルに含まれるデータを、共通のフォーマットを用いて出力する方法が開示されている。
【０００４】
更に、特許文献３には、複数の帳票を用いて文字列が可変する領域を特定する情報処理装置が開示されている。特許文献３に開示されている情報処理装置によれば、複数の帳票ファイルに共通する領域に異なる文字列が存在する場合、当該文字列を含む領域を可変領域とし、複数の帳票ファイルに共通する領域に同じ文字列が存在する場合、当該文字列を含む領域を固定領域としている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２３７９５２号公報
【特許文献２】特開２０１５−１３０１５９号公報
【特許文献３】特開２０１６−００４３９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１、２に開示されている方法では、あらかじめ手動でマスタ帳票を作成しなければならない。そのため、作業の負担を軽減することはできない。
【０００７】
また、特許文献３に開示されている情報処理装置では、帳票ファイルの共通する領域において、文字列が誤検出された場合、又は文字列データが抽出できない場合、固定領域か可変領域かが判定できない。すなわち、特許文献３に開示されている情報処理装置が、同じ文字列であるにも係らず、異なる文字列であると判定した場合、実際には固定領域であるにも係らず可変領域と判定してしまう。
【０００８】
更に、特許文献３に開示されている情報処理装置では、固定領域の文字列が修正された帳票ファイルが混在した場合、固定領域に異なる文字列があると判定されるため、実際には固定領域であるにも係らず可変領域と判定してしまう。
【０００９】
なお、特許文献１から３に開示されている方法においては、帳票ファイルから罫線を抽出する方法、及びマスタ帳票ファイルを生成する方法について開示されていない。
【００１０】
本発明の目的の一例は、帳票ファイルを効率よく生成する帳票処理装置、帳票処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明の一側面における帳票処理装置は、
データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類し、分類した前記固定文字データと前記罫線データとを用いて、前記入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、第一の生成部
を有することを特徴とする。
【００１２】
また、上記目的を達成するため、本発明の一側面における帳票処理方法は、
（ａ）データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類する、ステップと、
（ｂ）分類した前記固定文字データと前記罫線データとを用いて、前記入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、ステップと、
を有することを特徴とする。
【００１３】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
（ａ）データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類する、ステップと、
（ｂ）分類した前記固定文字データと前記罫線データとを用いて、前記入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１４】
以上のように本発明によれば、帳票を効率よく生成することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、帳票処理装置の一例を示す図である。
【図２】図２は、帳票処理装置を有するシステムの一例を示す図である。
【図３】図３は、第一の生成部の一例を示す図である。
【図４】図４は、入力帳票ファイル及び出力帳票ファイルの一例を示す図である。
【図５】図５は、文字データ、罫線データの抽出領域の一例を示す図である。
【図６】図６は、文字・罫線データのデータ構造の一例を示す図である。
【図７】図７は、比較設定、文字・罫線データ、比較結果の関係を示す図である。
【図８】図８は、可変データ抽出定義ファイルのデータ構造の一例を示す図である。
【図９】図９は、固定の文字・罫線データのデータ構造の一例を示す図である。
【図１０】図１０は、マスタ帳票ファイルの一例を示す図である。
【図１１】図１１は、第二の生成部の一例を示す図である。
【図１２】図１２は、可変文字データのデータ構造の一例を示す図である。
【図１３】図１３は、入力帳票ファイル、出力帳票ファイルから抽出した可変文字データと、データリンク定義とのデータ構造の一例を示す図である。
【図１４】図１４は、比較設定、データリンク定義、比較結果の関係を示す図である。
【図１５】図１５は、出力帳票ファイルの生成を説明するための図である。
【図１６】図１６は、帳票処理装置の動作の一例を示す図である。
【図１７】図１７は、第一の生成部の動作の一例を示す図である。
【図１８】図１８は、第二の生成部の動作の一例を示す図である。
【図１９】図１９は、帳票処理装置を実現するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１６】
（実施の形態）
以下、本発明の実施の形態について、図１から図１９を参照しながら説明する。
【００１７】
［装置構成］
最初に、図１を用いて、本実施の形態における帳票処理装置１００の構成について説明する。図１は、帳票処理装置の一例を示す図である。
【００１８】
図１に示す帳票処理装置１００は、帳票を効率よく生成する装置である。また、図１に示すように、帳票処理装置１００は、第一の生成部２００を有する。
【００１９】
このうち、第一の生成部２００は、データ入力済みの入力帳票ファイルと出力帳票ファイルとで用いられているデータを、可変文字データと、固定文字データと、罫線データとに分類する（分類部２（後述する２１０、２２０に対応））。そして、分類した固定文字データと罫線データとを用いて、入力帳票ファイルに対して用いるデータ未入力の出力帳票ファイルであるマスタ帳票ファイルを生成する（生成部３（後述する２４０に対応））。
【００２０】
ここで、データとは、入力帳票ファイルと出力帳票ファイルとが有する、帳票上の文字、罫線などを表すデータなどである。
【００２１】
可変文字データは、例えば、複数の同じフォーマットの帳票ファイル（入力帳票ファイル、出力帳票ファイル）において、同じ領域に入力された文字が変化したと判断された場合、この領域に入力された文字を表すデータ（例えば、領域、文字列、データ形式、記述形式などのデータ）である。
【００２２】
固定文字データは、例えば、複数の同じフォーマットの帳票ファイルにおいて、同じ領域に入力された文字が固定され変化しないと判断された場合、この領域に入力された文字を表すデータである。
【００２３】
罫線データは、例えば、帳票ファイルで用いる罫線を表すデータ（例えば、領域、太さ（幅）などのデータ）である。
【００２４】
このように、本実施の形態においては、固定文字データと罫線データとを用いて、マスタ帳票ファイルを生成するので、帳票ファイルを効率よく生成することができる。
【００２５】
［システム構成］
続いて、図２を用いて、本実施の形態における帳票処理装置１００の構成をより具体的に説明する。図２は、帳票処理装置を有するシステムの一例を示す図である。
【００２６】
図２に示すように、本実施の形態における帳票処理装置１００は、第一の生成部２００に加えて、第二の生成部３００、第三の生成部４００を有する。
【００２７】
第一の生成部２００は、処理済みの複数の帳票ファイル１０を用いて、可変データ抽出定義ファイル４０及びマスタ帳票ファイル５０を生成する。なお、第一の生成部２００の詳細については後述する。
【００２８】
第二の生成部３００は、帳票ファイル１０を用いて、データリンク定義ファイル６０を生成する。また、第二の生成部３００が有する可変データ抽出部３１０（抽出部）は、入力帳票ファイル２０を用いて、可変データ抽出定義ファイル４０を参照し、可変文字データ７０を抽出する。なお、第二の生成部３００の詳細については後述する。
【００２９】
第三の生成部４００は、データリンク定義ファイル６０を参照して、可変文字データ７０をマスタ帳票ファイル５０にオーバーレイし、出力帳票ファイル３０を生成する。なお、第三の生成部４００の詳細については後述する。
【００３０】
第一の生成部２００について説明する。
図３を用いて、可変データ抽出定義ファイル４０とマスタ帳票ファイル５０との生成方法について説明する。図３は、第一の生成部の一例を示す図である。図３に示すように、第一の生成部２００は、文字・罫線データ抽出部２１０、可変・固定データ分類部２２０、可変データ抽出定義生成部２３０、マスタ帳票生成部２４０を有する。
【００３１】
文字・罫線データ抽出部２１０は、帳票ファイル１０ごとに、帳票ファイル１０に含まれる文字を表す文字データと、罫線を表す罫線データとを抽出する。
【００３２】
（ａ１）具体的には、文字・罫線データ抽出部２１０は、まず、不図示の記憶部に記憶されている複数の帳票ファイル１０を取得する。なお、記憶部は、帳票処理装置１００の内部に設けてもよいし、外部に設けてもよい。
【００３３】
帳票ファイル１０は、処理済みの複数の入力帳票ファイル、又は複数の出力帳票ファイル、又は三つ以上の入力帳票ファイルと出力帳票ファイルとを有している。
【００３４】
ここで、処理済みの帳票ファイルとは、入力帳票ファイル及び出力帳票ファイルに、過去において何らかの処理が行われた、データ入力済みの帳票ファイルである。帳票ファイル１０とは、例えば、ＰＤＦ（Portable Document Format）形式の帳票ファイルなどである。ただし、帳票ファイルはＰＤＦに限定されるのもではない。
【００３５】
図４は、入力帳票ファイル及び出力帳票ファイルの一例を示す図である。図４に示す請求書は、入力帳票ファイルの一例を示している。また、図４に示す支払依頼書は、出力帳票ファイルの一例を示している。なお、支払依頼書とは、入力帳票ファイルに対応する請求書に対して作成された出力帳票ファイルである。
【００３６】
（ａ２）続いて、文字・罫線データ抽出部２１０は、画像処理を用いて、帳票ファイル１０が有する文字データと罫線データとを抽出する。その後、文字・罫線データ抽出部２１０は、帳票ファイル１０ごとに、抽出した文字データと罫線データとを文字・罫線データ８０として、記憶部に記憶する。
【００３７】
なお、画像処理としては、例えば、ＯＣＲ（Optical Character Reader）などの画像処理を用いることが考えられる。ただし、画像処理はＯＣＲに限定されるのもではない。
【００３８】
図５は、文字データ、罫線データの抽出領域の一例を示す図である。図５には、図４に示した支払依頼書の一部が示されている。文字・罫線データ抽出部２１０は、画像処理を用いて、例えば、図５に示すように文字に対応する領域（破線矩形範囲：文字の抽出領域）と、罫線に対応する領域（実線矩形範囲：罫線の抽出領域）を抽出する。
【００３９】
図６は、文字・罫線データのデータ構造の一例を示す図である。文字・罫線データ８０のうち、図６に示す帳票データ８１（８１ａ、８１ｂ、８１ｃ・・・）には、項目「抽出番号」、「始点座標」「終点座標」「文字列」「データ形式」「記述形式」それぞれに、それらの項目に関係する帳票ファイルに文字を表すために用いる文字データ（図６に示す表８１の行のデータ）が関連付けられている。
【００４０】
帳票データ８１の項目「抽出番号」には、抽出した文字の抽出領域のインデックス番号を表すパラメータが関連付けられる。項目「始点座標」「終点座標」には、抽出した文字の抽出領域の始点、終点となる座標を表すデータが関連付けられる。項目「文字列」には、抽出した文字の抽出領域に含まれる文字列を表すデータが関連付けられる。項目「データ形式」には、文字、数値、金額、日付などのデータの種類を表すデータが関連付けられる。項目「記述形式」には、文字列に含まれる文字のフォント、区切り文字、桁数などの文字の記述を表すデータが関連付けられる。
【００４１】
また、文字・罫線データ８０のうち、図６に示す帳票データ８２（８２ａ、８２ｂ、８２ｃ・・・）には、項目「抽出番号」、「始点座標」「終点座標」「幅」それぞれに、それらの項目に関係する帳票に罫線を表すために用いるデータ（図６に示す表８２の行のデータ）が関連付けられている。
【００４２】
帳票データ８２の項目「抽出番号」には、抽出した罫線の抽出領域のインデックス番号を表すデータが関連付けられている。項目「始点座標」「終点座標」には、抽出した罫線の抽出領域の始点、終点となる座標を表すデータが関連付けられている。項目「幅」には、抽出した罫線の抽出領域の幅を表すデータが関連付けられている。
【００４３】
可変・固定データ分類部２２０は、あらかじめ設定された比較設定を参照して、文字・罫線データ８０（帳票データ８１、８２）の抽出領域で扱うデータを、可変文字データ９０と固定文字・罫線データ９１とに分類する。
【００４４】
（ｂ１）具体的には、可変・固定データ分類部２２０は、まず、文字・罫線データ抽出部２１０から、文字・罫線データ８０（文字データ８１、罫線データ８２）を取得する。また、可変・固定データ分類部２２０は、文字データ８１、罫線データ８２それぞれを分類するために用いる比較条件が設定された比較設定も取得する。
【００４５】
比較設定は、例えば、図７に示す比較設定８３、８４のような情報で、あらかじめ記憶部に記憶しておく。比較設定８３、８４は、項目「始点座標」「終点座標」「閾値」「項目」に、それら項目に関連する、抽出領域を比較するために用いる条件を表すデータが関連付けられている。図７は、比較設定、文字・罫線データ、比較結果の関係を示す図である。
【００４６】
比較設定８３の項目「始点座標」「終点座標」には、文字の抽出領域の始点、終点となる座標を表すデータが関連付けられている。項目「閾値」には、データの種類（可変・固定データ）ごとにあらかじめ設定した閾値Ｔｈ１を表すデータが関連付けられている。項目「項目」には、比較対象となる文字データの項目を表すデータが関連付けられている。
【００４７】
また、比較設定８４の項目「始点座標」「終点座標」には、罫線の抽出領域の始点、終点となる座標を表すデータが関連付けられている。項目「閾値」には、データの種類ごとにあらかじめ設定した閾値を表すデータが関連付けられている。項目「項目」には、比較対象となる罫線データの項目を表すデータが関連付けられている。
【００４８】
（ｂ２）続いて、可変・固定データ分類部２２０は、取得した比較設定の抽出領域を選択する。例えば、比較設定８３の先頭行の抽出領域を選択する場合、「始点座標」（１３０，５）と「終点座標」（１４０,１０）とを選択する。
【００４９】
（ｂ３）続いて、可変・固定データ分類部２２０は、選択した比較設定の抽出領域を参照して、選択した比較設定の抽出領域に対応する抽出領域を文字・罫線データ８０から検出する。例えば、選択した抽出領域が比較設定８３の「始点座標」（１３０，５）と「終点
座標」（１４０,１０）である場合、図６の帳票データ８１ａ、８１ｂ、８１ｃ・・・それぞれから、選択した比較設定８３の抽出領域に対応する抽出領域を検出する。
【００５０】
なお、抽出領域の検出では、文字列長、フォントサイズなどの影響により、抽出領域の大きさ、位置に差が生じる。そこで、抽出領域の検出をする場合には、抽出領域の大きさ、位置などが完全に一致したか否かを判定するのではなく、抽出領域が重複するか否かを判定する。例えば、抽出領域の一部又は全部が重複するか否かを判定する。
【００５１】
また、他の抽出領域の検出として、重複する抽出領域の割合を算出し、あらかじめ設定した閾値以上であるか否かを判定してもよい。更に、「始点座標」「終点座標」にあらかじめ設定した補正値を加算して補正後の領域範囲内の場合、同一であると判定してもよい。
【００５２】
（ｂ４）続いて、可変・固定データ分類部２２０は、検出した文字・罫線データ８０それぞれの抽出領域に含まれるデータを取得する。例えば、取得した抽出領域が比較設定８３の「始点座標」（１３０，５）と「終点座標」（１４０,１０）とである場合、選択した比較設定８３の抽出領域（「始点座標」「終点座標」）に関連付けられた「項目」に含まれる「文字列」「データ形式」を参照して、図６の帳票データ８１ａ、８１ｂ、８１ｃそれぞれから、「文字列」に対応するデータ「発行日」と、「データ形式」に対応するデータ「文字列」とを取得する。
【００５３】
（ｂ５）続いて、可変・固定データ分類部２２０は、選択した比較設定の抽出領域に、取得したデータを関連付ける。例えば、図７に示すように、選択した比較設定８３の抽出領域（「始点座標」「終点座標」）に関連付けられた、帳票データ８１ａ、８１ｂ、８１ｃそれぞれに対応する帳票Ａデータ、帳票Ｂデータ、帳票Ｃデータ・・・ごとの項目「文字列」「データ形式」それぞれに、取得したデータ「発行日」「文字列」を関連付ける。
【００５４】
（ｂ６）続いて、可変・固定データ分類部２２０は、抽出領域ごとに、文字データ又は罫線データの一致率Ｃｒ１［％］を算出する。一致率Ｃｒ１は、例えば、数１を用いて算出する。
【００５５】
［数１］
Ｃｒ１＝ｍａｘ（データが一致する帳票ファイル数）／帳票ファイル総数×１００
【００５６】
なお、ｍａｘは、複数の帳票ファイルにおいて、一致するデータ（文字データ又は罫線データ）が複数あった場合、データの一致数が最も大きい帳票ファイルの数を求める関数である。例えば、図７の比較設定８３における一行目の「項目」の場合、「文字列」「データ形式」の二項目を用いて比較する。帳票Ａデータ、帳票Ｂデータ、帳票Ｃデータは、すべて「発行日」「文字列」になっているので、全て一致していると判定する。
【００５７】
次に、図７の表に帳票Ｄデータ、帳票Ｅデータ、帳票Ｆデータが存在した場合、もし、帳票Ｄデータと帳票Ｅデータとの一行目に対応する「文字列」が「発行日付」で、帳票Ｆデータの一行目に対応する「文字列」が「日付」などである場合、帳票Ａデータ、帳票Ｂデータ、帳票Ｃデータと異なる「文字列」であるので、帳票Ａデータ、帳票Ｂデータ、帳票Ｃデータを最多と判定し、データが一致する帳票ファイル数を３とする。つまり、最初に入力した帳票ファイルのデータを基準にデータが一致するか否かを判定するのではなく、多数決方式でデータが一致するか否かを判定する。
【００５８】
また、図７の比較設定８３における二行目の「項目」の場合、「文字列」「データ形式
」「記述形式」の三項目を用いて比較する。その場合、帳票Ａデータが「２０１８年８月２０日」「日付」「半角数字,ＹＹＹＹ年ＭＭ月ＤＤ日」で、帳票Ｂデータが「２０１８／０９／２０」「日付」「半角数字,ＹＹＹＹ／ＭＭ／ＤＤ」で、帳票Ｃデータが「２０１８年１０月２０日」「日付」「全角数字,ＹＹＹＹ年ＭＭ月ＤＤ日」であるので、「日付」の「データ形式」とその「記述形式」の違いを検出して、帳票Ａデータの「文字列」を「２０１８／８／２０」とし、帳票Ｂデータを「２０１９／９／２０」とし、帳票Ｃデータを「２０１８／１０／２０」とする。すなわち、同じ形式の文字列に変換して比較する。その上で文字列が異なるため、全て一致しないと判定する。
【００５９】
選択した抽出領域が比較設定８３の「始点座標」（１３０，５）と「終点座標」（１４０,１０）とである場合、図７では、帳票Ａデータ、帳票Ｂデータ、帳票Ｃデータ・・・すべてにおいて、取得した「発行日」と「文字列」とが一致しているので、一致率Ｃｒ１は１００［％］となる。対して、一致していない場合は、一致率Ｃｒ１は１００［％］より小さくなる。
【００６０】
なお、上述した例においては、「文字列」「データ形式」のデータを比較したが、「記述形式」などを用いてもよい。そうすることで、比較精度がより向上する。また、罫線データの場合、誤差が発生する可能性があるので、「幅」のデータに許容範囲を設けてもよい。
【００６１】
このように、（ｂ１）の処理をした後に、（ｂ２）から（ｂ６）の処理を繰り返して、比較設定８３、８４の抽出領域（「開始座標」「終点座標」のペア）の一部又は全てにおいて一致率Ｃｒ１を算出して、図７に示すように比較結果８５、８６の「一致率」に記憶する。
【００６２】
（ｂ７）続いて、可変・固定データ分類部２２０は、算出した一致率Ｃｒ１を参照して、対応する抽出領域で扱うデータが可変文字データであるか固定文字データであるかを分類する。例えば、可変・固定データ分類部２２０は、比較結果８５、８６から一致率Ｃｒ１を取得して、対応する比較設定８３、８４の「閾値」に設定されている閾値Ｔｈ１を参照して、抽出領域で扱うデータが可変文字データであるか固定文字データであるかを分類する。
【００６３】
すなわち、可変・固定データ分類部２２０は、一致率Ｃｒ１が閾値Ｔｈ１より大きい場合、抽出領域で扱うデータを固定文字データに分類する。また、一致率Ｃｒ１が閾値Ｔｈ１以下の場合、抽出領域で扱うデータを可変文字データに分類する。
【００６４】
図７の例では、比較設定８３の「始点座標」（１３０，５）と「終点座標」（１４０,１０）とで表される抽出領域に対応する、比較設定８３の「閾値」が「９０」で、比較結果８５の「一致率」が「１００」であるので、当該抽出領域は固定文字データを扱う領域に分類される。従って、図７に示すように、比較結果８５の抽出領域に対応する「分類」には「固定」が記憶される。
【００６５】
対して、図７の例においては、「始点座標」（１７０，５）と「終点座標」（１９５,１０）とで表される抽出領域に対応する、比較設定８３の「閾値」は「１００」で、比較結果８５の「一致率」は「１０」であるので、当該抽出領域は可変文字データを扱う領域に分類される。従って、図７に示すように、比較結果８５の当該抽出領域に対応する「分類」には「可変」が記憶される。
【００６６】
なお、閾値Ｔｈ１は、実験、シミュレーションなどにより決定する。なお、数値、金額、日付などのデータは、可変である可能性が高いため、閾値Ｔｈ１を高く設定することが
望ましい。
【００６７】
また、閾値Ｔｈ１を１００と設定するとことにより、対象の抽出領域で扱うデータを「可変」と分類してもよい。
【００６８】
また、可変文字データと固定文字データとを分類するのは難しため、帳票総数に合わせて閾値を設定することが望ましい。帳票ファイルの総数が多い場合、閾値を高くすることにより、データの分類精度を向上させることができる。
【００６９】
また、閾値Ｔｈ１の最小値は「５１」とすることが望ましい。その理由は、一致率Ｃｒ１が５０である場合、対象の抽出領域を、可変文字データを扱う領域に分類する必要があるためである。
【００７０】
このように、（ｂ６）の処理をした後に、（ｂ７）の処理を繰り返して、比較設定８３、８４の抽出領域（「開始座標」「終点座標」のペア）の一部又は全てにおいて閾値Ｔｈ１と一致率Ｃｒ１とを比較して、比較結果８５、８６の「分類」に分類した結果（「可変」又は「固定」）を記憶する。
【００７１】
なお、図７において、「可変」に分類された文字データを可変文字データ９０とし、「固定」に分類された文字データ及び罫線データを固定文字・罫線データ９１とする。
【００７２】
可変データ抽出定義生成部２３０は、可変文字データ９０を参照して、可変データ抽出定義ファイル４０を生成する。例えば、可変データ抽出定義生成部２３０は、可変文字データ９０の項目「始点座標」「終点座標」「データ形式」それぞれのデータに、項目「定義番号」のインデックス番号を表すデータを関連付けて、図８に示すような可変データ抽出定義ファイル４０を生成する。図８は、可変データ抽出定義ファイルのデータ構造の一例を示す図である。
【００７３】
マスタ帳票生成部２４０は、固定文字・罫線データ９１を参照して、マスタ帳票ファイル５０を生成する。
【００７４】
例えば、マスタ帳票生成部２４０は、固定文字・罫線データ９１（図９に示す固定の文字データ、固定の罫線データ）における、固定文字データの項目「始点座標」「終点座標」「文字列」「記述形式」に関連付けられたデータと、罫線データの項目「始点座標」「終点座標」「幅」に関連付けられたデータとを参照して、新規ファイル（無地の帳票ファイル）に固定文字と罫線とを出力するために用いる固定文字データと罫線データとを取得する。図９は、固定文字・罫線データのデータ構造の一例を示す図である。
【００７５】
そして、マスタ帳票生成部２４０は、取得した固定文字データと罫線データとを用いて、図１０に示すようなマスタ帳票ファイル５０を生成する。図１０は、マスタ帳票ファイルの一例を示す図である。
【００７６】
第二の生成部３００について説明する。
図２、図１１を用いて、データリンク定義ファイル６０（可変データ関連情報）と可変文字データ７０との生成方法について説明する。図１１は、第二の生成部の一例を示す図である。図１１に示すように、第二の生成部３００は、可変データ抽出部３１０、データリンク定義生成部３２０、データリンク定義分類部３３０を有する。
【００７７】
第二の生成部３００は、分類した可変文字データのうち文字列を表すデータを用いて、入力帳票ファイル１１と、入力帳票ファイル１１に対して用いられる出力帳票ファイル１
２とにおいて共通で用いられる可変文字データを抽出する（可変データ抽出部３１０）。
【００７８】
そして、第二の生成部３００は、入力帳票ファイル１１から抽出した可変文字データと、出力帳票ファイル１２から抽出した可変文字データとを関連付けて、データリンク定義ファイル６０を生成する（データリンク定義生成部３２０、データリンク定義分類部３３０）。
【００７９】
可変データ抽出部３１０は、帳票ファイル１０（図１１に示す入力帳票ファイル１１、出力帳票ファイル１２）に対して、第一の生成部２００で生成した可変データ抽出定義ファイル４０（図１１に示す入力帳票可変データ抽出定義ファイル４１、出力帳票可変データ抽出定義ファイル４２）を参照して、入力帳票文字データ７１、出力帳票文字データ７２を生成する。
【００８０】
また、可変データ抽出部３１０（抽出部）は、入力帳票ファイル２０に対して、第一の生成部２００で生成した可変データ抽出定義ファイル４０を参照して、可変文字データ７０を生成する。
【００８１】
データリンク定義ファイル６０を生成する場合について具体的に説明する。
可変データ抽出部３１０は、入力帳票ファイル１１（例えば、図４に示す請求書）に対して、入力帳票ファイル１１に対応する、第一の生成部２００で生成した入力帳票可変データ抽出定義ファイル４１を参照して、入力帳票文字データ７１を生成する。
【００８２】
また、可変データ抽出部３１０は、出力帳票ファイル１２（例えば、図４に示す支払依頼書）に対しても、第一の生成部２００で生成した出力帳票ファイル１２に対応する出力帳票可変データ抽出定義ファイル４２を参照して、出力帳票文字データ７２を生成する。例えば、図４に示す支払依頼書の場合であれば、図１２に示すように可変文字データを抽出する。図１２は、可変文字データのデータ構造の一例を示す図である。
【００８３】
可変文字データ７０を生成する場合について具体的に説明する。
可変データ抽出部３１０（抽出部）は、分類した可変文字データを用いて、新規の入力帳票ファイルから可変文字データを抽出する。例えば、可変データ抽出部３１０は、新規に作成された入力帳票ファイル２０に対して、第一の生成部２００で生成した入力帳票ファイル２０に対応する可変データ抽出定義ファイル４０を参照して、可変文字データを抽出して、可変文字データ７０を生成する。
【００８４】
なお、可変文字データ７０を生成する抽出部は、可変データ抽出部３１０と別に設けてもよい。
【００８５】
データリンク定義生成部３２０は、入力帳票文字データ７１と出力帳票文字データ７２とを用いて、データリンク定義６１を生成する。例えば、データリンク定義生成部３２０は、図１３に示すように、入力帳票文字データ７１の項目「文字列」に関連付けられたデータと、出力帳票文字データ７２の項目「文字列」に関連付けられたデータとを比較して、一致するデータを検出する。図１３は、入力帳票ファイル、出力帳票ファイルから抽出した可変文字データと、データリンク定義とのデータ構造の一例を示す図である。
【００８６】
なお、検出の際に、更に項目「記述形式」に関連付けられたデータを比較対象としてもよい。なお、「記述形式」に関連付けられたデータの表す内容が一致又は同じと判定できる場合には一致とする。
【００８７】
その後、データリンク定義生成部３２０は、一致した可変文字データを検出した場合、
図１３に示すように、一致した「文字列」「データ形式」のデータに関連する、入力帳票文字データ７１の抽出領域（「始点座標」「終点座標」）と、出力帳票文字データ７２の抽出領域（「始点座標」「終点座標」）とを取得する。
【００８８】
そして、データリンク定義生成部３２０は、図１３のデータリンク定義に示すように、入力帳票文字データ７１の抽出領域（「始点座標」「終点座標」のデータ）と、出力帳票文字データ７２の抽出領域（「始点座標」「終点座標」のデータ）と、一致した「データ形式」「記述形式」それぞれのデータと、更にインデックス番号を示す「定義番号」とを関連付けて、データリンク定義６１を生成する。
【００８９】
なお、データリンク定義６１は、入力帳票ファイルと、入力帳票ファイルに対応する出力帳票ファイルとの組み合わせに応じた数だけ生成される。
【００９０】
データリンク定義分類部３３０は、生成したデータリンク定義６１を固定と可変とに分類する。データリンク定義分類部３３０は、生成したデータリンク定義６１の数が一つの場合、データリンク定義６１を固定と分類し、データリンク定義ファイル６０とする。
【００９１】
また、データリンク定義分類部３３０は、データリンク定義６１の数が複数ある場合、あらかじめ設定された比較設定を参照して、生成したデータリンク定義６１それぞれの定義を、固定と可変とに分類する。
【００９２】
（ｃ１）具体的には、データリンク定義分類部３３０は、まず、データリンク定義生成部３２０から、データリンク定義６１を取得する。また、データリンク定義分類部３３０は、データリンク定義６１の定義それぞれを分類するために用いる比較条件が設定された比較設定も取得する。
【００９３】
定義の比較設定は、例えば、図１４に示す比較設定６２のような情報で、あらかじめ記憶部に記憶しておく。比較設定６２は、項目「定義番号」「閾値」に、それら項目に関連する、定義を比較するために用いる条件を表すデータが関連付けられている。図１４は、比較設定、データリンク定義、比較結果の関係を示す図である。
【００９４】
比較設定６２の項目「定義番号」には、インデックス番号を表すデータが関連付けられている。項目「閾値」には、閾値Ｔｈ２を表すデータが関連付けられている。なお、閾値Ｔｈ２は、実験、シミュレーションなどにより決定する。
【００９５】
（ｃ２）続いて、データリンク定義分類部３３０は、取得した比較設定の定義番号を選択する。例えば、比較設定６２の先頭行の定義番号を選択する場合、「定義番号」に対応する「１」を選択する。
【００９６】
（ｃ３）続いて、データリンク定義分類部３３０は、データリンク定義６１それぞれの「定義番号」が一致する各定義に対して、数２を用いて定義の一致率Ｃｒ２を算出する。
【００９７】
［数２］
Ｃｒ２＝定義が一致するデータリンク定義数／データリンク定義の総数×１００
【００９８】
選択した比較設定６２の「定義番号」が「１」である場合、図１４では、データリンク定義Ａ、データリンク定義Ｂ、データリンク定義Ｃ・・・すべてにおいて、定義番号「１」に対応する定義があるので、一致率Ｃｒ２は１００［％］となる。対して、定義番号に対応する定義がデータリンク定義Ａ、Ｂ、Ｃ・・・のいずれかにない場合、一致率Ｃｒ２
は１００［％］より小さくなる。
【００９９】
このように、（ｃ１）から（ｃ３）の処理を繰り返して、比較設定６２の定義番号の一部又は全てにおいて一致率Ｃｒ２を算出して、図１４に示すように比較結果６３の「一致率」に記憶する。
【０１００】
（ｃ４）続いて、データリンク定義分類部３３０は、算出した一致率Ｃｒ２を参照して、定義を固定か可変かに分類する。例えば、データリンク定義分類部３３０は、比較結果６３から一致率Ｃｒ２を取得して、対応する比較設定６２の「閾値」に設定されている閾値Ｔｈ２を参照して、定義を固定か可変かに分類する。
【０１０１】
すなわち、データリンク定義分類部３３０は、一致率Ｃｒ２が閾値Ｔｈ２より大きい場合、定義を固定に分類する。また、一致率Ｃｒ２が閾値Ｔｈ２以下の場合、定義を可変に分類する。
【０１０２】
図１４の例では、比較設定６２の定義番号「１」に対応する、比較設定６２の「閾値」が「８０」で、比較結果６３の「一致率」が「１００」であるので、当該定義番号に対応する定義は固定に分類される。従って、図１４に示すように、比較結果６３の抽出領域に対応する「分類」には「固定」が記憶される。
【０１０３】
対して、図１４の例においては、比較設定６２の定義番号「３」に対応する、比較設定６２の「閾値」が「８０」で、比較結果６３の「一致率」が「０」であるので、当該定義番号に対応する定義は固定に分類される。従って、図１４に示すように、比較結果６３の抽出領域に対応する「分類」には「可変」が記憶される。
【０１０４】
なお、閾値Ｔｈ２は、帳票ファイルの総数に合わせて閾値を設定することが望ましく、帳票総数が比較的に多い場合は閾値を高くすることにより定義の分類の精度を向上させることができる。
【０１０５】
このように、（ｃ３）の処理をした後に、（ｃ４）の処理を繰り返して、比較設定６２の定義番号の一部又は全てにおいて閾値Ｔｈ２と一致率Ｃｒ２とを比較して、比較結果６３の「分類」に分類した結果（「可変」又は「固定」）を記憶する。
【０１０６】
そして、データリンク定義分類部３３０は、「固定」に分類された定義をデータリンク定義ファイル６０として、記憶部に記憶する。
【０１０７】
第三の生成部４００は、データリンク定義ファイル６０（可変データ関連情報）を参照して、可変文字データ７０をマスタ帳票ファイル５０にオーバーレイ出力し、出力帳票ファイル３０を生成する。
【０１０８】
例えば、第三の生成部４００は、新規の入力帳票ファイルから抽出した可変文字データ（可変文字データ７０）を用いて、データリンク定義ファイル６０（可変データ関連情報）を参照し、マスタ帳票ファイル５０から当該可変文字データを出力する出力領域を検出する。そして、第三の生成部４００は、検出した出力領域に当該可変文字データを関連付けて、新規に出力帳票ファイル３０を生成する。
【０１０９】
図１５の例では、入力帳票ファイル２０から抽出した可変文字データ７０の可変文字データ（抽出領域（「始点座標」（５０，７０）、「終点座標」（７０，８０））、文字列「２１６，０００」）を用いて、データリンク定義ファイル６０を参照して、マスタ帳票ファイル５０の出力領域（「始点座標」（１１０，１００）、「終点座標」（１２５，１
０５））を検出する。そして、第三の生成部４００は、検出した出力領域に文字列「２１６，０００」）をオーバーレイする。図１５は、出力帳票ファイルの生成を説明するための図である。
【０１１０】
［変形例］
入力帳票ファイルから抽出した可変文字データが、出力帳票ファイルに存在しないことがある。例えば、文書番号に対応する文字データと別に管理されている番号、発行者の所属、ＴＥＬ、名前に対応するデータが該当する。
【０１１１】
そこで、文書番号に対応する文字データと別に管理されている番号については、あらかじめマスタデータとして記憶部に記憶しておいてもよい。具体的には、マスタデータを、データリンク定義ファイル６０と、文字・罫線データ８０とへ追加する機能を、帳票処理装置１００に設ける。
【０１１２】
また、所属、ＴＥＬ（電話番号）、名前などのデータについては、データの変更の頻度が低いので、当該データが一致する複数の帳票ファイル１０を準備して、第一の生成部２００を用いて、固定データとしてマスタ帳票ファイル５０に出力させる。
【０１１３】
［装置動作］
次に、本発明の実施の形態における帳票処理装置の動作について図１６、図１７、図１８を用いて説明する。図１６は、帳票処理装置の動作の一例を示す図である。図１７は、第一の生成部の動作の一例を示す図である。図１８は、第二の生成部の動作の一例を示す図である。以下の説明においては、適宜図２から図１５を参照する。また、本実施の形態では、帳票処理装置を動作させることによって、帳票処理法が実施される。よって、本実施の形態における帳票処理方法の説明は、以下の帳票処理装置の動作説明に代える。
【０１１４】
図１６を用いて帳票処理装置１の全体の動作について説明する。
最初に、帳票準備フィーズにおいて、帳票処理装置１の第一の生成部２００は、可変データ抽出定義ファイルを生成する（ステップＡ１）。また、第一の生成部２００は、マスタ帳票ファイルを生成する（ステップＡ２）。
【０１１５】
具体的には、ステップＡ１、Ａ２において、第一の生成部２００は、処理済みの複数の帳票ファイル１０を用いて、可変データ抽出定義ファイル４０及びマスタ帳票ファイル５０を生成する。なお、ステップＡ１とステップＡ２の順番は逆でもよい。なお、ステップＡ１、Ａ２の詳細については図１７を用いて後述する。
【０１１６】
次に、帳票処理装置１の第二の生成部３００は、データリンク定義ファイル（可変データ関連情報）を生成する（ステップＡ３）。具体的には、ステップＡ３において、第二の生成部３００は、帳票ファイル１０を用いて、データリンク定義ファイル６０を生成する。なお、ステップＡ３の詳細については図１８を用いて後述する。
【０１１７】
次に、帳票生成フェーズにおいて、第二の生成部３００は、可変文字データを抽出する（ステップＡ４）。具体的には、ステップＡ４において、第二の生成部３００が有する可変データ抽出部３１０（抽出部）は、入力帳票ファイル２０を用いて、可変データ抽出定義ファイル４０を参照し、可変文字データ７０を抽出する。なお、ステップＡ４の詳細については後述する。
【０１１８】
次に、帳票生成フェーズにおいて、第三の生成部４００は、出力帳票ファイルを生成する（ステップＡ５）。第三の生成部４００は、具体的には、ステップＡ５において、データリンク定義ファイル６０を参照して、可変文字データ７０をマスタ帳票ファイル５０に
オーバーレイし、出力帳票ファイル３０を生成する。なお、ステップＡ５の詳細については後述する。
【０１１９】
ステップＡ１、Ａ２の処理について図１７を用いて説明する。
ステップＢ１において、文字・罫線データ抽出部２１０は、帳票ファイル１０ごとに、帳票ファイル１０に含まれる文字を表す文字データと、罫線を表す罫線データとを抽出する。
【０１２０】
（ａ１）具体的には、ステップＢ１において、文字・罫線データ抽出部２１０は、まず、不図示の記憶部に記憶されている複数の帳票ファイル１０を取得する。
【０１２１】
（ａ２）続いて、ステップＢ１において、文字・罫線データ抽出部２１０は、画像処理を用いて、帳票ファイル１０が有する文字データと罫線データとを抽出する。その後、文字・罫線データ抽出部２１０は、帳票ファイル１０ごとに、抽出した文字データと罫線データとを文字・罫線データ８０として、記憶部に記憶する。
【０１２２】
ステップＢ２において、可変・固定データ分類部２２０は、あらかじめ設定された比較設定を参照して、文字・罫線データ８０（帳票データ８１、８２）の抽出領域で扱うデータを、可変文字データ９０と固定文字・罫線データ９１とに分類する。
【０１２３】
（ｂ１）具体的には、ステップＢ２−１において、可変・固定データ分類部２２０は、まず、文字・罫線データ抽出部２１０から、文字・罫線データ８０（文字データ８１、罫線データ８２）を取得する。また、ステップＢ２−１において、可変・固定データ分類部２２０は、文字データ８１、罫線データ８２それぞれを分類するために用いる比較条件が設定された比較設定も取得する。
【０１２４】
（ｂ２）続いて、ステップＢ２−２において、可変・固定データ分類部２２０は、取得した比較設定の抽出領域を選択する。例えば、図７の比較設定８３の先頭行の抽出領域を選択する場合、「始点座標」（１３０，５）と「終点座標」（１４０,１０）とを選択する。
【０１２５】
（ｂ３）続いて、ステップＢ２−３において、可変・固定データ分類部２２０は、選択した比較設定の抽出領域を参照して、選択した比較設定の抽出領域に対応する抽出領域を、文字・罫線データ８０から検出する。例えば、図７の選択した抽出領域が比較設定８３の「始点座標」（１３０，５）と「終点座標」（１４０,１０）である場合、図６の帳票データ８１ａ、８１ｂ、８１ｃ・・・それぞれから、選択した比較設定８３の抽出領域に対応する抽出領域を検出する。
【０１２６】
（ｂ４）続いて、ステップＢ２−４において、可変・固定データ分類部２２０は、検出した文字・罫線データ８０それぞれの抽出領域に含まれるデータを取得する。例えば、取得した抽出領域が比較設定８３の「始点座標」（１３０，５）と「終点座標」（１４０,１０）とである場合、選択した比較設定８３の抽出領域（「始点座標」「終点座標」）に関連付けられた「項目」に含まれる「文字列」「データ形式」を参照して、図６の帳票データ８１ａ、８１ｂ、８１ｃそれぞれから、「文字列」に対応するデータ「発行日」と、「データ形式」に対応するデータ「文字列」とを取得する。
【０１２７】
（ｂ５）続いて、ステップＢ２−５において、可変・固定データ分類部２２０は、選択した比較設定の抽出領域に、取得したデータを関連付ける。例えば、図７に示すように、選択した比較設定８３の抽出領域（「始点座標」「終点座標」）に関連付けられた、帳票データ８１ａ、８１ｂ、８１ｃそれぞれに対応する帳票Ａデータ、帳票Ｂデータ、帳票Ｃデ
ータ・・・ごとの項目「文字列」「データ形式」それぞれに、取得したデータ「発行日」「文字列」を関連付ける。
【０１２８】
（ｂ６）続いて、ステップＢ２−６において、可変・固定データ分類部２２０は、抽出領域ごとに、文字データ又は罫線データの一致率Ｃｒ１［％］を算出する。一致率Ｃｒ１は、例えば、数１を用いて算出する。
【０１２９】
選択した抽出領域が比較設定８３の「始点座標」（１３０，５）と「終点座標」（１４０,１０）とである場合、図７では、帳票Ａデータ、帳票Ｂデータ、帳票Ｃデータ・・・すべてにおいて、取得した「発行日」と「文字列」とが一致しているので、一致率Ｃｒ１は１００［％］となる。対して、一致していない場合は、一致率Ｃｒ１は１００［％］より小さくなる。
【０１３０】
このように、ステップＢ２−１（ｂ１）の処理をした後に、ステップＢ２−２（ｂ２）からステップＢ２−６（ｂ６）の処理を繰り返して、比較設定８３、８４の抽出領域（「開始座標」「終点座標」のペア）の一部又は全てにおいて一致率Ｃｒ１を算出して、図７に示すように比較結果８５、８６の「一致率」に記憶する。
【０１３１】
（ｂ７）続いて、ステップＢ２−７において、可変・固定データ分類部２２０は、算出した一致率Ｃｒ１を参照して、対応する抽出領域で扱うデータが可変文字データであるか固定文字データであるかを分類する。
【０１３２】
すなわち、可変・固定データ分類部２２０は、一致率Ｃｒ１が閾値Ｔｈ１より大きい場合（ステップＢ２−７：Ｙｅｓ）、ステップＢ２−８において、抽出領域で扱うデータを固定文字データに分類する。また、一致率Ｃｒ１が閾値Ｔｈ１以下の場合、ステップＢ２−９において、抽出領域で扱うデータを可変文字データに分類する。
【０１３３】
その後、可変・固定データ分類部２２０は、ステップＢ２−１０において、分類が終了した場合（ステップＢ２−１０：Ｙｅｓ）、ステップＢ３の処理を実行する。分類が終了していない場合（ステップＢ２−１０：Ｎｏ）、可変・固定データ分類部２２０は、ステップＢ２−７の処理を実行する。
【０１３４】
このように、ステップＢ２−６（ｂ６）の処理をした後に、ステップＢ２−７からＢ２−１０（ｂ７）の処理を繰り返して、比較設定８３、８４の抽出領域（「開始座標」「終点座標」のペア）の一部又は全てにおいて閾値Ｔｈ１と一致率Ｃｒ１とを比較して、比較結果８５、８６の「分類」に分類した結果（「可変」又は「固定」）を記憶する。
【０１３５】
なお、図７において、「可変」に分類された文字データを可変文字データ９０とし、「固定」に分類された文字データ及び罫線データを固定文字・罫線データ９１とする。
【０１３６】
続いて、ステップＢ３において、可変データ抽出定義生成部２３０は、可変文字データ９０を参照して、可変データ抽出定義ファイル４０を生成する。例えば、可変データ抽出定義生成部２３０は、可変文字データ９０の項目「始点座標」「終点座標」「データ形式」それぞれのデータに、項目「定義番号」のインデックス番号を表すデータを関連付けて、図８に示すような可変データ抽出定義ファイル４０を生成する。
【０１３７】
続いて、ステップＢ４において、マスタ帳票生成部２４０は、固定文字・罫線データ９１を参照して、マスタ帳票ファイル５０を生成する。
【０１３８】
例えば、マスタ帳票生成部２４０は、固定文字・罫線データ９１（図９に示す固定の文
字データ、固定の罫線データ）における、固定文字データの項目「始点座標」「終点座標」「文字列」「記述形式」に関連付けられたデータと、罫線データの項目「始点座標」「終点座標」「幅」に関連付けられたデータとを参照して、新規ファイル（無地の帳票ファイル）に固定文字と罫線とを出力するために用いる固定文字データと罫線データとを取得する。
【０１３９】
そして、マスタ帳票生成部２４０は、取得した固定文字データと罫線データとを用いて、図１０に示すようなマスタ帳票ファイル５０を生成する。
【０１４０】
ステップＡ３の処理について図１８を用いて説明する。
ステップＣ１において、可変データ抽出部３１０は、帳票ファイル１０（図１１に示す入力帳票ファイル１１、出力帳票ファイル１２）に対して、第一の生成部２００で生成した可変データ抽出定義ファイル４０（図１１に示す入力帳票可変データ抽出定義ファイル４１、出力帳票可変データ抽出定義ファイル４２）を参照して、入力帳票文字データ７１、出力帳票文字データ７２を生成する。
【０１４１】
ステップＣ２において、データリンク定義生成部３２０は、入力帳票文字データ７１と出力帳票文字データ７２とを用いて、データリンク定義６１を生成する。例えば、データリンク定義生成部３２０は、図１３に示すように、入力帳票文字データ７１の項目「文字列」に関連付けられたデータと、出力帳票文字データ７２の項目「文字列」に関連付けられたデータとを比較して、一致するデータを検出する。
【０１４２】
ステップＣ３において、データリンク定義生成部３２０は、入力帳票ファイルと、入力帳票ファイルに対応する出力帳票ファイルとの組み合わせに応じた数のデータリンク定義を生成した場合（ステップＣ３：Ｙｅｓ）、ステップＣ４の処理を実行し、そうでない場合（ステップＣ３：Ｎｏ）、データリンク定義生成部３２０は、ステップＣ２の処理を実行する。
【０１４３】
ステップＣ４において、データリンク定義分類部３３０は、生成したデータリンク定義６１を固定と可変とに分類する。データリンク定義分類部３３０は、生成したデータリンク定義６１の数が一つの場合、データリンク定義６１を固定と分類し、データリンク定義ファイル６０とする。
【０１４４】
また、ステップＣ４において、データリンク定義分類部３３０は、データリンク定義６１の数が複数ある場合、あらかじめ設定された比較設定を参照して、生成したデータリンク定義６１それぞれの定義を、固定と可変とに分類する。
【０１４５】
（ｃ１）具体的には、ステップＣ４−１において、データリンク定義分類部３３０は、まず、データリンク定義生成部３２０から、データリンク定義６１を取得する。また、データリンク定義分類部３３０は、データリンク定義６１の定義それぞれを分類するために用いる比較条件が設定された比較設定も取得する。
【０１４６】
（ｃ２）続いて、ステップＣ４−２において、データリンク定義分類部３３０は、取得した比較設定の定義番号を選択する。例えば、比較設定６２の先頭行の定義番号を選択する場合、「定義番号」に対応する「１」を選択する。
【０１４７】
（ｃ３）続いて、ステップＣ４−３において、データリンク定義分類部３３０は、データリンク定義６１それぞれの「定義番号」が一致する各定義に対して、数２を用いて定義の一致率Ｃｒ２を算出する。
【０１４８】
選択した比較設定６２の「定義番号」が「１」である場合、図１４では、データリンク定義Ａ、データリンク定義Ｂ、データリンク定義Ｃ・・・すべてにおいて、定義番号「１」に対応する定義があるので、一致率Ｃｒ２は１００［％］となる。対して、定義番号に対応する定義がデータリンク定義Ａ、Ｂ、Ｃ・・・のいずれかにない場合、一致率Ｃｒ２は１００［％］より小さくなる。
【０１４９】
このように、ステップＣ４−１（ｃ１）からステップＣ４−３（ｃ３）の処理を繰り返して、比較設定６２の定義番号の一部又は全てにおいて一致率Ｃｒ２を算出して、図１４に示すように比較結果６３の「一致率」に記憶する。
【０１５０】
（ｃ４）続いて、ステップＣ４−４において、データリンク定義分類部３３０は、算出した一致率Ｃｒ２を参照して、定義を固定か可変かに分類する。例えば、データリンク定義分類部３３０は、比較結果６３から一致率Ｃｒ２を取得して、対応する比較設定６２の「閾値」に設定されている閾値Ｔｈ２を参照して、定義を固定か可変かに分類する。
【０１５１】
すなわち、データリンク定義分類部３３０は、一致率Ｃｒ２が閾値Ｔｈ２より大きい場合（ステップＣ４−４：Ｙｅｓ）、ステップＣ４−５において、定義を固定に分類する。また、一致率Ｃｒ２が閾値Ｔｈ２以下の場合（ステップＣ４−４：Ｎｏ）、ステップＣ４−６において、定義を可変に分類する。
【０１５２】
図１４の例では、比較設定６２の定義番号「１」に対応する、比較設定６２の「閾値」が「８０」で、比較結果６３の「一致率」が「１００」であるので、当該定義番号に対応する定義は固定に分類される。従って、図１４に示すように、比較結果６３の抽出領域に対応する「分類」には「固定」が記憶される。
【０１５３】
対して、図１４の例においては、比較設定６２の定義番号「３」に対応する、比較設定６２の「閾値」が「８０」で、比較結果６３の「一致率」が「０」であるので、当該定義番号に対応する定義は固定に分類される。従って、図１４に示すように、比較結果６３の抽出領域に対応する「分類」には「可変」が記憶される。
【０１５４】
このように、ステップＣ４−７（ｃ４）の処理をした後に、ステップＣ４−（ｃ４）の処理を繰り返して、比較設定６２の定義番号の一部又は全てにおいて閾値Ｔｈ２と一致率Ｃｒ２とを比較して、比較結果６３の「分類」に分類した結果（「可変」又は「固定」）を記憶する。
【０１５５】
続いて、ステップＣ５において、データリンク定義分類部３３０は、「固定」に分類された定義をデータリンク定義ファイル６０として、記憶部に記憶する。
【０１５６】
ステップＡ４、Ａ５について説明する。
ステップＡ４において、可変データ抽出部３１０（抽出部）は、入力帳票ファイル２０に対して、第一の生成部２００で生成した可変データ抽出定義ファイル４０を参照して、可変文字データ７０を生成する。
【０１５７】
例えば、ステップＡ４において、可変データ抽出部３１０は、新規に作成された入力帳票ファイル２０に対して、第一の生成部２００で生成した入力帳票ファイル２０に対応する可変データ抽出定義ファイル４０を参照して、可変文字データを抽出して、可変文字データ７０を生成する。
【０１５８】
なお、可変文字データ７０を生成する抽出部は、可変データ抽出部３１０と別に設けてもよい。
【０１５９】
ステップＡ５において、第三の生成部４００は、データリンク定義ファイル６０（可変データ関連情報）を参照して、可変文字データ７０をマスタ帳票ファイル５０にオーバーレイ出力し、出力帳票ファイル３０を生成する。
【０１６０】
例えば、ステップＡ５において、第三の生成部４００は、新規の入力帳票ファイルから抽出した可変文字データ（可変文字データ７０）を用いて、データリンク定義ファイル６０（可変データ関連情報）を参照し、マスタ帳票ファイル５０から当該可変文字データを出力する出力領域を検出する。そして、第三の生成部４００は、検出した出力領域に当該可変文字データを関連付けて、新規に出力帳票ファイル３０を生成する。
【０１６１】
図１５の例では、入力帳票ファイル２０から抽出した可変文字データ７０の可変文字データ（抽出領域（「始点座標」（５０，７０）、「終点座標」（７０，８０））、文字列「２１６，０００」）を用いて、データリンク定義ファイル６０を参照して、マスタ帳票ファイル５０の出力領域（「始点座標」（１１０，１００）、「終点座標」（１２５，１０５））を検出する。そして、第三の生成部４００は、検出した出力領域に文字列「２１６，０００」）をオーバーレイする。
【０１６２】
［変形例］
入力帳票ファイルから抽出した可変文字データが、出力帳票ファイルに存在しないことがある。例えば、文書番号に対応する文字データと別に管理されている番号、発行者の所属、ＴＥＬ、名前に対応するデータが該当する。
【０１６３】
そこで、文書番号に対応する文字データと別に管理されている番号については、あらかじめマスタデータとして記憶部に記憶しておいてもよい。具体的には、マスタデータを、データリンク定義ファイル６０と、文字・罫線データ８０とへ追加するステップを追加する。
【０１６４】
また、所属、ＴＥＬ（電話番号）、名前などのデータについては、データの変更の頻度が低いので、当該データが一致する複数の帳票ファイル１０を準備して、第一の生成部２００を用いて、固定データとしてマスタ帳票ファイル５０に出力させる。
【０１６５】
［本実施の形態の効果］
以上のように本実施の形態によれば、固定文字データと罫線データとを用いて、マスタ帳票ファイル（テンプレート）を生成するので、帳票ファイルを効率よく生成することができる。
【０１６６】
また、過去の処理済の複数帳票ファイルから可変データ抽出定義及びデータリンク定義を自動生成するため、専用のアプリケーションによる帳票作成、更には設計の作業が不要となる。
【０１６７】
［プログラム］
本発明の実施の形態におけるプログラムは、コンピュータに、図１６に示すステップＡ１からＡ５、図１６に示すステップＢ１からＢ４、図１７に示すステップＣ１からＣ５を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における帳票処理装置と帳票処理方法とを実現することができる。この場合、コンピュータのプロセッサは、第一の生成部２００（文字・罫線データ抽出部２１０、可変・固定データ分類部２２０、可変データ抽出定義生成部２３０、マスタ帳票生成部２４０）、第二の生成部３００（可変データ抽出部３１０、データリンク定義生成部３２０、データリンク定義分類部３３０）、第三の生成部４００として
機能し、処理を行なう。
【０１６８】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、第一の生成部２００（文字・罫線データ抽出部２１０、可変・固定データ分類部２２０、可変データ抽出定義生成部２３０、マスタ帳票生成部２４０）、第二の生成部３００（可変データ抽出部３１０、データリンク定義生成部３２０、データリンク定義分類部３３０）、第三の生成部４００のいずれかとして機能してもよい。
【０１６９】
［物理構成］
ここで、実施の形態におけるプログラムを実行することによって、帳票処理装置を実現するコンピュータについて図１９を用いて説明する。図１９は、本発明の実施の形態における帳票処理装置を実現するコンピュータの一例を示すブロック図である。
【０１７０】
図１９に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。なお、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、又はＦＰＧＡ（Field-Programmable Gate Array）を備えていてもよい。
【０１７１】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）などの揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであってもよい。
【０１７２】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリなどの半導体記憶装置があげられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【０１７３】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【０１７４】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）などの汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）などの磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体があげられる。
【産業上の利用可能性】
【０１７５】
以上のように本発明によれば、帳票を効率よく生成することができる。本発明は、入力帳票ファイルに対応する出力帳票ファイルを生成する処理が必要な分野において有用である。
【符号の説明】
【０１７６】
１００  帳票処理装置
２００  第一の生成部
２１０  文字・罫線データ抽出部
２２０  可変・固定データ分類部
２３０  可変データ抽出定義生成部
２４０  マスタ帳票生成部
３００  第二の生成部
３１０  可変データ抽出部
３２０  データリンク定義生成部
３３０  データリンク定義分類部
４００  第三の生成部
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2020144653.tif 000003
【図２】
2020144653.tif 000004
【図３】
2020144653.tif 000005
【図４】
2020144653.tif 000006
【図５】
2020144653.tif 000007
【図６】
2020144653.tif 000008
【図７】
2020144653.tif 000009
【図８】
2020144653.tif 000010
【図９】
2020144653.tif 000011
【図１０】
2020144653.tif 000012
【図１１】
2020144653.tif 000013
【図１２】
2020144653.tif 000014
【図１３】
2020144653.tif 000015
【図１４】
2020144653.tif 000016
【図１５】
2020144653.tif 000017
【図１６】
2020144653.tif 000018
【図１７】
2020144653.tif 000019
【図１８】
2020144653.tif 000020
【図１９】
2020144653.tif 000021