以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
図1〜図3を参照して、本実施の形態の装置構成を説明する。先ず、図1を参照して、本実施の形態のシンクライアントシステム1の全体構成を説明する。図1に、本実施の形態のシンクライアントシステム1の構成を示す。
図1に示すように、サーバ装置10と、クライアント端末20A,20B,20Cと、を備える。サーバ装置10及びクライアント端末20A,20B,20Cは、通信ネットワークNを介してネットワーク接続されている。
シンクライアントシステム1は、ユーザが使うクライアント端末20A,20B,20Cに必要最小限の処理をさせ、クライアント端末20A,20B,20C側のアプリケーションプログラム等、ほとんどの処理をサーバ装置10に集中させた画面転送型のシンクライアントシステムである。
サーバ装置10は、クライアント端末20A,20B,20Cの管理装置であり、クライアント端末20A,20B,20Cでユーザに作業させるためのアプリケーションプログラムを実行する。本実施の形態では、このアプリケーションプログラムは、サーバ装置10に記憶する書類データの作成用のアプリケーションプログラムであるものとする。サーバ装置10は、アプリケーションプログラムに応じた表示画面のフレームデータを作成して、通信ネットワークNを介してクライアント端末20A,20B,20Cに送信する。また、サーバ装置10は、通信ネットワークNを介してクライアント端末20A,20B,20Cから受信したイベント情報に応じて、アプリケーションプログラムに関する各種処理を実行する。
クライアント端末20A,20B,20Cは、サーバ装置10のクライアント端末である。クライアント端末20A,20B,20Cは、据え置き型のPC(Personal Computer)であるとするが、これに限定されるものではなく、携帯電話機、PHS(Personal Handyphone System)端末、PDA(Personal Digital Assistant)等で構成される携帯端末としてもよい。この携帯端末であるクライアント端末20A,20B,20Cは、例えば、基地局との無線通信を介して通信ネットワークNと接続される。
クライアント端末20A,20B,20Cは、通信ネットワークNを介して、サーバ装置10から受信したフレームデータに応じて、アプリケーションプログラムに応じた画面を表示する。また、クライアント端末20A,20B,20Cは、ユーザからの操作入力を受け付け、イベント情報として、通信ネットワークNを介してサーバ装置10に送信する。
また、クライアント端末20A,20B,20Cは、それぞれ異なるユーザが使用する端末であるものとする。つまり、クライアント端末とユーザとは、一対一の関係で対応付けられているものとする。
通信ネットワークNは、例えばインターネットであり、WAN(Wide Area Network)、LAN(Local Area Network)、専用回線等を含んでもよい。
なお、シンクライアントシステム1は、3台のクライアント端末20A,20B,20Cを備える構成としたが、これに限定されるものではない。シンクライアントシステム1は、1台、2台又は4台以上のクライアント端末を備える構成としてもよい。
次いで、図2を参照して、サーバ装置10の内部の機能構成を説明する。図2に、サーバ装置10の機能構成を示す。
サーバ装置10は、送信部、処理部、制御部としてのCPU(Central Processing Unit)11と、操作部12と、RAM(Random Access Memory)13と、表示部14と、記憶部15と、送信部としての通信部16と、を備える。サーバ装置10において、各部は、バス17を介して互いに接続されている。
CPU11は、サーバ装置10の各部を中央制御する。CPU11は、各種プログラムのうち指定されたプログラムを記憶部15から読み出してRAM13に展開し、展開されたプログラムとの協働で各種処理を実行する。
CPU11は、書類作成サービス提供プログラム151に従い、書類データのそれぞれについて、書類データの処理順番に作業対象のクライアント端末に接続していき、接続したクライアント端末にデスクトップ画面のフレームデータを送信して表示させ、当該書類データ作成のための作業の工程を行わせるとともに、その接続の状態を管理する。クライアント端末への接続を切り替える場合に、CPU11は、当該クライアント端末における画面データ、操作状態、書類データに対する処理状態を引き継いで、次の工程のクライアント端末に接続する。
また、CPU11は、第1のシンクライアント接続プログラム152に従い、サーバ装置10に接続されたクライアント端末から受信したイベント情報に従い、デスクトップ画面の更新、操作状態の更新、及び書類データの更新を行う。
また、CPU11は、デスクトッププログラム153に従い、書類データ作成のための作業用のデスクトップ画面のフレームデータを作成してRAM13に格納する。
操作部12は、文字入力キー等の各種キーからなるキーボードを備え、ユーザからの各キーの押下入力に応じた操作情報をCPU11に出力する。また、操作部12は、マウス等のポインティングデバイスを備え、ユーザからのポインティングデバイスの入力に応じた位置情報をCPU11に出力することとしてもよい。
RAM13は、揮発性の半導体メモリであり、各種データ及び各種プログラムを格納するワークエリアを有する。RAM13は、クライアント用フレームバッファメモリ131,132,133を含む。クライアント用フレームバッファメモリ131,132,133は、書類データ別のクライアント端末20A,20B,20C用の表示用デスクトップ画面のフレームデータを記憶するメモリである。つまり、本実施の形態では、3つの書類データの作成の作業を並行して行うため、3つのクライアント用フレームバッファメモリ131,132,133を設けている。しかし、作業を並行して行う書類データの数は、3つに限定されるものではなく、他の数としてもよい。
表示部14は、LCD(Liquid Crystal Display)、EL(ElectroLuminescence)ディスプレイ等を備え、CPU11から入力される表示情報に応じて各種表示を行う。
記憶部15は、HDD(Hard Disk Drive)等により構成され、各種データ及び各種プログラムを読み出し及び書き込み可能に記憶する。記憶部15には、書類作成サービス提供プログラム151、第1のシンクライアント接続プログラム152及びデスクトッププログラム153と、後述する処理書類リストテーブル30、アドレスリストテーブル40、処理順番リストテーブル50と、作業対象の書類データと、が記憶されている。記憶部15に記憶される書類データの数は、3つであるものとして説明するが、他の数としてもよい。
通信部16は、ネットワークカード等により構成され、通信ネットワークNに接続されて、通信ネットワークN上の機器(クライアント端末20A,20B,20C等)と情報の送受信を行う。
次いで、図3を参照して、クライアント端末20Aの内部の機能構成を説明する。図3に、クライアント端末20Aの機能構成を示す。ここでは、クライアント端末20Aの機能構成を代表して説明するが、クライアント端末20B,20Cの機能構成もクライアント端末20Aの機能構成と同様である。
図3に示すように、クライアント端末20Aは、CPU21と、操作部22と、RAM23と、表示部24と、ROM(Read Only Memory)25と、通信部26と、フレームバッファメモリ27と、を備える。クライアント端末20Aにおいて、各部は、バス28を介して互いに接続されている。
CPU21、操作部22、RAM23、表示部24、通信部26は、サーバ装置10のCPU11、操作部12、RAM13、表示部14、通信部16と同様の構成であり、同様な部分の説明を省略し、異なる部分を主として説明する。
CPU21は、クライアント端末20Aの各部を中央制御する。CPU21は、各種プログラムのうち指定されたプログラムをROM25から読み出してRAM23に展開し、展開されたプログラムとの協働で各種処理を実行する。
CPU21は、第2のシンクライアント接続プログラム251に従い、デスクトップ画面のフレームデータを受信して表示部24に表示し、操作部22を介して書類データ更新のための操作入力を受け付け、当該操作入力に応じたイベント情報を作成してサーバ装置10に送信する。
RAM23は、各種データ及び各種プログラムを格納するワークエリアを有する。
ROM25は、各種データ及び各種プログラムを記憶する読み出し専用の半導体メモリである。ROM25には、第2のシンクライアント接続プログラム251が記憶されている。
通信部26は、通信ネットワークNに接続されて、通信ネットワークN上の機器(サーバ装置10等)と情報の送受信を行う。
フレームバッファメモリ27は、RAM等により構成され、サーバ装置10から受信した表示画面のフレームデータを一時的に記憶するバッファメモリである。
次に、図4〜図6を参照して、サーバ装置10の記憶部15に記憶される情報を説明する。図4に、処理書類リストテーブル30の構成を示す。図5に、アドレスリストテーブル40の構成を示す。図6に、処理順番リストテーブル50の構成を示す。
処理書類リストテーブル30は、サーバ装置10で提供する書類作成サービスの作業対象の書類データに関する各種情報を有するテーブルである。図4に示すように、処理書類リストテーブル30は、書類番号31と、作業者端末32と、状態33と、リスト登録者端末34と、の項目を有する。
書類番号31は、作業対象の書類データの識別情報である。本実施の形態では、作業対象の書類データが3つあり、その3つの書類データが記憶部15に記憶されている。
作業者端末32は、書類番号31の書類データに関する作業を現在行っているユーザ(作業者)が使用しているクライアント端末の識別情報である。
状態33は、書類番号31の書類データの作業状態を示す情報である。状態33は、接続待ちと、接続中と、完了と、の3つの状態をとり得るものとする。接続待ちは、クライアント端末20A,20B,20Cのうち書類データに対する作業を終了していないクライアント端末が、サーバ装置10からの書類作成サービスの接続待ちをしており、書類データ作成が完了していない状態である。接続中は、クライアント端末20A,20B,20Cのいずれか一つが、サーバ装置10からの書類作成サービスの接続中であり、書類データ作成の作業中である状態である。完了は、クライアント端末20A,20B,20Cにおいて、サーバ装置10からの書類作成サービスの書類データに対する全作業を完了し、接続を終了した状態である。
1つの書類番号31の書類データの作成において、作業の処理順番が最初のクライアント端末の状態33が、作業状態に応じて、接続待ち→接続中と移行され、その作業が終了すると、処理順番が次のクライアント端末に移行される。この次のクライアント端末の状態33も、作業状態に応じて、接続待ち→接続中、と移行される。このように、クライアント端末及びその状態33が移行されていき、全クライアント端末の作業が終了されると、その書類番号31の書類データの状態33が完了に設定される。
リスト登録者端末34は、処理書類リストテーブル30の書類番号31のレコードをサーバ装置10に登録したクライアント端末の識別情報である。本実施の形態では、書類番号31のレコードを登録したユーザは、この書類番号31の書類データに対する作業の管理者であるものとする。このため、この書類番号31の書類データに対する全作業を完了した場合に、対応するリスト登録者端末34のクライアント端末に作業完了の旨を通知する。
アドレスリストテーブル40は、シンクライアントシステム1のクライアント端末のアドレス情報を有するテーブルである。図5に示すように、アドレスリストテーブル40は、クライアント端末41と、IP(Internet Protocol)アドレス42と、の項目を有する。
クライアント端末41は、シンクライアントシステム1のクライアント端末の識別情報である。IPアドレス42は、クライアント端末41のクライアント端末の通信ネットワークNにおけるIPアドレスである。
処理順番リストテーブル50は、サーバ装置10で提供する書類作成サービスの作業対象の書類データの作業の処理順番の情報を有するテーブルである。図6に示すように、処理順番リストテーブル50は、書類番号51と、処理順番52と、の項目を有する。
書類番号51は、作業対象の書類データの識別情報である。処理順番52は、書類番号51の書類データの作業の処理順番毎のクライアント端末の識別情報である。
次に、図7〜図11を参照して、シンクライアントシステム1の動作を説明する。図7に、サーバ装置10で実行される書類作成サービス提供処理を示す。図8に、書類作成サービス提供処理の状態チェック処理を示す。図9に、書類作成サービス提供処理の作業者端末接続処理を示す。図10に、サーバ装置10で実行される第1のシンクライアント接続処理を示す。図11に、クライアント端末20Aで実行される第2のシンクライアント接続処理を示す。図12(a)に、クライアント端末20Aで作業されたデスクトップ画面60aを示す。図12(b)に、クライアント端末20Bで作業されたデスクトップ画面60bを示す。
最初に、サーバ装置10の記憶部15に記憶される処理書類リストテーブル30及び処理順番リストテーブル50の新たな書類データに関する追加レコード登録の処理を簡単に説明する。ここでは、一例として、クライアント端末20Aからサーバ装置10に登録を行う場合を説明するが、クライアント端末20B,20Cから登録を行う場合も同様である。
先ず、クライアント端末20AのCPU21は、通信部26によりサーバ装置10へ通信接続を行い、処理書類リストテーブル30及び処理順番リストテーブル50のレコード登録要求をサーバ装置10に送信する。すると、サーバ装置10のCPU11は、通信部16によりクライアント端末20Aから処理書類リストテーブル30のレコード登録要求を受信し、処理書類リストテーブル30及び処理順番リストテーブル50のレコード登録用のアプリケーションプログラムを起動する。そして、CPU11は、記憶部15に記憶されている処理書類リストテーブル30及び処理順番リストテーブル50の書類番号31,51を最大の書類番号31に+1した番号のレコードを追加し、通信部16により、当該追加したレコード登録用のデスクトップ画面のフレームデータを作成してクライアント端末20Aに送信する。
クライアント端末20AのCPU21は、通信部26によりサーバ装置10からフレームデータを受信し、受信したフレームデータを用いて、処理書類リストテーブル30及び処理順番リストテーブル50の追加レコード登録用のデスクトップ画面を表示部24に表示する。そして、CPU21は、操作部22を介してユーザからの新たな書類データに対応する作業者端末、リスト登録者端末、処理順番の情報入力を受け付け、通信部26を介してサーバ装置10に送信する。
そして、サーバ装置10のCPU11は、通信部16によりクライアント端末20Aから作業者端末、リスト登録者端末、処理順番の情報を受信し、処理書類リストテーブル30及び処理順番リストテーブル50の作業者端末32、リスト登録者端末34、処理順番52の新たなレコードに格納して登録する。
次いで、図7を参照して、サーバ装置10で実行される書類作成サービス提供処理を説明する。書類作成サービス提供処理は、書類データ作成に関する作業を行うために、この作業の処理順にクライアント端末20A,20B,20Cに接続して作業を行わせるサービスを提供する処理である。
サーバ装置10において、操作部12を介して管理者から書類作成サービス提供処理の実行指示が入力されたことをトリガとして、CPU11は、記憶部15から読み出されて適宜RAM13に展開された書類作成サービス提供プログラム151との協働で、書類作成サービス提供処理を実行する。
図7に示すように、先ず、CPU11は、記憶部15に記憶されている処理書類リストテーブル30を参照し、書類番号31の個数(レコード数)分のデスクトッププログラム153を起動する(ステップS11)。デスクトッププログラム153起動によりデスクトップ処理が開始され、このデスクトップ処理により各書類データの初期のデスクトップ画面のフレームデータが作成されてRAM13のクライアント用フレームバッファメモリ131,132,133に記憶される。
そして、CPU11は、変数nに1を設定する(ステップS12)。そして、CPU11は、記憶部15に記憶されている処理書類リストテーブル30を参照し、書類番号31が変数nのレコードの状態33を読み出す(ステップS13)。そして、CPU11は、ステップS13で読み出した状態33が接続中又は完了であるか否かを判別する(ステップS14)。接続中又は完了でない場合(ステップS14;NO)、状態33が接続待ちであり、CPU11は、状態チェック処理を実行する(ステップS15)。
ここで、図8を参照して、ステップS15の状態チェック処理を説明する。先ず、CPU11は、処理書類リストテーブル30を参照し、書類番号31が変数nのレコードの作業者端末32を読み出す(ステップS151)。この作業者端末32は、状態33が接続待ちのクライアント端末である。
そして、CPU11は、処理書類リストテーブル30の全ての作業者端末32及び状態33を参照し、ステップS151で読み出した作業者端末32があるレコードの状態33を確認する(ステップS152)。そして、CPU11は、ステップS152で確認した、ステップS151で読み出した作業者端末32の状態33が接続中であるか否かを判別する(ステップS153)。
状態33が接続中である場合(ステップS153;YES)、CPU11は、ステップS151で読み出した作業者端末32の接続中フラグを1に設定し(ステップS154)、状態チェック処理を終了する。状態33が接続中でない場合(ステップS153;NO)、CPU11は、ステップS155で読み出した作業者端末32の接続中フラグを0に設定し(ステップS155)、状態チェック処理を終了する。
図7に戻り、ステップS15の後、CPU11は、ステップS15(ステップS154、S155)で設定された、ステップS15で読み出した作業者端末32の接続中フラグが1であるか否かを判別する(ステップS16)。接続中フラグが1でない場合(ステップS16;NO)、CPU11は、処理書類リストテーブル30を参照し、書類番号31が変数nのレコードの状態33を接続中に設定する(ステップS17)。そして、CPU11は、作業者端末接続処理を実行する(ステップS18)。
ここで、図9を参照して、ステップS18の作業者端末接続処理を説明する。先ず、CPU11は、記憶部15に記憶されているアドレスリストテーブル40を参照し、ステップS17で接続中に設定した状態33のレコードの作業者端末32に対応する、クライアント端末41のレコードのIPアドレス42を検索する(ステップS181)。
そして、CPU11は、ステップS181で検索したIPアドレス42を用いて、通信部16により、対応するクライアント端末41に通信接続を確立し、デスクトップ接続要求を送信する(ステップS182)。デスクトップ接続とは、クライアント端末に対しデスクトップ画面を表示させ通信可能とした接続である。
そして、CPU11は、通信部16により、RAM13のクライアント用フレームバッファメモリ131,132又は133に記憶されている書類番号31が変数nであるデスクトップ画面のフレームデータを読み出し、ステップS182のデスクトップ要求先のクライアント端末に送信して通信接続することにより、デスクトップ接続する(ステップS183)。
ステップS183では、書類番号=nの書類データの作業の複数の工程における一つ前の工程のクライアント端末から次工程のクライアント端末に(デスクトップ)接続が切り替えられる。クライアント用フレームバッファメモリ131,132,133は、書類データ毎のメモリであるため、現在の工程のクライアント端末のデスクトップ画面のフレームデータが、次工程のクライアント端末(のデスクトップ画面)に引き継がれる。
そして、CPU11は、ステップS183のデスクトップ接続が完了したか否かを判別する(ステップS184)。デスクトップ接続が完了していない場合(ステップS184;NO)、ステップS184に移行される。
デスクトップ接続が完了した場合(ステップS184;YES)、CPU11は、デスクトップ接続しているクライアント端末からのイベント情報に応じて書類番号31が変数nの書類データの作成の処理を行う後述する第1のシンクライアント接続プログラム152を起動し(ステップS185)、作業者端末接続処理を終了する。
ステップS185では、CPU11は、RAM13に記憶されている、書類データへの作業における前の工程のクライアント端末の第1のシンクライアント接続プログラム152の処理状態(書類データへの処理状態)及び操作状態を参照し、その書類データへの処理状態及び操作状態を引き継いだ状態で、次工程のクライアント端末用の第1のシンクライアント接続プログラム152を起動する。
図7に戻り、ステップS18の後、CPU11は、変数nを1インクリメントする(ステップS19)。接続中又は完了である場合(ステップS14;YES)、又は接続中フラグが1である場合(ステップS16;YES)、ステップS19に移行される。
そして、CPU11は、処理書類リストテーブル30を参照し、書類番号31が変数nのレコードの書類データがあるか否かを判別する(ステップS20)。書類番号31が変数nの書類データがある場合(ステップS20;YES)、ステップS13に移行される。
書類番号31が変数nの書類データがない場合(ステップS20;NO)、CPU11は、後述する第1のシンクライアント接続処理に応じて、通信部16によりクライアント端末から記入完了切断情報を受信したか否かをチェックし、受信した場合には記入完了切断情報中のクライアント端末の識別情報及び書類番号を取得する(ステップS21)。そして、CPU11は、ステップS21でクライアント端末から記入完了切断情報を受信して記入完了切断があるか否かを判別する(ステップS22)。
記入完了切断がある場合(ステップS22;YES)、CPU11は、記憶部15に記憶されている処理順番リストテーブル50を参照し、ステップS21で取得した書類番号51のレコードの処理順番52において、ステップS21で取得したクライアント端末の識別情報の次の順番のクライアント端末の識別情報を読み出す(ステップS23)。ステップS23において、さらに、CPU11は、処理書類リストテーブル30のステップS21で取得した書類番号31のレコードについて、作業者端末32を前記読み出した次の順番のクライアント端末の識別情報に変更し、同じく状態33を接続待ちに変更する。ステップS23において、次の順番のクライアント端末の識別情報がない場合に、作業者端末32及び状態33は、変更されない。
そして、CPU11は、ステップS23で次の順番のクライアント端末の識別情報があるか否かを判別する(ステップS24)。次の順番のクライアント端末の識別情報がない場合(ステップS24;NO)、CPU11は、処理書類リストテーブル30のステップS21で取得した書類番号31のレコードについて、状態33を完了に変更する(ステップS25)。
そして、CPU11は、処理書類リストテーブル30を参照し、状態33が新たに完了になったレコードの書類データがあるか否かを判別する(ステップS26)。記入完了切断がない場合(ステップS22;NO)、又は次の順番のクライアント端末の識別情報がある場合(ステップS24;YES)、ステップS26に移行される。
新たに完了になった書類データがある場合(ステップS26;YES)、CPU11は、処理書類リストテーブル30を参照し、状態33が新たに完了になった書類データの作業の処理が完了した旨の処理完了情報を作成し、通信部16により、この状態33のレコードのリスト登録者端末34のクライアント端末に送信して通知する(ステップS27)。ステップS27に対応して、処理完了情報を受信したクライアント端末のCPU22は、例えば、処理完了情報に応じて、書類番号=nの書類データに対する処理完了の旨を表示部24に表示する。なお、処理完了情報を送信するクライアント端末は、リスト登録者端末34のものに限定されるものでなく、予め設定したクライアント端末や、全てのクライアント端末等、他のクライアント端末としてもよい。
そして、CPU11は、処理書類リストテーブル30を参照し、全レコードの状態33が完了になったか否か、あるいは操作部12を介して管理者から書類作成サービス提供処理の終了指示が入力されたか否かに応じて、書類作成サービス提供処理を終了するか否かを判別する(ステップS28)。新たに完了になった書類データがない場合(ステップS26;NO)、ステップS28に移行される。
書類作成サービス提供処理を終了しない場合(ステップS28;NO)、ステップS12に移行される。書類作成サービス提供処理を終了する場合(ステップS28;YES)、書類作成サービス提供処理が終了する。
次いで、図10を参照して、図9の作業者端末接続処理のステップS185で実行される第1のシンクライアント接続処理を説明する。
サーバ装置10において、作業者端末接続処理のステップS185が実行されたことをトリガとして、CPU11は、記憶部15から読み出されて適宜RAM13に展開された第1のシンクライアント接続プログラム152との協働で、第1のシンクライアント接続処理を実行する。
先ず、CPU11は、通信部16により、書類番号31が変数nの書類データに対する内容入力のためのイベント情報を、作業者端末接続処理のステップS185でデスクトップ接続しているクライアント端末から受信したか否かを判別する(ステップS31)。内容入力のためのイベント情報とは、クライアント端末の操作部22を介する書類データの内容、コメント等の文字入力、カーソルの操作入力等であり、後述する設定完了のためのイベント情報の他のイベント情報とする。
内容入力のためのイベント情報を受信した場合(ステップS31;YES)、CPU11は、ステップS31で受信した内容入力のためのイベント情報に応じたアプリケーション処理を行う(ステップS32)。アプリケーション処理において、例えば、CPU11は、内容入力のイベント情報に応じて、カーソルの移動等の操作状態の更新や、記憶部15に記憶されている書類データの内容更新等の処理を行う。さらに、その更新に応じたデスクトップ画面のフレームデータをデスクトッププログラム153に更新作成依頼してRAM13(クライアント用フレームバッファメモリ131,132又は133)に格納させ、通信部16により、そのフレームデータをデスクトップ接続しているクライアント端末へ送信する。カーソル等の画面構成部品の表示位置等の操作状態及び書類データの更新に応じて、クライアント端末に表示されるデスクトップ画面は、更新される。
そして、CPU11は、通信部16により、書類番号31が変数nの書類データに対する設定完了のためのイベント情報を、作業者端末接続処理のステップS185でデスクトップ接続しているクライアント端末から受信したか否かを判別する(ステップS33)。内容入力のためのイベント情報を受信していない場合(ステップS31;NO)、ステップS33に移行される。設定完了のためのイベント情報を受信していない場合(ステップS33;NO)、ステップS31に移行される。
設定完了のためのイベント情報を受信した場合(ステップS33;YES)、CPU11は、通信部16により、作業者端末接続処理のステップS185でデスクトップ接続しているクライアント端末の記入完了のために通信を切断する記入完了切断処理を行い(ステップS34)、第1のシンクライアント接続処理を終了する。
ステップS34の記入完了切断処理において、さらに、CPU11は、現在の書類データの作業の工程における、実行中の第1のシンクライアント接続プログラム152の処理状態(書類データへの処理状態)と、デスクトップ画面における操作状態との情報をRAM13に記憶する。
次いで、図11を参照して、クライアント端末20Aで実行される第2のシンクライアント接続処理を説明する。第2のシンクライアント接続処理は、サーバ装置10に対するデスクトップ接続をして、書類データに対しての操作入力に応じたイベント情報をサーバ装置10に送信する処理である。ここでは、クライアント端末20Aが第2のシンクライアント接続処理を実行する場合を説明するが、クライアント端末20B,20Cが実行する場合も同様である。
クライアント端末20B,20Cにおいて、例えば、操作部22を介してユーザから、サーバ装置10からの第2のシンクライアント接続処理の実行指示入力がなされたことをトリガとして、CPU21は、ROM25から読み出されて適宜RAM23に展開された第2のシンクライアント接続プログラム251との協働で、第2のシンクライアント接続処理を実行する。
先ず、CPU21は、操作部22を介してユーザからのデスクトップ接続要求の待ち受け状態の終了指示の入力に応じて、待ち受け状態を終了するか否かを判別する(ステップS41)。待ち受け状態を終了する場合(ステップS41;YES)、第2のクライアント接続処理が終了する。
待ち受け状態を終了しない場合(ステップS41;NO)、CPU11は、通信部16により、図9の作業者端末接続処理のステップS182に対応して、デスクトップ接続要求をサーバ装置10から受信したか否かを判別する(ステップS42)。デスクトップ接続要求を受信していない場合(ステップS42;NO)、ステップS42に移行される。
デスクトップ接続要求を受信した場合(ステップS42;YES)、CPU21は、通信部26により、サーバ装置10から(書類番号31が変数nである)デスクトップ画面のフレームデータを受信して、そのフレームデータを表示部24にデスクトップ画面として表示して、デスクトップ接続を行う(ステップS43)。
そして、CPU21は、図10の第1のシンクライアント接続処理のステップS31に対応して、操作部22を介してユーザからの操作入力を受け付け、その操作入力に応じたイベント情報を作成し、通信部26により、サーバ装置10に送信する(ステップS44)。
そして、CPU21は、図10の第1のシンクライアント接続処理のステップS32に対応して、ステップS44で送信したイベント情報に対応する変更後のデスクトップ画面のフレームデータを受信し、そのフレームデータを用いて表示部24にデスクトップ画面を表示する(ステップS45)。
そして、CPU21は、操作部22を介してユーザから、そのユーザ分(そのクライアント端末分)の書類データの作成の作業の完了の指示入力を受け付け、完了指示入力があるか否かを判別する(ステップS46)。書類データの作成の作業の完了の指示入力は、例えば、デスクトップ画面の書類データの作業の完了ボタンの押下入力により行われる。完了指示入力がない場合(ステップS46;NO)、ステップS44に移行される。
完了指示入力がある場合(ステップS46;YES)、CPU21は、図10の第1のシンクライアント接続処理のステップS33に対応して、書類データの記入完了のイベント情報を作成して、通信部26によりサーバ装置10に送信し(ステップS47)、ステップS41に移行される。
次いで、図12を参照して、シンクライアントシステム1における書類作成サービス提供処理、第1のシンクライアント接続処理及び第2のシンクライアント接続処理の具体例について、説明する。
ここでは、図6の処理順番リストテーブル50において書類番号51が1の書類データについて、そのレコードの処理順番52で書類データに対する作業の処理を行うケースを主として説明する。このケースにおいて、クライアント端末20A→クライアント端末20B→クライアント端末20Cの順に、各ユーザが、「シンクライアントの試用について」の書類データへの作業の工程として提案、評価、承認を行うことにより、書類番号=1の書類データを作成する。
予め、クライアント端末20A,20B,20Cは、サーバ装置10に接続されていなく、処理書類リストテーブル30の書類番号31が1の作業者端末32がクライアント端末20Aであり、同じく状態33が接続前であるものとする。サーバ装置10における図7の書類作成サービス提供処理の実行により、ステップS11で書類番号=1〜3の3つのデスクトッププログラム153が起動される。
そして、サーバ装置10において、ステップS13で、書類番号31が1のレコードの状態33が接続前であり、ステップS17で、その状態33が接続中に変更される。そして、ステップS18で、書類番号31が1のレコードの作業者端末32のクライアント端末20Aにデスクトップ接続される。
このときに、クライアント端末20Aの表示部24には、図12(a)に示すデスクトップ画面60aが表示される。但し、この時点のデスクトップ画面60aは、書類データ領域61aのみが含まれ、書類データ領域61aが全て空欄であるものとする。
書類データ領域61aは、記入領域611a,612,613を有する。記入領域611aは、クライアント端末20Aのユーザ用の記入領域である。記入領域612は、クライアント端末20Bのユーザ用の記入領域である。記入領域613は、クライアント端末20Cのユーザ用の記入領域である。記入用のカーソルは、記入領域611aにあるものとする。
クライアント端末20Aにおいて、図11の第2のクライアント接続処理のステップS44で、操作部22を介するユーザからの空欄状態の記入領域611aへの文字記入の操作入力と、参考資料62aの表示指示入力とが受け付けられ、そのイベント情報がサーバ装置10に送信される。そして、サーバ装置10において、第1のクライアント接続処理のステップS32で、そのイベント情報を反映したデスクトップ画面60aのフレームデータが作成され、クライアント端末20Aに送信される。
そして、クライアント端末20Aにおいて、第2のクライアント接続処理のステップS45で、そのイベント情報を反映したデスクトップ画面60aがクライアント端末20Aの表示部24に表示される。但し、この時点のデスクトップ画面60aは、書類データ領域61a及び参考資料62aが含まれ、記入領域611aに記入がなされる。参考資料62aは、サーバ装置10の記憶部15に記憶されている参考書類データとする。
そして、クライアント端末20Aにおいて、第2のクライアント接続処理のステップS47で、操作部22を介するユーザからの記入完了指示入力に応じて、そのイベント情報がサーバ装置10に送信される。そして、サーバ装置10において、第1のクライアント接続処理のステップS34で、クライアント端末20Aとのデスクトップ接続が切断される。
そして、サーバ装置10において、図7の書類作成サービス提供処理のステップS22で、記入完了切断があり、ステップS23で、処理書類リストテーブル30の書類番号31が1のレコードの作業者端末32が、次の処理順番のクライアント端末20Bに変更され、同じく状態33が接続待ちに変更される。そして、ステップS12に戻り、ステップS13で、書類番号31が1のレコードの状態33が接続前であり、ステップS17で、その状態33が接続中に変更される。そして、サーバ装置10において、ステップS18で、書類番号31が1のレコードの作業者端末32のクライアント端末20Bにデスクトップ接続される。
このとき、クライアント端末20Bの表示部24には、デスクトップ画面60aが表示される。但し、この時点のデスクトップ画面60aの記入用のカーソルは、記入領域612にあるものとする。クライアント端末20Bにおいて、図11の第2のクライアント接続処理のステップS44で、操作部22を介するユーザからの空欄状態の記入領域612への文字記入の操作入力と、参考資料62bの表示指示入力とが受け付けられ、そのイベント情報がサーバ装置10に送信される。そして、サーバ装置10において、第1のクライアント接続処理のステップS32で、そのイベント情報を反映した図12(b)に示すデスクトップ画面60bのフレームデータが作成され、クライアント端末20Bに送信される。
デスクトップ画面60bは、書類データ領域61bと、参考資料62a,62bと、を有する。参考資料62aは、サーバ装置10の記憶部15に記憶されている参考書類データとする。書類データ領域61bは、記入領域611a,612b,613と、を有する。書類データ領域61bには、クライアント端末20Bのユーザによる記入領域611aの提案の評価がなされている。
そして、クライアント端末20Bにおいて、第2のクライアント接続処理のステップS47で、操作部22を介するユーザからの記入完了指示入力に応じて、そのイベント情報がサーバ装置10に送信される。そして、サーバ装置10で、第1のクライアント接続処理のステップS34において、クライアント端末20Bとのデスクトップ接続が切断される。
そして、サーバ装置10において、図7の書類作成サービス提供処理のステップS22で、記入完了切断があり、ステップS23で、処理書類リストテーブル30の書類番号31が1のレコードの作業者端末32が、次の処理順番のクライアント端末20Cに変更され、同じく状態33が接続待ちに変更される。そして、ステップS12に戻り、ステップS13〜S17で、クライアント端末20Cによるデスクトップ画面60bの記入領域613への記入作業がなされ、記入完了切断がなされる。
そして、サーバ装置10において、図7の書類作成サービス提供処理のステップS22で、記入完了切断があり、ステップS24で、次の処理順番のクライアント端末が無いため、ステップS25で、処理書類リストテーブル30の書類番号31が1のレコードの状態33が完了に変更される。そして、サーバ装置10において、ステップS27で、処理完了情報が、処理書類リストテーブル30の書類番号31が1のリスト登録者端末34のクライアント端末20Aに送信される。また、書類番号=2,3についての処理は、上記書類番号=1についての処理と並行して行われる。
以上、本実施の形態によれば、シンクライアントシステム1のサーバ装置10において、CPU11は、デスクトッププログラム153及び書類作成サービス提供プログラム151の実行により、書類データの作業を行うためのデスクトップ画面のフレームデータを作成し、処理順番リストテーブル50等に応じて、当該フレームデータを作業対象の工程のクライアント端末に送信する。また、CPU11は、第1のシンクライアント接続プログラム152の実行により、クライアント端末より送信されてきたイベント情報を受信し、当該受信したイベント情報に応じて、デスクトップ画面のフレームデータの更新、操作状態の更新、及び書類データに対する更新の処理を行う。
そして、CPU11は、書類作成サービス提供プログラム151の実行により、所定のクライアント端末のイベント情報に従った処理に応じた書類データの更新が完了した後に、当該クライアント端末のデスクトップ画面のフレームデータ、操作状態、及び当該書類データに対する処理状態を引き継いで、次工程のクライアント端末に対応して、前記フレームデータの送信及び前記イベント情報に応じた処理を実行する。
このため、複数の工程からなる作業を複数のクライアント端末で順に行い書類データを作成するにあたり、各工程の作業を行うクライアント端末のデスクトップ画面、操作状態及び書類データへの処理状態を、次工程のクライアント端末へ引き継いでそのまま提供できる。
加えて、従来のワークフローシステムで書類データを作成する構成では、クライアント端末が作業時にサーバ装置から書類データをダウンロードする必要があったが、シンクライアントシステム1では、サーバ装置10からクライアント端末に書類データをダウンロードせず、サーバ装置10が書類データを更新する。このため、クライアント端末の処理負担と、クライアント端末及びサーバ装置10間の通信の負担と、を低減できる。
また、記憶部15は、複数の書類データ及び当該複数の書類データの処理順番リストテーブル50を記憶し、前記デスクトップ画面のフレームデータの送信及び前記イベント情報に応じた処理、及びこれらの処理を複数のクライアント端末に順に実行させることを複数の書類データに対して並行して行う。このため、複数の書類データに対して、それぞれ複数の工程からなる作業を複数のクライアント端末で順に行い、複数の書類データを効率的に作成できる。
また、サーバ装置10のCPU11は、記憶部15に記憶された処理順番リストテーブル50に応じて、書類データに対する全てのクライアント端末による作業を完了したか否かを判別し、当該作業を完了した場合に、当該書類データの作成の処理が完了した旨の処理完了情報を、リスト登録者端末34のクライアント端末に送信する。このため、処理完了情報を受信したクライアント端末が、書類データに対する処理完了の旨を表示部24に表示する等して、ユーザに通知できる。
以上の説明では、本発明に係るプログラムのコンピュータ読み取り可能な媒体として記憶部15及びROM25を使用した例を開示したが、この例に限定されない。
その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、CD−ROM等の可搬型記録媒体を適用することが可能である。
また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
なお、上記実施の形態における記述は、本発明に係るシンクライアントシステムのサーバ装置及びプログラムの一例であり、これに限定されるものではない。
上記実施の形態では、図10のステップS32で、サーバ装置10のCPU11は、イベント情報がクライアント端末から受信された場合に、そのイベント情報に応じてデスクトップ画面のフレームデータ更新を行う構成としたが、これに限定されるものではない。サーバ装置10のCPU11が、デスクトップ画面のフレームデータ更新を、イベント情報の受信の有無にかかわらず、所定時間で周期的に実行する構成としてもよい。
また、上記実施の形態におけるシンクライアントシステム1の各構成要素の細部構成及び細部動作に関しては、本発明の趣旨を逸脱することのない範囲で適宜変更可能であることは勿論である。