(57)【特許請求の範囲】
【請求項１】
サーバ装置と端末装置とをネットワーク介して接続したネットワークシステムにおいて、
前記サーバ装置に、アプリケーションプログラム、およびこのアプリケーションプログラムからの呼び出しに応じて前記端末装置での入出力制御を行うサーバ側入出力プログラムを設け、
前記端末装置に、前記サーバ側入出力プログラムにリンクして入出力動作を行うクライアント側入出力プログラムを設け、
さらに、前記サーバ側入出力プログラムは、所定時間内に前記クライアント側入出力プログラムにおいてリンクした入出力動作が行われないとき、および入出力動作に対する要求の応答が無い状態で、クライアント側から接続要求があった場合に、前記クライアント側入出力プログラムに再度同じ入出力動作を要求するプログラムであるネットワークシステム。
【請求項２】
前記クライアント側入出力プログラムは、サーバ側入出力プログラムに対して接続要求を行うプログラムである請求項１に記載のネットワークシステム。
【請求項３】
前記クライアント側入出力プログラムとサーバ側入出力プログラムとを無線ＬＡＮで接続する無線通信部を備えた請求項１または２に記載のネットワークシステム。
【請求項４】
前記端末装置は携帯端末である請求項３に記載のネットワークシステム。
【請求項５】
アプリケーションプログラムからの呼び出しに応じて、端末装置での入出力制御を行うサーバ側入出力プログラム、および、このサーバ側入出力プログラムにリンクして入出力動作を行うクライアント側入出力プログラムと、を備え、
さらに、前記サーバ側入出力プログラムは、所定時間内に前記クライアント側入出力プログラムにおいてリンクした入出力動作が行われないとき、および入出力動作に対する要求の応答が無い状態で、クライアント側から接続要求があった場合に、前記クライアント側入出力プログラムに再度同じ入出力動作を要求するプログラムであるエミュレータプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＬＡＮ等のネットワークを介してサーバ装置とクライアント装置とを接続したネットワークシステムおよび、このネットワークシステムに適用するエミュレータプログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
周知のように、クライアント−サーバ型のネットワークシステムは、サーバ装置が持つ機能（アプリケーション）をネットワークに接続されている各クライアント装置で共有することができるシステムである。
【０００３】
サーバ装置は、データを管理するアプリケーションを備えており、クライアント装置からの処理要求に応じて適当なアプリケーションを実行し、その処理結果をクライアント装置に送信する。一方、クライアント装置は、キーボード等の入力部において入力された入力データを含む上記の処理要求をサーバ装置に送信するだけでなく、入力データやサーバ装置から送信されてきた処理結果等を処理して画面表示や印字等の出力処理を実行する。このように、従来のクライアント−サーバ型のネットワークシステムは、サーバ装置とクライアント装置とで処理を分担していた。
【０００４】
【発明が解決しようとする課題】
しかしながら、サーバ装置とクライアント装置とで処理を分担するためには、両方の装置にアプリケーションが必要であった（サーバ装置にはデータを管理するアプリケーションが必要であり、クライアント装置には出力処理を行うアプリケーションが必要である。）。このため、ネットワークシステムを開発（構築）する場合には、サーバ装置およびクライアント装置について、それぞれアプリケーションを開発しなければならず、また、２つのアプリケーション間の通信の規定や２つのアプリケーションが行う処理の切り分け等の作業も必要であり、開発期間が長くかかるとともに開発コストが嵩むという問題があった。
【０００５】
また、サーバ装置およびクライアント装置に対して開発されたアプリケーションは、両装置間におけるデータ通信の信頼性等を含めた動作確認を行う場合、サーバ装置またはクライアント装置単体で行うことができなかった。すなわち、開発したアプリケーションのデバッグをサーバ装置またはクライアント装置単体で行うことができなかった。このため、特別な環境（実際に使用するネットワーク環境等）を作り、該環境で上記の動作確認を行っており、アプリケーションのデバッグにも手間がかかるという問題があった。
【０００６】
この発明の目的は、端末装置をサーバ装置のエミュレータとして機能させることにより、ネットワークシステムの構築時等におけるアプリケーション開発が容易に行えるネットワークシステム、および、該ネットワークシステムを構成する端末装置およびサーバ装置に適用するエミュレーションプログラムを記録した記録媒体を提供することにある。
【０００７】
【課題を解決するための手段】
請求項１に記載した発明は、サーバ装置と端末装置とをネットワーク介して接続したネットワークシステムにおいて、
前記サーバ装置に、アプリケーションプログラム、およびこのアプリケーションプログラムからの呼び出しに応じて前記端末装置での入出力制御を行うサーバ側入出力プログラムを設け、
前記端末装置に、前記サーバ側入出力プログラムにリンクして入出力動作を行うクライアント側入出力プログラムを設け、
さらに、前記サーバ側入出力プログラムは、所定時間内に前記クライアント側入出力プログラムにおいてリンクした入出力動作が行われないとき、および入出力動作に対する要求の応答が無い状態で、クライアント側から接続要求があった場合に、前記クライアント側入出力プログラムに再度同じ入出力動作を要求するプログラムである。
【０００８】
この構成では、サーバ装置に設けた端末装置での入出力制御を行うサーバ側入出力プログラムがアプリケーションプログラムの呼び出しに応じて起動され、このサーバ側入出力プログラムにリンクして端末装置に設けたクライアント側入出力プログラムが起動する。したがって、サーバ側においてサーバ側入出力プログラムを起動させると、端末装置に配置されたクライアント側入出力プログラムが起動する。これにより、端末装置をサーバ装置のエミュレータとして機能させることができる。ここで、端末装置をサーバ装置のエミュレータとして機能させるとは、実際にはサーバ装置上で実行されているアプリケーションに関する入出力が端末装置で行われるようにすることである。したがって、従来のようにクライアント装置に出力処理を行うアプリケーションを設ける必要がないので、サーバ装置に設けるアプリケーションを開発するだけでネットワークを構築することができる。よって、アプリケーションの開発期間の短縮および開発コストの低減を図ることができる。
【０００９】
また、前記サーバ側入出力プログラムは、所定時間内に前記クライアント側入出力プログラムにおいてリンクした入出力動作が行われないとき、前記クライアント側入出力プログラムに再度同じ入出力動作を要求するので、前記端末装置が処理途中に不慮の電断等で停止した場合であっても、端末装置が再度起動されると上記停止時の処理から再開される。したがって、端末装置における不慮の事故に対する信頼性を向上することができる。
【００１０】
また、前記クライアント側入出力プログラムは、サーバ側入出力プログラムに対して接続要求を行う構成を設けることにより、任意のタイミングで端末装置からサーバ装置に接続することができる。
また、前記クライアント側入出力プログラムとサーバ側入出力プログラムとを無線ＬＡＮで接続する無線通信部を備える、ことにより本案発明を無線ＬＡＮによるネットワークシステムにも適用することができる。
【００１１】
さらに、前記端末装置は携帯端末とすることによって、端末装置を持ち運ぶことができる。
【００１２】
なお、サーバ装置のＯＳを、汎用のコンピュータに適用することができるＷｉｎｄｏｗｓ（登録商標）ＮＴ（マイクロソフト社製ＯＳ）にすれば、汎用のコンピュータをサーバ装置として利用することができる。
【００１９】
なお、請求項５に記載した発明は、請求項１に記載したネットワークシステムのサーバ装置および端末装置にそれぞれ適用されるプログラムを記録したものである。
【００２０】
【発明の実施の形態】
図１は、この発明の実施形態であるネットワークシステムの構成を示す図である。図において、１はサーバ装置であり、２は携帯端末である（この発明で言う端末装置に相当する。）。また、３はＬＡＮ等のネットワークであり、ネットワーク３には無線サーバ４および複数の無線ブリッジ５が接続されている。無線ブリッジ５は、携帯端末２と無線（または有線）で通信を行うとともに、ネットワーク３を介して無線サーバ４と通信を行う。また、無線サーバ４はサーバ装置１と無線（または有線）で通信を行う。
【００２１】
図２は、サーバ装置の機能構成を階層的に示した図であり、図３は携帯端末の機能構成を階層的に示した図である。図２において、１１はサーバ装置１のＯＳ、１２は無線サーバ４との通信を制御する通信機能部、１３はサーバ側エミュレーション機能部（この発明で言うサーバ側入出力プログラムに相当する。）、１４はアプリケーションインタフェース（ＡＰＩ）、１５はアプリケーション（ＡＰ）である。ＡＰ１５には、データを管理するアプリケーションが設けられている。また、サーバ装置１のＯＳとしては、ネットワーク環境に適したＯＳであればよい。特に、汎用的なＯＳであるＷｉｎｄｏｗｓＮＴ（Ｗｉｎｄｏｗｓは、米国マイクロソフト社の登録商標）とすると、サーバ装置として汎用のコンピュータを利用することができる。また、図３において、２１は携帯端末２のＯＳ、２２はＯＳ用ＡＰＩ、２３はアプリケーション（ＡＰ）の階層である。また、この実施形態の携帯端末２２には、上記の構成に加えて、無線ブリッジ４と無線通信を制御する通信機能部２４およびサーバ装置１のエミュレータとして機能するためのクライアント側エミュレーション機能部２５（この発明で言うクライアント側入出力プログラムに相当する。）を備えている。クライアント側エミュレーション機能部２５には、携帯端末２に設けられている入力キーや表示部等を制御する専用ＡＰＩ２６が組み込まれている。なお、以下に示すように携帯端末２のＡＰ２３には特にアプリケーションを設けなくてもよい。
【００２２】
次に、このネットワークシステムの動作について詳細に説明する。ここでは、サーバ装置１に物品を管理（物品の入庫、出庫、在庫数等の管理）するアプリケーションを設けたネットワークシステムを例にして以下の説明を行う。図４はサーバ装置の処理を示すフローチャートであり、図５は携帯端末の処理を示すフローチャートである。また、図６はサーバ装置−携帯端末間におけるデータの流れを示す図である。先ず、ユーザが携帯端末２の電源をオンする。携帯端末２は電源がオンされると、サーバ装置１に対して接続要求を無線で送信する（ｎ１１）。ここで、携帯端末２から送信された接続要求は、該携帯端末２に最も近い無線ブリッジ５で受信され、この無線ブリッジ５が受信した接続要求をネットワーク３を介して無線サーバ４に転送し、無線サーバ４がこの接続要求を無線でサーバ装置１に転送することにより、サーバ装置１において受信される（携帯端末２からサーバ装置１への送信は全てこの経路で行われる。）。
【００２３】
サーバ装置１は、携帯端末２から接続要求を受信すると、該携帯端末２に対して処理項目の選択要求を送信する（ｎ１、ｎ２）。以下、ｎ１およびｎ２にかかるサーバ装置１の処理を詳細に説明する。サーバ装置１では、通信機能部１２が受信した上記の接続要求を、サーバ側エミュレーション機能部１３に通知し、サーバ側エミュレーション機能部１３がこの接続要求をＡＰＩ１４を介してＡＰ１５に設けられているアプリケーションに転送する。該アプリケーションは、通知された接続要求を認識すると、ＡＰＩ１４を介してサーバ側エミュレーション機能部１３に対して処理項目の選択指示を行う。この選択指示には、携帯端末２において表示させる画面の画像データが含まれている。サーバ側エミュレーション機能部１３は処理項目の選択指示があると、これを携帯端末２に処理項目選択要求として送信する。ここで、サーバ装置１から送信された処理項目選択要求は、無線サーバ４→ネットワーク３→無線ブリッジ５を介して携帯端末２に送信される（サーバ装置１から携帯端末２への送信は全てこの経路で行われる。）。
【００２４】
携帯端末２は、処理項目の選択要求を受信すると、表示部に図７に示す画面を表示する（ｎ１２、ｎ１３）。このとき、携帯端末２では、通信機能部２４が受信した上記の選択要求をクライアント側エミュレーション機能部２５に転送し、クライアント側エミュレーション機能部２５において上記の選択要求を認識するとともに、該選択要求に付加されている画面データを抽出する。そして、専用ＡＰＩ２６を介して、ここで抽出した画面データによる表示を制御する。また、携帯端末２はユーザによって処理項目の選択入力が行われるのを待ち、選択入力があるとこれをサーバ装置１に送信する（ｎ１４、ｎ１５）。クライアント側エミュレーション機能部２５は専用ＡＰＩ２６を介して入力部における入力データを読み取ることができる。クライアント側エミュレーション機能部２５は、ここで読み取った入力データをクライアント通信機能部２４を介してサーバ装置１に送信する。
【００２５】
サーバ装置１は、携帯端末２から処理項目の選択結果を受信すると、ここで選択された処理を実行するのに必要なデータの入力要求を携帯端末２に送信する（ｎ３、ｎ４）。この選択結果も、通信機能部１２→サーバ側エミュレーション機能部１３→ＡＰＩ１４を介してＡＰ１５に設けられているアプリケーションに転送される。アプリケーションでは、ここで選択された処理項目を実行するのに必要な入力データの種別を認識し、サーバ側エミュレーション機能部１３にここで認識した種別の入力データの入力指示を行う。この入力指示には、携帯端末２の表示部に表示させる画面データが含まれている。
【００２６】
なお、ｎ２の処理完了後、所定時間経過しても携帯端末２から処理項目の選択結果を受信しなければ（ｎ８）、再度ｎ２の処理を実行する。これにより、携帯端末２では不慮の電断等によって停止した場合であっても、再度起動されたときに上記の図７に示した画面が表示される。すなわち、携帯端末２が不慮の事故で停止しても、再起動したときに停止時の処理から再開することができる。なお、図では示していないが、ｎ２の処理を所定回数繰り返しても携帯端末２からの応答がなければ、エラー処理を行う。
【００２７】
携帯端末２は、この入力要求を受信すると、上記の選択要求の受信時と同様に表示部に入力要求に含まれている画面データの画面を表示する（ｎ１６、ｎ１７）。図８（Ａ）は選択された処理項目が物品の入庫処理であった場合、図８（Ｂ）は選択された処理項目が物品の出庫処理であった場合、図８（Ｃ）は選択された処理項目が物品の在庫確認処理であった場合の画面の例を示している。そして、携帯端末２（クライアント側エミュレーション機能部２５）は、ここで入力が要求された全ての種別のデータが入力されるのを待ち、入力された全ての種別のデータを含む入力結果をサーバ装置１に送信する（ｎ１８、ｎ１９）。
【００２８】
サーバ装置１は、携帯端末装置２からの入力結果を受信すると、該入力結果をＡＰ１５に転送し、この入力結果を用いてアプリケーションを実行する（ｎ５、ｎ６）。なお、ｎ４の処理完了後、所定時間経過しても携帯端末２から入力結果を受信しなければ（ｎ９）、再度ｎ４の処理を実行する。これにより、携帯端末２では不慮の電断等によって停止した場合であっても、再度起動されたときに上記の図８に示した画面が表示される。すなわち、携帯端末２は不慮の事故で停止しても、再起動したときに停止時の処理から再開できる。なお、図では示していないが、ｎ４の処理を所定回数繰り返しても携帯端末２からの応答がなければ、エラー処理を行う。
【００２９】
そして、アプリケーションによる処理結果を携帯端末２に送信して本処理を終了する（ｎ７）。なお、実行した処理が物品の入庫処理、出庫処理の場合には、ｎ７において該物品の在庫数等のデータの更新も行われる。また、在庫数等のデータは、サーバ装置１において管理（記憶）されている。
【００３０】
携帯端末２は、サーバ装置１からの処理結果を受信すると、上記の選択要求の受信時等と同様に処理結果に含まれている画面データの画面を表示して本処理を終了する（ｎ２０、ｎ２１）。図９（Ａ）は選択された処理項目が物品の入庫処理であった場合、図９（Ｂ）は選択された処理項目が物品の出庫処理であった場合、図９（Ｃ）は選択された処理項目が物品の在庫確認処理であった場合の画面の例を示している。
【００３１】
以上のように、この実施形態のネットワークシステムでは、サーバ装置１が携帯端末２において表示する画面の画面データを作成し、これを携帯端末２に送信する等して、携帯端末２をサーバ装置１のエミュレータとして機能させている。すなわち、携帯端末２は、基本的にサーバ装置１からの要求に対して応答する機能を有していればよく、特別なアプリケーションを必要としない。したがって、従来のように携帯端末２に画面データを作成するための機能（アプリケーション）等を設ける必要がない。すなわち、サーバ装置１にアプリケーションを設けるだけでよい。また、開発するアプリケーションが１つで良いだけでなく、従来のように２つのアプリケーション間の通信の規定や２つのアプリケーションが行う処理の切り分け等の作業も不用になる。よって、ネットワークの開発期間の短縮および開発コストの低減を図ることができる。また、携帯端末２ではサーバ装置１で管理されているデータを保持することがないため、携帯端末２の故障や電断等によってデータが失われるという問題が生じることもなく、データの信頼性を向上することができる。さらに、携帯端末２は処理途中に不慮の事故で停止しても、再起動したときに停止時の処理から再開でき、携帯端末２における不慮の事故に対する信頼性を向上することができる。
【００３２】
また、携帯端末２では電源がオンされたときに、サーバ装置１に対して接続要求を行うようにしたため、サーバ装置１との接続も容易に行うことができる。なお、携帯端末２に設けられている特定のキーが操作されたときに、上記の接続要求を行うように構成してもよい。
【００３３】
また、サーバ装置１に、アプリケーションのデバッグが行えるようにシミュレーション機能を設けてもよい。シミュレーション機能を設けたサーバ装置の機能構成を図１０に示す。このサーバ装置１は図３に示した機能構成に、上記の実施形態の携帯端末２に設けた通信機能部２４およびクライアント側エミュレーション機能部２５を追加した構成である。
【００３４】
この構成において、通信機能部１２、２４を介してサーバ側エミュレーション機能部１３とクライアント側エミュレーション機能部２５との間で、上記の実施形態で説明したサーバ装置１と携帯端末２との間で行われた通信（この場合にはデータの転送となる。）を実行することにより、開発したアプリケーションのデバッグを行うことができる。すなわち、サーバ装置１単体でアプリケーションのデバッグが行えるので、デバッグにかかる時間および費用の低減も図ることができる。なお、図示していないが、クライアント側エミュレーション機能部２５には専用ＡＰＩ２６が設けられているとともに、該ＡＰＩ２６によってサーバ装置１に備えられている表示装置の画面制御やキーボードからの入力の読み取りが行われる。
【００３５】
なお、上記の実施形態では、サーバ装置１から画面データを送信するとしたが、印字用のデータを送信することもできる。また、この発明で言うクライアント装置を携帯端末２としたが、据え置き型の端末装置であってもよい。また、サーバ装置１が物品管理を行うものであるとしたが、他の種別のデータを管理するものであってもよい。また、クライアント側の装置の入力部としては、キーボードだけでなく、バーコードリーダ、音声認識装置、スキャナ等を設けることもできる。また、出力部として印字装置（プリンタ）や音声出力装置等を設けることもできる。さらに、図１１（Ａ）に示すサーバ装置１をネットワーク３に直接接続したネットワークシステムや図１１（Ｂ）に示すサーバ装置１およびクライアント装置２’をネットワーク３に直接接続したネットワークシステム等にも本願発明を適用できる。
また、図１２に示すようにサーバ側入出力プログラムが、クライアント側入出力プログラムからの接続要求によって、画面表示要求、データ入力要求、および処理結果の送信を各要求に対する応答に応じて順次実行し、クライアント側入出力プログラムは、上記画面表示要求、データ入力要求、および、処理結果に含まれる画面データに基づく画面表示や入力要求に対する応答を送信する構成としてもよい。この場合も、端末装置側に特別なアプリケーションを設ける必要がない。
【００３６】
【発明の効果】
以上のように、この発明によれば、端末装置をサーバ装置のエミュレータとして機能させるようにしたため、サーバ装置にのみアプリケーションを設ければよく、クライアント装置におけるアプリケーションの開発が不用となる。これにより、開発期間の短縮および開発コストの低減を図ることができる。しかも、サーバ装置のＯＳとして汎用性のあるＷｉｎｄｏｗｓＮＴを利用したので、汎用のコンピュータをサーバ装置として利用することができる。
【００３７】
また、端末装置からサーバ装置に対して接続要求を行う構成を設けたので、任意のタイミングで端末装置をサーバ装置に接続することができる。
【００３８】
さらに、前記サーバ側入出力プログラムは、所定時間内に前記クライアント側入出力プログラムにおいてリンクした入出力動作が行われないとき、前記クライアント側入出力プログラムに再度入出力動作を要求するように構成したので、前記端末装置が処理途中に不慮の電断等で停止した場合であっても、端末装置が再度起動されると上記停止時の処理から再開することができる。これにより、端末装置における不慮の事故に対する信頼性を向上することができる。
【図面の簡単な説明】
【図１】この発明の実施形態であるネットワークシステムの構成を示す図である。
【図２】サーバ装置の機能構成を示す図である。
【図３】携帯端末の機能構成を示す図である。
【図４】サーバ装置の処理を示すフローチャートである。
【図５】携帯端末の処理を示すフローチャートである。
【図６】サーバ装置と携帯端末との間におけるデータの流れを示す図である。
【図７】携帯端末における表示部の表示例を示す図である。
【図８】携帯端末における表示部の表示例を示す図である。
【図９】携帯端末における表示部の表示例を示す図である。
【図１０】この発明の別の実施形態であるネットワークシステムに適用されるサーバ装置の機能構成を示す図である。
【図１１】この発明の別の実施形態であるネットワークシステムの構成を示す図である。
【図１２】請求項６に記載した発明の概要を示す図である。
【符号の説明】
１−サーバ装置
２−携帯端末（２’−クライアント装置）
３−ネットワーク
４−無線サーバ
５−無線ブリッジ
１３−サーバ側エミュレーションソフト
２５−クライアント側エミュレーションソフト
２６−専用ＡＰＩ
【図１】
0003634163.tif 000002
【図２】
0003634163.tif 000003
【図３】
0003634163.tif 000004
【図４】
0003634163.tif 000005
【図５】
0003634163.tif 000006
【図６】
0003634163.tif 000007
【図７】
0003634163.tif 000008
【図８】
0003634163.tif 000009
【図９】
0003634163.tif 000010
【図１０】
0003634163.tif 000011
【図１１】
0003634163.tif 000012
【図１２】
0003634163.tif 000013