以下、本発明を実施するための形態について、添付図面を参照して説明する。本明細書及び図面において、実質的に同一の機能又は構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。
以下に説明する実施形態において、会計事務所の顧客である事業者の損益管理や財務を管理するためのシステムを、メインとなる第1会計システムとして扱う。そして、メインとなる第1会計システムを「メインシステム」と略称する。メインシステムでは、会計仕訳の候補が自動的に抽出されて確定仕訳が行われる
また、会計事務所が税務申告を代理するために利用している会計システムを、ターゲットとなる第2会計システムとして扱う。そして、ターゲットとなる第2会計システムを「ターゲットシステム」と略称する。ターゲットシステムでは、メインシステムで行われた確定仕訳を受け入れる。
また、メインシステムとターゲットシステムが双方向の仕訳を同期するシステムを「同期システム」又は「同期サブシステム」と称する。同期システム及び同期サブシステムは、いずれも以下に説明するデータ連携システムで用いられ、メインシステムとターゲットシステムの仕訳を同期する同期装置がその機能を担う。第1会計システムでは、例えば、会社の部門別に会計データが管理される。一方、第2会計システムでは、会社全体の決算、確定申告、費用収益等の会計仕訳が行われる。このため、第1会計システムで扱う項目に比べて、第2会計システムで扱う項目は少ない。第2会計システムで仕訳が行われたデータを第1会計システムが取り込むためには、第1会計システムの機能に合わせたデータに変換することが必要となる。そこで、同期装置は、異なる会計システム間のデータを同期する機能を持っている。また、同期装置は、上述した事業者が持つことが多いが、データ同期会社が持つこともある。データ同期会社とは、会計処理に用いられる仕訳データをメインシステム200とターゲットシステム300とで同期するサービスを提供する会社である。
[システム構成例]
図1は、第1及び第2の実施形態に係るデータ連携システム100,100Aのシステム構成例を示す図である。
図1の上段には、第1の実施形態に係るデータ連携システム100のシステム構成例が示される。
データ連携システム100は、メインシステム200及び同期サブシステム210と、ターゲットシステム300とで構成される。
メインシステム200は、例えば、データ同期会社又は事業者で用いられる第1会計システムの一例である。本明細書では、メインシステム200を利用して、ターゲットシステム300にサービスを提供する者をユーザーと呼ぶ。
データ同期会社又は事業者は、メインシステム200と同期サブシステム210を用いて、データ連携システム100の全体の処理を管理する。同期サブシステム210は、メインシステム200と一体化された同期装置の一例として用いられる。このため、メインシステム200から同期サブシステム210へのデータの移動は、外部のインターネット等を介さない。
ターゲットシステム300は、例えば、会計事務所にて使用される第2会計システムの一例である。
メインシステム200は、同期サブシステム210を通じてターゲットシステム300の仕訳データを確定する。例えば、ターゲットシステム300で仕訳処理が行われた仕訳データは、同期サブシステム210を介してメインシステム200に送られる。そして、メインシステム200にて適切な内容に書き換えられ、確定された仕訳の仕訳データがターゲットシステム300に返る。すると、ターゲットシステム300は、確定された仕訳データを取り込む。こうして、メインシステム200が管理する仕訳データと、ターゲットシステム300が管理する仕訳データとが同期される。
図1の下段には、第2の実施形態に係るデータ連携システム100Aのシステム構成例が示される。
データ連携システム100Aは、メインシステム200Aと、同期システム400と、ターゲットシステム300Aとで構成される。
メインシステム200Aは、例えば、事業者で用いられる第1会計システムの一例である。
ターゲットシステム300Aは、例えば、会計事務所にて使用される第2会計システムの一例である。第1会計システムと第2会計システムは、それぞれ異なる会計ソフトウェアを使用するため、各システムで用いられる各種のデータの項目は異なっている。
同期システム400は、クラウド上に構成されるWebシステムであって、データ連携システム100Aの全体処理を管理するデータ同期会社により管理される。このため、同期システム400は、メインシステム200と別体で構成された同期装置の一例として用いられる。
メインシステム200Aとターゲットシステム300Aは、それぞれインターネット等のネットワークを介して同期システム400にアクセスする。そして、同期システム400は、メインシステム200Aから受信するデータをターゲットシステム300Aに送信したり、ターゲットシステム300Aから受信するデータをメインシステム200Aに送信したりする。
以下、データ連携システム100,100Aの処理について説明する。以下の説明では、メインシステムからターゲットシステムにデータを同期する処理を「ダウンストリームの同期」と呼ぶ。逆に、ターゲットシステムからメインシステムにデータを同期する処理を「アップストリームの同期」と呼ぶ。ここで、ダウンストリーム及びアップストリームの同期の概要について、データ連携システム100に基づいて説明する。
(ダウンストリームの同期の概要)
ターゲットシステム300は、メインシステム200で作成された仕訳データのユニーク性を保証する伝票番号を保持する。この伝票番号は、仕訳データに付加される。
メインシステム200で作成された仕訳は、必ずターゲットシステム300でも生成される。そこでメインシステム200で作成された仕訳データがターゲットシステム300に取り込まれる。同期サブシステム210は、同期されたデータを削除する。
(アップストリームの同期の概要)
ターゲットシステム300で作成された仕訳を表す仕訳データは、未承認のデータとして、メインシステム200が受け取る。そして、メインシステム200で仕訳データが承認されると、同期サブシステム210を介して承認された仕訳データがターゲットシステム300に送られる。その後、同期サブシステム210は、同期されたデータを削除する。
なお、メインシステム200により承認されなかった仕訳データは、メインシステム200の仕訳に取り込まれない。そして、ターゲットシステム300は、承認されなかった仕訳データを削除する。
ターゲットシステム300が作成した仕訳データを修正する時には、メインシステム200が行う処理として、修正の受け入れ、修正の取消の2種類の処理が想定される。
メインシステム200は、ターゲットシステム300から仕訳データを逆変換した未確定の仕訳データを受け入れると、この仕訳データに対する修正を行って確定した、仕訳データを作成する。
あるいは、メインシステム200は、未確定仕訳データの修正を行わないで、ターゲットシステム300に仕訳データの削除を指示する。
次に、各実施の形態に係るデータ連携システム100,100Aの構成例及び動作例について、それぞれダウンストリームの処理、アップストリームの順に説明する。
[第1の実施の形態]
始めに、第1の実施の形態に係るデータ連携システム100の構成例について、図2と図3を参照して説明する。
図2は、第1の実施の形態に係るデータ連携システム100のダウンストリームに関わる機能ブロックの構成例を示す。ここでは、同期サブシステム210を通じたダウンストリームの処理に関わる機能ブロックの構成例及び動作例を説明する。ダウンストリームでは、メインシステム200、同期サブシステム210、ターゲットシステム300の順に処理が進む。
メインシステム200は、後述する図3に示す自動仕訳部22により会計仕訳を行い、仕訳データ20を作成する。仕訳データ20は、同期サブシステム210に出力される。以下の説明では、会計仕訳を「仕訳」と略称する。同期サブシステム210は、変換部30、変換テーブル31、同期テーブル33及び待受部34を備える。
変換部30は、メインシステム200が作成した仕訳データ20(第1仕訳データの一例)をターゲットシステム300が取込可能なデータ形式に変換する。この際、変換部30は、変換テーブル31を参照して、仕訳データ20をターゲットシステム300が取込可能なデータ形式の仕訳データ32に変換する。
メインシステム200とターゲットシステム300は、同じ項目であっても、異なる名称、記号等で管理することがある。このため、変換テーブル31は、後述する図6に示すように、仕訳データ20の項目ごとに、メインシステム200及びターゲットシステム300で用いられる語句の対応関係を保持する。語句の対応関係としては、例えば、借方科目における、メインシステム200での「交際費」とターゲットシステム300での「交際接待費」や、貸方科目における、メインシステム200での「現金」とターゲットシステム300での「小口現金」が想定される。以下の説明では、メインシステム200で使用されるデータの項目を、ターゲットシステム300で使用されるデータの項目に変換する処理を「変換」と呼ぶ。
同期テーブル33は、仕訳データ32(変換後の第1仕訳データの一例)をターゲットシステム300が取込可能に保存する。すなわち、同期テーブル33には、変換後の仕訳データ32が格納される。この変換後の仕訳データ32は、ターゲットシステム300が管理する仕訳データとの同期がとれるまで同期テーブル33に格納される。待受部34は、以下の(1)、(2)の役割を有する。
(1)ターゲットシステム300が仕訳データ32を正常に取込むことをコントロールする。例えば、未取込の仕訳データがあれば、ターゲットシステム300が未取込の仕訳データを取り込んで、ターゲットシステム300の仕訳を更新すると、待受部34は、ターゲットシステム300が仕訳を更新済みであることを同期テーブル33に記録する。
(2)待受部34が上記のコントロールを行うために2段階で制御する。
(第1段階)同期テーブル33から読み出した仕訳データ32をターゲットシステム300が取込むと、待受部34は、ターゲットシステム300から正常に仕訳データ32を取込んだことを表す情報を受信する。この情報により、待受部34は、ターゲットシステム300が仕訳データ32を正常に取込んだことを管理する。
(第2段階)次に、待受部34は、ターゲットシステム300から仕訳データ32により正常に仕訳を更新できたことを表す情報を受信する。この情報により、待受部34は、ターゲットシステム300が仕訳データ32により正常に仕訳を更新したことを管理する。また待受部34は、正常に仕訳を更新できたことを表す情報を受信すると、同期テーブル33のレコードを更新済みに変更する。
待受部34は、ターゲットシステム300からの問合せを受けると、同期テーブル33から読み出した仕訳データ32をターゲットシステム300に送信する。例えば、待受部34は、ターゲットシステム300から仕訳データ32の有無の問い合わせがなされたとき、同期テーブル33に仕訳データ32が記録されていれば、ターゲットシステム300が未取込である未取込データをターゲットシステム300に返す。
この時、待受部34は、未取込データとして、同期テーブル33から読み出した仕訳データ32をAPI(Application Programming Interface)連携でターゲットシステム300に送る。また、待受部34は、ターゲットシステム300が未取込データの取り込み処理、すなわち仕訳の更新を終了したことを示す情報がターゲットシステム300に返されると、同期テーブル33に仕訳の更新済みを書き込む。その後、待受部34は、ターゲットシステム300が取り込んだ仕訳データ32を同期テーブル33から削除する。
ターゲットシステム300は、仕訳作成部50を備える。ターゲットシステム300は、API連携で同期サブシステム210からAPI連携で未取込の仕訳データ38を受信する。そこで、仕訳作成部50は、待受部34に仕訳データ32の有無を問い合わせる。仕訳作成部50は、同期テーブル33に未取込の仕訳データ32が格納されていることが待受部34から通知されると、待受部34を通じたAPI連携で未取込の仕訳データ32を取得する。そして、仕訳作成部50は、ターゲットシステム300に仕訳データ32を取り込み、仕訳を更新する。そして、仕訳作成部50は、未取込である仕訳データ32を取得したことと、仕訳データ32の取り込み処理が正常終了したことを含む取込結果を同期サブシステム210の待受部34に出力する。
上述したように同期サブシステム210の待受部34とターゲットシステム300の仕訳作成部50の間で行われるデータ送受信に際して、API連携が用いられる。API連携においては、主に受信側の機能部、例えば、待受部34がターゲットシステム300に対してAPIを提供している。API連携にあたって、仕訳作成部50は、例えば、ターゲットシステム300として用いられる会計システムの種類、ターゲットシステム300を使用する会計事務所のID等の情報を渡し、待受部34は、不図示の認証部により、会計事務所のID等を認証する。その後、仕訳作成部50は、待受部34からのリクエストに応じたレスポンスを待受部34に返す。
本実施の形態では、仕訳作成部50が待受部34に対して、仕訳作成部50が未取込の仕訳データの有無を問い合わせ(リクエスト)、待受部34は、未取込の仕訳データを仕訳作成部50に送信する(レスポンス)。以下の説明で、異なるシステム間でAPI連携が行われるときは、APIを提供するシステムが不図示の認証部にて、リクエストを送信するシステムの認証処理を行った後、リクエストに対するレスポンスを行うものとする。
図3は、第1の実施の形態に係るデータ連携システム100のアップストリームに関わる機能ブロックの構成例を示す。ここでは、同期サブシステム210を通じたアップストリームの処理に関わる機能ブロックの構成例及び動作例について説明する。アップストリームでは、ターゲットシステム300、同期サブシステム210、メインシステム200、同期サブシステム210、ターゲットシステム300の順に処理が進む。
ターゲットシステム300は、図2に示した仕訳作成部50の他、送信部52を備える。
送信部52は、ターゲットシステム300で追加、修正又は削除された会計仕訳の仕訳データ51をAPI連携で同期サブシステム210に送信する。
同期サブシステム210は、ターゲットシステム300で作成された仕訳データ51(第2仕訳データの一例)をメインシステム200が取込可能なデータ形式に逆変換する。また、同期サブシステム210は、ターゲットシステム300で行われた仕訳に対してメインシステム200が確定仕訳を行った仕訳データ24(確定仕訳後の第2仕訳データの一例)をターゲットシステム300が取込可能なデータ形式に変換し、仕訳データ38(変換後の第2仕訳データの一例)をターゲットシステム300に送信する。
図3に示すように、同期サブシステム210は、変換部30、変換テーブル31、同期テーブル33、待受部34に加えて、受信部35、逆変換部36及び逆変換テーブル37を備える。
受信部35は、ターゲットシステム300の送信部52から同期サブシステム210に送信された仕訳データ51をAPI連携で受信する。
上述したように、ターゲットシステム300の送信部52から、同期サブシステム210の受信部35に対するデータ送信に際して、API連携が用いられる。受信部35はターゲットシステム300に対してAPIを提供している。送信部52は、同期サブシステム210に対して、仕訳データ51の送信可否を問い合わせ(リクエスト)、受信部35は、仕訳データ51を受信可能であることをターゲットシステム300に通知する(レスポンス)。その後、送信部52は、仕訳データ51を同期サブシステム210に送信し、受信部35が仕訳データ51を受信する。
逆変換部36は、逆変換テーブル37を参照して、ターゲットシステム300から受信した仕訳データ51を、メインシステム200が取込可能なデータ形式に逆変換する。このため、逆変換部36は、受信部35から入力した仕訳データ51の項目を、メインシステム200で用いられる項目に逆変換し、同期テーブル33に逆変換後の仕訳データ51を格納する。この逆変換後の仕訳データ51がメインシステム200による未確定の仕訳データとなる。
ターゲットシステム300で使用されるデータの項目を、メインシステム200で使用されるデータの項目に変換する処理は、図2に示した項目を変換する処理とは逆である。そこで、以下の説明では、ターゲットシステム300で使用されるデータの項目を、メインシステム200で使用されるデータの項目に変換する処理を「逆変換」と呼ぶ。
逆変換テーブル37は、ターゲットシステム300で用いられる項目と、メインシステム200で用いられる項目との対応が格納されたテーブルである。逆変換テーブル37は、仕訳データ51の項目ごとに、メインシステム200及びターゲットシステム300で用いられる語句の対応関係を保持する。
同期テーブル33は、メインシステム200の仕訳が、ターゲットシステム300で作成された仕訳と同期がとれるまで、逆変換後の仕訳データ51を格納する。同期テーブル33に格納された逆変換後の仕訳データ51は、未確定仕訳データ21としてメインシステム200により読み出される。
すなわち、メインシステム200は、同期テーブル33に格納された逆変換後の仕訳データ51を、未確定仕訳データ21として読み出す。未確定仕訳データ21に対してメインシステム200による確定仕訳が行われると、未確定仕訳データ21は、仕訳データ24として同期サブシステム210に取り込まれる。
図3に示すように、メインシステム200は、自動仕訳部22及び確定処理部23を備える。
自動仕訳部22は、逆変換後の仕訳データ51である未確定仕訳データ21(第2仕訳データの一例)に対して仕訳の候補を抽出する仕訳候補抽出部の一例として用いられる。自動仕訳部22は、本発明者が発明した自動仕訳を行って、未処理仕訳の情報から確率の高い仕訳候補を抽出した自動仕訳の結果を確定処理部23に表示する。
ここで、自動仕訳部22により行われる自動仕訳について処理の概要を説明する。
自動仕訳部22は、未確定仕訳データ21に対して、一般推論データベースD1、履歴推論データベースD2、消込推論データベースD3に基づき自動的に仕訳を推論する。自動仕訳部22により自動仕訳が推論される処理は、本発明者による特許第4783200号公報に詳細な内容が説明されているため、ここでは簡潔な説明にとどめる。
自動仕訳部22による仕訳は、以下の3つの推論によって行われる。これら3つの推論により自動的に行われる仕訳を「自動仕訳」と呼ぶ。自動仕訳は、例えば、AI(Artificial Intelligence)を用いた自動処理で行われる。
(1)一般推論(一般的な商取引からの推論)
一般推論は、例えば、ユーザーが初めて取引した相手先から受領する伝票の仕訳を行うために用いられる処理である。一般推論では、一般的な借方科目及び貸方科目を推論するために参照される一般推論データベースD1(一般推論記憶部の一例)が用いられる。自動仕訳部22は、未確定仕訳データ21に含まれる伝票日付、金額、摘要のうちの少なくとも1項目以上の項目に基づいて、一般推論データベースD1を参照し、一般的な借方科目及び貸方科目を推論する。自動仕訳部22が一般推論を行う際、一般推論データベースD1に格納される、「摘要」の判断に使用される文言等が参照される。
(2)履歴推論(過去に入力した仕訳に類似しているものからの推論)
履歴推論は、過去に正しい仕訳として処理されたデータと今回処理するデータの類似性を判断し、過去に取引したことがある相手先と過去に行った仕訳と同様の仕訳を行うために用いられる処理である。すなわち、履歴推論では、過去に仕訳された未確定仕訳データ21に基づいて、特定の借方科目及び貸方科目を推論するために参照される履歴推論データベースD2(履歴推論記憶部の一例)が用いられる。
自動仕訳部22は、未確定仕訳データ21に含まれる伝票日付、相手先、摘要に基づいて履歴推論データベースD2を参照し、特定の借方科目及び貸方科目を推論する。自動仕訳部22が履歴推論を行う際、履歴推論データベースD2に設けられる過去に仕訳されたデータの中で、例えば、伝票日付、相手先、摘要のパターンに基づいて推論が行われる。
(3)消込推論(売掛金や借入金等の過去に発生した会計事象からの推論)
消込推論は、売掛金の入金や出張旅費の精算を行う場合等で、その会計事象を処理する前段階の会計事象が既に存在していれば、その前段階の会計事象の情報に基づいて仕訳を行うために用いられる処理である。すなわち、消込推論では、過去に発生した会計事象に対応する未確定仕訳データ21の消込を推論するために参照される消込推論データベースD3(消込推論記憶部の一例)が用いられる。
自動仕訳部22は、過去に発生した会計事象に基づいて、消込推論データベースD3を参照し、未確定仕訳データ21に対して消込を推論する。消込推論では、自動仕訳部22により、消込推論データベースD3に設けられる売掛金ファイル、精算ファイル、借入金ファイル等が参照され、過去の会計事象の中で合致する事象に基づいて推論が行われる。
そして、自動仕訳部22は、一般推論と、履歴推論と、消込推論とのうち、少なくとも一つ以上の推論を行って、その仕訳結果を確定処理部23に出力する。
確定処理部23は、自動仕訳部22により抽出された仕訳の候補から一の仕訳を確定し、仕訳データ24(確定仕訳を行った第2仕訳データの一例)を作成する。この時、確定処理部23は、自動仕訳部22による自動仕訳の結果である仕訳候補を表示装置に表示させ、ユーザーの操作により仕訳を確定させる。また、確定処理部23は、自動仕訳の結果を仕訳データ24として同期サブシステム210の変換部30に出力する。
同期サブシステム210の変換部30は、変換テーブル31を参照して、同期サブシステム210に入力された仕訳データ24を、ターゲットシステム300が取込可能な仕訳データ38に変換する。そして、変換部30は、変換した仕訳データ38を同期テーブル33に格納する。
待受部34は、ターゲットシステム300による仕訳データ32の取り込み要求を待ち受ける。そして、待受部34は、ターゲットシステム300から取り込み要求を受信すると、ターゲットシステム300に仕訳データ38を送り、ターゲットシステム300にて仕訳が更新された後、同期テーブル33から仕訳データ32を削除する。
[第2の実施の形態]
次に、第2の実施の形態に係るデータ連携システム100Aの構成例について、図4と図5を参照して説明する。
図4は、第2の実施の形態に係るデータ連携システム100Aのダウンストリームに関わる機能ブロックの構成例を示す。ここでは、同期システム400を通じたダウンストリームの処理に関わる機能ブロックの構成例及び動作例を説明する。ダウンストリームでは、メインシステム200A、同期システム400、ターゲットシステム300Aの順に処理が進む。
メインシステム200Aと同期システム400とは、設置場所等が異なるシステムである。このため、メインシステム200Aと同期システム400との間のデータの送受信は、インターネット等を介して行われる。本実施の形態では、メインシステム200Aと同期システム400とで行われるAPI連携により、各種のデータが送受信される。
メインシステム200Aは、送信部25を備える。
送信部25は、メインシステム200Aで追加、修正又は削除された会計仕訳の仕訳データ20をAPI連携で同期システム400に送信する。
同期システム400は、図2に示した同期サブシステム210が備える変換部30、変換テーブル31、同期テーブル33、待受部34に加えて受信部39を備える。
上述したように、メインシステム200Aと、同期システム400とは別々に構成されている。このため、メインシステム200Aには、仕訳データ20を送信するための送信部25が設けられ、同期システム400には、仕訳データ20を受信するための受信部39が設けられる。
メインシステム200Aの送信部25から、同期システム400の受信部39に対するデータ送信に際して、API連携が用いられる。受信部39はメインシステム200Aに対してAPIを提供している。送信部25は、仕訳データ20の送信可否を同期システム400に問い合わせ(リクエスト)、受信部39は、仕訳データ20を受信可能であることをメインシステム200Aに通知する(レスポンス)。その後、送信部25は、仕訳データ20を送信し、受信部39が仕訳データ20を受信する。
受信部39が仕訳データ20を受信した後の処理の流れは、図2に示した同期サブシステム210及びターゲットシステム300における処理の流れと同様である。
すなわち、変換部30は、変換テーブル31を参照して、受信部39がメインシステム200Aから受信した仕訳データ20を、ターゲットシステム300A用の仕訳データ32に変換し、同期テーブル33に保存する。
図5は、第2の実施の形態に係るデータ連携システム100Aのアップストリームに関わる機能ブロックの構成例を示す。ここでは、同期システム400を通じたアップストリームの処理に関わる機能ブロックの構成例及び動作例について説明する。アップストリームでは、ターゲットシステム300A、同期システム400、メインシステム200A、同期システム400、ターゲットシステム300Aの順に処理が進む。
ターゲットシステム300Aは、図2に示した仕訳作成部50の他、送信部52を備える。
送信部52は、ターゲットシステム300Aで仕訳された仕訳データ51をAPI連携で同期システム400に送信する。
同期システム400は、図3に示した同期サブシステム210が備える変換部30、変換テーブル31、同期テーブル33、待受部34、受信部35、逆変換部36、逆変換テーブル37に加えて、受信部39及び送信部40を備える。同期システム400とターゲットシステム300Aとの間では、API連携で仕訳データ51及び変換後の仕訳データ38が送受信される。
同期システム400の受信部35がターゲットシステム300Aから受信した仕訳データ51の項目は、逆変換テーブル37を参照する逆変換部36により逆変換され、同期テーブル33に格納される。そして、送信部40(第1送信部の一例)は、同期テーブル33から読み出した逆変換後の仕訳データ51(逆変換後の第2仕訳データの一例)をメインシステム200Aに送信する。
メインシステム200Aは、図3に示した自動仕訳部22及び確定処理部23に加えて、送信部25及び受信部26を備える。メインシステム200Aと同期システム400との間は、API連携で未確定仕訳データ21及び仕訳データ24が送受信される。
受信部26(第2受信部の一例)は、同期システム400の送信部40から送信され逆変換された仕訳データ51を、未確定仕訳データ21として受信する。未確定仕訳データ21は、メインシステム200Aの自動仕訳部22により自動仕訳される。そして、確定処理部23により仕訳が確定されると、仕訳データ24が作成される。
同期システム400の送信部40から、メインシステム200Aの受信部26に対するデータ送信に際して、API連携が用いられる。受信部26はメインシステム200Aに対してAPIを提供している。同期システム400の送信部40は、逆変換後の仕訳データ51の送信可否をメインシステム200Aに問い合わせ(リクエスト)、メインシステム200Aの受信部26は、逆変換後の仕訳データ51を受信可能であることを同期システム400に通知する(レスポンス)。その後、送信部40は、逆変換後の仕訳データ51を送信し、受信部26が逆変換後の仕訳データ51を受信する。
メインシステム200Aの送信部25(第2送信部の一例)は、仕訳データ24(確定仕訳が行われた第2仕訳データの一例)を同期システム400に送信する。この送信部25は、同期システム400に対するリクエストとレスポンスを制御する。そして、送信部25は、API連携で同期システム400に仕訳データ24を送信する。
同期システム400の受信部39は、メインシステム200Aの送信部25からのリクエストに応答する。受信部39は、確定処理部23が確定した仕訳である仕訳データ24は、メインシステム200Aの送信部25から受信する。そして、同期システム400の変換部30は、変換テーブル31を参照し、仕訳データ24をターゲット用の仕訳データ38に変換する。そして、変換部30は、仕訳データ24を変換した仕訳データ38を同期テーブル33に格納する。
同期システム400の待受部34は、ターゲットシステム300の仕訳作成部50から取り込み要求を受信すると、ターゲットシステム300に仕訳データ38を送る。また、待受部34は、仕訳作成部50から取込結果を受信すると、同期テーブル33から仕訳データ38を削除する。
図6は、変換テーブル31及び逆変換テーブル37のテーブル構成例を示す図である。
変換テーブル31は、メインシステム200,200Aで使用される項目を、ターゲットシステム300,300Aで使用される項目に変換するために設けられる。変換テーブル31には、メインシステム、ターゲットシステムの項目が設けられる。そして、変換テーブル31には、勘定科目、消費税区分の項目ごとに変換元と変換先のデータが格納される。例えば、メインシステム200,200Aで使用される「現金」の勘定科目は、変換テーブル31を通じて「小口現金」に変換される。なお、メインシステム200,200Aで使用される「事務用品費」の勘定科目は、ターゲットシステム300,300Aで使用される勘定科目と同じである。変換部30は仕訳データの変換時に勘定科目が同じ名称であるか否かの判定をしないで変換するので、変換テーブル31には各会計システムで同じ名称の勘定科目があってもよい。また、勘定科目に割り当てられるコードは、各会計システムの内部に存在しているので、実際の処理では変換部30はコードを変換している。このため、実務的には、各会計システムで用いられる勘定科目が同じ名称であることが多い。
逆変換テーブル37は、ターゲットシステム300,300Aで使用される項目を、メインシステム200で使用される項目に変換するために設けられる。逆変換テーブル37の構成は、変換テーブル31と同様である。例えば、ターゲットシステム300,300Aで使用される「小口現金」の勘定科目は、逆変換テーブル37を通じて「現金」に変換される。
変換テーブル31と逆変換テーブル37は実質的に同じ内容である。本実施の形態の説明では、変換、逆変換の処理を明確に分けるため、変換時には変換テーブル31を用い、逆変換時には逆変換テーブル37を用いる構成としたが、変換テーブル31と逆変換テーブル37を同じテーブルとして用いてもよい。
[同期テーブルのデータの変化]
次に、同期テーブル33のデータの変化について、ダウンストリーム、アップストリームの順に説明する。第1の実施の形態に係るデータ連携システム100、第2の実施の形態に係るデータ連携システム100Aのいずれでも同じように同期テーブル33のデータが変化する。そこで、以下の説明では、図2と図4に示した第1の実施の形態に係るデータ連携システム100の構成例を参照して、同期テーブル33のデータの変化について説明する。
<ダウンストリームの処理>
ここで、ダウンストリームの処理を、追加、修正、削除の順に、図7~図9を参照して説明する。
<ダウンストリーム追加の処理>
図7は、ダウンストリーム追加の処理における同期テーブル33のデータの変化の様子を示す。
同期テーブル33は、メインシステム200で起票された伝票(仕訳)を伝票番号ごとに管理する。この伝票のレコードは、区分、システム名、伝票日付、伝票番号、借方科目、貸方科目、消費税区分、金額、摘要、同期状態区分の項目で構成される。なお、伝票のレコードは、メインシステムとターゲットシステムとで同じ項目を有している。また、一つの伝票について一つのレコードが作成される。
図7では、説明の都合上、メインシステム200とターゲットシステム300のレコードを上下に並べて図示しているが、実際には、区分、メインシステム200のレコード(伝票日付、…、摘要)、ターゲットシステム300のレコード(伝票日付、…、摘要)、同期状態区分の順に項目が並んでいる。また、システムの項目には、メインシステム200又はターゲットシステム300を識別する識別ID(不図示)が格納されている。
(メインシステム及び同期サブシステムの処理)
メインシステム200で仕訳が追加されると、例えば、伝票番号として「00012」が採番された仕訳データ20が作成される。この仕訳データ20の伝票日付は「2021-4-5」、借方科目は「交際費」、貸方科目は「現金」、消費税区分は「課税」、金額は「11,000」、摘要は「取引先と飲食」である。
変換部30は、変換テーブル31を参照して、仕訳データ20の借方科目、貸方科目、消費税区分の内容を、ターゲットシステム300の内容に変換し、ターゲットシステム用の仕訳データ32を作成する。
メインシステム200とターゲットシステム300では、例えば、借方科目、貸方科目、消費税区分の内容が異なる。借方科目であれば、メインシステム200が「交際費」、ターゲットシステム300が「交際接待費」を用いている。また、貸方科目であれば、メインシステム200が「現金」、ターゲットシステム300が「小口現金」を用いている。また、消費税区分であれば、メインシステム200が「課税」、ターゲットシステム300が「10」を用いている。
このように変換テーブル31には、メインシステム200からターゲットシステム300に項目を変換する時の項目毎の対応が格納されている。
メインシステム200とターゲットシステム300では、項目の内容が異なることがあるので、メインシステム200が作成した仕訳データ20の項目を仕訳データ32に変換することで、ターゲットシステム300が仕訳データ32を取り込むことができる。
また、変換部30は、同期状態区分に未取込を表す「1」を追加し、ターゲットシステム300がまだ付加していない伝票番号の項目は空欄とした仕訳データ32を同期テーブル33に書き込む。未取込とは、ターゲットシステム300が仕訳データ32を取り込んでいないことを表す。図7のレコード(1)は、変換後の仕訳データ32が同期テーブル33に格納された様子を表す。
(ターゲットシステムの処理)
ターゲットシステム300の仕訳作成部50は、同期サブシステム210の待受部34に対して、同期状態区分が未取込である仕訳データ32が同期テーブル33に格納されているか否かを問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、未取込である仕訳データ32の格納有無を返答すると共に、同期テーブル33から未取込の状態である仕訳データ32を読み出し、ターゲットシステム300に送信する。
ターゲットシステム300は、待受部34から取込んだ仕訳データ32に基づいて、仕訳を更新する。また、ターゲットシステム300は、メインシステム200で追加された仕訳の修正又は削除の同期をとるため、メインシステム200で付された伝票番号を保持しておく。
また、ターゲットシステム300は、待受部34から取込んだ仕訳データ32に対して、ターゲットシステム300が管理する伝票番号を採番する。ターゲットシステム300が採番する伝票番号は「0084」であり、メインシステム200で採番された伝票番号とは異なる。
その後、ターゲットシステム300の仕訳作成部50は、ターゲットシステム300が採番した伝票番号「0084」を待受部34に送信する。待受部34は、同期テーブル33に、ターゲットシステム300で採番された伝票番号「0084」と、同期状態区分に、ターゲットシステム300が仕訳データ32で更新済みであることを表す「2」を書き込む。図7のレコード(2)は、ターゲットシステム300が仕訳データ32を取り込み、仕訳を更新したことを表している。
その後、同期サブシステム210は、図7のレコード(2)を削除するため、常に、又は一定期間監視し、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図7のレコード(2)を削除する。
<ダウンストリーム修正の処理>
図8は、ダウンストリーム修正の処理における同期テーブル33のデータの変化の様子を示す。
メインシステム200が過去に追加した仕訳データ20を修正する場合、ターゲットシステム300においても、過去に同期テーブル33から取り込んだ仕訳の修正内容を反映する必要がある。例えば、メインシステム200が伝票番号「00012」の仕訳の金額を「11,000」から「22,000」に変更し、同期テーブル33に修正前の仕訳と修正後の仕訳を追加したことを想定する。
メインシステム200は仕訳を修正すると、修正前の仕訳と、修正後の仕訳を含む仕訳データ20を作成する。このように仕訳データ20を作成するのは、過去に追加された仕訳である修正前の仕訳のレコードは、ターゲットシステム300に取り込まれた後に削除され、同期テーブル33に存在しないためである。そこで、ターゲットシステム300に取り込まれた修正前の仕訳のレコードを削除するために、修正前の仕訳のレコードが同期テーブル33に格納される。
変換部30は、変換テーブル31を参照して、仕訳データ20の借方科目、貸方科目、消費税区分を変換する。そして、変換部30は、削除D(修正前)と追加A(修正後)の仕訳に対応する同期状態区分に未取込の「1」を書き込む。今回は金額のみの修正であるが、その他の項目が変更された場合、変換部30は、修正前と修正後の仕訳データ32を作成する。
図8のレコード(1)は、修正前の金額と、修正後の金額を並べた同期テーブル33の内容を表している。同期テーブル33に格納される図8のレコード(1)は、区分に「削除D(修正前)」が格納されたレコードと、区分に「追加A(修正後)」が格納されたレコードとで構成される。追加A(修正後)の仕訳に対応するレコードでは、金額の箇所を強調表示したように、メインシステム200とターゲットシステム300の金額が「11,000」から「22,000」に変わっている。
図8のレコード(2)は、ターゲットシステム300によりレコードが取り込まれた同期テーブル33の内容を表している。ターゲットシステム300の仕訳作成部50は、待受部34を介して、図8のレコード(1)に示した削除D(修正前)と追加A(修正後)の仕訳のレコードを取り込む。そして、ターゲットシステム300は、削除D(修正前)のレコードにより、過去に取り込んだレコードを削除し、追加A(修正後)のレコードを追加する。このようにしてターゲットシステム300における仕訳が更新され、メインシステム200とターゲットシステム300の仕訳が同期される。
また、ターゲットシステム300は、メインシステム200との間で仕訳の削除及び修正の同期をとるため、メインシステム200で採番された伝票番号「00012」を保持している。そして、ターゲットシステム300は、待受部34に対してターゲットシステム300が追加A(修正後)のレコードに採番した新たな伝票番号「0085」と、削除D(修正前)と追加A(修正後)の仕訳のレコードに対する更新済みのステータスを通知する。
待受部34は、同期テーブル33に格納されている、追加A(修正後)のレコードのターゲットシステム300の伝票番号にターゲットシステム300から通知された伝票番号「0085」を書き込む。また、待受部34は、同期テーブル33に格納されている、削除D(修正前)のレコードと、追加A(修正後)のレコードの同期状態区分に、ターゲットシステム300の仕訳が更新済みであることを表す「2」を書き込む。
なお、ターゲットシステム300は、削除D(修正前)のレコードに基づいて、メインシステム200の伝票番号「00012」が付加された伝票のレコードを削除する。区分に「削除D(修正前)」が格納されたレコードは、メインシステム200とターゲットシステム300との仕訳の同期には不要である。しかし、メインシステム200とターゲットシステム300とが、現時点で管理している仕訳の内容を相互に確認するために用いられている。
削除D(修正前)のレコードと、追加A(修正後)のレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図8のレコード(2)を削除するため、常時あるいは一定期間だけ監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図8のレコード(2)を削除する。
<ダウンストリーム削除の処理>
図9は、ダウンストリーム削除の処理における同期テーブル33のデータの変化の様子を示す。
メインシステム200が過去に追加した仕訳を削除する場合、ターゲットシステム300においても、過去に同期テーブル33から取り込んだ仕訳を削除する必要がある。例えば、メインシステム200が伝票番号「00012」の仕訳を削除すると、同期テーブル33に削除した仕訳に対応するレコードが書き込まれる。
メインシステム200が仕訳を削除すると、削除した仕訳に対応する仕訳データ20を作成する。このように仕訳データ20を作成するのは、過去に追加された仕訳である修正前の仕訳のレコードは、ターゲットシステム300に取り込まれたことにより、同期テーブル33に存在しないためである。そこで、ターゲットシステム300に取り込まれた修正前の仕訳のレコードを削除するために、削除の仕訳のレコードが同期テーブル33に格納される。
変換部30は、変換テーブル31を参照して、仕訳データ20の借方科目、貸方科目、消費税区分を変換する。そして、変換部30は、削除Dの仕訳に対応する同期状態区分に未取込の「1」を書き込む。
図9のレコード(1)は、削除される仕訳に対応して同期テーブル33に格納されるレコードの内容を表している。同期テーブル33に格納される図9のレコード(1)の区分に「削除D」が格納されている。ターゲットシステム300は、削除Dのレコードにより、過去に取り込んだレコードを削除する。このようにしてターゲットシステム300における仕訳が更新され、メインシステム200とターゲットシステム300の仕訳が同期される。
また、ターゲットシステム300は、メインシステム200との間で仕訳の削除及び修正の同期をとるため、メインシステム200で採番された伝票番号「00012」を保持している。そして、ターゲットシステム300は、待受部34に対して、削除Dの仕訳に対する伝票番号「0085」と更新済みのステータスを通知する。
待受部34は、同期テーブル33に格納されている、削除Dのレコードのターゲットシステム300の伝票番号に、ターゲットシステム300から通知された伝票番号「0085」を書き込む。また、待受部34は、同期テーブル33に格納されている、削除Dのレコードの同期状態区分に、ターゲットシステム300の仕訳が更新済みであることを表す「2」を書き込む。
なお、ターゲットシステム300は、待受部34を介して同期テーブル33から読み出された、削除Dのレコードを取込む。そして、ターゲットシステム300の仕訳作成部50は、削除Dのレコードに基づいて、ターゲットシステム300が管理する仕訳から、メインシステム200の伝票番号が「00012」である伝票を削除する。
区分に「削除D」が格納されたレコードは、メインシステム200とターゲットシステム300との仕訳の同期には不要である。しかし、この削除Dのレコードは、メインシステム200とターゲットシステム300とが、現時点で管理している仕訳の内容を相互に確認するために用いられている。
すなわち、削除Dのレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図9のレコード(2)を削除するため、常時又は一定期間だけ削除Dのレコードを監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図9のレコード(2)を削除する。
<アップストリームの処理>
次に、アップストリームの処理を、追加、追加の取消、修正、修正の取消、削除、削除の取消の順に、図10~図15を参照して説明する。
<アップストリーム追加の処理>
図10は、アップストリーム追加の処理における同期テーブル33のデータの変化の様子を示す。アップストリーム追加の処理では、ターゲットシステム300にて追加された仕訳に対して、メインシステム200にて仕訳を追加する確定仕訳が行われ、ターゲットシステム300に確定仕訳が反映される。
ターゲットシステム300が伝票番号「0086」の新たな仕訳を作成すると、ターゲットシステム300の送信部52は、追加された仕訳に対応する仕訳データ51をAPI連携で同期サブシステム210に送信する。この仕訳データ51は、同期サブシステム210の受信部35を経て、逆変換部36にて逆変換されて同期テーブル33に格納される。
図10のレコード(1)は、ターゲットシステム300が新たな仕訳を作成し、この仕訳に採番した伝票番号「0086」の伝票の内容を表している。そして、同期サブシステム210では、ターゲットシステム300から受信した仕訳データ51を逆変換部36に出力する。逆変換部36は、逆変換テーブル37を参照して、仕訳データ51を逆変換し、逆変換したデータを未確定仕訳データ21として同期テーブル33に格納する。
この時、逆変換部36は、メインシステム200の伝票番号の欄に「00013」を自動採番して追加する。このように逆変換部36が未確定仕訳データ21を同期テーブル33に書き込む際に、メインシステム200の伝票番号を採番するのは、重複したデータがメインシステム200に存在しないようにするためである。このため、逆変換部36は、メインシステム200に対して、採番可能な空き番号を問い合わせてもよい。図10のレコード(1)は、同期状態区分が「未取込」かつ確定状態が「未確定」である未確定仕訳データ21としてメインシステム200に取り込まれる。
メインシステム200の自動仕訳部22は、同期テーブル33から未確定仕訳データ21を読み出し、自動仕訳を行う。
確定処理部23は、自動仕訳部22により自動仕訳された未確定仕訳データ21を表示し、ユーザーによる確定処理を受付ける。このため、自動仕訳部22は、未確定仕訳から自動仕訳を行って仕訳の候補を確定処理部23に表示させる。そして、ユーザーは、仕訳の候補から正しい仕訳を確認して、正しい仕訳により未確定仕訳データ21を確定し、更新する。
図10のレコード(2)は、メインシステム200とターゲットシステム300の摘要を「文房具」から「文房具 ノート」に修正された様子を表している。そして、仕訳が確定された未確定仕訳データ21が仕訳データ24として同期サブシステム210に出力される。
同期サブシステム210の変換部30は、メインシステム200から受信した仕訳データ24を仕訳データ38に変換すると、仕訳データ38を同期テーブル33に書き込む。この時、変換部30は、同期テーブル33に同期状態区分に未取込の「2」を書き込み、確定状態の欄を「確定」とする。
ターゲットシステム300の仕訳作成部50は、同期サブシステム210に対して、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードの有無を問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、同期テーブル33から同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを読み出し、ターゲットシステム300に送信する。
仕訳作成部50は、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを確定仕訳として取り込んでターゲットシステム300における仕訳処理を行う。そして、仕訳作成部50は、追加前の伝票番号「0086」の伝票を削除し、新たな伝票番号「0087」の伝票を追加する。
また、仕訳作成部50は、待受部34を通じて同期テーブル33のターゲットシステム300の伝票番号「0086」を、追加した伝票の伝票番号「0087」に書き換え、同期状態区分に更新済みの「2」を書き込む。図10のレコード(3)は、ターゲットシステム300が追加した伝票番号「0087」に書き換えられた様子を表している。
追加Aのレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図10のレコード(3)を削除するため、常に、又は一定期間監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図10のレコード(3)を削除する。
<アップストリーム追加の取消処理>
図11は、アップストリーム追加の取消処理における同期テーブル33のデータの変化の様子を示す。アップストリーム追加の取消処理では、ターゲットシステム300にて追加された仕訳に対して、メインシステム200が取り消しを行ったことで、ターゲットシステム300が追加した仕訳が取り消される。
ターゲットシステム300が伝票番号「0086」の新たな仕訳を追加すると、ターゲットシステム300の送信部52は、追加された仕訳に対応する仕訳データ51をAPI連携で同期サブシステム210に送信する。この仕訳データ51は、同期サブシステム210の受信部35を経て、逆変換部36にて逆変換されて同期テーブル33に格納される。
図11のレコード(1)は、ターゲットシステム300が新たな仕訳を追加し、この仕訳に採番した伝票番号「0086」の伝票の内容を表している。図11のレコード(1)は、図10のレコード(1)と同じ内容である。このレコードは、確定状態が「未確定」である未確定仕訳データ21としてメインシステム200に取り込まれる。
メインシステム200の自動仕訳部22は、同期テーブル33から未確定仕訳データ21を読み出し、自動仕訳を行って、仕訳の候補を確定処理部23に表示する。ユーザーは、確定処理部23を通じてターゲットシステム300による仕訳の追加を取り消したとする。
同期サブシステム210の変換部30は、メインシステム200から受信した仕訳データ24を仕訳データ38に変換すると、仕訳データ38を同期テーブル33に書き込む。この時、変換部30は、仕訳データ38の区分を「削除」とし、同期状態区分に未取込の「1」を書き込み、確定状態の欄を「確定」とする。図11のレコード(2)は、ユーザーが仕訳の追加を取り消したことで、区分が「追加A」から削除「D」に変更された様子を表している。
ターゲットシステム300の仕訳作成部50は、同期サブシステム210に対して、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードの有無を問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、同期テーブル33から同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを読み出し、ターゲットシステム300に送信する。
仕訳作成部50は、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを確定仕訳として取り込んでターゲットシステム300における仕訳処理を行う。そして、仕訳作成部50は、追加した伝票番号「0086」の伝票を削除する。また、仕訳作成部50は、待受部34を通じて同期テーブル33のレコードの同期状態区分に更新済みの「2」を書き込む。図11のレコード(3)は、同期状態区分が更新済みの「2」に書き換えられた様子を表している。
削除Dのレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図11のレコード(3)を削除するため、常に、又は一定期間監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図11のレコード(3)を削除する。
<アップストリーム修正の処理>
図12は、アップストリーム修正の処理における同期テーブル33のデータの変化の様子を示す。
アップストリーム修正の処理では、ターゲットシステム300が過去に追加した仕訳に対して修正を行うことで、メインシステム200にて仕訳を修正する確定仕訳が行われ、ターゲットシステム300に確定仕訳が反映される。
ターゲットシステム300が過去に追加して、メインシステム200により確定され、取り込んだ伝票番号「0087」の借方科目を「消耗品費」から「事務用品費」に修正したとする。ターゲットシステム300の送信部52は、修正された仕訳に対応する仕訳データ51をAPI連携で同期サブシステム210に送信する。
この仕訳データ51は、同期サブシステム210の受信部35を経て、逆変換部36にて逆変換されて同期テーブル33に格納される。ここで、逆変換部36は、削除D(修正前)と追加A(修正後)の仕訳に対応する同期状態区分に未取込の「1」を書き込む。また、逆変換部36は、メインシステム200で採番される伝票番号「00013」を追加する。このレコードは、確定状態が「未確定」である未確定仕訳データ21としてメインシステム200に取り込まれる。
図12のレコード(1)は、削除D(修正前)と追加A(修正後)のレコードを並べた同期テーブル33の内容を表している。同期テーブル33に格納される図12のレコード(1)は、区分に「削除D(修正前)」が格納されたレコードと、区分に「追加A(修正後)」が格納されたレコードとで構成される。追加A(修正後)の仕訳に対応するレコードでは、借方科目の箇所を強調表示したように、「消耗品費」から「事務用品費」に変わっている。
メインシステム200の自動仕訳部22は、同期テーブル33から未確定仕訳データ21を読み出し、自動仕訳を行って、仕訳の候補を確定処理部23に表示させる。ユーザーは、確定処理部23を通じてターゲットシステム300による仕訳の修正を承認し、仕訳を確定したとする。確定処理部23により仕訳が確定された仕訳データ24は、同期サブシステム210に送信される。
同期サブシステム210の変換部30は、メインシステム200から受信した仕訳データ24を仕訳データ38に変換した後、仕訳データ38を同期テーブル33に書き込む。この時、変換部30は、同期テーブル33の同期状態区分に未取込の「2」を書き込み、確定状態の欄を「確定」とする。図12のレコード(2)は、ユーザーが修正した仕訳を確定した様子を表している。
ターゲットシステム300の仕訳作成部50は、同期サブシステム210に対して、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードの有無を問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、同期テーブル33から同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを読み出し、ターゲットシステム300に送信する。
仕訳作成部50は、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを確定仕訳として取り込んでターゲットシステム300における仕訳処理を行う。そして、仕訳作成部50は、修正前の伝票番号「0087」の伝票を削除する。また、仕訳作成部50は、待受部34を通じて同期テーブル33のレコードの同期状態区分に更新済みの「2」を書き込む。
また、仕訳作成部50は、借方科目の修正後に同期サブシステム210から取込んだレコードに基づいてターゲットシステム300の仕訳を更新する。そして、仕訳作成部50は、ターゲットシステム300における仕訳の修正又は削除と、メインシステム200の仕訳との同期をとるため、メインシステム200が付加した伝票番号「00013」を保持する。また、仕訳作成部50は、待受部34を通じて同期テーブル33の追加Aのレコードのうち、ターゲットシステム300の伝票番号に「0088」を書き込む。図12のレコード(3)は、同期状態区分が更新済みの「2」に書き換えられた様子を表している。
その後、仕訳作成部50は、メインシステム200の伝票番号「00013」の伝票のレコードを削除する。区分に「削除D(修正前)」が格納されたレコードは、メインシステム200とターゲットシステム300との仕訳の同期には不要である。しかし、メインシステム200とターゲットシステム300とが、現時点で管理している仕訳の内容を相互に確認するために用いられている。
削除Dのレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図12のレコード(3)を削除するため、常に、又は一定期間監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図12のレコード(3)を削除する。
<アップストリーム修正の取消処理>
図13は、アップストリーム修正の取消処理における同期テーブル33のデータの変化の様子を示す。
アップストリーム修正の取消処理では、ターゲットシステム300が過去に追加した仕訳に対して修正を行ったものの、メインシステム200にて仕訳の修正が取り消される確定仕訳が行われ、ターゲットシステム300に確定仕訳が反映される。
図13のレコード(1)は、図12のレコード(1)と同じ内容であるので詳細な説明を省略する。つまり、ターゲットシステム300が過去に追加して、メインシステム200により確定され、取り込んだ伝票番号「0087」の借方科目を「消耗品費」から「事務用品費」に修正したとする。
メインシステム200の自動仕訳部22は、同期テーブル33から未確定仕訳データ21を読み出し、自動仕訳を行って、仕訳の候補を確定処理部23に表示させる。ユーザーは、確定処理部23を通じてターゲットシステム300による仕訳の修正を取消し、仕訳を確定する。確定処理部23により仕訳が確定された仕訳データ24は、同期サブシステム210に送信される。
同期サブシステム210の変換部30は、メインシステム200から受信した仕訳データ24を仕訳データ38に変換すると、仕訳データ38を同期テーブル33に書き込む。この時、変換部30は、同期テーブル33の同期状態区分に未取込の「2」を書き込み、確定状態の欄を「確定」とする。このため、図13のレコード(1)に示すように、区分が「削除D(修正前)」であったレコードが「追加A(修正前)」に変わって、同期状態区分が未取込の「1」であり、確定状態が「確定」に変わる。また、区分が「追加A(修正後)」であったレコードが「削除D(修正前)」に変わって、同期状態区分が更新済みの「2」に変わり、確定状態が「確定」に変わる。
ターゲットシステム300の仕訳作成部50は、同期サブシステム210に対して、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードの有無を問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、同期テーブル33から同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを読み出し、ターゲットシステム300に送信する。
仕訳作成部50は、同期状態区分が「未取込」であり、確定状態が「確定」である「追加A(修正前)」のレコードを確定仕訳として取り込んでターゲットシステム300における仕訳処理を行う。そして、仕訳作成部50は、修正した伝票番号「0087」の伝票を削除する。また、仕訳作成部50は、待受部34を通じて同期テーブル33のレコードの同期状態区分に更新済みの「2」を書き込む。
また、仕訳作成部50は、ターゲットシステム300における仕訳の修正又は削除と、メインシステム200の仕訳との同期をとるため、メインシステム200が付加した伝票番号「00013」を保持する。また、仕訳作成部50は、待受部34を通じて同期テーブル33の「追加A(修正前)」のレコードのうち、ターゲットシステム300の伝票番号に「0088」を書き込み、同期状態区分に更新済みの「2」を書き込む。図13のレコード(3)は、同期状態区分が更新済みの「2」に書き換えられた様子を表している。その後、仕訳作成部50は、メインシステム200の伝票番号「00013」の伝票のレコードを削除する。
「追加A(修正前)」のレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図13のレコード(3)を削除するため、常に、又は一定期間監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図13のレコード(3)を削除する。
<アップストリーム削除の処理>
図14は、アップストリーム削除の処理における同期テーブル33のデータの変化の様子を示す。
アップストリーム削除の処理では、ターゲットシステム300が過去に追加した仕訳の削除を行い、メインシステム200にて仕訳の削除の確定仕訳が行われると、ターゲットシステム300に確定仕訳が反映される。
ターゲットシステム300が過去に追加した仕訳を削除する場合、メインシステム200においても、過去に同期テーブル33から取り込んだ仕訳を削除する必要がある。例えば、ターゲットシステム300が伝票番号「0088」の仕訳を削除すると、ターゲットシステム300の送信部52は、削除された仕訳に対応する仕訳データ51をAPI連携で同期サブシステム210に送信する。
この仕訳データ51は、同期サブシステム210の受信部35を経て、逆変換部36にて逆変換されて同期テーブル33に格納される。ここで、逆変換部36は、削除Dの仕訳に対応するレコードの同期状態区分に未取込の「1」を書き込む。また、逆変換部36は、メインシステム200で採番される伝票番号「00013」を追加する。図14のレコード(1)は、区分が「削除D」であり、同期状態区分に未取込の「1」が書き込まれ、確定状態が「未確定」であるレコードが格納された同期テーブル33の内容を表している。このレコードは、確定状態が「未確定」である未確定仕訳データ21としてメインシステム200に取り込まれる。
メインシステム200の自動仕訳部22は、同期テーブル33から未確定仕訳データ21を読み出し、自動仕訳を行って、仕訳の候補を確定処理部23に表示させる。ユーザーは、確定処理部23を通じてターゲットシステム300による仕訳の削除を確認し、仕訳を確定する。確定処理部23により仕訳が確定された仕訳データ24は、同期サブシステム210に送信される。
同期サブシステム210の変換部30は、メインシステム200から受信した仕訳データ24を仕訳データ38に変換すると、仕訳データ38を同期テーブル33に書き込む。この時、変換部30は、図14のレコード(2)に示すように、同期テーブル33の同期状態区分に未取込の「2」を書き込み、確定状態を「確定」とする。
ターゲットシステム300の仕訳作成部50は、同期サブシステム210に対して、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードの有無を問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、同期テーブル33から同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを読み出し、ターゲットシステム300に送信する。
仕訳作成部50は、同期状態区分が「未取込」であり、確定状態が「確定」である「削除D」のレコードを確定仕訳として取り込んでターゲットシステム300における仕訳処理を行う。ターゲットシステム300では、既に伝票番号「0088」の仕訳は削除されているが、仕訳作成部50は、メインシステム200の伝票番号「00013」でターゲットシステム300の伝票が無いことを確認する。その後、仕訳作成部50は、待受部34を通じて同期テーブル33のレコードの同期状態区分に更新済みの「2」を書き込む。
「削除D」のレコードは、メインシステム200とターゲットシステム300との仕訳の同期には不要である。しかし、メインシステム200とターゲットシステム300とが、現時点で管理している仕訳の内容を相互に確認するために用いられている。
削除Dのレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図14のレコード(3)を削除するため、常に、又は一定期間監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図14のレコード(3)を削除する。
<アップストリーム削除の取消処理>
図15は、アップストリーム削除の取消処理における同期テーブル33のデータの変化の様子を示す。
アップストリーム削除の取消処理では、ターゲットシステム300が仕訳を削除し、メインシステム200にて仕訳の削除を取り消す確定仕訳が行われる。また、ターゲットシステム300に確定仕訳が反映される。
ターゲットシステム300が伝票番号「0088」の仕訳を削除すると、ターゲットシステム300の送信部52は、削除された仕訳に対応する仕訳データ51をAPI連携で同期サブシステム210に送信する。
この仕訳データ51は、同期サブシステム210の受信部35を経て、逆変換部36にて逆変換されて同期テーブル33に格納される。ここで、逆変換部36は、削除Dの仕訳に対応するレコードの同期状態区分に未取込の「1」を書き込む。また、逆変換部36は、メインシステム200で採番される伝票番号「00013」を追加する。
図15のレコード(1)は、区分が「削除D」であり、同期状態区分に未取込の「1」が書き込まれ、確定状態が「未確定」であるレコードが格納された同期テーブル33の内容を表している。このレコードは、確定状態が「未確定」である未確定仕訳データ21としてメインシステム200に取り込まれる。
メインシステム200の自動仕訳部22は、同期テーブル33から未確定仕訳データ21を読み出し、自動仕訳を行って、仕訳の候補を確定処理部23に表示させる。ユーザーは、確定処理部23を通じてターゲットシステム300による仕訳を削除してよいか確認し、仕訳の削除が不要であれば、仕訳の削除を取り消して仕訳を確定する。確定処理部23により仕訳が確定された仕訳データ24は、同期サブシステム210に送信される。
同期サブシステム210の変換部30は、メインシステム200から受信した仕訳データ24を仕訳データ38に変換すると、仕訳データ38を同期テーブル33に書き込む。この時、変換部30は、図15のレコード(2)に示すように、同期テーブル33の区分を「追加A」とし、同期状態区分に未取込の「2」を書き込み、確定状態を「確定」とする。
ターゲットシステム300の仕訳作成部50は、同期サブシステム210に対して、同期状態区分が「未取込」であり、確定状態が「確定」であるレコードの有無を問い合わせる。待受部34は、仕訳作成部50から問い合わせを受けると、同期テーブル33から同期状態区分が「未取込」であり、確定状態が「確定」であるレコードを読み出し、ターゲットシステム300に送信する。
仕訳作成部50は、同期状態区分が「未取込」であり、確定状態が「確定」である「追加A」のレコードを確定仕訳として取り込んでターゲットシステム300における仕訳処理を行う。ターゲットシステム300では、既に伝票番号「0088」の仕訳は削除されているが、仕訳作成部50は、メインシステム200の伝票番号「00013」でターゲットシステム300の伝票が無いことを確認する。その後、仕訳作成部50は、待受部34を通じて同期テーブル33のレコードの同期状態区分に更新済みの「2」を書き込む。
追加Aのレコードの同期状態区分に更新済みの「2」が書き込まれた後、同期サブシステム210は、同期テーブル33から図15のレコード(3)を削除するため、常に、又は一定期間監視する。そして、同期サブシステム210は、一定期間の経過後、同期テーブル33の領域を確保するため、同期状態区分に更新済みの「2」が書き込まれた図15のレコード(3)を削除する。
[画面の表示例]
次に、メインシステム200とターゲットシステム300で表示される画面の表示例について、図16~図23を参照して説明する。
<ダウンストリーム追加、修正、削除の処理のインポート画面>
図16は、ダウンストリーム追加、修正、削除の処理にてターゲットシステム300に表示されるインポート画面W1の表示例を示す。図16では、ターゲットシステム300がメインシステム200で作成された仕訳を取り込むことを「インポート」と呼ぶ。
図16の画面表示例(1)は、ダウンストリーム追加の処理にてターゲットシステム300の表示装置に表示される画面である。図7のダウンストリーム追加の処理のレコード(1)に示す追加の仕訳がメインシステム200で行われると、同期サブシステム210を経てターゲットシステム300が仕訳を取り込む。
この時、ターゲットシステム300には、図7のレコード(2)に対応する、ターゲットシステム300の伝票番号「0084」が追加された図16の画面表示例(1)に示す画面が表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から追加の仕訳が1件あったことを確認し、追加された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による追加の仕訳がターゲットシステム300に取り込まれる。
図16の画面表示例(2)は、ダウンストリーム修正の処理にてターゲットシステム300の表示装置に表示される画面である。図8のダウンストリーム修正の処理のレコード(1)の追加A(修正後)に示す内容の修正の仕訳がメインシステム200で行われると、同期サブシステム210を経てターゲットシステム300が仕訳を取り込む。この時、ターゲットシステム300には、図8のレコード(2)に対応する、メインシステム200とターゲットシステム300の修正前後の金額を含む図16の画面表示例(2)に示す画面が表示される。
ターゲットシステム300を操作する会計事務所員は、メインシステム200から修正の仕訳が1件あったことを確認し、修正された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による修正の仕訳がターゲットシステム300に取り込まれる。
図16の画面表示例(3)は、ダウンストリーム削除の処理にてターゲットシステム300の表示装置に表示される画面である。図9のダウンストリーム削除の処理のレコード(1)の追加A(削除後)に示す内容の削除の仕訳がメインシステム200で行われると、同期サブシステム210を経てターゲットシステム300が仕訳を取り込む。
この時、ターゲットシステム300には、図9のレコード(2)に対応する、メインシステム200とターゲットシステム300の削除前後の金額を含む図16の画面表示例(3)に示す画面が表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から削除の仕訳が1件あったことを確認し、削除された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による削除の仕訳がターゲットシステム300に取り込まれる。
<アップストリーム追加、修正、削除の処理のエクスポート画面>
図17は、アップストリーム追加、修正、削除の処理にてターゲットシステム300に表示されるエクスポート画面W2の表示例を示す。
図17では、ターゲットシステム300が作成した仕訳をメインシステム200に送信する処理を「エクスポート」と呼ぶ。エクスポート画面W2では、ターゲットシステム300がメインシステム200に送信した仕訳だけでなく、メインシステム200で確定された仕訳も表示される。そして、図17に示すエクスポート画面W2は、データ連携システム100にてアップストリームが正常に終了した時にターゲットシステム300に表示される。
図17の画面表示例(1)は、アップストリーム追加の処理にてターゲットシステム300の表示装置に表示される画面である。図10のアップストリーム追加の処理のレコード(1)に示す追加の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、ターゲットシステム300がメインシステム200から確定仕訳を受け取ると、画面表示例(1)に示すターゲットシステム300のエクスポート画面W2が表示される。
このエクスポート画面W2には、図10のレコード(1)に対応する、ターゲットシステム300がメインシステム200に送信した仕訳の内容と、図10のレコード(3)に対応する、ターゲットシステム300がメインシステム200から受信した確定仕の内容とが並べて表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から追加の仕訳が1件あったことを確認し、追加された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による追加の仕訳がターゲットシステム300に取り込まれる。
図17の画面表示例(2)は、アップストリーム修正の処理にてターゲットシステム300の表示装置に表示される画面である。図12のアップストリーム修正の処理のレコード(1)の追加A(修正後)に示す内容の修正の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、ターゲットシステム300がメインシステム200から確定仕訳を受け取ると、画面表示例(2)に示すターゲットシステム300のエクスポート画面W2が表示される。
このエクスポート画面W2には、図12のレコード(1)に対応する、ターゲットシステム300がメインシステム200に送信した修正前及び修正後の仕訳の内容と、図12のレコード(3)に対応する、ターゲットシステム300がメインシステム200から受信した確定仕訳である修正後の内容とが並べて表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から修正の仕訳が1件あったことを確認し、修正された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による修正の仕訳がターゲットシステム300に取り込まれる。
図17の画面表示例(3)は、アップストリーム削除の処理にてターゲットシステム300の表示装置に表示される画面である。図14のアップストリーム削除の処理のレコード(1)に示す内容の削除の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、ターゲットシステム300がメインシステム200から確定仕訳を受け取ると、画面表示例(3)に示すターゲットシステム300のエクスポート画面W2が表示される。
このエクスポート画面W2には、図14のレコード(1)に対応する、ターゲットシステム300がメインシステム200に送信した削除の仕訳の内容と、図14のレコード(3)に対応する、ターゲットシステム300がメインシステム200から受信した確定仕訳である削除の内容とが並べて表示される。なお、メインシステム200では、仕訳が削除されたので、画面表示例(3)の「受信した内容」の行には、ステータス項目以外の内容は表示されない。ターゲットシステム300を操作する会計事務所員は、メインシステム200から削除の仕訳が1件あったことを確認し、削除された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による削除の仕訳がターゲットシステム300に取り込まれる。
<アップストリーム追加、修正、削除の取消処理のエクスポート画面>
図18は、アップストリーム追加、修正、削除の取消処理にてターゲットシステム300に表示されるエクスポート画面W3の表示例を示す。
図18では、ターゲットシステム300が作成した仕訳をメインシステム200に送信する処理を「エクスポート」と呼ぶ。エクスポート画面W3では、ターゲットシステム300がメインシステム200に送信した仕訳だけでなく、メインシステム200で確定された仕訳も表示される。そして、図18に示すエクスポート画面W3は、データ連携システム100にてアップストリームにおけるターゲットシステム300からメインシステム200への送信処理が正常に終了し、メインシステム200が仕訳を取り消した時にターゲットシステム300に表示される。
図18の画面表示例(1)は、アップストリーム追加の取消処理にてターゲットシステム300の表示装置に表示される画面である。図11のアップストリーム追加の取消処理のレコード(1)に示す追加の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、ターゲットシステム300がメインシステム200から確定仕訳を受け取ると、画面表示例(1)に示すターゲットシステム300のエクスポート画面W3が表示される。
このエクスポート画面W3には、図11のレコード(1)に対応する、ターゲットシステム300がメインシステム200に送信した追加の仕訳の内容と図11のレコード(3)に対応する、ターゲットシステム300がメインシステム200から受信した確定仕訳である追加の取消の内容とが並べて表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から追加の取消の仕訳が1件あったことを確認し、追加が取消の仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による追加の取消の仕訳がターゲットシステム300に取り込まれる。
図18の画面表示例(2)は、アップストリーム修正の取消処理にてターゲットシステム300の表示装置に表示される画面である。図13のアップストリーム修正の取消処理のレコード(1)の追加A(修正後)に示す内容の修正の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、ターゲットシステム300がメインシステム200から確定仕訳を受け取ると、画面表示例(2)に示すターゲットシステム300のエクスポート画面W3が表示される。
このエクスポート画面W3には、図13のレコード(1)に対応する、ターゲットシステム300がメインシステム200に送信した修正前及び修正後の仕訳の内容と、図13のレコード(3)に対応する、ターゲットシステム300がメインシステム200から受信した確定仕訳である修正の取消の内容とが並べて表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から修正の取消の仕訳が1件あったことを確認し、修正の取消の仕訳を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による修正の取消の仕訳がターゲットシステム300に取り込まれる。
図18の画面表示例(3)は、アップストリーム削除の取消処理にてターゲットシステム300の表示装置に表示される画面である。図15のアップストリーム削除の取消処理のレコード(1)に示す内容の削除の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、ターゲットシステム300がメインシステム200から確定仕訳を受け取ると、画面表示例(3)に示すターゲットシステム300のエクスポート画面W3が表示される。
このエクスポート画面W3には、図15のレコード(1)に対応する、ターゲットシステム300がメインシステム200に送信した削除の仕訳の内容と、図15のレコード(3)に対応する、ターゲットシステム300がメインシステム200から受信した確定仕訳である削除の取消の内容とが並べて表示される。ターゲットシステム300を操作する会計事務所員は、メインシステム200から削除の仕訳が1件あったことを確認し、削除された仕訳の内容を確認する。そして、会計事務所員が更新ボタンを押すと、メインシステム200による削除の仕訳がターゲットシステム300に取り込まれる。
<アップストリーム追加、修正、削除の処理のインポート画面>
図19と図20は、アップストリーム追加、修正、削除の処理にてメインシステム200に表示されるインポート画面W4の表示例を示す図である。図19と図20では、ターゲットシステム300が作成した仕訳をメインシステム200が受信する処理を「インポート」と呼ぶ。インポート画面W4では、メインシステム200がターゲットシステム300から受信した仕訳だけでなく、メインシステム200が修正し、ターゲットシステム300に送信する仕訳も表示される。そして、図19と図20に示すインポート画面W4は、データ連携システム100にてアップストリームにおけるメインシステム200がターゲットシステム300から仕訳を受信し、確定又は取消の仕訳を行う時にメインシステム200に表示される。
メインシステム200のユーザーは、ターゲットシステム300が送信した仕訳データが同期サブシステム210によりどのように変換されたかを確認する必要がある。また、メインシステム200が送信する仕訳データを同期サブシステム210によりどのように逆変換するかを確認する必要がある。そこで、メインシステム200は、同期サブシステム210から逆変換部36による逆変換する前後の仕訳データ51の内容、変換部30による変換後の仕訳データ24の内容を取込むことが可能である。
図19の画面表示例(1)は、アップストリーム追加の処理にてメインシステム200の表示装置に表示される画面である。図10のアップストリーム追加の処理のレコード(1)に示す追加の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、画面表示例(1)に示すメインシステム200のインポート画面W4がメインシステム200に表示される。
受信部35が追加の内容を含む仕訳データ51を受信した時は、メインシステム200による確定仕訳が行われていない未確定の状態なので、「受信した内容(メインに逆変換)」のステータス欄は「未確定」と表示される。また、メインシステム200による確定仕訳が行われると、「確定した内容(メインで)」、「送信する内容(ターゲットに変換)」のレコードが作成される。この時、「確定した内容(メインで)」のレコードのステータス欄は「確定」と表示され、「送信する内容(ターゲットに変換)」のレコードのステータス欄は「未処理」と表示される(不図示)。
図19に示すインポート画面W4には、図10のレコード(1)に対応する、メインシステム200がターゲットシステム300から受信した追加の仕訳の内容と、図10のレコード(3)に対応する、メインシステム200がターゲットシステム300に送信する仕訳の内容とが並べて表示される。この時点では、「受信した内容(ターゲットから)」の行におけるメインシステム200の伝票番号と、「受信した内容(メインに逆変換)」、「確定した内容(メインで)」、「送信する内容(ターゲットに変換)」の行におけるターゲットシステム300の伝票番号は空欄である。メインシステム200を操作するユーザーは、ターゲットシステム300から追加の仕訳を1件受信したことを確認すると、追加の仕訳に対して確定又は取消の処理を行う。そして、ユーザーが更新ボタンを押すと、処理済みのデータが削除される。
図20の画面表示例(2)は、アップストリーム修正の処理にてメインシステム200の表示装置に表示される画面である。図12のアップストリーム修正の処理のレコード(1)の追加A(修正後)に示す内容の修正の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、画面表示例(2)に示すメインシステム200のインポート画面W4がメインシステム200に表示される。受信部35が修正の内容を含む仕訳データ51を受信すると、「受信した修正前の内容(ターゲットから)」、「受信した修正前の内容(メインに逆変換)」、「受信した修正後の内容(ターゲットから)」、「受信した修正後の内容(メインに逆変換)」のレコードが作成される。受信部35が修正の内容を含む仕訳データ51を受信した時は、メインシステム200による確定仕訳が行われていないので未確定の状態であり、「受信した修正後の内容(メインに逆変換)」のレコードのステータス欄は「未確定」と表示される。
また、メインシステム200による確定仕訳が行われると「確定した修正内容(メインで)」、「送信する内容(ターゲットに変換)」のレコードが作成される。この時、「確定した修正内容(メインで)」のレコードのステータス欄は「確定」と表示され、「送信する内容(ターゲットに変換)」のレコードのステータス欄は「未処理」と表示される。その後、待受部34が確定仕訳の行われた仕訳データ38を取り込み、ターゲットシステム300の仕訳作成部50により仕訳が行われる。
インポート画面W4には、図12のレコード(1)に対応する、メインシステム200がターゲットシステム300から受信した修正前の仕訳の内容と、この修正前の仕訳の内容に対して同期サブシステム210が逆変換した仕訳の内容と、図12のレコード(3)に対応する、メインシステム200がターゲットシステム300に送信する確定仕訳である修正後の内容とが並べて表示される。
この時点では、「受信した修正前の内容(ターゲットから)」、「受信した修正前の内容(メインに逆変換)」、「受信した修正後の内容(ターゲットから)」のレコードのステータス欄は空欄であり、「受信した修正後の内容(メインに逆変換)」のレコードのステータス欄は「未確定」が表示される。また、「確定した修正内容(メインで)」、「送信する内容(ターゲットに変換)」のレコードにおけるターゲットシステム300の伝票番号は空欄である。メインシステム200を操作するユーザーは、ターゲットシステム300から修正の仕訳が1件あったことを確認すると、修正された仕訳に対して確定又は取消の処理を行う。そして、ユーザーが更新ボタンを押すと、処理済みのデータが削除される。
図20の画面表示例(3)は、アップストリーム削除の処理にてメインシステム200の表示装置に表示される画面である。図14のアップストリーム削除の処理のレコード(1)に示す内容の削除の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、画面表示例(3)に示すメインシステム200のインポート画面W4がメインシステム200に表示される。受信部35が削除の内容を含む仕訳データ51を受信した時は、メインシステム200による確定仕訳が行われていないので未確定の状態であり、確定仕訳が行われると正常の状態に変わる。
確定仕訳が行われる前は、「受信した内容(ターゲットから)」のステータス欄が空欄である。また、メインシステム200による確定仕訳が行われると、「送信する内容(メインに逆変換)」のレコードが作成される。この時、「送信する内容」のレコードのステータス欄は「未処理」と表示されるその後、待受部34が確定仕訳の行われた仕訳データ38を取り込み、ターゲットシステム300の仕訳作成部50により仕訳が行われた後、「送信する内容(メインに逆変換)」のステータス欄は「正常」と表示される。
インポート画面W4には、図14のレコード(1)に対応する、メインシステム200がターゲットシステム300から受信した削除の仕訳の内容と、図14のレコード(3)に対応する、メインシステム200がターゲットシステム300から受信した確定仕訳である削除の内容とが並べて表示される。なお、ターゲットシステム300では、仕訳が削除されたので、画面表示例(3)の「受信した内容(ターゲットから)」の行には、ステータス項目以外の内容は表示されない。メインシステム200を操作するユーザーは、ターゲットシステム300から削除の仕訳が1件あったことを確認すると、削除された仕訳に対して確定又は取消の処理を行う。そして、ユーザーが更新ボタンを押すと、処理済みのデータが削除される。
<アップストリーム追加、修正、削除の取消処理のインポート画面>
図21と図22は、アップストリーム追加、修正、削除の取消処理にてターゲットシステム300に表示されるインポート画面W5の表示例を示す図である。図21と図22では、ターゲットシステム300が作成した仕訳をメインシステム200が受信する処理を「インポート」と呼ぶ。インポート画面W5では、メインシステム200がターゲットシステム300から受信した仕訳だけでなく、メインシステム200が修正し、ターゲットシステム300に送信する仕訳も表示される。そして、図21と図22に示すインポート画面W5は、データ連携システム100にてアップストリームにおけるメインシステム200がターゲットシステム300から仕訳を受信し、確定又は取消の仕訳を行う時にメインシステム200に表示される。
図21の画面表示例(1)は、アップストリーム追加の取消処理にてメインシステム200の表示装置に表示される画面である。図11のアップストリーム追加の取消処理のレコード(1)に示す追加の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、画面表示例(1)に示すメインシステム200のインポート画面W5がメインシステム200に表示される。
受信部35が追加の内容を含む仕訳データ51を受信した時は、メインシステム200による確定仕訳が行われていない未確定の状態なので、「受信した内容(メインに逆変換)」のステータス欄は「未確定」と表示される。また、メインシステム200による確定仕訳が行われると、「確定した内容(メインで)」、「送信する内容(ターゲットに変換)」のレコードが作成される。この時、「確定した内容(メインで)」のレコードのステータス欄は「取消」と表示され、「送信する内容(ターゲットに変換)」のレコードのステータス欄は「削除未処理」と表示される。
図21に示すインポート画面W5には、図11のレコード(1)に対応する、メインシステム200がターゲットシステム300から受信した追加の仕訳の内容と、図11のレコード(3)に対応する、メインシステム200がターゲットシステム300に送信する仕訳の内容とが並べて表示される。この時点では、「受信した内容(ターゲットから)」の行におけるメインシステム200の伝票番号と、「受信した内容(メインに逆変換)」、「確定した内容(メインで)」、「送信する内容(ターゲットに変換)」の行におけるターゲットシステム300の伝票番号は空欄である。メインシステム200を操作するユーザーは、ターゲットシステム300から追加の仕訳を1件受信したことを確認すると、追加の仕訳に対して確定又は取消の処理を行う。そして、ユーザーが更新ボタンを押すと、処理済みのデータが削除される。
図22の画面表示例(2)は、アップストリーム修正の取消処理にてメインシステム200の表示装置に表示される画面である。図13のアップストリーム修正の取消処理のレコード(1)の追加A(修正後)に示す内容の修正の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、画面表示例(2)に示すメインシステム200のインポート画面W5がメインシステム200に表示される。受信部35が修正の内容を含む仕訳データ51を受信すると、「受信した修正前の内容(ターゲットから)」、「受信した修正前の内容(メインに逆変換)」、「受信した修正後の内容(ターゲットから)」、「受信した修正後の内容(メインに逆変換)」のレコードが作成される。受信部35が修正の内容を含む仕訳データ51を受信した時は、メインシステム200による確定仕訳が行われていないので未確定の状態であり、「受信した修正後の内容(メインに逆変換)」のレコードのステータス欄は「未確定」と表示される。
また、メインシステム200による確定仕訳が行われると「確定した修正内容(メインで)」、「送信する内容(ターゲットに変換)」のレコードが作成される。この時、「確定した修正内容(メインで)」のレコードのステータス欄は「取消」と表示され、「送信する内容(ターゲットに変換)」のレコードのステータス欄は「修正前に」と表示される。その後、待受部34が確定仕訳の行われた仕訳データ38を取り込み、ターゲットシステム300の仕訳作成部50により仕訳が行われる。
インポート画面W5には、図13のレコード(1)に対応する、メインシステム200がターゲットシステム300から受信した修正前の仕訳の内容と、この修正前の仕訳の内容に対して同期サブシステム210が逆変換した仕訳の内容と、図13のレコード(3)に対応する、メインシステム200がターゲットシステム300に送信する修正後の仕訳の内容とが並べて表示される。
この時点では、「受信した修正前の内容(ターゲットから)」、「受信した修正前の内容(メインに逆変換)」、「受信した修正後の内容(ターゲットから)」のレコードのステータス欄は空欄であり、「受信した修正後の内容(メインに逆変換)」のレコードのステータス欄は「未確定」が表示される。また、「確定した修正内容(メインで)」のレコードにおけるターゲットシステム300の伝票番号は空欄である。メインシステム200を操作するユーザーは、ターゲットシステム300から修正の仕訳が1件あったことを確認すると、修正された仕訳に対して確定又は取消の処理を行う。そして、ユーザーが更新ボタンを押すと、処理済みのデータが削除される。
図22の画面表示例(3)は、アップストリーム削除の取消処理にてメインシステム200の表示装置に表示される画面である。図15のアップストリーム削除の取消処理のレコード(1)に示す内容の削除の仕訳がターゲットシステム300で行われると、同期サブシステム210を経てメインシステム200が仕訳を取り込む。その後、画面表示例(3)に示すメインシステム200のインポート画面W5がメインシステム200に表示される。このインポート画面W5には、図15のレコード(1)に対応する、メインシステム200がターゲットシステム300から受信した削除の仕訳の内容と、図15のレコード(3)に対応する、メインシステム200がターゲットシステム300から受信した確定仕訳である削除の内容とが並べて表示される。例えば、「受信した内容(ターゲットから)」、「送信する内容(メインに逆変換)」、「送信する内容(ターゲットに変換)」のレコードがメインシステム200に表示される。「受信した内容(ターゲットから)」のレコードのステータス欄は空欄であり、「送信する内容(メインに逆変換)」のレコードのステータス欄は「取消」と表示され、「送信する内容(ターゲットに変換)」のレコードのステータス欄は「削除前に」と表示される。
メインシステム200を操作するユーザーは、ターゲットシステム300から削除の仕訳が1件あったことを確認すると、削除された仕訳に対して確定又は取消の処理を行う。そして、ユーザーが更新ボタンを押すと、処理済みのデータが削除される。
図23は、未確定仕訳に対する確定処理画面の表示例を示す。図23に示す確定処理画面は、図19~図22の各処理項目に示す処理ボタンを押すことでメインシステム200の表示装置に表示される。ここでは、図20の画面表示例(2)の処理ボタンを押して表示された確定処理画面の例を示す。
確定処理画面の上段には、メインシステム200がターゲットシステム300から受信した未確定仕訳の内容の表示欄が示される。この表示欄には、図20の画面表示例(2)に示した、「受信した修正前の内容」と「受信した修正後の内容」とが表示される。また、仕訳候補ボタンを押すと、自動仕訳部22により抽出された複数の仕訳候補が表示され、ユーザーが任意の仕訳候補を選択可能である。
確定処理画面の下段には、振替伝票として、図20の画面表示例(2)に示した、「送信する修正後の内容」が表示される。ユーザーは、振替伝票を確認して、正しい内容で仕訳を修正し、仕訳を確定することができる。また、この表示欄には、「追加」、「削除」、「戻す」、「行追加」、「行削除」、「伝票の取消」、「同期の更新」の操作ボタンが表示され、振替伝票に対する任意の操作が可能である。例えば、ターゲットシステム300から受信した追加の仕訳に対して取り消す場合、「伝票の取消」ボタンが押されることで、追加の仕訳が取り消される。
<計算機のハードウェア構成>
次に、データ連携システム100,100Aの各システムを構成する計算機110のハードウェア構成を説明する。
図24は、計算機110のハードウェア構成例を示すブロック図である。計算機110は、本実施の形態に係るメインシステム200,200A、同期サブシステム210、ターゲットシステム300,300A、同期し捨てMう400として動作可能なコンピューターとして用いられるハードウェアの一例である。本実施の形態に係るデータ連携システム100,100Aの各システムは、計算機110(コンピューター)がプログラムを実行することにより、図2~図5に示した各機能ブロックが連携して行うデータの同期方法を実現する。
計算機110は、バス114にそれぞれ接続されたCPU(Central Processing Unit)111、ROM(Read Only Memory)112、及びRAM(Random Access Memory)113を備える。さらに、計算機110は、表示装置115、入力装置116、不揮発性ストレージ117及びネットワークインターフェイス118を備える。
CPU111は、本実施の形態に係る各機能を実現するソフトウェアのプログラムコードをROM112から読み出してRAM113にロードし、実行する。RAM113には、CPU111の演算処理の途中で発生した変数やパラメーター等が一時的に書き込まれ、これらの変数やパラメーター等がCPU111によって適宜読み出される。ただし、CPU111に代えてMPU(Micro Processing Unit)を用いてもよい。メインシステム200,200A及びターゲットシステム300,300Aにおける各機能部の機能、並びに同期サブシステム210、同期システム400における各機能部の機能は、CPU111がROM112から読み出した同期プログラムを実行することで実現される。
表示装置115は、例えば、液晶ディスプレイモニターであり、計算機110で行われる処理の結果等をユーザーに表示する。入力装置116には、例えば、キーボード、マウス等が用いられ、ユーザーが所定の操作入力、指示を行うことが可能である。なお、同期サブシステム210、同期システム400には、表示装置115及び入力装置116が設けられない構成としてもよい。
不揮発性ストレージ117としては、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フレキシブルディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ又は不揮発性のメモリ等が用いられる。この不揮発性ストレージ117には、OS(Operating System)、各種のパラメーターの他に、計算機110を機能させるためのプログラムが記録されている。ROM112及び不揮発性ストレージ117は、CPU111が動作するために必要なプログラムやデータ等を記録しており、計算機110によって実行されるプログラムを格納したコンピューター読取可能な非一過性の記憶媒体の一例として用いられる。不揮発性ストレージ117には、例えば、変換テーブル31、同期テーブル33、逆変換テーブル37等が構成される。
ネットワークインターフェイス118には、例えば、NIC(Network Interface Card)等が用いられ、NICの端子に接続されたLAN(Local Area Network)、専用線等を介して各種のデータをシステム間で送受信することが可能である。ネットワークインターフェイス118により、各システムの送信部及び受信部の機能が実現される。
以上説明した第1の実施の形態に係るデータ連携システム100によれば、ダウンストリームの処理にてメインシステム200が作成し、送信した仕訳データを同期サブシステム210が変換することでターゲットシステム300が変換後の仕訳データを取り込むことができる。このため、メインシステム200で作成された仕訳をターゲットシステム300の仕訳に同期させることができる。
逆に、アップストリームの処理にてターゲットシステム300が作成し、送信した仕訳データを同期サブシステム210が逆変換することでメインシステム200が仕訳を確定した後、逆変換後の仕訳データを取り込むことができる。このため、ターゲットシステム300で作成された仕訳をメインシステム200の仕訳に同期させることができる。
また、第2の実施の形態に係るデータ連携システム100Aによれば、ダウンストリームの処理にてメインシステム200Aが作成し、送信した仕訳データを同期システム400が変換することでターゲットシステム300Aが変換後の仕訳データを取り込むことができる。このため、メインシステム200Aで作成された仕訳をターゲットシステム300Aの仕訳に同期させることができる。
逆に、アップストリームの処理にてターゲットシステム300Aが作成し、送信した仕訳データを同期システム400が逆変換することでメインシステム200Aが仕訳を確定した後、逆変換後の仕訳データを取り込むことができる。このため、ターゲットシステム300Aで作成された仕訳をメインシステム200Aの仕訳に同期させることができる。
また、第1及び第2の実施の形態に係るデータ連携システム100,100Aでは、アップストリームの処理にてターゲットシステム300,300Aが追加、修正、又は削除した仕訳データに対して、メインシステム200,200Aが確定処理を行う。このため、ターゲットシステム300,300Aにて行われた不正確な仕訳は、メインシステム200,200Aにて是正される。
また、メインシステム200,200Aは、アップストリームの処理にて確定処理を行った結果、ターゲットシステム300,300Aにて行われた追加、修正、又は削除を取り消すことができる。取り消された追加、修正、又は削除は、ターゲットシステム300に取り込まれると、ターゲットシステム300,300Aが行った追加、修正、又は削除が取り消される。
また、メインシステム200,200Aで追加、修正、又は削除された仕訳は、ターゲットシステム300で確認された後、ターゲットシステム300に取り込まれる。また、ターゲットシステム300,300Aで追加、修正、又は削除された仕訳についても、メインシステム200,200Aで確定仕訳が行われ、メインシステム200,200Aとターゲットシステム300,300Aで取り込まれる。その後、同期サブシステム210、同期システム400の同期テーブル33に保存される仕訳データは削除されるので、同期テーブル33の記録容量を削減することができる。
また、ダウンストリームの処理にて、ターゲットシステム300,300Aにはインポート画面が表示される。また、アップストリームの処理にて、ターゲットシステム300,300Aにはエクスポート画面が表示され、メインシステム200,200Aにはインポート画面が表示される。各システムに表示される画面から、各システムのユーザーが仕訳の内容を確認することができる。
[変形例]
なお、上述した実施の形態は、会計システム間の仕訳データの送受信をAPI連携で行う例を説明したものであった。しかし、ダウンストリームの処理と、アップストリームの処理は、送信される仕訳データのデータ量が異なることが多い。そこで、仕訳データのデータ量に応じて、仕訳データの送信処理を変更する例について、図25を参照して説明する。
図25は、第2の実施の形態の変形例に係るデータ連携システム100Aの全体構成例を示す図である。
メインシステム200Aの表示装置には、確定処理部23による確定仕訳のために、ユーザーが仕訳を確認可能な確認画面が表示される。ダウンストリームの処理にてメインシステム200Aにて仕訳の追加、修正、又は削除が行われると、メインシステム200Aから同期システム400に追加、修正前後、又は削除の仕訳データが送信される。ダウンストリームの処理にてメインシステム200Aから同期システム400に送信される仕訳データ20のデータ件数は多いため、API連携で1件ごとに送信する処理は時間がかかる。そこで、メインシステム200Aから同期システム400に送信される仕訳データ20は、CSV形式のファイルで一括して送信されるとよい。
ターゲットシステム300Aの表示装置には、アップストリームの処理にて、ユーザーが仕訳を登録するための仕訳登録画面が表示される。また、ターゲットシステム300Aの表示装置には、メインシステム200Aにより確定された仕訳を確認するための確認画面が表示される。アップストリームの処理にてターゲットシステム300Aにて仕訳の追加、修正、又は削除が行われると、ターゲットシステム300Aから同期システム400に追加、修正前後、又は削除の仕訳データが送信される。アップストリームの処理はデータ件数が少ないことが多い。このため、ターゲットシステム300Aからメインシステム200Aに仕訳データを送信する際は、API連携としてもよい。
なお、本発明は上述した実施の形態に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。
例えば、上述した実施の形態は本発明を分かりやすく説明するためにシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また、本実施の形態の構成の一部について、他の構成の追加、削除、置換をすることも可能である。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。