次に、本発明の実施形態について一例を挙げて説明する。
[システム全体の概略構成]
図1は、レイアウト表示システムを構成する機器の一例を示す概略構成図である。
本発明のレイアウト表示システムは、少なくとも1台の管理サーバ1と、何台かのクライアントパーソナルコンピュータ(以下、パーソナルコンピュータをPCと略称する)2と、何台かのプリンタ3とを備えるシステムとして構成され、これらの各機器がLAN(Local Area Network)5に接続されて、相互に通信可能となっている。
なお、図1においては、管理サーバ1として1台のPCを図示してあるが、2台以上のコンピュータが協働して1つの管理サーバ1として機能するように構成されていてもよい。管理サーバ1を1台のPCで構成する場合は、管理サーバ1の備えるべきすべての手段が、その1台のPCに設けられることになる。また、管理サーバ1を2台以上のコンピュータで構成する場合は、管理サーバ1の備えるべき各手段を2台以上のコンピュータに分散配置し、各コンピュータが相互に必要な情報をやり取りしながら、それら2台以上のコンピュータが分散処理を行って、1つの管理サーバ1として機能するように構成される。このような分散処理システムは、例えば、システムの規模が比較的大きい場合、あるいは管理サーバ1にかかる負荷が比較的大きい場合等に採用すると効果的である。
また、図1においては、2台のクライアントPC2と、2台のプリンタ3を図示してあるが、システム内に存在するクライアントPC2やプリンタ3の台数は任意である。
さらに、図1においては、LAN5を簡略化して図示してあるが、より詳しくは、LAN5は、ルータやハブなどの中継機器や、これら中継機器を含む機器間を結ぶネットワークケーブルによって構成される。
[システム内の各機器のハードウェア構成]
図2は、管理サーバ1、クライアントPC2、およびプリンタ3のハードウェア構成を示したブロック図である。上述の通り、システム内に存在するクライアントPC2の台数、およびプリンタ3の台数は、それぞれ任意であるが、本システムを理解する上で必要となる基本的なハードウェア構成は、どのクライアントPC2でも同じであり、また、どのプリンタ3でも同じなので、図2では、それぞれ1台ずつを抜粋して例示してある。また、管理サーバ1も、上述の通り、2台以上のコンピュータで構成可能であるが、本実施形態では、管理サーバ1が1台のPCで構成されているものとして、以下の説明を続ける。
まず、管理サーバ1のハードウェア構成について説明する。
管理サーバ1は、図2に示す通り、CPU11と、メモリ12と、ハードディスク装置13(HDD13)と、入力部14と、表示部15と、ネットワークインターフェース(ネットワークIF)16などを備えている。
これらのうち、CPU11は、メモリ12に記憶されたプログラムに従って各種演算や各種制御を実行する周知の装置である。
メモリ12は、読み出し専用で電源が断たれても記憶内容が消えないROM、読み書き可能で電源が断たれると記憶内容が消えるRAM、読み書き可能で電源が断たれたときは内蔵する電池で記憶内容を保持する不揮発性RAMなどで構成される。これらのうち、ROMには、BIOS(Basic Input Output System)や基本的ないくつかのデータが記憶されている。また、RAMにはOSや各種アプリケーションなどのプログラムがHDD13から読み込まれ、CPU11での演算に伴って得られる各種データもRAMに記憶されるようになっている。また、不揮発性RAMには、管理サーバ1において任意に設定変更可能な各種パラメータ等が記憶されるようになっている。
HDD13は、OSやアプリケーションに相当する各種プログラムファイル、および各種データファイルを記憶する装置である。
入力部14は、利用者が管理サーバ1に対して各種指令を与える際に操作する装置で、例えば、キーボードや各種ポインティングデバイス(例えば、マウス)等によって構成される。
表示部15は、管理サーバ1が利用者に対して各種情報を提示するための装置で、例えば、液晶ディスプレイによって構成される。
ネットワークIF16は、LAN5に接続された各機器との間で通信を行うための装置で、ネットワークインターフェースカード(Network Interface Card;以下、NICと略称する。)等を中心に構成されている。
次に、クライアントPC2のハードウェア構成について説明する。
クライアントPC2は、本実施形態の場合、管理サーバ1と同様の構成を備えており、図2に示す通り、CPU21と、メモリ22と、ハードディスク装置23(HDD23)と、入力部24と、表示部25と、ネットワークインターフェース(ネットワークIF)26などを備えている。
これらの各構成は、管理サーバ1が備えるものとほとんど差異がないので、ここでの詳細な説明は省略する。
次に、プリンタ3のハードウェア構成について説明する。
プリンタ3は、図2に示す通り、CPU31と、メモリ32と、印刷部33と、入力部34と、表示部35と、ネットワークインターフェース(ネットワークIF)36などを備えている。
これらのうち、CPU31は、メモリ32に記憶されたプログラムに従ってプリンタ3の各部を制御する装置である。
メモリ32は、既に説明したROM、RAM、不揮発性RAMなどで構成される。
印刷部33は、記録媒体(例えば記録用紙)の搬送機構や記録媒体に対して画像を記録する画像記録機構などからなり、これらの各機構がCPU31によって制御されるようになっている。
入力部34は、利用者がプリンタ3に対して各種指令を与える際に操作する装置で、例えば、いくつかのキーを有する操作パネルによって構成される。
表示部35は、プリンタ3が利用者に対して各種情報を提示するための装置で、例えば、液晶ディスプレイによって構成される。
ネットワークIF36は、LAN5に接続された各機器との間で通信を行うための装置で、NIC等を中心に構成されている。
[システム内の各機器のソフトウェア構成]
図3は、管理サーバ1、クライアントPC2、およびプリンタ3のソフトウェアおよびデータの構成を示したブロック図である。
管理サーバ1では、CPU11がソフトウェアに従って各種処理を実行し、これにより、管理サーバ1において、OS部41が機能するとともに、このOS部41による管理下で、装置/フロア情報管理部42、フロアエディタ部43などが機能するように構成されている。
OS部41は、管理サーバ1おける基本的な制御を行っており、このOS部41のマルチタスク機能により、OS部41、装置/フロア情報管理部42、およびフロアエディタ部43など複数のソフトウェアが時分割で並列に機能するようになっている。また、このOS部41は、複数のソフトウェアそれぞれに対応する複数のウィンドウを管理サーバ1の表示部15に表示するマルチウィンドウ機能を備えている。このようなマルチタスク機能、マルチウィンドウ機能を持つOSの具体例としては、Windows(登録商標)、MacOS(登録商標)などを挙げることができる。なお、これらのOSによって提供される各種機能は公知なので、マルチタスク機能、およびマルチウィンドウ機能についての詳細な説明は省略するが、以下の説明においては、管理サーバ1が、Windows(登録商標)によって提供される各種機能を有するとの前提で説明を続ける。
装置/フロア情報管理部42は、ネットワーク上の各機器(クライアントPC2やプリンタ3)から各種情報を取得して、その情報を装置管理データ44として記憶するとともに、必要に応じて、装置管理データ44やフロア形状データ45をネットワーク上の各機器(クライアントPC2やプリンタ3)に提供する処理(詳しくは後述)を実行する。
フロアエディタ部43は、フロア形状データ45を作成する処理や、装置管理データ44にハブの情報を追加する処理(詳しくは後述)を実行する。
一方、クライアントPC2では、CPU21がソフトウェアに従って各種処理を実行し、これにより、クライアントPC2において、OS部51が機能するとともに、このOS部51による管理下で、レイアウト表示部52、印刷処理部53、アプリケーション部54、スプーラ部55などが機能するように構成されている。
OS部51は、管理サーバ1のOS部41と同様、マルチタスク機能、およびマルチウィンドウ機能を備えている。なお、上述の通り、マルチタスク機能、およびマルチウィンドウ機能を持つOSそのものは公知なので、その詳細な説明については省略するが、以下の説明においては、クライアントPC2が、Windows(登録商標)によって提供される各種機能を有するとの前提で説明を続ける。
レイアウト表示部52は、レイアウト表示角度56、見降ろし角度57、レイアウト表示モード58、ビュー領域形状データ59などのデータ群を作成するとともに、管理サーバ1から装置管理データ44やフロア形状データ45を取得して、これらのデータ群に基づいて、クライアントPC2の表示部25に、印刷システムのレイアウト図を表示する処理(詳しくは後述)を実行する。
印刷処理部53は、アプリケーション部54などから出力される印刷データに対し、プリンタ3の機種に応じた加工を加える処理などを実行する。
アプリケーション部54は、様々な処理を実行し得るが、例えば、印刷データの生成、出力などが、アプリケーション部54において実行される。
スプーラ部55は、アプリケーション部54などから出力される印刷データを印刷ジョブとして管理する処理を実行する。
さらに、プリンタ3では、CPU31がソフトウェアに従って各種処理を実行し、これにより、プリンタ3において、OS部61が機能するとともに、このOS部61による管理下で、印刷処理部62が機能する。
印刷処理部62は、クライアントPC2から送信されてくる印刷データを受信して、記録媒体に画像を記録する処理や、プリンタ3内で管理する各種情報(例えば、スリープ状態/レディ状態等の状態情報やトナー(インク)残量等の情報を他の機器に送信する処理などを実行している。
以上のようなソフトウェアによる処理が、管理サーバ1、クライアントPC2、およびプリンタ3のそれぞれにおいて実行される結果、クライアントPC2では、図4に示すように、表示部25が備える画面101上に、レイアウト図表示ウィンドウ103が表示されることになる。
このレイアウト図表示ウィンドウ103は、レイアウト図表示ウィンドウ103の上部にあるバー105と、バー105の下方にある表示領域107とで構成されている。
表示領域107には、図4に例示するように、1階のフロアを表すフロアオブジェクト111、2階のフロアを表すフロアオブジェクト113などが表示される。なお、詳しくは後述するが、このフロアオブジェクトの基本的な形状は、管理サーバ1が管理するフロア形状データ45に格納されており、フロア形状データ45の内容によっては、図4に示したような2階分のフロアオブジェクトが表示されるとは限らず、1階分のフロアオブジェクトのみが表示される場合もあれば、3階分以上のフロアオブジェクトが表示される場合もある。
また、表示領域107には、印刷システムを構成する機器や結線を表すオブジェクトとして、PCオブジェクト115,117,119、プリンタオブジェクト121,123,125、ハブオブジェクト127、結線オブジェクト131,133,135などが表示される。以下、これらPCオブジェクト、プリンタオブジェクト、およびハブオブジェクトを総称して、機器オブジェクトともいう。なお、詳しくは後述するが、これら機器オブジェクトを配置する位置に関する情報や、どの機器オブジェクト間を結線オブジェクトで結ぶのかを示す情報は、管理サーバ1が管理する装置管理データ44に格納されている。なお、装置管理データ44中に機器オブジェクトを配置する位置に関する情報が含まれている場合、各機器オブジェクトはフロアオブジェクト上の対応する位置に重ねて配置されるが、装置管理データ44中には、機器オブジェクトを配置する位置に関する情報が含まれていない場合があるので、その機器については、PCオブジェクト119のように、フロアオブジェクトとは重ならない位置に機器オブジェクトが配置される。
さらに、表示領域107には、機器間を結ぶ結線を追加する際に利用者が操作する結線追加操作用アイコン136も表示される。この結線追加操作用アイコン136をポインティングデバイスでクリック操作すると、結線追加モードのON/OFFが切り替わる。結線追加モードONの状態で2つの機器オブジェクトを順にクリック操作すると、それら2つの機器オブジェクト間に結線オブジェクトが追加される。なお、結線オブジェクトが追加された場合、その結線に関する情報は、装置管理データ44に登録される。
[システム内で利用する各データの詳細]
次に、装置管理データ44の詳細について説明する。
装置管理データ44は、装置/フロア情報管理部42およびフロアエディタ部43が実行する処理の中で作成、更新されるデータで、図5に示すように、“Index”、“種類”、“NodeName”、“IP”、“結線”、“状態”、および“位置”の7項目を1組とするデータ群を、1組以上含むデータ構造を持っている。
これらの項目のうち、“Index”は、新たに1組のデータが追加されるときに付与される番号を格納する項目で、番号としては既存の各組とは重複しないユニークな番号が格納される。
“種類”は、本実施形態の場合、“HUB”、“PC”、“プリンタ”のいずれかが格納される項目で、1組のデータ群それぞれがネットワーク上のハブ、クライアントPC2、プリンタ3のいずれに対応するデータ群であるのかを示している。
“NodeName”は、クライアントPC2やプリンタ3に設定されたノード名を格納する項目である。ハブの場合はノード名を持たないので、“NodeName”にはデータが格納されない。
“IP”は、クライアントPC2やプリンタ3に付与されたIPアドレスを格納する項目である。ハブの場合はIPアドレスが付与されないので、“IP”にはデータが格納されない。“結線”は、各機器がどの機器に接続されているのかを示す項目である。本実施形態の場合、上位側機器に下位側機器が接続されてツリー構造のネットワークを形成しているものとみなし、上位−下位の関係を示す情報として、上位側機器の“Index”に相当する値を下位側機器の“結線”に格納している。具体的な例を挙げて説明すると、図5において、例えば、“Index”=3のクライアントPC2は、“結線”=2となっているので、“Index”=3のクライアントPC2が下位、“Index”=2のハブが上位となり、下位側のクライアントPC2が上位側のハブに接続されていることを示している。同様に“Index”=2のハブは、“結線”=1となっているので、“Index”=2のハブが下位、“Index”=1のハブが上位となって、下位側のハブがさらに上位側のハブに接続されていることを示している。そして、“Index”=1のハブは、“結線”=0となっているが、これは、“Index”=1のハブが、ツリー構造の最も上位にあることを示している。なお、“Index”=9のクライアントPC2は、“結線”=?となっているが、これは、どの機器に接続されているのかが不明であることを示している。
“状態”は、各機器の状態を示す情報を格納する項目で、格納される情報は、ハブ、クライアントPC2、プリンタ3のそれぞれで異なる。ハブの場合は、そのハブの使用中のポート数と総ポート数が、“Port:使用中のポート数/総ポート数”の形式で格納される。クライアントPC2の場合は、クライアントPC2がデフォルトプリンタに指定しているプリンタ3の情報が、そのプリンタ3に対応する“Index”の値を用いて、“defaultP:Index値”の形式で格納され、クライアントPC2がテンポラリプリンタに指定しているプリンタ3の情報が、そのプリンタ3に対応する“Index”の値を用いて、“temporaryP:Index値”の形式で格納され、さらに、クライアントPC2が印刷中であるか否かを示す情報が、“printing:YES/NO”(YES/NOは、いずれかを択一)の形式で格納される。なお、デフォルトプリンタは、クライアントPC2で利用者が特定のプリンタを選択することなく印刷出力した場合に、クライアントPC2における既定値として選択されることになるプリンタである。また、テンポラリプリンタは、クライアントPC2から特定のプリンタ(デフォルトプリンタまたは利用者が選択したプリンタ)への印刷出力に失敗し、一時的に出力先を変更したい場合に、その変更後の出力先となるプリンタである。プリンタ3の場合は、プリンタ3がスリープ状態かレディ状態かパワーオフ状態かを示す情報が、“status:SLEEP/READY/POWEROFF”(SLEEP/READY/POWEROFFは、いずれかを択一)の形式で格納され、各色のトナー(インク)残量に関する情報が、“Y:イエロートナー(インク)残量値,M:マゼンタトナー(インク)残量値,C:シアントナー(インク)残量値,K:ブラックトナー(インク)残量値”の形式で格納される。
“位置”は、各機器の設置場所を示す情報を格納する項目で、何階のフロアであるかを示す情報と、各フロア内におけるX座標、Y座標を格納している。なお、各フロア内におけるX座標、Y座標は、フロアエディタ部43において別途規定された座標系における座標値である。なお、図5において、“Index”=9のクライアントPC2は、“位置”=?となっているが、これは、このクライアントPC2がどこに設置されているのかが不明であることを示している。
次に、フロア形状データの詳細について説明する。
フロア形状データ45は、フロアエディタ部43が実行する処理の中で作成、更新されるデータで、図6に示すように、“階”および“形状データ”を1組とするデータ群を1組以上含むデータ構造を持っている。
“階”には何階のフロアデータであるのかを示す値が格納され、“形状データ”には、各座標を一筆書きで順に結ぶと各階のフロア形状となる座標データが格納されている。
以上説明したフロア形状データ45に基づいて、フロア形状を示すフロアオブジェクトを表示可能となり、また、装置管理データ44中の“位置”に基づいて、各機器を示す機器オブジェクトをフロアオブジェクト上の適切な位置に重ねて配置できるようになる。また、装置管理データ44中の“結線”に基づいて、各機器間を結ぶ機器オブジェクトをフロアオブジェクト上に重ねて配置できるようになる。
図7は、図5に例示した装置管理データ44と図6に例示したフロア形状データ45に基づいて、フロアオブジェクト、機器オブジェクト、結線オブジェクトを配置したレイアウト図の一例である。
フロアオブジェクト137,139は、図6に例示したフロア形状データ45に基づいて輪郭線が描かれている。なお、図6においては、機器オブジェクト141〜149が配置された位置を理解しやすくするため、輪郭線の内側に所定の間隔で(本実施形態では座標値100に相当する間隔で)グリッドを描いてあるが、このようなグリッドを描くか否かは任意である。
そして、機器オブジェクト141〜149は、それぞれ図5に例示した装置管理データ44中の“位置”に基づいて、フロアオブジェクト137,139上の適切な位置に重ねて配置される。例えば、機器オブジェクト141は、図5に例示した装置管理データ44中の“Index”=1のハブに対応し、その“位置”が“2F X=100、Y=400”となっているので、2Fに対応するフロアオブジェクト139上で、X=100、Y=400に相当する位置に、機器オブジェクト141が重ねて配置されている。以下、機器オブジェクト142〜148も、同様にフロアオブジェクト137,139いずれかの上で、適切なX,Y座標上に重ねて配置されている。機器オブジェクト149は、図5に例示した装置管理データ44中の“Index”=9のPCに対応し、その“位置”が“?”となっているので、フロアオブジェクト137,139上には重ならない位置に配置されている。
さらに、結線オブジェクト152〜158は、それぞれ図5に例示した装置管理データ44中の“Index”および“結線”に基づいて、各値を“Index”に持つ機器オブジェクトを特定した上で、それら2つの機器オブジェクト間を結ぶように配置される。例えば、図5に例示した装置管理データ44中の“Index”=2のハブは、“結線”=1なので、“Index”=1のハブに対応する機器オブジェクト141と、“Index”=2のハブに対応する機器オブジェクト142を特定し、それら2つの機器オブジェクト141,142間を結ぶように、結線オブジェクト152が配置されることになる。以下、結線オブジェクト153〜158も、同様に2つの機器オブジェクトを特定した上で、それらの間を結ぶように配置される。
以上のような手順で、図7に例示したようなレイアウト図を完成することができる。
次に、レイアウト表示角度56、および見降ろし角度57の詳細について説明する。
レイアウト表示角度56、および見降ろし角度57は、レイアウト表示部52が実行する処理の中で作成、更新されるデータである。先に示した図7では、装置管理データ44中の“位置”に含まれるX,Y座標と、各オブジェクトが配置されるレイアウト図上での位置との関係を理解しやすくするため、各フロアを平面視するとともに、各フロアをレイアウト図上で隣に並べて表示したレイアウト図を例示したが、このレイアウト表示システムでは、既に図4にも例示した通り、三次元空間を二次元のレイアウト図上に投影した形態(斜視図や鳥瞰図と呼ばれる形態;以下、斜視図形態という。)でレイアウト図を表示することができ、このような斜視図形態のレイアウト図を表示するためのデータとして、クライアントPC2は、レイアウト表示角度56、および見降ろし角度57が利用される。
より詳しくは、レイアウト表示角度56および見降ろし角度57は、三次元空間を二次元のレイアウト図上に投影する際の視点位置を規定するデータであり、図6(a)に示すように、レイアウト表示角度56は0から359°の範囲内、見降ろし角度57は0から90°の範囲内で、それぞれを利用者が任意に設定可能となっている。
斜視図形態のレイアウト図を表示する際には、z軸方向に延びる軸線を回転中心としてxy平面を任意の回転角まで回転させたレイアウト図を表示することができ、レイアウト表示角度56は、図6(b)に示すように、視点位置のz軸周りの回転角を、基準となる回転角を0°とする相対的な回転角で示している。また、見降ろし角度57は、図6(c)に示すように、xy平面と回転中心との交点を視点位置から見下ろしたときの視線とxy平面のなす角度を示している。なお、この回転中心は、図形の重心位置とすると、見かけ上、より安定した回転操作がなされているように見えるので好ましい。あるいは、単にx、y方向の両端の座標に基づいて、その中点となる位置を回転中心としてもよい。
このようなレイアウト表示角度56、および見降ろし角度57が決まれば、フロア上のX,Y座標および、階に相当するZ座標に基づいて、これらの三次元座標をレイアウト図上の二次元座標に座標変換し、各オブジェクトを画面上に表示することができる。なお、三次元座標を画面上の二次元座標に座標変換するに当たっては、平行投影法、透視投影法など、任意の投影法で座標変換を行うことができる。ただし、これらの投影法そのものは公知であり、これらの投影法をコンピュータグラフィックに応用することも、既に三次元CADシステムやカーナビゲーションシステムでは多用され、本システムにおいても同種の座標変換方法を任意に採用できるので、ここでは、座標変換自体の具体的な方法については、その詳細な説明を省略する。
次に、レイアウト表示モード58の詳細について説明する。
レイアウト表示モード58は、レイアウト表示部52が実行する処理の中で作成、更新されるデータであり、図4に示したレイアウト図表示ウィンドウ103の表示形態を規定するものである。具体的には、レイアウト表示モード58は、図6(a)に示すように、「表示」、「非表示」、「壁紙」のいずれかであり、後述するレイアウト表示部52が実行する処理の中で、利用者の操作に応じていずれかが任意に設定される。
「表示」が設定されている場合、図9に示すように、レイアウト図表示ウィンドウ103は、他のウィンドウ161,162に重ねて表示される。レイアウト図表示ウィンドウ103の中で、表示領域107は、いわゆる半透明状態で機器オブジェクトその他が表示されており、これにより、表示領域107の裏に重なっている別のウィンドウ161の内容が透けて見えるようになっている。なお、レイアウト図表示ウィンドウ103と他のウィンドウ161,162との重なりの順序は、例えば、後から操作対象となったウィンドウほど手前に重なるような順序となるが、レイアウト図表示ウィンドウ103の用途によっては、レイアウト図表示ウィンドウ103が常に手前に表示されるようになっていてもよく、常に手前に表示されるか否かを任意に設定できるようになっていてもよい。レイアウト図表示ウィンドウ103が常に手前に表示される場合、表示領域107の裏に重なっている別のウィンドウ161の内容が透けて見えるようになっていると、重なっているところに表示されている情報を簡単に確認することができるので、特に効果的である。
一方、「非表示」が設定されている場合は、図10に示すように、レイアウト図表示ウィンドウ103は、バー105だけを残すかたちにコンパクト化される。この状態にすると、表示領域107に表示されるレイアウト図を見ることはできなくなるが、他のウィンドウ161,162を見やすくすることができ、さらに、ポインティングデバイスでドラッグ操作を行うことにより、バー105を画面の隅に移動させることにより、さらに他のウィンドウ161,162を見やすくすることもできる。
さらに、「壁紙」が設定されている場合は、図11に示すように、表示領域107を画面いっぱいに拡大するとともに、画面上に存在するすべての他のウィンドウ162の背後に表示領域107を配置した状態で、表示領域107を表示することができる。この状態にすると、他のウィンドウ162を見やすくすることができ、また、他のウィンドウ162が小さい場合、表示領域107の情報も見ることができる。
なお、レイアウト表示モード58の切り替え操作は、後述する処理の中で実施できるが、「表示」および「非表示」は、ポインティングデバイスを使って、バー105に対するダブルクリック操作を行うことにより、交互に切り替えることもできる。
次に、ビュー領域形状データ59の詳細について説明する。
ビュー領域形状データ59は、レイアウト表示部52が実行する処理の中で作成、更新されるデータであり、利用者がレイアウト図として表示する表示範囲と、表示しない非表示範囲を任意に設定するためのデータである。より具体的には、ビュー領域形状データ59は、図12(a)に示すように、“階”および“形状データ”を1組とするデータ群を1組以上含むデータ構造を持っている。
“階”には何階の表示範囲であるのかを示す値が格納され、“形状データ”には、各座標を一筆書きで順に結ぶと各階の表示範囲となる座標データが格納されている。また、一つの“階”に対応する“形状データ”として、複数組の“形状データ”を格納する場合もある。そして、図12(b)に示すように、このビュー領域形状データ59中の“形状データ”で規定される表示範囲と、先に説明したフロア形状データ45中の“形状データ”で規定されるフロア形状とが重なる領域が、各フロアにおける表示領域165となり、フロア形状データ45中の“形状データ”で規定されるフロア形状の内側で、表示領域165以外の領域が、各フロアにおける非表示領域167となる。
表示領域165の内側に相当する位置に配置すべき機器オブジェクトが存在する場合、その機器オブジェクトはレイアウト図上に表示される。一方、非表示領域167の内側に相当する位置に配置すべき機器オブジェクトが存在する場合、その機器オブジェクトはレイアウト図上には表示されない。すなわち、装置管理データ44中に機器の情報が含まれている場合でも、その機器が非表示領域167の内側に相当する位置に配置されている場合は、その機器についての表示を行わない。
このような領域を設けることにより、管理サーバ1がすべての機器を管理しているにもかかわらず、利用者にとって見えない方がよい範囲については、機器オブジェクトの表示を制限し、利用者にとって必要な情報へのアクセスが容易になるようにしてある。より具体的な例を挙げれば、オフィスの同一フロアに別の部署が存在する場合に、一方の部署に属する機器の存在を他方の部署から見えないようにすることにより、他方の部署においては、一方の部署に属する機器か否かを迷うことなく、表示されている機器すべてを他方の部署の機器であると認識できるようになる。
なお、表示領域165と表示領域165との間に、広大な非表示領域167がある場合、非表示領域167の一部を削って、2つの表示領域165を接近させることにより、無駄な非表示領域167が少ないコンパクトな表示をできるようにしてもよい。この場合、非表示領域167の一部を削った部分に二重の波線などを表示することにより、二重の波線を跨ぐ距離に関しては、実レイアウトより表示上のレイアウトの方が短くなっていることを示すとさらによい。
[機器オブジェクトの表示態様の詳細]
次に、レイアウト図上に表示される機器オブジェクトの表示態様の詳細について説明する。
プリンタオブジェクトは、プリンタその他の状態に応じて表示態様が設定される。より詳しくは、プリンタその他の状態に応じたオブジェクトを、元のプリンタオブジェクトに組み合わせて表示することにより、様々な表示態様に切り替えられるようになっている。
具体例を挙げて説明すると、あるクライアントPC2において、あるプリンタ3をデフォルトプリンタに設定した場合、そのクライアントPC2でレイアウト図を表示すると、図13(a)に示すように、デフォルトプリンタとされたプリンタ3を示すプリンタオブジェクト171には、自機デフォルトプリンタオブジェクト173が組み合わせて表示される。このような表示態様で表示することにより、利用者は、どのプリンタ3がデフォルトプリンタなのかを、直感的に理解することができる。
また、プリンタオブジェクト171には、図13(b)に示すように、自機デフォルトプリンタオブジェクト173とは区別可能な形態で、他機デフォルトプリンタオブジェクト175が組み合わせて表示されることもある。他機デフォルトプリンタオブジェクト175は、他のクライアントPC2がデフォルトプリンタとして設定していることを示すオブジェクトであり、図13(b)に示す例は、レイアウト図を表示しているクライアントPC2と、それ以外の2台のクライアントPC2、以上合計3台のPCが同じプリンタ3をデフォルトプリンタに設定していることを示している。このような表示態様で表示することにより、利用者は、デフォルトプリンタに設定しているクライアントPC2が多いか少ないかを、直感的に理解することができる。
さらに、プリンタオブジェクト171には、図13(c)に示すように、自機デフォルトプリンタオブジェクト173や他機デフォルトプリンタオブジェクト175とは区別可能な形態で、自機テンポラリプリンタオブジェクト177が組み合わせて表示されることもある。自機テンポラリプリンタオブジェクト177は、印刷出力時にエラーが起こると表示されるオブジェクトで、利用者は、この自機テンポラリプリンタオブジェクト177をポインティングデバイスでドラッグ操作し、他のプリンタオブジェクト上にドロップ操作することで、エラーの発生した印刷ジョブについて、印刷出力先を他のプリンタ3に切り替えることができる。
加えて、プリンタオブジェクト171には、図13(d)に示すように、自機デフォルトプリンタオブジェクト173、他機デフォルトプリンタオブジェクト175、および自機テンポラリプリンタオブジェクト177とは区別可能な形態で、他機テンポラリプリンタオブジェクト179が組み合わせて表示されることもある。他機テンポラリプリンタオブジェクト179は、自機テンポラリプリンタオブジェクト177と同様、印刷出力時にエラーが起こると表示されるオブジェクトであるが、その出力元が他のクライアントPC2である点が、自機テンポラリプリンタオブジェクト177とは異なる。このような表示態様で表示することにより、利用者は、他のクライアントPC2が出力元となっているエラーが発生していることを、直感的に理解することができる。
なお、これら図13(a)〜同図(d)からわかるように、自機デフォルトプリンタオブジェクト173、他機デフォルトプリンタオブジェクト175、自機テンポラリプリンタオブジェクト177、他機テンポラリプリンタオブジェクト179などは、レイアウト図として表示する三次元空間内で、プリンタオブジェクト171などの機器オブジェクトを配置するxy平面に対し、プリンタオブジェクト171のz軸方向に重ねて配置される。このようにプリンタオブジェクト171のz軸方向に重ねて自機デフォルトプリンタオブジェクト173、他機デフォルトプリンタオブジェクト175、自機テンポラリプリンタオブジェクト177、他機テンポラリプリンタオブジェクト179を配置すれば、これらデフォルトプリンタオブジェクトやテンポラリプリンタオブジェクトは、プリンタオブジェクト171が配置されるxy平面上のスペースを、プリンタオブジェクト171とは独立に消費してしまうことがない。したがって、同一xy平面上にプリンタオブジェクト171とデフォルトプリンタオブジェクト173を並べて配置するような場合とは異なり、あるプリンタオブジェクト171の隣に別のプリンタオブジェクト171を配置しようとしたときにデフォルトプリンタオブジェクト173が邪魔になることはなく、利用者は、プリンタオブジェクト171同士の相対的な位置関係のみを考慮して特定のxy平面上に自由に複数のプリンタオブジェクト171を配置することができる。
また、プリンタオブジェクト171、自機デフォルトプリンタオブジェクト173、他機デフォルトプリンタオブジェクト175、自機テンポラリプリンタオブジェクト177、他機テンポラリプリンタオブジェクト179は、レイアウト図として表示する三次元空間内でz軸方向に重ねた結果、その三次元空間が投影された二次元平面上でも、実際にオブジェクトの重なりが生じているが、その重なり部分に関しては、プリンタオブジェクト171が最も優先的に手前に表示されるので、プリンタオブジェクト171が自機デフォルトプリンタオブジェクト173、他機デフォルトプリンタオブジェクト175、自機テンポラリプリンタオブジェクト177、他機テンポラリプリンタオブジェクト179などの陰に隠れることはなく、これにより、利用者はプリンタオブジェクト171を見やすくなっている。
ところで、以上のように、プリンタオブジェクト171には、自機デフォルトプリンタオブジェクト173、他機デフォルトプリンタオブジェクト175、および自機テンポラリプリンタオブジェクト177などが、それぞれを区別可能な形態で付加されるが、これらのオブジェクトの表示態様については、種々の変更が可能である。
例えば、あるプリンタ3をデフォルトプリンタに設定しているクライアントPC2が3台ある場合、図14(a)に示すように、その台数を示すデフォルトプリンタオブジェクト181を、プリンタオブジェクト171の脇に付加してもよい。
また、このようなデフォルトプリンタオブジェクト181では、自機のデフォルトプリンタか他機のデフォルトプリンタか区別できないことが問題であれば、図14(b)に示すように、台数を示すとともに、アンダーラインによって自機のデフォルトプリンタとなっていることをも示すデフォルトプリンタオブジェクト183を、プリンタオブジェクト171の脇に付加してもよい。
さらに、図14(c)に示すように、台数を示すとともに、アンダーラインによって自機のデフォルトプリンタとなっていることをも示すデフォルトプリンタオブジェクト183を採用した場合でも、印刷出力時にエラーが起こると表示される自機テンポラリプリンタオブジェクト185については、上述の如く、ポインティングデバイスによるドラッグ&ドロップ操作を行いやすいオブジェクトを表示してもよい。
また、図13(b)に示すように、自機デフォルトプリンタオブジェクト173とは区別可能な形態で、他機デフォルトプリンタオブジェクト175を組み合わせて表示する場合、単に他機デフォルトプリンタオブジェクト175の数を増やすだけでは、他機デフォルトプリンタオブジェクト175の表示に必要な領域が過大になり、レイアウト図が見難くなるおそれがあるが、そのような問題を避けるため、本実施形態においては、図15(a)に示すように、10台のクライアントPCにおいてデフォルトプリンタに設定されていることを示す他機デフォルトプリンタオブジェクト187や、図15(b)に示すように、100台のクライアントPC2においてデフォルトプリンタに設定されていることを示す他機デフォルトプリンタオブジェクト189を併用し、表示に必要な領域を削減するようにしている。このような表示態様で表示することにより、他機デフォルトプリンタオブジェクト175の表示に必要な領域が過大になることを防止でき、また、利用者は、他機デフォルトプリンタオブジェクトの総数を容易に把握できるようになる。
すなわち、所定数以上の機器からデフォルトプリンタとして選択されていた場合、所定数の通常のデフォルトプリンタオブジェクトを表示する代わりに、通常のデフォルトプリンタオブジェクトよりは大きく、所定数分の通常のデフォルトプリンタオブジェクトの配置に必要なサイズよりは小さいオブジェクト187,189(以下、所定数選択デフォルトプリンタオブジェクト187,189という)を表示し、この所定数選択デフォルトプリンタオブジェクト187,189では表現できない端数分(例えば、所定数選択デフォルトプリンタオブジェクト187の場合は、1〜9)だけを、通常のデフォルトプリンタオブジェクトで表示するようにしてもよい。このような所定数選択デフォルトプリンタオブジェクト187,189も、通常のデフォルトプリンタオブジェクト同様、機器オブジェクトのz軸方向に重ねて配置することにより、機器オブジェクトの配置を妨げないようにすることができ、しかも、所定数選択デフォルトプリンタオブジェクトと同数を示すのに必要な通常のデフォルトプリンタオブジェクトを表示した場合より、表示に必要なスペースを減らすことができる。
また、あるプリンタ3が、過剰に多くのクライアントPC2においてデフォルトプリンタに設定されていると、そのプリンタ3に印刷出力が集中して、所期のタイミングで印刷ができなかったり、過剰に早期に消耗品が消耗したりするので、そのような事態を招くおそれがあることを警告する意味で、そのようなプリンタ3については、積み上がったデフォルトプリンタオブジェクトが崩壊する態様(z軸方向の重なりが崩壊する表示態様)を持ったプリンタオブジェクト191を表示する。これにより、利用者は、特定のプリンタ3に負荷が集中していることを直感的に理解することができ、デフォルトプリンタを他のプリンタに変える等の対応をとることができる。
この他、あるクライアントPC2から、あるプリンタ3に対する印刷出力が行われている場合は、図17(a)に示すように、出力元となるクライアントPC2に対応するPCオブジェクト201から、結線オブジェクト203、ハブオブジェクト205、および結線オブジェクト207を経て、プリンタオブジェクト209において、印刷データの伝送が行われていることを示すため、結線オブジェクト203,207の表示態様を、データ伝送がなされていることを示す態様に切り替える。より具体的には、図17(a)中に示した矢印の方向へ、結線オブジェクト203,207上の破線が流れているように見えるアニメーションを表示する。これにより、利用者は、印刷データの出力元、伝送経路、出力先すべてを直感的に理解することができる。
また、PCオブジェクト201の示すクライアントPC2が、レイアウト図の表示を行っているクライアントPC2である場合には、PCオブジェクト201が自機であることを示すために、図17(a)に示すように、PCオブジェクト201に対して自機PCオブジェクト210が付加された表示態様が設定される。
また、あるプリンタ3がスリープ状態にある場合、そのプリンタ3については、図17(b)に示すように、スリープ状態を示すプリンタオブジェクト211を表示する。また、あるプリンタ3の状態が取得できない場合は、図17(c)に示すように、状態が取得できないことを示す表示態様のプリンタオブジェクト213を表示する。なお、パワーオフとなっているプリンタ3については、プリンタ3から状態を取得することができないので、このプリンタオブジェクト213が表示されることになる。
加えて、あるクライアントPC2が、複数のネットワークIF26を備えていて、複数の上位機器に接続された状態にある場合には、複数の上位機器に接続されていることを示す表示態様のPCオブジェクト215を表示する。このPCオブジェクト215には、複数のネットワークIF26それぞれに割り当てられたIPアドレスも併記され、これにより、利用者は、複数の上位機器に接続されていることを直感的に理解することができるようになっている。
なお、以上図示を交えて説明した通り、各機器オブジェクトは、いずれも各機器の概略の形態が直感的にわかり、その形態からどの機器なのかを利用者が容易に認識できるような形態とされている。
しかも、本実施形態の場合、後述する処理の中では、複数通りのアングルから見た複数の機器オブジェクトをあらかじめ用意しておき、その中から実際に設定されたレイアウト表示角度(=水平方向の回転角)や見降ろし角度に最も近いアングルから見た機器オブジェクトを選んで、その機器オブジェクトを表示するようにしている。このようにすると、機器オブジェクトの形状も視点位置によってある程度変わるので、レイアウト表示角度や見降ろし角度を変更した場合に、より違和感の少ないレイアウト図を表示することができる。
ちなみに、このような機器オブジェクトを表示するための別の手法としては、特定のアングルから各機器を見下ろしたような形態か、正面から各機器を見た形態となっている機器オブジェクトをあらかじめ一つだけ用意して、レイアウト表示角度や見降ろし角度とは無関係に、常にその機器オブジェクトをレイアウト図上に表示するという手法も考えられる。このような方法は、取り扱うデータ量が少ないので、各機器の性能が低くても容易に実装可能である。
逆に、機器オブジェクトをポリゴンで表現し、レイアウト表示角度や見降ろし角度を考慮した演算を行って、各機器の立体形状を忠実に再現してもよい。このような手法であれば、レイアウト表示角度や見降ろし角度により忠実な機器オブジェクトを表示することができる。ただし、このような手法は、取り扱うデータ量が多くなり、より高度な演算能力も要求される。
したがって、上記いずれの手法を選択するかは、機器の性能などを勘案して任意に決めればよい。
また、各機器オブジェクトを表す画像データは、初期状態において、管理サーバ1、クライアントPC2、プリンタ3のどれに格納されていてもよい。最終的には、クライアントPC2において機器オブジェクトを表示する際に必要となるデータなので、初期状態において、管理サーバ1またはプリンタ3に各機器オブジェクトを表す画像データが格納されている場合は、そのデータがクライアントPC2へ伝送されることになる。
本実施形態においては、各機器特有の形態を持つ機器オブジェクトの画像データを各機器毎に格納している。これにより、クライアントPC2が想定していなかった形態の機器がネットワークに接続された場合でも、その機器特有の形態がわかるような機器オブジェクトをクライアントPC2へ伝送して、わかりやすいレイアウト図を表示することができる。
ただし、各機器特有の形態を持つ機器オブジェクトの画像データは、必ずしも各機器毎に格納していなくてもよく、ネットワーク上の機器のどれかから取得できるようになっていれば、同様にわかりやすいレイアウト図を表示することができる。また、各機器特有の形態を持つ機器オブジェクトの画像データが存在しない機器に関しては、その機器を表す代表的な形態の機器オブジェクトの画像データで代替表示を行えばよい。この場合、実際の機器と機器オブジェクトが必ずしも類似した形態にはならないことがあるので、いくらか忠実度の低いレイアウト図にはなるが、レイアウト図の表示が不可能になることはない。本実施形態の場合、機器オブジェクトの画像データを各機器毎に格納しているため、パワーオフとなっている機器からは、画像データを取得することができない。後述する処理では、このようなパワーオフとなっている機器に関し、上記の代替表示を行っている。
[各機器が実行する処理の詳細]
次に、各機器が実行する処理の詳細について説明する。
まず、管理サーバ1において実行される装置/フロア情報管理処理について、図19に基づいて説明する。この装置/フロア情報管理処理は、管理サーバ1の稼働時に、装置/フロア情報管理部42において常時実行されている処理である。
装置/フロア情報管理処理を開始すると、管理サーバ1は、まず、プリンタ3やクライアントPC2から通知があったか否かを判断する(S105)。プリンタ3は、稼働を開始すると、後述する処理の中で、自身に設定されたノード名、自身に割り当てられたIPアドレス、自身の状態(レディ状態、スリープ状態等)を管理サーバ1に通知するとともに、それらの情報に変更がないかどうかを常に監視し、変更があった場合にも、変更後の情報を管理サーバ1へ通知する。また、クライアントPC2も、自身に設定されたノード名、自身に割り当てられたIPアドレス、自身の状態(印刷処理開始、印刷処理中にエラー発生、印刷処理終了等)を管理サーバ1に通知する。
これらの通知を管理サーバ1が受けていた場合(S105:YES)、管理サーバ1は、その通知に従って、装置管理データ44を更新する(S110)。そして、更新後の装置管理データ44を、全てのクライアントPC2に対して送信し(S115)、S105の処理へと戻る。
また、S105の処理において、通知がなかったと判断した場合(S105:NO)、管理サーバ1は、フロア形状データ45のエディットがなされたか否かを判断する(S120)。このフロア形状データ45のエディットは、装置/フロア情報管理部42の一機能として設けられたフロアエディタを使って実施することができる。
ここで、フロアエディタについて説明すると、フロアエディタを起動した場合、管理サーバ1の表示部15には、図20(a)に示すようなフロアエディタウィンドウ251が表示される。このフロアエディタウィンドウ251内には、ラインツールボタン253、ハブ追加ボタン255、編集領域257、フロア選択欄259、新規フロア追加ボタン261、キャンセルボタン263、保存ボタン265などが設けられている。
ラインツールボタン253は、フロアの形状を示す輪郭線を描くライン描画モードのON/OFFを切り替えるスイッチで、ライン描画モードONの状態において、編集領域257でグリッド267を目安にしながら、ポインティングデバイスを使ってクリック操作を行うと、そのクリック操作で指定されたポイントを結ぶ輪郭線269が編集領域257に描かれ、クリック操作で指定されたポイントの座標が、フロア形状データ45中の形状データとして採用されることになる。
ハブ追加ボタン255は、利用者が装置管理データ44にハブの情報を追加したいときにクリック操作されるボタンで、ハブ追加ボタン255をクリック操作すると、編集領域257にハブオブジェクト271が追加され、ポインティングデバイスを使ってハブオブジェクト271に対するドラッグ操作を行ってハブオブジェクト271を所望の位置に移動させると、ハブオブジェクト271が配置された位置に基づいて、装置管理データ44中の位置情報が設定されることになる。また、ハブオブジェクト271を輪郭線269の外側にドラッグすると、ハブオブジェクト271が削除される。さらに、このハブオブジェクト271は、出力側のポート数のデフォルト値が7に設定されているが、このポート数は実際に設置するハブのポート数に合わせて設定を変更することができる。具体的には、ポート数を変更したい場合は、ポインティングデバイスを使ってハブオブジェクト271に対するダブルクリック操作を行う。その結果、管理サーバ1の表示部15には、図20(b)に示すようなポート数設定ウィンドウ281が表示される。このポート数設定ウィンドウ281には、ポート数選択欄283,キャンセルボタン285,OKボタン287などが設けられている。ここで、ポート数選択欄283において所望の数を入力するか数値を増減操作し、OKボタン287をクリック操作すると、新たなポート数が設定されることになる。
フロア選択欄259は、エディット対象となるフロアを選択するための入力欄で、ここで選択できないフロアを追加したい場合は、新規フロア追加ボタン261をクリック操作する。これにより、複数のフロアのそれぞれについて、フロア形状のエディットおよびハブの追加/削除を行うことができる。
そして、フロア形状のエディットおよびハブの追加/削除を終えた後、保存ボタン265をクリック操作すると、フロア形状およびハブに関する情報の更新を指示したことになり、キャンセルボタン263をクリック操作すると、フロア形状およびハブに関する情報の更新破棄を指示したことになる。
以上説明したようなフロアエディタでの操作により、利用者からフロア形状およびハブに関する情報の更新指示が与えられるので、管理サーバ1は、フロアエディタの結果に従い、フロア形状データ45と装置管理データ44の更新(ハブの追加/削除)を行う(S125)。そして、更新後のフロア形状データ45と装置管理データ44を全てのクライアントPC2に送信し(S130)、S105の処理へと戻る。
また、S120の処理において、フロア形状データのエディットがなされなかったと判断した場合(S120:NO)、管理サーバ1は、全てのプリンタ3の生存確認を行い(S135)、生存しないプリンタ3があるか否かを判断する(S140)。具体的には、装置管理データ44に登録されているプリンタ3を対象にして、ユニキャストにてICMPエコーパケットの送信(いわゆるPING(packet internet groper))を実行することにより、各プリンタ3に対して応答を返すように要求し、装置管理データ44内に情報が登録されているにもかかわらず、対象となったプリンタ3の中に応答を返さないプリンタ3が存在すれば、生存しないプリンタ3があると判断し(S140:YES)、一方、対象となったプリンタ3全てが応答を返せば、生存しないプリンタ3がないと判断する(S140:YES)。なお、上記のように、対象となる各プリンタ3に対してユニキャストにて応答を要求する方法以外には、対象となる全てのプリンタ3に対してブロードキャストにて応答を要求する方法もあり、特に問題がなければどちらの方法を採用してもよいが、ブロードキャストの場合、ルータの設定によってはルータの先に存在するプリンタ3までパケットが届かないことがあるので、ルータの先に存在するプリンタ3と確実に通信したい場合は、ユニキャストを使用する方が好ましい。
以上のようなS140の処理において、生存しないプリンタ3があると判断した場合(S140:YES)、管理サーバ1は、装置管理データ44内のプリンタのステータスをPOWEROFFとする(S145)。そして、更新後の装置管理データ44を全てのクライアントPC2に送信し(S150)、S105の処理へと戻る。なお、S140の処理において、生存しないプリンタ3がないと判断した場合は(S140:YES)、そのままS105の処理へと戻る。
以上のような装置/フロア情報管理処理が、管理サーバ1では繰り返し実行される。その結果、管理サーバ1では、図5に例示したような装置管理データ44が作成、更新され、全てのクライアントPC2に送信されることになる。
次に、プリンタ3において実行されるプリンタ処理について、図21に基づいて説明する。このプリンタ処理は、プリンタ3の稼働時に、印刷処理部62において常時実行されている処理である。
プリンタ処理を開始すると、プリンタ3は、まず、自身に設定されたノード名、自身に割り当てられたIPアドレス、自身の状態(レディ状態、スリープ状態等)を、管理サーバ1へ通知する(S205)。そして、プリンタ3は、IPアドレス、状態に変化があるか否かを判断し(S210)、変化があった場合は(S210:YES)、変更後のIPアドレス、状態を管理サーバ1に通知する(S215)。これらS205,S215の処理で管理サーバ1へ送られる通知は、既に説明したS105の処理において管理サーバ1に受け取られることになる。なお、S210の処理で、変化がなかったと判断した場合は(S210:NO)、S215の処理をスキップする
続いて、プリンタ3は、起床命令を受け取ったか否かを判断する(S220)。起床命令は、後述する処理の中でクライアントPC2から送信されてくる命令で、起床命令を受け取った場合(S220:YES)、プリンタ3は、スリープ状態の解除を行って起床するとともに、状態を管理サーバ1に通知する(S225)。このS225の処理で管理サーバ1へ送られる通知も、既に説明したS105の処理において管理サーバ1に受け取られることになる。ちなみに、プリンタ3の起床動作は、記録方式よって異なる動作となり、具体例を挙げれば、例えばレーザープリンタの場合は、ウォームアップなどの処理が起床動作に相当し、インクジェットプリンタの場合は、パージなどの処理が起床動作に相当する動作となる。なお、S220の処理で、起床命令を受け取っていないと判断した場合は(S220:NO)、S225の処理をスキップする。
続いて、プリンタ3は、印刷データを受信したか否かを判断する(S230)。印刷データは、例えば、クライアントPC2のアプリケーション部54において作成され、印刷処理部53やスプーラ部55の機能により、クライアントPC2からプリンタ3へと伝送されるデータである。印刷データを受信した場合(S230:YES)、プリンタ3は、受信した印刷データに基づいて印刷し(S235)、S210の処理へと戻る。なお、S230の処理で、印刷データを受信していないと判断した場合は(S230:NO)、S235の処理をスキップして、S210の処理へと戻る。
以降、プリンタ3では、S210〜S235の処理が繰り返し実行されることになる。その結果、プリンタ3は、自身の情報に関する変更がある毎に、最新の情報を管理サーバ1へ送信することになり、管理サーバ1では、図5に例示したような装置管理データ44の更新がなされ、それが全てのクライアントPC2に送信されることになる。
次に、クライアントPC2において実行されるユーザビュー設定処理について、図22に基づいて説明する。このユーザビュー設定処理は、クライアントPC2において、レイアウト表示部52の一機能として設けられたユーザビューエディタを使って、ユーザビューのエディットが行われたときに実行される処理である。
ユーザビューエディタを起動した場合、クライアントPC2の表示部25には、図23に示すようなユーザビュー設定ウィンドウ301が表示される。このユーザビュー設定ウィンドウ301内には、ラインツールボタン303、編集領域305、フロア選択欄307、レイアウト表示角度入力欄309、見降ろし角度入力欄311、表示モード選択欄313、キャンセルボタン315、保存ボタン317などが設けられている。
ラインツールボタン303は、ビュー領域(図12(b)に例示した表示領域165)を示す輪郭線を描くライン描画モードのON/OFFを切り替えるスイッチで、ライン描画モードONの状態において、編集領域305でグリッド321、フロア形状323などを目安にしながら、ポインティングデバイスを使ってクリック操作を行うと、そのクリック操作で指定されたポイントを結ぶ輪郭線327が編集領域305に描かれ、クリック操作で指定されたポイントの座標が、ビュー領域形状データ59中の形状データとして採用されることになる。なお、フロア形状323は、管理サーバ1から受信したフロア形状データ45に基づいて表示されるもので、そのフロア形状データ45は、先に説明したフロアエディタでエディットされて、管理サーバ1において保存されたものである。
フロア選択欄307は、ビュー領域の設定対象となるフロアを選択するための入力欄である。
レイアウト表示角度入力欄309は、先に説明したレイアウト表示角度56(図8(a)および同図(b)参照)を入力するための入力欄である。
見降ろし角度入力欄311は、先に説明した見降ろし角度57(図8(a)および同図(c)参照)を入力するための入力欄である。
表示モード選択欄313は、先に説明したレイアウト表示モード58(図8(a)、図9、図10、および図11参照)を入力するための入力欄である。
利用者は、以上のようなユーザビュー設定ウィンドウ301を利用して入力操作を行い、そのとき、クライアントPC2は、まず、ビュー領域形状データ59に変更があったか否かを判断する(S305)。ここで、ビュー領域形状データ59が変更されていた場合(S305:YES)、クライアントPC2は、ユーザビューエディタの結果に従い、ビュー領域形状データ59を仮更新し(S310)、S305の処理へ戻る。なお、仮更新とは、データ(S310の処理ではビュー領域形状データ59)の正式な更新は保留にしたまま、更新内容を一時的にテンポラリバッファに格納してユーザビュー設定ウィンドウ301内の表示だけを更新することを意味する。そして、後述するS360の処理を実行した場合にのみ、テンポラリバッファに格納された更新内容で、正式なデータの更新がなされることになる。
また、S305の処理で、ビュー領域形状データ59が変更されていなかった場合(S305:NO)、クライアントPC2は、レイアウト表示角度56に変更があるか否かを判断する(S315)。ここで、レイアウト表示角度56に変更があった場合(S315:YES)、クライアントPC2は、レイアウト表示角度56を仮更新し(S320)、S305の処理へ戻る。
また、S315の処理で、レイアウト表示角度56に変更がなかった場合(S315:NO)、クライアントPC2は、見降ろし角度57に変更があるか否かを判断する(S325)。ここで、見降ろし角度57に変更があった場合(S325:YES)、クライアントPC2は、見降ろし角度57を仮更新し(S330)、S305の処理へ戻る。
また、S325の処理で、見降ろし角度57に変更がなかった場合(S325:NO)、クライアントPC2は、レイアウト表示モード58に変更があるか否かを判断する(S335)。ここで、レイアウト表示モード58に変更があった場合(S335:YES)、クライアントPC2は、レイアウト表示モード58を仮更新し(S340)、S305の処理へ戻る。
また、S335の処理で、レイアウト表示モード58に変更がなかった場合(S335:NO)、クライアントPC2は、更新のキャンセルか否かを判断する(S345)。具体的には、キャンセルボタン315に対するクリック操作がなされているか否かを判断する。S345の処理において、更新のキャンセルであると判断した場合(S345:YES)、クライアントPC2は、仮更新されているテンポラリバッファの内容をクリアし(S350)、S305の処理へ戻る。このS350の処理により、ユーザビュー設定ウィンドウ301内の各項目の入力内容は、初期状態に戻ることになる。
また、S345の処理で、更新のキャンセルではないと判断した場合(S345:YES)、クライアントPC2は、更新の保存か否かを判断する(S355)。具体的には、保存ボタン317に対するクリック操作がなされているか否かを判断する。S355の処理において、更新の保存であると判断した場合(S355:YES)、クライアントPC2は、仮更新されているテンポラリバッファの内容を保存し(S360)、S305の処理へ戻る。このS360の処理により、ユーザビュー設定ウィンドウ301内の各項目の入力内容は、各データに反映され、正式な更新がなされることになる。
そして、S355の処理で、更新の保存ではないと判断した場合(S355:NO)、クライアントPC2は、この処理を終了するか否かを判断する(S365)。具体的には、終了を指示する操作(例えば、ユーザビュー設定ウィンドウ301の右上角にある“×”ボタンに対するクリック操作)がなされているか否かを判断する。ここで、利用者が終了を指示する操作を行っていなければ(S365:NO)、S305の処理へと戻る一方、利用者が終了を指示する操作を行っていれば(S365:YES)、ユーザビュー設定処理を終了する。
以上説明した処理が、クライアントPC2において実行される結果、クライアントPC2内で各情報が更新される。ただし、この処理で更新される情報は、いずれも個々のクライアントPC2が利用する情報であり、管理サーバ1へ送信されることはなく、他のクライアントPC2へ送信されることもない。したがって、同じ管理サーバ1から装置管理データ44を受け取っている複数のクライアントPC2がシステム内に存在する場合、ユーザビュー設定は、個々のクライアントPC2毎に任意に設定変更が可能である。
次に、クライアントPC2において実行される印刷処理について、図24に基づいて説明する。この印刷処理は、クライアントPC2の稼働時に、クライアントPC2の印刷処理部53において常時実行されている処理である。
この処理を開始すると、クライアントPC2は、印刷処理部53に対してスプーラ部55から印刷開始指示があるか否かを判断する(S405)。ここで、印刷開始指示がなければ(S405:NO)、再びS405の処理へと戻ることにより、スプーラ部55から印刷開始指示が与えられるのを待ち受ける。
印刷開始指示があった場合(S405:YES)、クライアントPC2は、印刷処理部53からレイアウト表示部52に対して印刷開始通知を行う(S410)。この印刷開始通知は、レイアウト表示部52が、後述する処理の中で受け取ることになる。そして、クライアントPC2は、スプーラ部55からデータを取り出し、印刷先となるプリンタ3に印刷データを送信する(S415)。
続いて、クライアントPC2は、印刷データの送信に伴うエラーが発生したか否かを判断する(S420)。ここで、エラーが発生していた場合(S420:YES)、クライアントPC2は、印刷処理部53からレイアウト表示部52に対して印刷エラー通知を行う(S425)。この印刷エラー通知も、レイアウト表示部52が、後述する処理の中で受け取ることになる。そして、クライアントPC2は、エラー解除、あるいは印刷先の変更を待ち(S430)、エラー解除、あるいは印刷先の変更がなされたら、S415の処理へと戻ることにより、印刷データの送信を再開する。
一方、S420の処理において、エラーが発生していないと判断された場合(S420:NO)、クライアントPC2は、スプーラ部55から全てのデータを取り出したか否かを判断する(S435)。ここで、スプーラ部55にまだ未処理のデータが残っていた場合は(S435:NO)、再びS415の処理へと戻ることにより、印刷データの送信を継続する。
こうして、S415〜S435の処理を繰り返した結果、S435の処理において、スプーラ部55から全てのデータを取り出したと判断された場合(S435:YES)、クライアントPC2は、印刷処理部53からレイアウト表示部52に対し印刷終了通知を行って(S440)、S405の処理へと戻ることにより、再びスプーラ部55から印刷開始指示が与えられるのを待ち受ける状態となる。
以上のような印刷処理により、印刷データが処理されるとともに、処理状況がレイアウト表示部52に通知されて、その通知を利用した処理がレイアウト表示部52において実行されることになる。
次に、クライアントPCにおいて実行されるレイアウト表示処理について、図25〜図28に基づいて説明する。このレイアウト表示処理は、本実施形態においては、クライアントPC2の稼働時にレイアウト表示部52において常に実行される処理である。ただし、これは、利用者の操作あるいは他のアプリケーションからの呼び出し等に応じて、レイアウト表示部52において実行される処理であってもよい。
レイアウト表示処理を開始すると、クライアントPC2は、まず、図25に示すように、管理サーバ1に装置管理データ44とフロア形状データ45を要求し(S505)、その要求に応じて送信されてくる装置管理データ44とフロア形状データ45を管理サーバ1から受信する(S510)。そして、クライアントPC2は、レイアウト画面表示処理を実行する(S515)。このレイアウト画面表示処理の具体的な処理の内容については、後から詳しく説明するが、S515の処理により、レイアウト図表示ウィンドウ103の表示領域107に描かれている内容が、最新の状態に更新されることになる。
続いて、クライアントPC2は、管理サーバ1から装置管理データ44とフロア形状データ45を受信したか否かを判断する(S520)。管理サーバ1は、装置管理データ44やフロア形状データ45に変更があった場合、それらのデータをクライアントPC2に送信するので(図19参照)、そのような送信がなされたか否かを、このS520の処理によって判断している。ここで、管理サーバ1から装置管理データ44とフロア形状データ45を受信したと判断した場合は(S520:YES)、S515の処理へ戻ることにより、レイアウト図表示ウィンドウ103の表示領域107に描かれている内容を最新の状態に更新する。
一方、S520の処理で、管理サーバ1から装置管理データ44とフロア形状データ45を受信していないと判断した場合(S520:NO)、続いて、クライアントPC2は、自機に相当するクライアントPC2の情報が装置管理データ44中に含まれているか否かを判断する(S525)。ここで、自機に相当するクライアントPC2の情報が装置管理データ44中に含まれていない場合(S525:NO)、クライアントPC2は、自機に相当するクライアントPC2のノード名、IPアドレス、状態を、管理サーバ1へ通知し(S530)、S520の処理へと戻る。なお、S530の処理により、クライアントPC2の情報が管理サーバ1へと送られるが、このクライアントPC2がどこに接続されているのかを示す結線情報は含まれていないので、この結線情報の編集が行われるまでは、このクライアントPC2は、図4に示したPCオブジェクト119のように、フロアオブジェクト111,113には重ならない位置に表示されることになる。
また、S535の処理で、自機に相当するクライアントPC2の情報が装置管理データ44中に含まれていると判断した場合(S525:YES)、クライアントPC2は、結線追加か否かを判断する(S535)。ここで、利用者が、レイアウト図表示ウィンドウ103内にある結線追加操作用アイコン136を操作して結線追加モードONとし、その状態で2つの機器オブジェクトを順にクリック操作することにより、それら2つの機器オブジェクト間に結線オブジェクトを追加する指示を与えていると、S535の処理では肯定判断がなされ、そのような操作が行われていなければ、S535の処理では否定定判断がなされる。
S535の処理で肯定判断がなされた場合(S535:YES)、クライアントPC2は、ハブに結線か否かを判断する(S540)。具体的には、結線追加モードONの状態でクリック操作された機器オブジェクトがハブオブジェクトであるか否かを、クリック操作がなされた座標と装置管理データ44中のハブの位置を示す座標とに基づいて判断する。
ここで、ハブに結線であると判断された場合(S540:YES)、続いて、クライアントPC2は、装置管理データ44に基づいてハブのポート状態に空きが無いか否かを判断する(S545)。ハブのポート数は、装置管理データ44中の“状態”に“Port:使用中のポート数/総ポート数”の形式で格納されているので、この中の使用中のポート数と総ポート数とに基づいて、空きが無いか否かを判断する。
そして、S545の処理で、ハブのポート状態に空きが無いと判断された場合(S545:YES)、クライアントPC2は、表示部25に図29に示す警告ウィンドウ331を表示する(S550)。なお、この警告ウィンドウ331は、ウィンドウ内のOKボタン333をクリック操作することによって消すことができる。
一方、S545の処理で、ハブのポート状態に空きがあると判断された場合(S545:NO)、クライアントPC2は、装置管理データ44中の“状態”に“Port:使用中のポート数/総ポート数”の形式で格納されているデータのうち、使用中のポート数をインクリメントする(S555)。
なお、S540の処理でハブに結線ではないと判断された場合は(S540:YES)、S545〜S555の処理はスキップされる。
さて、以上のようなS540〜S555の処理を終えたら、続いて、クライアントPC2は、レイアウト図表示ウィンドウ103の表示領域107内の表示に、結線オブジェクトを追加表示するとともに、装置管理データ44に更新があったことを、管理サーバ1に通知して(S560)、S520の処理へと戻る。
さて一方、S535の処理で否定判断がなされた場合は(S535:NO)、図26に示すように、クライアントPC2は、機器オブジェクトを移動したか否かを判断する(S565)。ここで、利用者が機器オブジェクトを移動させる操作を行っていた場合、S565の処理では肯定判断がなされ(S565:YES)、クライアントPC2は、既に装置がある場所に別の装置を移動させる操作については、その操作を不可とする一方、操作を不可としない場合は、操作に伴って(=例えばドラッグ操作に追従するように)機器オブジェクトと結線オブジェクトを移動表示し、その移動が完了した時点で、移動先の位置情報で装置管理データ44を更新して、装置管理データ44の更新がなされたことを管理サーバ1に通知するとともに、新規フロアを表示する必要が生じた場合は、新規フロアの表示を行い(S570)、S520の処理(図25参照)へ戻る。
このS570の処理では、機器オブジェクトは、レイアウト図表示ウィンドウ103の表示領域107内において利用者の意図した通りの位置へと移動することになる。
また、結線オブジェクトは、機器オブジェクトの位置に応じた所定の位置へ移動することになる。具体的には、図4に例示した結線オブジェクト133のように、ハブオブジェクト127とプリンタオブジェクト125を、一本の直線で斜めに結ぶのではなく、レイアウト図上の三次元座標系を規定する直交座標軸と平行な直線をいくつか組み合わせて結ぶ。このとき、結線オブジェクトの折れ曲がる位置は、結線対象となる機器オブジェクトの座標や他の結線オブジェクトとの重なりを考慮して、複数の結線オブジェクトが同一直線上に重ならず、且つ、可能な限り最短経路となるように設定される。なお、このような結線の描画方法自体は、作図ソフトウェア(いわゆるドローソフト)等において多用される周知技術である。
さらに、機器オブジェクトが一つのフロアに配置されている場合、フロアオブジェクトは一つだけ表示されていればよいが、本実施形態においては、利用者が機器オブジェクトをドラッグ操作することにより、z軸方向へ所定以上大きく移動させた場合には、その機器オブジェクトが別の新規フロアへ移動させられたものと判断する。このとき、その新規フロアを表示する必要が生じることになり、その場合、新規フロアを表すフロアオブジェクトを表示する。例えば、図4において、元々は、フロアオブジェクト111が表示され、且つ、フロアオブジェクト113が表示されていない状態にあり、しかも、PCオブジェクト117がフロアオブジェクト111上に表示されていた状態にあったと仮定すると、その状態から、PCオブジェクト117をz軸方向へ所定以上ドラッグ操作して、PCオブジェクト117がフロアオブジェクト111から離れた位置(例えば、図4中においてPCオブジェクト117が描かれている位置)に移動した場合には、その移動に伴って、新規のフロアオブジェクト113が表示され、これにより、PCオブジェクト117がフロアオブジェクト111の示すフロアから、1つ上のフロア(=フロアオブジェクト113が示すフロア)に移動したことになる。
加えて、既に装置がある場所に別の装置を移動させる操作を不可と判定した場合、クライアントPC2は、表示部25に図30に示す警告ウィンドウ335を表示する。この警告ウィンドウ335は、ウィンドウ内のOKボタン337をクリック操作することによって消すことができる。
さて、利用者が機器オブジェクトを移動させる操作を行っていなかった場合、S565の処理では否定判断がなされ(S565:NO)、その場合、クライアントPC2は、フロアを回転させる操作がなされたか否かを判断する(S575)。ここで、利用者がフロアオブジェクトに対するドラッグ操作を行っていると、S575の処理では肯定判断がなされ(S575:YES)、クライアントPC2は、レイアウト表示角度56を更新して(S580)、S515の処理(図25参照)へ戻る。なお、S580の処理では、フロアオブジェクトに対するドラッグ操作の操作量および操作方向に応じてレイアウト表示角度56が増減され、S515の処理でレイアウト図表示ウィンドウ103の表示領域107を再描画することにより、レイアウト表示角度56が変更された各オブジェクトが描画される。これにより、利用者からは、フロアオブジェクトに対するドラッグ操作によって各オブジェクトがz軸方向に延びる軸線を回転中心として回転しているように見える(図8(b)参照)。
一方、利用者がフロアを回転させる操作を行っていなかった場合、S575の処理では否定判断がなされ(S575:NO)、その場合、クライアントPC2は、印刷処理部53からレイアウト表示部52に対して印刷開始通知があるか否かを判断する(S585)。ここで、印刷開始通知がある場合(S585:YES)、クライアントPC2は、印刷ルートの結線オブジェクトを印刷中を示す表示態様(図17(a)、結線オブジェクト203,207参照)にするとともに、印刷開始を管理サーバ1に通知して(S590)、S520の処理(図25参照)へ戻る。このS590の処理で管理サーバ1へ送られる通知は、既に説明したS105の処理において管理サーバ1に受け取られることになる。
また、S585の処理において、印刷開始通知がなかった場合(S585:NO)、クライアントPC2は、印刷処理部53からレイアウト表示部52に対して印刷終了通知があるか否かを判断する(S595)。ここで、印刷終了通知がある場合(S595:YES)、クライアントPC2は、印刷ルートの結線オブジェクトを通常状態を示す表示態様(黒色の線)にするとともに、印刷終了を管理サーバ1に通知し、さらに、テンポラリプリンタオブジェクトが存在する場合は、そのテンポラリプリンタオブジェクトを消去して(S600)、S520の処理(図25参照)へ戻る。このS600の処理で管理サーバ1へ送られる通知も、既に説明したS105の処理において管理サーバ1に受け取られることになる。なお、S600の処理で、テンポラリプリンタオブジェクトが存在する場合とは、既に特定のプリンタへの印刷出力時にエラーが発生し、そのエラー発生に伴ってテンポラリプリンタオブジェクトがレイアウト図表示ウィンドウ103の表示領域107に描画されている場合(後述するS610の処理参照)である。既に説明した通り、利用者は、テンポラリプリンタオブジェクトをドラッグ操作で別のプリンタオブジェクト上へ移動させ、その位置でドロップ操作を行うことにより、印刷出力先をエラーの発生したプリンタ2から別のプリンタ2(=テンポラリプリンタオブジェクトをドロップしたプリンタオブジェクトに対応するプリンタ2)へ切り替えることができる。この切り替え操作に伴って開始された印刷が別のプリンタ2において終了した場合に、S600の処理では、ドロップ操作によってテンポラリプリンタオブジェクトが付加された別のプリンタオブジェクトから、テンポラリプリンタオブジェクトを消去することになる。
また、S595の処理において、印刷終了通知がなかった場合(S595:NO)、図27に示すように、クライアントPC2は、印刷処理部53からレイアウト表示部52に対して印刷エラー通知があるか否かを判断する(S605)。ここで、印刷エラー通知がある場合(S605:YES)、クライアントPC2は、プリンタオブジェクトをエラー状態を示す表示態様とし、結線オブジェクトをエラー状態を示す表示態様(例えば、通常は黒色の線、エラー状態は赤色の線)とし、テンポラリプリンタオブジェクトを表示し、印刷エラーの発生を管理サーバ1に通知して(S610)、S515の処理(図25参照)へ戻る。このS610の処理で管理サーバ1へ送られる通知は、既に説明したS105の処理において管理サーバ1に受け取られることになる。
また、S605の処理において、印刷エラー通知がなかった場合(S605:NO)、クライアントPC2は、自機デフォルトプリンタオブジェクト(図13参照)を移動させる操作がなされたか否かを判断する(S615)。
このS615の処理において、自機デフォルトプリンタオブジェクトを移動させる操作がなされた場合(S615:YES)、移動後の位置が所定条件を満たすか否かを判断する(S617)。このS617の処理でいう所定条件は、有効な移動操作がなされたか否かを判定するための条件であり、この所定条件の具体的な例については種々考え得る。
いくつかの具体的な例を挙げれば、例えば、図37(a)に示すように、プリンタオブジェクト171は、利用者には見えない不可視領域171aの内側に、利用者に見える形態表示領域171bが設けられた構造になっており、また、自機デフォルトプリンタオブジェクト173も、利用者には見えない不可視領域173aの内側に、利用者に見える形態表示領域173bが設けられた構造になっているので、自機デフォルトプリンタオブジェクト173の不可視領域173aを含む少なくとも一部が、プリンタオブジェクト171の不可視領域171aを含む少なくとも一部と重なる位置まで移動したことを上記所定条件として、自機デフォルトプリンタオブジェクト173の移動後の位置が所定条件を満たすか否かを判断するとよい。
また、図37(b)に示すように、自機デフォルトプリンタオブジェクト173の不可視領域173aを含む少なくとも一部が、プリンタオブジェクト171の形態表示領域171bと重なる位置まで移動したことを上記所定条件とするか、あるいは、同じく図37(b)に示すように、自機デフォルトプリンタオブジェクト173の形態表示領域173bが、プリンタオブジェクト171の不可視領域171aを含む少なくとも一部と重なる位置まで移動したことを上記所定条件として、自機デフォルトプリンタオブジェクト173の移動後の位置が、所定条件を満たすか否かを判断してもよい。なお、図37(b)に示す例の場合、これら2条件を同時に満足しているが、これは一方だけを満足すればよい。あるいは、2条件を同時に満足した場合のみ、自機デフォルトプリンタオブジェクト173の移動後の位置が所定条件を満たすと判断してもよい。さらに、上記2条件は、プリンタオブジェクト171および自機デフォルトプリンタオブジェクト173のうち、いずれか一方の形態表示領域と他方の少なくとも一部が重なることを条件としているが、双方の形態表示領域が重なることを条件としてもよい。
また、図37(c)に示すように、自機デフォルトプリンタオブジェクト173が、プリンタオブジェクト171に所定の距離D以下まで接近したことを上記所定条件として、自機デフォルトプリンタオブジェクト173の移動後の位置が所定条件を満たすか否かを判断してもよい。オブジェクト間の距離Dは、図37(c)に示すように、あらかじめ定められた各オブジェクトの中心点間距離であってもよいし、両オブジェクト間に存在する隙間の距離であってもよい。
これらの条件のいずれを採用するかは任意である。これらの条件のいずれかに基づいて移動操作の判定を行えば、自機デフォルトプリンタオブジェクト173が、移動先のプリンタオブジェクト171に重ならない状態でのドロップ操作を無効とみなすことができ、しかも、自機デフォルトプリンタオブジェクト173が、大まかに移動先のプリンタオブジェクト171に重なった状態でのドロップ操作を有効とみなし、厳密な位置合わせをしてドロップ操作をしなくても構わないようになる。
なお、以上の説明では、自機デフォルトプリンタオブジェクト173と、その移動先と判定すべきプリンタオブジェクト171について説明したが、自機デフォルトプリンタオブジェクト173の移動に伴って、デフォルトプリンタとしての設定が解除されるプリンタ3については、上記条件とは逆の判定手法を用いることができる。具体的には、例えば、自機デフォルトプリンタオブジェクト173の不可視領域173aを含む少なくとも一部の端が、プリンタオブジェクト171の不可視領域171aを含む少なくとも一部の端から離れ、両者が重ならない位置まで移動したことを条件に、デフォルトプリンタとしての設定が解除されたと判定できる。また、自機デフォルトプリンタオブジェクト173の不可視領域173aを含む少なくとも一部の端が、プリンタオブジェクト171の形態表示領域171bの端から離れるか、自機デフォルトプリンタオブジェクト173の形態表示領域173bの端が、プリンタオブジェクト171の不可視領域171aを含む少なくとも一部の端から離れるか、いずれかによって両者が重ならない位置まで移動したことを条件に、デフォルトプリンタとしての設定が解除されたと判定できる。あるいは、自機デフォルトプリンタオブジェクト173が、プリンタオブジェクト171から所定の距離Dの位置より遠くまで離れたことを条件に、デフォルトプリンタとしての設定が解除されたと判定できる。これらの条件のいずれを採用するかは任意であり、これらの条件のいずれかに基づいて移動操作の判定を行えば、利用者が誤って僅かに自機デフォルトプリンタオブジェクト173を動かしてしまったような場合に、意図しないデフォルトプリンタの選択解除が発生するのを抑制することができる。
S617の処理では、いずれかの条件に基づいて移動後の位置が所定条件を満たすか否かが判断され、その結果、移動後の位置が所定条件を満たさないと判断した場合は(S617:NO)、デフォルトプリンタオブジェクトを元の位置へ戻し(S618)、後述するS645の処理へ移行する。
一方、S617の処理において、移動後の位置が所定条件を満たすと判断した場合(S617:YES)、クライアントPC2は、移動先のプリンタのデフォルトプリンタオブジェクトが10枚以上か否かを判断する(S620)。
移動先のプリンタのデフォルトプリンタオブジェクトが10枚未満の場合(S620:NO)、そのプリンタ2の負荷が過大になることはないと判断できるので、クライアントPC2は、利用者が操作した通りにデフォルトプリンタオブジェクトを移動表示し、デフォルトプリンタの変更が行われたことを管理サーバ1に通知するとともに、印刷先の変更を行い(S625)、S515の処理(図25参照)へ戻る。
一方、移動先のプリンタのデフォルトプリンタオブジェクトが10枚以上の場合(S620:YES)、そのプリンタ2の負荷が過大になるおそれがあると判断できるので、クライアントPC2は、表示部25に図31に示す警告ウィンドウ341を表示するとともに、移動先のプリンタオブジェクトを崩れ落ち形状(図16、プリンタオブジェクト191参照)にする(S630)。
警告ウィンドウ341内には、はいボタン343,いいえボタン345が設けられ、利用者は、はいボタン343をクリック操作することにより、デフォルトプリンタの設定を強行することができ、また、いいえボタン345をクリック操作することにより、デフォルトプリンタの設定を中止することもできる。
そこで、クライアントPC2は、警告ウィンドウ341内で利用者が「はい」を選択したか否かを判断し(S635)、利用者が「はい」を選択していた場合は(S635:YES)、先に説明したS625の処理へと移行することにより、デフォルトプリンタの設定を変更する。また、利用者が「いいえ」を選択していた場合(S635:NO)、クライアントPC2は、デフォルトプリンタオブジェクトを元の位置(変更前のプリンタオブジェクトに重なる位置)へ戻し(S640)、S515の処理(図25参照)へ戻る。
さて、S615の処理で、自機デフォルトプリンタオブジェクトを移動させる操作がなされなかったと判断された場合(S615:NO)、もしくは、S618の処理で、デフォルトプリンタオブジェクトを元の位置へ戻した場合、これらの処理のいずれかに引き続いて、クライアントPC2は、テンポラリプリンタオブジェクトを移動する操作がなされたか否かを判断する(S645)。ここで、テンポラリプリンタオブジェクトを移動する操作がなされた場合(S645:YES)、移動後の位置が所定条件を満たすか否かを判断する(S647)。このS647の処理は、対象がデフォルトプリンタオブジェクトであるかテンポラリプリンタオブジェクトであるかという違いを除き、先に説明したS617の処理と同様の処理であり、S617の処理と同様の条件に基づいて有効な移動操作がなされたか否かを判定することになる。このS647の処理で、移動後の位置が所定条件を満たさないと判断した場合は(S647:NO)、テンポラリプリンタオブジェクトを元の位置へ戻し(S618)、後述するS655の処理へ移行する。
一方、S647の処理において、移動後の位置が所定条件を満たすと判断した場合(S647:YES)、クライアントPC2は、利用者が操作した通りにテンポラリプリンタオブジェクトを移動表示し、テンポラリプリンタまでの結線オブジェクトを印刷中を示す表示態様(図17(a)、結線オブジェクト203,207参照)で表示し、印刷中であることを管理サーバ1に通知するとともに、印刷先の変更を行い(S650)、S515の処理(図25参照)へ戻る。テンポラリプリンタオブジェクトは、先に説明したS610の処理で表示されたものである。
また、S645の処理で、テンポラリプリンタオブジェクトを移動する操作がなされていないと判断された場合(S645:NO)、クライアントPC2は、スリーププリンタをクリックする操作がなされたか否かを判断する(S655)。ここで、スリーププリンタをクリックする操作がなされていた場合(S655:YES)、クライアントPC2は、スリーププリンタに起床命令を出し(S660)、S515の処理(図25参照)へ戻る。このS660の処理で、命令対象となるプリンタ3へ送られる起床命令は、既に説明したS220の処理においてプリンタ3に受け取られることになる。また、S660の処理において、命令対象となるプリンタ3に対応するプリンタオブジェクトは、スリーププリンタを表すプリンタオブジェクト(図17(b)参照)から通常のプリンタオブジェクトに表示態様が変更される。
また、S655の処理で、スリーププリンタをクリックする操作がなされていなかった場合(S655:NO)、クライアントPC2は、バー105をドラッグして移動させる操作がなされたか否かを判断する(S665)。ここで、レイアウト図表示ウィンドウ103の上部にあるバー105をドラッグして移動させる操作がなされていた場合(S665:YES)、クライアントPC2は、レイアウト表示(=レイアウト図表示ウィンドウ103)を移動し(S670)、S515の処理(図25参照)へ戻る。
また、レイアウト図表示ウィンドウ103の上部にあるバー105をドラッグして移動させる操作がなされていなかった場合(S665:NO)、クライアントPC2は、バー105をダブルクリックする操作がなされたか否かを判断する(S675)。
ここで、バー105をダブルクリックする操作がなされていた場合(S675:YES)、クライアントPC2は、レイアウト表示モード58は表示状態か否かを判断する(S680)。そして、レイアウト表示モード58が表示状態であれば(S680:YES)、レイアウト表示モード58を非表示状態として、レイアウト図を非表示とし(S685)、S515の処理(図25参照)へ戻る一方、レイアウト表示モード58が非表示状態であれば(S680:NO)、レイアウト表示モード58を表示状態として、レイアウト図を表示し(S690)、いずれの場合とも、S515の処理(図25参照)へ戻る。
また、バー105をダブルクリックする操作がなされていない場合は(S675:NO)、ドキュメントがプリンタオブジェクトにドラッグされたか否かを判断する(S695)。このS695の処理において、ドキュメントとは、プリンタ3での印刷対象となるファイル(以下、ドキュメントファイルという。)であり、ワープロソフト、表計算ソフト、作画・作図ソフト等のアプリケーションによって作成される。これらのドキュメントファイルは、OS部51の機能により、各ドキュメントファイルを示すアイコンとして表示されるようになっており、S695の処理では、ドキュメントファイルを示すアイコンがプリンタオブジェクトにドラッグされたか否かを判断する。ここで、ドキュメントがプリンタオブジェクトにドラッグされたと判断した場合(S695:YES)、ドキュメントの内容をスプーラ部55に送信する(S698)。S698の処理では、必要があれば、ドキュメントに対応するアプリケーション部54が機能することにより、ドキュメントファイルの内容が印刷データとして加工されてから、スプーラ部55に送信されることになる。
なお、ドキュメントがプリンタオブジェクトにドラッグされていないと判断された場合は(S695:NO)、そのまま、S515の処理(図25参照)へ戻る。
次に、上記S515の処理に相当するレイアウト画面表示処理について、図32〜図36に基づいて説明する。
このレイアウト画面表示処理を開始すると、クライアントPC2は、レイアウト表示モード58が非表示状態か否かを判断する(S705)。ここで、レイアウト表示モード58が非表示状態であれば(S705:YES)、クライアントPC2は、表示部25が備える画面101上の表示原点(=利用者がドラッグ操作等により任意に変更可能なレイアウト図表示ウィンドウ103を表示すべき位置)にバー105を表示して(S710)、この処理を終了する。すなわち、この場合は、表示原点にバー105を表示するのみで、レイアウト図表示ウィンドウ103の表示領域107や、その表示領域107内に表示されるオブジェクト群は、いっさい表示されない。
一方、レイアウト表示モード58が非表示状態でなければ(S705:NO)、クライアントPC2は、レイアウト表示モード58が壁紙状態か否かを判断する(S715)。ここで、レイアウト表示モード58が壁紙状態でなければ(S715:NO)、クライアントPC2は、表示原点にバー105を表示して、ウィンドウ(=レイアウト図表示ウィンドウ103の表示領域107)を表示する(S720)。この場合、レイアウト図表示ウィンドウ103の表示領域107は、既に説明した通り半透明表示となる。また、レイアウト表示モード58が壁紙状態であれば(S715:YES)、クライアントPC2は、全画面ウィンドウを表示する(S725)。なお、S725の処理で表示される全画面ウィンドウは、既に説明した通り、他のウィンドウよりも背面側に重なるように配置される。
続いて、クライアントPC2は、装置管理データ44からハブとプリンタを全て検索したか否かを判断する(S730)。システム内にハブまたはプリンタがあり、且つ、S735以降の処理が一度も実行されていない場合、S730の処理は否定判断されるので、その場合(S730:NO)、クライアントPC2は、装置管理データ44からハブとプリンタのデータを順番に取り出す(S735)。すなわち、このS735の処理では、クライアントPC2に関する情報は取り出されない。
そして、S735の処理で順番に取り出される一つのデータを対象に、クライアントPC2は、ビュー領域の内部か否かを判断する(S740)。具体的には、S735の処理で順番に取り出される一つのハブまたはプリンタのデータに含まれる“位置”中の階および座標が、ビュー領域形状データ59によって規定された表示範囲の内側となる座標であるか否かを判断する。
ここで、取り出された一つのハブまたはプリンタのデータが、ビュー領域の内部となる位置情報を持っていない場合(S740:NO)、そのデータは表示対象として扱われないので、そのままS730の処理へと戻る。一方、取り出された一つのハブまたはプリンタのデータが、ビュー領域の内部となる位置情報を持っていた場合(S740:YES)、そのデータは表示対象として扱われるので、引き続いて、図33に示すように、クライアントPC2は、装置管理データ44中の種類に基づいて、ハブか否かを判断する(S745)。
種類がハブである場合(S745:YES)、クライアントPC2は、ハブオブジェクトを装置管理データ44中の位置情報、レイアウト表示角度56、見降ろし角度57に従い表示する(S750)。これにより、レイアウト図表示ウィンドウ103の表示領域107には、一つのハブオブジェクトが追加表示されることになる。また、追加表示されるハブオブジェクトの表示形態は、あらかじめ用意されたいくつかの表示形態の中から、レイアウト表示角度56、および見降ろし角度57が最も近いものが選ばれる。あるいは、ポリゴンによってプリンタオブジェクトを構成することにより、レイアウト表示角度56、および見降ろし角度57を考慮した形態としてもよい。
続いて、クライアントPC2は、取り出された一つのハブまたはプリンタのデータ中に、結線情報があるか否かを判断する(S755)。結線情報がある場合(S755:YES)、クライアントPC2は、結線オブジェクトを、ビュー領域形状データ59、レイアウト表示角度56、ビューポイント、見降ろし角度57に従い表示する(S760)。なお、結線情報がない場合(S755:NO)、S760の処理はスキップする。
続いて、クライアントPC2は、新規フロアの表示が必要か否かを判断する(S765)。S735の処理で順番に取り出される一つのハブまたはプリンタのデータを対象に処理する中で、“位置”に新たなフロアを含むデータが得られた場合、S765の処理では肯定判断がなされ、その場合(S765:YES)、クライアントPC2は、新規フロアに相当するフロアオブジェクトを、ビュー領域形状データ59、レイアウト表示角度56、見降ろし角度57に従い表示する(S770)。なお、新規フロアの表示が必要でない場合(S765:NO)、S770の処理はスキップする。こうして、S770の処理を実行するかスキップしたら、S735の処理へと戻り、S735以降の処理を繰り返すことになる。
さて、S745の処理では、種類がハブでないと判断されることもあり、その場合(S745:NO)、クライアントPC2は、装置管理データ44中の種類に基づいて、プリンタか否かを判断する(S775)。
種類がプリンタである場合(S775:YES)、クライアントPC2は、装置管理データ44中の状態情報はパワーオフか否かを判断する(S780)。そして、パワーオフでない場合は(S780:NO)、プリンタ3からの情報取得が可能であると考えられるので、クライアントPC2は、プリンタ3へオブジェクト情報を要求し(S785)、プリンタ3からオブジェクト情報を受信する(S790)。ここで受信したオブジェクト情報は、送信元のプリンタ3の特有の形態を持つプリンタオブジェクトに関する情報で、クライアントPC2は、このオブジェクト情報に基づいて、プリンタオブジェクトの表示を行う。このようにプリンタオブジェクトをプリンタ3から取得するように構成すると、管理サーバ1やクライアントPC2では具体的な形態を認識していないプリンタ3がシステムに追加された場合でも、クライアントPC2は、プリンタ3特有の形態を持つプリンタオブジェクトを表示できる。なお、パワーオフである場合は(S780:YES)、S785,S790の処理をスキップする。S785,S790の処理をスキップした場合、クライアントPC2は、オブジェクト情報を得ることができないが、その場合は、クライアントPC2側で用意している代替オブジェクト(=プリンタであることは示すものの、表示形態は汎用のオブジェクト)を用いて、以降の表示等を行う。あるいは、パワーオフとなっているプリンタ3から過去にオブジェクト情報を受け取っている場合は、その情報をキャッシュに蓄積して、プリンタ3のパワーオフ時にはキャッシュのオブジェクト情報を使用するように構成してもよい。
続いて、クライアントPC2は、装置管理データ44中の状態情報、装置管理データ44中の位置情報、レイアウト表示角度56、見降ろし角度57に従いプリンタオブジェクトを表示する(S795)。そして、S750の処理へ移行することにより、ハブオブジェクトの場合と同様に、結線、および新規フロアの表示が行われることになる。
なお、種類がプリンタでない場合は(S775:NO)、S730の処理へと戻る。
以上のようなS730〜S795の処理が行われ、装置管理データ44中のハブおよびプリンタに対応する情報が全て処理されると、S730の処理では、装置管理データ44からハブとプリンタを全て検索したと判断され(S730:YES)、続いて、クライアントPC2は、図34に示すように、クライアントPC2は、装置管理データ44からクライアントPC2を全て検索したか否かを判断する(S800)。システム内にクライアントPCがあり、且つ、S800以降の処理が一度も実行されていない場合、S800の処理は否定判断されるので、その場合(S800:NO)、クライアントPC2は、装置管理データ44から順番にクライアントPC2のデータを取り出す(S805)。すなわち、このS805の処理では、S735の処理とは逆に、ハブとプリンタに関する情報は取り出されない。
そして、S805の処理で順番に取り出される一つのデータを対象に、クライアントPC2は、ビュー領域の内部か否かを判断する(S810)。具体的には、S805の処理で順番に取り出される一つのクライアントPC2のデータに含まれる“位置”中の階および座標が、ビュー領域形状データ59によって規定された表示範囲の内側となる座標であるか否かを判断する。
ここで、取り出された一つのクライアントPC2のデータが、ビュー領域の内部となる位置情報を持っていない場合(S810:NO)、そのデータは表示対象として扱われないので、そのままS800の処理へと戻る。一方、取り出された一つのクライアントPC2のデータが、ビュー領域の内部となる位置情報を持っていた場合(S810:YES)、そのデータは表示対象として扱われるので、引き続いて、クライアントPC2は、同じノード名のクライアントPC2を既に表示済みか否かを判断する(S815)。同じノード名のクライアントPC2を既に表示済みとなるのは、あるクライアントPC2が、複数のネットワークIF26を持ち、各ネットワークIF26に対応する情報それぞれが装置管理データ44中に含まれている場合である。そのため、どのクライアントPC2でも、少なくとも1回はS815の処理で否定判断され、複数のネットワークIF26を持っているクライアントPC2のみ、2回目以降はS815の処理で肯定判断されることになる。
S815の処理で否定判断された場合(S815:NO)、クライアントPC2は、PCオブジェクトを装置管理データ44中の位置情報、レイアウト表示角度56、見降ろし角度57に従い表示する(S820)。一方、S815の処理で肯定判断された場合(S815:YES)、クライアントPC2は、図18に例示したように、既に1回目のS820の処理によって表示済みのPCオブジェクトに対して付加するかたちで、PCオブジェクトの各ポートにIPアドレスを表示する(S825)。
こうしてS820またはS825の処理を終えたら、引き続いて、図35に示すように、クライアントPC2は、取り出された一つのデータの示すクライアントPC2が、自機に相当するクライアントPC2か否かを判断する(S830)。自機であるか否かは、取り出された一つのクライアントPC2のデータ中のノード名と、自身のノード名とを比較することにより判定できる。
S830の処理において、自機であった場合(S830:YES)、クライアントPC2は、PCオブジェクトの下に自機PCオブジェクト(図17(a):自機PCオブジェクト210参照)を表示する(S835)。これにより、クライアントPC2の利用者は、レイアウト図表示ウィンドウ103の表示領域107に表示されるいくつかのPCのうち、どれが自機であるのかを一目で理解できるようになる。
また、クライアントPC2は、取り出された一つのクライアントPC2のデータに基づいて、デフォルトプリンタがあるか否かを判断し(S840)、デフォルトプリンタがある場合は(S840:YES)、デフォルトプリンタに相当するプリンタオブジェクトの下に自機デフォルトプリンタオブジェクト(図13(a):自機デフォルトプリンタオブジェクト173参照)を付加した表示態様を設定する(S845)。なお、デフォルトプリンタがない場合は(S840:NO)、S845の処理をスキップする。
また、クライアントPC2は、取り出された一つのクライアントPC2のデータに基づいて、テンポラリプリンタがあるか否かも判断し(S850)、テンポラリプリンタがある場合は(S850:YES)、テンポラリプリンタに相当するプリンタオブジェクトの下に自機テンポラリプリンタオブジェクト(図13(c):自機テンポラリプリンタオブジェクト177参照)を付加した表示態様を設定する(S855)。なお、テンポラリプリンタがない場合は(S850:NO)、S855の処理をスキップする。
一方、S830の処理において、自機でなかった場合(S830:NO)、クライアントPC2は、取り出された一つのクライアントPC2のデータに基づいて、デフォルトプリンタがあるか否かを判断し(S860)、デフォルトプリンタがある場合は(S860:YES)、デフォルトプリンタに相当するプリンタオブジェクトの下に他機デフォルトプリンタオブジェクト(図13(b):他機デフォルトプリンタオブジェクト175参照)を付加した表示態様を設定する(S865)。他機デフォルトプリンタオブジェクトは、個々のクライアントPC2に対応づけて各クライアントPC2毎に異なる色や模様が設定され、これにより、他機デフォルトプリンタオブジェクトを見た利用者が、他機デフォルトプリンタオブジェクトとクライアントPC2との対応関係を認識できるようになっている。なお、デフォルトプリンタがない場合は(S860:NO)、S865の処理をスキップする。
また、クライアントPC2は、取り出された一つのクライアントPC2のデータに基づいて、テンポラリプリンタがあるか否かも判断し(S870)、テンポラリプリンタがある場合は(S870:YES)、テンポラリプリンタに相当するプリンタオブジェクトの下に他機テンポラリプリンタオブジェクト(図13(d):他機テンポラリプリンタオブジェクト179参照)を付加した表示態様を設定する(S875)。他機テンポラリプリンタオブジェクトも、上述した他機デフォルトプリンタオブジェクトと同様、個々のクライアントPC2に対応づけて各クライアントPC2毎に異なる色や模様が設定され、これにより、他機テンポラリプリンタオブジェクトを見た利用者が、他機テンポラリプリンタオブジェクトとクライアントPC2との対応関係を認識できるようになっている。なお、テンポラリプリンタがない場合は(S870:NO)、S855の処理をスキップする。
なお、上記他機デフォルトプリンタオブジェクトおよび他機テンポラリプリンタオブジェクトは、上記のように個々のクライアントPC2に対応づけて各クライアントPC2毎に異なる色や模様が設定されていると、どのクライアントPC2がどのプリンタ3を使用する設定になっているのかを一目で把握できるので便利であるが、この他、どのクライアントPC2でも同じ色や模様の他機デフォルトプリンタオブジェクトが設定され、また、どのクライアントPC2でも同じ色や模様の他機テンポラリプリンタオブジェクトが設定されるようになっていてもよい。すなわち、他機デフォルトプリンタオブジェクトおよび他機テンポラリプリンタオブジェクトは、それぞれ1種類のみ用意されて、どのクライアントPC2に対応するものも共通となる。この場合、どのクライアントPC2がどのプリンタ3を使用する設定になっているのかを把握することはできないが、自機デフォルトプリンタオブジェクトと他機デフォルトプリンタオブジェクトとの区別や、自機テンポラリプリンタオブジェクトと他機テンポラリプリンタオブジェクトとの区別はできるので、自機デフォルトプリンタオブジェクトおよび自機テンポラリプリンタオブジェクトだけ識別したい利用者にとっては、この方が、自機デフォルトプリンタオブジェクトおよび自機テンポラリプリンタオブジェクトを、レイアウト図内で容易に見つけ出すことができる。
さて、以上のように、取り出された一つのデータの示すクライアントPC2が、自機であった場合は(S830:YES)、S835〜S855の処理がなされ、他機であった場合は(S830:NO)、S860〜S875の処理がなされ、その結果、いずれの場合とも、S880の処理(図36参照)へ移行することになる。
S880の処理では、クライアントPC2は、取り出された一つのクライアントPC2のデータ中に、結線情報があるか否かを判断する(S880)。結線情報がある場合(S880:YES)、クライアントPC2は、結線オブジェクトを、レイアウト表示角度56、見降ろし角度57、に従い表示する(S885)。なお、結線情報がない場合(S880:NO)、S885の処理はスキップする。
続いて、クライアントPC2は、取り出された一つのクライアントPC2のデータに基づいて、印刷中か否かを判断する(S890)。印刷中である場合(S890:YES)、クライアントPC2は、プリンタまでの結線オブジェクトを印刷中を示す表示態様(図17(a)、結線オブジェクト203,207参照)で表示する(S895)。なお、印刷中でない場合(S890:NO)、S895の処理はスキップする。
続いて、クライアントPC2は、取り出された一つのクライアントPC2のデータに基づいて、新規フロアの表示が必要か否かを判断する(S900)。S805の処理で順番に取り出される一つのクライアントPC2のデータを対象に処理する中で、“位置”に新たなフロアを含むデータが得られた場合、S900の処理では肯定判断がなされ、その場合(S900:YES)、クライアントPC2は、新規フロアに相当するフロアオブジェクトをフロア形状データ45、レイアウト表示角度56、見降ろし角度57、に従い表示する(S905)。なお、新規フロアの表示が必要でない場合(S900:NO)、S905の処理はスキップする。こうして、S905の処理を実行するかスキップしたら、S800の処理へと戻り、S800以降の処理を繰り返すことになる。
以上のようなS800〜S905の処理が行われ、装置管理データ44中のクライアントPC2に対応する情報が全て処理されると、S800の処理では、装置管理データ44からPCを全て検索したと判断され(S800:YES)、この処理を終了する。
以上説明した通り、上記レイアウト表示システムによれば、利用者は、レイアウト図表示ウィンドウ103に表示されるレイアウト図を見て、レイアウト図上に表示された各機器オブジェクトの位置から、印刷システムを構成する各機器の設置場所を知ることができる。また特に、デフォルトプリンタとして選択された印刷系機器に対応する機器オブジェクトについては、デフォルトプリンタオブジェクトを付加することにより、デフォルトプリンタとしての選択がなされていることを示す表示態様が設定されるので、利用者は、機器オブジェクトの表示態様から、どれがデフォルトプリンタなのかを直感的に理解することができる。
また、上記レイアウト表示システムは、設置場所に実際に存在する機器を示す機器オブジェクトについては、レイアウト図として表示する三次元空間内で、特定のxy平面(フロアオブジェクトによって表されるxy平面)上に配置する一方、デフォルトプリンタオブジェクトについては、機器オブジェクトのz軸方向に重ねて配置しているので、デフォルトプリンタオブジェクトは、機器オブジェクトが配置されるxy平面上のスペースを、機器オブジェクトとは独立に消費してしまうことがない。したがって、同一xy平面上に機器オブジェクトとデフォルトプリンタオブジェクトを並べて配置するような場合とは異なり、機器オブジェクトをxy平面上に配置するに当たって、別の機器オブジェクトに付加されたデフォルトプリンタオブジェクトが邪魔になることはなく、利用者は、機器オブジェクト同士の相対的な位置関係のみを考慮して特定のxy平面上に自由に機器オブジェクトを配置することができる。
また、上記レイアウト表示システムでは、機器オブジェクトとデフォルトプリンタオブジェクトを、レイアウト図として表示する三次元空間内でz軸方向に重ねた結果、その三次元空間が投影された二次元平面上で、実際に機器オブジェクトとデフォルトプリンタオブジェクトの重なりが生じたとしても、機器オブジェクトが優先的に手前に表示されるので、機器オブジェクトがデフォルトプリンタオブジェクトの陰に隠れることはなく、利用者は機器オブジェクトを見やすくなる。
また、上記レイアウト表示システムにおいては、ポインティングデバイスでのドラッグ操作等で、デフォルトプリンタオブジェクトをレイアウト図上で移動させることにより、機器オブジェクトからデフォルトプリンタオブジェクトを離せば、その機器オブジェクトに対応する機器をデフォルトプリンタとして選択する設定を解除することができ、逆に、機器オブジェクトにデフォルトプリンタオブジェクトを重ねれば、その機器オブジェクトに対応する機器をデフォルトプリンタとして選択する設定を行うことができるので、利用者は、レイアウト図上においてデフォルトプリンタオブジェクトを操作するだけで、直感的にデフォルトプリンタの選択/選択解除を行うことができる。また、操作に応じて更新された表示態様を見て、操作結果を確認することができる。
また、上記レイアウト表示システムによれば、利用者は、デフォルトプリンタの選択を行う際に、複数のデフォルトプリンタオブジェクトのz軸方向の重なりが崩壊する表示態様から、きわめて不安定な状態であることを連想し、負荷が大となっている印刷系機器が理解できるので、負荷が大である機器を避けてデフォルトプリンタの選択を行うなどの対処をすることができる。
また。上記レイアウト表示システムにおいては、何らかの事情でデフォルトプリンタが稼働していない場合、テンポラリプリンタオブジェクト(本発明でいう臨時プリンタオブジェクト)が表示されるので、利用者は、テンポラリプリンタオブジェクトを操作することにより、一時的に使用する印刷系機器を選択して、印刷出力を行うことができる。
さらに、上記レイアウト表示システムにおいて、デフォルトプリンタオブジェクトおよびテンポラリプリンタオブジェクトは、それぞれ自機と他機とを区別した表示態様が設定されるので、レイアウト図を表示しているクライアントPC2の利用者は、利用者が利用しているクライアントPC2のデフォルトプリンタやテンポラリプリンタがどれなのかを、レイアウト図上で見ることができる。
なお、以上説明した実施形態と、本発明が備える構成との対応関係は、以下の通りである。
まず、S105,S110,S120,S125などの処理を実行する装置/フロア情報管理部42が、複数の機器それぞれが設置された位置を示す位置情報(フロア、およびフロア内のX,Y座標)を取得しており、本発明でいう位置情報取得手段として機能している。
また、S105,S110などの処理を実行する装置/フロア情報管理部42が、複数の機器に含まれるクライアントPC2(本発明でいうデータ出力系機器)が、どのプリンタ3(本発明でいう印刷系機器)をデフォルトプリンタとして選択しているかを示すデフォルトプリンタ選択情報を取得しており、本発明でいうデフォルトプリンタ選択情報取得手段として機能している。
また、S505〜S690,S705〜S905などの処理を実行するレイアウト表示部52が、各機器を表す図形オブジェクトを用いて、印刷システムのレイアウト図を表示しており、本発明でいうレイアウト図表示手段として機能している。
また、S570,S600,S610,S625,S630,S640,S650,S660,S750,S795,S820,S825,S835,S845,S855,S865,S875などの処理を実行するレイアウト表示部52が、位置情報取得手段によって取得された位置情報に基づいて、レイアウト図上の位置情報に対応する位置に、機器オブジェクトを表示しており、本発明でいう機器オブジェクト表示手段として機能している。
また、S840,S845,S860,S865などの処理を実行するレイアウト表示部52が、機器オブジェクト表示手段によって表示されるプリンタオブジェクトの表示態様を設定する手段であり、デフォルトプリンタ選択情報取得手段によって取得されたデフォルトプリンタ選択情報に基づいて、クライアントPC2がデフォルトプリンタとして選択しているプリンタ3を特定し、その特定したプリンタ3に対応するプリンタオブジェクトについては、デフォルトプリンタとしての選択がなされていることを示す表示態様(デフォルトプリンタオブジェクトが付与された表示態様)を設定しており、本発明でいう表示態様設定手段として機能している。
また、S615〜S640などの処理を実行するレイアウト表示部52が、デフォルトプリンタオブジェクトに対する操作を受け付けており、これが本発明でいうデフォルトプリンタオブジェクト操作手段に相当する。
また、S625などの処理を実行するレイアウト表示部52が、デフォルトプリンタオブジェクト操作手段によって受け付けられた操作に基づいて、デフォルトプリンタ選択情報を更新(=管理サーバ1に対する更新要求)しており、本発明でいうデフォルトプリンタ選択情報更新手段に相当する。
また、S105,S110,S120,S125などの処理を実行する装置/フロア情報管理部42が、複数の機器(クライアントPC2、プリンタ3、ハブ;以下同様)それぞれの状態を示す状態情報(印刷開始、印刷中、印刷終了、スリープ状態、レディ状態、使用中ポート数、総ポート数等)を取得しており、本発明でいう状態情報取得手段として機能している。
また、S105,S110などの処理を実行する装置/フロア情報管理部42が、複数の機器に含まれるクライアントPC2が、どのプリンタ3を一時的に利用するテンポラリプリンタ(本発明でいう臨時プリンタ)として選択しているかを示す臨時プリンタ選択情報を取得しており、本発明でいう臨時プリンタ選択情報取得手段に相当する。
また、S605,S610などの処理を実行するレイアウト表示部52が、状態情報取得手段が取得した状態情報がプリンタ3動作不可を示すとき、該当するプリンタ3がデフォルトプリンタとして選択されているプリンタ3である場合には、テンポラリプリンタオブジェクトを表示しており、これが本発明でいう臨時プリンタオブジェクト表示手段に相当する。
また、S645〜S650などの処理を実行するレイアウト表示部52が、テンポラリプリンタオブジェクトに対する操作を受け付けており、本発明でいう臨時プリンタオブジェクト操作手段に相当する。
また、S645〜S650などの処理を実行するレイアウト表示部52が、テンポラリプリンタオブジェクト操作手段がテンポラリプリンタオブジェクトをプリンタオブジェクトに重ねる操作を受け付けた場合、その操作対象となったテンポラリプリンタオブジェクトおよびプリンタオブジェクトに基づいて特定されるクライアントPC2およびプリンタ3について、そのクライアントPC2がそのプリンタ3をテンポラリプリンタとして選択している状態となるように、臨時プリンタ選択情報を更新(=管理サーバ1に対する更新要求)しており、これが本発明でいう臨時プリンタ選択情報更新手段に相当する。
また、S650などの処理を実行するレイアウト表示部52は、臨時プリンタオブジェクト操作手段がテンポラリプリンタオブジェクトをプリンタオブジェクトに重ねる操作を受け付けた場合、その操作対象となったテンポラリプリンタオブジェクトに基づいて特定されるクライアントPC2に対し、一時的にテンポラリプリンタオブジェクトが対応するプリンタ3を利用するよう指令する手段でもあり、本発明でいう臨時使用指令手段として機能している。
さらに、S830,S840,S845の処理を実行するレイアウト表示部52は、デフォルトプリンタとして選択されていることがデフォルトプリンタ選択情報中に示されているプリンタ3について、当該プリンタ3が、レイアウト図を表示しているクライアントPC2(すなわち、S830の処理でいう自PC)によってデフォルトプリンタとして選択されている表示機器選択デフォルトプリンタであるかどうかを判断しており、本発明でいう表示機器選択デフォルトプリンタ判断手段に相当する。
以上、本発明の実施形態について説明したが、本発明は上記の具体的な一実施形態に限定されず、この他にも種々の形態で実施することができる。
例えば、上記実施形態では、機器として、クライアントPC2、プリンタ3、およびハブを例示したが、スキャナ、FAX、カメラ、ルータ、ネットワークストレージデバイスなどの他のネットワーク機器や、これらのネットワーク機器(PC、プリンタ、ハブ、スキャナ、FAX、カメラ、ルータ、ネットワークストレージデバイス)それぞれが備える機能を2つ以上兼ね備えた複合機をシステム内に加えてもよいことはもちろんである。
1・・・管理サーバ、2・・・クライアントPC,3・・・プリンタ、11,21,31・・・CPU、12,22,32・・・メモリ、13,23・・・ハードディスク装置、14,24,34・・・入力部、15,25,35・・・表示部、16,26,36・・・ネットワークIF、33・・・印刷部、41,51,61・・・OS部、42・・・装置/フロア情報管理部、43・・・フロアエディタ部、44・・・装置管理データ、45・・・フロア形状データ、52・・・レイアウト表示部、53・・・印刷処理部、54・・・アプリケーション部、55・・・スプーラ部、55・・・レイアウト表示角度、56・・・角度、57・・・レイアウト表示モード、58・・・ビュー領域形状データ、62・・・印刷処理部、103・・・レイアウト図表示ウィンドウ、105・・・バー、107、111,113,137,139・・・フロアオブジェクト、115,119,201・・・PCオブジェクト、121,171,191,209,211・・・プリンタオブジェクト、127,205・・・ハブオブジェクト、131,152,153,203,207・・・結線オブジェクト、136・・・結線追加操作用アイコン、141,142,149・・・機器オブジェクト、173・・・自機デフォルトプリンタオブジェクト、175,187,189・・・他機デフォルトプリンタオブジェクト、177,185・・・自機テンポラリプリンタオブジェクト、179・・・他機テンポラリプリンタオブジェクト、181,183・・・デフォルトプリンタオブジェクト、210・・・自機PCオブジェクト。