(57)【要約】【課題】電子帳票サーバの負荷及びネットワークの負荷を軽減することを目的とする。【解決手段】電子帳票に係るデータを格納するデータ格納手段と、クライアント情報を管理するクライアント情報管理手段と、クライアントからの電子帳票に対する操作要求に応じて、操作要求の目的となるクライアント情報を、クライアントに送信するクライアント情報送信手段と、クライアントからの電子帳票に係るデータの取得要求に応じて、電子帳票に係るデータを、クライアントに送信するデータ送信手段と、を有することによって上記課題を解決する。【選択図】図５
2007179202.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してクライアントと通信を行う電子帳票サーバであって、
電子帳票に係るデータを格納するデータ格納手段と、
動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータ保持情報と、を含むクライアント情報を管理するクライアント情報管理手段と、
クライアントからの電子帳票に対する操作要求に応じて、前記操作要求の対象となる前記クライアント情報を、前記クライアントに送信するクライアント情報送信手段と、
クライアントからの前記電子帳票に係るデータの取得要求に応じて、前記電子帳票に係るデータを、前記クライアントに送信するデータ送信手段と、
を有することを特徴とする電子帳票サーバ。
【請求項２】
クライアントからの電子帳票に対する操作要求に応じて、前記電子帳票に係るデータの暗号化又は復号化に用いられるキーを発行するキー発行手段を更に有し、
前記データ送信手段は、前記キーで暗号化された前記電子帳票に係るデータを、前記クライアントに送信することを特徴とする請求項１に記載の電子帳票サーバ。
【請求項３】
前記操作要求元の前記クライアントとのセッション情報を発行するセッション情報発行手段を更に有し、
前記データ送信手段は、前記キー発行手段により発行された前記キーと、前記セッション情報発行手段により発行されたセッション情報を、認証キーとして前記操作要求元の前記クライアントへ送信することを特徴とする請求項１又は２に記載の電子帳票サーバ。
【請求項４】
前記帳票データに対して付加された付加情報を管理する付加情報管理手段と、
クライアントからの前記付加情報の取得要求に応じて、前記付加情報を、前記クライアントに送信する付加情報送信手段と、
を更に有することを特徴とする請求項１乃至３の何れか１項に記載の電子帳票サーバ。
【請求項５】
前記クライアント情報は、前記電子帳票に係るデータの取得要求の送信順序に係る優先度情報を更に含み、
前記クライアント情報送信手段は、前記優先度情報に基づいて並べられた前記クライアント情報を、前記クライアントに送信することを特徴とする請求項１乃至４の何れか１項に記載の電子帳票サーバ。
【請求項６】
ネットワークを介して電子帳票サーバと通信を行うクライアントであって、
前記電子帳票サーバより、前記操作要求の対象となる、動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータ保持情報と、を含むクライアント情報を取得するクライアント情報取得手段と、
前記クライアント情報に基づいて、前記操作要求の対象となる前記電子帳票に係るデータを保持している他のクライアント又は前記電子帳票サーバより、前記電子帳票に係るデータを取得するデータ取得手段と、
前記電子帳票に係るデータを保持する保持手段と、
を有することを特徴とするクライアント。
【請求項７】
前記データ取得手段は、前記電子帳票サーバより、前記電子帳票に係るデータの暗号化又は復号化に用いられるキーを取得するものであり、
前記取得したキーにより前記電子帳票にかかる暗号化されたデータを復号する復号手段
を更に有することを特徴とする請求項６に記載のクライアント。
【請求項８】
前記キー取得手段は、前記電子帳票サーバより、前記操作要求に対応するセッション情報を取得するセッション情報を取得するものであり、
前記取得したキーが、前記取得したセッション情報に対して発行されたものであるか否かを判定する判定手段を更に有し、
前記復号手段は、前記判定手段により発行されたものであると判定された場合に復号化することを特徴とする請求項７に記載のクライアント。
【請求項９】
前記電子帳票サーバより、前記帳票データに対して付加された付加情報を取得する付加情報取得手段と、
前記帳票データと、前記付加情報とを併合して、閲覧可能な電子帳票を作成する電子帳票作成手段と、
を更に有することを特徴とする請求項６乃至８の何れか１項に記載のクライアント。
【請求項１０】
前記帳票データに対して、新たな付加情報が付加されると、前記付加情報の更新を要求する付加情報更新要求を、前記電子帳票サーバに送信する付加情報更新要求送信手段を更に有することを特徴とする請求項９に記載のクライアント。
【請求項１１】
前記保持手段は、前記電子帳票サーバとの通信が切断されると、前記電子帳票に係るデータを削除することを特徴とする請求項６乃至１０の何れか１項に記載のクライアント。
【請求項１２】
複数のクライアントと、電子帳票サーバと、がネットワークを介して通信を行う電子帳票システムであって、
前記電子帳票サーバは、
電子帳票に係るデータを格納するデータ格納手段と、
動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータ保持情報と、を含むクライアント情報を管理するクライアント情報管理手段と、
クライアントからの電子帳票に対する操作要求に応じて、前記操作要求の対象となる前記クライアント情報を、前記クライアントに送信するクライアント情報送信手段と、
クライアントからの前記電子帳票に係るデータの取得要求に応じて、前記電子帳票に係るデータを、前記クライアントに送信するデータ送信手段と、
を有し、
前記クライアントは、
前記電子帳票サーバより、前記操作要求に対応する、動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータに関する保持情報と、を含むクライアント情報を取得するクライアント情報取得手段と、
前記クライアント情報に基づいて、前記操作要求の対象となる前記電子帳票に係るデータを保持している他のクライアント又は前記電子帳票サーバより、前記電子帳票に係るデータを取得するデータ取得手段と、
前記電子帳票に係るデータを保持する保持手段と、
を有することを特徴とする電子帳票システム。
【請求項１３】
ネットワークを介してクライアントと通信を行う電子帳票サーバにおける情報提供方法であって、
動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータ保持情報と、を含むクライアント情報を管理するクライアント情報管理ステップと、
クライアントからの電子帳票に対する操作要求に応じて、前記操作要求の対象となる前記クライアント情報を、前記クライアントに送信するクライアント情報送信ステップと、
クライアントからの電子帳票に係るデータの取得要求に応じて、データ格納手段に格納されている前記電子帳票に係るデータを、前記クライアントに送信するデータ送信ステップと、
を有することを特徴とする情報提供方法。
【請求項１４】
ネットワークを介して電子帳票サーバと通信を行うクライアントにおける情報利用方法であって、
前記電子帳票サーバより、前記操作要求に対応する、動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータに関する保持情報と、を含むクライアント情報を取得するクライアント情報取得ステップと、
前記クライアント情報に基づいて、前記操作要求の対象となる前記電子帳票に係るデータを保持している他のクライアント又は前記電子帳票サーバより、前記電子帳票に係るデータを取得するデータ取得ステップと、
前記電子帳票に係るデータを格納手段において保持する保持ステップと、
を有することを特徴とする情報利用方法。
【請求項１５】
複数のクライアントと、電子帳票サーバと、がネットワークを介して通信を行う電子帳票システムにおけるサービス提供方法であって、
前記電子帳票サーバが、
動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータ保持情報と、を含むクライアント情報を管理するクライアント情報管理ステップと、
クライアントからの電子帳票に対する操作要求に応じて、前記操作要求の対象となる前記クライアント情報を、前記クライアントに送信するクライアント情報送信ステップと、
クライアントからの電子帳票に係るデータの取得要求に応じて、データ格納手段に格納されている前記電子帳票に係るデータを、前記クライアントに送信するデータ送信ステップと、
を有し、
前記クライアントが、
前記電子帳票サーバより、前記操作要求に対応する、動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータに関する保持情報と、を含むクライアント情報を取得するクライアント情報取得ステップと、
前記クライアント情報に基づいて、前記操作要求の対象となる前記電子帳票に係るデータを保持している他のクライアント又は前記電子帳票サーバより、前記電子帳票に係るデータを取得するデータ取得ステップと、
前記電子帳票に係るデータを格納手段において保持する保持ステップと、
を有することを特徴とするサービス提供方法。
【請求項１６】
請求項１３に記載の情報提供方法をコンピュータに実行させることを特徴とするサーバプログラム。
【請求項１７】
請求項１４に記載の情報利用方法をコンピュータに実行させることを特徴とするクライアントプログラム。
【請求項１８】
請求項１６に記載のサーバプログラム又は請求項１７に記載のクライアントプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子帳票サーバ、クライアント、電子帳票システム、情報提供方法、情報利用方法、サービス提供方法、サーバプログラム、クライアントプログラム及び記憶媒体に関する。
【背景技術】
【０００２】
従来、電子帳票システムの多くは、センターに電子帳票サーバを配置し、各拠点においてユーザがクライアントから電子帳票サーバにログインし、電子帳票サーバに格納されている帳票の参照、検索等を行っていた。
【０００３】
図１は、背景技術の一例を示す図である。図１（Ａ）に示されるように、各拠点においてユーザは、センターの電子帳票サーバに要求を送信し、帳票参照や、検索等の操作を行っている。
【０００４】
しかしながら、この構成の場合、電子帳票システムにおいては、拠点毎に参照される帳票及び検索等の操作は偏りがあるにも関わらず、全ての処理をセンターの電子帳票サーバで行っており、管理負荷（処理負荷）が高い。また、電子帳票サーバと、拠点との間のネットワークの負荷も高くなる。
【０００５】
よって、図１（Ｂ）に示されるように、各拠点に電子帳票子サーバを設置する分散システム構成を採用することも考えられる。しかしながら、この構成の場合、電子帳票子サーバの管理負荷等が高くなる。
【０００６】
特許文献１には、ピアツーピア型のファイル交換システムにおけるクライアントにおいて、所望のアクセス権制御が可能なアクセス権制御システムが開示されている。
【０００７】
特許文献２には、分散したユーザが互いにコンテンツをやりとりする際の著作権管理の問題を解決する、コンテンツ配信システムが開示されている。
【０００８】
特許文献３には、クライアント同士がお互いに公開するファイルを保持し、一対一でファイル交換を行うピアツーピア形式のファイルを共有する分散ファイル共有システムが開示されている。
【０００９】
【特許文献１】特開２００３−１２２６３５号公報
【特許文献２】特開２００４−０９６４１１号公報
【特許文献３】特開２００５−０９２２８８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１に記載のシステムでは、クライアントに配信済みのファイルをコピーすることができるため、データの流出が問題となる。電子帳票システムでは、データ自体の機密性が高く、配信済みのファイルの流出を防がなくてはいけない。
【００１１】
また、特許文献２に記載のシステムでは、配信されるファイルが更新されることが考慮されておらず、他クライアントによるファイルの更新を反映することができない。電子帳票システムでは、ある帳票データに対し、複数のクライアントが書き込みを行い、更新をかけるため、最新データを取り込む必要がある。
【００１２】
また、特許文献３に記載のシステムでは、アクセス権限を変更した際、全クライアントにアクセス制御情報を再送信しなくてはならないため、サーバと、各クライアントとが持つアクセス制御情報に不整合が発生する可能性がある。そのため、電子帳票システムにおいて、求められる厳格なアクセス権管理を行うことができない。
【００１３】
本発明は上記の問題点に鑑みなされたもので、電子帳票サーバの負荷及びネットワークの負荷を軽減することを目的とする。
【課題を解決するための手段】
【００１４】
そこで、上記問題を解決するため、本発明は、ネットワークを介してクライアントと通信を行う電子帳票サーバであって、電子帳票に係るデータを格納するデータ格納手段と、動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータに関する保持情報と、を含むクライアント情報を管理するクライアント情報管理手段と、クライアントからの電子帳票に対する操作要求に応じて、前記操作要求に対応する前記クライアント情報を、前記クライアントに送信するクライアント情報送信手段と、クライアントからの前記電子帳票に係るデータの取得要求に応じて、前記電子帳票に係るデータを、前記クライアントに送信するデータ送信手段と、を有することを特徴とする。
【００１５】
係る構成とすることにより、電子帳票サーバは、要求に応じて、クライアントにクライアント情報を送信することができると共に、要求に応じて、クライアントに電子帳票に係るデータを送信することができる。つまり、クライアントは、例えば他の動作中のクライアントが、操作要求対象の電子帳票に係るデータを保持している場合は、クライアント情報に基づいて、前記他の動作中のクライアントより、電子帳票に係るデータを取得する。また、クライアントは、例えば他の動作中のクライアントが、操作要求対象の電子帳票に係るデータを保持していない場合は、サーバより、電子帳票に係るデータを取得する。よって、電子帳票サーバの負荷及びネットワークの負荷を軽減することができる。
【００１６】
また、本発明は、ネットワークを介して電子帳票サーバと通信を行うクライアントであって、前記電子帳票サーバより、前記操作要求に対応する、動作中のクライアントの識別情報と、クライアントが保持している電子帳票に係るデータ保持情報と、を含むクライアント情報を取得するクライアント情報取得手段と、前記クライアント情報に基づいて、前記操作要求の目的となる前記電子帳票に係るデータを保持している他のクライアント又は前記電子帳票サーバより、前記電子帳票に係るデータを取得するデータ取得手段と、前記電子帳票に係るデータに基づいて、前記操作要求に応じた情報を出力する出力手段と、前記電子帳票に係るデータを保持する保持手段と、を有することを特徴とする。
【００１７】
係る構成とすることにより、クライアントは、例えば他の動作中のクライアントが、操作要求対象の電子帳票に係るデータを保持している場合は、クライアント情報に基づいて、前記他の動作中のクライアントより、電子帳票に係るデータを取得する。また、クライアントは、例えば他の動作中のクライアントが、操作要求対象の電子帳票に係るデータを保持していない場合は、サーバより、電子帳票に係るデータを取得する。そして、クライアントは、電子帳票に係るデータに基づいて、操作要求に応じた情報を出力する。よって、電子帳票サーバの負荷及びネットワークの負荷を軽減することができる。
【００１８】
また、上記問題を解決するため、本発明は、電子帳票システム、情報提供方法、情報利用方法、サービス提供方法、サーバプログラム、クライアントプログラム及び記憶媒体としてもよい。
【発明の効果】
【００１９】
本発明によれば、電子帳票サーバの負荷及びネットワークの負荷を軽減することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施形態について図面に基づいて説明する。
【００２１】
図２は、電子帳票システムの構成の一例を示す図である。電子帳票サーバ１００は、電子帳票（以下、場合によって、単に帳票と記す）の帳票データを格納し、ネットワーク１０４を介してクライアント１０１、１０２、１０３に対して、帳票の閲覧や検索等のサービスを提供する。
【００２２】
クライアント１０１、１０２、１０３は、帳票の閲覧及び検索結果（検索結果データ）の取得を行う者が使用するクライアントであり、ネットワーク１０４を介して、電子帳票サーバ１００とデータの送受信を行うことができる。
【００２３】
ネットワーク１０４は、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネット等である。なお、図２のネットワーク１０４上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例がある。
【００２４】
次に、電子帳票サーバ１００のハードウェア構成について、図３を用いて説明する。図３は、電子帳票サーバ１００のハードウェア構成の一例を示す図である。
【００２５】
図３において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。また、ＲＯＭ２０３或いは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、電子帳票サーバ１００（図３がクライアントのハードウェア構成とすると各クライアント）の後述する各種機能を実現するためのプログラムが記憶されている。
【００２６】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、特に、サーバやクライアント等の端末では、キーボード、マウス等のポインティングデバイスが挙げられる。また、印刷装置等では、タッチパネル、ボタン、スイッチ等が挙げられる。
【００２７】
表示コントローラ２０６は、表示部２１０の表示を制御する。この表示部２１０としては、例えば、ＣＲＴや液晶等が挙げられる。外部メモリコントローラ（ＭＣ）２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。なお、外部メモリ２１１には、電子帳票サーバ１００（図３がクライアントのハードウェア構成とすると各クライアント）の各種機能を実現するための各種テーブル、パラメータ等も記憶されている。この外部メモリ２１１としては、ハードディスク（ＨＤ）やフロッピー（登録商標）ディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）、スマートメディア等が挙げられる。
【００２８】
通信Ｉ／Ｆコントローラ２０８は、ネットワーク１０４を介して外部機器との通信制御処理を実行する。本実施形態に係るプログラムは外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行される。更に、プログラムが用いる帳票データ、検索結果、ノード情報、アノテーション情報も外部メモリ２１１に格納されている。なお、帳票データ、検索結果、ノード情報、アノテーション情報についての詳細な説明は後述する。
【００２９】
クライアント１０１、１０２、１０３のハードウェア構成も基本的に電子帳票サーバ１００と同様である。しかしながら、クライアント１０１、１０２、１０３の外部メモリに記録されているプログラムは、例えば帳票データを（又は閲覧可能な帳票を）出力する等のクライアントモジュールであり、当然、電子帳票サーバ１００のプログラムとは異なる。また、帳票データ及び検索結果は、電子帳票サーバ１００又は他のクライアントとの通信により、クライアント１０１、１０２、１０３が受信し、ＲＡＭや外部メモリ等に保持するもので、電子帳票サーバ１００との通信が切断される（電子帳票サーバ１００からログオフする）と、削除される点が異なる。また、クライアント１０１、１０２、１０３は、電子帳票サーバ１００から取得したノード情報又はアノテーション情報を、ＲＡＭ等に一時的に保持し、ＲＯＭ又は外部メモリ等に電子帳票システムのノード情報、アノテーション情報を全て保持しているわけではない点も異なる。
【００３０】
帳票データは、帳票の表示用データを表すものであって、単独又は複数のファイルによって構成され、単数又は複数のページを含有している。電子帳票サーバ１００は、複数の帳票データのうち同一種類の帳票データをグループ化して管理しており、それぞれの帳票データはそのグループの中の世代と呼ばれる。
【００３１】
電子帳票システムでは、アクティブな（動作中の）クライアント（ノード）の情報、クライアントの検索時に用いられる優先度、各クライアントが保持している帳票データに係る情報、各クライアントが保持している検索結果に係る情報を含むノード情報を電子帳票サーバ１００で管理する。クライアントは、電子帳票サーバ１００からノード情報を取得し、必要に応じてサーバ、又は他のクライアントから帳票データ又は検索結果を受信する。
【００３２】
ここで、ノード情報の一例を、図４に示す。図４は、ノード情報の一例を示す図である。図４に示されるように、ノード情報は、アクティブなクライアントの情報として、ノードのＩＰアドレスを含む。また、ノード情報は、クライアントの検索時に用いられる優先度を含む。また、ノード情報は、各クライアントが保持している帳票データに係る情報として、閲覧済み帳票情報を含む。また、ノード情報は、各クライアントが保持している検索結果に係る情報として、検索条件を含む。
【００３３】
図５は、電子帳票システムにおけるデータのやり取りの概要を示すフローチャートである。クライアント１０１は、ステップＳ４２０２において、電子帳票サーバ１００に対してログイン要求を送信する。電子帳票サーバ１００は、ログイン要求を受け取ると、ログイン要求に基づいて、認証を行い、認証結果を、要求元のクライアント１０１に送信する。なお、電子帳票サーバ１００は、認証を行った結果、認証に成功したと判断した場合は、認証に成功した旨の認証結果と、クライアント１０１とのセッションを識別するセッションＩＤをクライアント１０１に送信する。また、電子帳票サーバ１００は、クライアント１０１に送信したセッションＩＤ等を含むセッション情報を、外部メモリ２１１等に格納して、保持する。
【００３４】
クライアント１０１は、電子帳票サーバ１００より認証結果を受け取ると、ステップＳ４２０３において、認証結果に基づいて、認証に成功したか否かを判定する。クライアント１０１は、認証に失敗したと判定すると、ステップＳ４２０２の処理に戻る。また、クライアント１０１は、認証に成功したと判定すると、電子帳票サーバ１００に対して、自ノード（つまり、クライアント１０１）のＩＰアドレス（ＩＰアドレス及びポート番号）を含む、ＩＰアドレス追加要求を送信する。なお、ここで、クライアント１０１と、電子帳票サーバ１００と、のセッションは確立されており、クライアント１０１は、このセッション（セッションＩＤ）を用いて、ＩＰアドレス追加要求を電子帳票サーバ１００に送信する。なお、クライアント１０１は、電子帳票サーバ１００からログオフするまで、つまり、電子帳票サーバ１００とのセッションを切断するまで、このセッションＩＤを用いて、電子帳票サーバ１００と、データのやり取りを行う。このことは、以下においても同様である。
【００３５】
電子帳票サーバ１００は、ＩＰアドレス追加要求を受け取ると、外部メモリ２１１等に保存しているノード情報に、動作中のクライアントとして、ＩＰアドレスを追加する。
【００３６】
クライアント１０１は、ステップＳ４２０４において、電子帳票サーバ１００に対して、閲覧を希望する電子帳票に係る帳票データを識別する帳票データＩＤ等を含む帳票閲覧要求を送信する。電子帳票サーバ１００は、帳票データＩＤ等を含む帳票閲覧要求を受け取ると、クライアント１０１のユーザ又はクライアント１０１に、前記帳票データＩＤで識別される帳票データを閲覧する権限があるか否か判定（チェック）を行い、閲覧権限のチェック結果を、要求元のクライアント１０１に送信する。
【００３７】
クライアント１０１は、電子帳票サーバ１００より閲覧権限のチェック結果を受け取ると、ステップＳ４２０５において、閲覧権限のチェック結果に基づいて、閲覧を希望する電子帳票に係る帳票データに対して、閲覧権限があるか否かを判定する。クライアント１０１は、閲覧権限がないと判定すると、ステップＳ４２０４の処理に戻る。
【００３８】
また、クライアント１０１は、閲覧権限があると判定すると、電子帳票サーバ１００に対して、該当する帳票データを保持している各ノードのＩＰアドレスの取得要求を送信する。なお、後述するように、クライアント１０１は、ＩＰアドレスではなく、ノード情報又は複数のノード情報を含むノードリストの取得要求を電子帳票サーバ１００に対して、送信するようにしてもよい。但し、ここでは、説明の簡略化のため、ＩＰアドレスの取得要求を送信するものとして説明を行う。
【００３９】
電子帳票サーバ１００は、前記取得要求を受信すると、前記取得要求に含まれる帳票データＩＤ等に基づいて、外部メモリ２１１等に保存しているノード情報より、該当する帳票データを保持している各ノードのＩＰアドレスを取得し、要求元のクライアント１０１に送信する。なお、電子帳票サーバ１００は、該当する帳票データを保持しているノードが存在しない場合、例えば、その旨（存在しない旨）の情報等を要求元のクライアント１０１に送信する。
【００４０】
また、電子帳票サーバ１００は、帳票データの暗号化及び復号化に用いられる認証キーを、要求元のクライアント１０１に送信する。また、電子帳票サーバ１００は、前記取得要求に含まれる帳票データＩＤ等に基づいて、外部メモリ２１１等に保存しているアノテーション情報より、該当するアノテーション情報を取得し、要求元のクライアント１０１に送信する。
【００４１】
ここで、アノテーション情報の一例を、図６に示す。図６は、アノテーション情報の一例を示す図である。図６に示されるように、アノテーション情報は、アノテーションの種類と、作成ユーザと、更新ユーザと、帳票ＩＤ（帳票データＩＤ＝電子帳票ＩＤ）と、世代番号と、ページと、位置と、サイズと、作成日と、更新日と、の情報を含む。なお、アノテーションとは、アノテーション画面（画面イメージ：図７）にあるように、クライアントにおいて、電子帳票に付加された情報であり、その種類には、スタンプや、付箋、マーカ、チェック等がある。アノテーション情報も電子帳票の重要な一部である。本実施形態では、帳票イメージ（電子帳票）を、帳票データと、変更される可能性のあるアノテーション情報とに分割し、アノテーション情報は、クライアントが、常に電子帳票サーバ１００から取得する。このことによって、本実施形態では、Ｐ２Ｐの仕組みを利用しながらも、電子帳票が常に最新であることを確保している。
【００４２】
クライアント１０１は、ステップＳ４２０６において、例えば電子帳票サーバ１００より、前記ＩＰアドレスを受信したか否か等に基づいて、同一拠点内に、該当する帳票データを保持しているクライアントが存在するか否かを判定する。
【００４３】
クライアント１０１は、同一拠点内に、該当する帳票データを保持しているクライアントが存在すると判定すると、前記クライアント（図５においては、クライアント１０２）に対して、該当する帳票データの取得要求を送信し、前記帳票データを受信する。
【００４４】
また、クライアント１０１は、同一拠点内に、該当する帳票データを保持しているクライアントが存在しないと判定すると、電子帳票サーバ１００に対して、該当する帳票データの取得要求を送信し、前記帳票データを受信する。なお、電子帳票サーバ１００は、クライアント１０１に該当する帳票データを送信する際に、暗号化用キー、複合化用キーを生成し、暗号化用キーで当該帳票データを暗号化して送信する。そして、送信した帳票データと対応付けて暗号化用キー、複合化用キーを外部メモリ２１１等に記録する。
【００４５】
クライアント１０１は、帳票データを取得すると、ステップＳ４２０７において、電子帳票サーバ１００より受信した認証キーを用いて、前記帳票データを復号化し、復号化した帳票データと、電子帳票サーバ１００より受信したアノテーション情報とを併合して、閲覧可能な電子帳票を作成し、出力する。
【００４６】
ステップＳ４２０７の処理が終了すると、クライアント１０１は、電子帳票サーバ１００に対して、閲覧済み帳票情報を含む、閲覧済み帳票情報追加要求を送信する。電子帳票サーバ１００は、閲覧済み帳票情報追加要求をクライアント１０１より受け取ると、閲覧済み帳票情報追加要求に含まれる閲覧済み帳票情報を、クライアント１０１のノード情報に追加する。
【００４７】
次に、クライアント１０１は、ユーザより、電子帳票に含まれる文字列等の検索条件等を含む、検索指示を受け取ると、電子帳票サーバ１００に対して、検索条件等を含む検索要求を送信する。なお、ユーザが、検索の指示を行わず、ログアウトする旨の指示を行うと、クライアント１０１は、ステップＳ４２０８からステップＳ４２１０まで等の処理を行わず、ログアウトとし、外部メモリ等に保持している、クライアント１０２又は電子帳票サーバ１００より取得した帳票データを削除して、図５に示される処理を終了してもよい。なお、本実施形態では、ユーザは、帳票を閲覧した後、クライアント１０１に対して、検索の指示を行うものとして説明を行う。
【００４８】
電子帳票サーバ１００は、検索条件等を含む検索要求を受け取ると、検索条件（検索情報）等に基づいて、外部メモリ２１１等に保存しているノード情報より、該当する検索結果を保持しているノードのＩＰアドレスを取得し、要求元のクライアント１０１に送信する。なお、電子帳票サーバ１００は、該当する検索結果を保持しているノードが存在しない場合、例えば、その旨（存在しない旨）の情報等を要求元のクライアント１０１に送信する。
【００４９】
クライアント１０１は、ステップＳ４２０９において、例えば電子帳票サーバ１００より、前記ＩＰアドレスを受信したか否か等に基づいて、同一拠点内に、該当する検索結果を保持しているクライアントが存在するか否かを判定する。
【００５０】
クライアント１０１は、同一拠点内に、該当する検索結果を保持しているクライアントが存在すると判定すると、前記クライアント（図５においては、クライアント１０２）に対して、該当する検索結果の取得要求を送信し、前記検索結果を受信する。
【００５１】
また、クライアント１０１は、同一拠点内に、該当する検索結果を保持しているクライアントが存在しないと判定すると、電子帳票サーバ１００に対して、該当する検索結果の取得要求を送信し、前記検索結果を受信する。
【００５２】
クライアント１０１は、検索結果を取得すると、ステップＳ４２１０において、電子帳票サーバ１００より受信した認証キーを用いて、前記検索結果を復号化し、復号化した検索結果を出力する。
【００５３】
ステップＳ４２１０の処理が終了すると、クライアント１０１は、電子帳票サーバ１００に対して、検索条件を含む、検索条件追加要求を送信する。電子帳票サーバ１００は、検索条件追加要求をクライアント１０１より受け取ると、検索条件追加要求に含まれる検索条件を、クライアント１０１のノード情報に追加する。
【００５４】
クライアント１０１は、ユーザより、電子帳票サーバ１００よりログアウトする旨の指示を受け取ると、電子帳票サーバ１００に対して、自ノードのＩＰアドレス等を含む、ノード情報の削除要求を送信する。
【００５５】
電子帳票サーバ１００は、ノード情報の削除要求を受け取ると、前記削除要求に含まれるノードのＩＰアドレスに基づいて、外部メモリ２１１等に保持しているノード情報より、前記ノードに係るノード情報、つまり、クライアント１０１のＩＰアドレス、優先度、閲覧済み帳票情報、検索情報、を削除する。
【００５６】
クライアント１０１は、ステップＳ４２１１において、電子帳票サーバ１００に対して、セッションＩＤ等を含む、セッション切断通知を送信する等のログアウト処理を行う。例えば、電子帳票サーバ１００は、セッション切断要求を受け取ると、前記セッション切断要求に含まれるセッションＩＤに基づいて、外部メモリ２１１等に保持している、該当するセッション情報に、セッションを切断した旨の情報を付加する。
【００５７】
続いて、クライアント１０１は、ステップＳ４２１２において、外部メモリ等に保持している、クライアント１０２又は電子帳票サーバ１００より取得した帳票データ、及び検索結果を削除し、図５に示す処理を終了する。
【００５８】
次に、電子帳票システムにおける処理の概要を、図８を用いて説明する。図８は、電子帳票システムにおける処理の概要を示すフローチャートである。
【００５９】
クライアント１０１は、ステップＳ５００２において、電子帳票サーバ１００に対してログイン要求を送信する。電子帳票サーバ１００は、ログイン要求を受け取ると、ログイン要求に基づいて、認証を行い、認証結果を、要求元のクライアント１０１に送信する。なお、上述したように、電子帳票サーバ１００は、認証を行った結果、認証に成功したと判断した場合は、認証に成功した旨の認証結果と、クライアント１０１とのセッションを識別するセッションＩＤをクライアント１０１に送信する。
【００６０】
クライアント１０１は、電子帳票サーバ１００より認証結果を受け取ると、ステップＳ５００３において、認証結果に基づいて、認証に成功したか否かを判定する。クライアント１０１は、認証に失敗したと判定すると、ステップＳ５００２の処理に戻る。また、クライアント１０１は、認証に成功したと判定すると、ステップＳ５００４に進む。
【００６１】
クライアント１０１は、ステップＳ５００４において、電子帳票サーバ１００に対して、自ノード（つまり、クライアント１０１）のＩＰアドレス（ＩＰアドレス及びポート番号）を含む、ＩＰアドレス追加要求（ノード情報更新要求）を送信する。電子帳票サーバ１００は、ＩＰアドレス追加要求を受け取ると、外部メモリ２１１等に保存しているノード情報に、動作中のクライアントとして、ＩＰアドレスを追加する。
【００６２】
続いて、クライアント１０１は、ステップＳ５００８において、電子帳票サーバ１００に対して閲覧を希望する電子帳票に係る帳票データを識別する帳票データＩＤ等を含む帳票閲覧要求を送信する。電子帳票サーバ１００は、帳票データＩＤ等を含む帳票閲覧要求を受け取ると、クライアント１０１のユーザ又はクライアント１０１に、前記帳票データＩＤで識別される帳票データを閲覧する権限があるか否か判定（チェック）を行い、閲覧権限のチェック結果を、要求元のクライアント１０１に送信する。
【００６３】
クライアント１０１は、電子帳票サーバ１００より閲覧権限のチェック結果を受け取ると、ステップＳ５００９において、閲覧権限のチェック結果に基づいて、閲覧を希望する電子帳票に係る帳票データに対して、閲覧権限があるか否かを判定する。クライアント１０１は、閲覧権限がないと判定すると、ステップＳ５００８の処理に戻る。また、クライアント１０１は、閲覧権限があると判定すると、ステップＳ５０１０に進む。
【００６４】
クライアント１０１は、ステップＳ５０１０において、電子帳票サーバ１００に対して、該当する帳票データを保持している各ノードのＩＰアドレス（又はノード情報）の取得要求を送信する。
【００６５】
電子帳票サーバ１００は、前記取得要求を受信すると、前記取得要求に含まれる帳票データＩＤ等に基づいて、外部メモリ２１１等に保存しているノード情報より、該当する帳票データを保持している各ノードのＩＰアドレス（又はノード情報）を取得し、これらのＩＰアドレス（又はノード情報）をまとめたノードリストを作成し、要求元のクライアント１０１に送信する。なお、電子帳票サーバ１００は、クライアント１０１のＩＰアドレス等に基づいて、クライアント１０１が所属する拠点を識別することができる。なお、電子帳票サーバ１００におけるノードリストの作成処理等の詳細は、後述する図９を用いて説明する。
【００６６】
クライアント１０１は、電子帳票サーバ１００より、ノードリストを取得する。
続いて、ステップＳ５０１１において、クライアント１０１（及び電子帳票サーバ１００）は、帳票閲覧処理を実行する。なお、帳票閲覧処理の詳細は、後述する図１０、図１１を用いて説明する。
【００６７】
クライアント１０１は、帳票閲覧処理を終了すると、ステップＳ５０１２において、電子帳票サーバ１００に対して、閲覧済み帳票情報を含む、閲覧済み帳票情報追加要求（ノード情報更新要求）を送信する。電子帳票サーバ１００は、閲覧済み帳票情報追加要求をクライアント１０１より受け取ると、閲覧済み帳票情報追加要求に含まれる閲覧済み帳票情報を、クライアント１０１のノード情報に追加する。
【００６８】
次に、クライアント１０１は、ユーザより、電子帳票に含まれる文字列等の検索条件等を含む、検索指示を受け取ると、ステップＳ５０１３において、電子帳票サーバ１００に対して、検索条件等を含む検索要求を送信する。
【００６９】
電子帳票サーバ１００は、検索条件等を含む検索要求を受け取ると、検索条件（検索情報）等に基づいて、外部メモリ２１１等に保存しているノード情報より、該当する検索結果を保持しているノードのＩＰアドレス（又はノード情報）を取得し、これらのＩＰアドレス（又はノード情報）をまとめたノードリストを作成し、要求元のクライアント１０１に送信する。
【００７０】
クライアント１０１は、ステップＳ５０１４において、電子帳票サーバ１００より、ノードリストを取得する。
続いて、ステップＳ５０１５において、クライアント１０１（及び電子帳票サーバ１００）は、検索処理を実行する。なお、検索処理の詳細は、後述する図１４を用いて説明する。
【００７１】
クライアント１０１は、検索処理を終了すると、ステップＳ５０１６において、電子帳票サーバ１００に対して、検索条件を含む、検索条件追加要求（ノード情報更新要求）を送信する。電子帳票サーバ１００は、検索条件追加要求をクライアント１０１より受け取ると、検索条件追加要求に含まれる検索条件を、クライアント１０１のノード情報に追加する。
【００７２】
続いて、クライアント１０１は、ユーザより、電子帳票サーバ１００よりログアウトする旨の指示を受け取ると、ステップＳ５０１８において、電子帳票サーバ１００に対して、自ノードのＩＰアドレス等を含む、ノード情報の削除要求を送信する。電子帳票サーバ１００は、ノード情報の削除要求を受け取ると、前記削除要求に含まれるノードのＩＰアドレスに基づいて、外部メモリ２１１等に保持しているノード情報より、前記ノードに係るノード情報、つまり、クライアント１０１のＩＰアドレス、優先度、閲覧済み帳票情報、検索情報、を削除する。
【００７３】
クライアント１０１は、ステップＳ５０１９において、電子帳票サーバ１００に対して、セッションＩＤ等を含む、セッション切断通知を送信する等のログアウト処理を行う。電子帳票サーバ１００は、セッション切断要求を受け取ると、前記セッション切断要求に含まれるセッションＩＤに基づいて、外部メモリ２１１等に保持している、該当するセッション情報に、セッションを切断した旨の情報を付加する。
【００７４】
続いてクライアント１０１は、ステップＳ５０２０において、外部メモリ等に保持している、クライアント１０２又は電子帳票サーバ１００より取得した帳票データ、及び検索結果を削除し、図８に示す処理を終了する。
【００７５】
図９は、ノードリスト作成処理の一例を示すフローチャートである。ステップＳ１３０３において、電子帳票サーバ１００は、クライアント１０１より、該当する帳票データを保持している各ノードのノードリスト（ＩＰアドレス又はノード情報）の取得要求を受信する。すると、電子帳票サーバ１００は、前記取得要求に含まれる帳票データＩＤ等に基づいて、外部メモリ２１１等に保存しているノード情報より、該当する帳票データを保持している各ノードのノード情報を取得し、ノードリストを作成する。なお、電子帳票サーバ１００は、ノード情報に含まれる閲覧済み帳票情報より、該当する帳票データを保持しているノードを識別することができる。
【００７６】
続いて、ステップＳ１３０４において、電子帳票サーバ１００は、ステップＳ１３０３において作成したノードリストを、拠点毎に分割する。例えば、拠点１に所属するクライアントが、クライアント１〜４、拠点２に所属するクライアントがクライアント５〜７、で、拠点３に所属するクライアントがクライアント８〜１０で、ステップＳ１３０３において、クライアント２〜９のノードリストが作成されたとする。すると、ステップＳ１３０４において、電子帳票サーバ１００は、ステップＳ１３０３において作成されたクライアント２、３、４、５、６、７、８、９のノードリストを、クライアント２、３、４のノードリスト（ノードリスト１）と、クライアント５、６、７のノードリスト（ノードリスト２）と、クライアント８、９のノードリスト（ノードリスト３）と、に分ける。
【００７７】
続いて、ステップＳ１３０５において、電子帳票サーバ１００は、要求元（本実施例では、クライアント１０１、但し、ここでは、クライアント１０１＝クライアント１とする）の所属拠点に基づいて、ステップＳ１３０４において分けたノードリスト間に優先度を付ける。つまり、電子帳票サーバ１００は、クライアント１の所属する拠点に係るノードリストであるノードリスト１の優先度を、ノードリスト２及びノードリスト３の優先度より高くする。また、電子帳票サーバ１００は、ノードリスト２と、ノードリスト３との優先度を、拠点２及び拠点３と、拠点１との、ネットワークに係る距離に基づいて、決定する。つまり、拠点１とネットワークに係る距離が近い拠点のノードリストの優先度を高くする。なお、ここでは、ノードリスト３の優先度が、ノードリスト２の優先度よりも高いものとして説明を行う。
【００７８】
続いて、ステップＳ１３０６において、電子帳票サーバ１００は、ステップＳ１３０５において行った優先度付け、及び同じ拠点内におけるクライアントの優先度に基づいて、各ノードリスト内のノード情報をソートし、分割したノードリストを併合する。つまり、拠点１内のクライアント２〜４の優先度がクライアント４＞クライアント３＞クライアント２だった場合、電子帳票サーバ１００は、まず、ノードリスト１を、クライアント４、３、２にソートする。また、拠点２内のクライアント５〜７の優先度がクライアント５＞クライアント６＞クライアント７だった場合、電子帳票サーバ１００は、ノードリスト２を、クライアント５、６、７にソートする。また、拠点３内のクライアント８、９の優先度がクライアント９＞クライアント８だった場合、電子帳票サーバ１００は、ノードリスト３を、クライアント９、８にソートする。
【００７９】
そして、電子帳票サーバ１００は、ノードリスト間の優先度に基づいて、ノードリストを併合し、クライアント４、３、２、９、８、５、６、７のノードリストを作成する。なお、このノードリストでは、先頭ほど、優先度が高いものとしている。
【００８０】
ステップＳ１３０７において、電子帳票サーバ１００は、作成したノードリストを要求元のクライアント１０１に送信する。
【００８１】
なお、上述したように、電子帳票サーバ１００は、拠点間のネットワークに係る距離を、外部メモリ２１１等に保存している。また、例えば電子帳票システムの管理者等が、ノード情報に含まれるクライアントの優先度を設定することで、事前にデータを保持している可能性が高いクライアントが判明している場合等には、ネットワークの負荷を軽減させることができる。また、優先度を下げる等することによって、例えば、できるだけアクセスさせたくないクライアントを指定することができ、セキュリティを向上させることもできる。
【００８２】
図１０は、帳票閲覧処理の概略を示す図である。（１）において、クライアント１０１は、電子帳票サーバ１００に対して、帳票Ａの閲覧要求を送信する。すると、電子帳票サーバ１００は、ノード情報の中から、拠点Ａ内で、帳票Ａの帳票データを保持しているノード（図１０の例では、クライアント１０２）のノード情報を検索、取得し、（２）において、クライアント１０１に送信する。また、（３）において、電子帳票サーバ１００は、認証キーをクライアント１０１に送信する。
【００８３】
（４）において、クライアント１０１は、電子帳票サーバ１００より受け取ったノード情報に基づいて、クライアント１０２に対して、帳票Ａの帳票データの取得要求を送信する。
【００８４】
（５）において、クライアント１０２は、クライアント１０１より受け取った取得要求に応じて、保持している帳票Ａの帳票データを、クライアント１０１に送信する。（６）において、クライアント１０１は、クライアント１０２より取得した帳票Ａの帳票データを、電子帳票サーバ１００より取得した認証キーを用いて復号化する。
【００８５】
一方、（１）'において、クライアント１０３は、電子帳票サーバ１００に対して、帳票Ｂの閲覧要求を送信する。すると、電子帳票サーバ１００は、ノード情報の中から、拠点Ａ内で、帳票Ｂの帳票データを保持しているノードのノード情報を検索する。ここで、拠点Ａ内で、帳票Ｂの帳票データを保持しているノードは存在しない場合、電子帳票サーバ１００は、拠点Ａ内で、帳票Ｂの帳票データを保持しているノードは存在しない旨の情報をクライアント１０３に送信する。
【００８６】
クライアント１０３は、拠点Ａ内で、帳票Ｂの帳票データを保持しているノードは存在しない旨の情報を電子帳票サーバ１００より受けると、電子帳票サーバ１００に対して、帳票Ｂの帳票データの取得要求を送信する。
【００８７】
（２）'において、電子帳票サーバ１００は、クライアント１０３より受け取った取得要求に応じて、保持している帳票Ｂの帳票データを、クライアント１０３に送信する。また、（３）'において、電子帳票サーバ１００は、認証キーをクライアント１０３に送信する。
【００８８】
（４）'において、クライアント１０３は、電子帳票サーバ１００より取得した帳票Ｂの帳票データを、電子帳票サーバ１００より取得した認証キーを用いて復号化する。
【００８９】
図１１は、帳票閲覧処理の一例を示すフローチャートである。
ステップＳ８０２において、クライアント１０１は、電子帳票サーバ１００より、認証キーを取得する。ここで、電子帳票サーバ１００は、クライアント１０１に対して、クライアント１０１とのセッションを識別するセッションＩＤ部分と、帳票データの暗号化及び復号化に使用するキー部分と、を含む認証キーを発行する。よって、例えばクライアント１０１を、電子帳票サーバ１００にログインしたときに取得したセッションＩＤと、認証キーに含まれるセッションＩＤと、を比較し、一致した場合のみ、帳票データを復号化することができるように構成することで、帳票データへの不正アクセスを防ぐことができる。
【００９０】
続いて、ステップＳ８０３において、クライアント１０１は、前記帳票に係るアノテーション情報（又はアノテーション情報リスト）を電子帳票サーバ１００より取得する。図７に示したように、アノテーション情報には、例えば、付箋、マーカ、スタンプ、チェック等の情報が含まれている。
【００９１】
続いて、ステップＳ８０４において、クライアント１０１は、例えば図８のＳ５０１０等において取得したノードリスト等に基づいて、電子帳票サーバ１００又は同一拠点内に存在するクライアント１０２又は１０３等より、前記帳票に係る帳票データを取得する、帳票データ取得処理を実行する。なお、帳票データ取得処理の詳細は、後述する図１１を用いて説明する。
【００９２】
続いて、ステップＳ８０５において、クライアント１０１は、電子帳票サーバ１００にログインしたときに取得したセッションＩＤと、ステップＳ８０２において取得した認証キーに含まれるセッションＩＤと、を比較し、所持している認証キーが現在電子帳票サーバ１００と接続しているセッションに対して発行されたものか否かを判定する。
【００９３】
クライアント１０１は、所持している認証キーが、現在、電子帳票サーバ１００と接続しているセッションに対して発行されたものであると判定すると、ステップＳ８０６に進み、現在、電子帳票サーバ１００と接続しているセッションに対して発行されたものでないと判定すると、ステップＳ８１４に進む。
【００９４】
ステップＳ８１４において、クライアント１０１は、例えば、帳票の閲覧に失敗した旨等を出力する。そして、ステップＳ８１５において、クライアント１０１は、電子帳票サーバ１００又は同一拠点内に存在するクライアント１０２又は１０３等より取得した帳票データを削除する。
【００９５】
一方、ステップＳ８０６において、クライアント１０１は、所持している認証キーを用いて、電子帳票サーバ１００又は同一拠点内に存在するクライアント１０２又は１０３等より取得した帳票データを復号化する。そして、ステップＳ８０７において、クライアント１０１は、復号化した帳票データに基づいて、帳票イメージを描画する。また、ステップＳ８０８からステップＳ８１０までで、クライアント１０１は、アノテーション情報に基づいて、アノテーション毎にアノテーションイメージを描画する。
【００９６】
ステップＳ８１１において、クライアント１０１は、帳票イメージと、アノテーションイメージと、を併合して、電子帳票を出力し、図１１に示す処理を終了する。
なお、ステップＳ８０２において、電子帳票サーバ１００が、クライアント１０１に対して、クライアント１０１とのセッションを識別するセッションＩＤ部分のみを含む認証キーを発行する実施形態とする場合、ステップＳ８０５において、クライアント１０１が、ステップＳ８０２において取得したセッションＩＤを、電子帳票サーバ１００に送信し、電子帳票サーバ１００は、クライアント１０１から受信したセッションＩＤと、クライアント１０１が、電子帳票サーバ１００にログインしたときにクライアント１０１へ送信したセッションＩＤと、を比較する。一致した場合、電子帳票サーバ１００は、帳票データの暗号化及び復号化に使用するキー部分をクライアント１０１へ送信する。クライアント１０１は、復号化に使用するキーを使用して帳票データの復号化を行う。一方、一致しなかった場合は、エラーメッセージをクライアント１０１へ送信する。
このような実施形態をとることにより、電子帳票サーバは、クライアント１０１から受信したセッションＩＤと、クライアント１０１が、電子帳票サーバ１００にログインしたときにクライアント１０１へ送信したセッションＩＤと、を比較して、一致した場合にはじめて暗号化及び復号化に使用するキー部分をクライアント１０１へ送信することになるため、不必要な暗号化及び復号化に使用するキーの流出を防ぐことができ、よりセキュリティを高めることにつながる。
【００９７】
図１２は、帳票データ取得処理の一例を示すフローチャートである。クライアント１０１は、ステップＳ１３０８からステップＳ１３１２まで、図８のステップＳ５０１０等において取得したノードリストに基づいて、閲覧したい電子帳票に係る帳票データを保持している可能性のあるノード分（つまり、ノードリストに含まれるノード情報分）、ループする。クライアント１０１は、ノードリストに含まれる先頭のノード情報から順に以下のループ内の処理を実行する。
【００９８】
ステップＳ１３０９において、クライアント１０１は、処理対象のノード（クライアント）が、配信可能な該当帳票データを保持しているか否かを判定する。例えば、クライアント１０１は、処理対象のノードに対して、配信可能な該当帳票データを保持しているか否かの問い合わせを行い、その問い合わせ結果に基づいて、前記判定を行う。
【００９９】
クライアント１０１は、処理対象のノードが、配信可能な該当帳票データを保持していると判定すると、ステップＳ１３１０に進み、処理対象のノードが、配信可能な該当帳票データを保持していないと判定すると、ノードリストに含まれる次のノード情報に係るノードに対して、ステップＳ１３０９の処理を行う。
【０１００】
ステップＳ１３１０において、クライアント１０１は、処理対象のノードから、該当する帳票データを取得する。続いて、ステップＳ１３１１において、クライアント１０１は、該当する帳票データの取得が成功したか否かを判定する。クライアント１０１は、該当する帳票データの取得に成功したと判定すると、図１２に示す処理を終了し、該当する帳票データの取得に失敗したと判定すると、ステップＳ１３１２に進む。
【０１０１】
ステップＳ１３１３において、クライアント１０１は、電子帳票サーバ１００より、該当する帳票データを取得し、図１２に示す処理を終了する。
【０１０２】
図１３は、検索処理の一例を示すフローチャートである。ステップＳ１４０２において、クライアント１０１は、検索に係る帳票データの帳票ＩＤ、世代番号、検索条件等を含む、検索要求を、電子帳票サーバ１００に送信する。
【０１０３】
ステップＳ１４０９において、クライアント１０１は、処理対象のノード（クライアント）が、配信可能な該当検索結果を保持しているか否かを判定する。例えば、クライアント１０１は、処理対象のノードに対して、配信可能な該当検索結果を保持しているか否かの問い合わせを行い、その問い合わせ結果に基づいて、前記判定を行う。
【０１０４】
クライアント１０１は、処理対象のノードが、配信可能な該当検索結果を保持していると判定すると、ステップＳ１４１０に進み、処理対象のノードが、配信可能な該当検索結果を保持していないと判定すると、ノードリストに含まれる次のノード情報に係るノードに対して、ステップＳ１４０９の処理を行う。
【０１０５】
ステップＳ１４１０において、クライアント１０１は、処理対象のノードから、該当する検索結果を取得する。続いて、ステップＳ１４１１において、クライアント１０１は、該当する検索結果の取得に成功したか否かを判定する。クライアント１０１は、該当する検索結果の取得に成功したと判定すると、図１３に示す処理を終了し、該当する検索結果の取得に失敗したと判定すると、ステップＳ１４１２に進む。
【０１０６】
ステップＳ１４１３において、クライアント１０１は、電子帳票サーバ１００より、該当する検索結果を取得する。続いて、ステップＳ１４１４において、クライアント１０１は、検索結果を、認証キーを用いて復号化し、出力して、図１３に示す処理を終了する。
【０１０７】
上述したように、本実施形態によれば、電子帳票システムに求められる高いセキュリティを確保しつつ、電子帳票サーバの負荷及びネットワークの負荷を軽減することができる。
【０１０８】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０１０９】
【図１】背景技術の一例を示す図である。
【図２】電子帳票システムの構成の一例を示す図である。
【図３】電子帳票サーバ１００のハードウェア構成の一例を示す図である。
【図４】ノード情報の一例を示す図である。
【図５】電子帳票システムにおけるデータのやり取りの概要を示すフローチャートである。
【図６】アノテーション情報の一例を示す図である。
【図７】画面に表示された電子帳票の一例を示す図である。
【図８】電子帳票システムにおける処理の概要を示すフローチャートである。
【図９】ノードリスト作成処理の一例を示すフローチャートである。
【図１０】帳票閲覧処理の概略を示す図である。
【図１１】帳票閲覧処理の一例を示すフローチャートである。
【図１２】帳票データ取得処理の一例を示すフローチャートである。
【図１３】検索処理の一例を示すフローチャートである。
【符号の説明】
【０１１０】
１００  電子帳票サーバ
１０１  クライアント
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０９  入力部
２１０  表示部
２１１  外部メモリ
【図１】
2007179202.tif 000003
【図２】
2007179202.tif 000004
【図３】
2007179202.tif 000005
【図４】
2007179202.tif 000006
【図５】
2007179202.tif 000007
【図６】
2007179202.tif 000008
【図７】
2007179202.tif 000009
【図８】
2007179202.tif 000010
【図９】
2007179202.tif 000011
【図１０】
2007179202.tif 000012
【図１１】
2007179202.tif 000013
【図１２】
2007179202.tif 000014
【図１３】
2007179202.tif 000015