(57)【要約】【課題】業務アプリ間で実行される取引の業務処理手順に関する整合性を早期にチェックでき、業務手続に追加、変更があった場合の対応を容易に行うことができ、更に、複数の業務アプリについて取引伝票の履歴を一元的に管理することのできる取引伝票管理方法及び取引伝票管理プログラムを提供する。【解決手段】業務アプリ間で伝達される取引伝票に基づく業務の処理手順を予め定めた定義データを格納し、前記取引伝票の伝達を中継するシステムにおいて、受信した伝票について、前記定義データと以前に受信した伝票のログデータに基づいて業務処理手順に関する整合性をチェックし、当該整合性があると判断した場合に、受信した伝票についてログデータを記録、格納すると共に、当該取引伝票を相手側の業務アプリに送信する。【選択図】                    図７
2004178480.tif 000002
【特許請求の範囲】
【請求項１】
業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータにおける取引伝票管理方法であって、
前記コンピュータが、前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、
前記コンピュータが、前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、
前記コンピュータが、前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、
前記コンピュータが、前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを有する
ことを特徴とする取引伝票管理方法。
【請求項２】
請求項１において、
前記第二のステップにおける整合性のチェックが、
前記コンピュータが、前記定義データに基づいて前記受信した取引伝票データに先行して処理されるべき先行取引伝票データを決定するステップと、
前記コンピュータが、前記決定された先行取引伝票データに関する情報が前記ログデータとして記録されているか否かをチェックするステップとを有する
ことを特徴とする取引伝票管理方法。
【請求項３】
請求項１あるいは請求項２において、
前記第三のステップにおける、ログデータとして記録する情報に、前記受信した取引伝票データによって行われている業務を識別する情報を含む
ことを特徴とする取引伝票管理方法。
【請求項４】
業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータに取引伝票管理を実行させるプログラムであって、
前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、
前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、
前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、
前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを前記コンピュータに実行させる
ことを特徴とするプログラム。
【請求項５】
業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータに取引伝票管理を実行させるプログラムを記録した記録媒体であって、
前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、
前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、
前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、
前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを
前記コンピュータに実行させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、業務アプリケーション間で伝達される取引伝票の管理を行う方法に関し、特に、業務処理手順に基づく整合性のチェック等を行うことのできる取引伝票管理方法等に関する。
【０００２】
【従来の技術】
近年、インターネットの普及やネットワーク技術の向上等により、コンピュータシステム内に構築された業務アプリケーション（以下、業務アプリと称す）同士が、ネットワークを介して直接交信して取引を実行するケースが増えている。例えば、物を販売する業務においては、販売する側の業務アプリと購入する側の業務アプリが当該業務に必要な見積依頼書、見積書等の伝票をデータとして電子的に交換し、業務を遂行していく。このような業務アプリ間の取引は、企業内、企業間、あるいは企業と消費者との間で行われている。
【０００３】
かかる電子的な取引においては、実行される業務に関し、取引相手の業務アプリでの処理手順も意識して、当該業務が正しい手順で実行されているかどうかを、即ち、必要な伝票（のデータ）が正しい手順で送受信されているかをチェックする必要がある。この業務処理手順に関する整合性のチェックは、従来は、業務システム、業務アプリ毎に、そのプログラムの中で行っていた。
【０００４】
また、他の複数の業務システム、業務アプリと取引を行う場合には、それぞれ相手方の業務システム、業務アプリに整合したデータ形式で伝票を送信する必要があり、かつ、伝票を受信する場合には自己の業務アプリに適したデータ形式に変換して受け取る必要がある。そこで、これらのデータ変換機能を専門に担う、業務システム、業務アプリからは独立したシステムを業務システム、業務アプリ間に設ける場合もあった。例えば、下記特許文献では、取引元（連携元）と取引先（連携先）のシステムに適合するように、前記データ変換等の処理内容を選択して実行するシステム間の連携方法が開示されている。
【０００５】
【特許文献１】
特開２００２−２９８０７２号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、上述した従来の方法では、いずれの場合にも、前記業務処理手順に関する整合性のチェック、言い換えれば、業務アプリ間で交換されるべき取引伝票のシーケンスのチェックは、各業務アプリで行われるので、当該整合性に関してエラーが発生しても、業務アプリのプログラムが実行されるまで発見されず、エラーの早期発見が困難である。
【０００７】
また、業務の手続に追加や変更があった場合には、例えば、交換する取引伝票が追加されたような場合には、各業務アプリ等において、追加、変更された伝票自身の処理についてのプログラム変更を行うと共に、当該伝票の前記整合性（シーケンス）のチェックについてもプログラム修正を行う必要がある。通常、業務アプリ等のプログラムにおいては、前記整合性のチェックに係る部分だけ独立した構造となっていることは少なく、前記整合性のチェックに係るプログラム修正は、他の多くの処理との関連を考慮して行われる必要があり、容易ではない。
【０００８】
更に、従来の方法では、各業務アプリ毎に実行した取引の履歴を把握することはできるが、複数のシステムや企業に複数の業務アプリが配置される場合には、それら全体の取引の履歴について一括して管理することはできなかった。
【０００９】
そこで、本発明の目的は、業務アプリ間で実行される取引の業務処理手順に関する整合性を早期にチェックでき、業務手続に追加、変更があった場合の対応を容易に行うことができ、更に、複数の業務アプリについて取引伝票の履歴を一元的に管理することのできる取引伝票管理方法及び取引伝票管理プログラムを提供することである。
【００１０】
【課題を解決するための手段】
上記の目的を達成するために、本発明の一つの側面は、業務アプリ間で伝達される取引伝票に基づく業務の処理手順を予め定めた定義データを格納し、前記取引伝票の伝達を中継するシステムにおいて、受信した伝票について、前記定義データと以前に受信した伝票のログデータに基づいて業務処理手順に関する整合性をチェックし、当該整合性があると判断した場合に、受信した伝票についてログデータを記録、格納すると共に、当該取引伝票を相手側の業務アプリに送信することである。従って、本発明によれば、送信された取引伝票が業務アプリで処理される前に、その整合性がチェックされるので、エラーを早期に発見できる。又、業務の手続が変更された際の整合性チェックについてのシステム修正は、前記定義データを変更すればよく、各業務アプリにおけるプログラム修正が容易となる。更に、前記システムに、取引を中継する全ての業務アプリの取引履歴が記録されるので、取引の履歴管理を一元的に行うことができるようになる。
【００１１】
上記の目的を達成するために、本発明の別の側面は、業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータにおける取引伝票管理方法が、前記コンピュータが、前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、前記コンピュータが、前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、前記コンピュータが、前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、前記コンピュータが、前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを有することである。
【００１２】
更に、上記の発明において、その好ましい態様は、前記第二のステップにおける整合性のチェックが、前記コンピュータが、前記定義データに基づいて前記受信した取引伝票データに先行して処理されるべき先行取引伝票データを決定するステップと、前記コンピュータが、前記決定された先行取引伝票データに関する情報が前記ログデータとして記録されているか否かをチェックするステップとを有することを特徴とする。
【００１３】
また、上記の発明において、好ましい態様は、前記第三のステップにおける、ログデータとして記録する情報に、前記受信した取引伝票データによって行われている業務を識別する情報を含むことを特徴とする。
【００１４】
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
【００１５】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態例を説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。なお、図において、同一又は類似のものには同一の参照番号又は参照記号を付して説明する。
【００１６】
図１は、本発明を適用した取引伝票管理システムの実施の形態例に係る構成図である。図１に示されるように、本実施の形態例に係る取引伝票管理システム１は、ある企業の業務システム２Ａと共に設けられ、当該業務システム２Ａ内の業務アプリ（２０ａ、２０ｂ、…）と、他の企業における業務システム（３Ａ、３Ｂ、３Ｃ、…）の業務アプリ（３０ａ、３０ｂ、３０ｃ、…）あるいは同一企業内の他の業務システム２Ｂにおける業務アプリ２０ｃ等との間で行われる電子的な取引を中継するための前記業務システム２Ａ用のシステムである。具体的には、上記業務アプリ間で行われる伝票データ５の伝達を中継し、その伝票データ５の業務手順に関する整合性を各業務システム、業務アプリに代わって一括して実施するためのシステムである。
【００１７】
前記業務システム２Ａは、当該企業における各種の業務、例えば、購買、販売、検収、人事等、に関する処理を実行するためのコンピュータシステムであり、複数の業務アプリ（２０ａ、２０ｂ、…）が設けられている。業務アプリ（２０ａ、２０ｂ、…）は、各業務に関する処理を実行するアプリケーションであり、それぞれ、実行する処理を記載したプログラムとそのプログラムに基づいて処理を実行する制御装置と処理に必要なデータ等によって構成されている。各業務アプリ（２０ａ、２０ｂ、…）は、取引を行う相手の業務アプリ（３０ａ等）との間で、必要な伝票データ５の送受信を行う。また、業務システム２Ｂも、業務システム２Ａと同様のシステムであり、同様の業務アプリ２０ｃを備えている。なお、取引伝票管理システム１は、本実施の形態例では、業務システム２Ａに対して設けられているので、業務システム２Ｂは業務システム２Ａと同一企業内に設けられてはいるが、業務システム２Ａの業務アプリ（２０ａ、２０ｂ、…）にとっては、業務システム２Ｂの業務アプリ２０ｃは、取引相手側の業務アプリとして位置づけられる。
【００１８】
また、他の企業に設けられる業務システム（３Ａ、３Ｂ、３Ｃ、…）及びそれらの業務アプリ（３０ａ、３０ｂ、３０ｃ、…）も、それらの構成及び機能は、業務システム２Ａの場合と同様である。また、図１に示すネットワーク４は、インターネット等で構成され、当該ネットワーク４を介して、前記業務アプリ間における伝票データ５の送受信が行われる。
【００１９】
次に、本実施の形態例に係る取引伝票管理システム１は、図１に示すように、データ記録部１０、定義管理部１１、伝票処理部１２、及び取引管理部１３を備えている。本取引伝票管理システム１は、業務システム２Ａと同様に、コンピュータシステムで構成することができ、本実施の形態例では、業務システム２Ａとは別のコンピュータシステムとしているが、業務システム２Ａと同一のコンピュータシステム内に構築してもよい。
【００２０】
まず、データ記録部１０は、本取引伝票管理システム１で使用する各種データを記録、管理するデータベースであり、シーケンス定義データ１００とシーケンスログデータ１０１を記録している。シーケンス定義データ１００とは、業務システム（２Ａ、３Ａなど）、業務アプリ（２０ａ、３０ａなど）間で実行される業務毎にその業務の手順（シーケンス）を定義したデータである。図２は、業務のシーケンスを説明するための図である。また、図３は、シーケンス定義データ１００を説明するための図である。
【００２１】
図２の（ａ）は、業務アプリ間で実行される業務のフローを例示した図であり、図２の（ｂ）は、伝票と先行伝票の関係を示した図である。図２の（ａ）に示す例は、業務アプリ２０ａ、２０ｂなどが業務アプリ３０ａ、３０ｂなどから商品を購入するという業務の場合であり、電子的な取引でない場合と同様に、図のロに示す「見積依頼」という行為から順次、図に示す行為が行われて業務が終了する。ここで、ロに示す「見積依頼」などの各行為をアクションと称することとし、この各アクションは、伝票（データ５）の送信によって行われる。また、これらのアクション（送信される伝票）の実行される手順をシーケンス（図２の（ａ）のイ）と称する。なお、図２の（ａ）では、一つのシーケンスが複数の業務アプリによって実行されるように記載しているが、一つの業務アプリによって実行されてもよく、また逆に、一つのシーケンスが複数の業務システム（２Ａなど）によって実行されてもよい。
【００２２】
このシーケンスは、また、図２の（ｂ）に示すように、各伝票（アクション）に対して、その一つ前に処理される伝票（アクション）を定めることで定義することができる。ここで、上記一つ前に処理される伝票（アクション）のことを先行伝票（先行アクション）と称する。例えば、図２の（ｂ）に示す例では、「見積回答」の伝票の前に「見積依頼」の伝票が処理されることを表している。なお、各業務の最初に送信（処理）される伝票については、先行伝票は存在しない。
【００２３】
前記シーケンス定義データ１００は、この各業務のシーケンスを、その業務で行われるべきアクション毎に、そのアクションの先行アクションを定める形で定義したデータである。図３の（ａ）は、シーケンス定義データ１００を概念的に示した図であり、図に示すように、シーケンス名（図のハ部）、アクション名（図のニ部）、及び先行アクション名（図のホ部）が最小単位のシーケンス定義データ１００を構成している。シーケンス名とは、各業務に付けられた名称のことであり、図２の（ａ）に示す例では、イに示すシーケンスに対して一つの名前が付けられる。従って、一つの業務に対して、その業務で行われるべきアクションの数分のシーケンス定義がなされる。
【００２４】
図３の（ｂ）は、図２に例示した業務のシーケンス定義データ１００を示したものであり、ここでは、図２の（ａ）のイに示すシーケンスの名称を「業務Ａ」としている。図３の（ｂ）のへに示すデータは、「業務Ａ」の最初のアクションである「見積依頼」に関するシーケンス定義データ１００であり、以下、「業務Ａ」については、図２に示したアクションに従って、７つのシーケンス定義データ１００が定義される（図３には全てを図示していない）。
【００２５】
以上説明したシーケンス定義データ１００は、後述する定義管理部１１により、設定及び変更がなされる。
【００２６】
次に、シーケンスログデータ１０１は、本取引伝票管理システム１が処理したアクションの情報を記録したデータあり、より具体的には、受信して処理した伝票データ５に関する情報を記録したものである。図４は、当該シーケンスログデータ１０１のデータ項目を例示した図である。シーケンスログデータ１０１は、処理した伝票データ５毎に、図４に示すようなデータ項目の情報を含んでいる。まず、「連携サービスＩＤ」は、全てのアクション（伝票）に対して与えられる識別番号である。ある業務の最初のアクションに与えられたこの識別番号は、その最初のアクションに応答して行われるそれ以降の全てのアクション（伝票）に引き継がれ、当該識別番号が、当該およびそれら後続アクション（伝票）のシーケンスログデータ１０１の「シーケンスインスタンスＩＤ」（図４参照）に設定される。
【００２７】
「シーケンス名」、「アクション名」は、それぞれ、処理した伝票データ５が属するシーケンス（業務）の名前、当該伝票データ５によるアクションの名前を意味している。また、「一意キー」は、当該伝票（データ５）の識別番号であり、「参照キー」は、当該伝票の先行伝票の識別番号、即ち、先行伝票の一意キーである。
「一意キー」と「参照キー」の例として、注文伝票の先行伝票が見積回答伝票である場合、当該注文伝票の「一意キー」は「発注番号」、「参照キー」は「見積回答番号」の例が挙げられる。「シーケンスインスタンスＩＤ」は、上述の通り、当該伝票のシーケンスにおける最初の伝票（アクション）に与えられた連携サービスＩＤであり、同じシーケンスに属する一連の伝票（アクション）には、同じ番号のこのシーケンスインスタンスＩＤがシーケンスログデータ１０１として記録される。
【００２８】
以上説明したシーケンスログデータ１０１は、後述する伝票処理部１２によって記録され、また、伝票処理部１２が伝票の整合性をチェックする際に使用される。
【００２９】
次に、本取引伝票管理システム１の定義管理部１１は、取引伝票管理システム１で処理する各業務のシーケンス定義データ１００を管理する部分であり、当該取引伝票管理システム１の管理者等の操作に基づいて、シーケンス定義データ１００の設定、変更等を行う。シーケンス定義データ１００を設定する際の具体的な手順は後述するが、当該定義管理部１１は、操作者に対してウィザード形式のインターフェースを提供し、操作者は容易にシーケンス定義データ１００の設定、変更等を行うことができる。また、取引伝票管理システム１は、複数の種類の業務について処理を行うので、当然の如く、複数種類の業務について、それぞれシーケンス定義データ１００を設定することができる。なお、定義管理部１１は、実行する処理を記述したプログラム、当該プログラムに基づいて処理を実行する制御装置、及び前記操作者に対する表示装置等で構成される。
【００３０】
次に、伝票処理部１２は、本取引伝票管理システム１の主要な部分であり、業務アプリ間で送信される伝票データ５を中継し、その業務手順上の整合性をチェックした後に相手方に送信する機能を司る。伝票処理部１２が実行する処理の具体的な内容については後述する。なお、伝票処理部１２は、実行する処理を記述したプログラム及び当該プログラムに基づいて処理を実行する制御装置等で構成される。
【００３１】
また、取引伝票管理システム１の取引管理部１３は、当該取引伝票管理システム１を介して行われる全ての業務について、取引伝票の履歴管理や業務の進捗管理を行うための部分であり、具体的には、操作者の指示に従って、前述したシーケンスログデータ１０１に基づき、取引伝票の履歴管理や業務の進捗管理に関する情報を操作者に提供する。例えば、ある業務について、どの伝票までシーケンスログデータ１０１として記録されているかに基づき、当該業務の進捗状況を操作者に知らせることができる。なお、取引管理部１３は、実行する処理を記述したプログラム、当該プログラムに基づいて処理を実行する制御装置、及び前記操作者に対する表示装置等で構成される。
【００３２】
図５は、前述した定義管理部１１によって、シーケンス定義データ１００を設定する際の操作手順の一例を示したフローチャートである。前述の通り、シーケンスの定義をする際には、定義管理部１１がウィザード形式のインターフェース画面を操作者に提供するので、操作者は、その画面の指示に従って順次操作を行うこととなる。
【００３３】
まず、定義管理部１１は、シーケンスの定義を行う業務について、その名称（シーケンス名）の入力を促す画面を表示し、操作者の入力を受ける（図５のステップＳ１）。次に、定義管理部１１は、業務の内容が、「販売」であるのか「購入」であるのかを選択させる画面を表示し、操作者に選択させる（図５のステップＳ２）。次に、定義管理部１１は、取引伝票管理システム１が設けられている側の、即ち、業務システム２Ａ（の業務アプリ）を構成しているシステムの選択を行う画面を表示する。具体的には、特定の業務を実行するために作成され市販されているパッケージソフトウェアによるシステム等、汎用的に使用される複数のシステム（以下、連携システムと称する）名を表示する。操作者は、当該画面から、シーケンス定義をしようとしている業務を実行する業務システム（業務アプリ）を構成している上記連携システム名を選択する（図５のステップＳ３）。
【００３４】
同様に、定義管理部１１は、当該業務の取引相手側の連携システムについての選択画面を同様の内容で表示し、操作者は、取引の相手側の業務システム（業務アプリ）を構成している連携システム名を選択する（図５のステップＳ４）。以上の入力を受けて、定義管理部１１は、予め登録されている前記各連携システムの情報に基づき、選択された自分側の連携システムと相手側の連携システムで共通に行うことのできる業務内容（業務の種類）を選定する。例えば、前述した図５のステップＳ２において、「購入」が選択されている場合に、前記共通に行うことのできる業務の種類として、「見積」、「見積購入」等が選定される。
【００３５】
定義管理部１１は、選定した共通に行うことのできる業務の種類を表示し、操作者にその中から選択することを促す。操作者は、シーケンス定義をしようとしている業務に見合う内容のものを選択する（図５のステップＳ５）。
【００３６】
図６は、前記各業務の種類において行われるべきアクション及びその順番を例示した図である。図中、丸印の付いているアクションが各業務に対して行われるべきアクションを示しており、上に書いてあるアクションから順番に行われるべきことを意味している。定義管理部１１は、図６に示すような情報を予め備えており、前記操作者に選択された業務の種類に従って、当該情報に基づいて、シーケンス定義データ１００を作成し、データ記録部１０に格納する（図５のステップＳ６）。具体的には、選択された業務の種類に属するアクション毎に、図６に示すような情報を基に、前記入力されたシーケンス名、当該アクション名、先行アクション名を設定していく。これにより、定義をしようとした業務について、図３に示したようなシーケンス定義データ１００が構築される。
【００３７】
かかるシーケンスの定義は、実際の取引が実行される前に行われ、また、必要に応じて、一度設定したシーケンス定義データ１００を同様のインターフェースにより変更することもできる。以上説明したように、本取引伝票管理システム１においては、容易な操作で、取引業務の手順をチェックするためのシーケンス定義及びシーケンス定義の変更を行うことができる。
【００３８】
次に、図７は、業務システム、業務アプリ間で取引が行われている際に、本取引伝票管理システム１が行う処理の内容を例示したフローチャートである。具体的には、図７は、取引伝票管理システム１の伝票処理部１２が伝票データ５を受信した際に行う処理を大まかに示したものである。まず、業務アプリ（２０ａ、３０ａ等）から相手方の業務アプリ（２０ａ、３０ａ等）に対して、取引に関する伝票のデータ（伝票データ５）が送信されると、相手方に送信される前に取引伝票管理システム１がその伝票データ５を受信する（図７のステップＳ１０）。
【００３９】
図８は、伝票データ５に含まれるデータ項目を例示した図である。図８に示すように、伝票データ５には、「シーケンス名」、「アクション名」、「一意キー」、及び「参照キー」が、業務内容に関する「業務データ」の前に、識別情報として備えられている。「シーケンス名」は、当該伝票データ５が属する業務の種類に対して付けられた名称であり、図４に基づいて説明したシーケンスログデータ１０１の「シーケンス名」と同じである。また、「アクション名」、「一意キー」、及び「参照キー」は、それぞれ、当該伝票データ５によるアクションの名称、当該伝票データ５の識別番号、及び当該伝票データ５に先行する伝票データ５の識別番号であり、これらもシーケンスログデータ１０１におけるデータ項目と同じ意味である。
【００４０】
伝票データ５を受信した伝票処理部１２は、当該受信した伝票データ５と前述したシーケンス定義データ１００及びシーケンスログデータ１０１とに基づいて、当該受信した伝票データ５の整合性のチェックを行う（図７のステップＳ２０）。かかる処理の具体的な内容は後述するが、この処理により、受信した伝票データ５がシーケンス定義データ１００に定められている正しい手順で送信されているか、言い換えれば、当該伝票データ５によるアクションが正しい手順で実行されているかという整合性がチェックされる。
【００４１】
かかる処理により、上述の整合性が取れていると判断された場合には、即ち、当該伝票データ５が正しい手順で送信されたものであると判断された場合には（図７のステップＳ３０のＹｅｓ）、伝票処理部１２は、当該受信した伝票データ５についての情報を前述したシーケンスログデータ１０１に書き込む（図７のステップＳ４０）。そして、当該伝票データ５を相手方の業務アプリ（２０ａ、３０ａ等）に適したデータに変換し、具体的には、データ形式変換や文字コード変換等によるデータ加工を施して変換し、変換後の伝票データ５を相手方の業務アプリ（２０ａ、３０ａ等）に送信する（図７のステップＳ５０）。これにより、受信した伝票データ５に対する処理が終了する。
【００４２】
一方、前記整合性のチェックにおいて、当該伝票データ５が正しい手順で送信されていないと判断された場合には、即ち、当該伝票データ５にかかる業務が正しい手順で行われていないと判断された場合には（図７のステップＳ３０のＮｏ）、伝票処理部１２は、エラーが発生したと判断し、当該伝票データ５に対する処理を終了すると共に、その旨を当該伝票データ５についての業務を実行している業務システム２Ａの業務アプリ（２０ａ、２０ｂ等）に連絡する（図７のステップＳ６０）。なお、当該エラーの報告は、業務システム２Ａの業務アプリ（２０ａ、２０ｂ等）が取引をしている相手方の業務アプリ（３０ａ等）に対しても行われるようにしてもよい。
【００４３】
図９は、伝票処理部１２が行う処理をより詳細に示したフローチャートである。具体的には、図７における整合性のチェック（ステップＳ２０及び３０）とシーケンスログへの書込み（ステップＳ４０）の処理を詳細に示したものである。伝票処理部１２は、伝票データ５を受信すると（ステップＳ１０）、まず、その中に含まれている各データを取得する（図９のステップＳ２１）。次に、取得したデータを解析して、その中から、前述した「シーケンス名」、「アクション名」、「一意キー」、及び「参照キー」のデータを取得する（図９のステップＳ２２）。なお、本実施の形態例では、図８に基づいて説明したように、受信する伝票データ５に既に「シーケンス名」、「アクション名」、「一意キー」、及び「参照キー」が用意されているが、受信する伝票に「シーケンス名」及び「アクション名」が無く、また「一意キー」及び「参照キー」の位置が一定でない場合もある。かかる場合には、伝票処理部１２が、予め定義しておいた紐付け情報等を用いて、当該伝票に含まれる他の情報からこれらのデータを特定する処理を実行する。
【００４４】
かかる取得に成功すれば（図９のステップＳ２３のＹｅｓ）、次に、当該取得したシーケンス名とアクション名で前記シーケンス定義データ１００を検索する（図９のステップＳ２４）。具体的には、図３に基づいて説明したアクション毎に定義されているシーケンス定義データ１００の中から、当該取得したシーケンス名とアクション名を有するものを検索する。
【００４５】
当該検索に成功した場合には（図９のステップＳ２５のＹｅｓ）、当該検索したシーケンス定義データ１００に含まれる先行アクション名（図３の（ａ）のホ）を検索する（図９のステップＳ２６）。検索した結果、先行アクション名が指定（設定）されている場合にはその先行アクション名を取得し（図９のステップＳ２７のＹｅｓ）、前記取得した伝票データ５に参照キーの値があるか否か（図９のステップＳ２８）、前記取得した伝票データ５に一意キーの値があるか否か（図９のステップＳ２９）をチェックする。
【００４６】
上記両方のキーの値がある場合には（図９のステップＳ２８のＹｅｓ及びＳ２９のＹｅｓ）、前記取得したシーケンス名、先行アクション名、及び参照キーにより、前述したシーケンスログデータ１０１を検索する（図９のステップＳ３１）。具体的には、図４に例示したような伝票データ５毎に記録されているシーケンスログデータ１０１の中から、前記取得したシーケンス名と同一のシーケンス名であり、前記取得した先行アクション名と同一のアクション名であり、かつ、前記取得した参照キーと同一の一意キーであるシーケンスログデータ１０１を検索する。
【００４７】
当該伝票データ５の一意なキーを連携サービスＩＤとして保持するとともに、かかる検索が成功した場合には、即ち、上記条件に当てはまるシーケンスログデータ１０１があった場合には（図９のステップＳ３２のＹｅｓ）、当該検索されたシーケンスログデータ１０１のシーケンスインスタンスＩＤを取得し、これを今回受信した伝票データ５のシーケンスインスタンスＩＤとして保持する（図９のステップＳ４１）。そして、今回受信した伝票データ５のシーケンス名、アクション名、一意キー、参照キー、及び上記保持した連携サービスＩＤおよびシーケンスインスタンスＩＤを、今回受信した伝票データ５のシーケンスログデータ１０１として、データ記録部１０に記録する（図９のステップＳ４３）。かかるデータは、当該伝票データ５に続いて送信される伝票データ５を処理する際に、先行アクションに係るシーケンスログデータ１０１として利用される。
【００４８】
以上の処理が終了すると、図７に示した通り、受信した伝票データ５のデータ変換及び送信のステップ（Ｓ５０）に処理が移行する。
【００４９】
一方、前述した図９のステップＳ２７において、検索したシーケンス定義データ１００の先行アクション名が指定（設定）されていない場合には（図９のステップＳ２７のＮｏ）、即ち、受信した伝票データ５が業務手順の最初の伝票データ５である場合には、伝票データ５に一意キーの値があることを確認し（図９のステップＳ３３のＹｅｓ）、当該伝票データ５の一意なキーを連携サービスＩＤとして保持する（図９のステップＳ４２）。この一意なキーは、図４に基づいて説明した「シーケンスインスタンスＩＤ」となる識別番号を意味し、当該受信した伝票データ５から始まる一連の業務を表す番号となり、前述したように、当該一連の業務の各伝票データ５に引き継がれる。その後、処理が前述した図９のステップＳ４３に移り、同様に、当該伝票データ５についてのシーケンスログデータ１０１が記録されるが、上記連携サービスＩＤとして保持した一意なキーは、「連携サービスＩＤ」及び「シーケンスインスタンスＩＤ」として記録される。
【００５０】
また、前述した図９のステップＳ２３、Ｓ２５、Ｓ２８、Ｓ２９、Ｓ３２、及びＳ３３の各ステップにおいて、処理の結果がＮｏであった場合には、伝票処理部１２は、エラーであると判断し、図７のステップＳ６０で説明したエラー処理を実行する。なお、図７及び図９に基づいて説明した例では、エラー処理（ステップＳ６０）後は処理が終了するが、エラー処理された場合にもその結果をシーケンスログデータ１０１として記録するようにしてもよい。
【００５１】
以上説明したような内容で、実際に電子取引がされている際の伝票データ５の処理が実行されるが、本取引伝票管理システム１では、前述した取引管理部１３により、既に終了した処理の履歴管理等を行うことができる。前述したとおり、本取引伝票管理システム１においては、処理した伝票データ５の情報がシーケンスログデータ１０１として残るので、当該取引伝票管理システム１を用いる全ての業務アプリの情報を一元的に管理することが可能である。また、前述したように、一つの業務の一連のアクションには同一のシーケンスインスタンスＩＤが付されるので、データを当該シーケンスインスタンスＩＤで容易に検索、抽出することができ、業務毎の進捗管理、履歴管理を短時間で行うことができる。また、前述のように、エラー処理された場合にもその結果をシーケンスログデータ１０１に残している場合には、エラーの分析やネックとなっている業務の分析等も行うことができる。
【００５２】
以上説明したように、本実施の形態例に係る取引伝票管理システム１を用いることにより、業務アプリ間で通信される伝票データ５の業務手順に係る整合性が、相手方の業務アプリに送信される前にチェックされるので、業務手順上のエラーを早期に発見することが可能であり、エラーによるロスを小さく抑えることができる。また、本取引伝票管理システム１では、業務手順の追加や変更があった場合にも、伝票データ５の業務手順に係る整合性のチェックについては、前述したシーケンス定義データ１００のみを変えればよく、また、その操作も前述したウィザード形式のインターフェースによって行われるので、変更作業が従来よりも格段に容易となる。更に、複数の業務システムに配置される業務アプリに関する情報を一元的に管理することも可能となる。
【００５３】
なお、本実施の形態例では、企業間で行われる取引を主としていたが、一つの企業内の複数の業務アプリ間で取引が行われる場合にも本発明に係る取引伝票管理システムを用いることができる。また、本実施の形態例では、一つの業務システムにのみ本発明に係る取引伝票管理システムを設けたが、複数の業務システムに同様の取引伝票管理システムを設けてもよく、また、複数の業務システムに対して一つの取引伝票管理システムを設けてもよい。更に、本実施の形態例では、取引伝票管理システム１は業務システム２Ａのシステムとして位置づけたが、取引伝票管理システムを、これを利用する全ての業務システム、業務アプリから独立したシステムと位置づけることも可能である。
【００５４】
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【００５５】
（付記１）業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータにおける取引伝票管理方法であって、
前記コンピュータが、前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、
前記コンピュータが、前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、
前記コンピュータが、前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、
前記コンピュータが、前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを有する
ことを特徴とする取引伝票管理方法。
【００５６】
（付記２）付記１において、
前記第二のステップにおける整合性のチェックが、
前記コンピュータが、前記定義データに基づいて前記受信した取引伝票データに先行して処理されるべき先行取引伝票データを決定するステップと、
前記コンピュータが、前記決定された先行取引伝票データに関する情報が前記ログデータとして記録されているか否かをチェックするステップとを有する
ことを特徴とする取引伝票管理方法。
【００５７】
（付記３）付記１あるいは付記２において、
前記第三のステップにおける、ログデータとして記録する情報に、前記受信した取引伝票データによって行われている業務を識別する情報を含む
ことを特徴とする取引伝票管理方法。
【００５８】
（付記４）業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータに取引伝票管理を実行させるプログラムであって、
前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、
前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、
前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、
前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを前記コンピュータに実行させる
ことを特徴とするプログラム。
【００５９】
（付記５）付記４において、
前記第二のステップにおける整合性のチェックが、
前記定義データに基づいて前記受信した取引伝票データに先行して処理されるべき先行取引伝票データを決定するステップと、
前記決定された先行取引伝票データに関する情報が前記ログデータとして記録されているか否かをチェックするステップとを有する
ことを特徴とするプログラム。
【００６０】
（付記６）付記４あるいは付記５において、
前記第三のステップにおける、ログデータとして記録する情報に、前記受信した取引伝票データによって行われている業務を識別する情報を含む
ことを特徴とするプログラム。
【００６１】
（付記７）業務アプリケーション間でネットワークを介して伝達される取引伝票データを中継するコンピュータに取引伝票管理を実行させるプログラムを記録した記録媒体であって、
前記業務アプリケーションが送信した前記取引伝票データを受信する第一のステップと、
前記取引伝票データの伝達によって行われる業務の処理手順を予め定めた定義データと、過去に受信した前記取引伝票データに関する情報を記録したログデータとに基づいて、前記受信した取引伝票データの前記業務の処理手順に関する整合性をチェックする第二のステップと、
前記第二のステップにおいて前記整合性があると判断した場合に、前記受信した取引伝票データに関する情報を前記ログデータとして記録すると共に、当該取引伝票データを送信先の前記業務アプリケーションに送信する第三のステップと、
前記第二のステップにおいて前記整合性がないと判断した場合に、エラー処理を実行する第四のステップとを
前記コンピュータに実行させるプログラムを記録した記録媒体。
【００６２】
（付記８）付記７において、
前記第二のステップにおける整合性のチェックが、
前記定義データに基づいて前記受信した取引伝票データに先行して処理されるべき先行取引伝票データを決定するステップと、
前記決定された先行取引伝票データに関する情報が前記ログデータとして記録されているか否かをチェックするステップとを有する
ことを特徴とするプログラムを記録した記録媒体。
【００６３】
（付記９）付記７あるいは付記８において、
前記第三のステップにおける、ログデータとして記録する情報に、前記受信した取引伝票データによって行われている業務を識別する情報を含む
ことを特徴とするプログラムを記録した記録媒体。
【００６４】
【発明の効果】
以上、本発明によれば、送信された取引伝票が業務アプリで処理される前に、その整合性がチェックされるので、エラーを早期に発見できる。又、業務の手続が変更された際の整合性チェックについてのシステム修正は、前記定義データを変更すればよく、各業務アプリにおけるプログラム修正が容易となる。更に、前記システムに、取引を中継する全ての業務アプリの取引履歴が記録されるので、取引の履歴管理を一元的に行うことができるようになる。
【図面の簡単な説明】
【図１】本発明を適用した取引伝票管理システムの実施の形態例に係る構成図である。
【図２】業務のシーケンスを説明するための図である。
【図３】シーケンス定義データ１００を説明するための図である。
【図４】シーケンスログデータ１０１のデータ項目を例示した図である。
【図５】定義管理部１１によって、シーケンス定義データ１００を設定する際の操作手順の一例を示したフローチャートである。
【図６】各業務の種類において行われるべきアクション及びその順番を例示した図である。
【図７】業務アプリ間で取引が行われている際に、本取引伝票管理システム１が行う処理の内容を例示したフローチャートである。
【図８】伝票データ５に含まれるデータ項目を例示した図である。
【図９】伝票処理部１２が行う処理をより詳細に示したフローチャートである。
【符号の説明】
１  取引伝票管理システム
２Ａ、２Ｂ  業務システム
３Ａ、３Ｂ、３Ｃ  業務システム
４  ネットワーク
５  伝票データ
１０  データ記録部
１１  定義管理部
１２  伝票処理部
１３  取引管理部
２０ａ、２０ｂ、２０ｃ  業務アプリ
３０ａ、３０ｂ、３０ｃ  業務アプリ
１００  シーケンス定義データ
１０１  シーケンスログデータ
【図１】
2004178480.tif 000003
【図２】
2004178480.tif 000004
【図３】
2004178480.tif 000005
【図４】
2004178480.tif 000006
【図５】
2004178480.tif 000007
【図６】
2004178480.tif 000008
【図７】
2004178480.tif 000009
【図８】
2004178480.tif 000010
【図９】
2004178480.tif 000011