(57)【要約】【課題】患者が同時に受付処理を行う病院の患者受付業務システムの技術に関し、患者に不安感を与えず、冗長的なシステム構成にならないよう、最低限のコストでのシステム構築を可能とする。【解決手段】  外来患者処理サーバ１０１において、患者受付部である受付完了通知処理部１０３は、患者の受付端末装置である電子カードホルダ１１１からの受付依頼の受信に応答して、電子カードホルダ１１１にに受付完了通知を返信し、その受付依頼に対応する患者を仮受付状態として仮受付リスト１０６に追加する仮受付処理を実行する。受付依頼処理部１０４は、医事業務サーバ１０２の受付処理が遅延なく完了しているかを判断しながら、仮受付リスト１０６において受付待機状態となっている患者に対応する受付依頼を医事業務サーバ１０２に発行してその受付依頼に対応する受付処理を完了させ、その受付処理が正常に終了した後に仮受付リスト１０６のその受付依頼に対応する登録を削除する受付依頼処理を実行する。【選択図】図１
2010277345.tif 000002
【特許請求の範囲】
【請求項１】
患者の受付端末装置から受付依頼を受信し、該受付依頼に基づいて医事業務サーバ装置において患者の受付処理を行う患者受付処理方法において、
前記医事業務サーバ装置に接続される患者処理サーバ装置において、前記受付端末装置からの受付依頼の受信に応答して、該受付依頼に対応する受付端末装置に受付完了通知を返信し、該受付依頼に対応する患者を仮受付状態として仮受付リストに追加する仮受付処理を実行し、
前記患者処理サーバ装置において、前記医事業務サーバの受付処理が遅延なく完了しているかを判断しながら、前記仮受付リストにおいて受付待機状態となっている患者に対応する受付依頼を前記医事業務サーバに発行して該受付依頼に対応する受付処理を完了させ、該受付処理が正常に終了した後に前記仮受付リストの該受付依頼に対応する登録を削除する受付依頼処理を実行する、
ことを特徴とする患者受付処理方法。
【請求項２】
前記仮受付処理及び前記受付依頼処理は、複数の受付端末装置からの複数の受付依頼の受信に応答して複数のスレッド処理として実行し、
前記患者処理サーバ装置において、前記受付依頼処理の実行過程における前記医事業務サーバ装置からの応答状況と、単一スレッド処理として実行され実際には存在しない疑似患者に対応する受付依頼処理を前記医事業務サーバ装置に発行したときの応答状況とに基づいて、前記医事業務サーバ装置に対して実行可能な前記受付依頼処理の数である接続数最大値を増減させる制御処理を実行し、
前記患者処理サーバ装置において、前記接続数最大値を超えないように前記受付依頼処理の実行を制御する、
ことを特徴とする請求項１に記載の患者受付処理方法。
【請求項３】
前記患者処理サーバ装置における前記仮受付処理の実行時に、前記受付依頼を行った患者が診察予約を行っているか否かを判断し、該判断に基づいて該受付依頼を行った患者に対する仮受付処理を実行するか否かを制御する、
ことを特徴とする請求項１又は２の何れか１項に記載の患者受付処理方法。
【請求項４】
前記患者処理サーバ装置における前記仮受付処理の実行時に、前記受付依頼が診察予約を必要とする診療科であるか否かを更に判断し、該判断を前記仮受付処理を実行するか否かの制御に加味する、
ことを特徴とする請求項３に記載の患者受付処理方法。
【請求項５】
前記患者処理サーバ装置における前記仮受付処理の実行時に、前記受付依頼が原則として診察予約を必要とするが診察予約をしなくても診察可能な診療科であるか否かを更に判断し、該判断に基づいて前記受付依頼処理の実行順を制御する、
ことを特徴とする請求項４に記載の患者受付処理方法。
【請求項６】
患者の受付端末装置から受付依頼を受信し、該受付依頼に基づいて医事業務サーバ装置に対して受付依頼処理を実行する患者処理サーバ装置において、
前記受付端末装置からの受付依頼の受信に応答して、該受付依頼に対応する受付端末装置に受付完了通知を返信し、該受付依頼に対応する患者を仮受付状態として仮受付リストに追加する仮受付処理を実行する患者受付部と、
前記医事業務サーバの受付処理が遅延なく完了しているかを判断しながら、前記仮受付リストにおいて受付待機状態となっている患者に対応する受付依頼を前記医事業務サーバに発行して該受付依頼に対応する受付処理を完了させ、該受付処理が正常に終了した後に前記仮受付リストの該受付依頼に対応する登録を削除する受付依頼処理を実行する受付依頼処理部と、
を含むことを特徴とする患者処理サーバ装置。
【請求項７】
患者の受付端末装置から受付依頼を受信し、該受付依頼に基づいて医事業務サーバ装置に対して受付依頼処理を実行する患者処理サーバ装置に、
前記受付端末装置からの受付依頼の受信に応答して、該受付依頼に対応する受付端末装置に受付完了通知を返信し、該受付依頼に対応する患者を仮受付状態として仮受付リストに追加する仮受付処理と、
前記医事業務サーバの受付処理が遅延なく完了しているかを判断しながら、前記仮受付リストにおいて受付待機状態となっている患者に対応する受付依頼を前記医事業務サーバに発行して該受付依頼に対応する受付処理を完了させ、該受付処理が正常に終了した後に前記仮受付リストの該受付依頼に対応する登録を削除する受付依頼処理と、
を実行させるための患者受付処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示する技術は、患者が同時に受付処理を行う病院の患者受付業務システムの技術に関する。
【背景技術】
【０００２】
昨今では、多くの病院で電子カルテシステムが導入されている。電子カルテシステムとは、従来は診療の経過を記入していた紙のカルテをコンピュータとデータベースを用いて一括してカルテを編集・管理するものである。
【０００３】
電子カルテシステムでは、受付処理はもちろんのこと、病院内の医療にかかわるすべての業務を統括している。この場合に、外来患者がごく短時間で同時に受付処理を行う病院の受付業務において、受付以外の多くの処理をしなければならないシステム全体に負担をかけることなく受付処理を行い、外来患者へのレスポンスを適切に行うシステムの技術が必要となる。
【０００４】
なお、以降の説明では、主に医事に関する処理を統括するサーバを医事業務サーバ、この医事業務サーバを始めとして、受付端末や印刷機器を含んだ全てを総括するものを電子カルテシステムと呼称する。
【０００５】
電子カルテシステムを用いて受付を行う場合、図１９に示されるように、通常は医事業務サーバに接続された複数台の受付端末が備えられていることが多い。外来患者は病院到着時に、あらかじめ病院から発行された外来受診カードを受付端末に入れることにより、受付を完了する。各受付端末では、逐次処理として受付情報を医事業務サーバに送信するので、医事業務サーバでは最大でも受付端末数分のスレッド数で逐次処理を行えばよいので、基本的にはアクセス集中による遅延問題は起こらない。
【０００６】
一方、電子カードホルダに外来受診カードを差し込むことで、電子カードホルダが無線システムを使って医事業務サーバに受付依頼を行う形式の電子カルテシステムも存在する。このようなシステムでは、来院した患者が電子カードホルダに任意のタイミングで外来受診カードを挿入する。このため、医事業務サーバでは、特定複数の受付端末で逐次処理ではなく、図２０に示されるように、不特定多数の受付依頼を同時に処理しなければならない。特に、朝の受付開始時間になると、ごく短時間にほぼ同時にカードが挿入される。このため、医事業務サーバに多大な負荷が発生し、患者（すなわち電子カードホルダ）への受付け完了を通知するレスポンスが極端に低下することになる。この結果、外来患者に、受付ができないという不安を与える可能性がある。
【０００７】
かかる状況を回避する第１の従来技術として、導入規模に応じた最大処理数を確実に捌くことが可能なようにサーバを複数台設け、負荷分散装置を用いて受付情報を複数のサーバに適切に処理を振り分けることで、遅延無く処理を行う技術が知られている。
【０００８】
第２の従来技術として、通信プロセスの負荷状況及びシステムの負荷状況に応じて、通信プロセスを割り当てることにより、システム資源を有効利用し、端末レスポンスの遅延を解消する技術が知られている。この従来技術では、端末からの接続要求（電子カードホルダからの受付依頼）を制御プロセスが受けたとき、次のように動作する。即ち、通信プロセスが未起動であれば、新たに通信プロセスが起動されて端末が割り当てられ、通信プロセスが起動されていれば、端末接続数の最も少ない通信プロセスに端末が割り当てられる。また、制御プロセスは、通信プロセスの負荷増大を検知した場合、システム負荷状況を調べ、次のように動作する。即ち、システム負荷が低い場合は、新たな通信プロセスが起動されて端末からの接続が割り当てられ、システム負荷が高い場合は、新たな通信プロセスの起動は行われず、端末からの接続が抑制される。このように、上位のサーバに負荷がかからないような制限をかける制御が実施される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１１−１２６１８５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、前述した、負荷分散装置と複数サーバ構成で処理を行う第１の従来技術は、以下のような課題を有する。
第１の課題は、コストの増加である。負荷分散装置は高価な上、複数台のサーバ構成にするのはコストが増大することは否めない。
【００１１】
第２の課題は、冗長的なシステム構成になりがちなことである。サーバの性能評価を行う負荷試験プログラムを用いて処理要件を満たせば、確実に処理を行うことはできるが、このようにして構成されるシステムは、想定される最高の構成を満たすためのものである。よって、最大負荷がかかった状態でシステム要件（同時処理数）を満たすように性能を見積もることはできるが、リアルタイムにシステム運用の状態を判断できない。この結果、想定される最大アクセスがあった場合でも、必ずしもその時点でシステムに最大負荷がかかっているとは限らないので、冗長的なシステム構成になる可能性が高い。
【００１２】
第３の課題は、受付処理の負荷による、他のプロセスへの悪影響が発生することである。電子カルテシステムは、受付処理だけでなく、全ての医療に関わるシステム（カルテ管理、投薬処理、会計処理、etc..）を統合するシステムである。受付処理で負荷を大きくかけすぎると他のプロセスに影響が発生する可能性がある。
【００１３】
次に、前述した第２の従来技術では、リアルタイムに負荷状態を判断し、最も接続数の少ない通信プロセスに処理を割り当てることで、適切な通信処理が行える。しかしこれは、一律のレスポンス速度が前提であり、各々の通信プロセスに割り当てらている接続処理のリアルタイムの変動については言及されていない。このため、必ずしも均等な処理が約束されているものではなし、最も早くレスポンスを得ることはできるが、上位システム（医事業務サーバ）の内部処理の負荷状態の変化によってタイムアウトが起こらないという保証はない。また、システム負荷が高い場合は新たな通信プロセスの起動は行わず、端末からの接続を抑制してしまうので、外来患者の受付処理においてはビジー状態を返すことになり、受付完了通知を発行することができなくなってしまうという課題を有していた。
【００１４】
そこで、本発明の１つの側面では、患者受付処理において、冗長的なシステム構成にならないよう、最低限のコストでのシステム構築を可能とすることを目的とする。
また、本発明の他の側面では、患者受付処理において、患者自身が遅滞なく受付完了通知を受けることができ、患者に不安感を与えず、医事業務サーバが最適に処理できる性能値に応じた可変負荷処理が行える電子カルテシステムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
態様の一例は、患者の受付端末装置から受付依頼を受信し、該受付依頼に基づいて医事業務サーバ装置に対して受付依頼処理を実行する患者処理サーバ装置として実現され、以下の構成を有する。
【００１６】
患者受付部は、受付端末装置からの受付依頼の受信に応答して、その受付依頼に対応する受付端末装置に受付完了通知を返信し、その受付依頼に対応する患者を仮受付状態として仮受付リストに追加する仮受付処理を実行する。
【００１７】
受付依頼処理部は、医事業務サーバの受付処理が遅延なく完了しているかを判断しながら、仮受付リストにおいて受付待機状態となっている患者に対応する受付依頼を医事業務サーバに発行してその受付依頼に対応する受付処理を完了させ、その受付処理が正常に終了した後に仮受付リストのその受付依頼に対応する登録を削除する受付依頼処理を実行する。
【発明の効果】
【００１８】
態様の一例によれば、患者に不安を与えることなく、リアルタイムに最適に処理を行えるシステムの性能値に合わせた処理が可能である。外来患者等のの受付処理においては、患者自身は受付を行った後で受付完了が通知されるまでにタイムラグがあると不安感があるが、実際には受付処理をしてから診療科への移動や、診療科前での診察待ち時間があるので、即座に受付処理を完了する必要は無い。こうして、運用に応じた最適な可変負荷処理が行えるので、電子カルテシステムにおいて、冗長的なシステム構成にならないよう、最低限のコストでシステム構築ができる。
【図面の簡単な説明】
【００１９】
【図１】電子カルテシステムの第１の実施形態の構成図である。
【図２】電子カルテシステムの第１の実施形態の説明図である。
【図３】電子カルテシステムの第２の実施形態の構成図である。
【図４】電子カルテシステムの第３の実施形態の構成図である。
【図５】電子カルテシステムの第４の実施形態の構成図である。
【図６】電子カルテシステムの第５の実施形態の構成図である。
【図７】電子カルテシステムの第６の実施形態の構成図である。
【図８】電子カルテシステムの第６の実施形態の説明図である。
【図９】電子カルテシステムの第７の実施形態の構成図である。
【図１０】電子カルテシステムの第８の実施形態の構成図である。
【図１１】電子カルテシステムの第９の実施形態の構成図である。
【図１２】電子カルテシステムの第１０の実施形態の構成図である。
【図１３】外来受付部１２０１の制御動作を示す動作フローチャートである。
【図１４】受付依頼処理部３０７の一部の制御動作を示す動作フローチャートである。
【図１５】受付依頼処理部３０７の一部と接続数最大値更新処理起動部４０６の制御動作を示す動作フローチャートである。
【図１６】疑似受付患者送信部４０７の制御動作を示す動作フローチャートである。
【図１７】接続数最大値管理エリア、現在接続数管理エリア、及び接続数最大値更新停止フラグのデータ構成例を示す図である。
【図１８】各実施形態を実現するシステムのハードウェア構成例を示す図である。
【図１９】従来技術の説明図（その１）である。
【図２０】従来技術の説明図（その２）である。
【発明を実施するための形態】
【００２０】
以下、各実施形態について図面を参照しながら詳細に説明する。
図１は、電子カルテシステムの第１の実施形態の構成図である。
外来患者が個々に持つ受付端末装置である電子カードホルダ１１１と、医事業務サーバ１０２との間に外来患者処理サーバ１０１が設けられる。
【００２１】
外来患者処理サーバ１０１において、患者受付部の一部である受付完了通知処理部１０３は、電子カードホルダ１１１から受付依頼を受信すると、実際には医事業務サーバ１０２で受付は完了していないが、電子カードホルダ１１１には受付完了を通知する。それと共に、受付完了通知処理部１０３は、受付依頼があった患者を、仮受付リスト１０６に追加する。すでに仮受付リスト１０６に登録されている患者があれば、リストの末尾への追加が行われる。
【００２２】
こうして、仮受付リスト１０６に患者が登録された後、受付依頼処理部１０４が、医事業務サーバ１０２の受付処理部１１０に対して受付依頼を発行する。受付依頼発行処理の過程において、タイムアウト判定部１０５は、予め定められたタイムアウト値でタイムアウトが発生するか否かを判定する。そして、タイムアウトが発生した場合、その時点の接続が医事業務サーバ１０２の接続数最大値１０７と判断される。以降は、受付依頼処理部１０４は、受付依頼処理の数が接続数最大値１０７を超える場合は、医事業務サーバ１０２の受付処理部１１０には受付依頼をそれ以上送信せずに受付依頼処理を終了し、接続数最大値１０７の範囲内で医事業務サーバ１０２との通信処理を行う。このとき、受付依頼処理部１０４は、仮受付リスト１０６を常に監視し、電子カードホルダ１１１からの受付依頼が発生しなくても、仮受付リスト１０６にデータがある限りは、接続数最大値１０７の範囲内で独立して受付依頼処理を実行する。タイムアウト判定部１０５は、受付依頼処理部１０４が医事業務サーバ１０２の受付処理部１１０に接続している過程で、更にタイムアウトが発生する場合、接続数最大値１０７をデクリメントしていく。
【００２３】
タイムアウト判定部１０５がタイムアウトを検出した後、疑似受付患者送信部１０８は、医事業務サーバ１０２の受付処理部１１０に対して、疑似患者データの受付依頼の発行を開始する。疑似患者データの受付依頼発行処理の過程において、タイムアウト判定部１０９は、予め定められたタイムアウト値でタイムアウトが発生するか否かを判定する。そして、タイムアウト判定部１０９は、タイムアウトが解消した場合、接続数最大値１０７をインクリメントする。
【００２４】
このようにして、医事業務サーバ１０２の受付処理部１１０に接続可能な受付処理の最大数が調整されながら、仮受付リスト１０６の上部から医事業務サーバ１０２の受付処理部１１０に受付処理が依頼されることで、全ての受付が完了していく。
【００２５】
第１の実施形態は、電子カードホルダ１１１と診察カードによる受付開始処理がなされることが前提である。第１の実施形態では、この受付処理の詳細に関しては特に方式を定めるものではないが、処理の流れの一例を説明する。まず、外来患者が病院に来院した際に、病院に置かれている携帯可能な電子カードホルダ１１１を受取り、予め病院から発行されている自己の診察カードを電子カードホルダ１１１に挿し込む。この際に、電子カードホルダ１１１は外来患者の受診カードのＩＣ部に登録されている患者情報を読み込み、短波無線などを利用して外来患者処理サーバ１０１に受付を依頼する。
【００２６】
医事業務サーバ１０２の状態の判断だけを行うならば、疑似患者受付データではなく、実データ（実際の患者の受付情報）でも判断は可能であるが、一旦タイムアウトが発生すると、医事業務サーバ１０２の負荷が解消されるまでには時間がかかるため、実データの送信、タイムアウト、リトライの繰返しが発生することになる。この繰返しにおいては、外来患者処理サーバ１０１の内部では、自己が管理する仮受付リスト１０６へのアクセスと更新を繰り返さなければならず、処理が冗長的になることで外来患者処理サーバ１０１に負荷がかかる。第１の実施形態に示されるように、状態を確認するだけの疑似患者データを使うことで、外来患者処理サーバ１０１内のリソースを最小限に抑えることが可能となる。
【００２７】
更に、第１の実施形態では、以下のように、送信データの役割を明確化できることも特徴である。
疑似患者受付データ：
タイムアウト発生＝接続数最大値１０７の維持
タイムアウト発生せず＝接続数最大値１０７の増加
本受付データ：
タイムアウト発生＝接続数最大値１０７の軽減
タイムアウト発生せず＝接続数最大値１０７の維持
【００２８】
未定義のコマンドによるエラーレスポンスでタイムアウトを測ることもできるが、未定義コマンドでは医事業務サーバ１０２の受付処理部１１０に到達する前にリターンが返るので、受付処理そのものの負荷状態が測れない。疑似患者受付データを用いることで、医事業務サーバ１０２の受付処理部１１０まで到達するので、受付処理における正確なタイムアウトが判定できる。更に、疑似患者受付データであれば、受付処理と同一処理ルーチンが利用できるので、外来患者処理サーバ１０１内に特定処理ルーチンを構築する必要もない。
【００２９】
第１の実施形態では、図２に示されるように、電子カルテシステムを用いた外来患者の受付処理において、外来患者が電子カードホルダに個人を特定することができる診察カードを挿し込む方式で、多数の患者が同時に受付処理をすることを前提とする。この場合に、医事業務サーバの処理能力を超える受付依頼に関しては、医事業務サーバの前段に設けた外来患者処理サーバにて、正式に受付が完了していなくても外来患者処理サーバから外来患者が持つ電子カードホルダに受付完了通知を出す。そして、医事業務サーバの負荷状態をリアルタイムに判断しながら接続数を可変で制限し、医事業務サーバが担う様々な医事業務に悪影響を与えることなく受付処理を完了させるものである。
【００３０】
図３は、電子カルテシステムの第２の実施形態の構成図である。
外来患者はまず、受付端末装置である電子カードホルダ３１０と診察カードにより受付を行う。こうして発行された受付情報は、外来患者処理サーバ３０１の患者受付部の一部である仮受付リスト登録部３０３で受信され、仮受付リスト３０５の末尾に登録される。これとと共に、患者受付部の一部である受付完了通知部３０４は、実際には医事業務サーバ３０２に対して受付処理は完了していないが、電子カードホルダ１１１に対して受付完了通知を発行する。
【００３１】
仮受付リスト登録確認部３０６は、仮受付リスト３０５に追加があったか否か、即ち外来患者受付があったか否かを監視する。仮受付リスト登録確認部３０６が仮受付リスト３０５に追加があったと判断すると、受付依頼処理部３０７が、医事業務サーバ３０２の受付処理部３０９に対して該当患者の受付を依頼する。この処理は、仮受付リスト３０５の登録数に応じて複数の処理（即ち複数スレッド）が同時に実行される。
【００３２】
医事業務サーバ状態判断部３０８は、医事業務サーバ３０２の受付処理部３０９が適切にレスポンスを返しているかを状態判定し、一定のタイムアウトが発生しているなら、医事業務サーバ３０２への接続数最大値をタイムアウトが発生しない接続数まで軽減する。また、医事業務サーバ状態判断部３０８は、タイムアウトの発生なく適切に処理が完了しているのであれば、接続数最大値を増加して、仮受付リスト３０５に登録された患者の受付を完了させる。
【００３３】
以上の第２の実施形態の構成により、実際には受付が完了していないにもかかわらず、患者には受付直後に遅延なく受付完了通知を出すことができるので患者への安心感を与えられる。これと共に、医事業務サーバ３０２への接続数を制限することにより、受付処理以外にも多くの医事業務を担う医事業務サーバ３０２への負荷を軽減させることが可能となる。
【００３４】
なお、第２の実施形態において、電子カードホルダ３１０からの受付依頼は、仮受付リスト３０５の末尾に登録されるように構成されている。これは受付された優先順を示すためであり、ナンバリング、或いは受付受信時間を用いて受付された順番が判断できるのであれば、仮受付リスト３０５の末尾に限らず、先頭に登録しても、ランダムに登録してもかまわないことは言うまでもない。
【００３５】
図４は、電子カルテシステムの第３の実施形態の構成図である。
第３の実施形態は、図３の第２の実施形態を更に詳細化したものである。図４において、図３の第２の実施形態の場合と同じ番号が付された部分は図３の場合と同じ処理を実行する。
【００３６】
患者受付部の一部である外来受付処理部４０１を介して仮受付リスト登録部３０３が外来患者の受付けを行う過程から、受付依頼処理部３０７が医事業務サーバ３０２に受付依頼をするまでの流れは、図３の第２の実施形態の場合と同様である。
【００３７】
受付依頼処理部３０７は、医事業務サーバ３０２への接続時に、医事業務サーバ現在接続数管理部４０５をインクリメントする。そして、受付依頼処理部３０７は、医事業務サーバ３０２から正常にレスポンスが返される、或いは以下に示すタイムアウトが発生した場合、接続を切断して医事業務サーバ現在接続数管理部４０５をデクリメントし、医事業務サーバ３０２への接続中の数を管理する。
【００３８】
タイムアウト判定部４０２は、受付処理依頼部３０７が医事業務サーバ３０２に受付依頼をする際に、タイムアウト値定義部４０３に予め設定済みのタイムアウト値でタイムアウトが発生するかどうかを監視する。
【００３９】
タイムアウト判定部４０２は、タイムアウトの発生を判定した場合、医事業務サーバ３０２の処理能力が限界であると判断して、医事業務サーバ接続数最大値管理部４０４に、その時点で滞りなく処理が完了している医事業務サーバ３０２への接続数を設定する。
【００４０】
以降、受付依頼処理部３０７は、医事業務サーバ３０２に接続する際には、医事業務サーバ現在接続数管理部４０５と医事業務サーバ接続数最大値管理部４０４を参照し、医事業務サーバ３０２が処理可能な接続数にて受付処理を行う。
【００４１】
また、タイムアウト判定部４０２がタイムアウトを検知した場合、接続数最大値更新処理起動部４０６は、唯一の疑似受付患者送信部４０７を起動する。疑似受付患者送信部４０７は、医事業務サーバ３０２に対して、実際には存在しない患者ＩＤで、受付依頼処理部３０７と同様のコマンドを発行する。
【００４２】
この処理にて、継続的にタイムアウトが発生する、即ち、医事業務サーバ３０２から継続的に患者ＩＤエラーが返されるのであれば、疑似受付患者送信部４０７は繰り返し、実際には存在しない患者ＩＤで受付処理を実行する。
【００４３】
タイムアウトが解消されるのであれば、タイムアウト判定部４０２が、医事業務サーバ接続数最大値管理部４０４の値をインクリメントすることで、医事業務サーバ３０２に接続可能な値を増加させる。
【００４４】
このようにして、第３の実施形態では、リアルタイムに医事業務サーバ３０２の処理能力を判断し、可変接続処理を行うことで、医事業務サーバ３０２に過度な負荷をかけることなく、適切な受付処理を完了させることが可能となる。
【００４５】
図５は、電子カルテシステムの第４の実施形態の構成図である。
図５において、図３の第２の実施形態の場合と同じ番号が付された部分は図３の場合と同じ処理を実行する。
【００４６】
第４の実施形態では、外来患者処理サーバ３０１は、医事業務サーバ３０２から、診察予約者が確定した日、又は診察日の受付け開始時間までに診察予約者の一覧を取得する。そして、外来患者処理サーバ３０１は、診察日に外来患者が診察を行った際に、その患者が診察予約をしているかどうかを判断することにより、診察の予約があれば受け付け処理に移行する。一方、診察予約がなければ、外来患者処理サーバ３０１は、電子カードホルダ３１０に診察予約がないので受付けができないことを通知する。
【００４７】
図５において、仮受付リスト登録部３０３が外来患者の受付けを行う過程から、受付依頼処理部３０７が医事業務サーバ３０２に受付依頼をするまでの流れは、図３の第２の実施形態の場合と同様である。
【００４８】
医事業務サーバ３０２では、診察予約リスト部５０３が、予め診察予約者のリストを保存管理している。
外来患者処理サーバ３０１では、前述したように受付が開始されるまでに、診察予約リスト取得部５０４が、診察予約リストを取得して、診察予約リスト保存部５０５に保存する。
【００４９】
外来患者が受付を行った時に、外来患者処理サーバ３０１では、診察予約確認部５０２が、診察予約リスト保存部５０５を参照し、該当患者が診察予約しているかどうかを判断する。診察予約確認部５０２は、該当患者が診察予約していると判断すれば、該当患者の電子カードホルダ３１０に受付通知を行い、仮受付リスト登録部３０３での仮受付処理に移行する。一方、診察予約確認部５０２は、該当患者が診察予約していないと判断すれば、診察予約エラー通知部５０１を起動する。診察予約エラー通知部５０１は、該当患者の電子カードホルダ３１０に、予約されていないことを通知する。
【００５０】
なお、診察予約リスト取得部５０４が診察予約リストを取得するタイミングは、第４の実施形態では、診察日の受付け開始時間までとされているが、終日の診療を行う病院によっては当日の診察予約を行う場合もある。このような場合には、診察予約リスト取得部５０４は、医事業務サーバ３０２の診察予約リスト部５０３が変更されたときに変更内容を受取るように構成することもできる。これにより、診察の受付けが始まってからでも診察予約リスト部５０３の変更に対応することができる。
【００５１】
第４の実施形態により、明らかにエラーとなる受付情報を医事業務サーバ３０２に送信せず、医事業務サーバ３０２に無駄な負荷をかけることなく、適切な受付処理を完了させることが可能となる。
【００５２】
図６は、電子カルテシステムの第５の実施形態の構成図である。
図６において、図３の第２の実施形態又は図５の第４の実施形態の場合と同じ番号が付された部分は図３又は図５の場合と同じ処理を実行する。
【００５３】
第５の実施形態では、外来患者処理サーバ３０１は、医事業務サーバ３０２から、診察予約者が確定した日、又は診察日の受付け開始時間までに診察予約者の一覧を取得する。そして、外来患者処理サーバ３０１は、診察の予約がない場合でも、診察予約が必要でない診療科への受診であれば受付処理を行い、診察予約が必要な診療科であれば電子カードホルダ３１０に診察予約がないので受付ができないことを通知する
【００５４】
基本的な動作は、図５の第４の実施形態の場合と同じであるが、外来患者処理サーバ３０１では、外来患者の電子カードホルダ３１０からの受付を受信した際に、診察予約・診察予約必要診療科確認部６０１が、診察予約リスト保存部５０５に問い合わせる。そして、診察予約・診察予約必要診療科確認部６０１は、受付処理中の外来患者が診察予約をしていれば、該当患者の電子カードホルダ３１０に受付通知を行い、仮受付リスト登録部３０３での仮受付処理に移行する。一方、診察予約・診察予約必要診療科確認部６０１は、受付処理中の外来患者が診察予約をしていなければ、該当患者が受診しようとする診療科が診察予約を必要とする診療科かどうかを判断する。そして、その診療科が診察予約診察予約が必要な診療科であれば、診察予約・診察予約必要診療科確認部６０１は、診察予約エラー通知部５０１を起動する。診察予約エラー通知部５０１は、該当患者の電子カードホルダ３０１に、予約されていないことを通知する。一方、上述の診療科が診察予約診察予約が必要ない診療科であれば、診察予約・診察予約必要診療科確認部６０１は、該当患者の電子カードホルダ３１０に受付通知を行い、仮受付リスト登録部３０３での仮受付処理に移行する。
【００５５】
第５の実施形態により、医事業務サーバ３０２に無駄な負荷をかけることなく、適切な受付処理を完了させることが可能なうえに、第４の実施形態の場合よりも更に自由度の高いシステムを構築することが可能となる。
【００５６】
図７は、電子カルテシステムの第６の実施形態の構成図である。
図７において、図３の第２の実施形態、図５の第４の実施形態、又は図６の第５の実施形態の場合と同じ番号が付された部分は図３、図５、又は図６の場合と同じ処理を実行する。
【００５７】
第６の実施形態では、外来患者処理サーバ３０１は、医事業務サーバ３０２から、診察予約者が確定した日、又は診察日の受付け開始時間までに診察予約者の一覧を取得する。そして、外来患者処理サーバ３０１は、診察の予約がない場合でも、診察予約が必要でない診療科への受診であれば受付処理を行い、診察予約が必要な診療科であれば電子カードホルダ３１０に診察予約がないので受付ができないことを通知するただし、外来患者処理サーバ３０１は、基本的には診察予約を必要とするが、診察予約がなくとも外来を受け入れる診療科であれば、受付けを行う。
【００５８】
基本的な動作は、図６の第５の実施形態の場合と同じであるが、外来患者処理サーバ３０１では、外来患者の電子カードホルダ３１０からの受付を受信した際に、診察予約・診察予約必要診療科確認部７０１が、診察予約リスト保存部５０５に問い合わせる。
そして、同確認部７０１は、外来患者が受付を行った診療科が、診察予約の必要がない診療科か、診察予約が必要な（即ち診察予約がなければ診察しない）診療科か、診察予約があれば優先的に診療を行うが診察予約がなくても診療を受付ける診療科かを判断する。
【００５９】
上述の診療科が、診察予約の必要がない診療科である場合、及び診察予約が必要な診療科である場合の処理は、図６の第５の実施形態における診察予約・診察予約必要診療科確認部６０１による処理と同じである。
【００６０】
一方、上述の診療科が、診察予約があれば優先的に診療を行うが診察予約がなくても診療を受付ける診療科であれば、診察予約・診察予約必要診療科確認部７０１は、受付順番調整部７０２を起動する。受付順番調整部７０２は、受付順番を調整して、仮受付リスト登録部３０３に仮受付リスト部３０５へ登録を行わせる。
【００６１】
図８は、受付順番調整部７０２の処理の説明図である。受付順番調整部７０２は、仮受付リスト登録部３０３に対して、通常は受付された順番で、仮受付リスト３０５の末尾への患者情報の登録を行わせる。このとき、図８に示されるように、受付順番調整部７０２は、仮受付リスト登録部３０３に対して、予約患者を優先しながら並べ替えを行ってリストを作成させる。
【００６２】
なお図８では、説明を簡略化するために、仮受付リスト３０５は診療科を示すフィールドを持っていないが、例えば更に仮受付リスト３０５に「診療科フィールド」を設けて、全ての受付を１つの仮受付リスト３０５で管理するように構成することも可能である。
【００６３】
第６の実施形態により、複数の診療科がある大規模な病院において、診療科毎の診察方針に適したシステム構築が可能となる。
【００６４】
図９は、電子カルテシステムの第７の実施形態の構成図である。
図９において、図３の第２の実施形態、図５の第４の実施形態、図６の第５の実施形態、又は図７の第６の実施形態の場合と同じ番号が付された部分は図３、図５、図６、又は図７の場合と同じ処理を実行する。
【００６５】
第７の実施形態では、複数の診療科がある大規模な病院のケースが対象となる。このケースにおいて、診察予約者が優先して診察される際に、外来患者処理サーバ３０１からの全ての仮受付リスト３０５が一旦医事業務サーバ３０２にて受付完了された後に更に外来患者が来た場合、次のような制御が行われる。即ち、外来患者処理サーバ３０１は、第５，第６の実施形態の場合と同様にして受付処理を完了させた後に、医事業務サーバ３０２から現在の受付済リスト９０２を取得し、診察予約の有無から受付済リストの並べ替えを行う。そして、外来患者処理サーバ３０１は、受付依頼処理のコマンドとは別に、医事業務サーバ３０２に受付済リストを送信して、医事業務サーバ３０２の受付済リスト９０２を上書きすることで、予約患者を優先するように動作する。
【００６６】
より具体的には、外来患者処理サーバ３０１において、外来患者からの受付があれば第６の実施形態の場合と同様の手順で受付処理を実行する。
その際、受付済リスト取得部９０１が、医事業務サーバ３０２に既に受付済リスト９０２があるかどうかを確認する。もちろん、医事業務サーバ３０２に確認しなくても、外来患者処理サーバ３０１内部で受付けを行った過程を記憶しておく方式が採用されてもよい。
【００６７】
医事業務サーバ３０２に受付済リスト９０２があれば、受付済リスト取得部９０１は医事業務サーバ３０２から受付済リスト９０２を取得する。そして、その受付済リスト９０２を、受付済リスト保存部９０３が保存する。
【００６８】
受付済みリスト９０２があったのであれば、受付済リスト更新部９０４が、次の動作を実行する。即ち、受付済リスト更新部９０４は、受付が行われた患者が診察予約をしているかどうかを判断する。そして、診察予約があれば、受付済リスト更新部９０４は、その患者情報を診察予約がない患者情報よりもリストの上位に並べ替えを行い、受付済みリスト９０２を更新する。
【００６９】
こうして更新が行われた受付済みリスト９０２を、上書き受付済リスト送信部９０５が医事業務サーバ３０２に送信する。医事業務サーバ３０２は、外来患者処理サーバ３０１から受診した新たなリストで、受付済リスト９０２を更新して処理を終了する。
【００７０】
第７の実施形態により、一旦は仮受付リスト３０５中の外来患者をすべて受付終了させた後に新たに外来患者の受付があった場合でも、診察予約のある患者を優先しながら処理を行うことが可能となる。
【００７１】
図１０は、電子カルテシステムの第８の実施形態の構成図である。
図１０において、図３の第２の実施形態の場合と同じ番号が付された部分は図３の場合と同じ処理を実行する。
【００７２】
第８の実施形態は、前述した第１〜第７の実施形態による電子カルテシステムにおいて、電子カードホルダ３１０と外来患者処理サーバ３０１の間を流れる無線データの一部、又は全てを暗号化するものである。
【００７３】
電子カードホルダ３１０は、電子カードホルダデータ送信部１００２が受付情報を外来患者処理サーバ３０１に無線で送信する際に、通信データ暗号化部１００１が送信データを暗号化する。
【００７４】
外来患者処理サーバ３０１では、電子カードホルダデータ受信部１００３が電子カードホルダ３１０からのデータを受信後、内部処理部１０１０が第１〜第７の実施形態に対応する内部処理を行う前に、通信データ復号部１００４が暗号化データを復号する。
【００７５】
また、外来患者処理サーバ３０１の受付完了通知送信部１００６が、電子カードホルダ３１０に受付完了通知を送信する際に、通信データ暗号化部１００５が受付完了通知の暗号化を行う。
【００７６】
電子カードホルダ３１０では、受付完了通知受信部１００７が、外来患者処理サーバ３０１から暗号化された受付完了通知を受信後、それを通信データ復号部１００８で暗号化し、表示部１００９で通知内容を表示する。
【００７７】
第８の実施形態において、暗号化の方式に関しては、一般的に公知である暗号化方式を用いればよい。暗号化方式の例としては、共通鍵方式のＤＥＳ（Data Encryption Standard）や、公開鍵方式のＲＳＡ暗号（Rivest, Shamir, Adleman's method）が一般的である。これらを、システムが実現すべき堅牢性に合わせて採用すればよい。
【００７８】
電子カードホルダ３１０と外来患者処理サーバ３０１の間を流れる通信データに無線を用いる場合、無線という性質上、第三者に傍受・ハッキングされる可能性があり、更にデータには患者の個人情報が含まれるので、第８の実施形態の構成により、システムの堅牢性を保つことが可能となる。
【００７９】
図１１は、電子カルテシステムの第９の実施形態の構成図である。
図１１において、図３の第２の実施形態の場合と同じ番号が付された部分は図３の場合と同じ処理を実行する。
【００８０】
第９の実施形態は、前述した第１〜第７の実施形態による電子カルテシステムにおいて、外来患者処理サーバ３０１と医事業務サーバ３０２の間を流れるデータの一部、又は全てを暗号化するものである。
【００８１】
外来患者処理サーバ３０１では、内部処理部１０１０が第１〜第７の実施形態に対応する内部処理を行って得られる受付情報を、受付データ送信部１１０３が医事業務サーバ３０２に無線で送信する際に、通信データ暗号化部１１０２が送信データを暗号化する。
【００８２】
医事業務サーバ３０２では、通信データ受信部１１０４が外来患者処理サーバ３０１からのデータを受信した後、受付処理部１１０６が受付処理を行う前に、通信データ復号部１００５が暗号化された受信データを復号する。
【００８３】
医事業務サーバ３０２では、通信データ送信部１１０８が外来患者処理サーバ３０１に受付完了通知を送信する際に、通信データ暗号部１１０７が受付処理部１１０６からの受付完了通知データを暗号化し、通信データ送信部１１０８に引き渡す。
【００８４】
外来患者処理サーバ３０１では、処理結果受信部１１０９が暗号化された受付完了通知データを受信後、通信データ復号部１１１０がそのデータを復号し、内部処理部１１０１に引き渡す。
【００８５】
第８の実施形態の場合と同様に、第９の実施形態において、暗号化の方式に関しては、一般的に公知である暗号化方式を用いればよい。
外来患者処理サーバ３０１と医事業務サーバ３０２は、ＬＡＮ（Local Area Network）で接続されているものであるが、ＬＡＮ等のネットワークを経由するデータを暗号化することは、堅牢性の維持には重要である。また、無線ＬＡＮを用いている場合は特に第三者に傍受・ハッキングされる可能性があるので、第９の実施形態の構成により、システムの堅牢性を保つことができる。
【００８６】
図１２は、電子カルテシステムの第１０の実施形態の構成図である。
図１２において、図３の第２の実施形態、図４の第３の実施形態の場合と同じ番号が付された部分は図３、図４の場合と同じ処理を実行する。
【００８７】
第９の実施形態は、第２，第３，第４の実施形態における処理を更に具体的に開示するものである。
以降の説明は、受付イベントが発生した際の外来患者処理サーバ３０１の内部処理に絞って説明する。よって、複数の電子カードホルダ３１０から同時に発生する受付処理イベント、医事業務サーバ３０２内部での受付処理の詳細、及び外来患者処理サーバ３０１が定時処理にて受付開始までに診察予約リストを取得する流れについては、省略する。
【００８８】
外来患者処理サーバ３０１で、電子カードホルダ３１０からの受付依頼を受取った際に、仮受付リスト３０５に受付患者を登録し、電子カードホルダ３１０に受付完了通知を発行する処理の流れを、図１３の動作フローチャートで説明する。この制御動作は、図１２の患者受付部の一部である外来受付部１２０１に対応し、例えば後述する図１８のハードウェア構成を有する外来患者処理サーバ３０１のＣＰＵ１８０１が、メモリ１８０２に記憶された制御プログラムを実行する動作として実現される。
【００８９】
まず、電子カードホルダ３１０から受付データが受信されると、予め医事業務サーバ３０２から取得してある診察予約リストが参照され（ステップＳ１３０１）、一致する患者（又は患者ＩＤ等の識別情報）が存在するかを確認される（ステップＳ１３０２）。
【００９０】
一致する患者がなくステップＳ１３０２の判定がＮＯならば、診察予約がないことを意味するので、受付依頼を発行した電子カードホルダ３１０に診察予約がないことが通知される（ステップＳ１３０３）。そして、再び電子カードホルダ３１０からの受付依頼を待つ待機状態となる。
【００９１】
一致する患者がなくステップＳ１３０２の判定がＹＥＳ（診察予約がある）ならば、受付データが示す患者が仮受付リスト３０５に登録される（ステップＳ１３０５）。
この時点では医事業務サーバ３０２への受付は完了していないが、受付依頼を行った電子カードホルダ３１０に対し受付完了通知が行われる（ステップＳ１３０４）。こうして、外来患者にはあたかも受付が完了しているように通知することで安心感を与えることが可能となる。その後、再び電子カードホルダ３１０からの受付依頼を待つ待機状態とする。
【００９２】
仮受付リスト３０５が管理する仮受付リストとしては、例えば図８で説明したテーブルを使えばよいし、更にシステムが必要とするフィールドを定義してもよい。
【００９３】
以上説明した図１３の動作フローチャートの制御動作によって実現される外来受付部１２０１は、ソケットなどの電文受信トリガから複数のスレッドで起動され、各電子カードホルダ３１０に対応する複数のスレッドが同時に実行される。そして、該当患者（即ち、電子カードホルダ３１０）に受付完了通知を発行した後は、スレッドは破棄されて電子カードホルダ３１０からの受付依頼が待たれる。
【００９４】
次に、図１２の受付依頼処理部３０７を実現する制御動作について、図１４の動作フローチャートによって説明する。受付依頼処理部３０７は、上述の外来受付部１２０１にて作成・追加される仮受付リスト３０５の仮受付リストを監視し、医事業務サーバ３０２の負荷状態を判断しながら、医事業務サーバ３０２に過度の負荷をかけずに受付依頼を行う。この受付依頼処理部３０７の制御動作は、例えば後述する図１８のハードウェア構成を有する外来患者処理サーバ３０１のＣＰＵ１８０１が、メモリ１８０２に記憶された制御プログラムを実行する動作として実現される。
【００９５】
このとき、仮受付リスト３０５にデータが登録されるかが監視されて、仮受付リスト３０５に何もデータが無い状態から仮受付が発生すれば、受付依頼処理部３０７が動作を開始し、仮受付リスト３０５からデータがなくなるまで処理を継続するものである。
【００９６】
最初に仮受付リスト３０５にデータが登録されることが監視される（ステップ１４０１→Ｓ１４０２→Ｓ１４０１の繰返し処理）。この処理は、一定周期で実施されてもよいし、データベース機能であるイベント発生処理を用いて、データが登録された時点でデータベースからイベントを発生させる、イベントドリブン方式で実行されてもよい。
【００９７】
仮受付リスト３０５にデータが登録されステップＳ１４０２の判定がＹＥＳとなると、接続数最大値管理エリアと現在接続数管理エリアへのアクセスが行われ、それぞれのエリアから接続数最大値と現在接続数が確認される（ステップＳ１４０３）。接続数最大値管理エリアは図１２の医事業務サーバ接続数最大値管理部４０４に対応し、現在接続数管理エリアは図１２の医事業務サーバ現在接続数管理部４０５に対応し、それぞれ例えば図１８のメモリ１８０２上に確保されているエリアである。
【００９８】
そして、医事業務サーバ３０２との現在接続数が、既に接続数最大値に達しているか否かが判定される（ステップＳ１４０４）。接続数最大値の初期値としては、この値を管理する変数が許容する最大値を定義しておけばよい。変数が定義できる最大値とは、たとえば整数型であれば６５５３５である。実際には、以降に説明する処理にて１回でもタイムアウトが発生すれば、その時の現在接続数が接続数最大値となるので、タイムアウトが発生するまでは医事業務サーバ３０２への接続を制限する必要は無い。
【００９９】
現在接続数が接続数最大値に達しておらずステップＳ１４０４の判定がＮＯなら、現在接続数管理エリアがインクリメントされ（ステップＳ１４０５）、以下に説明する受付待機者受付処理が起動される（ステップＳ１４０６）。
受付待機者受付処理が終了後は、ステップＳ１４０１の処理に戻る。
【０１００】
次に、上述の図１４の動作フローチャートから起動される受付待機者受付処理について、図１５の動作フローチャートを用いて説明する。この処理は、最大で、接続数最大値のスレッド数で起動される。この受付待機者受付処理は、図１４の動作フローチャートと共に図１２の受付依頼処理部３０７を実現し、また、接続数最大値更新処理起動部４０６を実現するものである。そして、例えば後述する図１８のハードウェア構成を有する外来患者処理サーバ３０１のＣＰＵ１８０１が、メモリ１８０２に記憶された制御プログラムを実行する動作として実現される。
【０１０１】
まず、医事業務サーバ３０２に受付依頼を実行するために、仮受付リスト３０５の先頭から参照して取得可能な患者情報が取得される（ステップＳ１５０１）。この際、例えば図８に示されるように、仮受付リスト３０５において、同時に実行される他のスレッドで医事業務サーバ３０２に対して受付依頼が実行されているレコードについては、「医事業務サーバ処理中」フィールドに値「Ｔｒｕｅ」が記憶される。逆に、受付依頼が実行されていないレコードについては、値「Ｆａｌｓｅ」が記憶される。これによって、複数のスレッド間で、１つの患者情報に対する処理が重複しないように制御される。ステップＳ１５０１では、仮受付リスト３０５の先頭から検索して「医事業務サーバ処理中」フィールドに値「Ｆａｌｓｅ」が記憶されている患者情報が取得される。このようにして、受付依頼を行うべき患者情報が仮受付リスト３０５から取得される。
【０１０２】
次に、医事業務サーバ３０５からの応答のタイムアウト時間が特には図示しないタイマに設定される（ステップＳ１５０２）。このタイムアウト値については、予め一定の値で決めてもよいが、自由に設定値を変えることができるようにデータベースに定義しておくのが望ましい。
【０１０３】
続いて、医事業務サーバ３０５に対して外来患者受付処理依頼のコマンドが発行される（ステップＳ１５０３）。このとき同時に、仮受付リスト３０５の該当レコードの「医事業務サーバ処理中」フィールドに値「Ｔｒｕｅ」が記憶される。
【０１０４】
その後、医事業務サーバ３０５からの応答待ち状態となり、ステップＳ１５０２で設定したカウンタがタイムアウトしたか否かが監視される（ステップＳ１５０４）。
タイムアウトが発生せずに医事業務サーバ３０５から応答があってステップＳ１５０４の判定がＮＯとなると、その応答のリターン値が確認されることにより、医事業務サーバ３０２にて正常に受付が完了したか否かが判定される（ステップＳ１５０５）。
【０１０５】
正常受付で無い場合としては、例えばコマンドエラーなどが考えられる。その場合は、システムが独自に定義するエラー処理に移行すればよい（ステップＳ１５０５の判定がＮＯ）。
【０１０６】
正常に受付が完了しステップＳ１５０５の判定がＹＥＳとなると、仮受付リスト３０５から、受付が完了した患者情報に対応する処理レコードが削除される（ステップＳ１５０６）。ここで、受付履歴を残すために、レコード自体は削除せず、受付が完了したレコードかどうかを示すフラグが設定されるように構成されてもよい。
【０１０７】
その後、仮受付リスト３０５に更に受付けを行うべきレコードが存在するかどうかがチェックされる（ステップＳ１５０７）。
更に受付けを行うべきレコードが存在しステップＳ１５０７の判定がＹＥＳならば、ステップＳ１５０１の処理に戻り、新たな患者情報が取得される。
【０１０８】
更に受付けを行うべきレコードが存在しステップＳ１５０７の判定がＮＯならば、現在接続数がデクリメントされて現在接続数管理エリアに書き込まれる（ステップＳ１５０８）。
【０１０９】
その後、現在接続数が０になった（即ち全てのスレッドが完了した）か否かが判定される（ステップＳ１５０９）。
現在接続数が０ではなくステップＳ１５０９の判定がＮＯならば、そのまま図１５の動作フローチャートの受付待機者受付処理を終了し、図１４のステップＳ１４０１の処理に戻る。
現在接続数が０になってステップＳ１５０９の判定がＹＥＳならば、接続数最大値が初期化されその値が接続数最大値管理エリアに書き込まれる（ステップＳ１５１０）。
【０１１０】
次に、接続数最大値更新処理停止フラグがＯＮにされる（ステップＳ１５１１）。接続数最大値更新処理停止フラグの意味については後述する。
その後、図１５の動作フローチャートの受付待機者受付処理を終了し、図１４のステップＳ１４０１の処理に戻る。
【０１１１】
前述のステップＳ１５０３での外来患者受付処理依頼の後の医事業務サーバ３０５からの応答待ち状態において、タイムアウトが発生してステップＳ１５０４の判定がＹＥＳとなると、以下の一連の処理が実行される。本実施形態では、この時点が医事業務サーバ３０２の処理性能の限界であると認識される。
【０１１２】
このとき、接続数最大値が医事業務サーバ３０２への現在接続数から１を減算した値に設定され、その値が接続数最大値管理エリアに設定される（ステップＳ１５１２）。
次に、後述する接続数最大値更新処理が起動されているか否かが判定される（ステップＳ１５１３）。
【０１１３】
接続数最大値更新処理が起動されておらずステップＳ１５１３の判定がＮＯならば、接続数最大値更新処理停止フラグがＯＦＦにされた後（ステップＳ１５１４）、接続数最大値更新処理が起動される（ステップＳ１５１５）。接続数最大値更新処理停止フラグは、接続数最大値更新処理が起動されているか（ＯＮ）否か（ＯＦＦ）を示す。このステップＳ１５１４とＳ１５１５の処理は、図１２の接続数最大値更新処理起動部４０６を実現するものである。
【０１１４】
その後、現在接続数がデクリメントされて（ステップＳ１５１６）、図１５の動作フローチャートの受付待機者受付処理を終了し、図１４のステップＳ１４０１の処理に戻る。
【０１１５】
最後に、上述のステップＳ１５１５にて起動された接続数最大値更新処理について、図１６の動作フローチャートを用いて説明する。
この接続数最大値更新処理は、図１２の疑似受付患者送信部４０７を実現するものである。そして、例えば後述する図１８のハードウェア構成を有する外来患者処理サーバ３０１のＣＰＵ１８０１が、メモリ１８０２に記憶された制御プログラムを実行する動作として実現される。
【０１１６】
また、この処理は、唯一の処理として起動されるものであり、複数のスレッド処理として同時に実行されるものではない。
まず、処理が起動されると、医事業務サーバ３０２に送信するための疑似受付患者情報が作成される（ステップＳ１６０１）。ここで、実際の患者データではなく、疑似受付患者データを用いる理由は、既に前述した。
【０１１７】
次に、図１５の場合（ステップＳ１５０２）と同様にして、医事業務サーバ３０５からの応答のタイムアウト時間が特には図示しないタイマに設定される（ステップＳ１６０２）。
【０１１８】
続いて、医事業務サーバ３０５に対して疑似受付患者に関する外来患者受付処理依頼のコマンドが発行される（ステップＳ１６０３）。
その後、医事業務サーバ３０５からの応答待ち状態となり、ステップＳ１６０２で設定したカウンタがタイムアウトしたか否かが監視される（ステップＳ１６０４）。
【０１１９】
医事業務サーバ３０２が、例えば受付処理以外のプロセスを完了するなどして更に受付処理が可能となっているのであれば、タイムアウトは解消されステップＳ１６０４の判定はＮＯとなる。この場合には、接続数最大値がインクリメントされ、接続数最大値管理エリアに書き込まれる（ステップＳ１６０５）。なお、ステップＳ１６０３の依頼コマンドは、本来は存在しない疑似患者に関するものであるため、医事業務サーバ３０２からの応答はエラー応答となるが、そのエラー値は無視される。
【０１２０】
上記ステップＳ１６０５の後又は医事業務サーバ３０５から応答がなくてタイムアウトが発生しステップＳ１６０４の判定がＹＥＳとなった場合には、前述の受付待機者受付処理（図１５のステップＳ１５１１）にて接続数最大値更新処理停止フラグがＯＮにされているか否かが判定される（ステップＳ１６０６）。
【０１２１】
接続数最大値更新処理停止フラグがＯＦＦのままでステップＳ１６０６の判定がＮＯならば、ステップＳ１６０３の処理に戻って、医事業務サーバ３０２に対して疑似受付患者に関する外来患者受付処理依頼のコマンド発行が続行され、処理能力の回復が待たれる。
【０１２２】
医事業務サーバ３０２での処理能力が回復し、前述の受付待機者受付処理により医事業務サーバ３０２への受付依頼が可能となると、図１５のステップＳ１５１１で、接続数最大値更新処理停止フラグがＯＮに変更される。この結果、ステップＳ１６０６の判定がＹＥＳとなって、接続数最大値更新処理が終了し、医事業務サーバ３０２に対する疑似受付患者に関する外来患者受付処理依頼のコマンド発行が停止する。
。
【０１２３】
図１７は、接続数最大値管理エリア、現在接続数管理エリア、及び接続数最大値更新停止フラグのデータ構成例を示す図である。これらのエリアは、例えば図１８のメモリ１８０２上、或いは、読み書き可能な外部記憶装置１８０５等に単独で定義してもよいが、３つの情報をまとめた図１７及び下記に示される構造体形式にして、管理を簡略化することも可能である。
/** 医事業務サーバ接続関連管理エリア構造体(例) ***/
typedef struct {
int    ConnectionPermitMax; // 接続数最大値管理エリア
int    NowConnection;       // 現在接続数
bool   ConnectionPermitMaxUpdateFlag;     // 接続数最大値更新処理停止フラグ
} ST_CONNECTION_MANAGEMENT;
【０１２４】
図１８は、上述した第１〜第１０の実施形態における外来患者処理サーバ３０１を実現できるコンピュータのハードウェア構成の一例を示す図である。
図１８に示されるコンピュータは、ＣＰＵ１８０１、メモリ１８０２、入力装置１８０３、出力装置１８０４、外部記憶装置１８０５、可搬記録媒体１８０９が挿入される可搬記録媒体駆動装置１８０６、及びネットワーク接続装置１８０７を有し、これらがバス１８０８によって相互に接続された構成を有する。同図に示される構成は上記システムを実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。
【０１２５】
ＣＰＵ１８０１は、当該コンピュータ全体の制御を行う。メモリ１８０２は、プログラムの実行、データ更新等の際に、外部記憶装置１８０５（或いは可搬記録媒体１８０９）に記憶されているプログラム又はデータを一時的に格納するＲＡＭ等のメモリである。ＣＵＰ１８０１は、プログラムをメモリ１８０２に読み出して実行することにより、全体の制御を行う。
【０１２６】
入力装置１８０３は、例えば、キーボード、マウス等及びそれらのインタフェース制御装置とからなる。入力装置１８０３は、ユーザによるキーボードやマウス等による入力操作を検出し、その検出結果をＣＰＵ１８０１に通知する。
【０１２７】
出力装置１８０４は、表示装置、印刷装置等及びそれらのインタフェース制御装置とからなる。出力装置１８０４は、ＣＰＵ１８０１の制御によって送られてくるデータを表示装置や印刷装置に出力する。
【０１２８】
外部記憶装置１８０５は、例えばハードディスク記憶装置である。主に各種データやプログラムの保存に用いられる。
可搬記録媒体駆動装置１８０６は、光ディスクやＳＤＲＡＭ、コンパクトフラッシュ（登録商標）等の可搬記録媒体１８０９を収容するもので、外部記憶装置１８０５の補助の役割を有する。
ネットワーク接続装置１８０７は、例えばＬＡＮ（ローカルエリアネットワーク）又はＷＡＮ（ワイドエリアネットワーク）の通信回線を接続するための装置である。
【０１２９】
第１〜第１０の各実施形態によるシステムは、それに必要な機能を搭載したプログラムをＣＰＵ１８０１が実行することで実現される。そのプログラムは、例えば外部記憶装置１８０５や可搬記録媒体１８０９に記録して配布してもよく、或いはネットワーク接続装置１８０７によりネットワークから取得できるようにしてもよい。
【０１３０】
医事業務サーバは、外来患者受付処理以外にも様々な医療に関する処理を司っている。例えば、カルテ管理、投薬処理、検査情報管理、会計処理などの様々な処理を行うものなので、いつの時点でサーバに負荷がかかるか判断ができない。上述の各実施形態の技術を用いることで、サーバの負荷をリアルタイムに判断しながら確実に受付処理を終わらせることができ、実際には医事業務サーバ３０２で受付処理が完了していなくても外来患者には受付完了通知を出すことができる。このため、患者に不安を与えることなく、リアルタイムに最適に処理を行えるシステムの性能値に合わせた処理が可能である。外来患者の受付処理においては、患者自身は受付を行った後で受付完了が通知されるまでにタイムラグがあると不安感があるが、実際には受付処理をしてから診療科への移動や、診療科前での診察待ち時間があるので、即座に受付処理を完了する必要は無い。こうして、運用に応じた最適な可変負荷処理が行えるので、電子カルテシステムにおいて、冗長的なシステム構成にならないよう、最低限のコストでシステム構築ができる
【符号の説明】
【０１３１】
１０１  外来患者処理サーバ
１０２  医事業務サーバ
１０３  受付完了通知処理部
１０４、３０７  受付依頼処理部
１０５、１０９  タイムアウト判定部
１０６、３０５  仮受付リスト
１０７  接続数最大値
１０８  疑似受付患者送信部
１１０、３０９、１１０６  受付処理部
１１１、３１０  電子カードホルダ
３０１  外来患者処理サーバ
３０２  医事業務サーバ
３０３  仮受付リスト登録部
３０４  受付完了通知部
３０６  仮受付リスト登録確認部
３０８  医事業務サーバ状態判断部
４０１  外来受付処理部
４０２  タイムアウト判定部
４０３  タイムアウト値定義部
４０４  医事業務サーバ接続数最大値管理部
４０５  医事業務サーバ現在接続数管理部
４０６  接続数最大値更新処理起動部
４０７  疑似受付患者送信部
５０１  診察予約エラー通知部
５０２  診察予約確認部
５０３  診察予約リスト部
５０４  診察予約リスト取得部
５０５  診察予約リスト保存部
６０１、７０１  診察予約・診察予約必要診療科確認部
７０２  受付順番調整部
９０１  受付済リスト取得部
９０２  受付済リスト
９０３  受付済リスト保存部
９０４  受付済リスト更新部
９０５  上書き受付済リスト送信部
１００１、１００５  通信データ暗号部
１００２  電子カードホルダデータ送信部
１００３  電子カードホルダデータ受信部
１００４、１００８  通信データ復号部
１００６  受付完了通知送信部
１００７  受付完了通知受信部
１００９  表示部
１０１０  内部処理部
１８０１  ＣＰＵ
１８０２  メモリ
１８０３  入力装置
１８０４  出力装置
１８０５  外部記憶装置
１８０６  可搬記録媒体駆動装置
１８０７  ネットワーク接続装置
１８０８  バス
１８０９  可搬記録媒体
【図１】
2010277345.tif 000003
【図２】
2010277345.tif 000004
【図３】
2010277345.tif 000005
【図４】
2010277345.tif 000006
【図５】
2010277345.tif 000007
【図６】
2010277345.tif 000008
【図７】
2010277345.tif 000009
【図８】
2010277345.tif 000010
【図９】
2010277345.tif 000011
【図１０】
2010277345.tif 000012
【図１１】
2010277345.tif 000013
【図１２】
2010277345.tif 000014
【図１３】
2010277345.tif 000015
【図１４】
2010277345.tif 000016
【図１８】
2010277345.tif 000017
【図１９】
2010277345.tif 000018
【図２０】
2010277345.tif 000019
【図１５】
2010277345.tif 000020
【図１６】
2010277345.tif 000021
【図１７】
2010277345.tif 000022