(57)【要約】【課題】人手を掛けずにリカバリ送信を自動で行うことが可能なデータ転送装置、データ転送方法及びデータ転送プログラムを提供することを目的とする。【解決手段】データ転送装置１２であって、一のシステムからデータの送信依頼を受けるとデータ送受信履歴テーブル２２に、データ送受信の履歴を登録するデータ送受信履歴登録手段と、送信依頼に対応するデータをデータの送信が成功するまでデータ保管領域２０に保管するデータ保管手段と、データの送信に失敗すると自動再送管理テーブルから再送制御情報を取得し、その再送制御情報に基づいてデータの再送を行う第１のデータ再送手段と、データの再送結果に基づいてデータの送信先のシステムの障害又は復旧を検知する障害／復旧検知手段と、システムの障害が検知されるとデータの送信が成功するまで所定間隔でデータの再送を行う第２のデータ再送手段とを有することにより上記課題を解決する。【選択図】図７
2010061400.tif 000002
【特許請求の範囲】
【請求項１】
複数のシステム間でデータ送受信を仲介するデータ転送装置であって、
一のシステムからデータの送信依頼を受けると、複数のシステム間におけるデータ送受信の履歴を格納するデータ送受信履歴テーブルに、データ送受信の履歴を登録するデータ送受信履歴登録手段と、
前記一のシステムから受信した前記送信依頼に対応するデータを、データの送信が成功するまでデータ保管領域に保管するデータ保管手段と、
データの送信に失敗すると、データの再送に関する再送制御情報を格納する自動再送管理テーブルから、再送制御情報を取得し、その再送制御情報に基づいてデータの再送を行う第１のデータ再送手段と、
データの再送結果に基づいて、データの送信先のシステムの障害又は復旧を検知する障害／復旧検知手段と、
前記障害／復旧検知手段によりシステムの障害が検知されると、データの送信が成功するまで、所定間隔でデータの再送を行う第２のデータ再送手段と
を有するデータ転送装置。
【請求項２】
前記第１のデータ再送手段は、再送制御情報に含まれる再送間隔に基づいて、データの送信が成功するか、又は、前記障害／復旧検知手段が障害を検知するまでデータの再送を行い、
前記障害／復旧検知手段は、データの累積再送回数が、再送制御情報に含まれる再送しきい値となると、データの送信先のシステムの障害を検知することを特徴とする請求項１記載のデータ転送装置。
【請求項３】
前記障害／復旧検知手段は、データの送信先のシステムの障害を検知したあと、前記第２のデータ再送手段によるデータの再送が成功すると、データの送信先のシステムの復旧を検知することを特徴とする請求項１又は２記載のデータ転送装置。
【請求項４】
前記データ保管領域に保管されている所定のデータ種類のデータを読み出し、重複するデータがあれば、重複するデータのうち最新のものを残すように処理する重複チェック手段を更に有する請求項１乃至３何れか一項記載のデータ転送装置。
【請求項５】
前記重複チェック手段は、データのデータヘッダ情報に含まれるデータ種類情報に基づいて、データのデータ種類を判別することを特徴とする請求項４記載のデータ転送装置。
【請求項６】
複数のシステム間で、データ送受信を仲介するデータ転送装置が行うデータ転送方法であって、
データ送受信履歴登録手段が、一のシステムからデータの送信依頼を受けると、複数のシステム間におけるデータ送受信の履歴を格納するデータ送受信履歴テーブルに、データ送受信の履歴を登録するデータ送受信履歴登録ステップと、
データ保管手段が、前記一のシステムから受信した前記送信依頼に対応するデータを、データの送信が成功するまでデータ保管領域に保管するデータ保管ステップと、
データの送信に失敗すると、第１のデータ再送手段が、データの再送に関する再送制御情報を格納する自動再送管理テーブルから、再送制御情報を取得し、その再送制御情報に基づいてデータの再送を行う第１のデータ再送ステップと、
障害／復旧検知手段が、データの再送結果に基づいて、データの送信先のシステムの障害又は復旧を検知する障害／復旧検知ステップと、
第２のデータ再送手段が、前記障害／復旧検知手段によりシステムの障害が検知されると、データの送信が成功するまで、所定間隔でデータの再送を行う第２のデータ再送ステップと
を有するデータ転送方法。
【請求項７】
複数のシステム間でデータ送受信を仲介するデータ転送装置を、
一のシステムからデータの送信依頼を受けると、複数のシステム間におけるデータ送受信の履歴を格納するデータ送受信履歴テーブルに、データ送受信の履歴を登録するデータ送受信履歴登録手段と、
前記一のシステムから受信した前記送信依頼に対応するデータを、データの送信が成功するまでデータ保管領域に保管するデータ保管手段と、
データの送信に失敗すると、データの再送に関する再送制御情報を格納する自動再送管理テーブルから、再送制御情報を取得し、その再送制御情報に基づいてデータの再送を行う第１のデータ再送手段と、
データの再送結果に基づいて、データの送信先のシステムの障害又は復旧を検知する障害／復旧検知手段と、
前記障害／復旧検知手段によりシステムの障害が検知されると、データの送信が成功するまで、所定間隔でデータの再送を行う第２のデータ再送手段と
して機能させるためのデータ転送プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送装置、データ転送方法及びデータ転送プログラムに係り、特に複数のシステム間でデータ送受信を仲介するデータ転送装置、データ転送方法及びデータ転送プログラムに関する。
【背景技術】
【０００２】
近年では、商取引に関する情報を標準的な書式に統一して、企業間で電子的に交換する仕組みであるインターネットＥＤＩシステムが、よく利用されている。インターネットＥＤＩシステムでは、商品データ，納期データ，注文データ，受領データなどを、あらかじめ定められた形式にしたがって電子化し、インターネットを通じて送受信する。
【０００３】
ここでは、インターネットＥＤＩシステムを運営している運営企業のシステム（自社システム）と、取引先企業のシステム（取引先システム）との間のインターネットＥＤＩシステムを例として説明する。
【０００４】
従来のインターネットＥＤＩシステムは、データの配信先のシステム（自社システム又は取引先システム）で障害が発生した場合、データを正常に配信することができず、障害が復旧した後にリカバリ送信を行っていた。なお、障害の発生を検出する従来の技術としては、ネットワーク上での通信経路の通信状態や電子装置を監視して障害を検知する技術が知られている（例えば特許文献１〜３参照）。
【特許文献１】特開平１１−３３１１９４号公報
【特許文献２】特許第３４１６６０４号公報
【特許文献３】特許第３９１４０３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のインターネットＥＤＩシステムでは、データの配信先のシステムで障害が発生した場合、障害が復旧した後にリカバリ送信を行っていた。従来のリカバリ送信はシステム担当者が人手で行っていたため、作業工数が掛かり、また、誤ったデータを配信してしまうリスクが存在していた。
【０００６】
本発明は、上記の点に鑑みなされたもので、人手を掛けずにリカバリ送信を自動で行うことが可能なデータ転送装置、データ転送方法及びデータ転送プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決する為、本発明は、複数のシステム間でデータ送受信を仲介するデータ転送装置であって、一のシステムからデータの送信依頼を受けると、複数のシステム間におけるデータ送受信の履歴を格納するデータ送受信履歴テーブルに、データ送受信の履歴を登録するデータ送受信履歴登録手段と、前記一のシステムから受信した前記送信依頼に対応するデータを、データの送信が成功するまでデータ保管領域に保管するデータ保管手段と、データの送信に失敗すると、データの再送に関する再送制御情報を格納する自動再送管理テーブルから、再送制御情報を取得し、その再送制御情報に基づいてデータの再送を行う第１のデータ再送手段と、データの再送結果に基づいて、データの送信先のシステムの障害又は復旧を検知する障害／復旧検知手段と、前記障害／復旧検知手段によりシステムの障害が検知されると、データの送信が成功するまで、所定間隔でデータの再送を行う第２のデータ再送手段とを有することを特徴とする。
【０００８】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、人手を掛けずにリカバリ送信を自動で行うことが可能なデータ転送装置、データ転送方法及びデータ転送プログラムを提供可能である。
【発明を実施するための最良の形態】
【００１０】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。
【００１１】
図１は本発明によるインターネットＥＤＩシステムの一例の構成図である。図１のインターネットＥＤＩシステム１は自社システム１０，取引先システム１１，トランスレートサーバ１２，データ保管サーバ１３，インターネット１４を含む構成である。自社システム１０はトランスレートサーバ１２とデータ通信可能に接続されている。取引先システム１１はインターネット１４を介してトランスレートサーバ１２とデータ通信可能に接続されている。
【００１２】
また、トランスレートサーバ１２はデータ保管サーバ１３とデータ通信可能に接続されている。図１のインターネットＥＤＩシステム１では自社システム１０と取引先システム１１との間でトランスレートサーバ１２がデータ送受信を仲介している。なお、自社システム１０側の企業は商品の発注や納入管理を行うものとする。取引先システム１１側の企業は自社システム１０側の企業からの注文を受けるものとする。
【００１３】
図２はトランスレートサーバ及びデータ保管サーバの詳細を表した構成図である。図２に示すように、トランスレートサーバ１２は本番機１２Ａとスタンバイ機１２Ｂとを含む構成である。トランスレートサーバ１２はＨＡクラスタを構成している。ＨＡクラスタとはサーバを複数台使用して冗長化することにより、システムの停止時間を最小限に抑えて業務の可用性を向上させるクラスタシステムをいう。トランスレートサーバ１２はＨＡクラスタとして動作するようにＨＡクラスタソフトウェアにより制御される。
【００１４】
データ保管サーバ１３はデータ保管領域２０を有している。また、データ保管サーバ１３は自動再送管理テーブル２１，データ送受信履歴テーブル２２を保管している。データ保管領域２０は自社システム１０又は取引先システム１１からのデータを保管しておく領域である。データ保管領域２０に保管されたデータは自社システム１０又は取引先システム１１への転送が成功すると削除される。
【００１５】
自動再送管理テーブル２１は、再送の成功／失敗によって自社システム１０又は取引先システム１１の障害／復旧を検知する為の再送制御情報を管理している。データ送受信履歴テーブル２２は自社システム１０又は取引先システム１１からのデータ受信履歴と、自社システム１０又は取引先システム１１へのデータ転送履歴とを管理している。トランスレートサーバ１２は再送処理のためのデータをデータ保管サーバ１３のデータ保管領域２０に保管する一方、再送処理のためのデータをデータ保管サーバ１３のデータ保管領域２０から提供される。
【００１６】
図３はインターネットＥＤＩシステムで配信されるデータについて説明する為の説明図である。図３に示すように、配信されるデータは例えばＸＭＬデータである。伝送プロトコルは、Ｓ／ＭＩＮＥ又はＳＳＬが利用される。
【００１７】
図４はインターネットＥＤＩシステムで配信されるＸＭＬデータの一例のデータ構成図である。図４のＸＭＬデータは、データヘッダ情報とデータ中身情報とを含むように構成される。データヘッダ情報は、送信先システムＩＤ，送信元システムＩＤ，送信データを特定するＩＤ，送信データの種類（注文データ，商品データなど）を表すＩＤ，送信日時などを含んでいる。
【００１８】
図５は自動再送管理テーブルの一例の構成図である。自動再送管理テーブル２１は、配信先システムＩＤ，配信先システム名，累積再送回数，再送しきい値，システム状態，再送間隔をデータ項目として有する。
【００１９】
配信先システムＩＤは、送信データのデータヘッダ情報に含まれる情報である。配信先システム名は、配信先システムＩＤに紐づくシステム名称である。累積再送回数は再送を行った累積回数であり、送信データの再送が成功すると、０に戻される。再送しきい値は再送を繰り返すことができる回数である。なお、累積再送回数が再送しきい値となった場合は配信先システムの障害と判断される。システム状態は配信先システムの状態（システムエラー，通常など）である。再送間隔は送信データを再送する際の間隔である。
【００２０】
図６は、データ送受信履歴テーブルの一例の構成図である。データ送受信履歴テーブル２２は、送受信ＩＤ，配信元仕入先ＩＤ，配信元仕入先名，データ種類，トランスレートサーバ→自社システム連携時刻，自社システム→トランスレートサーバ連携時刻，トランスレートサーバ→取引先システム連携時刻，保管データＩＤをデータ項目として有する。
【００２１】
送受信ＩＤは、データの送受信の順番にシーケンシャルに割り当てられる一意のＩＤである。配信元仕入先ＩＤは、送信データのデータヘッダ情報に含まれるデータの送信元システムＩＤである。配信元仕入先名は、データの送信元システムＩＤに紐づくシステム名称である。データ種類は送信データの種類である。
【００２２】
トランスレートサーバ→自社システム連携時刻は、トランスレートサーバ１２から自社システム１０への連携時刻である。自社システム→トランスレートサーバ連携時刻は自社システム１０からトランスレートサーバ１２への連携時刻である。また、トランスレートサーバ→取引先システム連携時刻はトランスレートサーバ１２から取引先システム１１への連携時刻である。保管データＩＤはデータ保管領域２０に保管されたデータと紐づける為のＩＤである。データ送受信履歴テーブル２２のトランスレートサーバ→自社システム連携時刻，自社システム→トランスレートサーバ連携時刻，トランスレートサーバ→取引先システム連携時刻は、未連携のときに空欄となっており、連携されたあと連携時刻が登録される。
【００２３】
図７はトランスレートサーバにおけるデータ解析方法を示した一例のフローチャートである。ここでは、自社システム１０から受信したＸＭＬデータ３１を取引先システム１１に転送する例を説明する。トランスレートサーバ１２は、データ転送モジュール３０を有する。
【００２４】
例えば図４に示したようなＸＭＬデータ３１を自社システム１０から受信すると、トランスレートサーバ１２のデータ転送モジュール３０はステップＳ１に進み、ＸＭＬデータ３１のＸＭＬ解析を行う。
【００２５】
ステップＳ２に進み、データ転送モジュール３０はＸＭＬデータ３１のデータヘッダ情報から必要な情報を取得し、データ送信の履歴をデータ保管サーバ１３のデータ送受信履歴テーブル２２に登録する。
【００２６】
ステップＳ３に進み、データ転送モジュール３０は必要に応じてデータ保管領域２０へのデータの保管又はデータ保管領域２０からのデータの削除を行う。例えば、データ転送モジュール３０は、自社システム１０からのＸＭＬデータ３１をデータ保管領域２０へ保管する。ステップＳ４に進み、データ転送モジュール３０は取引先システム１１へＸＭＬデータ３１を転送する。なお、データ転送モジュール３０はＸＭＬデータ３１の取引先システム１１への転送が成功すると、そのＸＭＬデータ３１をデータ保管領域２０から削除する。
【００２７】
図８は自社システム又は取引先システムの障害／復旧を検知する方法を説明する為の説明図である。図８では、自社社内ネットワーク内に、自社システム１０，トランスレートサーバ１２，データ保管サーバ１３が配置され、取引先社内ネットワーク内に、取引先システム１１が配置されている。なお、トランスレートサーバ１２及びデータ保管サーバ１３はインターネット１４や取引先社内ネットワーク内に配置されてもよい。自社システム１０又は取引先システム１１の障害／復旧を検知する方法は、自社社内ネットワーク内，取引先社内ネットワーク内，インターネット１４の何れにトランスレートサーバ１２，データ保管サーバ１３が配置されても共通である。
【００２８】
トランスレートサーバ１２は取引先システム１１から受信したデータを自社システム１０に転送（送信）する。また、トランスレートサーバ１２は自社システム１０から受信したデータを取引先システム１１に転送する。トランスレートサーバ１２は送信エラーが起きたとき、自動再送管理テーブル２１が管理している再送制御情報に従ってデータを自動再送する。
【００２９】
トランスレートサーバ１２は再送エラーになったとき、再送制御情報に含まれる累積再送回数に１を加算し、再送制御情報に含まれる再送間隔を空けて、データを再送する。累積再送回数が再送制御情報に含まれる再送しきい値になった場合、トランスレートサーバ１２は配信先システムで障害が発生（障害を検知）したと判断して、データの再送を一時的にストップする。
【００３０】
図８の例では、自動再送管理テーブル２１の一番上のレコードの累積再送回数が再送しきい値と同数の「３回」となっており、配信先システムの状態としてシステムエラーが登録されている。
【００３１】
障害が発生したと判断した配信先システムに対して、トランスレートサーバ１２は例えば３０分間隔で再送を試みる。データの再送に対して配信先システムの反応があればトランスレートサーバ１２は障害が復旧（復旧を検知）したと見なし、自動再送管理テーブル２１の累積再送回数を「０回」に戻す。なお、データの再送に対して配信先システムの反応がなければトランスレートサーバ１２は３０分間隔で再送を繰り返す。
【００３２】
図９は配信先システムに転送するデータの自動再送の種類を表した説明図である。トランスレートサーバ１２が配信先システムに転送するデータには、取引先システム１１から自社システム１０に転送するデータと、自社システム１０から取引先システム１１に転送するデータとがある。
【００３３】
トランスレートサーバ１２が行うデータの自動再送の種類は、未送信のデータに重複するデータが存在する場合、重複するデータを取り除き、最新の内容のものを再送するものと、未送信の全データを送信要求順に再送するものとがある。
【００３４】
未送信のデータに重複するデータが存在する場合、重複するデータを取り除き、最新の内容のものを再送する自動再送は、取引先システム１１から自社システム１０に転送するデータ（例えば商品データ，納期データなど）に該当する。未送信の全データを送信要求順に再送する自動再送は自社システム１０から取引先システム１１に転送するデータ（例えば注文データ，受領データなど）に該当する。
【００３５】
以下、トランスレートサーバ１２が行うデータの自動再送について、自社システム１０から取引先システム１１への連携と、取引先システム１１から自社システム１０への連携とに分けて説明する。
【００３６】
（自社システム１０から取引先システム１１への連携）
図１０は自社システムから取引先システムへの連携におけるデータの自動再送を説明する為の説明図である。ステップＳ１１に進み、取引先システム１１は配信依頼をトランスレートサーバ１２に行う。なお、ステップＳ１１がエラーのとき、取引先システム１１からトランスレートサーバ１２への配信依頼は手動にて再送される。
【００３７】
ステップＳ１２に進み、トランスレートサーバ１２は配信依頼転送を自社システム１０に行う。なお、ステップＳ１２がエラーのとき、トランスレートサーバ１２から自社システム１０への配信依頼転送は自動再送される。
【００３８】
ステップＳ１３に進み、トランスレートサーバ１２はデータ返信を自社システム１０から受ける。なお、ステップＳ１３がエラーのとき、自社システム１０からトランスレートサーバ１２へのデータ返信は自動再送される。
【００３９】
ステップＳ１４に進み、トランスレートサーバ１２は自社システム１０から返信されたデータをデータ保管サーバ１３のデータ保管領域２０へ保管する。そして、ステップＳ１５に進み、トランスレートサーバ１２は自社システム１０から返信されたデータを取引先システム１１に返信転送する。
【００４０】
なお、ステップＳ１５がエラーのとき、トランスレートサーバ１２はデータ保管サーバ１３のデータ保管領域２０に保管してあるデータを自動再送する。ステップＳ１５が正常終了すると、トランスレートサーバ１２は自社システム１０から返信されたデータを取引先システム１１に転送できたと判定し、データ保管領域２０から削除する。なお、トランスレートサーバ１２及びデータ保管サーバ１３は自社ネットワーク内，取引先社内ネットワーク内，インターネット１４の何れに配置されてもよい。図１０に示したデータの自動再送は、自社社内ネットワーク内，取引先社内ネットワーク内，インターネット１４の何れにトランスレートサーバ１２，データ保管サーバ１３が配置されても共通である。
【００４１】
図１１は自社システムから取引先システムへの連携におけるデータの配信が正常に終了するときの処理手順を表したシーケンス図である。ステップＳ２１に進み、取引先システム１１は配信依頼をトランスレートサーバ１２のデータ転送モジュール３０に行う。
【００４２】
ステップＳ２２に進み、データ転送モジュール３０はデータ配信（転送）履歴をデータ保管サーバ１３のデータ送受信履歴テーブル２２に登録する。データ転送モジュール３０はステップＳ２３に進み、配信依頼転送を自社システム１０に行う。ステップＳ２４に進み、データ転送モジュール３０はデータ返信を自社システム１０から受ける。
【００４３】
ステップＳ２５に進み、データ転送モジュール３０はデータ返信（受信）履歴をデータ保管サーバ１３のデータ送受信履歴テーブル２２に登録する。データ転送モジュール３０はステップＳ２６に進み、自社システム１０から返信されたデータをデータ保管サーバ１３のデータ保管領域２０へ保管する。ステップＳ２７に進み、データ転送モジュール３０は自社システム１０から返信されたデータを取引先システム１１に返信転送する。
【００４４】
ステップＳ２８に進み、データ転送モジュール３０はデータ返信転送履歴をデータ保管サーバ１３のデータ送受信履歴テーブル２２に登録する。ステップＳ２９に進み、データ転送モジュール３０は取引先システム１１に返信転送されたデータをデータ保管領域２０から削除する。
【００４５】
ステップＳ１２（Ｓ２３）がエラーのとき、自社システム１０から取引先システム１１への連携におけるデータの再送は図１２に表した処理手順で行われる。図１２は自社システムから取引先システムへの連携における配信依頼転送がエラーのときの処理手順を表したシーケンス図である。
【００４６】
ステップＳ３１〜Ｓ３３は図１１のステップＳ２１〜Ｓ２３と同様であり、説明を省略する。ステップＳ３４に進み、データ転送モジュール３０は配信依頼転送が配信エラーであると判定する。
【００４７】
ステップＳ３５に進み、データ転送モジュール３０は自動再送管理テーブル２１から再送制御情報を取得する。ステップＳ３６に進み、データ転送モジュール３０は再送制御情報に含まれる累積再送回数に１を加算する。データ転送モジュール３０はステップＳ３７に進み、再送制御情報に含まれる再送間隔を空けて、自社システム１０に配信依頼を再送する。ステップＳ３８に進み、データ転送モジュール３０は配信依頼転送が配信エラーであると判定する。
【００４８】
ステップＳ３５〜Ｓ３８の処理は、累積再送回数が再送制御情報に含まれる再送しきい値になるまで繰り返し行われる。累積再送回数が再送制御情報に含まれる再送しきい値になると、データ転送モジュール３０はステップＳ３９に進み、再送制御情報に含まれる配信先システム（自社システム１０）のシステム状態を、障害発生中を表す例えば「システムエラー」に変更する。
【００４９】
ステップＳ４０に進み、データ転送モジュール３０は、例えば３０分間隔で配信依頼の再送を試みる。ステップＳ４１に進み、配信依頼の再送に対して配信先システムの反応がなければデータ転送モジュール３０は例えば３０分間隔でステップＳ４０の配信依頼の再送を繰り返す。なお、配信依頼の再送に対して配信先システムの反応があればデータ転送モジュール３０はステップＳ４２に進み、データ返信を自社システム１０から受ける。
【００５０】
ステップＳ４３に進み、データ転送モジュール３０は再送制御情報に含まれるシステム状態を、「通常」に変更する。ステップＳ４４〜Ｓ４８は図１１のステップＳ２５〜Ｓ２９と同様であり、説明を省略する。
【００５１】
ステップＳ１３（Ｓ２４）がエラーのとき、自社システム１０から取引先システム１１への連携におけるデータの再送は図１３に表した処理手順で行われる。図１３は自社システムから取引先システムへの連携におけるデータ返信がエラーのときの処理手順を表したシーケンス図である。
【００５２】
ステップＳ５１〜Ｓ５４は図１１のステップＳ２１〜Ｓ２４と同様であり、説明を省略する。ステップＳ５５に進み、データ転送モジュール３０はデータ返信エラーであると判定する。ここでは、トランスレートサーバ１２で障害が発生しており、ステップＳ５５とステップＳ５６との間に、本番機１２Ａからスタンバイ機１２Ｂへの切り替えが行われている。
【００５３】
ステップＳ５６に進み、データ転送モジュール３０は自社システム１０に配信依頼を再送する。ステップＳ５７に進み、データ転送モジュール３０はデータ返信を自社システム１０から受ける。ステップＳ５８〜Ｓ６２は図１１のステップＳ２５〜Ｓ２９と同様であり、説明を省略する。
【００５４】
ステップＳ１５（Ｓ２７）がエラーのとき、自社システム１０から取引先システム１１への連携におけるデータの再送は図１４に表した処理手順で行われる。図１４は自社システムから取引先システムへの連携におけるデータ返信転送がエラーのときの処理手順を表したシーケンス図である。
【００５５】
ステップＳ７１〜Ｓ７７は図１１のステップＳ２１〜Ｓ２７と同様であるため、説明を省略する。ステップＳ７８に進み、データ転送モジュール３０はデータ返信転送が配信エラーであると判定する。
【００５６】
ステップＳ７９に進み、データ転送モジュール３０は自動再送管理テーブル２１から再送制御情報を取得する。ステップＳ８０に進み、データ転送モジュール３０は再送制御情報に含まれる累積再送回数に１を加算する。データ転送モジュール３０はステップＳ８１に進み、再送制御情報に含まれる再送間隔を空けて、転送先システム１１に自社システム１０から返信されたデータを取引先システム１１に再送する。データ転送モジュール３０はステップＳ８２に進み、データ返信転送が返信エラーあると判定する。
【００５７】
ステップＳ７９〜Ｓ８２の処理は、累積再送回数が再送制御情報に含まれる再送しきい値になるまで繰り返し行われる。累積再送回数が再送制御情報に含まれる再送しきい値になると、データ転送モジュール３０はステップＳ８３に進み、再送制御情報に含まれる配信先システム（取引先システム１１）のシステム状態を、障害発生中を表す例えば「システムエラー」に変更する。
【００５８】
ステップＳ８４に進み、データ転送モジュール３０は、例えば３０分間隔で自社システム１０から返信されたデータの取引先システム１１への再送を試みる。ステップＳ８５に進み、自社システム１０から返信されたデータの再送に対して取引先システム１１の反応がなければデータ転送モジュール３０は例えば３０分間隔でステップＳ８４のデータの再送を繰り返す。なお、自社システム１０から返信されたデータの再送に対して取引先システム１１の反応があればデータ転送モジュール３０はステップＳ８６に進み、データの返信転送を取引先システム１１に行う。
【００５９】
ステップＳ８７に進み、データ転送モジュール３０は再送制御情報に含まれるシステム状態を、「通常」に変更する。ステップＳ８８〜Ｓ８９は図１１のステップＳ２８〜Ｓ２９と同様であり、説明を省略する。
【００６０】
（取引先システム１１から自社システム１０への連携）
図１５は取引先システムから自社システムへの連携におけるデータの自動再送を説明する為の説明図である。ステップＳ９１に進み、取引先システム１１はデータ配信をトランスレートサーバ１２に行う。なお、ステップＳ９１がエラーのとき、取引先システム１１からトランスレートサーバ１２へのデータ配信は手動にて再送される。
【００６１】
ステップＳ９２に進み、トランスレートサーバ１２は、取引先システム１１から配信されたデータをデータ保管サーバ１３のデータ保管領域２０へ保管する。ステップＳ９３に進み、トランスレートサーバ１２はデータ配信転送を自社システム１０に行う。ステップＳ９３がエラーのとき、トランスレートサーバ１２はデータ保管サーバ１３のデータ保管領域２０に保管してあるデータを自動再送する。
【００６２】
ステップＳ９３が正常終了すると、トランスレートサーバ１２は取引先システム１１から配信されたデータを自社システム１０に転送できたと判定し、データ保管領域２０から削除する。
【００６３】
トランスレートサーバ１２及びデータ保管サーバ１３は自社ネットワーク内，取引先社内ネットワーク内，インターネット１４の何れに配置されてもよい。図１５に示すデータの自動再送は、自社社内ネットワーク内，取引先社内ネットワーク内，インターネット１４の何れにトランスレートサーバ１２，データ保管サーバ１３が配置されていても共通である。
【００６４】
なお、トランスレートサーバ１２はデータ配信転送を行う前、後述のようにキーの重複する重複データを取り除いて自社システム１０に転送する。これは、キーの重複する重複データがあると、自社システム１０に取り込まれる際、古いデータの内容で取り込まれる危険性があるためである。
【００６５】
図１６は、データ転送モジュールによる重複データの除去方法を説明する為の説明図である。ステップＳ１００に進み、トランスレートサーバ１２の重複チェックプログラム４０はデータ保管サーバ１３のデータ保管領域２０からデータを古い順に読み出す。
【００６６】
ステップＳ１０１，Ｓ１０２に進み、重複チェックプログラム４０は、ステップＳ１００で読み出したデータと再送用データ４１とを比較し、キーが重複する場合、読み出したデータで再送用データ４１を上書きする。つまり、重複チェックプログラム４０は最新のデータが有効になるように、ステップＳ１００で読み出したデータを再送用データ４１に追加していく。例えば図１６の例では、データ保管サーバ１３のデータ保管領域２０から読み出した「納期Ａ」のデータと、再送用データ４１の「納期Ａ」のデータとがキーの重複するデータであり、データ保管サーバ１３のデータ保管領域２０から読み出した「納期Ａ」のデータで再送用データ４１の「納期Ａ」のデータが上書きされる。
【００６７】
図１７は重複チェックプログラムの処理を表したフローチャートである。ステップＳ１１０に進み、重複チェックプログラム４０はデータ保管サーバ１３のデータ保管領域２０からデータの読み出しを開始する。
【００６８】
ステップＳ１１１に進み、重複チェックプログラム４０はステップＳ１１０で読み出したデータと同じキーのデータを既に読み出しているかを判定する。ステップＳ１１０で読み出したデータと同じキーのデータを読み出していなければ、重複チェックプログラム４０はステップＳ１１２に進み、ステップＳ１１０で読み出したデータを再送用データ４１として再送データ保管テーブルに追加する。ステップＳ１１０で読み出したデータと同じキーのデータを読み出していれば、重複チェックプログラム４０はステップＳ１１３に進み、ステップＳ１１０で読み出したデータを再送データ保管テーブルの再送用データ４１に上書きする。
【００６９】
ステップＳ１１２又はＳ１１３に続いてステップＳ１１４に進み、重複チェックプログラム４０はデータ保管サーバ１３のデータ保管領域２０からのデータの読み出しが終了していなければステップＳ１１０に戻る。一方、データ保管サーバ１３のデータ保管領域２０からのデータの読み出しが終了していれば、重複チェックプログラム４０は図１７に示したフローチャートの処理を終了する。
【００７０】
図１８は取引先システムから自社システムへの連携におけるデータの配信が正常に終了するときの処理手順を表したシーケンス図である。ステップＳ１２１に進み、取引先システム１１はデータ配信をトランスレートサーバ１２のデータ転送モジュール３０に行う。
【００７１】
ステップＳ１２２に進み、データ転送モジュール３０は、データ配信履歴をデータ保管サーバ１３のデータ送受信履歴テーブル２２に登録する。データ転送モジュール３０はステップＳ１２３に進み、取引先システム１１から配信されたデータをデータ保管サーバ１３のデータ保管領域２０へ保管する。
【００７２】
ステップＳ１２４に進み、データ転送モジュール３０は取引先システム１１から配信されたデータを自社システム１０にデータ配信転送する。ステップＳ１２５に進み、データ転送モジュール３０は自社システム１０からデータ配信転送成功を通知される。ステップＳ１２６に進み、データ転送モジュール３０はデータ配信転送履歴をデータ保管サーバ１３のデータ送受信履歴テーブル２２に登録する。ステップＳ１２７に進み、データ転送モジュール３０は自社システム１０に配信転送されたデータをデータ保管領域２０から削除する。
【００７３】
ステップＳ９３（Ｓ１２４）がエラーのとき、取引先システム１１から自社システム１０への連携におけるデータの再送は図１９に表した処理手順で行われる。図１９は取引先システムから自社システムへの連携におけるデータ配信転送がエラーのときの処理手順を表したシーケンス図である。
【００７４】
ステップＳ１３１〜Ｓ１３４は図１８のステップＳ１２１〜Ｓ１２４と同様であり、説明を省略する。ステップＳ１３５に進み、データ転送モジュール３０はデータ配信転送がエラーであると判定する。
【００７５】
ステップＳ１３６に進み、データ転送モジュール３０は自動再送管理テーブル２１から再送制御情報を取得する。ステップＳ１３７に進み、データ転送モジュール３０は再送制御情報に含まれる累積再送回数に１を加算する。ステップＳ１３８に進み、データ転送モジュール３０はデータ保管領域２０からデータを取得する。
【００７６】
ステップＳ１３９に進み、データ転送モジュール３０は再送制御情報に含まれる再送間隔を空けて、自社システム１０にデータを再送する。ステップＳ１４０に進み、データ転送モジュール３０はデータの再送が再送エラーであると判定する。
【００７７】
ステップＳ１３６〜Ｓ１４０の処理は、累積再送回数が再送制御情報に含まれる再送しきい値になるまで繰り返し行われる。累積再送回数が再送制御情報に含まれる再送しきい値になると、データ転送モジュール３０はステップＳ１４１に進み、再送制御情報に含まれる配信先システム（自社システム１０）のシステム状態を、障害発生中を表す例えば「システムエラー」に変更する。
【００７８】
ステップＳ１４２に進み、データ転送モジュール３０は所定の再送間隔に基づき、例えば３０分間隔でデータの再送を試みる。ステップＳ１４３に進み、データの再送に対して自社システム１０の反応がなければデータ転送モジュール３０は再送エラーであると判定し、例えば３０分間隔でステップＳ１４２のデータの再送を繰り返す。
【００７９】
なお、ステップＳ１４４に進み、データの再送に対して自社システム１０の反応があれば、データ転送モジュール３０はデータの再送に成功したと判定する。ステップＳ１４４に続いてステップＳ１４５に進み、再送制御情報に含まれるシステム状態を、「通常」に変更する。ステップＳ１４６〜Ｓ１４７は図１８のステップＳ１２６〜Ｓ１２７と同様であり、説明を省略する。
【００８０】
（まとめ）
本発明によるインターネットＥＤＩシステム１は、システム障害復旧後に未送信データを自動で再送できる。その際、本発明によるインターネットＥＤＩシステム１は送信要求があった順番に自動再送を行う。また、本発明によるインターネットＥＤＩシステム１はデータを重複して送信しないように重複データを自動で取り除いてから再送できる。
【００８１】
したがって、本発明によるインターネットＥＤＩシステム１はリカバリ送信に対する人手が掛からず、人手による誤送信を回避できる。
【００８２】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【図面の簡単な説明】
【００８３】
【図１】本発明によるインターネットＥＤＩシステムの一例の構成図である。
【図２】トランスレートサーバ及びデータ保管サーバの詳細を表した構成図である。
【図３】インターネットＥＤＩシステムで配信されるデータについて説明する為の説明図である。
【図４】インターネットＥＤＩシステムで配信されるＸＭＬデータの一例のデータ構成図である。
【図５】自動再送管理テーブルの一例の構成図である。
【図６】データ送受信履歴テーブルの一例の構成図である。
【図７】トランスレートサーバにおけるデータ解析方法を示した一例のフローチャートである。
【図８】自社システム又は取引先システムの障害／復旧を検知する方法を説明する為の説明図である。
【図９】配信先システムに転送するデータの自動再送の種類を表した説明図である。
【図１０】自社システムから取引先システムへの連携におけるデータの自動再送を説明する為の説明図である。
【図１１】自社システムから取引先システムへの連携におけるデータの配信が正常に終了するときの処理手順を表したシーケンス図である。
【図１２】自社システムから取引先システムへの連携における配信依頼転送がエラーのときの処理手順を表したシーケンス図である。
【図１３】自社システムから取引先システムへの連携におけるデータ返信がエラーのときの処理手順を表したシーケンス図である。
【図１４】自社システムから取引先システムへの連携におけるデータ返信転送がエラーのときの処理手順を表したシーケンス図である。
【図１５】取引先システムから自社システムへの連携におけるデータの自動再送を説明する為の説明図である。
【図１６】データ転送モジュールによる重複データの除去方法を説明する為の説明図である。
【図１７】重複チェックプログラムの処理を表したフローチャートである。
【図１８】取引先システムから自社システムへの連携におけるデータの配信が正常に終了するときの処理手順を表したシーケンス図である。
【図１９】取引先システムから自社システムへの連携におけるデータ配信転送がエラーのときの処理手順を表したシーケンス図である。
【符号の説明】
【００８４】
１    インターネットＥＤＩシステム
１０    自社システム
１１    取引先システム
１２    トランスレートサーバ
１２Ａ    本番機
１２Ｂ    スタンバイ機
１３    データ保管サーバ
１４    インターネット
２０    データ保管領域
２１    自動再送管理テーブル
２２    データ送受信履歴テーブル
３０    データ転送モジュール
４０    重複チェックプログラム
４１    再送用データ
【図１】
2010061400.tif 000003
【図２】
2010061400.tif 000004
【図３】
2010061400.tif 000005
【図４】
2010061400.tif 000006
【図５】
2010061400.tif 000007
【図６】
2010061400.tif 000008
【図７】
2010061400.tif 000009
【図８】
2010061400.tif 000010
【図９】
2010061400.tif 000011
【図１０】
2010061400.tif 000012
【図１１】
2010061400.tif 000013
【図１２】
2010061400.tif 000014
【図１３】
2010061400.tif 000015
【図１４】
2010061400.tif 000016
【図１５】
2010061400.tif 000017
【図１６】
2010061400.tif 000018
【図１７】
2010061400.tif 000019
【図１８】
2010061400.tif 000020
【図１９】
2010061400.tif 000021