以下、伝票処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、伝票の一覧表において、各伝票データの原始データの種類を伝票データに対応付けて表示可能な伝票処理システムについて説明する。なお、伝票データに対応付けて表示された原始データの種類は、伝票データの中に含まれていても良い。
また、伝票データの原始データとは、伝票データの元になった情報であり、例えば、領収書画像、銀行の取引情報、クレジットカードの取引情報等である。伝票データの原始データの種類は、伝票データの取引の種類である、と考えても良い。
また、本実施の形態において、伝票データの一覧表の中でフォーカスされているレコードに対する原始データを表示する伝票処理システムについて説明する。
また、本実施の形態において、伝票データの一覧表の中でフォーカスされているレコードに対する原始データの種類に応じて、画面レイアウトを変更する画面制御を行う伝票処理システムについて説明する。
また、本実施の形態において、伝票データの一覧表の中でフォーカスされているレコードに対する原始データと同一の種類の原始データのみを自動的にフィルタリングし、1または2以上の原始データを表示する伝票処理システムについて説明する。
また、本実施の形態において、原始データの種類をアイコンで視覚的に容易に区別可能なように表示する伝票処理システムについて説明する。
また、本実施の形態において、領収書画像を見ながら伝票データを入力する場合に、伝票データを入力済みの領収書画像と伝票データを入力しなければならない領収書画像との区別が容易にできる伝票処理システムについて説明する。
さらに、本実施の形態において、受け付けられた銀行の取引情報が既に存在する取引情報か否かをチェックすることにより、伝票データの入力を適切に支援できる伝票処理システムについて説明する。
図1は、本実施の形態における伝票処理システムの概念図である。伝票処理システムは、伝票処理装置1、1または2以上の第一端末2、および1または2以上の第二端末3を備える。第一端末2は、通常、顧問先のユーザが使用する端末である。なお、顧問先のユーザは、一般のユーザである。第二端末3は、通常、税理士が使用する端末である。なお、税理士は、会計処理の専門家という意味であり、公認会計士等も含む広い概念である、とする。
図2は、本実施の形態における伝票処理システムのブロック図である。
伝票処理システムを構成する伝票処理装置1は、格納部11、受付部12、処理部13、出力部14を備える。
格納部11は、ユーザ情報格納部111、領収書画像格納部112、銀行取引情報格納部113、カード取引情報格納部114、伝票データ格納部115、画面格納部116、取込ルール格納部117を備える。
受付部12は、入力受付部121、原始データ受付部122を備える。
処理部13は、伝票データ構成部131、種類取得部132、判断部133、蓄積部134、伝票データ取得部135、伝票データフィルタリング部136を備える。
出力部14は、画面出力部141、一覧表出力部142を備える。
第一端末2は、第一受付部21、第一処理部22、第一送信部23、第一受信部24、第一出力部25を備える。
第二端末3は、第二受付部31、第二処理部32、第二送信部33、第二受信部34、第二出力部35を備える。
伝票処理装置1を構成する格納部11は、種々の情報を格納し得る。ここで、情報とは、例えば、2以上の各種類情報に対応する2以上のアイコン、ユーザ情報、領収書画像、銀行取引情報、カード取引情報、伝票データ、画面情報、取引ルール等である。ユーザ情報、領収書画像、銀行取引情報、カード取引情報、伝票データ、取引ルールの詳細については後述する。
なお、上記の画面情報とは、画面を構成するための情報である。画面情報の構造、記述言語等は問わない。画面情報は、例えば、HTML、XML、プログラム言語、スクリプト等で記述されている。また、画面情報は画面そのものでも良い。
また、上記のアイコンとは、押下可能でも、押下可能でなくても良い。アイコンは、図柄、シンボル等でも良く、文字列の情報等でも良く、広く解する。
格納部11を構成するユーザ情報格納部111は、1または2以上のユーザ情報を格納し得る。ユーザ情報は、ユーザに関する情報である。ユーザ情報は、ユーザ識別子を有する。ユーザ情報は、例えば、ユーザの氏名、所属、住所等のユーザの属性値、銀行情報、カード情報を有しても良い。銀行情報は、銀行に関する情報であり、例えば、銀行名、銀行を識別する銀行識別子、銀行を識別するアイコン、口座を特定する情報、口座の種類等を有する情報である。カード情報は、クレジットカードに関する情報であり、例えば、クレジットカードの名称(例えば、VISA(登録商標)、JCB(登録商標)等)、クレジットカードの番号、有効期限、セキュリティーコード等である。
領収書画像格納部112は、領収書の画像である1以上の領収書画像を格納し得る。領収書の画像である1以上の領収書画像を格納し得る。領収書画像のデータ構造は問わない。領収書画像は、例えば、gif、jpeg、png、bmp等のビットマップであるがベクターデータ等でも良い。なお、領収書画像格納部112は、領収書画像と対応付けて以下の情報を有していても良い。かかる情報とは、例えば、領収書画像のファイル名、伝票データとの対応付けがされているか否かの情報(フラグ)、領収書画像を送信したユーザを識別する識別子(その端末の識別子でも良い)、伝票データと領収書画像との対応関係の種類を示す情報等である。対応関係の種類を示す情報である対応関係種類情報とは、例えば、伝票データと領収書画像との対応関係が「1対1」の場合は「対応関係種類情報=1」、「1対n」の場合は「対応関係種類情報=2」、「n対1」の場合は「対応関係種類情報=3」となる。
銀行取引情報格納部113は、1または2以上の銀行取引情報を格納し得る。銀行取引情報は、銀行口座における取り引きの情報である。銀行取引情報は、例えば、日付、摘要、支払い金額、預かり金額、差引残高等の情報を有する。なお、日付は取引の日付である。摘要は、例えば、取引の内容を示す情報である。
カード取引情報格納部114は、1または2以上のカード取引情報を格納し得る。カード取引情報は、クレジットカードを用いた取り引きの情報である。カード取引情報は、例えば、日付、摘要、支払い金額を有する。なお、日付は取引の日付である。摘要は、例えば、取引の内容を示す情報である。
伝票データ格納部115は、伝票データと種類情報との組を1組または2組以上格納し得る。
伝票データは、通常、金額と取り引きの日付とを有する。なお、金額とは取り引きの金額である。伝票データは、例えば、日付、摘要、科目、税区分、入金、出金等の情報を有する。日付は、取り引きの日付である。また、摘要は、例えば、仕訳の説明である。入金は入金された金額、出金は出金された金額である。また、伝票データは、例えば、借方勘定科目、貸方勘定科目、借方税区分、貸方税区分等の情報を有しても良い。
また、種類情報とは、原始データの種類を示す情報である。原始データとは、伝票データの元になるデータである。原始データの種類とは、例えば、領収書の画像である領収書画像、銀行口座における取り引きの情報である銀行取引情報、クレジットカードを利用した取り引きの情報であるカード取引情報のうちの2種類以上である。原始データの種類は、例えば、自動取得されるデータ、手入力される元のデータに分類される。自動取得されるデータは、内容が正しいことが保証されているデータとも言え、例えば、図示しない銀行のサーバ装置から受信された銀行取引ファイルに格納されている1以上の銀行取引情報である。また、自動取得されるデータは、例えば、図示しないクレジットカード会社のサーバ装置から受信されたカード取引ファイルに格納されている1以上のカード取引情報である。さらに、手入力される元のデータとは、例えば、領収書画像である。
また、種類情報は、原始データの種類を識別可能な情報であれば何でも良い。種類情報は、例えば、文字列、アイコン等であり、種類情報のデータタイプは問わない。なお、種類情報に対応付いていない伝票データが存在しても良い。また、伝票データの元になるデータとは、伝票データに対応するデータと言っても良い。
また、1組以上の伝票データと種類情報との組のデータ構造は問わない。1組以上の伝票データと種類情報は、リレーショナルデータベースにおける表であるとは限らず、オブジェクト指向データベースにおけるオブジェクトの集合等でも良い。
画面格納部116は、1以上の画面情報を格納し得る。画面情報は、伝票入力画面の画面情報でも良いし、伝票データの一覧表の画面の画面情報でも良いし、領収書画像を閲覧する画面の画面情報でも良いし、銀行取引情報を閲覧する画面の画面情報でも良いし、カード取引情報を閲覧する画面の画面情報等でも良い。
取込ルール格納部117は、1または2以上の取込ルールを格納し得る。取込ルールは、銀行取引情報またはカード取込情報を取り込むことを決定するためのルールでも良いし、銀行取引情報またはカード取込情報を取り込まないことを決定するためのルールでも良い。
取込ルールは、銀行取引情報またはカード取込情報または伝票データの全部または一部を伝票データ格納部115に蓄積することを決定するためのルールである。また、取込ルールは、銀行取引情報またはカード取込情報または伝票データの全部または一部を伝票データ格納部115に蓄積しないことを決定するためのルールでも良い。
取込ルールは、例えば、取り込む情報が含む「摘要」、「取引先」等である。また、取込ルールは、例えば、取り込まない情報が含む「摘要」、「取引先」等である。なお、取り込む情報または取り込まない情報は、銀行取引情報、またはカード取込情報、または伝票データの全部または一部である。
また、取込ルールは、例えば、特定の取引先を示す情報、特定の摘要を示す情報である。取込ルールが特定の取引先を示す情報である場合、当該取引先に対応する銀行取引情報またはカード取引情報は伝票データを構成しない。また、取込ルールが特定の取引先を示す情報である場合、例えば、当該取引先に対応する銀行取引情報またはカード取引情報のみ伝票データを構成する、としても良い。また、取込ルールが特定の摘要を示す情報である場合、例えば、当該特定の摘要に対応する銀行取引情報またはカード取引情報は伝票データを構成しない。また、取込ルールが特定の摘要を示す情報である場合、例えば、当該特定の摘要に対応する銀行取引情報またはカード取引情報のみ伝票データを構成する、としても良い。
受付部12は、指示や情報等を受け付ける。ここで、受け付けとは、例えば、第一端末2からの受信、第二端末3からの受信、またはユーザからの受け付けである。指示や情報等とは、例えば、原始データ、ユーザからの情報入力、伝票の一覧表の出力の指示である出力指示、伝票データ選択指示等である。なお、原始データとは、例えば、領収書画像、1以上の銀行取引情報、1以上のカード取引情報である。また、情報入力は、例えば、伝票データの入力、伝票データの一部の情報の入力である。情報入力は、例えば、領収書画像に対応付けた伝票データの全部または一部である。
受付部12を構成する入力受付部121は、ユーザからの情報の入力、出力指示、伝票データ選択指示、領収書画像に対応付けた伝票データ、入力情報等を受け付ける。
なお、出力指示とは、伝票の一覧表の出力の指示である。
また、伝票データ選択指示とは、出力されている2以上の伝票データのうちの、一の伝票データに対する指示である。伝票データ選択指示は、例えば、伝票データの一覧表の中の種類情報に対応するアイコンに対する指示である。
領収書画像に対応付けた伝票データとは、領収書画像格納部112に格納されている1以上の領収書画像のうちのいずれかの領収書画像に対応付けた伝票データである。領収書画像に対応付けた伝票データは、例えば、領収書画像の識別子と伝票データとを有する。なお、領収書画像と伝票データとを対応付ける方法は問わない。一の領収書画像を選択した後、伝票データが入力されても良い。
また、入力情報とは、1または2以上の銀行取引情報を含む情報である。1または2以上の銀行取引情報を含む情報は、例えば、1以上の銀行取引情報を含む銀行取引ファイルである。また、入力情報は、1または2以上のカード取引情報を含む情報であっても良い。1以上のカード取引情報を含む情報は、例えば、1以上のカード取引情報を含むカード取引ファイルである。
原始データ受付部122は、伝票データの元になる2種類以上の原始データを受け付ける。原始データは、例えば、第一端末2が送信した1以上の領収書画像である。また、原始データは、例えば、1以上の銀行取引情報である。また、原始データは、例えば、1以上の銀行取引情報を含むファイルである銀行取引ファイルである。また、原始データは、例えば、1以上のカード取引情報である。また、原始データは、例えば、1以上のカード取引情報を含むファイルであるカード取引ファイルである。
処理部13は、各種の処理を行う。各種の処理は、例えば、伝票データ構成処理、種類情報を取得する処理、判断部133における判断処理、伝票データ等の蓄積処理、送信する伝票データの取得処理、伝票データのフィルタリング処理、領収書画像の出力指示の受信に応じて、1以上の領収書画像を有する画面情報を構成する処理等である。また、各種の処理は、例えば、蓄積部134等の処理の結果を構成する処理である。
処理部13を構成する伝票データ構成部131は、原始データ、または原始データと情報入力、または情報入力を用いて、伝票データを構成する。なお、原始データ、情報入力は、受付部12が受け付けた情報である。
種類取得部132は、原始データ受付部122が受け付けた原始データの種類である種類情報を取得する。種類取得部132は、例えば、領収書画像を示す情報、銀行取引情報を示す情報、カード取引情報を示す情報等である。
判断部133は、入力情報に含まれる1または2以上の銀行取引情報が、過去に受け付けられたか否かを判断する。かかる判断処理を第一判断処理という。
判断部133は、例えば、入力情報に含まれる銀行取引情報が有する「日付」「金額」「入金」「残高金額」が同じ銀行取引情報が銀行取引情報格納部113に存在するか否かにより、入力情報に含まれる1または2以上の銀行取引情報が過去に受け付けられたか否かを判断する。また、判断部133は、例えば、入力情報に含まれる銀行取引情報が有する「日付」「金額」「出金」「残高金額」が同じ銀行取引情報が銀行取引情報格納部113に存在するか否かにより、入力情報に含まれる1または2以上の銀行取引情報が過去に受け付けられたか否かを判断しても良い。
また、判断部133は、例えば、入力情報に含まれる銀行取引情報が有する「日付」「金額」「入金」「残高金額」と同じ情報を含む伝票データが伝票データ格納部115に存在するか否かにより、入力情報に含まれる1または2以上の銀行取引情報が過去に受け付けられたか否かを判断しても良い。また、判断部133は、例えば、入力情報に含まれる銀行取引情報が有する「日付」「金額」「出金」「残高金額」がと同じ情報を含む伝票データが伝票データ格納部115に存在するか否かにより、入力情報に含まれる1または2以上の銀行取引情報が過去に受け付けられたか否かを判断しても良い。
なお、ここで、銀行取引情報に対応する伝票データとは、通常、銀行取引情報をすべて含む伝票データである。また、伝票データは、銀行取引情報に含まれる属性値以外の属性値を有しても良い。また、伝票データは、銀行取引情報が有するすべての情報を有しない場合があっても良い。
判断部133は、例えば、銀行取引ファイルに含まれる1または2以上の各銀行取引情報と、入力情報に含まれるユーザ識別子と対になる1以上の銀行取引情報(銀行取引情報格納部113に存在する銀行取引情報)とを用いて、入力情報に含まれる1または2以上の銀行取引情報が過去に受け付けられたか否かを判断する。なお、銀行取引ファイルとは、1以上の銀行取引情報を含むファイルである。
判断部133は、例えば、銀行取引ファイルに含まれる1または2以上の各銀行取引情報と、入力情報に含まれるユーザ識別子と対になる1以上の伝票データとを用いて、入力情報に含まれる1または2以上の銀行取引情報が過去に受け付けられたか否かを判断する。
また、判断部133は、受付部12が受け付けた入力情報に含まれる1または2以上の各銀行取引情報が取込ルールに合致するか否かをも判断しても良い。かかる判断処理を第二判断処理という。
また、判断部133は、入力情報に含まれる1または2以上のカード取引情報が、過去に受け付けられたか否かを判断する。かかる判断処理を第三判断処理という。
判断部133は、例えば、入力情報に含まれるカード取引情報が有する「日付」「金額」「摘要」等と同じカード取引情報がカード取引情報格納部114に存在するか否かにより、入力情報に含まれる1または2以上のカード取引情報が過去に受け付けられたか否かを判断する。
また、判断部133は、例えば、入力情報に含まれるカード取引情報が有する「日付」「金額」「摘要」等と同じ情報を含む伝票データが伝票データ格納部115に存在するか否かにより、入力情報に含まれる1または2以上のカード取引情報が過去に受け付けられたか否かを判断しても良い。
なお、ここで、カード取引情報に対応する伝票データとは、通常、カード取引情報をすべて含む伝票データである。また、伝票データは、カード取引情報に含まれる属性値以外の属性値を有しても良い。また、伝票データは、カード取引情報が有するすべての情報を有しない場合があっても良い。
判断部133は、例えば、カード取引ファイルに含まれる1または2以上の各カード取引情報と、入力情報に含まれるユーザ識別子と対になる1以上のカード取引情報(カード取引情報格納部114に存在するカード取引情報)とを用いて、入力情報に含まれる1または2以上のカード取引情報が過去に受け付けられたか否かを判断する。なお、カード取引ファイルとは、1以上のカード取引情報を含むファイルである。
判断部133は、例えば、カード取引ファイルに含まれる1または2以上の各カード取引情報と、入力情報に含まれるユーザ識別子と対になる1以上の伝票データとを用いて、入力情報に含まれる1または2以上のカード取引情報が過去に受け付けられたか否かを判断する。
また、判断部133は、受付部12が受け付けた入力情報に含まれる1または2以上の各カード取引情報が取込ルールに合致するか否かをも判断しても良い。かかる判断処理を第四判断処理という。
なお、判断部133は、上記の判断処理の結果である判断結果を取得することは好適である。
蓄積部134は、伝票データと種類情報とを対応付けて、伝票データ格納部115に蓄積する。
また、蓄積部134は、原始データ受付部122が受信した領収書画像を領収書画像格納部112に蓄積する。
また、蓄積部134は、入力受付部121が受け付けた1以上の銀行取引情報に対する1以上の伝票データの一部または全部と、銀行取引情報であることを示す種類情報とを対応付けて、伝票データ格納部115に蓄積する。
なお、受け付けられた銀行取引情報が過去に受け付けられていないと、判断部133が判断した場合のみ、蓄積部134は、当該銀行取引情報に対する伝票データの一部または全部と、銀行取引情報であることを示す種類情報とを対応付けて、伝票データ格納部115に蓄積することは好適である。
また、受け付けられた銀行取引情報が過去に受け付けられていない、かつ銀行取引情報が取込ルールに合致すると、判断部133が判断した場合のみ、蓄積部134は、当該銀行取引情報に対する伝票データの一部または全部と、銀行取引情報であることを示す種類情報とを対応付けて、伝票データ格納部115に蓄積することは好適である。
また、蓄積部134は、入力受付部121が受け付けた1以上のカード取引情報に対する1以上の伝票データの一部または全部と、カード取引情報であることを示す種類情報とを対応付けて、伝票データ格納部115に蓄積する。
なお、受け付けられたカード取引情報が過去に受け付けられていないと、判断部133が判断した場合のみ、蓄積部134は、当該カード取引情報に対する伝票データの一部または全部と、カード取引情報であることを示す種類情報とを対応付けて、伝票データ格納部115に蓄積することは好適である。
また、受け付けられたカード取引情報が過去に受け付けられていない、かつカード取引情報が取込ルールに合致すると、判断部133が判断した場合のみ、蓄積部134は、当該カード取引情報に対する伝票データの一部または全部と、カード取引情報であることを示す種類情報とを対応付けて、伝票データ格納部115に蓄積することは好適である。
伝票データ取得部135は、入力受付部121が出力指示を受け付けた場合、伝票データと種類情報との組を、1または2組以上、伝票データ格納部115から取得する。伝票データ取得部135は、1組以上の伝票データと種類情報との組を伝票データ格納部115から取得し、当該1組以上の伝票データと種類情報との組から一覧表を構成することは好適である。
伝票データフィルタリング部136は、伝票データ選択指示に対応する一の伝票データと対になる種類情報と同一の種類情報と対になる1以上の伝票データを伝票データ格納部115から取得する。
出力部14は、各種の情報を出力する。各種の情報とは、伝票データを含む一覧表、1以上の領収書画像、1以上の銀行取引情報、1以上のカード取引情報、画面情報等である。画面情報とは、第一端末2または第二端末3で出力される画面を構成する情報である。また、一覧表の出力態様は問わないことは言うまでもない。また、一覧表とは、伝票データを含む元帳等も含まれ、広く解する。一覧表とは、通常、2以上の伝票データの全部または一部を含む情報である。また、一覧表は、一の伝票データの全部または一部を含む情報である場合もあり得る、としても良い。また、ここでの出力とは、通常、外部の装置(例えば、第一端末2、第二端末3)への送信であるが、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
出力部14は、領収書画像を出力する場合に、領収書画像に対応付く対応関係の種類を視覚的に区別可能に表示するように、領収書画像を出力することは好適である。
出力部14は、1以上の伝票データを出力し、かつ伝票データと領収書画像との対応関係が1対1である場合とn対1である場合とを視覚的に区別可能に表示するように、伝票データまたは領収書画像を出力することは好適である。
出力部14は、1以上の伝票データを出力し、かつ伝票データと領収書画像との対応関係が1対1である場合と1対nである場合とを視覚的に区別可能に表示するように、伝票データまたは領収書画像を出力することは好適である。
出力部14は、1以上の伝票データと、1以上の領収書画像と、電卓として機能する電卓領域と、日付入力のためのカレンダー領域とを有する伝票入力画面を出力することは好適である。
出力部14は、1以上の領収書画像ごとに、各領収書画像を操作する1以上のボタンを、各領収書画像に対応付ける態様で配置することは好適である。ここで、出力部14は、すべての領収書画像に1以上のボタンを配置する必要はない。出力部14は、通常、2以上の各領収書画像に1以上のボタンを配置する。ここで、領収書画像に対して配置される1以上のボタンは、例えば、領収書画像を拡大するためのボタン、領収書画像を縮小するためのボタン、領収書画像を回転させるためのボタン等である。
画面出力部141は、伝票データ選択指示に対応する一の伝票データと対になる種類情報に応じた画面であり、種類情報により異なる画面を出力する。ここで、画面は、例えば、領収書画像の確認用の画面、銀行取引情報の確認用の画面、カード取引情報の確認用の画面などである。
一覧表出力部142は、伝票データ取得部135が取得した1組以上の伝票データと種類情報との組を、各伝票データと各種類情報とが対応付く態様で出力する。
また、一覧表出力部142は、伝票データ取得部135が取得した2組以上の伝票データと種類情報との組を、各伝票データと各種類情報とが対応付く態様で出力することは好適である。
また、一覧表出力部142は、伝票データフィルタリング部136が取得した1以上の伝票データを出力することは好適である。
また、一覧表出力部142は、種類情報に対応するアイコンを出力することは好適である。
また、一覧表出力部142は、伝票データ取得部135が取得した1以上の伝票データを一覧表の形式で出力し、かつ1以上の各伝票データに対応付く態様で、種類情報に対応するアイコンを出力することは好適である。ここで、一覧表とは、通常、表形式であるが、2以上の伝票データを含む出力であれば良い。なお、伝票データは1つの場合もあり得る。
第一端末2を構成する第一受付部21は、ユーザから指示や情報等を受け付ける。指示や情報等とは、例えば、領収書画像、1以上の銀行取引情報、銀行取引ファイル、1以上のカード取引情報、カード取引ファイル、出力指示、伝票データ選択指示、ソフトウェアの起動指示、領収書画像の閲覧指示、1以上の領収書画像の選択、伝票データの入力等である。指示や情報等の入力手段は、キーボードやマウスやスキャナやメニュー画面によるもの等、何でも良い。第一受付部21は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。なお、ソフトウェアの起動指示は、例えば、会計ソフトの起動指示である。また、本ソフトウェアは、例えば、伝票処理装置1にアクセスして、種々の会計処理のための入力等を行うソフトウェアである。
上述したように、第一受付部21は、領収書画像を受け付けるが、ここでの受け付けとは、写真の撮影、スキャナでも読み込みなどである。
第一処理部22は、各種の処理を行う。第一処理部22は、例えば、第一受付部21が受け付けた指示や情報等に、第一端末2を識別する第一端末識別子を付与し、送信する指示や情報等を構成する処理である。なお、第一端末識別子は、図示しない記録媒体に格納されている、とする。第一処理部22は、例えば、ソフトウェアの起動処理を行う。
また、第一処理部22は、伝票入力画面における電卓領域に対する入力を処理し、電卓機能を実現する。
また、第一処理部22は、伝票入力画面におけるカレンダー領域に対する入力を処理し、入力された日付を取得する。
第一送信部23は、第一受付部21が受け付けた指示や情報等を伝票処理装置1に送信する。指示や情報等は、例えば、領収書画像である。また、第一送信部23は、第一処理部22が構成した指示や情報等を伝票処理装置1に送信する。
第一受信部24は、伝票処理装置1から情報等を受信する。情報等とは、例えば、伝票データの一覧表、伝票処理装置1における処理結果等である。処理結果は、例えば、領収書画像が登録された旨の情報である。処理結果は、例えば、銀行取引情報が登録された旨の情報、カード取引情報が登録された旨の情報等である。
第一出力部25は、第一受信部24が受信した情報等を出力する。なお、受信された情報等が1または2以上の領収書画像である場合、第一出力部25は、伝票データと対応付いている領収書画像と伝票データと対応付いていない領収書画像とを視覚的に区別可能に出力する。
第一出力部25は、伝票データの一覧表を出力する場合、各伝票データに対応付く種類情報をも出力する。なお、ここで、出力される種類情報は、アイコンであることは好適である。
ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
第二端末3を構成する第二受付部31は、税理士や会計士等から指示や情報等を受け付ける。指示や情報等は、例えば、出力指示、伝票データ選択指示、ソフトウェアの起動指示、領収書画像の出力指示、伝票データ等である。指示や情報等の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。第二受付部31は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
第二処理部32は、各種の処理を行う。第二処理部32は、例えば、第二受付部31が受け付けた指示に情報等に、第二端末3を識別する第二端末識別子を付与し、送信する指示や情報等を構成する処理である。なお、第二端末識別子は、図示しない記録媒体に蓄積されている、とする。
また、第二処理部32は、伝票入力画面における電卓領域に対する入力を処理し、電卓機能を実現する。
また、第二処理部32は、伝票入力画面におけるカレンダー領域に対する入力を処理し、入力された日付を取得する。
第二送信部33は、第二受付部31が受け付けた指示や情報を伝票処理装置1に送信する。また、第二送信部33は、第二処理部32が構成した指示や情報を伝票処理装置1に送信する。
第二送信部33は、例えば、第二受付部31が受け付けた出力指示、伝票データ選択指示等(第二処理部32が取得した出力指示等でも良いことは言うまでもない)を伝票処理装置1に送信する。また、第二送信部33は、第二受付部31が受け付けた伝票データを伝票処理装置1に送信する。
第二受信部34は、出力指示の送信に対応して、伝票データと種類情報との組を、1組以上受信する。
第二受信部34は、領収書画像の出力指示の送信に対応して、1以上の領収書画像を含む伝票入力画面、または1以上の領収書画像を含む伝票入力画面を構成する伝票入力画面情報を、伝票処理装置1から受信する。第二受信部34は、領収書画像の出力指示の送信に対応して、1以上の領収書画像を含む伝票閲覧画面または1以上の領収書画像を含む伝票閲覧画面を構成する伝票閲覧画面情報を、伝票処理装置1から受信しても良い。
第二出力部35は、第二受信部34が受信した情報を出力する。第二出力部35は、例えば、1組以上の伝票データと種類情報との組を出力する。また、第二出力部35は、伝票入力画面を出力する。
なお、受信された情報等が1または2以上のる領収書画像である場合、第二出力部35は、伝票データと対応付いている領収書画像と伝票データと対応付いていない領収書画像とを視覚的に区別可能に出力する。
ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
格納部11、ユーザ情報格納部111、領収書画像格納部112、銀行取引情報格納部113、カード取引情報格納部114、伝票データ格納部115、画面格納部116、取込ルール格納部117は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11で記憶されるようになってもよく、通信回線等を介して送信された情報が格納部11で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11で記憶されるようになってもよい。
受付部12、入力受付部121、原始データ受付部122、第一受信部24、第二受信部34は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。また、受付部12、入力受付部121、原始データ受付部122は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現されても良い。
第一受付部21、第二受付部31は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現されても良い。
処理部13、伝票データ構成部131、種類取得部132、判断部133、蓄積部134、伝票データ取得部135、伝票データフィルタリング部136、第一処理部22、第二処理部32は、通常、MPUやメモリ等から実現され得る。処理部13の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力部14、画面出力部141、一覧表出力部142、第一送信部23、第二送信部33は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。また、出力部14、画面出力部141、一覧表出力部142は、ディスプレイやスピーカー等の出力デバイスを含む構成により実現されても良い。かかる場合、出力部14等は、は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
第一出力部25、第二出力部35は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。第二出力部35は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、伝票処理システムの動作について説明する。まず、伝票処理装置1の動作について、図3のフローチャートを用いて説明する。
(ステップS301)原始データ受付部122は、原始データを受け付けたか否かを判断する。原始データを受け付ければステップS302に行き、原始データを受け付けなければステップS303に行く。
(ステップS302)処理部13は、ステップS301で受け付けられた原始データに対応する処理を行う。ステップS301に戻る。かかる原始データ処理について、図4のフローチャートを用いて説明する。
(ステップS303)入力受付部121は、情報入力を受け付けたか否かを判断する。情報入力を受け付ければステップS304に行き、情報入力を受け付けなければステップS309に行く。なお、情報入力は、伝票データの全部または一部を含む。
(ステップS304)種類取得部132は、ステップS303で受け付けられた情報入力が領収書画像に対応するか否かを判断する。領収書画像に対応する場合はステップS305に行き、領収書画像に対応しない場合はステップS306に行く。なお、種類取得部132は、例えば、ステップS303で受け付けられた情報入力が、領収書画像識別子を含むか否かにより、情報入力が領収書画像に対応するか否かを判断する。
(ステップS305)種類取得部132は、変数「種類情報」に領収書画像を示す旨の情報を書き込む。ステップS307に行く。領収書画像を示す旨の情報は、例えば、「領収書」、「1」等である。
(ステップS306)種類取得部132は、変数「種類情報」にNULLを書き込む。
(ステップS307)伝票データ構成部131は、ステップS303で受け付けられた情報入力、およびステップS305またはステップS306で取得された変数「種類情報」の値を用いて、蓄積する伝票データと種類情報との組(伝票データ等と言っても良い。)を構成する。
(ステップS308)蓄積部134は、ステップS307で構成した伝票データ等を、伝票データ格納部115に蓄積する。ステップS301に戻る。
(ステップS309)入力受付部121は、出力指示を受け付けたか否かを判断する。出力指示を受け付ければステップS310に行き、出力指示を受け付けなければステップS313に行く。
(ステップS310)伝票データ取得部135は、伝票データと種類情報との組(伝票データ等)を1組以上、伝票データ格納部115から取得する。なお、取得される伝票データ等は、ステップS309で受け付けられた出力指示に対応する情報である。伝票データ取得部135は、例えば、ステップS309で受け付けられた出力指示に含まれるユーザ識別子と対になる1組以上の伝票データ等を伝票データ格納部115から取得する。
(ステップS311)伝票データ取得部135は、ステップS310で取得した1組以上の伝票データ等から表示される伝票データの一覧表を構成する。なお、伝票データの一覧表は、例えば、伝票データと種類情報を含む1以上のレコードからなる。また、種類情報は、種類情報を示すアイコンであることは好適である。また、構成された一覧表とは、端末で表示される伝票データの一覧表を構成する情報である。
(ステップS312)一覧表出力部142は、ステップS311で構成された伝票データの一覧表を出力する。なお、ここでの出力は、通常、出力指示を送付した装置(例えば、第一端末2または第二端末3)への送信である。
ステップS301に戻る。
(ステップS313)入力受付部121は、伝票データ選択指示を受け付けたか否かを判断する。伝票データ選択指示を受け付ければステップS314に行き、伝票データ選択指示を受け付けなければステップS315に行く。
(ステップS314)処理部13は、伝票データ選択指示に対応する処理を行う。ステップS301に戻る。なお、かかる処理を選択指示対応処理という。選択指示対応処理について、図5のフローチャートを用いて説明する。
(ステップS315)入力受付部121は、領収書画像出力指示を受け付けたか否かを判断する。領収書画像出力指示を受け付ければステップS316に行き、領収書画像出力指示を受け付けなければステップS301に戻る。
(ステップS316)処理部13は、領収書画像を含む画面情報の構成処理を行う。かかる領収書画像画面情報構成処理について、図6のフローチャートを用いて説明する。
(ステップS317)画面出力部141は、ステップS316で構成された領収書画像画面情報を送信する。ステップS301に戻る。なお、領収書画像画面情報の送信先は、通常、領収書画像出力指示を送信してきた第一端末2または第二端末3である。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、ステップS302の原始データ処理について、図4のフローチャートを用いて説明する。
(ステップS401)種類取得部132は、受け付けられた原始データが領収証画像であるか否かを判断する。領収証画像であればステップS402に行き、領収証画像でなければステップS404に行く。なお、種類取得部132は、例えば、領収証画像が入力された画面識別子であり、原始データと共に受け付けられた画面識別子から、受け付けられた原始データが領収証画像であると判断する。また、種類取得部132は、例えば、受け付けられた情報が画像であることを検知し、当該情報が領収証画像であると判断する。その他、種類取得部132が、受け付けられた情報が領収証画像であることを検知するアルゴリズムは問わない。
(ステップS402)蓄積部134は、受け付けられた領収証画像に対応付いているユーザ識別子を取得する。
(ステップS403)蓄積部134は、ステップS402で取得したユーザ識別子に対応付けて、受け付けられた領収証画像を領収書画像格納部112に蓄積する。上位処理にリターンする。なお、蓄積部134は、種類取得部132が取得した原始データの種類情報(例えば、「領収証画像」)を、当該領収書画像に対応付けて蓄積しても良い。また、蓄積部134は、空の伝票データに対応付けて、原始データの種類情報を蓄積しても良い。
(ステップS404)種類取得部132は、受け付けられた原始データが銀行取引情報であるか否かを判断する。銀行取引情報であればステップS405に行き、銀行取引情報でなければステップS414に行く。種類取得部132は、例えば、受信されたファイルの中の表の1以上の属性名を取得し、1以上の属性名から、種類情報(例えば、「銀行」、「2」など)を取得しても良い。かかる場合、種類取得部132は、銀行取引情報である旨を示す種類情報に対応する1以上の属性名を保持している。また、種類取得部132は、例えば、受信されたファイルのファイル名を用いて、種類情報(例えば、「銀行」、「2」など)を取得しても良い。かかる場合、種類取得部132は、例えば、銀行取引情報である旨を示す種類情報に対応するファイル名の文字列パターンを保持している。
(ステップS405)蓄積部134は、受け付けられた1以上の銀行取引情報に対応付いているユーザ識別子を取得する。
(ステップS406)判断部133は、カウンタiに1を代入する。
(ステップS407)判断部133は、受け付けられた銀行取引情報の中で、i番目の銀行取引情報が存在するか否かを判断する。i番目の銀行取引情報が存在すればステップS408に行き、i番目の銀行取引情報が存在しなければ上位処理にリターンする。
(ステップS408)判断部133は、i番目の銀行取引情報が、過去に受け付けられた銀行取引情報であるか否かを判断する。過去に受け付けられた銀行取引情報であればステップS413に行き、過去に受け付けられた銀行取引情報でなければステップS409に行く。
(ステップS409)判断部133は、i番目の銀行取引情報が、取込ルール格納部117の1以上の取込ルールに合致するか否かを判断する。1以上の取込ルールに合致する場合はステップS410に行き、1以上の取込ルールに合致しない場合はステップS413に行く。なお、1以上の取込ルールに合致することは、i番目の銀行取引情報に対応する伝票データを蓄積すべきことである、とする。
(ステップS410)種類取得部132は、変数「種類情報」に銀行取引情報を示す旨の情報を書き込む。
(ステップS411)伝票データ構成部131は、i番目の銀行取引情報と変数「種類情報」の情報とを用いて、蓄積する伝票データと種類情報との組の情報(伝票データ等)を構成する。
(ステップS412)蓄積部134は、ステップS411で構成された伝票データ等を、ステップS405で取得されたユーザ識別子に対応付けて、伝票データ格納部115に蓄積する。
(ステップS413)判断部133は、カウンタiを1、インクリメントする。ステップS407に戻る。
(ステップS414)種類取得部132は、受け付けられた原始データがカード取引情報であるか否かを判断する。カード取引情報であればステップS405に行き、カード取引情報でなければステップS414に行く。種類取得部132は、例えば、受信されたファイルの中の表の1以上の属性名を取得し、1以上の属性名から、種類情報(例えば、「カード」、「3」など)を取得しても良い。かかる場合、種類取得部132は、カード取引情報である旨を示す種類情報に対応する1以上の属性名を保持している。また、種類取得部132は、例えば、受信されたファイルのファイル名を用いて、種類情報(例えば、「カード」、「3」など)を取得しても良い。かかる場合、種類取得部132は、例えば、カード取引情報である旨を示す種類情報に対応するファイル名の文字列パターンを保持している。
(ステップS415)蓄積部134は、受け付けられた1以上のカード取引情報に対応付いているユーザ識別子を取得する。
(ステップS416)判断部133は、カウンタiに1を代入する。
(ステップS417)判断部133は、受け付けられたカード取引情報の中で、i番目のカード取引情報が存在するか否かを判断する。i番目のカード取引情報が存在すればステップS418に行き、i番目のカード取引情報が存在しなければ上位処理にリターンする。
(ステップS418)判断部133は、i番目のカード取引情報が、過去に受け付けられたカード取引情報であるか否かを判断する。過去に受け付けられたカード取引情報であればステップS423に行き、過去に受け付けられたカード取引情報でなければステップS419に行く。
(ステップS419)判断部133は、i番目のカード取引情報が、取込ルール格納部117の1以上の取込ルールに合致するか否かを判断する。1以上の取込ルールに合致する場合はステップS420に行き、1以上の取込ルールに合致しない場合はステップS423に行く。なお、1以上の取込ルールに合致することは、i番目のカード取引情報に対応する伝票データを蓄積すべきことである、とする。
(ステップS420)種類取得部132は、変数「種類情報」にカード取引情報を示す旨の情報を書き込む。
(ステップS421)伝票データ構成部131は、i番目のカード取引情報と変数「種類情報」の情報とを用いて、蓄積する伝票データと種類情報との組の情報(伝票データ等)を構成する。
(ステップS422)蓄積部134は、ステップS421で構成された伝票データ等を、ステップS415で取得されたユーザ識別子に対応付けて、伝票データ格納部115に蓄積する。
(ステップS423)判断部133は、カウンタiを1、インクリメントする。ステップS417に戻る。
次に、ステップS314の選択指示対応処理について、図5のフローチャートを用いて説明する。
(ステップS501)種類取得部132は、伝票データ選択指示に対応する伝票データと対になる種類情報を伝票データ格納部115から取得する。なお、伝票データ選択指示が種類情報を含む場合、種類取得部132は、伝票データ選択指示から種類情報を取得する。
(ステップS502)処理部13は、ステップS501で取得された種類情報が領収書画像を示す旨の情報であるか否かを判断する。領収書画像を示す旨の情報である場合はステップS503に行き、領収書画像を示す旨の情報でない場合はステップS509に行く。
(ステップS503)処理部13は、受け付けられた伝票データ選択指示に対応する伝票データと対になる領収書画像を、領収書画像格納部112から取得する。
(ステップS504)処理部13は、ステップS503で取得した領収書画像に対して、伝票データと対応付いている場合の出力態様となるように処理する。なお、かかる処理は、例えば、伝票データと対応付いている場合の出力態様となるように、領収書画像または領収書画像に関する情報を変更する処理である。さらに具体的には、かかる処理は、例えば、領収書画像の背景を伝票データと対応付いている場合の背景とする処理等である。
(ステップS505)処理部13は、ステップS503で取得した領収書画像に対応付けて、1以上のボタンを配置する。
(ステップS506)処理部13は、ステップS503で取得した領収書画像に対応付けて、1以上のボタンを付加する。かかるボタンは、例えば、領収書画像を操作するボタン(拡大、縮小、回転等)、領収書画像に関する情報(ファイル名等)を出力するボタン等である。
(ステップS507)処理部13は、取得した領収書画像を含む画面の画面情報を構成する。
(ステップS508)画面出力部141は、ステップS507で構成された画面情報を送信する。上位処理にリターンする。なお、画面情報の送信先は、通常、伝票データ選択指示を送信してきた第一端末2、または第二端末3である。
(ステップS509)処理部13は、ステップS501で取得された種類情報が銀行取引情報を示す旨の情報であるか否かを判断する。銀行取引情報を示す旨の情報である場合はステップS510に行き、銀行取引情報を示す旨の情報でない場合はステップS513に行く。
(ステップS510)処理部13は、受け付けられた伝票データ選択指示に対応する伝票データと対になる1以上の銀行取引情報を、銀行取引情報格納部113から取得する。なお、1以上の銀行取引情報とは、例えば、受け付けられた伝票データ選択指示に対応する伝票データと対になる1つの銀行取引情報、または受け付けられた伝票データ選択指示に対応する伝票データと対になる銀行取引情報が含まれる銀行取引ファイルである。
(ステップS511)処理部13は、ステップS510で取得した1以上の銀行取引情報を含む画面の画面情報を構成する。
(ステップS512)画面出力部141は、ステップS511で構成された画面情報を送信する。上位処理にリターンする。なお、画面情報の送信先は、通常、伝票データ選択指示を送信してきた第一端末2、または第二端末3である。
(ステップS513)処理部13は、ステップS501で取得された種類情報がカード取引情報を示す旨の情報であるか否かを判断する。カード取引情報を示す旨の情報である場合はステップS514に行き、カード取引情報を示す旨の情報でない場合は上位処理にリターンする。
(ステップS514)処理部13は、受け付けられた伝票データ選択指示に対応する伝票データと対になる1以上のカード取引情報を、カード取引情報格納部114から取得する。なお、1以上のカード取引情報とは、例えば、受け付けられた伝票データ選択指示に対応する伝票データと対になる1つのカード取引情報、または受け付けられた伝票データ選択指示に対応する伝票データと対になるカード取引情報が含まれるカード取引ファイルである。
(ステップS515)処理部13は、ステップS514で取得した1以上のカード取引情報を含む画面の画面情報を構成する。
(ステップS516)画面出力部141は、ステップS515で構成された画面情報を送信する。上位処理にリターンする。なお、画面情報の送信先は、通常、伝票データ選択指示を送信してきた第一端末2、または第二端末3である。
次に、ステップS316の領収書画像画面情報構成処理について、図6のフローチャートを用いて説明する。
(ステップS601)処理部13は、領収書画像出力指示に対応する1以上の領収書画像を、領収書画像格納部112から取得する。なお、領収書画像出力指示に対応する1以上の領収書画像とは、例えば、領収書画像出力指示に含まれるユーザ識別子と対になる1以上の領収書画像、または領収書画像出力指示に含まれるユーザ識別子と間接的にリンク付けされている1以上の領収書画像である。
(ステップS602)処理部13は、カウンタiに1を代入する。
(ステップS603)処理部13は、ステップS601で取得した1以上の領収書画像のうち、i番目の領収書画像が存在するか否かを判断する。i番目の領収書画像が存在すればステップS604に行き、i番目の領収書画像が存在しなければステップS610に行く。
(ステップS604)処理部13は、i番目の領収書画像が伝票データと対応付いているか否か(領収書画像に対応する伝票データが入力済みか否か)を判断する。i番目の領収書画像が伝票データと対応付いていればステップS605に行き、i番目の領収書画像が伝票データと対応付いていなければステップS607に行く。なお、処理部13は、例えば、i番目の領収書画像を識別する領収書画像識別子を有する伝票データが伝票データ格納部115に存在するか否かにより、i番目の領収書画像が伝票データと対応付いているか否かを判断する。また、処理部13は、例えば、i番目の領収書画像にリンク付けられた伝票データが伝票データ格納部115に存在するか否かにより、i番目の領収書画像が伝票データと対応付いているか否かを判断しても良い。その他、i番目の領収書画像が伝票データと対応付いているか否かの判断方法は問わない。
(ステップS605)処理部13は、i番目の領収書画像に対して、伝票データと対応付いている場合の出力態様となるように処理する。なお、かかる処理は、例えば、伝票データと対応付いている場合の出力態様となるように、i番目の領収書画像またはi番目の領収書画像に関する情報を変更する処理である。さらに具体的には、かかる処理は、例えば、i番目の領収書画像の背景を伝票データと対応付いている場合の背景とする処理等である。
(ステップS606)処理部13は、i番目の領収書画像に対応付けて、1以上のボタンを配置する。ステップS608に行く。なお、かかるボタンは、例えば、伝票データの全部または一部を出力するボタン等である。
(ステップS607)処理部13は、i番目の領収書画像に対して、伝票データと対応付いていない場合の出力態様となるように処理する。なお、かかる処理は、例えば、伝票データと対応付いていない場合の出力態様となるように、i番目の領収書画像またはi番目の領収書画像に関する情報を変更する処理である。さらに具体的には、かかる処理は、例えば、i番目の領収書画像の背景を伝票データと対応付いていない場合の背景とする処理等である。
(ステップS608)処理部13は、i番目の領収書画像に対応付けて、1以上のボタンを付加する。かかるボタンは、例えば、領収書画像を操作するボタン(拡大、縮小、回転等)、領収書画像に関する情報(ファイル名等)を出力するボタン等である。
(ステップS609)処理部13は、カウンタiを1、インクリメントする。ステップS603に戻る。
(ステップS610)処理部13は、1以上の領収書画像を用いて、画面情報を構成する。上位処理にリターンする。なお、処理部13は、1以上の領収書画像と、伝票データを入力するためのフィールド等を有する画面の画面情報を構成しても良い。
なお、図6のフローチャートにおいて、ステップS605とステップS607の処理のうち、どちらか一方の処理を行うことでも良い。
また、図6のフローチャートのステップS605において、i番目の領収書画像と伝票データとの対応関係の種類を取得し、当該種類を視覚的に区別可能に表示するように処理を行っても良い。かかる処理は、例えば、当該種類に応じて異なる出力となるように、i番目の領収書画像またはi番目の領収書画像に関する情報を変更する処理である。
次に、第一端末2の動作について、図7、図8のフローチャートを用いて説明する。
(ステップS701)第一端末2の第一受付部21は、ユーザからソフトウェアの起動指示を受け付けたか否かを判断する。ソフトウェアの起動指示を受け付ければステップS702に行き、ソフトウェアの起動指示を受け付けなければステップS703に行く。なお、ソフトウェアは、例えば、会計ソフトである。
(ステップS702)第一処理部22は、ソフトウェアの起動処理を行う。ステップS701に戻る。
(ステップS703)第一受付部21は、1以上の領収書画像を受け付けたか否かを判断する。1以上の領収書画像を受け付ければステップS704に行き、受け付けなければステップS708に行く。
(ステップS704)第一処理部22は、図示しない記録媒体に格納されているユーザ識別子を読み出す。第一処理部22は、1以上の領収書画像とユーザ識別子とを用いて、1以上の領収書画像とユーザ識別子とを含む情報を構成する。なお、ユーザ識別子は、第一端末2を識別する第一端末識別子でも良い。
(ステップS705)第一送信部23は、ステップS704で構成した情報を伝票処理装置1に送信する。
(ステップS706)第一受信部24は、伝票処理装置1から処理結果を受信したか否かを判断する。処理結果を受信すればステップS707に行き、処理結果を受信しなければステップS706に戻る。なお、処理結果とは、例えば、領収書画像を登録した旨の情報、領収書画像の登録に失敗した旨の情報等である。
(ステップS707)第一出力部25は、ステップS706で受信された処理結果を出力する。ステップS701に戻る。
(ステップS708)第一受付部21は、領収書画像出力指示を受け付けたか否かを判断する。領収書画像出力指示を受け付ければステップS709に行き、受け付けなければステップS713に行く。
(ステップS709)第一処理部22は、図示しない記録媒体に格納されているユーザ識別子を読み出す。第一処理部22は、領収書画像の出力指示とユーザ識別子とを用いて、送信する指示を構成する。
(ステップS710)第一送信部23は、ステップS709で構成した指示を伝票処理装置1に送信する。
(ステップS711)第一受信部24は、伝票処理装置1から1以上の領収書画像等を受信したか否かを判断する。領収書画像等を受信すればステップS712に行き、領収書画像等を受信しなければステップS711に戻る。
(ステップS712)第一出力部25は、ステップS711で受信された1以上の領収書画像等を出力する。ステップS701に戻る。なお、ここで、第一出力部25は、伝票データと対応付いている領収書画像と伝票データと対応付いていない領収書画像とを視覚的に区別可能に出力する。
(ステップS713)第一受付部21は、領収書画像の選択指示を受け付けたか否かを判断する。選択指示を受け付ければステップS714に行き、受け付けなければステップS721に行く。
(ステップS714)第一処理部22は、選択された領収書画像の表示を、他の領収書画像と比較して区別可能なように表示を変更する。
(ステップS715)第一受付部21は、選択された領収書画像に対する伝票データの入力を受け付けたか否かを判断する。伝票データを受け付ければステップS716に行き、受け付けなければステップS715に戻る。なお、第一処理部22は、受け付けられた伝票データを図示しないバッファに、選択された領収書画像の識別子と共に一時蓄積する。
(ステップS716)第一受付部21は、伝票データの送信指示を受け付けたか否かを判断する。伝票データの送信指示を受け付ければステップS717に行き、伝票データの送信指示を受け付けなければステップS716に戻る。
(ステップS717)第一処理部22は、図示しないバッファ内の伝票データ、領収書画像識別子、およびユーザ識別子を含む情報であり、送信する情報を構成する。
(ステップS718)第一送信部23は、ステップS717で構成した情報を伝票処理装置1に送信する。
(ステップS719)第一受信部24は、伝票処理装置1から処理結果を受信したか否かを判断する。処理結果を受信すればステップS720に行き、処理結果を受信しなければステップS719に戻る。なお、処理結果とは、例えば、伝票データ等の登録が完了した旨の情報、伝票データの登録に失敗した旨の情報等である。
(ステップS720)第一出力部25は、ステップS719で受信された処理結果を出力する。ステップS701に戻る。
(ステップS721)第一受付部21は、1以上の銀行取引情報を含む銀行取引ファイルを受け付けたか否かを判断する。銀行取引ファイルを受け付ければステップS722に行き、銀行取引ファイルを受け付けなければステップS724に行く。
(ステップS722)第一処理部22は、ステップS721で受け付けられた銀行取引ファイルを用いて、送信する情報を構成する。第一処理部22は、例えば、図示しないバッファ内のユーザ識別子と、ステップS721で受け付けられた銀行取引ファイルを構成する1以上の銀行取引情報とを有する情報を構成する。
(ステップS723)第一送信部23は、ステップS722で構成した情報を伝票処理装置1に送信する。ステップS701に戻る。
(ステップS724)第一受付部21は、1以上のカード取引情報を含むカード取引ファイルを受け付けたか否かを判断する。カード取引ファイルを受け付ければステップS725に行き、カード取引ファイルを受け付けなければステップS727に行く。
(ステップS725)第一処理部22は、ステップS724で受け付けられたカード取引ファイルを用いて、送信する情報を構成する。第一処理部22は、例えば、図示しないバッファ内のユーザ識別子と、ステップS724で受け付けられたカード取引ファイルを構成する1以上のカード取引情報とを有する情報を構成する。
(ステップS726)第一送信部23は、ステップS725で構成した情報を伝票処理装置1に送信する。ステップS701に戻る。
(ステップS727)第一受付部21は、出力指示を受け付けたか否かを判断する。出力指示を受け付ければステップS728に行き、出力指示を受け付けなければステップS732に行く。なお、出力指示は、伝票データの一覧表の出力指示であるとも言えるし、1組以上の伝票データと種類情報の組の出力指示であるとも言える。
(ステップS728)第一処理部22は、ステップS727で受け付けられた出力指示を用いて、送信する出力指示を構成する。なお、第一処理部22は、例えば、図示しないバッファ内のユーザ識別子を有する出力指示を構成する。
(ステップS729)第一送信部23は、ステップS728で構成した出力指示を伝票処理装置1に送信する。
(ステップS730)第一受信部24は、ステップS729における出力指示の送信に応じて、伝票データの一覧表を受信したか否かを判断する。伝票データの一覧表を受信すればステップS731に行き、伝票データの一覧表を受信しなければステップS730に戻る。なお、伝票データの一覧表は、各伝票データに対応する種類情報を含む、とする。また、一覧表を構成する伝票データの中には、種類情報に対応付いていない伝票データが存在しても良い。
(ステップS731)第一出力部25は、ステップS730で受信された伝票データの一覧表を出力する。さらに詳細には、第一出力部25は、1組以上の伝票データと種類情報との組を、各伝票データと各種類情報とが対応付く態様で出力する。ステップS701に戻る。なお、種類情報の出力は、種類情報によって異なるアイコンの出力であることは好適である。また、アイコンは、種類情報を一目瞭然に表す図柄であることは好適である。
(ステップS732)第一受付部21は、伝票データ選択指示を受け付けたか否かを判断する。伝票データ選択指示を受け付ければステップS733に行き、伝票データ選択指示を受け付けなければステップS701に戻る。
(ステップS733)第一処理部22は、ステップS732で受け付けられた伝票データ選択指示を用いて、送信する伝票データ選択指示を構成する。なお、第一処理部22は、例えば、図示しないバッファ内のユーザ識別子と、選択された伝票データを識別する情報とを有する出力指示を構成する。また、第一処理部22は、例えば、図示しないバッファ内のユーザ識別子と、選択された伝票データを識別する情報と、選択された伝票データに対応する種類情報とを有する出力指示を構成する。
(ステップS734)第一送信部23は、ステップS733で構成した伝票データ選択指示を伝票処理装置1に送信する。
(ステップS735)第一受信部24は、ステップS734における伝票データ選択指示の送信に応じて、画面情報を受信したか否かを判断する。画面情報を受信すればステップS736に行き、画面情報を受信しなければステップS735に戻る。なお、画面情報は、伝票データ選択指示に対応する伝票データと対になる種類情報により異なる。種類情報が領収書画像を示す情報である場合、画面情報は、伝票データ選択指示に対応する伝票データと対になる領収書画像を含む情報である。また、種類情報が銀行取引情報を示す情報である場合、例えば、画面情報は、伝票データ選択指示に対応する銀行取引情報を含む銀行取引ファイルの内容を含む情報である。また、種類情報がカード取引情報を示す情報である場合、例えば、画面情報は、伝票データ選択指示に対応するカード取引情報を含むカード取引ファイルの内容を含む情報である。なお、ここで、第一受信部24が受信する画面情報は、出力される画面の一部を構成する情報でも良いことは言うまでもない。
(ステップS736)第一出力部25は、ステップS735で受信された画面情報を用いて、画面を出力する。ステップS701に戻る。なお、第一出力部25は、ステップS735で受信された画面情報を用いて、出力されている画面を変更しても良い。
なお、図7、図8のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、第二端末3の動作について、図9、図10のフローチャートを用いて説明する。図9、図10のフローチャートにおいて、図7、図8と同じステップについて、説明を省略する。図9、図10のフローチャートの各ステップは、図7、図8のフローチャートのいずれかのステップと同じ処理である。なお、同じ処理のステップでも、図9、図10のフローチャートにおける主体と、図7、図8のフローチャートにおける主体は異なることは言うまでもない。つまり、同じ処理のステップにおいて、第二受付部31が行う処理は第一受付部21が行う処理であり、第二処理部32が行う処理は第一処理部22が行う処理であり、第二送信部33が行う処理は第一送信部23が行う処理であり、第二受信部34が行う処理は第一受信部24が行う処理であり、第二出力部35が行う処理は第一出力部25が行う処理である。
以下、本実施の形態における伝票処理システムの具体的な動作について説明する。
伝票処理システムの概念図は図1である。
今、伝票処理装置1のユーザ情報格納部111は、図11に示すユーザ情報管理表を保持している。ユーザ情報管理表は、「ユーザ識別子」「氏名」「所属」等の属性値を有する1以上のレコードを管理している。
また、領収書画像格納部112は、図12に示すような領収書画像管理表を格納している。領収書画像管理表は、「ID」「対応付けフラグ」「対応関係種類情報」「ユーザ識別子」「領収書画像識別子」を有する1以上のレコードを管理している。「ID」はレコードを識別する情報である。「対応付けフラグ」は、領収書画像が伝票データと対応付いているか否かを示す情報であり、対応付けフラグが「1」の場合は領収書画像が伝票データと対応付いており、「0」の場合は領収書画像が伝票データと対応付いていない。また、「対応関係種類情報」は、伝票データと領収書画像との対応関係の種類を示す情報であり、伝票データと領収書画像との対応関係が「1対1」の場合は「対応関係種類情報=1」、「1対n」の場合は「対応関係種類情報=2」、「n対1」の場合は「対応関係種類情報=3」となる。「ユーザ識別子」は、領収書画像を送信した第一端末2のユーザの識別子である。さらに、領収書画像格納部112は、1以上の領収書画像を格納している、とする。
また、銀行取引情報格納部113は、図13に示す銀行取引情報管理表を格納している、とする。銀行取引情報管理表は「ID」「ユーザ識別子」「日付」「摘要」「支払い金額」「預かり金額」「差引残高」を有するレコードを1以上管理している。なお、「ID」はレコードを識別する情報である。「日付」は取引の日付である。図13に示す銀行取引情報管理表は、過去に取り込まれた銀行取引情報を管理している。
また、カード取引情報格納部114は、図14に示すカード取引情報管理表を格納している、とする。銀行取引情報管理表は「ID」「ユーザ識別子」「カード識別子」「利用日」「利用区分」「利用内容」「新規利用額」「今回請求額」等を有するレコードを1以上管理している。なお、「ID」はレコードを識別する情報である。「カード識別子」はクレジットカードを識別する情報である。「利用日」はクレジットカードの利用日である。「利用区分」はクレジットカードの利用の種類を示す情報であり、例えば、1回払い、3回払い等の情報を採り得る。「利用内容」はクレジットカードの利用の内容を示す情報であり、例えば、利用店舗や、支払先の企業名等である。「新規利用額」は対応する取引において利用した金額である。「今回請求額」は当月の請求額の全体を示す情報である。
また、伝票データ格納部115は、図15に示す会計伝票管理表を格納している、とする。会計伝票管理表は、伝票データを管理する表である。会計伝票管理表は、「ID」「ユーザ識別子」「伝票データ」「種類情報」を有する1以上のレコードを管理している。「伝票データ」は、「日付」「摘要」「科目」「税区分」「入金」「出金」を有する。「ID」はレコードを識別する情報である。「日付」は取引の日付を示す。「ユーザ識別子」は顧問先のユーザのユーザ識別子である。また、「種類情報」は、ここでは、「領収書」「銀行」「カード」または「NULL」の値を採り得る。「領収書」は原始データが領収書画像であることを示す。「銀行」は原始データが銀行取引情報であることを示す。また、「カード」は原始データがカード取引情報であることを示す。
また、画面格納部116は、図示しないが、伝票入力画面の画面情報、伝票データの一覧表の画面の画面情報、領収書画像を閲覧する画面の画面情報、銀行取引情報を閲覧する画面の画面情報、カード取引情報を閲覧する画面の画面情報等を格納している。
また、取込ルール格納部117の取込ルールは、ここでは、「摘要!=田中太郎」、「摘要!=ガス代」である、とする。つまり、取込ルール「摘要!=田中太郎」は、摘要の値が「田中太郎」の取引情報は取込まないルールを示す。また、取込ルール「摘要!=ガス代」は、摘要の値が「ガス代」の取引情報は取込まないルールを示す。
かかる状況において、以下の3つの具体例に分けて、伝票処理システムの動作について説明する。具体例1は、伝票処理装置1が、領収書画像を受信し蓄積した後、当該領収書画像に対応する伝票データを受信し、蓄積する処理の例である。具体例2は、伝票処理装置1が銀行取引情報を受信し、蓄積する処理の例である。具体例3は、伝票データの一覧表を出力する場合の例である。
(具体例1)
上記の状況において、ユーザAは、第一端末2に本会計システムのソフトウェアの起動指示を入力した。そして、第一端末2の第一受付部21は、会計システムの起動指示を受け付ける。次に、第一処理部22は、会計システムの起動処理を行う。
また、第一端末2で起動した会計システムに対して、ユーザAは、図16に示す3つの領収書画像を入力した。なお、この入力は、例えば、カメラで撮影した写真の入力である。そして、第一受付部21は、3つの領収書画像を受け付ける。そして、第一処理部22は、図示しない記録媒体に格納されているユーザ識別子(例えば、「usrA」)を読み出す。次に、第一処理部22は、3つの領収書画像とユーザ識別子(「usrA」)とを用いて、3つの領収書画像とユーザ識別子とを含む情報を構成する。次に、第一送信部23は、第一処理部22が構成した情報を伝票処理装置1に送信する。
次に、伝票処理装置1の原始データ受付部122は、第一端末2から3つの領収書画像とユーザ識別子とを含む情報を受信する。そして、蓄積部134は、3つの各領収書画像と第一端末識別子とを有する3つのレコードを生成し、当該3つのレコードを図12の領収書画像管理表に蓄積する。ここで、蓄積されたレコードは、図12の「ID=20、21、22」の3つのレコードである、とする。なお、蓄積部134は、対応付けフラグの値を初期値の「0」、対応関係種類情報を「NULL」とする。
次に、税理士Xは、第二端末3に対して、会計ソフトの起動指示を入力する。そして、第二端末3の第二受付部31は、会計ソフトの起動指示を受け付ける。次に、第二処理部32は、会計ソフトの起動処理を行う。
次に、税理士Xは、会計ソフトに対して、領収書画像の出力指示を入力する。次に、第二受付部31は、領収書画像の出力指示を受け付ける。次に、第二処理部32は、図示しない記録媒体に格納されているユーザ識別子(例えば、「proX」)を読み出す。次に、第二処理部32は、領収書画像の出力指示とユーザ識別子「proX」とを用いて、送信する指示を構成する。次に、第二送信部33は、構成された指示を伝票処理装置1に送信する。なお、ユーザ識別子は、税理士等のユーザ識別子である。
次に、入力受付部121は、第二端末3から、領収書画像の出力指示を受信する。そして、以下のように、処理部13は、領収書画像の出力指示の受信に応じて、1以上の領収書画像を有する画面情報を構成する。
つまり、処理部13は、領収書画像の出力指示に含まれる第二端末識別子「proX」に対応する1以上の領収書画像を、領収書画像格納部112から取得する。ここでは、3つの領収書画像(img20.gif、img21.gif、img22.gif)を含む、ユーザAがアップロードしたm(mは3以上の自然数)の領収書画像を取得した、とする。なお、ユーザの第一端末識別子と顧問税理士の第二端末識別子との対応関係が図示しない記録媒体に管理されており、かかる対応関係の情報を用いて、ユーザAと税理士Xとの関係を取得し、当関係を用いて、ユーザAがアップロードした3つの領収書画像を取得する。
次に、処理部13は、取得したmの領収書画像のうちの各領収書画像が伝票データと対応付いているか否かを判断する。例えば、処理部13は、領収書画像管理表(図12)の対応フラグであり、領収書画像と対になる対応フラグが「1」の場合は各領収書画像が伝票データと対応付いていると判断し、対応フラグが「0」の場合は各領収書画像が伝票データと対応付いていないと判断する。
処理部13は、伝票データと対応付いていると判断した領収書画像に対して、伝票データと対応付いている場合の出力態様となるように処理する。例えば、処理部13は、伝票データと対応付いていると判断した領収書画像の背景を変更する(例えば、背景をグレー(灰色)等に変更する)とする。そして、処理部13は、伝票データと対応付いていると判断した領収書画像に対して、領収書画像に対応付けられた1以上のボタンを配置する。このボタンは、ここでは、伝票データの一部または全部を閲覧するためのボタンである。
また、伝票データと対応付いていないと判断した領収書画像に対して、処理部13は、伝票データと対応付いていない場合の出力態様となるように処理する。例えば、処理部13は、伝票データと対応付いていないと判断した領収書画像の背景の枠を太線で囲む。また、例えば、処理部13は、伝票データと対応付いていないと判断した領収書画像の背景の色を、伝票データと対応付いていると判断した領収書画像の背景の色と異なる色にする。
次に、処理部13は、各領収書画像に対して、領収書画像の操作用の1以上のボタンを付加する。このボタンは、ここでは、領収書画像の拡大のためのボタン、領収書画像の縮小のためのボタン、領収書画像の回転のためのボタン、および領収書画像のファイル名と登録の日付を出力するためのボタンである。
次に、処理部13は、mの領収書画像を用いて、伝票データ入力画面の画面情報を構成する。ここで、処理部13は、領収書画像に対する伝票データを入力するための電卓領域とカレンダー領域とを有する画面の画面情報を構成する、とする。
次に、画面出力部141は、処理部13が構成した画面情報を、税理士Xの第二端末3に送信する。
次に、第二端末3の第二受信部34は、伝票処理装置1から1以上の領収書画像等を含む画面情報を受信する。
次に、第二出力部35は、受信された1以上の領収書画像等を含む画面情報を出力する。かかる出力例は、図17である。図17において、1701は領収書画像が出力さえる領域、1702は伝票データを構成する金額を入力するための電卓領域、1703は伝票データを構成する日付を入力するためのカレンダー領域、1704は入力した伝票データを用いて構成される伝票オブジェクトが出力される領域である。
また、図17の領収書画像1705は伝票データと対応付いていない領収書画像であり、領収書画像1706は伝票データと対応付いている領収書画像である。領収書画像1705の背景色は白色であり、領収書画像1706の背景色は、例えば、グレー(灰色)である。
また、伝票データと対応付いていない領収書画像1705に対応付けて、領収書画像の拡大ボタン1707、領収書画像の縮小ボタン1708、領収書画像の回転ボタン1709、領収書画像の情報を取得するボタン1710が配置されている。さらに、伝票データと対応付いている領収書画像1706に対応付けて、領収書画像1706に対応する伝票データの全部または一部を出力するボタン1711が配置されている。
なお、図17は伝票データを入力するために、領収書画像を出力した画面であった。しかし、領収書画像の出力指示の受け付けにより、第二出力部35は、図18に示すような画面を出力しても良い。図18に示す画面は、領収書画像を閲覧するための画面である。図18に示す画面において、1801、1802、1805、1806の領収書画像は、伝票データと対応付いている領収書画像であり、その背景がグレーになっている。また、1803、1804の領収書画像は、伝票データと対応付いていない領収書画像であり、その背景は何ら処理されていない(写真画像のままである)。 次に、税理士Aは、図17の画面において、領収書画像1705に対応する伝票データを入力した、とする。なお、税理士Aは、電卓領域1702の電卓機能を用いて、領収書画像1705の金額「1,487,441」を入力し、カレンダー領域1703のカレンダー機能を用いて、領収書画像1705の日付「2014年3月31日」を入力した、とする。
すると、第二受付部31は、入力された伝票データを受け付ける。そして、第二処理部32は、受け付けられた伝票データを、図示しないバッファに一時蓄積する。
次に、税理士Aは、伝票データの送信指示を第二端末3に入力する。すると、第二受付部31は、伝票データの送信指示を受け付ける。
そして、第二処理部32は、伝票オブジェクトを生成する。伝票オブジェクトは、図17の1712である。伝票オブジェクトは、伝票データに対応する情報の集合である。
次に、第二処理部32は、図示しないバッファ内の伝票データ、領収書画像識別子、およびユーザ識別子「proX」を用いて、送信する情報を構成する。そして、第二送信部33は、構成された情報を伝票処理装置1に送信する。
次に、伝票処理装置1の入力受付部121は、税理士Aが送信した伝票データ等を受信する。なお、伝票データ等は、領収書画像を識別する領収書画像識別子を有する、とする。
次に、種類取得部132は、受信された伝票データ等は領収書画像識別子を有するので、受信された伝票データが領収書画像に対応する、と判断する。次に、種類取得部132は、変数「種類情報」に領収書画像を示す旨の情報である「領収書」を書き込む。
次に、伝票データ構成部131は、受信された伝票データ、および取得された変数「種類情報」の値である「領収書」を用いて、蓄積する伝票データと種類情報との組を構成する。
次に、蓄積部134は、受信された伝票データと種類情報との組を、受信された領収書画像識別子で識別される領収書画像に対応付けて、図15の会計伝票管理表に蓄積する。
次に、出力部14は、処理結果を税理士Aの第二端末3に送信する。なお、処理結果とは、ここでは、伝票データが蓄積された旨、領収書画像の識別子で識別される領収書画像が伝票データに対応付けられた旨である。
次に、第二端末3の第二受信部34は、伝票処理装置1から処理結果を受信する。次に、第二出力部35は、受信された処理結果を出力する。ここで、第二出力部35は、領収書画像識別子で識別される領収書画像が伝票データに対応付けられた旨の情報を用いて、領収書画像1005を伝票データと対応付いている領収書画像を示す出力態様となるように出力を変更する。つまり、伝票データに対応付けられたことが分かるように、領収書画像に対応する伝票データを登録した後、直ちに当該領収書画像の出力が変更される。
以上、本具体例によれば、領収書画像を見ながら伝票データを入力することができる。また、本実施の形態によれば、領収書画像を見ながら伝票データを入力する場合に、伝票データを入力済みの領収書画像と伝票データを入力しなければならない領収書画像との区別が容易にできる。
また、本具体例によれば、また、伝票データと対応付いている領収書画像に対する操作を容易にできる。さらに詳細には、領収書画像を個別に操作できる。
また、本具体例によれば、伝票データと領収書画像との複雑な対応関係を容易に把握できる。
(具体例2)
上記の状況において、ユーザ「徳田将人」(以下、ユーザTとも言う)は、銀行情報の出力指示を第一端末2に入力した、とする。
次に、第一受付部21は、銀行情報の出力指示を受け付ける。次に、第一処理部22は、1以上の銀行情報の一部である銀行識別子「ABC銀行」「XYZ銀行」を銀行取引管理情報管理表(図19)から取得する。なお、銀行取引管理情報管理表は、第一端末2の図示しない記録媒体(第一格納部)に格納されている、とする。
そして、第一出力部25は、取得された2つの銀行識別子「ABC銀行」「XYZ銀行」を、図20に示すように出力する。
次に、ユーザTは「ABC銀行」のボタン2001を選択した、とする。すると、第一処理部22は、選択された一の銀行の銀行識別子「ABC銀行」を取得し、当該銀行識別子「ABC銀行」に対応する入出金明細ファイル「\root\doc\abc.csv」を、図19の銀行取引管理情報管理表から取得する。なお、入出金明細ファイルは、銀行取引ファイル情報の識別子である。また、銀行取引ファイル情報「\root\doc\abc.csv」で識別されるファイルは、ABC銀行のサーバ装置からユーザTがダウンロードし、第一端末2の図示しない第一格納部に格納されているファイルである。なお、取引ファイル情報「\root\doc\abc.csv」で識別されるファイルは、CSV形式のファイルであり、図21に示すファイルである。
ここで、銀行識別子「ABC銀行」に対応する入出金明細ファイルは一つであるので、入出金明細ファイルを選択するステップが省略される。
次に、第一処理部22は、図21の銀行取引ファイルの情報を用いて、入力情報を構成する。第一処理部22は、ユーザ識別子「usrX」と図21の銀行取引ファイルの情報とを含む入力情報を構成する。次に、第一送信部23は、構成された入力情報を、伝票処理装置1に送信する。
次に、伝票処理装置1の原始データ受付部122は、第一端末2から7つの銀行取引情報を含む情報を受信する。
次に、種類取得部132は、受け付けられた原始データが銀行取引情報であると判断する。例えば、種類取得部132は、受け付けられた銀行取引ファイルのフェイル名「\root\doc\abc.csv」から、受け付けられた原始データが銀行取引情報であると判断する。
次に、蓄積部134は、受け付けられた銀行取引情報に対応付いているユーザ識別子「usrX」を取得する。
次に、判断部133は、入力情報が有する7つの銀行取引情報が過去に既に受け付けられたか取引情報か否かを、図13の銀行取引情報管理表を用いて判断する。
つまり、判断部133は、図21の入力情報が有する1番目の銀行取引情報「日付:2014/3/8、摘要:水道料金、支払い金額:30000、預かり金額:、差引残高:400000」を取得する。次に、判断部133は、ユーザ識別子「usrX」と対になるレコードであり、1番目の銀行取引情報に含まれる予め決められたすべての情報(ここでは、日付、摘要、支払い金額、差引残高)を含むレコードが図13の銀行取引情報管理表に存在するので、1番目の銀行取引情報が過去に既に受け付けられた銀行取引情報である、と判断する。
次に、判断部133は、1番目の銀行取引情報に対応する判断結果「−1」を取得する。なお、判断結果「−1」は、取引情報が過去に受け付けられた銀行取引情報であることを示す判断結果である。
同様に、判断部133は、入力情報が有する2番目の銀行取引情報、入力情報が有する3番目の銀行取引情報も、過去に既に受け付けられた銀行取引情報である、と判断する。そして、判断部133は、2番目と3番目の銀行取引情報に対応する判断結果「−1」を取得する。
次に、判断部133は、入力情報が有する4番目の銀行取引情報「日付:2014/3/18、摘要:β商店、支払い金額:、預かり金額:420000、差引残高:1020000」を取得する。次に、判断部133は、4番目の銀行取引情報に含まれる予め決められたすべての情報(ここでは、日付、摘要、預かり金額、差引残高)を含むレコードが図13の銀行取引情報管理表に存在しないので、4番目の銀行取引情報が過去に既に受け付けられていない取引情報である、と判断する。
次に、判断部133は、4番目の銀行取引情報に対応する判断結果「0」を取得する。なお、判断結果「0」は、銀行取引情報が過去に受け付けられていない取引情報であることを示す判断結果である。
次に、判断部133は、4番目の銀行取引情報が取込ルールに合致するか否かを判断する。ここで、判断部133は、取込ルール「摘要!=田中太郎」および「摘要!=ガス代」を、4番目の銀行取引情報に適用し、取込ルールに合致すると判断する。
次に、種類取得部132は、変数「種類情報」に銀行取引情報を示す旨の情報を書き込む。
次に、伝票データ構成部131は、4番目の銀行取引情報と変数「種類情報」の情報とを用いて、蓄積する伝票データと種類情報との組の情報(伝票データ等)を構成する。
次に、蓄積部134は、構成された伝票データ等を、取得されたユーザ識別子「usrX」に対応付けて、伝票データ管理表(図14)に蓄積する。
同様に、判断部133は、入力情報が有する5番目の銀行取引情報も、過去に既に受け付けられていない銀行取引情報である、と判断する。
次に、判断部133は、5番目の銀行取引情報が取込ルールに合致するか否かを判断する。ここで、判断部133は、取込ルール「摘要!=田中太郎」および「摘要!=ガス代」を、4番目の銀行取引情報に適用し、取込ルールに合致しない、と判断する。5番目の銀行取引情報の摘要は「ガス代」だからである。
次に、判断部133は、同様に、入力情報が有する6番目の銀行取引情報も、過去に既に受け付けられていない銀行取引情報である、と判断する。
また、判断部133は、同様に、6番目の銀行取引情報が取込ルールに合致するか否かを判断する。ここで、判断部133は、取込ルール「摘要!=田中太郎」および「摘要!=ガス代」を、6番目の銀行取引情報に適用し、取込ルールに合致すると判断する。
次に、種類取得部132は、変数「種類情報」に銀行取引情報を示す旨の情報を書き込む。
次に、伝票データ構成部131は、6番目の銀行取引情報と変数「種類情報」の情報とを用いて、蓄積する伝票データと種類情報との組の情報(伝票データ等)を構成する。
次に、蓄積部134は、構成された伝票データ等を、取得されたユーザ識別子「usrX」に対応付けて、伝票データ管理表(図14)に蓄積する。
次に、判断部133は、同様に、入力情報が有する7番目の銀行取引情報も、過去に既に受け付けられていない銀行取引情報である、と判断する。
また、判断部133は、同様に、7番目の銀行取引情報が取込ルールに合致するか否かを判断する。ここで、判断部133は、取込ルール「摘要!=田中太郎」および「摘要!=ガス代」を、7番目の銀行取引情報に適用し、取込ルールに合致すると判断する。
次に、種類取得部132は、変数「種類情報」に銀行取引情報を示す旨の情報を書き込む。
次に、伝票データ構成部131は、7番目の銀行取引情報と変数「種類情報」の情報とを用いて、蓄積する伝票データと種類情報との組の情報(伝票データ等)を構成する。
次に、蓄積部134は、構成された伝票データ等を、取得されたユーザ識別子「usrX」に対応付けて、伝票データ管理表(図14)に蓄積する。
次に、処理部13は、取得された判断結果を有する処理結果を取得する。ここで、処理部13は、処理結果「−1,−1,−1,0,−1,0,0」を取得した、とする。ここでの処理結果は、入力情報が有する各判断結果をカンマ「,」で連結した情報である。
次に、出力部14は、判断結果を有する処理結果「−1,−1,−1,0,−1,0,0」を第一端末2に送信する。
次に、第一端末2の第一受信部24は、入力情報の送信に対応して、伝票処理装置1から判断結果を含む処理結果「−1,−1,−1,0,−1,0,0」を受信する。
次に、第一端末2の第一出力部25は、図21の1番目、2番目、3番目、5番目のレコードの銀行取引情報は伝票処理装置1に蓄積されなかった旨の情報を出力する。なお、第一出力部25は、図21の4番目、6番目、7番目のレコードの銀行取引情報は伝票処理装置1に蓄積されなかった旨の情報を出力しても良い。
以上、本具体例によれば、銀行口座の取引情報と伝票処理装置とを適切に連携し、伝票データの入力を適切に支援できる。
(具体例3)
今、税理士Xが第二端末3に対して、伝票データの一覧表の出力指示であり、ユーザ識別子「usrX」を含む出力指示を入力した、とする。
すると、第二端末3の第二受付部31は、ユーザ識別子「usrX」を含む出力指示を受け付ける。
次に、第二処理部32は、送信する出力指示を構成する。そして、第二送信部33は、ユーザ識別子「usrX」を含む出力指示を伝票処理装置1に送信する。
次に、伝票処理装置1の入力受付部121は、ユーザ識別子「usrX」を含む出力指示を受信する。
次に、伝票データ取得部135は、ユーザ識別子「usrX」と対になる伝票データと種類情報との組(伝票データ等)を1組以上、伝票データ管理表から取得する。なお、伝票データ管理表の構造の例は、図15である。
次に、伝票データ取得部135は、取得した1組以上の伝票データ等から表示される伝票データの一覧表を構成する。なお、一覧表の構成方法や一覧表の外観等は問わないことは言うまでもない。
次に、一覧表出力部142は、構成された伝票データの一覧表を第二端末3に送信する。
次に、第二端末3の第二受信部34は、伝票データの一覧表を伝票処理装置1から受信する。
次に、第二出力部35は、受信された一覧表を出力する。かかる一覧表の出力例を図22に示す。図22において、2201〜2203は、伝票データに対応する原始データの種類を示す種類情報である。ここでは、種類情報は、伝票データのレコードの中に、アイコンで表現されている。ここでの種類情報は、伝票データのレコードの先頭に表示されている。また、2201は、原始データが銀行取引情報であることを示すアイコンである。また、2202は、原始データがカード取引情報であることを示すアイコンである。さらに、2203は、原始データが領収書画像であることを示すアイコンである。なお、2204の伝票データのように、種類情報が対応付いていない伝票データもあり得る。
そして、税理士Xは、図22の2205のレコードを選択する指示を、第二端末3に対して入力した、とする。なお、この指示は、例えば、2205のレコードの、例えば、アイコンをマウス等で指示したものである。
すると、第二端末3の第二受付部31は、2205のレコードの伝票データ選択指示を受け付ける。
次に、第二処理部32は、送信する伝票データ選択指示を構成する。なお、第二処理部32は、例えば、2205のレコードに対応する伝票データの識別子、税理士Xのユーザ識別子を有する伝票データ選択指示を構成する。
次に、第二送信部33は、構成された伝票データ選択指示を、伝票処理装置1に送信する。
次に、伝票処理装置1の入力受付部121は、伝票データ選択指示を受信する。
次に、処理部13は、受信された伝票データ選択指示に対応する処理を、以下のように行う。
つまり、まず、種類取得部132は、受信された伝票データ選択指示に対応する伝票データと対になる種類情報「領収書画像」を伝票データ格納部115から取得する。次に、処理部13は、取得された種類情報が領収書画像を示す旨の情報である、と判断する。
次に、処理部13は、受け付けられた伝票データ選択指示に対応する伝票データと対になる領収書画像を、領収書画像格納部112から取得する。
次に、処理部13は、取得した領収書画像に対して、伝票データと対応付いている場合の出力態様となるように処理する。ここでは、処理部13は、例えば、領収書画像の背景色を白色とする。
次に、処理部13は、取得した領収書画像に対応付けて、1以上のボタンを配置する。ここでのボタンは、例えば、図23の2301、2302のボタンである。なお、2301は伝票データの全部または一部を出力するボタン、2302は領収書画像の情報を取得するボタンである。
次に、処理部13は、取得した領収書画像に対応付けて、1以上の操作用のボタンを配置する。操作用のボタンは、例えば、領収書画像を操作するボタン(拡大、縮小、回転)である。2303は、領収書画像を回転させるためのボタンであり、2304は領収書画像を縮小するためのボタンであり、2305は領収書画像を拡大するためのボタンである。
また、ここで、処理部13は、ユーザ識別子「usrX」と対になる伝票データであり、種類情報「領収書」と対になる伝票データのみを取得しても良い。
次に、処理部13は、取得した領収書画像を含む画面の画面情報を構成する。なお、構成された画面情報は、例えば、図23の画面全体を構成するための情報、または図23の画面の領収書画像の領域2306を構成するための情報である。図23の画面全体を構成するための情報である場合、処理部13は、伝票データ選択指示に対応する伝票データと対になる種類情報と同じ種類情報を有する伝票データのみを取得する処理を行う。かかる処理は、種類情報に基づく伝票データのフィルタリング処理である。
次に、画面出力部141は、構成された画面情報を第二端末3に送信する。
次に、第二端末3の第二受信部34は、伝票処理装置1から画面情報を受信する。次に、第二出力部35は、受信された画面情報を出力する。ここでの画面出力例は、図23である。なお、図22において、例えば、ファンクションキー(F4)の押下等により、例えば、種類情報「領収書」に対応付いている伝票データのみが出力されたこととなる。なお、ファンクションキー(F4)の押下により、種類情報を用いた伝票データのフィルタリングが行われたが、種類情報を用いた伝票データのフィルタリング処理は行われなくても良い。なお、ファンクションキー(F4)の押下の代わりに、2205のレコードの指示等の、他の操作を受け付けたことにより、図23の画面が出力されても良いことは言うまでもない。
また、例えば、税理士Xは、図22の2202のレコードを選択する指示を、第二端末3に対して入力した、とする。なお、この指示は、例えば、2202のレコードの、例えば、アイコンをマウス等で指示したものである。
すると、第二端末3の第二受付部31は、2207のレコードの伝票データ選択指示を受け付ける。
次に、第二処理部32は、送信する伝票データ選択指示を構成する。なお、第二処理部32は、例えば、2207のレコードに対応する伝票データの識別子、税理士Xのユーザ識別子を有する伝票データ選択指示を構成する。
次に、第二送信部33は、構成された伝票データ選択指示を、伝票処理装置1に送信する。
次に、伝票処理装置1の入力受付部121は、伝票データ選択指示を受信する。
次に、処理部13は、受信された伝票データ選択指示に対応する処理を、以下のように行う。
つまり、まず、種類取得部132は、受信された伝票データ選択指示に対応する伝票データと対になる種類情報「銀行」を伝票データ格納部115から取得する。次に、処理部13は、取得された種類情報が銀行取引情報を示す旨の情報である、と判断する。
次に、処理部13は、受け付けられた伝票データ選択指示に対応する伝票データと対になる1以上の銀行取引情報を、銀行取引情報格納部113から取得する。ここでは、図24に示す情報を取得した、とする。なお、図24の銀行取引情報は、例えば、伝票データ選択指示により指示されたレコードに対応する銀行取引情報を含む、今月の銀行取引情報の一覧である。
次に、処理部13は、取得した1以上の銀行取引情報を含む画面の画面情報を構成する。
次に、画面出力部141は、構成された画面情報を第二端末3送信する。
次に、第二端末3の第二受信部34は、伝票処理装置1から画面情報を受信する。次に、第二出力部35は、受信された画面情報を出力する。ここでの画面出力例は、図25である。なお、図25において、2202の指示により、例えば、種類情報「銀行取情報」に対応付いている伝票データのみが出力されたこととなる。なお、2202の指示により、種類情報を用いた伝票データのフィルタリングが行われたが、種類情報を用いた伝票データのフィルタリング処理は行われなくても良い。
また、例えば、税理士Xは、図22の2201のアイコンに対する指示を、第二端末3に対して入力した、とする。
すると、第二端末3の第二受付部31は、2201のアイコンに対応するレコードの伝票データ選択指示を受け付ける。
次に、第二処理部32は、送信する伝票データ選択指示を構成する。なお、第二処理部32は、例えば、2201のレコードに対応する伝票データの識別子、税理士Xのユーザ識別子を有する伝票データ選択指示を構成する。
次に、第二送信部33は、構成された伝票データ選択指示を、伝票処理装置1に送信する。
次に、伝票処理装置1の入力受付部121は、伝票データ選択指示を受信する。
次に、処理部13は、受信された伝票データ選択指示に対応する処理を、以下のように行う。
つまり、まず、種類取得部132は、受信された伝票データ選択指示に対応する伝票データと対になる種類情報「カード」を伝票データ格納部115から取得する。次に、処理部13は、取得された種類情報がカード取引情報を示す旨の情報である、と判断する。
次に、処理部13は、受け付けられた伝票データ選択指示に対応する伝票データと対になる1以上のカード取引情報を、カード取引情報格納部114から取得する。なお、取得した1以上のカード取引情報の例は、図26である。また、処理部13が取得したカード取引情報は、2601の1つである。図26の情報は、処理部13が取得したカード取引情報を含むカード取引ファイルの情報である。
次に、処理部13は、取得した1以上のカード取引情報を含む画面の画面情報を構成する。
次に、画面出力部141は、構成された画面情報を送信する。
次に、第二端末3の第二受信部34は、伝票処理装置1から画面情報を受信する。次に、第二出力部35は、受信された画面情報を出力する。ここでの画面出力例は、図27である。なお、図27において、2201の指示により、例えば、種類情報「カード」に対応付いている伝票データのみが出力される。なお、2201の指示により、種類情報を用いた伝票データのフィルタリングが行われたが、種類情報を用いた伝票データのフィルタリング処理は行われなくても良い。
以上、本具体例によれば、伝票データの一覧表の出力時に、ユーザは、一覧表を構成する各伝票データの元になる原始データの種類を容易に把握できる。その結果、伝票データのチェックの効率化を図ることができる。具体的には、原始データの種類が自動取得されたデータである場合、対応する伝票データのチェックが不要、または簡素化できる。そして、手入力された伝票データのみを十分にチェックすれば良くなる。なお、自動取得されたデータは、上述した銀行取引情報、カード取引情報である。
また、本実施の形態によれば、伝票データの出力時に、伝票データの元になる原始データの種類を、アイコンにより容易に把握できる。
また、本実施の形態によれば、領収書画像を見ながら伝票データを入力する場合に、伝票データを入力済みの領収書画像と伝票データを入力しなければならない領収書画像との区別が容易にできる。
また、本実施の形態によれば、伝票処理装置に既に存在する銀行取引情報またはカード取引情報をチェックできることにより、伝票データの入力を適切に支援できる。
さらに、本実施の形態によれば、取引ルールを用いて、受け付ける必要のない銀行取引情報またはカード取引情報をチェックできることにより、伝票データの入力を適切に支援できる。
なお、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータがアクセス可能な記録媒体は、伝票データと、当該伝票データの元になるデータである原始データの種類を示す種類情報との組を1または2組以上格納し得る伝票データ格納部を具備し、コンピュータを、伝票データの元になる2種類以上の原始データを受け付ける原始データ受付部と、ユーザからの情報入力および伝票の一覧表の出力の指示である出力指示を受け付ける入力受付部と、前記原始データ、または前記原始データと前記情報入力、または前記情報入力を用いて、伝票データを構成する伝票データ構成部と、前記原始データ受付部が受け付けた原始データの種類である種類情報を取得する種類取得部と、前記伝票データと前記種類情報とを対応付けて、前記伝票データ格納部に蓄積する蓄積部と、前記入力受付部が出力指示を受け付けた場合、伝票データと種類情報との組を、1または2組以上、前記伝票データ格納部から取得する伝票データ取得部と、前記伝票データ取得部が取得した1組以上の伝票データと種類情報との組を、各伝票データと各種類情報とが対応付く態様で出力する一覧表出力部として機能させるためのプログラムである。
また、上記プログラムにおいて、前記一覧表出力部は、前記伝票データ取得部が取得した2組以上の伝票データと種類情報との組を、各伝票データと各種類情報とが対応付く態様で出力し、前記入力受付部は、出力されている2以上の伝票データのうちの、一の伝票データに対する指示である伝票データ選択指示をも受け付け、コンピュータを、前記伝票データ選択指示に対応する前記一の伝票データと対になる種類情報に応じた画面であり、種類情報により異なる画面を出力する画面出力部としてさらに機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記一覧表出力部は、前記伝票データ取得部が取得した2組以上の伝票データと種類情報との組を、各伝票データと各種類情報とが対応付く態様で出力し、前記入力受付部は、出力されている2以上の伝票データのうちの、一の伝票データに対する指示である伝票データ選択指示をも受け付け、コンピュータを、前記伝票データ選択指示に対応する前記一の伝票データと対になる種類情報と同一の種類情報と対になる1以上の伝票データを取得する伝票データフィルタリング部としてさらに機能させ、前記一覧表出力部は、前記伝票データフィルタリング部が取得した1以上の伝票データを出力するものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記一覧表出力部は、前記種類情報に対応するアイコンを出力するものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記一覧表出力部は、前記伝票データ取得部が取得した1以上の伝票データを一覧表の形式で出力し、かつ前記1以上の各伝票データに対応付く態様で、種類情報に対応するアイコンを出力するものとして、コンピュータを機能させるプログラムであることは好適である。
また、記録媒体は、領収書の画像である1以上の領収書画像を格納し得る領収書画像格納部をさらに具備し、上記プログラムにおいて、第一端末が送信した領収書画像を受信する領収書画像受信部として、コンピュータをさらに機能させ、前記蓄積部は、前記領収書画像受信部が受信した領収書画像を前記領収書画像格納部に蓄積し、前記入力受付部は、前記領収書画像格納部に格納されている1以上の領収書画像のうちのいずれかの領収書画像に対応付けた伝票データを受け付けるものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記入力受付部は、領収書画像の出力指示をも受け付け、前記出力部は、前記出力指示を受け付けた場合に、前記領収書画像格納部から、前記出力指示に対応する1以上の領収書画像を取得し、伝票データと対応付いている領収書画像と伝票データと対応付いていない領収書画像とを視覚的に区別可能に表示するように、1以上の領収書画像を出力するものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記入力受付部は、銀行口座における取り引きの情報である1または2以上の取引情報を含む入力情報を受け付け、前記蓄積部は、前記入力受付部が受け付けた1以上の取引情報に対する1以上の伝票データの一部または全部と、銀行の取引情報であることを示す種類情報とを対応付けて、前記伝票データ格納部に蓄積する ものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、コンピュータを、前記入力情報に含まれる1または2以上の取引情報が、過去に受け付けられたか否かを判断する判断部としてさらに機能させ、前記蓄積部は、前記判断部が過去に受け付けられていないと判断した取引情報に対する伝票データの一部または全部と、銀行の取引情報であることを示す種類情報とを対応付けて、前記伝票データ格納部に蓄積するものとして、コンピュータを機能させるプログラムであることは好適である。
また、図28は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の伝票処理装置を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図28は、このコンピュータシステム300の概観図であり、図29は、システム300のブロック図である。
図28において、コンピュータシステム300は、CD−ROMドライブを含むコンピュータ301と、キーボード302と、マウス303と、モニタ304とを含む。
図29において、コンピュータ301は、CD−ROMドライブ3012に加えて、MPU3013と、バス3014と、ROM3015と、RAM3016と、ハードディスク3017とを含む。なお、バス3014は、MPU3013やCD−ROMドライブ3012に接続されている。また、ROM3015には、ブートアッププログラム等のプログラムが記憶されている。また、RAM3016は、MPU3013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのものである。また、ハードディスク3017は、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのものである。ここでは、図示しないが、コンピュータ301は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム300に、上述した実施の形態の伝票処理装置1の機能を実行させるプログラムは、CD−ROM3101に記憶されて、CD−ROMドライブ3012に挿入され、さらにハードディスク3017に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ301に送信され、ハードディスク3017に記憶されても良い。プログラムは実行の際にRAM3016にロードされる。プログラムは、CD−ROM3101またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ301に、上述した実施の形態の伝票処理装置1の機能を実行させるオペレーティングシステム、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム300がどのように動作するかは周知であり、詳細な説明は省略する。
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信するステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。具体的には、伝票処理装置1はスタンドアロンでも良い。かかる場合、伝票処理装置1は、格納部11、受付部12、処理部13、出力部14を備える。ここで、受付部12は、ユーザから情報や指示等を受け付ける。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。