JP2018055578A - 帳票仕分プログラム、帳票仕分装置及び帳票仕分方法 - Google Patents

帳票仕分プログラム、帳票仕分装置及び帳票仕分方法 Download PDF

Info

Publication number
JP2018055578A
JP2018055578A JP2016193607A JP2016193607A JP2018055578A JP 2018055578 A JP2018055578 A JP 2018055578A JP 2016193607 A JP2016193607 A JP 2016193607A JP 2016193607 A JP2016193607 A JP 2016193607A JP 2018055578 A JP2018055578 A JP 2018055578A
Authority
JP
Japan
Prior art keywords
tax
character string
keyword
sorting apparatus
predetermined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016193607A
Other languages
English (en)
Inventor
昌昭 小澤
Masaaki Ozawa
昌昭 小澤
将平 長谷川
Shohei Hasegawa
将平 長谷川
武志 馬路
Takeshi Baji
武志 馬路
健敏 落合
Taketoshi Ochiai
健敏 落合
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Frontech Ltd
Original Assignee
Fujitsu Frontech Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Frontech Ltd filed Critical Fujitsu Frontech Ltd
Priority to JP2016193607A priority Critical patent/JP2018055578A/ja
Publication of JP2018055578A publication Critical patent/JP2018055578A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Character Input (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる帳票仕分プログラムを提供する。【解決手段】複数種類の帳票の仕分けを可能とする帳票仕分装置による帳票仕分プログラムであって、帳票の読取装置によって読み取られた帳票に含まれるIDに基づいて、帳票が定型の帳票か又は非定型の帳票かを判断するステップと、帳票が定型の帳票であると判断された場合、帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、収納情報を特定するステップと、帳票が非定型の帳票であると判断された場合、帳票全体において抽出された連続する行単位の文字列と、所定のテーブルに基づいて、収納情報を特定するステップとを帳票仕分装置のコンピュータに実行させる。【選択図】図17

Description

本発明は、帳票を特定して仕分けする帳票仕分プログラムに関する。
税公金を納付する帳票は、国庫金、都道府県税、市区町村税、公共料金の4つの種類に基本的に分けられ、それぞれの帳票は作成元が異なるためフォーマットが様々である。金融機関は、帳票によって納付された後、納付先(国、地方公共団体、企業)ごとにどれだけ納付する必要があるか集計をする。
従来は、現物の帳票を入手し、光学的に帳票を読み取って、罫線情報、帳票のサイズ、収納情報(収納先名、税目など)を定義情報としてデータベース化していた。金融機関は、持ち込まれた帳票を光学的に読み取って事前に準備した定義情報と照合することで持ち込まれた帳票を仕分けていた(下記の特許文献1を参照)。
特開2003−16280号公報
定義情報を用いる帳票の仕分けの場合、金融機関は事前にすべての帳票を入手する必要がある。また、不定期に行われる帳票の改訂について監視し、改訂に合わせて定義情報を更新する必要があり、運用上の手間となっていた。また、定義情報がない帳票については行員などの目で仕分けなければならず、行員に対して負荷がかかっていた。
一方、定義情報を用いない帳票の仕分けの方法があるが、この方法は為替業務の為替帳票の仕分けをサポートするものであり、以下の理由により税公金の帳票への適用が困難である。
為替業務の帳票種類は為替帳票の1種類のみであり、為替帳票の「見出しに対する項目位置が一意に特定できる」という帳票レイアウトの特徴がある。そのため、為替業務では、罫線枠内の見出しを抽出し、その隣接する罫線枠内にある項目位置を論理的に特定する方式を採用している。例えば、金額の見出しを抽出し、論理的に右隣の枠を金額項目と特定して文字認識する。
それに対して、税公金業務の帳票種類は、上記4種類あるという違いがある。また、上記4種類の帳票は、為替帳票の帳票レイアウトの特徴と異なり、さらに、それぞれの帳票でも帳票レイアウトの特徴が異なる。例えば、国庫金の帳票(定型)の場合、5桁の帳票IDが存在するという特徴があり、帳票IDを認識することで税目の項目が特定できる。また、市区町村税の帳票(非定型)の場合、収納先が自由に作成した帳票であり、収納先名の項目は、罫線に囲まれていたり、囲まれていなかったりとまちまちである。このように、税公金の帳票に対して、従来の定義情報を用いない仕分け方法を適用しても仕分けできない、又は仕分けの効率が上がらないなどの問題がある。
本発明、上記課題に鑑み、事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる帳票仕分プログラムを提供することを目的とする。
上記目的を達成するために、本発明は、複数種類の帳票の仕分けを可能とする帳票仕分装置による帳票仕分プログラムであって、帳票の読取装置によって読み取られた前記帳票に含まれるIDに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを前記帳票仕分装置のコンピュータに実行させることを特徴とする。
また、本発明の帳票仕分プログラムにおいて、前記帳票が前記非定型の帳票であると判断された場合、前記連続する行単位の文字列と前記所定のテーブルを突合わせし、前記文字列が前記キーワードに一致しない場合、前記文字列の突合わせの先頭を一文字ずつずらして前記突合わせを行い、一致したキーワードに基づいて前記収納情報を特定することは、好ましい態様である。
また、本発明の帳票仕分プログラムにおいて、前記先頭をずらした前記突合わせによって一致するキーワードが存在しない場合、前記各文字列と前記所定のテーブルのキーワードとの一致率を算出するステップと、算出された前記一致率が所定の一致率以上の場合に、該当する前記文字列を前記所定のテーブルの当該キーワードに置き換えて、前記収納情報を特定することは、好ましい態様である。
また、本発明の帳票仕分プログラムにおいて、算出された前記一致率が前記所定の一致率以上でない場合、ユーザによってカスタマイズされたテーブルに前記文字列に該当するキーワードが存在するか否かを判断するステップを更に有することは、好ましい態様である。
また、本発明は、複数種類の帳票の仕分けを可能とする帳票仕分装置であって、帳票の読取装置によって読み取られた前記帳票に含まれるIDに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断する判断部と、前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定し、前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定する特定部とを備えることを特徴とする。
また、本発明は、複数種類の帳票の仕分けを可能とする帳票仕分方法であって、帳票の読取装置によって読み取られた前記帳票に含まれるIDに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを有することを特徴とする。
本発明によれば、事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる。
実施の形態に係る帳票仕分プログラムを実装する帳票仕分装置を含む帳票仕分システムの一例を示す図である。 実施の形態に係る帳票仕分装置の機能構成の一例を示す構成図である。 実施の形態における帳票を説明するための図である。 実施の形態における国庫金帳票IDテーブルの一例を示す図である。 実施の形態における国庫金の定型タイプの帳票の一例を示す図である。 実施の形態における国庫金の非定型タイプの帳票の一例を示す図である。 実施の形態における払込IDテーブルの一例を示す図である。 実施の形態における都道府県税/市区町村税の定型タイプ(ペイジー)の帳票の一例を示す図である。 実施の形態における都道府県税/市区町村税の定型タイプ(東京MT)の帳票の一例を示す図である。 実施の形態における都道府県税/市区町村税の非定型タイプの帳票の一例を示す図である。 実施の形態における都道府県税/市区町村税の非定型タイプの帳票の一例を示す図である。 実施の形態における公共料金の非定型タイプの帳票の一例を示す図である。 実施の形態における税目IDテーブルの一例を示す図である。 実施の形態における税区分キーワードテーブルの一例を示す図である。 実施の形態における税目テーブルの一例を示す図である。 実施の形態における税目テーブル(ユーザ用)の一例を示す図である。 実施の形態における地公体テーブルの一例を示す図である。 実施の形態における収納先企業名テーブルの一例を示す図である。 実施の形態における収納先企業名テーブル(ユーザ用)の一例を示す図である。 実施の形態における各帳票の特徴や税目について説明するための図である。 実施の形態における払込IDについて説明するための図である。 実施の形態に係る帳票仕分装置による帳票イメージの取得、収納先の特定、特定した収納情報の送信までの一連の処理フローの一例を示すフローチャートである。 実施の形態における読取画面の表示例を示す図である。 実施の形態における読み取られた帳票の一例を示す図である。 実施の形態における払込金額修正画面の表示例を示す図である。 実施の形態におけるアプリケーション処理のサブルーチンの一例を示すフローチャートである。 実施の形態における税公金認識処理(帳票種類識別)のサブルーチンの一例を示すフローチャートである。 実施の形態における帳票種類識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における国庫金(定型)の識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における公共料金(定型)の識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における税金(定型)の識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における国庫金(非定型)の識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における公共料金(非定型)の識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における税金(非定型)の識別処理のサブルーチンの一例を示すフローチャートである。 実施の形態における帳票のID候補の特定処理(IDによる特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における帳票識別結果編集処理のサブルーチンの一例を示すフローチャートである。 実施の形態における収納先企業名の特定処理(所定文字列による特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における収納先企業名の特定処理(キーワード検索による特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における税目の特定処理(所定文字列による特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における収納先地公体名の特定処理(所定文字列による特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における帳票の特定処理(キーワード検索による特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における税目の特定処理(キーワード検索による特定)のサブルーチンの一例を示すフローチャートである。 実施の形態における収納先地公体名の特定(キーワード検索による特定)処理のサブルーチンの一例を示すフローチャートである。 実施の形態に係る帳票仕分装置を実現するためのハードウェア構成の一例を示す図である。 実施の形態における収納情報の通知形式の一例を示す図である。 実施の形態における帳票の種類によって通知する情報を説明するための図である。 実施の形態におけるキーワードの比較文字数と一致率の関係を示す図である。 実施の形態における文字列抽出処理のサブルーチンの一例を示すフローチャートである。 実施の形態における文字抽出処理の概念図の一例を示す図である。 実施の形態における収納先企業名テーブルとの突合わせ処理のサブルーチンの一例を示すフローチャートである。
以下、実施の形態について図面を参照して説明する。まず、実施の形態に係る帳票仕分プログラムを実装する帳票仕分装置を含む帳票仕分システムの一例について図1を用いて説明する。帳票仕分システム1は、帳票仕分装置2、スキャナ(読取装置とも言う)3、サーバ4から構成されており、帳票仕分装置2、スキャナ3、サーバ4は、例えばLAN(Local Area Network)などによって接続されている。
スキャナ3は、金融機関などの窓口へ提出された帳票を光学的に読み取り、読み取った帳票の画像データ(帳票イメージ)を帳票仕分装置2へ送信する。
帳票仕分装置2は、スキャナ3から送信された帳票イメージに基づいて、帳票が定型の帳票か又は非定型の帳票かを判断し、帳票が定型の帳票である場合、帳票全体(全範囲)における抽出された連続する行単位の文字列のうちの所定領域の文字列(所定文字列)と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、収納情報を特定する(所定文字列による特定)。一方、帳票が非定型の帳票である場合、帳票全体における抽出された連続する行単位の文字列と、上記所定のテーブルに基づいて、収納情報を特定する(キーワード検索による特定)。詳細な処理については後述する。
サーバ4は、帳票仕分装置2によって特定された帳票に関する情報を受信し、受信した情報に基づいて、税区分や収納先ごとなどによって帳票を仕分け、収納金の管理などを可能とする。
ここでの帳票は、例えば税公金帳票であって、その種類(税区分)は、図3に示すように、国庫金、都道府県税、市区町村税、公共料金であり、税区分ごとに税目や収納先が決められている。これらの情報を利用することで帳票の仕分けを可能とする。また、帳票のタイプには、帳票のレイアウト(形式)があらかじめ決められた定型タイプ(以下、単に定型とも言う)と、帳票のレイアウトがあらかじめ決められていない非定型タイプ(以下、単に非定型とも言う)、すなわち収納先(例えば、都道府県、市区町村、企業など)が帳票のレイアウトを自由に決定することができるタイプがある。このことから、以下で扱う帳票は、国庫金の定型及び非定型の帳票、都道府県税の定型及び非定型の帳票、市区町村税の定型及び非定型の帳票、公共料金の定型及び非定型の帳票である。
収納情報とは、収納先名、税目、税目補助などを含む情報である。収納先名は収納(受領)する主体を示し、税目は租税の種目や公共料金の種目などを示し、税目補助は収納に関する補助的な情報を示すものである。例えば、帳票が東京都の法人税を収納するためのものである場合、収納先名は東京都であり、税目は法人税であり、税目補助は帳票中にID(後述する払込ID)が存在すればそのIDである。なお、この場合の税区分は都道府県税である。特定された収納情報は、税区分とともに帳票仕分装置2によってサーバ4へ通知される。
次に、実施の形態に係る帳票仕分装置2の機能構成の一例について図2を用いて説明する。帳票仕分装置2は、スキャナ制御部20、文字認識処理部21、帳票種類識別処理部22、認識方式選択処理部23、収納先特定処理部24、認識結果補正部25、格納部26から構成されている。なお、帳票仕分装置2の構成はこれに限られるものではなく、他の構成要素を含んでもよい。
スキャナ制御部20は、スキャナ3による帳票の読み取りを制御するものであって、スキャナ3の読取台に置かれた帳票の読み取りの開始などを指示する。
文字認識処理部21は、スキャナ3によって読み取られた帳票の画像(イメージ)から罫線、セル、文字列を抽出し、活字文字認識辞書テーブル260を用いて抽出された文字列(IDやキーワード)などを認識する。活字文字認識辞書テーブル260には、例えば、文字列の文字と、その文字に対応した活字文字の情報などが対応付けられて記憶されている。
帳票種類識別処理部(判断部とも言う)22は、文字認識処理部21によって認識された文字列(帳票内のID)に基づいて、帳票のタイプを識別する。
認識方式選択処理部23は、帳票種類識別処理部22によって識別された帳票のタイプに応じた帳票の認識方式を選択する。
収納先特定処理部(特定部とも言う)24は、認識方式選択処理部23によって選択された認識方式に基づいて収納情報を特定する。
認識結果補正部25は、後述するように、収納情報を特定する際、帳票の汚れや文字の擦れなどのノイズにより収納先などを認識できない場合に、認識できない文字列(キーワード)が格納部26の各種テーブル(例えば、収納先企業名テーブル267など)のキーワードと所定の一致率を満たす場合、認識できないキーワードを所定の一致率を満たすキーワードに補正する(置き換える)。置き換えられたキーワードに基づいて収納情報が特定される。
格納部26は、帳票の識別処理をする際に必要な情報(テーブル)を格納するものであり、例えば活字文字認識辞書テーブル260、国庫金帳票IDテーブル261、払込IDテーブル262、税目IDテーブル263、税区分キーワードテーブル264、税目テーブル265、税目テーブル(ユーザ用)265a、地公体テーブル266、収納先企業名テーブル267、収納先企業名テーブル(ユーザ用)267aを格納する。
ここで、各テーブルについて説明する。
まず、国庫金帳票IDテーブル261について説明する。図4に示す国庫金帳票IDテーブル261は、帳票が国庫金の定型の帳票であるか否かを判断する際に用いられるテーブルである。具体的には、後述するように、所定のID探索範囲内にある文字列(ID)が国庫金帳票IDテーブル261に存在する場合、当該帳票は国庫金の定型の帳票であると判断される。ここでのID探索範囲とは、図5Aに示す帳票上における所定の領域であって、例えば帳票に向かって左上部にある範囲50(例えば所定の座標を基点とした横4.7cm、縦2.0cmの範囲)である。なお、図5Aに示す帳票は、IDが国庫金帳票IDテーブル261に存在するため、国庫金の定型の帳票である。一方、帳票内にIDが存在しない又は存在しても国庫金帳票IDテーブルに存在しない帳票であって、帳票内に国庫金や国税などの特定キーワードが存在する帳票は、国庫金の非定型の帳票である(図5B参照)。国庫金帳票IDテーブル261の帳票IDは、5桁の数字から構成されているがこれに限られるものではない。
次に、払込IDテーブル262について説明する。図6に示す払込IDテーブル262は、帳票が税金(都道府県税又は市区町村税)又は公共料金の定型の帳票であるか否かを判断する際に用いられるテーブルである。具体的には、後述するように、所定のID探索範囲内にある文字列(ID)が払込IDテーブル262に存在し、公共料金の払込IDに一致する場合、当該帳票は公共料金の定型の帳票であると判断される。一方、所定のID探索範囲内にある文字列(ID)が払込IDテーブル262に存在し、税金の払込IDに一致する場合、当該帳票は税金の定型の帳票であると判断される。ここでのID探索範囲も、上記同様、帳票上における所定の領域であって、例えば帳票に向かって左上部にある範囲70(例えば所定の座標を基点とした横1.25cm、縦1.2cmの範囲)である(図7Aや図7B参照)。
なお、図7Aや図7Bに示す帳票は、ID(77と27)が払込IDテーブル262に存在し、対応する税区分が税金であるため、税金の定型の帳票である。公共料金の定型の帳票の表示例については、税金の定型の帳票と払込IDの値が異なるのみでフォーマットは同様であるため省略する。一方、帳票中にIDが存在しないが、帳票中に会計管理者や水道局などの特定キーワードが存在する帳票は、税金の非定型の帳票である(図7Cや図7D参照)。また、帳票中にIDが存在しないが、帳票中に振込通知票などの特定キーワードが存在する帳票は、公共料金の非定型の帳票である(図7E参照)。
次に、税目IDテーブル263について説明する。図8に示す税目IDテーブル263は、帳票の税目を判断する際に用いられるテーブルである。具体的には、後述するように、抽出されたOCR文字列(例えば、図7Aの帳票のOCR文字列のうちの所定のOCR文字列(32〜34桁目))が税目IDテーブル263の税目IDと一致する場合、当該帳票の税目は当該税目IDに対応する税目であると判断される。例えば、32〜34桁目の文字列が101の場合、税目IDの101と一致するため、税目は住民税であると判断される。
次に、税区分キーワードテーブル264について説明する。図9に示す税区分キーワードテーブル264は、帳票が非定型の場合に帳票の税区分を判断する際に用いられるテーブルである。具体的には、後述するように、帳票(の全体)から抽出される文字列(キーワード)が税区分キーワードテーブル264のキーワードと一致する場合、当該帳票の税区分は該当するキーワードに対応する税区分であると判断される。例えば、帳票から抽出されるキーワードが払込取扱票の場合、払込取扱票と一致するキーワードが税区分キーワードテーブル264に存在するため、税区分は払込取扱票に対応する公共料金であると判断される。文字列の抽出については後述する。
次に、税目テーブル265について説明する。図10Aに示す税目テーブル265は、帳票の税目を判断する際に用いられるテーブルである。具体的には、後述するように、帳票から抽出される文字列(キーワード)が税目テーブル265のキーワードと一致する場合、当該帳票の税目は該当するキーワードに対応する税目であると判断される。例えば、帳票から抽出されるキーワードが都市計画税の場合、都市計画税と一致するキーワードが税目テーブル265に存在するため、税目は都市計画税に対応する固定資産税であると判断される。なお、税目に関して、図10Bに示すように、ユーザによってカスタマイズ可能な税目テーブル(ユーザ用)265aを設けるようにしてもよい。これにより、あらかじめ決められた税目テーブル265に登録されていない税目(例えば、保育園代金など)を別途新たに登録することができ、税目テーブル265の範囲外の税目についても識別することが可能となる。
次に、地公体テーブル266について説明する。図11に示す地公体テーブル266は、帳票の収納先を特定する際に用いられるテーブルである。具体的には、後述するように、抽出された文字列(OCR文字列)が地公体テーブル266の地公体コードと一致する場合や、帳票から抽出された文字列(キーワード)が地公体テーブル266の地公体名と一致する場合、当該帳票の収納先は一致した地公体名であると判断される。例えば、帳票から抽出されるキーワードが札幌市の場合、札幌市と一致する地公体名が地公体テーブル266に存在するため、地公体名は札幌市であると判断される。
次に、収納先企業名テーブル267について説明する。図12Aに示す収納先企業名テーブル267は、帳票の収納先を特定する際に用いられるテーブルである。具体的には、後述するように、帳票から抽出される文字列(キーワード)が収納先企業名テーブル267のキーワードと一致する場合、当該帳票の収納先は当該キーワードに対応する企業名の企業であると判断される。例えば、帳票から抽出されるキーワードが東西日本電信電話株式会社の場合、東西日本電信電話株式会社と一致するキーワードが収納先企業名テーブル267に存在するため、収納先の企業名は東西日本電信電話株式会社に対応するMTTであると判断される。なお、収納先企業名に関して、図12Bに示すように、ユーザによってカスタマイズ可能な収納先企業名テーブル(ユーザ用)267aを設けるようにしてもよい。これにより、あらかじめ決められた収納先企業名テーブル267に登録されていない企業名(例えば、北海道○○○株式会社)を別途新たに登録することができ、収納先企業名テーブル267の範囲外の収納先についても識別することが可能となる。
ここで、各帳票の特徴や税目について図13を用いて説明する。帳票の種類には、上述したように、国庫金、都道府県税、市区町村税、公共料金があり、それぞれ定型タイプと非定型タイプがある。
国庫金の定型タイプの帳票は、5桁のID(帳票ID)が付されているという特徴を有している。一方、国庫金の非定型タイプの帳票は、IDが付されていないという特徴を有している。なお、国庫金の帳票の税区分は国庫金である。
国庫金の定型タイプの帳票の一例が図5A、国庫金の非定型タイプの帳票の一例が図5Bにそれぞれ示されている。
国庫金の定型タイプの帳票では、上述したように、5桁の帳票IDが帳票上の所定の範囲(例えば所定の座標を基点とした横4.7cm、縦2.0cmの範囲)に付される。また、国庫金の定型タイプの帳票では、国庫金や国税などの特定キーワードが帳票に含まれる。
一方、国庫金の非定型タイプの帳票では、図5Bに示すように、帳票IDは存在しないが、国庫金の定型タイプの帳票と同様、国庫金や国税などの特定キーワードは帳票に含まれる。
よって、帳票IDが帳票に付されており、付されたIDが図4に示す国庫金帳票IDテーブル261に存在する場合、当該帳票は国庫金の定型タイプの帳票と特定される。帳票IDが帳票に付されておらず、国庫金や国税などの特定キーワードのみが帳票に含まれている場合、当該帳票は国庫金の非定型タイプの帳票と特定される。なお、帳票IDが帳票に付されておらず、特定キーワードと、他の帳票種類を特定する特定キーワードが帳票に含まれている場合には、国庫金や国税などの特定キーワードの抽出数が所定数を超えた場合に、当該帳票は国庫金の非定型タイプの帳票と特定されるようにしてもよい。
図13の説明に戻り、都道府県税/市区町村税の定型タイプの帳票は、ペイジー(登録商標)帳票又は東京MT帳票であるという特徴を有している。一方、都道府県税/市区町村税の非定型タイプの帳票は、収納先が自由にレイアウトできるという特徴を有している。都道府県税や市区町村税の帳票の税目は、住民税、住民税特別徴収、介護保険、法人税、自動車税などである。
都道府県税/市区町村税の定型タイプの帳票の一例が図7A及び図7B、都道府県税/市区町村税の非定型タイプの帳票の一例が図7C及び図7Dにそれぞれ示されている。
都道府県税/市区町村税の定型タイプの帳票は、図7Aに示すペイジー帳票又は図7Bに示す東京MT帳票であり、推進協会などでレイアウト(形式)が規約化された帳票である。ペイジー帳票及び東京MT帳票は、所定の範囲70(例えば所定の座標を基点とした横1.25cm、縦1.2cmの範囲)にID(払込ID)が付されており、帳票の中央付近にOCR文字列を含むものである。
払込IDは、2桁のIDであって、図14に示すように、ペイジー帳票と東京MT帳票で規約化されている。払込IDの10の位が2の帳票は東京MT帳票であり、払込IDの10の位が7の帳票はペイジー帳票である。また、払込IDの1の位が3、7、9の帳票は、税金を収納するための帳票であり、払込IDの1の位が0、1、2、6、8の帳票は、公共料金を収納するための帳票である。
OCR文字列は、複数の数字が羅列されたものである。羅列された数字(文字列コード)は、収納に関する情報などを示しており、例えばOCR文字列の26〜30桁の文字列コードは収納先を示し、OCR文字列の32〜34桁の文字列コードは税目を示している(図7A参照)。
一方、都道府県税/市区町村税の非定型タイプの帳票は、図7Cに示す市民税の収納などで利用される帳票や、図7Dに示す水道料金の収納などで利用される帳票である。これらの非定型タイプの帳票には、都道府県税や市区町村税であることを特定するための特定キーワード(例えば、会計管理者、市水道局など)やコード(地公体コード)、収納先や税目などを特定するためのキーワード(例えば、○○市、市民税、水道局など)などが示されている。
抽出された文字列(キーワード)が、例えば県会計管理者など都道府県のものであることを示すものである場合、市会計管理者など市区町村のものであることを示すものである場合、抽出されたコードが地公体コードに該当する場合などでは、当該帳票は都道府県税又は市区町村税の帳票であると特定される。
地公体コードは、あらかじめ地公体(都道府県や市区町村)ごとに割り振られたコードであって、図11に示すように、例えば、北海道は01000、札幌市は01100、函館市は01202などというコードが割り振られている。地公体コードと地公体名が関連付けられた地公体テーブル266は、上述したように格納部26に格納されている。なお、図11に示される属性は地公体の属性を示しており、例えば都道府県は属性が1、区は属性が2、市は属性が4、村は属性が3などである。
図13の説明に戻り、公共料金の定型タイプの帳票は、ペイジー帳票、東京MT帳票であるという特徴を有している。一方、公共料金の非定型タイプの帳票は、収納先が自由にレイアウトできるという特徴を有している。なお、公共料金の帳票の税目は、通話(電話)、電気、ガスなどである。
上記以外の帳票、例えば制定帳票や私製為替帳票などもあるが、ここでは仕分け対象の帳票としていない。
公共料金の非定型タイプの帳票の一例が図7Eに示されている。なお、公共料金の定型タイプの帳票は、上述した税金の定型タイプの帳票と払込IDの値が異なるのみでフォーマットは同様であるため省略する。公共料金の定型タイプの帳票のOCR文字列では、26〜27桁の文字列コードが税目を示している。
公共料金の非定型タイプの帳票には、公共料金の定型タイプの帳票と異なり、払込IDやOCR文字列は存在しない。
次に、実施の形態に係る帳票仕分装置2(帳票仕分プログラム)による帳票イメージの取得、収納先の特定、特定した収納情報の送信までの一連の処理フローについて図15を用いて説明する。
帳票仕分装置2は、スキャナ3によって読み取られる帳票数の分だけ後述するアプリケーション処理を行う。帳票仕分装置2は、不図示の帳票の読み取りキーの押下を受け付ける(ステップS1501)と、帳票の収納情報を特定するためのアプリケーション処理を行う(ステップS1502)。アプリケーション処理については後述する。アプリケーション処理が終了し、帳票仕分装置2は、読み取られた帳票の認識(特定)結果(読取画面)の修正指示をユーザから受け付ける(ステップS1503)と、修正指示にしたがって認識結果の修正を行う(ステップS1504)。帳票仕分装置2は、他に読み取る帳票がある場合にはステップS1501に戻り、他に読み取る帳票がない場合には画面に表示された送信キー(図16A及び図16Cを参照)のユーザによる押下に基づいて認識結果(特定された収納情報)をサーバ4へ送信する(ステップS1505)。
ここで、上記読取画面の表示例を図16A、読み取られた帳票を図16Bに示す。図16Aに示す読取結果は、図16Bに示す帳票を読み取り、アプリケーション処理を行うことによって得られた結果であって、税区分が公共料金、収納先(納付先)が○○○○電話株式会社、税目が電話、税目補助(払込ID)が22であることを示している。認識結果の出力項目としては、図16Aに示すように、例えば、種類、納付先、金額、納付期限である。ユーザが、表示された結果に対して修正指示をしようとする場合には、表示された税公金キーを押下することにより、払込金額修正画面に切り替わる。その画面の表示例を図16Cに示す。明細として読取結果(税区分(種類)、納付先、件数など)が表示されている。ユーザの指示に基づいて表示内容の修正を行い、問題がない場合には、ユーザによって送信キーが押下される。なお、修正は読取画面においても行われるようにしてもよい。帳票仕分装置2は、送信キーの押下に基づいて読取結果をサーバ4へ通知する。
次に、上記アプリケーション処理のサブルーチンの一例について図17を用いて説明する。帳票仕分装置2は、スキャナ3によって読み取られた帳票の帳票イメージを取得し(ステップS1701)、取得した帳票イメージに基づいて帳票の種類などを識別する税公金認識処理(帳票種類識別)を行う(ステップS1702)。税公金認識処理(帳票種類識別)については後述する。帳票仕分装置2は、税公金認識の結果、帳票の種類などの識別ができたか否かを判断する(ステップS1703)。識別ができた場合(ステップS1703でYes)、帳票仕分装置2は、税公金認識(図16Aに示す金額、納付期限などの項目の認識)を行い(ステップS1704)、認識結果の画面をディスプレイなどに表示する(ステップS1705)。
次に、上記税公金認識処理(帳票種類識別)のサブルーチンの一例について図18を用いて説明する。帳票仕分装置2は、罫線を抽出するために帳票イメージを2値化する(ステップS1801)とともに、文字を認識するために帳票イメージを2値化する(ステップS1802)。帳票仕分装置2は、2値化された帳票イメージに基づいて罫線を抽出し(ステップS1803)、セルを抽出し(ステップS1804)、文字列を抽出する(ステップS1805)。文字列抽出の処理については後述する。帳票仕分装置2は、抽出された各情報に基づいて帳票の種類やタイプを識別する帳票種類識別処理を行う(ステップS1806)。帳票種類識別処理によって、所定のIDやキーワードが抽出できれば帳票仕分装置2によって扱うことが可能な帳票となり、抽出できない場合には取り扱いできない帳票としてリジェクトされる。帳票種類識別処理については後述する。
次に、上記文字列抽出の処理について図38及び図39を用いて説明する。図38は文字列抽出処理のサブルーチンの一例である。帳票仕分装置2は、帳票全体(全範囲)に対して文字認識する(ステップS3801)。ここでは、例えば、帳票中において連続する文字列を行単位で1つの文字集団として認識する。帳票仕分装置2は、認識した文字数−1の分(文字集団分)だけ後述する文字列抽出の処理を行う。
帳票仕分装置2は、文字集団の中から基準文字(例えば、文字集団の先頭文字)を抽出し、次の文字列に格納する(ステップS3802)。帳票仕分装置2は、次の文字を抽出し、その文字の大きさと、隣接する前の文字との間隔を算出する(ステップS3803)。帳票仕分装置2は、次の文字の大きさが隣接する前の文字の大きさと同じであるか否かを判断する(ステップS3804)。大きさが同じ場合(ステップS3804でYes)、次の文字と隣接する前の文字の間隔が、前回の文字間の間隔と同じか否かを判断する(ステップS3805)。この判断は、基準文字から数えて2文字目と3文字目の間隔以降の文字間隔において行われる。
間隔が同じ場合(ステップS3805でYes)、帳票仕分装置2は、抽出した次の文字を文字列に追加する(ステップS3806)。一方、文字の大きさが同じでない場合(ステップS3804でNo)や、文字間隔が同じでない場合(ステップS3805でNo)には、別の文字列と判断して文字列として確定する(ステップS3807)。そして、次の文字を基準文字とし、新たな文字列として次の文字列に格納する(ステップS3808)。
上記ループ処理の概念図を図39に示す。上記ループ処理について、ある文字集団(ここでは8つの文字列)を例にして考える。文字集団の基準文字(例えば、先頭文字)を抽出し、抽出された基準文字を次の文字列に格納する。次に、基準文字の隣接する次の文字を抽出する。抽出された次の文字の大きさと、基準文字と次の文字との間隔を算出する。算出された次の文字の大きさが、基準文字の大きさと同じか否かを判断する。大きさが同じ場合には、文字間の間隔が同じか判断するが、この場合、基準文字に隣接する次の文字についてのループ処理であるため、基準文字と次の文字の間隔と比較するものがない。その場合には、間隔が同じか否かの判断処理は行われない。
基準文字と次の文字の大きさが同じ場合、抽出された次の文字は文字列に追加され、次の文字に隣接する次の文字について上記と同様の処理が行われる。同じ大きさ、同じ間隔の文字が続くまでを1つの文字列(キーワード)とする。 次に、上記帳票種類識別処理のサブルーチンの一例について図19を用いて説明する。帳票種類識別処理では、帳票仕分装置2は、帳票が定型の帳票であるか、非定型の帳票であるかを判断し、定型の場合には、帳票の所定領域の文字列(所定文字列)と、所定のテーブルとの突合わせをして収納情報を特定する(後述するステップS1901、S1903、S1905の識別処理に対応)。非定型の場合には、帳票の全体における抽出された連続する行単位の文字列と、所定のテーブルとの突合わせをして収納情報を特定する(後述するステップS1907、S1909、S1911の識別処理に対応)。
具体的な処理として、帳票仕分装置2は、帳票が国庫金の定型の帳票であるかを識別する処理、すなわち国庫金(定型)の識別処理を行う(ステップS1901)。国庫金(定型)の識別処理については後述する。
帳票仕分装置2は、国庫金(定型)の識別処理により帳票が国庫金の定型の帳票であると識別ができたか否かを判断する(ステップS1902)。帳票が国庫金の定型の帳票であると識別ができた場合(ステップS1902でYes)、帳票種類識別処理を終了する。帳票が国庫金の定型の帳票であると識別ができない場合(ステップS1902でNo)、帳票仕分装置2は帳票が公共料金の定型の帳票であるかを識別する処理、すなわち公共料金(定型)の識別処理を行う(ステップS1903)。公共料金(定型)の識別処理については後述する。
帳票仕分装置2は、公共料金(定型)の識別処理により帳票が公共料金の定型の帳票であると識別ができたか否かを判断する(ステップS1904)。帳票が公共料金の定型の帳票であると識別ができた場合(ステップS1904でYes)、帳票種類識別処理を終了する。帳票が公共料金の定型の帳票であると識別ができない場合(ステップS1904でNo)、帳票仕分装置2は帳票が税金の定型の帳票であるかを識別する処理、すなわち税金(定型)の識別処理を行う(ステップS1905)。税金(定型)の識別処理については後述する。
帳票仕分装置2は、税金(定型)の識別処理により帳票が税金の定型の帳票であると識別ができたか否かを判断する(ステップS1906)。帳票が税金の定型の帳票であると識別ができた場合(ステップS1906でYes)、帳票種類識別処理を終了する。帳票が税金の定型の帳票であると識別ができない場合(ステップS1906でNo)、帳票仕分装置2は帳票が国庫金の非定型の帳票であるかを識別する処理、すなわち国庫金(非定型)の識別処理を行う(ステップS1907)。国庫金(非定型)の識別処理については後述する。
帳票仕分装置2は、国庫金(非定型)の識別処理により帳票が国庫金の非定型の帳票であると識別ができたか否かを判断する(ステップS1908)。帳票が国庫金の非定型の帳票であると識別ができた場合(ステップS1908でYes)、帳票種類識別処理を終了する。帳票が国庫金の非定型の帳票であると識別ができない場合(ステップS1908でNo)、帳票仕分装置2は帳票が公共料金の非定型の帳票であるかを識別する処理、すなわち公共料金(非定型)の識別処理を行う(ステップS1909)。公共料金(非定型)の識別処理については後述する。
帳票仕分装置2は、公共料金(非定型)の識別処理により帳票が公共料金の非定型の帳票であると識別ができたか否かを判断する(ステップS1910)。帳票が公共料金の非定型の帳票であると識別ができた場合(ステップS1910でYes)、帳票種類識別処理を終了する。帳票が公共料金の非定型の帳票であると識別ができない場合(ステップS1910でNo)、帳票仕分装置2は帳票が税金の非定型の帳票であるかを識別する処理、すなわち税金(非定型)の識別処理を行う(ステップS1911)。税金(非定型)の識別処理については後述する。
帳票仕分装置2は、税金(非定型)の識別処理により帳票が税金の非定型の帳票であると識別ができたか否かを判断する(ステップS1912)。帳票が税金の非定型の帳票であると識別ができた場合(ステップS1912でYes)、帳票種類識別処理を終了する。帳票が税金の非定型の帳票であると識別ができない場合(ステップS1912でNo)、帳票仕分装置2は、帳票がどの帳票種類にも該当しない(取り扱えない)と判断し、帳票種類識別結果に当該帳票をリジェクトする帳票リジェクトを設定する(ステップS1913)。
なお、処理の順番は上記に限定されるものではなく、例えばステップS1901、ステップS1903、ステップS1905の処理の順番を入れ替えてよい。また、例えばステップS1907、ステップS1909、ステップS1911の処理の順番も入れ替えてもよい。
次に、上記国庫金(定型)の識別処理のサブルーチンの一例について図20を用いて説明する。帳票仕分装置2は、帳票中に帳票のID候補があるかを判断するため、帳票のID候補の特定(IDによる特定)処理を行う(ステップS2001)。なお、帳票のID候補の特定処理(IDによる特定)については後述する。帳票仕分装置2は、IDの候補を特定できたか否かを判断する(ステップS2002)。IDの候補の特定ができた場合(ステップS2002でYes)、帳票仕分装置2は、候補のIDと、国庫金帳票IDテーブル261とを突合わせする(ステップS2003)。
帳票仕分装置2は、国庫金帳票IDテーブル261に候補のIDと一致するIDがあるか否かを判断する(ステップS2004)。一致するIDがある場合(ステップS2004でYes)、帳票仕分装置2は、当該帳票は国庫金の定型の帳票であることがわかるため、税区分に国庫金を設定し(ステップS2005)、税目補助に当該帳票IDを設定する(ステップS2006)。帳票仕分装置2は、上記設定した結果に基づいて帳票識別結果編集を行う(ステップS2007)。帳票識別結果編集処理については後述する。帳票仕分装置2は、編集した内容を帳票種類識別結果として設定する(ステップS2008)。一方、IDの候補の特定ができない場合(ステップS2002でNo)や、一致するIDがない場合(ステップS2004でNo)には、国庫金(定型)の識別処理を終了する。
次に、上記公共料金(定型)の識別処理のサブルーチンの一例について図21を用いて説明する。帳票仕分装置2は、国庫金(定型)の識別処理と同様、帳票のID候補の特定(IDによる特定)処理を行う(ステップS2101)。帳票仕分装置2は、IDの候補を特定できたか否かを判断する(ステップS2102)。IDの候補の特定ができた場合(ステップS2102でYes)、帳票仕分装置2は、候補のIDと、払込IDテーブル262とを突合わせする(ステップS2103)。
帳票仕分装置2は、払込IDテーブル262の公共料金のIDに候補のIDと一致するIDがあるか否かを判断する(ステップS2104)。一致するIDがある場合(ステップS2104でYes)、帳票仕分装置2は、当該帳票は公共料金の定型の帳票であることがわかるため、公共料金の定型に対応する認識方式、すなわち所定領域の所定文字列による特定を選択する(ステップS2105)。
帳票仕分装置2は、税区分に公共料金を設定する(ステップS2106)。帳票仕分装置2は、収納先を特定するための収納先企業名の特定(所定文字列による特定)処理を行う(ステップS2107)。収納先企業名の特定処理(所定文字列による特定)については後述する。帳票仕分装置2は、収納先の特定ができたか否かを判断し(ステップS2108)、特定できた場合(ステップS2108でYes)、帳票仕分装置2は、収納先に対して、特定された収納先企業名を設定する(ステップS2109)。
帳票仕分装置2は、税目を特定するための税目の特定(所定文字列による特定)処理を行う(ステップS2110)。税目の特定処理(所定文字列による特定)については後述する。帳票仕分装置2は、税目の特定ができたか否かを判断し(ステップS2111)、特定できた場合(ステップS2111でYes)、税目に対して特定した税目を設定する(ステップS2112)。そして、国庫金(定型)の識別処理と同様、帳票仕分装置2は、帳票識別結果編集を行い(ステップS2113)、編集した内容を帳票種類識別結果として設定する(ステップS2114)。
一方、ステップS2102でIDの候補の特定ができない場合(ステップS2102でNo)や、ステップS2104で一致するIDがない場合(ステップS2104でNo)には、公共料金(定型)の識別処理を終了する。また、ステップS2108で収納先が特定できない場合(ステップS2108でNo)にはステップS2110へ進み、ステップS2111で税目が特定できない場合(ステップS2111でNo)にはステップS2113へ進む。
次に、上記税金(定型)の識別処理のサブルーチンの一例について図22を用いて説明する。帳票仕分装置2は、国庫金(定型)の識別処理と同様、帳票のID候補の特定(IDによる特定)処理を行う(ステップS2201)。帳票仕分装置2は、IDの候補を特定できたか否かを判断する(ステップS2202)。IDの候補の特定ができた場合(ステップS2202でYes)、帳票仕分装置2は、候補のIDと、払込IDテーブル262とを突合わせする(ステップS2203)。
帳票仕分装置2は、払込IDテーブル262の税金のIDに候補のIDと一致するIDがあるか否かを判断する(ステップS2204)。一致するIDがある場合(ステップS2204でYes)、帳票仕分装置2は、当該帳票は税金の定型の帳票であることがわかるため、税金の定型に対応する認識方式、すなわち所定領域の所定文字列による特定を選択する(ステップS2205)。
帳票仕分装置2は、収納先を特定するために収納先地公体名の特定(所定文字列による特定)処理を行う(ステップS2206)。収納先地公体名の特定処理(所定文字列による特定)については後述する。帳票仕分装置2は、収納先の特定ができたか否かを判断し(ステップS2207)、特定できた場合(ステップS2207でYes)、帳票仕分装置2は、地公体コードの下3桁が000であるか否かを判断する(ステップS2208)。地公体コードの下3桁が000を示すものは都道府県とし、示さないものは市区町村とするため、地公体コードの下3桁が000である場合(ステップS2208でYes)、帳票仕分装置2は、税区分に都道府県税を設定し(ステップS2209)、地公体コードの下3桁が000でない場合(ステップS2208でNo)、税区分に市区町村税を設定する(ステップS2210)。帳票仕分装置2は、収納先に対して、特定された収納先地公体名を設定する(ステップS2211)。
帳票仕分装置2は、公共料金(定型)の識別処理と同様、税目を特定するための税目の特定(所定文字列による特定)処理を行う(ステップS2212)。帳票仕分装置2は、税目の特定ができたか否かを判断し(ステップS2213)、特定できた場合(ステップS2213でYes)、税目に対して特定した税目を設定する(ステップS2214)。そして、国庫金(定型)の識別処理と同様、帳票仕分装置2は、帳票識別結果編集を行い(ステップS2215)、編集した内容を帳票種類識別結果として設定する(ステップS2216)。
一方、ステップS2202でIDの候補の特定ができない場合(ステップS2202でNo)、ステップS2204で一致するIDがない場合(ステップS2204でNo)、ステップS2207で収納先が特定できない場合(ステップS2207でNo)には、税金(定型)の識別処理を終了する。また、ステップS2213で税目が特定できない場合(ステップS2213でNo)にはステップS2215へ進む。
次に、上記国庫金(非定型)の識別処理のサブルーチンの一例について図23を用いて説明する。帳票仕分装置2は、帳票の特定をするために帳票の特定(キーワード検索による特定)処理を行う(ステップS2301)。なお、帳票の特定処理(キーワード検索による特定)については後述する。帳票仕分装置2は、帳票が国庫金の非定型の帳票であると特定ができたか否かを判断する(ステップS2302)。帳票が国庫金の非定型の帳票であると特定ができた場合(ステップS2302でYes)、帳票仕分装置2は、税区分に国庫金を設定し(ステップS2303)、国庫金(定型)の識別処理と同様、帳票識別結果編集を行い(ステップS2304)、編集した内容を帳票種類識別結果として設定する(ステップS2305)。一方、帳票が国庫金の非定型の帳票であると特定ができない場合(ステップS2302でNo)、国庫金(非定型)の識別処理を終了する。
次に、上記公共料金(非定型)の識別処理のサブルーチンの一例について図24を用いて説明する。帳票仕分装置2は、国庫金(非定型)の識別処理と同様、帳票の特定(キーワード検索による特定)処理を行う(ステップS2401)。帳票仕分装置2は、帳票が公共料金の非定型の帳票であると特定ができたか否かを判断する(ステップS2402)。帳票が公共料金の非定型の帳票であると特定ができた場合(ステップS2402でYes)、帳票仕分装置2は、公共料金の非定型に対応する認識方式、すなわちキーワード検索による特定を選択する(ステップS2403)。
帳票仕分装置2は、税区分に公共料金を設定し(ステップS2404)、収納先を特定するために収納先企業名の特定(キーワード検索による特定)処理を行う(ステップS2405)。帳票仕分装置2は、収納先の特定ができたか否かを判断し(ステップS2406)、収納先の特定ができた場合(ステップS2406でYes)、収納先に対して、特定された収納先企業名を設定する(ステップS2407)。
帳票仕分装置2は、税目を特定するために税目の特定(キーワード検索による特定)処理を行う(ステップS2408)。税目の特定処理(キーワード検索による特定)については後述する。帳票仕分装置2は、税目の特定ができたか否かを判断し(ステップS2409)、特定ができた場合(ステップS2409でYes)、税目に対して、特定された税目を設定する(ステップS2410)。帳票仕分装置2は、国庫金(非定型)の識別処理と同様、帳票識別結果編集を行い(ステップS2411)、編集した内容を帳票種類識別結果として設定する(ステップS2412)。
一方、帳票が公共料金の非定型の帳票であると特定ができない場合(ステップS2402でNo)には公共料金(非定型)の識別処理を終了する。また、ステップS2406で収納先の特定ができない場合(ステップS2406でNo)にはステップS2408へ進み、ステップ2409で税目の特定ができない場合(ステップS2409でNo)にはステップS2411へ進む。
次に、上記税金(非定型)の識別処理のサブルーチンの一例について図25を用いて説明する。帳票仕分装置2は、国庫金(非定型)の識別処理と同様、帳票の特定(キーワード検索による特定)処理を行う(ステップS2501)。帳票仕分装置2は、帳票が税金の非定型の帳票であると特定ができたか否かを判断する(ステップS2502)。帳票が税金の非定型の帳票であると特定ができた場合(ステップS2502でYes)、帳票仕分装置2は、税金の非定型に対応する認識方式、すなわちキーワード検索による特定を選択する(ステップS2503)。
帳票仕分装置2は、収納先を特定するために収納先地公体名の特定(キーワード検索による特定)処理を行う(ステップS2504)。収納先地公体名の特定(キーワード検索による特定)処理については後述する。帳票仕分装置2は、収納先の特定ができたか否かを判断する(ステップS2505)。収納先の特定ができた場合(ステップS2505でYes)、帳票仕分装置2は、収納先地公体名が都道府県であるか否かを判断する(ステップS2506)。収納先地公体名が都道府県である場合(ステップS2506でYes)、帳票仕分装置2は、税区分に都道府県税を設定する(ステップS2507)。一方、収納先地公体名が都道府県でない場合(ステップS2506でNo)、帳票仕分装置2は、税区分に市区町村税を設定する(ステップS2508)。
帳票仕分装置2は、収納先に対して、特定された収納先地公体名を設定する(ステップS2509)。帳票仕分装置2は、公共料金(非定型)の識別処理と同様、税目の特定処理(キーワード検索による特定)を行う(ステップS2510)。なお、ステップS2511からステップS2514の処理は、公共料金(非定型)の識別処理のフローのステップS2409からステップS2412の処理と同様であるため、説明を省略する。
一方、ステップS2502で帳票が税金の非定型の帳票であると特定ができない場合(ステップS2502でNo)やステップS2505で収納先の特定ができない場合(ステップS2505でNo)には、税金(非定型)の識別処理を終了する。
次に、上記帳票のID候補の特定処理(IDによる特定)のサブルーチンの一例について図26を用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで後述するステップS2601からステップS2604をループして処理をする。例えば、抽出された文字列が3つの場合には3回ループする。
帳票仕分装置2は、抽出された文字列がIDの候補となるか確認するため、抽出された文字列の座標がID探索範囲内にあるか否かを判断する(ステップS2601)。抽出された文字列の座標がID探索範囲内にある場合(ステップS2601でYes)、帳票仕分装置2は、文字列が数字であるか否かを判断する(ステップS2602)。数字であればIDの候補になり得るからである。文字列が数字である場合(ステップS2602でYes)、帳票仕分装置2は、文字列の桁数が所定の桁数と一致するか否かを判断する(ステップS2603)。帳票のIDにはあらかじめ桁数が決められているからである。文字数の桁数が所定の桁数と一致する場合(ステップS2603でYes)、帳票仕分装置2は、抽出された文字列をIDの候補に設定する(ステップS2604)。
一方、ステップS2601で抽出された文字列の座標がID探索範囲内にない場合(ステップS2601でNo)、ステップS2602で文字列が数字でない場合(ステップS2602でNo)、ステップS2603で文字数の桁数が所定の桁数と一致しない場合(ステップS2603でNo)には、抽出された他の文字列について同様の上記処理が行われる。
帳票仕分装置2は、抽出された文字列のループ処理が終了すると、IDの候補がないか否かを判断する(ステップS2605)。IDの候補がある場合(ステップS2605でNo)、帳票仕分装置2はIDの候補が複数あるか否かを判断する(ステップS2606)。IDの候補が複数ある場合(ステップS2606でYes)、帳票仕分装置2はID探索範囲の中心からの距離が最も近いIDを選択し(ステップS2607)、選択したIDを返却(特定)する(ステップS2608)。
一方、ステップS2605でIDの候補がない場合(ステップS2605でYes)には帳票のID候補の特定処理を終了する。また、ステップS2606でIDの候補が複数ない場合(ステップS2606でNo)、ステップS2608へ進む。
次に、上記帳票識別結果編集処理のサブルーチンの一例について図27を用いて説明する。帳票仕分装置2は、税区分、収納先、税目、税目補助が特定(設定)されると、これらを上位アプリケーションへ通知するために文字列編集を行う(ステップS2701)。帳票仕分装置2は、文字列編集されたものを返却(特定)する(ステップS2702)。
ここでの文字列編集は、例えば、図35に示すように、帳票ごとに税区分、収納先、税目、税目補助をアンダーバーなどで連結させる。例えば、東京都の法人税(定型)の帳票の場合、都道府県税、東京都、法人税、払込ID(例えば、77)が連結される。なお、帳票が国庫金(定型)の場合、図36に示すように、税区分と税目補助のみが通知されるため、この場合の文字列編集は税区分と税目補助をアンダーバーなどで連結させる。税区分と税目補助のみを連結させるのは、収納先は国と分かっており、帳票の種類の特定が税目の特定であるためである。税目補助は、例えばIDであり、非定型の帳票ではIDが基本的に存在しない。そのため、IDが存在しない場合には税目補助は空欄のまま連結される。図36に示す表では、丸印の欄の項目については通知され、線印の欄の項目については通知されないものとしている。
次に、上記収納先企業名の特定処理(所定文字列による特定)のサブルーチンの一例について図28Aを用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで後述するステップS2801aからステップS2804aをループして処理をする。
帳票仕分装置2は、抽出された文字列の座標が所定範囲にあるか否かを判断する(ステップS2801a)。ここでの所定範囲とは、帳票内の所定の範囲(例えば、見出し部とそれに隣接するデータ部があるとされる範囲)である。なお、見出し部には、加入者名などの所定のキーワードがあり、データ部には収納先の企業名などがある。
帳票仕分装置2は、抽出された文字列の座標が所定範囲にある場合(ステップS2801aでYes)、抽出された文字列と、収納先企業名テーブル267との突合わせをする(ステップS2802a)。収納先企業名テーブル267との突合わせ処理については後述する。帳票仕分装置2は、突合わせ結果があるか判断する(ステップS2803a)。具体的には、収納先企業名テーブル267に、抽出された文字列と一致又は部分一致するキーワードがあるか否かを判断する。帳票仕分装置2は、突合わせ結果がある場合(ステップS2803aでYes)、当該キーワードに対応する企業名を収納先企業名の候補に設定する(ステップS2804a)。そして、抽出された文字列が他にあれば同様のループ処理が行われる。
一方、突合わせ結果がない場合(ステップS2803aでNo)、抽出された文字列が他にあれば同様のループ処理が行われる。ループ処理が終了すると、帳票仕分装置2は、収納先企業名の候補があるか否かを判断する(ステップS2805a)。候補がある場合(ステップS2805aでYes)、収納先企業名を返却(特定)する(ステップS2806a)。
次に、上記収納先企業名の特定処理(キーワード検索による特定)のサブルーチンの一例について図28Bを用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで後述するステップS2801bからステップS2803bをループして処理をする。
帳票仕分装置2は、抽出された文字列と、収納先企業名テーブル267との突合わせをする(ステップS2802b)。帳票仕分装置2は、突合わせ結果があるか判断する(ステップS2802b)。具体的には、収納先企業名テーブル267に、抽出された文字列と一致又は部分一致するキーワードがあるか否かを判断する。帳票仕分装置2は、突合わせ結果がある場合(ステップS2802bでYes)、当該キーワードに対応する企業名を収納先企業名の候補に設定する(ステップS2803b)。そして、抽出された文字列が他にあれば同様のループ処理が行われる。
一方、突合わせ結果がない場合(ステップS2802bでNo)、抽出された文字列が他にあれば同様のループ処理が行われる。ループ処理が終了すると、帳票仕分装置2は、収納先企業名の候補があるか否かを判断する(ステップS2804b)。候補がある場合(ステップS2804bでYes)、帳票仕分装置2は、収納先企業名の候補が複数あるか否かを判断する(ステップS2805b)。候補が複数ある場合(ステップS2805bでYes)、帳票仕分装置2は、候補数が最も多い収納先企業名を選択し(ステップS2806b)、選択した収納先企業名を返却(特定)する(ステップS2807b)。
一方、収納先企業名の候補がない場合(ステップS2804bでNo)には収納先企業名の特定処理(キーワード検索による特定)を終了する。また、収納先企業名の候補が複数ない場合(ステップS2805bでNo)には、ステップS2807bへ進む。
次に、上記収納先企業名テーブル267との突合わせ処理のサブルーチンの一例について図40を用いて説明する。帳票仕分装置2は、抽出された文字列と、収納先企業名テーブル267(キーワード)を突合わせする(ステップS4001)。帳票仕分装置2は、一致するキーワードが収納先企業名テーブル267にあるか否かを判断する(ステップS4002)。一致するキーワードがある場合(ステップS4002でYes)、帳票仕分装置2は、突合わせ結果を返却(特定)する(ステップS4003)。
一致するキーワードがない場合(ステップS4002でNo)、帳票仕分装置2は抽出された文字列と部分一致するキーワードが収納先企業名テーブル267にあるか否かを判断する(ステップS4004)。
ここで、部分一致するキーワードがあるか否かの判断について説明する。抽出された文字列の一部が汚れなどのノイズによってすべての文字を認識できない場合がある。その場合には、認識できない文字を含む文字列と、収納先企業名テーブル267のキーワードとを突合わせし、抽出された文字列とキーワードの文字の一致率を算出する。算出された一致率が所定の一致率以上の場合には、抽出された文字列に部分一致するキーワードがあるとする。
例えば、抽出された文字列が京東○力であるとする。○の部分はノイズによって認識できない文字である。この場合、帳票仕分装置2は、抽出された京東○力と、収納先企業名テーブル267とを突合わせする。収納先企業名テーブル267に京東電力というキーワードが存在する場合、1文字目の京、2文字目の東、4文字目の力という文字についてはそれぞれ一致する。そのため、4文字中3文字が一致するため、一致率は75%である。所定の一致率が75%である場合、京東電力は京東○力に部分一致するキーワードとなる。なお、比較する文字数に応じて所定の一致率を変化させてもよい。すなわち、図37に示すように、比較する文字数が増えると所定の一致率を下げるようにしてもよい。
また、抽出された文字列の認識の結果、京東○力が1つではなく複数認識された場合について考える。すなわち、抽出された文字列の擦れやにじみなどにより複数の候補(例えば、2つの候補)がある場合について考える。この場合、それぞれの候補の文字の組合せによる文字列とキーワードとの一致率が所定の一致率以上である場合には、キーワードは組合せの文字列に部分一致するものとされる。例えば、第1候補が京束○力、第2候補が束東○力とする。第1候補と第2候補の文字を組み合わせると、京東○力と束束○力の2つの文字列となる。それぞれの文字列と収納先企業名テーブル267の京東電力をいうキーワードとを突合わせすると、京東○力は一致率75%であり、束束○力は一致率25%である。この結果から一致率が所定の一致率75%以上の文字列の組合せが存在するため、抽出された文字列に部分一致するキーワード(京東電力)があるとされる。
図40の説明に戻り、ステップS4004で部分一致するキーワードがある場合(ステップS4004でYes)、帳票仕分装置2は、キーワードに対する企業名を取得する(ステップS4005)。一方、部分一致するキーワードがない場合(ステップS4004でNo)、帳票仕分装置2は、抽出された文字列と、ユーザによってカスタマイズされた収納先企業名テーブル(ユーザ用)(キーワード)267aとの突合わせをする(ステップS4006)。帳票仕分装置2は、カスタマイズされた収納先企業名テーブル(ユーザ用)267aに抽出された文字列と一致するキーワードがあるか否かを判断する(ステップS4007)。帳票仕分装置2は、一致するキーワードが収納先企業名テーブル(ユーザ用)267aにある場合(ステップS4007でYes)、突合わせ結果を返却(特定)する(ステップS4003)。
一方、一致するキーワードが収納先企業名テーブル(ユーザ用)267aにない場合(ステップS4007でNo)、帳票仕分装置2は、抽出された文字列と部分一致するキーワードがあるか否かを判断する(ステップS4008)。部分一致するキーワードがある場合(ステップS4008でYes)、帳票仕分装置2は、キーワードに対する企業名を取得する(ステップS4009)。一方、部分一致するキーワードがない場合(ステップS4008でNo)には、収納先企業名テーブルとの突合わせ処理を終了する。
なお、抽出された文字列を認識した結果、複数の候補(例えば、2つの候補)となる場合もある。例えば、第1候補が京束雷力、第2候補が束東電力となる場合である。この場合、第1候補、第2候補ともに収納先企業名テーブル267のキーワードの京東電力に一致しない。しかし、第1候補と第2候補の文字の組合せ、例えば第1候補の1文字目の京と、第2候補の2〜4文字目の東電力との組合せは、京東電力となり、収納先企業名テーブル267のキーワードの京東電力と一致する。このように、認識の結果、複数の候補となる場合には、それぞれの候補の文字を組み合わせた文字列と、収納先企業名テーブル267のキーワードが一致するか否かを判断するようにしてもよい。これにより、認識がしにくい文字列であっても正確に収納情報を特定することができる。
次に、上記税目の特定処理(所定文字列による特定)のサブルーチンの一例について図29を用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで後述するステップS2901からステップS2904をループして処理をする。
帳票仕分装置2は、抽出された文字列が所定範囲(領域)にあるか否かを判断する(ステップS2901)。所定範囲にある場合(ステップS2901でYes)、帳票仕分装置2は、OCR文字列の候補があるか確認するため、抽出された文字列が39桁の文字列か否かを判断する(ステップS2902)。抽出された文字列が39桁の場合(ステップS2902でYes)、帳票仕分装置2は、文字列が数字であるか否かを判断する(ステップS2903)。文字列が数字である場合(ステップS2903でYes)、帳票仕分装置2は、OCR文字列の候補に設定する(ステップS2904)。
なお、抽出された文字列が所定範囲にない場合(ステップS2901でNo)、抽出された文字列が39桁でない場合(ステップS2902でNo)、文字列が数字でない場合(ステップS2903でNo)には、抽出された他の文字列について同様の上記ループ処理が行われる。
抽出された文字列の数の分のループ処理が終了すると、帳票仕分装置2は、OCR文字列の候補があるか否かを判断する(ステップS2905)。OCR文字列の候補がある場合(ステップS2905でYes)、帳票仕分装置2は、指定された桁(例えば、32から34桁)の文字列を抽出し、税目IDに設定する(ステップS2906)。帳票仕分装置2は、設定された税目IDと、税目IDテーブル263(税目ID)とを突合わせする(ステップS2907)。帳票仕分装置2は、設定された税目IDに一致する税目IDが税目IDテーブル263にあるか否かを判断する(ステップS2908)。一致する税目IDがある場合(ステップS2908でYes)、帳票仕分装置2は、税目IDに対応する税目を取得し(ステップS2909)、税目を返却(特定)する(ステップS2910)。
一方、OCR文字列の候補がない場合(ステップS2905でNo)や、一致する税目IDがない場合(ステップS2908でNo)には、税目の特定処理(所定文字列による特定)を終了する。
次に、上記収納先地公体名の特定処理(所定文字列による特定)のサブルーチンの一例について図30を用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで後述するステップS3001からステップS3004をループして処理をする。
帳票仕分装置2は、抽出された文字列が所定範囲(領域)にあるか否かを判断する(ステップS3001)。所定範囲にある場合(ステップS3001でYes)、帳票仕分装置2は、OCR文字列の候補があるか確認するため、抽出された文字列が39桁か否かを判断する(ステップS3002)。抽出された文字列が39桁の場合(ステップS3002でYes)、帳票仕分装置2は、文字列が数字であるか否かを判断する(ステップS3003)。文字列が数字である場合(ステップS3003でYes)、帳票仕分装置2は、OCR文字列の候補に設定する(ステップS3004)。
なお、抽出された文字列が所定範囲にない場合(ステップS3001でNo)、抽出された文字列が39桁でない場合(ステップS3002でNo)、文字列が数字でない場合(ステップS3003でNo)には、抽出された他の文字列について同様の上記ループ処理が行われる。
抽出された文字列の数の分のループ処理が終了すると、帳票仕分装置2は、OCR文字列の候補があるか否かを判断する(ステップS3005)。OCR文字列の候補がある場合(ステップS3005でYes)、帳票仕分装置2は、指定された桁(例えば、26から30桁)の文字列を抽出し、地公体コードに設定する(ステップS3006)。帳票仕分装置2は、設定された地公体コードと、地公体テーブル266(地公体コード)とを突合わせする(ステップS3007)。帳票仕分装置2は、設定された地公体コードに一致する地公体コードが地公体テーブル266にあるか否かを判断する(ステップS3008)。一致する地公体コードがある場合(ステップS3008でYes)、帳票仕分装置2は、地公体コードに対応する地公体名を取得し(ステップS3009)、地公体名を返却(特定)する(ステップS3010)。
一方、OCR文字列の候補がない場合(ステップS3005でNo)や、一致する地公体コードがない場合(ステップS3008でNo)には、収納先地公体名の特定処理(所定文字列による特定)を終了する。
次に、上記帳票の特定処理(キーワード検索による特定)のサブルーチンの一例について図31を用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで文字列の文字数分のループ処理をする。
帳票仕分装置2は、抽出された文字列と、税区分キーワードテーブル264(キーワード)との突合わせをする(ステップS3101)。帳票仕分装置2は、税区分キーワードテーブル264に、抽出された文字列と一致するキーワードがあるか否かを判断する(ステップS3102)。帳票仕分装置2は、抽出された文字列と一致するキーワードが税区分キーワードテーブル264にある場合(ステップS3102でYes)、当該キーワードに対する税区分を取得し(ステップS3103)、税区分の候補に設定する(ステップS3104)。
一方、抽出された文字列と一致するキーワードが税区分キーワードテーブル264にない場合(ステップS3102でNo)、抽出された文字列の突合わせの先頭を1文字ずらす(ステップS3105)。抽出された文字列の中に、税区分キーワードテーブル264のキーワードが含まれているか確認するためである。含まれていれば、そのキーワードに対応する税区分を取得し、候補に設定する。例えば、抽出された文字列が7つの文字(○○市電気料金)から構成される文字列の場合、7つの文字の文字列と税区分キーワードテーブル264との突合わせをする。税区分キーワードテーブル264に電気料金というキーワードがある場合、○○市電気料金と電気料金を突合わせしても一致(完全一致)しない。
そこで、例えば、文字列の突合わせの先頭を一文字ずつずらしていく。これにより、まず、○○市電気料金と電気料金が突合わせされる。この場合、一致しないため、先頭から1文字ずらして○市電気料金と電気料金が突合わせされる。この場合も一致しないため、1文字ずらして市電気料料金と電気料金が突合わせさせる。この場合も一致しないため、1文字ずらして電気料金と電気料金が突合わせされる。この場合、一致するため、ステップS3103へ進むことになる。これにより、文字列中にキーワードが含まれている場合には、突合わせで一致させることができ、税区分が何かを把握することが可能となる。
ループ処理が終了すると、帳票仕分装置2は、税区分の候補があるか否かを判断する(ステップS3106)。候補がある場合(ステップS3106でYes)、帳票仕分装置2は、税区分の候補が複数あるか否かを判断する(ステップS3107)。候補が複数ある場合(ステップS3107でYes)、帳票仕分装置2は、候補数が最も多い税区分を選択し(ステップS3108)、選択した税区分を返却(特定)する(ステップS3109)。
一方、税区分の候補がない場合(ステップS3106でNo)には帳票の特定処理を終了する。また、税区分の候補が複数ない場合(ステップS3107でNo)には、ステップS3109へ進む。
次に、上記税目の特定処理(キーワード検索による特定)のサブルーチンの一例について図32を用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで文字列の文字数分のループ処理をする。
帳票仕分装置2は、抽出された文字列と、税目テーブル265(キーワード)との突合わせをする(ステップS3201)。帳票仕分装置2は、税目テーブル265に抽出された文字列と一致するキーワードがあるか否かを判断する(ステップS3202)。帳票仕分装置2は、抽出された文字列と一致するキーワードが税目テーブル265にある場合(ステップS3202でYes)、キーワードに対する税目を取得し(ステップS3203)、税目の候補に設定する(ステップS3204)。
一方、一致するキーワードが税目テーブル265にない場合(ステップS3202でNo)、帳票仕分装置2は、抽出された文字列と部分一致のキーワードがあるか否かを判断する(ステップS3205)。部分一致するキーワードがあるか否かの判断については、上記説明と同様であり説明を省略する。ただし、抽出された文字列の文字数と税目テーブル265のキーワードの文字数が同一でない場合がある。その場合における一致率の算出は、例えばそれぞれの最後尾から数えて所定の文字数までの文字列同士で行う。例えば、抽出された文字列が5文字、税目テーブル265のキーワードが4文字の場合、少ない文字数(この場合は4)を所定の文字数とし、最後尾の文字を含めた4文字の文字列間で一致率を算出する。
部分一致のキーワードがある場合(ステップS3205でYes)、帳票仕分装置2は、部分一致したキーワードに対する税目を取得する(ステップS3203)。一方、部分一致のキーワードがない場合(ステップS3205でNo)、帳票仕分装置2は、抽出された文字列と、ユーザによってカスタマイズされた税目テーブル(ユーザ用)265a(キーワード)との突合わせをする(ステップS3206)。帳票仕分装置2は、カスタマイズされた税目テーブル(ユーザ用)265aに抽出された文字列と一致するキーワードがあるか否かを判断する(ステップS3207)。帳票仕分装置2は、抽出された文字列と一致するキーワードが税目テーブル(ユーザ用)265aにある場合(ステップS3207でYes)、キーワードに対する税目を取得し(ステップS3208)、税目の候補に設定する(ステップS3204)。
一方、抽出された文字列と一致するキーワードが税目テーブル(ユーザ用)265aにない場合(ステップS3207でNo)、帳票仕分装置2は部分一致のキーワードがあるか否かを判断する(ステップS3209)。部分一致のキーワードがある場合(ステップS3209でYes)、帳票仕分装置2は、部分一致のキーワードに対する税目を取得する(ステップS3208)。
一方、部分一致のキーワードがない場合(ステップS3209でNo)、図31で説明したように、文字列の突合わせの先頭を一文字ずらし(ステップS3210)、再度突合わせを行う。
ループ処理が終了すると、帳票仕分装置2は、税目の候補があるか否かを判断する(ステップS3211)。候補がある場合(ステップS3211でYes)、帳票仕分装置2は、税目の候補が複数あるか否かを判断する(ステップS3212)。候補が複数ある場合(ステップS3212でYes)、帳票仕分装置2は、候補数が最も多い税目を選択し(ステップS3213)、選択した税目を返却(特定)する(ステップS3214)。
一方、税目の候補がない場合(ステップS3211でNo)には税目の特定処理を終了する。また、税目の候補が複数ない場合(ステップS3212でNo)には、ステップS3214へ進む。
次に、上記収納先地公体名の特定(キーワード検索による特定)処理のサブルーチンの一例について図33を用いて説明する。帳票仕分装置2は、抽出される文字列の数の分が終了するまで後述するステップS3301からステップS3309をループして処理をする。
帳票仕分装置2は、抽出された文字列と、地公体テーブル266の地公体コードとの突合わせをする(ステップS3301)。帳票仕分装置2は、地公体テーブル266の地公体コードに抽出された文字列と一致するコードがあるか否かを判断する(ステップS3302)。帳票仕分装置2は、抽出された文字列と一致する地公体コードが地公体テーブル266にある場合(ステップS3302でYes)、地公体コードに対する地公体名を取得し(ステップS3303)、地公体名の候補に設定する(ステップS3304)。
一方、抽出された文字列と一致するコードが地公体テーブル266にない場合(ステップS3302でNo)、帳票仕分装置2は、文字列の文字数分が終了するまでループ処理をする。帳票仕分装置2は、抽出された文字列と、地公体テーブル266の地公体名との突合わせをする(ステップS3305)。帳票仕分装置2は、地公体テーブル266の地公体名に抽出された文字列と一致する地公体名があるか否かを判断する(ステップS3306)。帳票仕分装置2は、抽出された文字列と一致する地公体名が地公体テーブル266にある場合(ステップS3306でYes)、地公体名の候補に設定する(ステップS3304)。
一方、抽出された文字列と一致する地公体名が地公体テーブル266にない場合(ステップS3306でNo)、帳票仕分装置2は部分一致のキーワードがあるか否かを判断する(ステップS3307)。部分一致するキーワードがあるか否かの判断については、上記説明と同様であり説明を省略する。また、抽出された文字列の文字数と地公体テーブル266の地公体名の文字数が同一でない場合における一致率の算出についても、上記説明と同様であり説明を省略する。部分一致のキーワードがある場合(ステップS3307でYes)、帳票仕分装置2は、部分一致した地公体名を地公体テーブル266の地公体名に置き換える(ステップS3308)。
一方、部分一致のキーワードがない場合(ステップS3307でNo)、図31で説明したように、文字列の突合わせの先頭を1文字ずらし(ステップS3309)、再度突合わせを行う。
ループ処理が終了すると、帳票仕分装置2は、地公体の候補があるか否かを判断する(ステップS3310)。候補がある場合(ステップS3310でYes)、帳票仕分装置2は、地公体の候補が複数あるか否かを判断する(ステップS3311)。候補が複数ある場合(ステップS3311でYes)、帳票仕分装置2は、候補数が最も多い地公体名を選択し(ステップS3312)、選択した地公体名を返却(特定)する(ステップS3313)。
一方、地公体名の候補がない場合(ステップS3310でNo)には収納先地公体の特定処理を終了する。また、地公体名の候補が複数ない場合(ステップS3311でNo)には、ステップS3313へ進む。
なお、図28における説明と同様、抽出された文字列が擦れやにじみなどにより複数の候補として認識される場合がある。その場合、複数の文字列の文字の組合せが地公体テーブル266の地公体名にあれば、抽出された文字列は地公体テーブル266の地公体名と一致するとしてもよい。これにより、認識がしにくい文字列であっても正確に収納情報を特定することができる。
次に、実施の形態に係る帳票仕分装置2を実現するためのハードウェア構成の一例について図34を用いて説明する。ハードウェア構成は、例えば、CPU341、HDD(Hard Disk Drive)342、RAM(Random Access Memory)343、ROM(Read Only Memory)344、グラフィック処理装置345、入力インタフェース(I/F)346、通信インタフェース(I/F)347、バス348を備えている。CPU341、HDD342、RAM343、ROM344、グラフィック処理装置345、入力インタフェース(I/F)346、通信インタフェース(I/F)347は、例えば、バス348を介して互いに接続されている。
CPU341は、バス348を介して、HDD342などに格納される帳票仕分装置2の各種処理を行うためのプログラム(例えば、帳票仕分プログラムなど)を読み込み、読み込んだプログラムをRAM343に一時的に格納し、そのプログラムにしたがって各種処理を行うものである。
HDD342には、帳票仕分装置2の各種処理を行うためのアプリケーションプログラムや、帳票仕分装置2の処理に必要なデータなどが格納される。
RAM343は、揮発性メモリであって、CPU341に実行させるためのOS(Operating System)プログラムやアプリケーションプログラムの一部が一時的に格納される。また、RAM343には、CPU341による処理に必要な各種データが格納される。
ROM344は、不揮発性メモリであって、ブートプログラムやBIOS(Basic Input/Output System)などのプログラムを記憶する。
グラフィック処理装置345は、不図示のモニタと接続可能であって、モニタに表示させる情報を生成するものである。
入力インタフェース(I/F)346は、不図示のキーボードやマウスなどを介して入力される情報を受け付けるものである。
通信インタフェース(I/F)347は、外部(スキャナ3やサーバ4など)とネットワークを介してデータの送受信を行うものである。
バス348は、各装置間の制御信号、データ信号などの授受を媒介する経路である。
上述したような帳票仕分装置2(帳票仕分プログラム)によれば、事前に帳票を入手することなく、レイアウトの異なるすべての帳票を仕分けすることができる。
なお、上述した実施の形態では、帳票仕分装置2の主な処理をCPUによるソフトウェア処理によって実行するものとして説明したが、この処理の全部又は一部をハードウェアによって実現するようにしてもよい。
また、上述した実施の形態は、上述したものに限定されるものではなく、実施の形態の要旨を逸脱しない範囲において種々の変更を加えることができる。
1 帳票仕分システム
2 帳票仕分装置
3 スキャナ
4 サーバ
20 スキャナ制御部
21 文字認識処理部
22 帳票種類識別処理部
23 認識方式選択処理部
24 収納先特定処理部
25 認識結果補正部
26 格納部
260 活字文字認識辞書テーブル
261 国庫金帳票IDテーブル
262 払込IDテーブル
263 税目IDテーブル
264 税区分キーワードテーブル
265 税目テーブル
265a 税目テーブル(ユーザ用)
266 地公体テーブル
267 収納先企業名テーブル
267a 収納先企業名テーブル(ユーザ用)
50、70 ID探索範囲
341 CPU
342 HDD
343 RAM
344 ROM
345 グラフィック処理装置
346 入力インタフェース
347 通信インタフェース
348 バス

Claims (6)

  1. 複数種類の帳票の仕分けを可能とする帳票仕分装置による帳票仕分プログラムであって、
    帳票の読取装置によって読み取られた前記帳票に含まれるIDに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、
    前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、
    前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを、
    前記帳票仕分装置のコンピュータに実行させることを特徴とする帳票仕分プログラム。
  2. 前記帳票が前記非定型の帳票であると判断された場合、前記連続する行単位の文字列と前記所定のテーブルを突合わせし、前記文字列が前記キーワードに一致しない場合、前記文字列の突合わせの先頭を一文字ずつずらして前記突合わせを行い、一致したキーワードに基づいて前記収納情報を特定することを特徴とする請求項1に記載の帳票仕分プログラム。
  3. 前記先頭をずらした前記突合わせによって一致するキーワードが存在しない場合、前記各文字列と前記所定のテーブルのキーワードとの一致率を算出するステップと、
    算出された前記一致率が所定の一致率以上の場合に、該当する前記文字列を前記所定のテーブルの当該キーワードに置き換えて、前記収納情報を特定することを特徴とする請求項2に記載の帳票仕分プログラム。
  4. 算出された前記一致率が前記所定の一致率以上でない場合、
    ユーザによってカスタマイズされたテーブルに前記文字列に該当するキーワードが存在するか否かを判断するステップを更に有することを特徴とする請求項3に記載の帳票仕分プログラム。
  5. 複数種類の帳票の仕分けを可能とする帳票仕分装置であって、
    帳票の読取装置によって読み取られた前記帳票に含まれるIDに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断する判断部と、
    前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定し、
    前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定する特定部とを、
    備えることを特徴とする帳票仕分装置。
  6. 複数種類の帳票の仕分けを可能とする帳票仕分方法であって、
    帳票の読取装置によって読み取られた前記帳票に含まれるIDに基づいて、前記帳票が定型の帳票か又は非定型の帳票かを判断するステップと、
    前記帳票が前記定型の帳票であると判断された場合、前記帳票の所定領域の文字列と、キーワードと収納に関する収納情報とを関連付けた所定のテーブルに基づいて、前記収納情報を特定するステップと、
    前記帳票が前記非定型の帳票であると判断された場合、前記帳票全体において抽出された連続する行単位の文字列と、前記所定のテーブルに基づいて、前記収納情報を特定するステップとを、
    有することを特徴とする帳票仕分方法。
JP2016193607A 2016-09-30 2016-09-30 帳票仕分プログラム、帳票仕分装置及び帳票仕分方法 Pending JP2018055578A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016193607A JP2018055578A (ja) 2016-09-30 2016-09-30 帳票仕分プログラム、帳票仕分装置及び帳票仕分方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016193607A JP2018055578A (ja) 2016-09-30 2016-09-30 帳票仕分プログラム、帳票仕分装置及び帳票仕分方法

Publications (1)

Publication Number Publication Date
JP2018055578A true JP2018055578A (ja) 2018-04-05

Family

ID=61836832

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016193607A Pending JP2018055578A (ja) 2016-09-30 2016-09-30 帳票仕分プログラム、帳票仕分装置及び帳票仕分方法

Country Status (1)

Country Link
JP (1) JP2018055578A (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320488A (ja) * 1997-05-21 1998-12-04 Hitachi Ltd データエントリ方法及び装置
JP2008077454A (ja) * 2006-09-22 2008-04-03 Matsushita Electric Ind Co Ltd タイトル抽出装置、画像読取装置、タイトル抽出方法、及びタイトル抽出プログラム
JP2011076390A (ja) * 2009-09-30 2011-04-14 Fujitsu Frontech Ltd マーク項目認識装置、マーク項目認識方法及びマーク項目認識プログラム
JP2014016762A (ja) * 2012-07-09 2014-01-30 Hitachi Omron Terminal Solutions Corp 帳票認識装置および帳票認識方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320488A (ja) * 1997-05-21 1998-12-04 Hitachi Ltd データエントリ方法及び装置
JP2008077454A (ja) * 2006-09-22 2008-04-03 Matsushita Electric Ind Co Ltd タイトル抽出装置、画像読取装置、タイトル抽出方法、及びタイトル抽出プログラム
JP2011076390A (ja) * 2009-09-30 2011-04-14 Fujitsu Frontech Ltd マーク項目認識装置、マーク項目認識方法及びマーク項目認識プログラム
JP2014016762A (ja) * 2012-07-09 2014-01-30 Hitachi Omron Terminal Solutions Corp 帳票認識装置および帳票認識方法

Similar Documents

Publication Publication Date Title
CN108090823B (zh) 基于SaaS的账务数据管理系统
Borrego et al. Transformative agreements: Do they pave the way to open access?
CN107608958B (zh) 基于条款统一建模的合同文本风险信息挖掘方法和系统
US20080249936A1 (en) Bill paying systems and associated methods
Dener Financial management information systems and open budget data: do governments report on where the money goes?
KR101783476B1 (ko) 원천 데이터 제공에 따른 수익 분배 및 데이터 거래 서비스 제공 방법
CN109753964A (zh) 计算机以及文件识别方法
CN111611487A (zh) 一种股票信息应用分析系统
CN113205402A (zh) 对账方法、装置、电子设备及计算机可读介质
CN116384889A (zh) 基于自然语言处理技术的情报大数据智能分析方法
Macan et al. David among Goliaths: Open access publishing in scientific (semi‐) periphery
CN105359172A (zh) 计算企业存在拖欠的概率
Greenstone et al. Mandatory disclosure would reveal corporate carbon damages
Abrantes et al. Big data applied to tax evasion detection: A systematic review
JP2020030517A (ja) 会計処理装置、会計処理方法、会計処理プログラム
JP2018055578A (ja) 帳票仕分プログラム、帳票仕分装置及び帳票仕分方法
CN112184419A (zh) 为客户提供服务的方法和装置
JP6402397B1 (ja) 会計処理装置、会計処理方法、会計処理プログラム
CN110750302A (zh) 一种会计用流水线做账方法
Battanta et al. Regtech: Case studies of cooperation with banks in italy
KR20150097838A (ko) 패턴 데이터베이스를 이용한 계정추천 및 전표생성 시스템 및 그 제공방법
KR102124187B1 (ko) 수치정보를 이용한 컨텐츠 제공장치
KR20220102745A (ko) 기업-품목별 공급망 위험 진단-가시화 및 글로벌 특허 빅데이터 기반 국내-글로벌 서플라이 체인 추천 시스템
US20230394434A1 (en) Multi-entity platform using uniform labeling of data products and services
US12001446B2 (en) System and method for extracting data from invoices and contracts

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190806

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200310