(57)【特許請求の範囲】
【請求項１】
コンピュータに、
すべてのサーバとの接続状態を定期的にチェックして記憶し、
状態が未接続のサーバに対し再接続を試行して記憶した前記接続状態を更新し、
取引情報の検索を受け付けたときに、前記接続状態を参照して接続中のサーバに対して検索を依頼し、
接続中のサーバからの応答に該当する取引情報があるとき、当該取引情報を表示し、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を表示し、または、該当する取引情報がなく、かつ、未接続のサーバがあるとき、接続処理中を表す情報を表示する、
処理を実行させることを特徴とする情報通信プログラム。
【請求項２】
該当する取引情報がなく、かつ、未接続のサーバがあるとき、前記接続状態の定期的なチェックをした後、接続中になったサーバがあるか否かを判断し、
接続中になったサーバがある場合に、接続中になったサーバに対して検索を依頼し、
接続中になったサーバからの応答に該当する取引情報があるとき、当該取引情報を保留し、または、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を保留する、
処理をバックグラウンドで実行させることを特徴とする請求項１記載の情報通信プログラム。
【請求項３】
保留された前記情報を任意のタイミングで表示させることを特徴とする請求項２記載の情報通信プログラム。
【請求項４】
取引情報の検索を受け付けたときに、最初に、検索を依頼するクライアントを配下においたサーバに対し接続確認後に検索を依頼し、当該サーバに該当データがない場合、または、当該サーバが未接続の場合に、他のすべてのサーバに対して検索を依頼する、処理を有していることを特徴とする請求項１記載の情報通信プログラム。
【請求項５】
拠店毎に取引情報を分散して記憶および管理している複数のサーバに対して検索を依頼する情報通信装置において、
すべてのサーバとの接続状態を定期的にチェックするサーバ接続状態監視部と、
前記サーバ接続状態監視部による監視結果を記憶するサーバ接続状態記憶部と、
前記サーバ接続状態記憶部を参照して未接続のサーバについて再接続を試行する再接続処理部と、
前記取引情報の検索を受け付ける検索受付処理部と、
前記検索受付処理部が前記取引情報の検索を受け付けたときに、前記サーバ接続状態記憶部を参照して接続中のサーバに対して検索を依頼し、接続中のサーバからの応答に対し、該当する取引情報があるとき、当該取引情報を表示させ、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を表示させ、または、該当する取引情報がなく、かつ、未接続のサーバがあるとき、接続処理中を表すメッセージを表示させる検索依頼処理部と、
を備えていることを特徴とする情報通信装置。
【請求項６】
コンピュータが、
すべてのサーバとの接続状態をチェックし、状態が未接続のサーバに対して再接続を試行することを繰り返して前記接続状態を定期的に更新し、
取引情報の検索を受け付けたときに、前記接続状態を参照して接続中のサーバに対して検索を依頼し、
接続中のサーバからの応答に該当する取引情報があるとき、当該取引情報を表示し、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を表示させ、または、該当する取引情報がなく、かつ、未接続のサーバがあるとき、接続処理中を表すメッセージを表示する、
ことを特徴とする情報通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、金融機関における取引情報を拠店毎に分散して記憶および管理している複数のサーバに対して検索依頼をするときの情報通信プログラム、情報通信装置および情報通信方法に関する。
【背景技術】
【０００２】
都市銀行のように国内全域に展開している金融機関では、顧客の数が多いので、すべての取引情報を１箇所のサーバにて集中管理しているのではなく、全国を複数のブロックに分割し、ブロック単位で取引情報を分散して記憶および管理している。顧客が自分の取引情報が管理されているサーバの配下にある営業店舗において取引を行う場合には、その営業店舗の端末からオペレータが検索依頼をすることでサーバ内の取引情報を参照することができる。
【０００３】
また、取引を行おうとしている顧客の情報が他の営業拠店のサーバで管理されていることがある。このような場合、受け付けを行った営業店舗の端末は、他のすべての営業拠店にあるサーバに対して検索依頼をすることになる。そのとき、他のすべての営業拠店にあるサーバから直ちに依頼に対する応答が返ってくれば問題はないが、一部のサーバが接続することのできない状況に陥っている場合には、当該サーバとは通信することができないと分かるのに時間がかかることがある。端末は、通信できないサーバに対して、再接続を試みる（たとえば、特許文献１参照）が、その再接続の間隔および回数があらかじめ決められていて、再接続の回数が所定の回数に達した場合に初めて、通信することができないと判断されるからである。
【０００４】
サーバが接続できなくなる要因としては、サーバがダウンしたり、通信回線に異常が発生したりすることが考えられる。サーバは、現用機および待機機が用意されていて、現用機がダウンしたときに待機機が起動して業務を継続できるようにクラスタ構成になっている。待機機は、特に、コールドスタンバイの状態から起動する場合においては、クラスタ切り替えが行われてサーバが復旧するまでに相当の時間がかかり、サーバの停止時間が長くなってしまう。また、通信回線に異常が発生した場合にも、回線が復旧するまでに時間がかかることが多く、結果として、サーバと接続できない時間が長くなることがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−８９２３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の技術では、端末とサーバとが接続状態にない場合、端末は、再接続の試行を繰り返してみてそれでも成功しないときに接続できないと判断されるので、その間、端末のオペレータは待たされ、業務が中断してしまうという問題点があった。
【０００７】
本発明はこのような点に鑑みてなされたものであり、複数のサーバの中に接続することができないサーバがあっても、オペレータを待たせることがないようにする情報通信プログラム、情報通信装置および情報通信方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明では、上記の課題を解決するために、コンピュータに、すべてのサーバとの接続状態を定期的にチェックして記憶し、状態が未接続のサーバに対し再接続を試行して記憶した前記接続状態を更新し、取引情報の検索を受け付けたときに、前記接続状態を参照して接続中のサーバに対して検索を依頼し、接続中のサーバからの応答に該当する取引情報があるとき、当該取引情報を表示し、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を表示し、または、該当する取引情報がなく、かつ、未接続のサーバがあるとき、接続処理中を表す情報を表示する、処理を実行させることを特徴とする情報通信プログラムが提供される。
【０００９】
また、本発明では、拠店毎に取引情報を分散して記憶および管理している複数のサーバに対して検索を依頼する情報通信装置において、すべてのサーバとの接続状態を定期的にチェックするサーバ接続状態監視部と、前記サーバ接続状態監視部による監視結果を記憶するサーバ接続状態記憶部と、前記サーバ接続状態記憶部を参照して未接続のサーバについて再接続を試行する再接続処理部と、前記取引情報の検索を受け付ける検索受付処理部と、前記検索受付処理部が前記取引情報の検索を受け付けたときに、前記サーバ接続状態記憶部を参照して接続中のサーバに対して検索を依頼し、接続中のサーバからの応答に対し、該当する取引情報があるとき、当該取引情報を表示させ、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を表示させ、または、該当する取引情報がなく、かつ、未接続のサーバがあるとき、接続処理中を表すメッセージを表示させる検索依頼処理部と、を備えていることを特徴とする情報通信装置が提供される。
【００１０】
さらに、本発明では、コンピュータが、すべてのサーバとの接続状態をチェックし、状態が未接続のサーバに対して再接続を試行することを繰り返して前記接続状態を定期的に更新し、取引情報の検索を受け付けたときに、前記接続状態を参照して接続中のサーバに対して検索を依頼し、接続中のサーバからの応答に該当する取引情報があるとき、当該取引情報を表示し、該当する取引情報がなく、かつ、未接続のサーバがないとき、該当データなしの情報を表示させ、または、該当する取引情報がなく、かつ、未接続のサーバがあるとき、接続処理中を表すメッセージを表示する、ことを特徴とする情報通信方法が提供される。
【発明の効果】
【００１１】
上記構成の情報通信プログラム、情報通信装置および情報通信方法は、検索依頼に対するサーバの応答で該当する取引情報がなく、かつ、未接続のサーバがあるときに、接続処理中を通知するので、現時点での検索結果が即時に分かるという利点がある。検索依頼実行時に、未接続のサーバに対する再接続の試行等を一切行わないため、その分、オペレータは、長時間待たされることなく現状の検索結果を即時に確認することができるようになる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態に係る情報通信装置を含む情報通信システムの構成例を示す図である。
【図２】情報通信制御処理の流れを示すフローチャートである。
【図３】第１の実施の形態に用いるコンピュータの一構成例を示す図である。
【図４】第２の実施の形態に係る端末とサーバとの関係を示す図である。
【図５】伝票イメージデータの例を示す図である。
【図６】端末制御プログラムの処理の流れを示すフローチャートである。
【図７】通信プログラムの処理の流れを示すフローチャートである。
【図８】通信処理に使われるテーブルを示す図であって、（Ａ）はサーバ管理テーブル、（Ｂ）および（Ｃ）は作業テーブルを示している。
【図９】サーバ接続状態更新処理の流れを示すフローチャートである。
【図１０】サーバ処理プログラムの処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、都市銀行のように、複数の営業拠店を持ち、営業拠店毎にサーバが設置されている情報通信システムにおいて、すべてのサーバに検索依頼を行うことができる端末に適用した場合を例に図面を参照して詳細に説明する。なお、各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
【００１４】
図１は第１の実施の形態に係る情報通信装置を含む情報通信システムの構成例を示す図、図２は情報通信制御処理の流れを示すフローチャートである。
情報通信システムは、営業拠店毎に設置された複数のサーバ１０，２０，３０を備えており、それぞれのサーバ１０，２０，３０は、ネットワーク４０を介して相互に通信できるように接続されている。サーバ１０，２０，３０は、それぞれデータベース１２，２２，３２が接続されている。データベース１２，２２，３２は、ブロック毎の取引情報がそれぞれ保存管理されている。また、それぞれの営業拠店、たとえば、サーバ１０を有する営業拠店およびその配下の営業店舗には、複数の端末５０を有しており、それぞれサーバ１０とＬＡＮ（Local Area Network）４２等によって接続されている。なお、図示はしないが、他のサーバ２０，３０においても同様に、複数の端末が接続されている。
【００１５】
端末５０は、情報通信装置として機能するものであり、検索受付処理部５１、検索依頼処理部５２、サーバ接続状態監視部５３、サーバ接続状態記憶部５４および再接続処理部５５を備えている。検索受付処理部５１は、オペレータによる取引情報照会の操作入力があった場合に検索条件の入力を受けて検索受付の処理を行う。検索依頼処理部５２は、検索受付処理部５１が受け付けた操作入力を基にサーバ１０，２０，３０に対して検索を依頼し、サーバ１０，２０，３０から検索結果を取得する。サーバ接続状態監視部５３は、サーバ１０，２０，３０との接続状態を定期的に実施される死活確認により監視している。サーバ接続状態記憶部５４は、サーバ接続状態監視部５３による監視結果を記憶する。再接続処理部５５は、サーバ接続状態監視部５３による監視の結果、サーバ１０，２０，３０との接続状態が未接続である場合に、未接続のサーバに対して再接続を試みる。再接続処理部５５は、端末５０の起動時にすべてのサーバと接続を試みており、したがって、以下に述べる端末５０の動作は、サーバと接続実績があることを前提としている。
【００１６】
以上の構成の端末５０において、サーバ接続状態監視部５３は、すべてのサーバ１０，２０，３０との接続状態を定期的に監視していて、その監視結果をサーバ接続状態記憶部５４に記憶している。また、再接続処理部５５は、サーバ接続状態記憶部５４を参照して、接続状態が未接続のサーバがあれば、そのサーバに対して再接続を実施している。これにより、端末５０は、その起動直後からすべてのサーバ１０，２０，３０との接続状態を常に把握していて、サーバまたは通信回線に障害等が発生して未接続になったサーバについては、接続されるまで再接続を繰り返し実施するようにしている。
【００１７】
ここで、端末５０が取引情報の検索を受け付けたときの処理動作について図２を参照して説明する。なお、サーバ接続状態監視部５３、サーバ接続状態記憶部５４および再接続処理部５５は、端末５０の起動時から動作していて、サーバ接続状態が常に最新の状態に更新されているものとする。
【００１８】
まず、端末５０は、取引情報の検索受付を待っている（ステップＳ１）。検索受付処理部５１が検索条件の入力を受けて取引情報の検索を受け付けると、検索依頼処理部５２は、サーバ接続状態記憶部５４を参照し、端末５０のある営業店舗が属する営業拠店のサーバ１０の接続状態が接続中であるかどうかを確認する（ステップＳ２）。検索依頼処理部５２は、サーバ１０が接続中かどうかを判断し（ステップＳ３）、接続中であれば、検索依頼処理部５２は、サーバ１０に対して検索条件とともに検索依頼を送信し、サーバ１０から検索結果の応答を待つ（ステップＳ４）。
【００１９】
検索依頼を受けたサーバ１０は、端末５０から通知された検索条件をキーにしてデータベース１２を検索し、検索条件に該当する取引情報があれば、その取引情報を取得して端末５０に送信する。
【００２０】
端末５０では、検索依頼処理部５２がサーバ１０からの応答の中に該当する取引情報があったかどうかを判断する（ステップＳ５）。取引情報があった場合、検索依頼処理部５２は、その取引情報を図示しないモニタに表示する（ステップＳ６）。
【００２１】
次に、サーバ１０に該当する取引情報がない場合、または、サーバ１０が未接続の場合には、サーバ接続状態記憶部５４に記憶されている、サーバ１０を除く他のサーバ２０，３０の接続状態を確認する（ステップＳ７）。検索依頼処理部５２は、他のサーバ２０，３０の中で、接続中のサーバがあるかどうかを判断し（ステップＳ８）、接続中のサーバに対して一斉に検索条件とともに検索依頼を送信し、サーバから検索結果の応答を待つ（ステップＳ９）。
【００２２】
検索依頼を受けたサーバは、端末５０から通知された検索条件をキーにデータベースを検索し、検索条件に該当する取引情報があれば、その取引情報を取得して端末５０に送信する。
【００２３】
端末５０では、検索依頼処理部５２がサーバからの応答の中に該当する取引情報があったかどうかを判断する（ステップＳ１０）。ここで、検索依頼を受けたサーバの中に検索条件に該当する取引情報が見つかった場合には、その取引情報を取得して図示しないモニタに表示する（ステップＳ６）。
【００２４】
なお、サーバ接続状態記憶部５４に接続中のサーバがない場合、または接続中のサーバに検索条件に該当する取引情報がない場合には、未接続のサーバに検索条件に該当する取引情報が存在する可能性がある。このような場合、サーバ接続状態記憶部５４に未接続と設定されていた接続処理中のサーバのリストを図示しないモニタに表示する（ステップＳ１１）。
【００２５】
以上のように、端末５０は、その起動時から常にサーバの最新の接続状態を記憶していて、検索を依頼するときには通信できない未接続のサーバを直ちに認識することができ、かつ、未接続のサーバについては検索の依頼をしないようにしている。このため、接続中のサーバに検索条件に該当する取引情報が見つからない場合であって、未接続のサーバがある場合でも、その結果が即座にモニタに表示されるので、オペレータは、待たされることなく、検索結果をすぐに確認することが可能になる。
【００２６】
未接続で接続処理中のサーバのリストが表示された場合、オペレータは、時間をおいて、再検索を依頼すればよい。この場合、好ましくは、端末５０が未接続であったサーバを保持しておいて、その未接続サーバに対してのみ、再検索を依頼することができるようにするとよい。または、検索依頼処理部５２がサーバ接続状態記憶部５４における未接続状態から接続状態への状態遷移を監視していて、状態遷移のあったタイミングで状態遷移のあったサーバに対して順次検索依頼を行うようにしてもよい。ここで、検索条件に該当する取引情報が見つかるか、または、すべてのサーバに検索条件に該当する取引情報が見つからなかった場合に、その旨のメッセージを、現在処理中の業務があればその業務が終了するのを待って、モニタに表示するとよい。
【００２７】
図３は第１の実施の形態に用いるコンピュータの一構成例を示す図である。
コンピュータ１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０８を介してＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。
【００２８】
ＲＡＭ１０２は、コンピュータ１００の主記憶装置として使用される。ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。
【００２９】
バス１０８に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、および通信インタフェース１０７がある。なお、バス１０８に接続される周辺機器には、図示はしないが、ＵＳＢ（Universal Serial Bus）等の入出力インタフェースが装備されることもある。
【００３０】
ＨＤＤ１０３は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、コンピュータ１００の二次記憶装置として使用される。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、各種データおよび図２に示した情報通信制御処理のアプリケーションプログラムが格納される。なお、二次記憶装置としては、ＳＳＤ（Solid State Drive）等の半導体記憶装置を使用することもできる。ＨＤＤ１０３は、さらに、内蔵の二次記憶装置以外に外付けの二次記憶装置として、データベースのデータ記憶用に使用することもできる。
【００３１】
グラフィック処理装置１０４には、モニタ１０９が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１０９の画面に表示させる。モニタ１０９としては、液晶表示装置等がある。
【００３２】
入力インタフェース１０５には、キーボード１１０とマウス１１１とが接続されている。入力インタフェース１０５は、キーボード１１０やマウス１１１から送られてくる信号をＣＰＵ１０１に送信する。なお、マウス１１１は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボール等がある。
【００３３】
光学ドライブ装置１０６は、レーザ光等を利用して、光ディスク１１２に記録されたＯＳのプログラム、アプリケーションプログラムまたはデータの読み取りを行う。光ディスク１１２は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体であり、ＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）等がある。
【００３４】
通信インタフェース１０７は、ネットワーク４０に接続されている。通信インタフェース１０７は、ネットワーク４０を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００３５】
以上のようなハードウェア構成によって、第１の実施の形態の端末５０の処理機能を実現することができる。なお、図１に示したサーバ１０，２０，３０も、図３と同様のハードウェアで実現することができる。
【００３６】
図４は第２の実施の形態に係る端末とサーバとの関係を示す図、図５は伝票イメージデータの例を示す図である。
端末５０は、端末制御プログラム５６と通信プログラム５７とを備え、情報通信プログラムを構成している。端末制御プログラム５６は、オペレータの操作入力に対する処理を行い、処理結果を表示させるよう機能するユーザプログラムである。一方、通信プログラム５７は、サーバの接続状態の監視機能と、サーバとの通信制御機能とを有している。サーバの接続状態の監視機能は、定期的に、サーバとの接続状態をチェックし、未接続になっているサーバがあれば、そのサーバに対して再接続を実施し、検索依頼をいつでも実施できるようにしている。通信制御機能は、端末制御プログラム５６からの要求に対してこの端末５０に繋がっているすべてのサーバと通信して検索処理を依頼し、サーバから応答があれば、その応答を端末制御プログラム５６に返すようにしている。
【００３７】
端末５０に繋がっているサーバとしては、図示の例では、伝票データベース１３，２３，３３を管理しているサーバとすることができる。たとえば、伝票データベース１３のサーバは、図１におけるサーバ１０、伝票データベース２３，３３のサーバは、他の拠店のサーバ２０，３０とすることができる。伝票データベース１３，２３，３３は、それぞれ伝票番号と伝票イメージデータとの対応表であるデータテーブル１４，２４，３４と、伝票イメージデータの実体とを格納している。第２の実施の形態では、各サーバの伝票番号は、この情報通信システムの中でそれぞれユニークな番号である。
【００３８】
端末５０では、たとえばキーボード１１０から伝票番号が入力されると、端末制御プログラム５６は、検索処理を通信プログラム５７に依頼し、通信プログラム５７は、その伝票番号の検索処理をすべてのサーバに一斉に依頼する。すべてのサーバは、通知された検索条件である伝票番号をキーに伝票データベース１３，２３，３３を検索し、該当する伝票番号があれば、それに対応する伝票イメージデータを端末５０に送信する。該当する伝票番号がなければ、たとえば「該当データなし」のメッセージデータを端末５０に送信する。
【００３９】
端末５０がサーバからの応答を受信すると、通信プログラム５７は、受けた伝票イメージデータを端末制御プログラム５６に渡し、端末制御プログラム５６は、その伝票イメージデータをモニタ１０９に表示する。サーバからの応答に伝票イメージデータがなければ、「該当データなし」のメッセージをモニタ１０９に表示する。伝票イメージデータは、たとえば図５に示したように、伝票に記入および署名捺印した取引情報をイメージデータ化したものである。
【００４０】
図６は端末制御プログラムの処理の流れを示すフローチャートである。なお、第２の実施の形態に係る端末５０においても、図３に示したハードウェアと同じハードウェアで構成されており、したがって、以下のそれぞれの処理は、ＣＰＵ１０１が処理している。
【００４１】
端末制御プログラム５６では、まず、ＣＰＵ１０１がオペレータから伝票番号等の入力があるかないかを判断し、入力があるまで待つ（ステップＳ２１）。伝票番号等の入力があると、ＣＰＵ１０１は、伝票番号を検索条件とした検索処理を通信プログラム５７に依頼する（ステップＳ２２）。
【００４２】
次に、ＣＰＵ１０１は、応答があったかどうかを判断し、応答がなければ、応答があるまで待つ（ステップＳ２３）。応答があれば、ＣＰＵ１０１は、その応答にサーバからの受信データである伝票イメージデータが含まれているかどうかを判断する（ステップＳ２４）。応答に伝票イメージデータが含まれていれば、ＣＰＵ１０１は、その伝票イメージデータをモニタ１０９に表示する（ステップＳ２５）。
【００４３】
受信データのない応答があった場合、ＣＰＵ１０１は、通信プログラム５７から未接続サーバの通知の有無を判断し（ステップＳ２６）、未接続サーバがなければ、たとえば「該当データなし」のメッセージをモニタ１０９に表示する（ステップＳ２７）。もし、未接続サーバの通知があれば、ＣＰＵ１０１は、たとえば接続処理中のサーバのリストをモニタ１０９に表示する（ステップＳ２８）。ステップＳ２５，Ｓ２７，Ｓ２８において、画面表示が終わったら、それぞれステップＳ２１の処理に戻る。
【００４４】
以上のように、この通信プログラムでは、通信プログラム５７に対して検索処理の依頼をした後に、応答のあったサーバの中に検索データがあれば、優先的にそのデータを画面表示する。検索できたサーバの中に検索データがなく未接続サーバの通知がなければ、該当データなしを画面表示する。もし、未接続サーバがあれば、そのサーバに対する再接続の試行を待たずに即時に通知された未接続サーバのリストを表示する。これにより、オペレータは、待たされることなく、検索結果を知ることができる。
【００４５】
図７は通信プログラムの処理の流れを示すフローチャート、図８は通信処理に使われるテーブルを示す図であって、（Ａ）はサーバ管理テーブル、（Ｂ）および（Ｃ）は作業テーブルを示している。図９はサーバ接続状態更新処理の流れを示すフローチャートである。
【００４６】
通信プログラム５７は、まず、起動時にサーバ管理テーブルの状態を未接続にする（ステップＳ３１）。サーバ管理テーブルは、図８の（Ａ）に示したように、「サーバ名」、「ホスト名」、「ＩＰアドレス」および「状態」の欄を有しており、通信プログラム５７の起動時にＣＰＵ１０１が「状態」の欄を「未接続」に初期設定する。次に、ＣＰＵ１０１は、接続処理中番号を表す変数ｎを「０」に設定しておく（ステップＳ３２）。次に、ＣＰＵ１０１は、サーバ接続状態更新処理を実行する（ステップＳ３３）。
【００４７】
サーバ接続状態更新処理は、図９に示したように、ＣＰＵ１０１が全サーバの接続確認（死活確認）をし、未接続のサーバについては、接続処理を試行する（ステップＳ７１）。次に、ＣＰＵ１０１は、接続監視タイマをセットし（ステップＳ７２）、サーバより接続通知があったかどうかを判断する（ステップＳ７３）。接続通知があれば、ＣＰＵ１０１は、応答ありのサーバに対してサーバ管理テーブルの「状態」を「接続」に更新する（ステップＳ７４）。ステップＳ７３において、サーバより接続通知がなければ、ステップＳ７４の処理はパスされる。次に、ＣＰＵ１０１は、セットされた接続監視タイマがタイムアウトしたかどうかを判断する（ステップＳ７５）。接続監視タイマがタイムアウトしていない場合、処理は、ステップＳ７３に戻り、タイムアウトしている場合は、定期チェックタイマをセットする（ステップＳ７６）。
【００４８】
ここで、図７に戻って、ＣＰＵ１０１は、端末制御プログラム５６からの検索依頼があるかどうかを判断し（ステップＳ３４）、検索依頼があれば、作業テーブルＷＯＲＫ１にサーバ管理テーブルの各サーバの状態を設定する（ステップＳ３５）。次に、ＣＰＵ１０１は、作業テーブルＷＯＲＫ１を参照して、接続中の全サーバに対して検索条件の伝票番号とともに検索依頼を送信して応答を待つ（ステップＳ３６）。まず、ＣＰＵ１０１は、全依頼サーバより応答が完了したかどうかを判断し（ステップＳ３７）、完了していなければ、サーバより応答があるかどうかを判断し（ステップＳ３８）、応答がなければ、ステップＳ３７の処理に戻る。ステップＳ３８において、サーバより応答があれば、ＣＰＵ１０１は、データ（伝票イメージデータ）があるかどうかを判断し（ステップＳ３９）、データがあれば、その受信データを端末制御プログラム５６に通知して（ステップＳ４０）、ステップＳ３４の処理に戻る。ステップＳ３９において、データがなければ、ＣＰＵ１０１は、ステップＳ３７の処理に戻る。
【００４９】
ステップＳ３７において、全依頼サーバからの応答が完了した場合、作業テーブルＷＯＲＫ１を参照して、未接続になっているサーバがあるかどうかを判断する（ステップＳ４１）。未接続のサーバがなければ、ＣＰＵ１０１は、端末制御プログラム５６に「データなし」を通知して（ステップＳ４２）、ステップＳ３４の処理に戻る。未接続のサーバがあれば、ＣＰＵ１０１は、作業テーブルＷＯＲＫ１を参照して「未接続」のサーバが接続処理中である旨の情報を端末制御プログラム５６に通知する（ステップＳ４３）。
【００５０】
次に、ＣＰＵ１０１は、接続処理中番号の変数ｎをインクリメントし（ステップＳ４４）、別の作業テーブルＷＯＲＫ２に検索条件の伝票番号とともに作業テーブルＷＯＲＫ１のデータを待避して（ステップＳ４５）、ステップＳ３４の処理に戻る。なお、作業テーブルＷＯＲＫ２［ｎ］は、検索依頼があって、接続中のサーバにデータがなく、かつ、未接続のサーバがある場合に、順次、作業テーブルＷＯＲＫ１のデータが追加して待避される。
【００５１】
次に、ステップＳ３４において、検索依頼がない場合、ＣＰＵ１０１は、サーバ接続状態更新処理の最後に設定された定期チェックタイマがタイムアウトしたかどうかが判断され（ステップＳ４６）、タイムアウトしていなければ、ステップＳ３４の処理に戻る。定期チェックタイマがタイムアウトしていれば、ＣＰＵ１０１は、サーバ接続状態更新処理を実行し（ステップＳ４７）、作業テーブルＷＯＲＫ２に待避データがあるかどうかを判断する（ステップＳ４８）。作業テーブルＷＯＲＫ２に待避データがなければ、ＣＰＵ１０１は、ステップＳ３４の処理に戻り、検索依頼に関する一連の処理は終了し、次の検索依頼を待つことになる。その間、ＣＰＵ１０１は、ステップＳ４７において、サーバの接続状態を常に監視していて、未接続のサーバが検出されれば、その未接続になったサーバに対して再接続の処理を実行する。
【００５２】
ステップＳ４８にて作業テーブルＷＯＲＫ２に待避データがあると判断された場合は、未接続のサーバに検索依頼を行っていないので、その未接続のサーバに対して、処理を続行することになる。まず、ＣＰＵ１０１は、１番目の待避データを処理するために、作業番号の変数ｍに初期値の１を代入し（ステップＳ４９）、次に、そのｍがｎより大きいかどうかを判断する（ステップＳ５０）。
【００５３】
ステップＳ５０の判断にて、ｍがｎより小さい場合、ＣＰＵ１０１は、作業テーブルＷＯＲＫ２［ｍ］の待避データに「未接続」のサーバがあり、サーバ管理テーブルの「状態」が「接続」に変更になったサーバであるかどうかを判断する（ステップＳ５１）。接続中になったサーバであれば、ＣＰＵ１０１は、作業テーブルＷＯＲＫ２［ｍ］の待避データを「接続」に変更する（ステップＳ５２）。これにより、作業テーブルＷＯＲＫ２［ｍ］から、「未接続」のサーバをなくしていき、未だ、一度も検索が実行されていない「未接続」のサーバのみに絞り込むようにしている。
【００５４】
次に、ＣＰＵ１０１は、接続中になった全サーバに対して伝票番号とともに検索依頼を送信して応答を待つ（ステップＳ５３）。まず、ＣＰＵ１０１は、検索依頼をした全サーバより応答があったかどうかを判断し（ステップＳ５４）、接続中になった全サーバの応答がなければ、サーバより応答があるかどうかを判断し（ステップＳ５５）、応答がなければ、ステップＳ５４の処理に戻る。ステップＳ５５において、サーバより応答があれば、ＣＰＵ１０１は、応答にデータ（伝票イメージデータ）があるかどうかを判断し（ステップＳ５６）、データがあれば、ＷＯＲＫ２［ｍ］に待避された伝票番号とともに、その受信データを端末制御プログラム５６に通知する（ステップＳ５７）。ステップＳ５６において、応答にデータがなければ、ＣＰＵ１０１は、ステップＳ５４の処理に戻る。
【００５５】
ステップＳ５４において、接続中になった全依頼サーバから応答があった場合、未接続のサーバがあるかどうかを判断する（ステップＳ５８）。未接続のサーバがなくなっていれば、ＣＰＵ１０１は、端末制御プログラム５６に「データなし」を通知する（ステップＳ５９）。なお、ステップＳ５７，Ｓ５９の処理に対する端末制御プログラム５６の側での処理は、特に、図６には示していないが、受信した応答データ（伝票イメージデータ）または「データなし」の応答を保留している。この保留されている検索結果は、たとえばオペレータが別の業務に取り掛かっている場合、その業務が終了したタイミングで画面表示を行うようにするとよい。
【００５６】
ステップＳ５１において、接続中になったサーバがない場合、ステップＳ５８において、未接続のサーバが残っている場合、ＣＰＵ１０１は、変数ｍをインクリメントし（ステップＳ６０）、ステップＳ５０の処理に戻る。このとき、変数ｍはインクリメントされているため、ステップＳ５０では、ｎ＜ｍの条件が成立すると、ステップＳ３４の処理に戻ることになる。
【００５７】
以上のようにして、最初の検索で該当する検索データがなく、かつ、未接続のサーバがある場合、端末５０は、接続処理中を表示して見かけ上は、処理を終了している。しかし、実際には、この検索依頼に対する処理は、バックグラウンドで最終的な検索結果が出るまで継続していて、その検索結果を保留するようにしている。すなわち、バックグラウンドの処理では、サーバ接続状態更新処理で未接続から接続中に更新となったサーバのみに検索依頼をし、そこで検索データが見つかれば、その受信データを端末制御プログラム５６に通知する。もし、検索データが見つからなければ、未接続のサーバがなくなるまで接続中になったサーバに対して検索依頼をしていき、途中で検索データのあるサーバが見つかれば、そこからの受信データを端末制御プログラム５６に通知する。最終的にすべてのサーバが接続状態になって、検索しても、検索データのあるサーバが見つからなければ、「データなし」を通知することになる。端末制御プログラム５６に通知された受信データまたはデータなしの情報は、保留していて、必要なときに利用される。
【００５８】
図１０はサーバ処理プログラムの処理の流れを示すフローチャートである。なお、サーバ１０，２０，３０においても、図３に示したハードウェアと同じハードウェアで構成されており、したがって、以下のそれぞれの処理は、ＣＰＵが処理している。
【００５９】
サーバでは、まず、ＣＰＵがクライアントである端末５０から検索依頼があるかどうかを判断し、検索依頼がなければ、検索依頼があるまで待つ（ステップＳ８１）。端末５０から検索依頼を受信すると、ＣＰＵは、受信した伝票番号を検索キーとして伝票データベースを検索する（ステップＳ８２）。
【００６０】
次に、ＣＰＵは、伝票データベースを検索した結果、検索データがあったかどうかを判断する（ステップＳ８３）。検索データがあれば、ＣＰＵは、伝票データベースから、該当する伝票番号の伝票イメージデータを取り出し（ステップＳ８４）、取り出したデータの伝票番号が検索を依頼した伝票番号と一致するかのデータチェックを行う（ステップＳ８５）。その後、ＣＰＵは、検索依頼の応答としてデータチェック後の伝票イメージデータを端末５０に送信するか、または、データなしのメッセージを端末５０に送信し（ステップＳ８６）、ステップＳ８１の処理に戻る。
【００６１】
なお、上記の第２の実施の形態では、端末制御プログラム５６と通信プログラム５７とを分けて構成した例を示したが、第１の実施の形態の場合のように、端末制御プログラム５６と通信プログラム５７とを一体で構成してもよい。
【符号の説明】
【００６２】
１０，２０，３０  サーバ
１２，２２，３２  データベース
１３，２３，３３  伝票データベース
１４，２４，３４  データテーブル
４０  ネットワーク
５０  端末
５１  検索受付処理部
５２  検索依頼処理部
５３  サーバ接続状態監視部
５４  サーバ接続状態記憶部
５５  再接続処理部
５６  端末制御プログラム
５７  通信プログラム
１００  コンピュータ
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＨＤＤ
１０４  グラフィック処理装置
１０５  入力インタフェース
１０６  光学ドライブ装置
１０７  通信インタフェース
１０８  バス
１０９  モニタ
１１０  キーボード
１１１  マウス
１１２  光ディスク
【図１】
0006055401.tif 000002
【図２】
0006055401.tif 000003
【図３】
0006055401.tif 000004
【図４】
0006055401.tif 000005
【図５】
0006055401.tif 000006
【図６】
0006055401.tif 000007
【図７】
0006055401.tif 000008
【図８】
0006055401.tif 000009
【図９】
0006055401.tif 000010
【図１０】
0006055401.tif 000011