(57)【特許請求の範囲】
【請求項１】
複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理装置であって、
前記実デバイスが有するオプション機能が変更されたことを検出する検出手段と、
前記検出手段により検出されたオプション機能の変更に対応して、当該オプション機能が変更された実デバイスが属する第１の仮想デバイスの属性を変更する変更手段と、
前記変更手段により変更された第１の仮想デバイスの属性と一致する属性をもつ第２の仮想デバイスを判別する判別手段と、
前記判別手段により第２の仮想デバイスが判別された場合、前記第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成手段とを有することを特徴とする管理装置。
【請求項２】
前記判別手段により第２の仮想デバイスが判別された場合、当該第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ手段を有し、
前記再構成手段は、前記問い合わせ手段による問い合わせに対するユーザの指示に応じて前記第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成することを特徴とする請求項１に記載の管理装置。
【請求項３】
前記問い合わせ手段は、前記第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成した際に仮想デバイスが提供できる機能が制限される場合、その旨の内容を含めて当該第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせることを特徴とする請求項２に記載の管理装置。
【請求項４】
前記再構成手段により仮想デバイスを構成する実デバイスが再構成された後、複数の仮想デバイスを構成する実デバイスを比較する比較手段と、
前記比較手段による比較の結果において、実デバイスの構成が同じ仮想デバイスがある場合に、前記実デバイスの構成が同じ仮想デバイスを１つにして管理するための管理手段とを更に有することを特徴とする請求項１乃至３のいずれか１項に記載の管理装置。
【請求項５】
前記実デバイスが有するオプション機能は、実デバイスに装着されるオプション機器が有する機能であり、
前記検出手段は、実デバイスに対するオプション機器の装着を検出することを特徴とする請求項１乃至４のいずれか１項に記載の管理装置。
【請求項６】
前記オプション機器は両面ユニット、スタッカ、フニッシャ、サドルフィニッシャ、ペーパーフォールディングを含み、前記属性は両面印刷、ソート印刷、ステーブルソート印刷、製本印刷、Ｚ折り印刷を含むことを特徴とする請求項１乃至５のいずれか１項に記載の管理装置。
【請求項７】
前記実デバイスが有するオプション機能は、実デバイスにダウンロードされるオプションのデータおよび／またはプログラムが果たす機能であり、
前記検出手段は、オプションのデータおよび／またはプログラムのダウンロードを検出することを特徴とする請求項１乃至４のいずれか１項に記載の管理装置。
【請求項８】
前記オプションのデータおよび／またはプログラムは帳票フォーム、フォントデータ、外字データを含み、前記属性は帳票フォームの場合に帳票印刷ワークフローであることを特徴とする請求項７に記載の管理装置。
【請求項９】
前記検出手段は、予め実デバイスが有するオプション機能が有効とされたか否かを検出することを特徴とする請求項１乃至４のいずれか１項に記載の管理装置。
【請求項１０】
複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理装置であって、
前記実デバイスが有するオプション機能が変更されたことを検出する検出手段と、
前記検出手段により変更を検出したオプション機能に対応して有効となる属性が既に有効である前記仮想デバイスを識別し、当該識別された仮想デバイスの構成を前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ手段と、
前記問い合わせ手段による問い合わせに対するユーザの指示に基づき、前記仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成手段とを有することを特徴とする管理装置。
【請求項１１】
複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理方法であって、
検出手段が、前記実デバイスが有するオプション機能が変更されたことを検出する検出工程と、
変更手段が、前記検出工程で検出されたオプション機能の変更に対応して、当該オプション機能が変更された実デバイスが属する第１の仮想デバイスの属性を変更する変更工程と、
判別手段が、前記変更工程で変更された第１の仮想デバイスの属性と一致する属性をもつ第２の仮想デバイスを判別する判別工程と、
再構成手段が、前記判別工程で第２の仮想デバイスが判別された場合、前記第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成工程とを有することを特徴とする管理方法。
【請求項１２】
問い合わせ手段が、前記判別工程で第２の仮想デバイスが判別された場合、当該第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ工程を有し、
前記再構成工程では、前記問い合わせ工程で問い合わせに対するユーザの指示に応じて前記第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成することを特徴とする請求項１１に記載の管理方法。
【請求項１３】
前記問い合わせ工程では、前記第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成した際に仮想デバイスが提供できる機能が制限される場合、その旨の内容を含めて当該第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせることを特徴とする請求項１２に記載の管理方法。
【請求項１４】
比較手段が、前記再構成工程で仮想デバイスを構成する実デバイスが再構成された後、複数の仮想デバイスを構成する実デバイスを比較する比較工程と、
管理手段が、前記比較工程で比較の結果において、実デバイスの構成が同じ仮想デバイスがある場合に、前記実デバイスの構成が同じ仮想デバイスを１つにして管理するための管理工程とを更に有することを特徴とする請求項１１乃至１３のいずれか１項に記載の管理方法。
【請求項１５】
前記実デバイスが有するオプション機能は、実デバイスに装着されるオプション機器が有する機能であり、
前記検出工程では、実デバイスに対するオプション機器の装着を検出することを特徴とする請求項１１乃至１４のいずれか１項に記載の管理方法。
【請求項１６】
前記オプション機器は両面ユニット、スタッカ、フニッシャ、サドルフィニッシャ、ペーパーフォールディングを含み、前記属性は両面印刷、ソート印刷、ステーブルソート印刷、製本印刷、Ｚ折り印刷を含むことを特徴とする請求項１１乃至１５のいずれか１項に記載の管理方法。
【請求項１７】
前記実デバイスが有するオプション機能は、実デバイスにダウンロードされるオプションのデータおよび／またはプログラムが果たす機能であり、
前記検出工程では、オプションのデータおよび／またはプログラムのダウンロードを検出することを特徴とする請求項１１乃至１４のいずれか１項に記載の管理方法。
【請求項１８】
前記オプションのデータおよび／またはプログラムは帳票フォーム、フォントデータ、外字データを含み、前記属性は帳票フォームの場合に帳票印刷ワークフローであることを特徴とする請求項１７に記載の管理方法。
【請求項１９】
前記検出工程では、予め実デバイスが有するオプション機能が有効とされたか否かを検出することを特徴とする請求項１１乃至１４のいずれか１項に記載の管理方法。
【請求項２０】
複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理方法であって、
検出手段が、前記実デバイスが有するオプション機能が変更されたことを検出する検出工程と、
問い合わせ手段が、前記検出工程で変更を検出したオプション機能に対応して有効となる属性が既に有効である前記仮想デバイスを識別し、当該識別された仮想デバイスの構成を前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ工程と、
再構成手段が、前記問い合わせ工程で問い合わせに対するユーザの指示に基づき、前記仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成工程とを有することを特徴とする管理方法。
【請求項２１】
請求項１１乃至２０のいずれか１項に記載の管理方法の工程をコンピュータに実行させるためのプログラム。
【請求項２２】
請求項２１に記載のプログラムを記憶したコンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の印刷装置などの画像処理装置を仮想デバイスとして管理するシステムにおける仮想デバイスの管理方法、管理装置およびプログラムを記憶する記憶媒体に関する。
【背景技術】
【０００２】
仮想デバイスとして例えば複数の印刷装置を管理する管理システムにおいて、印刷装置のオプション機能の使用許可／禁止を行う場合が発生する。従来は、特許文献１に示されるように、印刷装置におけるオプション機能の装着の有無やオプション機能の能力の有無によって、ユーザへの使用の可否をユーザインタフェースによって通知する例が一般的だった。
【特許文献１】特開平０９−１４６７３１号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記特許文献１のような従来例では、次のような問題点があった。
【０００４】
例えば、ユーザに対して複数の印刷出力系が定義されており、印刷属性によって異なる出力系を設定している場合を想定する。そして、ステープルやフィニッシャを用いた印刷は遠くのデバイスから出力を行い、その他の出力頻度の高い印刷属性は近くのデバイスで出力を行なうとする。これは、具体的にはオフィスなどの環境によっては、多機能なデバイス（複合機）は各部門で共有されるため、自部門からは遠い共有スペースなどに設置されることが考えられるからである。また、自部門の近くには、比較的安価なプリントのみ行えるような印刷装置が設置されることが考えられる。
【０００５】
この環境であっても、近くの出力デバイスにフィニッシャなどが装着された場合でも、従来技術ではステープルやフィニッシャを用いた印刷が遠くのデバイスから出力されるという問題がある。
【０００６】
また、出力デバイスの能力に差がなくなった場合でも、重複した複数の出力系の情報が保持されたままとなり、ユーザにとって不要な情報を蓄積しつづけるという問題があった。
【０００７】
かかる問題は、印刷出力系に限定された問題点ではなく、コンピュータシステムの周辺機器において複数の実デバイスを仮想デバイスとして管理する場合の共通する問題点である。
【０００８】
したがって、本発明は、実デバイスの機能拡張などに応じた、仮想デバイスの柔軟な再構成を行える仮想デバイスの管理方法及び装置を提供することを目的とする。
【０００９】
また、仮想デバイスの再構成に関するユーザへの問い合わせの通知する、仮想デバイスを再構成した結果、仮想デバイスの構成情報が重複した場合、効率的に仮想デバイスの管理情報を管理することを目的とする。
【課題を解決するための手段】
【００１０】
かかる課題を解決するために、本発明の管理装置は、複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理装置であって、前記実デバイスが有するオプション機能が変更されたことを検出する検出手段と、前記検出手段により検出されたオプション機能の変更に対応して、当該オプション機能が変更された実デバイスが属する第１の仮想デバイスの属性を変更する変更手段と、前記変更手段により変更された第１の仮想デバイスの属性と一致する属性をもつ第２の仮想デバイスを判別する判別手段と、前記判別手段により第２の仮想デバイスが判別された場合、前記第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成手段とを有することを特徴とする。
【００１１】
ここで、前記判別手段により第２の仮想デバイスが判別された場合、当該第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ手段を有し、前記再構成手段は、前記問い合わせ手段による問い合わせに対するユーザの指示に応じて前記第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成する。また、前記問い合わせ手段は、前記第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成した際に仮想デバイスが提供できる機能が制限される場合、その旨の内容を含めて当該第２の仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる。また、前記再構成手段により仮想デバイスを構成する実デバイスが再構成された後、複数の仮想デバイスを構成する実デバイスを比較する比較手段と、前記比較手段による比較の結果において、実デバイスの構成が同じ仮想デバイスがある場合に、前記実デバイスの構成が同じ仮想デバイスを１つにして管理するための管理手段とを更に有する。また、前記実デバイスが有するオプション機能は、実デバイスに装着されるオプション機器が有する機能であり、前記検出手段は、実デバイスに対するオプション機器の装着を検出する。また、前記オプション機器は両面ユニット、スタッカ、フニッシャ、サドルフィニッシャ、ペーパーフォールディングを含み、前記属性は両面印刷、ソート印刷、ステーブルソート印刷、製本印刷、Ｚ折り印刷を含む。また、前記実デバイスが有するオプション機能は、実デバイスにダウンロードされるオプションのデータおよび／またはプログラムが果たす機能であり、前記検出手段は、オプションのデータおよび／またはプログラムのダウンロードを検出する。また、前記オプションのデータおよび／またはプログラムは帳票フォーム、フォントデータ、外字データを含み、前記属性は帳票フォームの場合に帳票印刷ワークフローである。また、前記検出手段は、予め実デバイスが有するオプション機能が有効とされたか否かを検出する。
【００１２】
また、本発明の管理装置は、複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理装置であって、前記実デバイスが有するオプション機能が変更されたことを検出する検出手段と、前記検出手段により変更を検出したオプション機能に対応して有効となる属性が既に有効である前記仮想デバイスを識別し、当該識別された仮想デバイスの構成を前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ手段と、前記問い合わせ手段による問い合わせに対するユーザの指示に基づき、前記仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成手段とを有することを特徴とする。
【００１３】
また、本発明の管理方法は、複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理方法であって、前記実デバイスが有するオプション機能が変更されたことを検出する検出工程と、前記検出工程で検出されたオプション機能の変更に対応して、当該オプション機能が変更された実デバイスが属する第１の仮想デバイスの属性を変更する変更工程と、前記変更工程で変更された第１の仮想デバイスの属性と一致する属性をもつ第２の仮想デバイスを判別する判別工程と、前記判別工程で第２の仮想デバイスが判別された場合、前記第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成工程とを有することを特徴とする。
【００１４】
ここで、前記判別工程で第２の仮想デバイスが判別された場合、当該第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ工程を有し、前記再構成工程では、前記問い合わせ工程で問い合わせに対するユーザの指示に応じて前記第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成する。また、前記問い合わせ工程では、前記第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成した際に仮想デバイスが提供できる機能が制限される場合、その旨の内容を含めて当該第２の仮想デバイスを前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる。また、前記再構成工程で仮想デバイスを構成する実デバイスが再構成された後、複数の仮想デバイスを構成する実デバイスを比較する比較工程と、前記比較工程で比較の結果において、実デバイスの構成が同じ仮想デバイスがある場合に、前記実デバイスの構成が同じ仮想デバイスを１つにして管理するための管理工程とを更に有する。また、前記実デバイスが有するオプション機能は、実デバイスに装着されるオプション機器が有する機能であり、前記検出工程では、実デバイスに対するオプション機器の装着を検出する。また、前記オプション機器は両面ユニット、スタッカ、フニッシャ、サドルフィニッシャ、ペーパーフォールディングを含み、前記属性は両面印刷、ソート印刷、ステーブルソート印刷、製本印刷、Ｚ折り印刷を含む。また、前記実デバイスが有するオプション機能は、実デバイスにダウンロードされるオプションのデータおよび／またはプログラムが果たす機能であり、前記検出手段は、オプションのデータおよび／またはプログラムのダウンロードを検出する。また、前記オプションのデータおよび／またはプログラムは帳票フォーム、フォントデータ、外字データを含み、前記属性は帳票フォームの場合に帳票印刷ワークフローである。また、前記検出工程では、予め実デバイスが有するオプション機能が有効とされたか否かを検出する。
【００１５】
また、本発明の管理方法は、複数の実デバイスと、前記複数の実デバイスの有する機能を組み合わせた処理を提供する仮想デバイスを管理する管理方法であって、前記実デバイスが有するオプション機能が変更されたことを検出する検出工程と、前記検出工程で変更を検出したオプション機能に対応して有効となる属性が既に有効である前記仮想デバイスを識別し、当該識別された仮想デバイスの構成を前記検出工程でオプション機能が変更されたことを検出された実デバイスを含めて再構成するか否かをユーザに問い合わせる問い合せ工程と、前記問い合わせ工程で問い合わせに対するユーザの指示に基づき、前記仮想デバイスを前記検出手段によりオプション機能が変更されたことを検出された実デバイスを含めて再構成する再構成工程とを有することを特徴とする。
【００１６】
さらに、上記管理方法の工程をコンピュータに実行させるためのプログラム、及び該プログラムを記憶したコンピュータで読み取り可能な記憶媒体を提供する。
【発明の効果】
【００１７】
本発明は、実デバイスの機能拡張などに応じた、仮想デバイスの柔軟な再構成を行うことが可能となる。
【００１８】
また、仮想デバイスの再構成に関するユーザへの問い合わせの通知する、仮想デバイスを再構成した結果、複数の仮想デバイスの構成情報が重複した場合、効率的に仮想デバイスの管理情報を管理することが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態について、添付図面を参照して詳細な説明を行なう。なお、本実施形態では印刷装置の管理システムを例に説明するが、デバイスは印刷装置に限定されず、それらも本発明に含まれる。
【００２０】
＜印刷装置の管理システムの構成例＞
図１は、本実施形態の印刷装置の管理システムの構成例を示す概念図である。
【００２１】
図１において、１０１はイーサネット（登録商標）などの通信物理媒体を表わし、通信データが交換される伝送経路となるものである。通信物理媒体１０１には、デバイス管理サーバ１０２、クライアント・パーソナルコンピュータ（以下ＰＣ）１０３、デバイス１０４〜１０６がそれぞれ接続されている。
【００２２】
デバイス管理サーバ１０２は、デバイスを管理するプログラムが格納されて実行されるサーバＰＣを示す。クライアントＰＣ１０３は、ネットワーク上に接続されているクライアントＰＣをあらわし、クライアントユーザからの要求により印刷データなどが送信されるＰＣを示す。なお、このクライアントＰＣ１０３は、ネットワーク上に複数台接続することが可能であり、ネットワーク規模により接続台数の上限が決まってくる。ここでは説明を簡便にするため、接続されているクライアントＰＣ１０３は１台だけ図示する。
【００２３】
デバイス１０４〜１０６は、それぞれネットワークに接続された印刷装置であるデバイスＡ〜デバイスＣを示す。これらのデバイスはそれぞれ搭載されている機能が異なり、この例では、デバイスＡは主にスキャンの機能を搭載しており、デバイスＣはスキャンと印刷、いわゆるコピーとプリントの機能が搭載されているデバイスを示す。デバイスＢはデバイスＣに加え、フィニッシャが装着されているデバイスを表わし、ソートやステープル、製本印刷などの出力が可能なデバイスを示す。
【００２４】
＜各機器のハードウエア構成例＞
図２は、図１における各機器の主なハードウェアモジュールの構成例を表した図である。同図を用いて、図１の各機器のハードウェアモジュールの機能を説明する。
【００２５】
図２において、１０１は、図１と同様のネットワーク媒体である。ネットワーク媒体は、各機器間のネットワークを構成する物理的なラインであり、通常はイーサネット（登録商標）などが使われる。
【００２６】
（デバイス管理サーバ１０２のハードウエア構成例）
デバイス管理サーバ１０２を構成するハードウェアモジュールとしては、ネットワークボード２０２、ＣＰＵボード２０３、Ｖｉｄｅｏインタフェース（ＩＦ）２０４、Ｉ／Ｏインタフェース（Ｉ／Ｏ）２０５、ハードディスクインタフェース（ＨＤ＿ＩＦ）２０６がある。
【００２７】
更に、上記構成要素に接続された、ＣＲＴ２０７、キーボード２０８、マウス（登録商標）２０９、ハードディスクドライブ（ＨＤＤ）２１０がある。ハードディスクドライブ２１０は、複数のハードディスクユニットが並列に接続されており、データ転送の高速化と高信頼性とを確保している。なお、このハードディスクドライブ２１０には、サーバＰＣ上で動作するソフトウエアの性格等により、データベースを構築していても良い。
【００２８】
（クライアントＰＣ１０３のハードウエア構成例）
クライアントＰＣ１０３を構成するハードウェアモジュールとしては、ネットワークボード２４１、ＣＰＵボード２４２、Ｖｉｄｅｏインタフェース（ＩＦ）２４３、Ｉ／Ｏインタフェース（Ｉ／Ｏ）２４４、ハードディスクインタフェース（ＨＤ＿ＩＦ）２４５がある。
【００２９】
更に、上記構成要素に接続された、ＣＲＴ２４６、キーボード２４７、マウス（登録商標）２４８、ハードディスクドライブ（ＨＤＤ）２４９がある。ハードディスクドライブ２４９の構成は、デバイス管理サーバ１０２とは異なる。クライアントＰＣ１０３上で動作するソフトウエアは、ハードディスクインタフェース２４５に接続されたハードディスクユニットに格納されている。このソフトウエアは、アプリケーションソフトウエアから印刷要求が行なわれる際に、ＯＳを経由して呼び出されるソフトウエアである。
【００３０】
（ネットワークスキャナ１０４：デバイスＡのハードウエア構成例）
ネットワークスキャナ１０４のハードウェアモジュールとしては、２３３〜２４０によって構成される。すなわち、周辺機器に対応したネットワークボード２３３、スキャナ用のコントローラボード２３４、スキャナユニット２３５、スキャナコントローラ２３６を備える。また、操作パネルコントローラ２３７、操作パネル２３８、および、オプションコントローラ２３９、オプションＩＦ２４０を備えている。
【００３１】
（複合機１０５：デバイスＢのハードウエア構成例）
複合機１０５のハードウェアモジュールとしては、２２１〜２３２および２５０によって構成される。すなわち、周辺機器に対応したネットワークボード２２１、複合機用のコントローラボード２２２、モデム２２３、スキャナユニット２２４、スキャナコントローラ２２５を備える。また、操作パネルコントローラ２２６、操作パネル２２７、および、ハードディスクコントローラ２２８、ハードディスクドライブ（ＨＤＤ）２２９、プリントエンジン２３０を備える。また、オプションコントローラ２３１、オプションＩＦ２３２を備え、オプションＩＦ２３２に装着されたフィニッシャユニット２５０が接続されている。
【００３２】
（プリンタ１０６：デバイスＣのハードウエア構成例）
プリンタ１０６のハードウェアモジュールとしては、２１２〜２２０によって構成される。すなわち、周辺機器に対応したネットワークボード２１２、プリンタ用のコントローラボード２１３、プリントエンジン２１４を備える。また、操作パネルコントローラ２１５、操作パネル２１６、および、ハードディスクコントローラ２１７、ハードディスクドライブ（ＨＤＤ）２１８、オプションコントローラ２１９、オプションＩＦ２２０を備えている。
【００３３】
＜各機器のソフトウエア構成例＞
以下、デバイス管理サーバ１０２およびクライアントＰＣ１０３のソフトウエアモジュールの構成例を説明する。
【００３４】
（デバイス管理サーバ１０２のソフトウエア構成例）
図３Ａは、デバイス管理サーバ１０２上でのデバイス管理アプリケーションプログラムのモジュール構成例を示す図である。
【００３５】
３０１はデバイス管理アプリケーション・プログラムを表わし、デバイス管理部３０２と仮想デバイス構成管理部３０３とからなる。デバイス管理部３０２は、対象デバイスの管理情報を取得管理する。仮想デバイス構成管理部３０３は、デバイス１０４〜１０６の機能を分担して機能によってそれらを組み合わせ、その結果、仮想的に１台のデバイス機能としてユーザに提供するための仮想デバイス構成を管理する。
【００３６】
３０４はＯＳが提供するライブラリ群を表わし、アプリケーションプログラムを構築する際のフレームワーク機能として活用することも可能なものである。３０５はオペレーティングシステム（ＯＳ）を示す。３０６はハードウエアを制御するためのドライバソフト（Ｄｒｉｖｅｒ）を示す。印刷に使用するプリンタドライバなどもドラーバソフト３０６に含まれる。
【００３７】
３０７および３０８は、それぞれハードディスク、ネットワークボードなどの物理媒体を制御するためのソフトウエアコンポーネントを示す。
【００３８】
これらのモジュールによって、デバイス管理サーバ１０２上でデバイス管理ソフトが動作するものとする。
【００３９】
（クライアントＰＣ１０３のソフトウエア構成例）
図３Ｂは、クライアントＰＣ１０３上でのソフトウエアモジュールの構成例を示す図である。
【００４０】
３０９はクライアントＰＣ上で動作するアプリケーションプログラムを示す。アプリケーションプログラムの代表的なものとしては、文書作成ソフト、ドローソフト、表計算ソフトなどがあり、クライアントＰＣのユーザによって任意のソフトウエアをインストールし使用することが可能である。３１０はオペレーティングシステム３１１上に用意されているライブラリ群を表わし、アプリケーションプログラム３０９の動作を補助する役目を果たす。３１１はオペレーティングシステム（ＯＳ）を示す。３１２はＯＳ３１１にインストールされているドライバソフト群（Ｄｒｉｖｅｒ）を表わし、印刷を行なうためのプリンタドライバや、ＰＣに接続されているハードウエアを駆動するドライバソフトなどを示すものである。
【００４１】
（デバイス管理部３０２のモジュール構成例）
図４は、デバイス管理部３０２のモジュール構成例をより詳細に表わしたものである。
【００４２】
デバイス管理部３０２は、デバイス状態監視部４０１と、オプション情報取得部４０２と、オプション情報更新部４０３とから構成される。デバイス状態監視部４０１は、管理対象のデバイスがどのような状態にあるのかを監視し、デバイス管理ソフトとしてどのような動作を行なうべきか判断するための情報を取得する。オプション情報取得部４０２は、管理対象のデバイスにオプション装置が装着されたか否かの判定を行なう。オプション情報更新部４０３は、オプション情報取得部４０２により取得したオプション情報を基に、オプション装着状態を管理する情報の更新を行なう。
【００４３】
（仮想デバイス構成管理部のモジュール構成例）
図５は、仮想デバイス構成管理部３０３のモジュール構成例をより詳細に表わしたものである。
【００４４】
５０１は、仮想デバイスがどの実デバイスによって構成されているのかという情報を管理する、仮想デバイス構成情報管理部を示す。５０２は、仮想デバイスにおいてどのような属性出力が可能かという情報を管理する仮想デバイス属性管理部を示す。５０３は、仮想デバイスを構成する実デバイスにオプション機能が装着されたか否かの判定を行うデバイスオプション情報更新判定部を表わしす。５０４および５０５は、それぞれ管理されている印刷属性と機能属性に分類される属性情報を示す。
【００４５】
５０６は、仮想デバイスを構成する実デバイスに装着されたオプション機能と、有効になる属性の対応情報を管理するオプション属性判定部を示す。５０７は、有効になったオプション機能および属性情報を用いて、仮想デバイスを構成する実デバイスの情報を更新するか否かの判定を行なう仮想デバイス構成情報更新判定部を示す。５０８は、仮想デバイス構成情報を更新した結果、構成情報の重複などを判定し、仮想デバイスの構成情報を更新すべきと判断をお行なった場合に、更新を行なう仮想デバイス更新処理部を示す。
【００４６】
＜本実施形態の仮想デバイスの概念例＞
以下、本実施形態での複数の実デバイスを組み合わせて仮想デバイスとして運用した場合の概念例を説明する。
【００４７】
（概念例１）
図６は、複数の実デバイスを組み合わせて仮想デバイスとして運用した場合の概念例１を示す運用概念図である。
【００４８】
図６の環境においては、仮想デバイスの構成情報を管理するデバイス管理サーバ１０２、アプリケーションプログラムからの印刷要求を行なうクライアントＰＣ１０３に対して、複数のデバイスにおいて機能分担を行い１つの仮想的なデバイスとして機能する点線で囲まれた仮想デバイス６０３が構成されている。
【００４９】
仮想デバイス６０３は、実デバイスとしての、スキャン機能を担当するデバイスＡ（１０４）、クライアントＰＣ１０３からの印刷ジョブ投入を受付け、イメージ展開機能を担当するデバイスＢ（１０５）、デバイスＢから展開イメージを受け取り、通常印刷出力機能を担当するデバイスＣ（１０６）によって構成されている。
【００５０】
デバイスＡ，Ｂ，Ｃおよびデバイス管理サーバ１０２、クライアントＰＣ１０３は、それぞれネットワーク１０１を用いて接続されており、データの受け渡しを行いながら印刷処理を実行する。
【００５１】
かかる構成による具体的な印刷処理の流れに関して、順を追って説明する。
【００５２】
（Ｓ６１）  まず、クライアントＰＣ１０３より、仮想デバイス６０３に対して印刷ジョブの投入を行なうための準備処理として、デバイス管理サーバ１０２に対して印刷ジョブの投入要求を行なう。この際、仮想デバイス６０３を特定するための情報として、仮想デバイス名などの情報を合わせて送信する。
【００５３】
（Ｓ６２）  クライアントＰＣ１０３は、デバイス管理サーバ１０２より仮想デバイス６０３を構成している実デバイスの情報を取得し、今から投入する印刷ジョブをどの実デバイスに対して投入すべきか決定する。
【００５４】
（Ｓ６３）  次に、クライアントＰＣ１０３は、デバイスＢ（１０５）に対して印刷ジョブの投入を行なう。デバイスＢで印刷ジョブの受付けを行なった後、仮想デバイス６０３での機能分担に従いジョブの受け渡しを行なう。
【００５５】
（Ｓ６４）  この例では、デバイスＢでは印刷ジョブの受付けを行い、ジョブを印刷イメージに展開する。
【００５６】
（Ｓ６５）  展開した後に、そのイメージデータをデバイスＣ（１０６）に対して送信する。デバイスＣでは、受け取ったイメージを用いて通常の印刷出力を行なう。この例では印刷出力を例として用いたため、デバイスＡ（１０４）でのスキャン処理は行なわれていない。
【００５７】
（概念例２）
図７は、複数の実デバイスを組み合わせて仮想デバイスとして運用した場合の概念例２を示す運用概念図である。
【００５８】
図７の環境においては、仮想デバイスの構成情報を管理するデバイス管理サーバ１０２、アプリケーションプログラムからの印刷要求を行なうクライアントＰＣ１０３に対して、複数のデバイスにおいて機能分担を行い１つの仮想的なデバイスとして機能する点線で囲まれた仮想デバイス７０３が構成されている。
【００５９】
仮想デバイス７０３は、実デバイスとして、スキャン機能を担当するデバイスＡ（１０４）、クライアントＰＣからの印刷ジョブ投入を受付け、フィニッシャを用いた出力を行なう機能を担当するデバイスＢ（１０５）によって構成されている。
【００６０】
デバイスＡ，Ｂ，Ｃおよびデバイス管理サーバ１０２、クライアントＰＣ１０３は、それぞれネットワーク１０１を用いて接続されており、データの受け渡しを行いながら印刷処理を実行する。
【００６１】
かかる構成による具体的な印刷処理の流れに関して順を追って説明する。
【００６２】
（Ｓ７１）  まず、クライアントＰＣ１０３より、仮想デバイス７０３に対してフィニッシャ機能を使用する印刷属性の印刷ジョブの投入を行なうための準備処理として、デバイス管理サーバ１０２に対して印刷ジョブの投入要求を行なう。この際仮想デバイスを特定するための情報として、仮想デバイス名などの情報を合わせて送信する。
【００６３】
（Ｓ７２）  クライアントＰＣ１０３は、デバイス管理サーバ１０２より仮想デバイス７０３を構成している実デバイスの情報を取得し、今から投入する印刷ジョブをどの実デバイスに対して投入すべきか決定する。
【００６４】
（Ｓ７３）  次に、クライアントＰＣ１０３は、デバイスＢ（１０５）に対して印刷ジョブの投入を行なう。デバイスＢで印刷ジョブの受付けを行なうと、仮想デバイスでの機能分担に従いジョブの受け渡しを行なう。
【００６５】
（Ｓ７４）  この例では、デバイスＢでは印刷ジョブの受付けを行い、ジョブを印刷イメージに展開する。
【００６６】
（Ｓ７５）  展開した後に、フィニッシャを用いてステープル印刷出力を行なう。
【００６７】
この例では印刷出力を例として用いたため、デバイスＡでのスキャン処理は行なわれていない。
【００６８】
上記、概念例１と２は仮想デバイスおよびその動作の一例であり、種々の仮想デバイスとその動作が可能である。
【００６９】
＜本実施形態で使用される各情報の構成例＞
（仮想デバイス構成管理テーブルの例）
図８は、仮想デバイス構成管理テーブルの例を示す図である。
【００７０】
この仮想デバイス構成管理テーブル８００は、デバイス管理サーバ１０２上に仮想デバイスの定義をした際に構築される情報である。仮想デバイスの構成を設定する方法に関しては本発明の主要な部分ではないため、ここでは既に仮想デバイスの定義が終了した後の動作に関して記述する。
【００７１】
本仮想デバイス構成管理テーブル８００は、仮想デバイスの定義が完了した後、図２のデバイス管理サーバ１０２のＨＤＤ２１０に格納される。そして、図３Ａの仮想デバイス構成管理部３０３のモジュールを構成する図５の仮想デバイス構成情報管理部５０１のモジュールによって必要に応じて参照される。
【００７２】
仮想デバイス構成管理テーブル８００には、仮想デバイスに関する名称である仮想デバイス情報８０１が格納される。また、仮想デバイスを管理するグループに関する情報である仮想デバイスグループ８０２が格納される。また、仮想デバイスを用いて印刷を行なった印刷出力回数８０３が格納される。また、仮想デバイスを構成する各実デバイスにおける機能分担に関する情報８０４が格納されている。
【００７３】
ここで、仮想デバイスグループは、例えばある１つの部門用の２つの仮想デバイスを管理するなどの用途で用いる識別情報である。例えば仮想デバイス１は通常印刷を行うため、ユーザ環境にとってその部門の近い位置関係にあるデバイスＣを印刷出力（Ｐｒｉｎｔ）機能を担当するデバイスとしている。また仮想デバイス２は特殊な印刷（ステープルなど）を行うための仮想デバイスであり、高機能な出力デバイスが必要となるため印刷出力（Ｐｒｉｎｔ）機能を担当するデバイスとしてデバイスＢが設定されている。
【００７４】
図８の仮想デバイス１は図６の概念例１に、仮想デバイス２は概念例２に相当する。以下、この仮想デバイス１が第１の仮想デバイスに相当し、仮想デバイス２が第２の仮想デバイスに相当する。
【００７５】
（仮想デバイス印刷属性テーブルの例）
図９は、仮想デバイスにおける指定可能な印刷属性の対応情報を管理する仮想デバイス印刷属性テーブルの例を示す図である。
【００７６】
この仮想デバイス印刷属性テーブル９００は、デバイス管理サーバ１０２上に仮想デバイスの定義をした際に構築される情報である。ここでは既に仮想デバイスの定義が終了した後の動作に関して記述する。
【００７７】
本仮想デバイス印刷属性テーブル９００は、仮想デバイスの定義が完了した後、図２のデバイス管理サーバ１０２のＨＤＤ２１０に格納される。そして、図３Ａの仮想デバイス構成管理部３０３のモジュールを構成する図５の仮想デバイス属性管理部５０２のモジュールによって必要に応じて参照される。
【００７８】
仮想デバイス印刷属性テーブル９００には、仮想デバイスに関する名称９０１、仮想デバイスを管理するグループに関する情報９０２、指定可能な印刷属性に関する情報９０３が格納されている。
【００７９】
（オプションと印刷属性を管理するテーブルの例）
図１０は、オプションと対応可能な印刷属性の情報を管理するテーブルである。
【００８０】
このテーブル１０００は、図２のデバイス管理サーバ１０２内のＨＤＤ２１０内に格納されている。そして、図３Ａの仮想デバイス構成管理部３０３のモジュールを構成する図５のオプション属性判定部５０６のモジュールが必要に応じて参照する。
【００８１】
このオプションと対応可能な印刷属性の情報を管理するテーブル１０００は、印刷管理ソフトのインストール時にＨＤＤ２１０内に格納してもよく、後からオプションの追加及び属性の追加を行なうことも可能なものである。ここではオプション属性の対応の例として、フィニッシャに関連するオプション１００１と属性１００２の対応を例としてあげている。
【００８２】
例えば、オプション種別の両面ユニット、スタッカ、フニッシャ、サドルフィニッシャ、ペーパーフォールディングに対して、印刷属性の両面印刷、ソート印刷、ステーブルソート印刷、製本印刷、Ｚ折り印刷が対応して記憶されている。
【００８３】
なお、上記デーブル以外にも、仮想デバイスを管理する情報を有するが、それらは以降の処理手順の説明に付随して示す。
【００８４】
＜実施形態１におけるオプション装着変更時の処理手順例＞
次に、管理対象のデバイスにオプションが装着された場合の、処理手順例を説明する。この場合、図３Ａのデバイス管理部３０２を構成する図４のオプション情報取得部４０２が、オプションの装着を検知する。検出した結果、図４のオプション情報更新部４０３により実デバイスごとのオプション装着情報が更新される。
【００８５】
まず、オプションの装着状態を管理するテーブルの例を、図１２に示す。このテーブル１２００では、実デバイス名１２０１に対応して、オプション品の装着の有無を示すフラグ１２０２とオプション品装着日時に関する情報１２０３が管理されている。
【００８６】
また、本例での、オプションが装着される前の対象デバイスと装着オプションの対応情報１３００の例を図１３に示し、新たなオプションが装着された後の対象デバイスと装着オプションの対応情報１４００の例を図１４に示す。図１３および図１４から明らかなように、本例ではデバイスＣにオプション能力４（他のオプション能力より高い）のサドルフィニッシャ１４０１が新たに装着された例を示す。
【００８７】
図１１は、実デバイスごとのオプション装着情報が更新された後の、本実施形態における処理手順例を示すフローチャートである。
【００８８】
ステップＳ１１０１で、デバイス管理サーバ１０２におけるＨＤＤ２１０より、図８の仮想デバイス構成管理テーブル８００に示したような仮想デバイスの構成情報を取得する。
【００８９】
ステップＳ１１０２では、ステップＳ１１０１において取得した仮想デバイス構成管理テーブル８００内の、仮想デバイスグループの情報８０２を参照し、同一グループ内に複数の仮想デバイスが定義されているか否かの判定を行なう。判定を行った結果、同一グループ内に複数の仮想デバイスが定義されている場合はステップＳ１１０３へ進み、グループ内に単一の仮想デバイスのみが定義されている場合にはステップＳ１１１９へ進む。図８の例では、複数の仮想デバイスが定義されているのでステップＳ１１０３に進む。
【００９０】
ステップＳ１１０３では、同一仮想デバイスグループ内の仮想デバイスを構成する実デバイスの情報を参照し、出力機能を担当している実デバイスが異なるか否かの判定を行なう。同一グループ内の仮想デバイスにおいて、出力機能を担当している実デバイスが異なる場合はステップＳ１１０４へ進み、同一の実デバイスである場合はステップＳ１１１９へ進む。図８の例では、仮想デバイス１と２とでプリント機能を担当する実デバイスが異なるのでステップＳ１１０４に進む。
【００９１】
ステップＳ１１０４では、仮想デバイスの出力機能を担当している実デバイスに、新たにオプションが装着されたか否かを、図１２に示すデバイスごとの装着オプション管理テーブル１２００のデータを参照し判定を行う。オプション品が新たに装着されたと判定された場合にはステップＳ１１０５へ進み、新たに装着されたオプション品はないと判定された場合にはステップＳ１１１９へ進む。この例では、図１４のように、デバイスＣに新たにオプション品が装着されたので、ステップＳ１１０５に進む。
【００９２】
ステップＳ１１０５では、新たに装着されたオプション品の情報を取得する。取得する情報は、オプション品の名称やオプション品のＩＤなど、装着されたオプション品を特定可能な情報であればその種別に関しては問わない。オプション情報の取得方法に関しては一般的なＳＮＭＰを用いたＭＩＢからの情報取得や、独自の機器管理プロトコルを用いて取得する方法を使用することとする。本例では、サドルフィニッシャであることを示す情報が取得される。
【００９３】
次に、ステップＳ１１０６では、新たに装着されたオプション品の機能レベルの情報を取得する。機能レベルの取得方法は、オプション機器よりＳＮＭＰを用いたＭＩＢからの情報取得や、独自の機器管理プロトコルを用いて取得する方法などが一般的であるが、外部のオプション品情報管理サーバに対して問い合わせを行なう取得するような方法も可能である。本例では、装着されたサドルフィニッシャのオプション能力４であることが取得される。
【００９４】
ステップＳ１１０７では、新たに装着されたオプション品と対応可能な印刷属性を、図１０に示すオプション品と指定可能な印刷属性の対応表１０００を参照し、装着されたオプション品によって対応可能となった印刷属性を決定する。
【００９５】
次に、ステップＳ１１０８では、ステップＳ１１０７において決定したオプション品によって対応可能となった印刷属性を、図９の仮想デバイス印刷属性対応テーブル９００に反映する。以下で更に説明するが、本例では仮想デバイス１のプリント機能を担当するデバイスＣにサドルフィニッシャが装着されたので、図９の仮想デバイス１のソート、ステーブルソート、製品印刷の印刷属性が可能となる。
【００９６】
ステップＳ１１０９では、ステップＳ１１０８において更新を行った仮想デバイスの印刷属性の比較を基に、同一仮想デバイスグループ内において同一の一致する印刷可能属性を持つ仮想デバイスが存在するか否かを、図９の仮想デバイス印刷属性対応テーブル９００の内容を参照して判別する。判別を行った結果、同一の印刷可能属性を持つ仮想デバイスが存在した場合にはステップＳ１１１０へ進み、存在しない場合はステップＳ１１１９へ進む。本例では、仮想デバイス１と２との印刷属性が同一となるので、ステップＳ１１１０に進む。
【００９７】
ステップＳ１１１０では、同一の印刷属性を持つ仮想デバイスが存在した場合に、図８の仮想デバイス構成管理テーブル８００の印刷回数８０３を参照し、どちらの仮想デバイスがより印刷に使用されているかという使用頻度である出力頻度情報を取得する。出力頻度情報を取得した後、ステップＳ１１１１へ進む。
【００９８】
ステップＳ１１１１では、図８の仮想デバイス構成管理テーブル８００を参照し、同一仮想デバイスグループ内の印刷出力機能を担当しているデバイスに装着されているオプションの情報を参照する。具体的には、Ｇｒｏｕｐ１に属する仮想デバイス１と仮想デバイス２の、Ｐｒｉｎｔ機能を担当しているデバイスであるデバイスＣとデバイスＢに装着されているオプションの情報を取得する。すなわち、図１４のようにデバイスＣにサドルフィニッシャが装着されたオプションの情報が取得される。
【００９９】
ステップＳ１１１２では、ステップＳ１１１１において取得を行なったオプションの能力と、ステップＳ１１１０において取得した使用頻度である出力頻度情報を参照し、使用頻度の高い仮想デバイスのオプションの能力が同等かそれ以上であるか否かの判定を行う。使用頻度の高い仮想デバイスのオプションの能力が高いと判定された場合はステップＳ１１１３へ進み、逆に能力が低いと判定された場合にはステップＳ１１１７へ進む。本例では、仮想デバイス１の出力機能を担当するデバイスＣの装着オプションのサドルフィニッシャはオプション能力４であり、仮想デバイス２の出力機能を担当するデバイスＢの装着オプションのサドルフィニッシャはオプション能力３である。そのため、使用頻度の高い仮想デバイス１のオプション能力が高いと判定できるため、ステップＳ１１１３へ進む。
【０１００】
ステップＳ１１１３では、印刷結果が出力されるデバイスが変更されることを確認する、図１５に示すようなメッセージ１５００を表示し、仮想デバイスを管理する管理者に判断を行なわせる。一方、ステップＳ１１１７では、印刷結果が出力されるデバイスが、機能制限はあるが使用頻度の高いデバイスに変更可能であるが、変更しても良いかどうか確認を行なう。すなわち、図１６に示すようなメッセージ１６００を表示し、仮想デバイスを管理する管理者に判断を行なわせる。
【０１０１】
ステップＳ１１１４では、ステップＳ１１１３およびＳ１１１７において表示を行なったメッセージに対して、仮想デバイスを管理する管理者の判断情報を取得し、仮想デバイスの構成を再構成するか（ＯＫ）否か（キャンセル）の判定を行なう。判定を行った結果、仮想デバイスの構成情報を再構成する場合はステップＳ１１１５へ進み、再構成しない場合はステップＳ１１１９へ進む。
【０１０２】
ステップＳ１１１５で、仮想デバイスを構成する実デバイスの印刷機能を担当するデバイスオプションが装着されたことにより、最終的に仮想デバイスの構成を変更したほうが良いと判断された結果、仮想デバイスの構成情報を変更する。本例では、図８の仮想デバイス構成管理テーブル８００における、仮想デバイス２のＰｒｉｎｔ機能を担当しているデバイスＢをデバイスＣに置き換えるような処理を行なう。再構成後の仮想デバイス構成管理テーブルの例８００'を、図１７に示す。同じ参照番号は図８と同様である。
【０１０３】
ステップＳ１１１６では、ステップＳ１１１５において構成を変更した仮想デバイス構成管理テーブル８００'内の、仮想デバイスを構成する実デバイスの情報のチェックを行う。重複している構成があればステップＳ１１１８へ進み、重複している情報が無ければステップＳ１１１９へ進む。図１７を用いた具体的な例としては、Ｇｒｏｕｐ１の仮想デバイス１と仮想デバイス２を構成する実デバイスの情報を参照する。本例では、実デバイスの構成が同一で仮想デバイスが重複しているので、ステップＳ１１１８に進む。
【０１０４】
ステップＳ１１１８では、重複した仮想デバイスの構成情報を削除する。削除後の仮想デバイス構成管理テーブルの例８００"を、図１８に示す。同じ参照番号は図８と同様である。尚、仮想デバイスごとに、ユーザ（管理者）がデバイス名や用途などを登録管理する場合も可能である。したがって、ただ削除せずに両方のそれらの登録されたデバイス情報を統合するようにして１つの仮想デバイスとしても管理するようにしてもよい。このステップにより、結果として、重複した仮想デバイスを削除しても、統合しても、同様の実デバイス構成をもつ仮想デバイスを１つにまとめることが可能になる。
【０１０５】
ステップＳ１１１９では、上述の処理を行なっていない仮想デバイスグループが存在するかどうかの判定を行なう。その結果、未処理の仮想デバイスグループが存在する場合にはステップＳ１１０２へ戻って上述の処理を繰り返し、未処理の仮想デバイスグループが存在しない場合には処理を終了する。
【０１０６】
以上、印刷装置に装着するオプション品の例を述べたが、対象とするオプション品に関しては、装着オプションとは限らない。例えば、印刷装置に出荷時にあらかじめインストールされている機能を有効にするような操作にも、本実施形態を適用することが可能である。また、ネットワークなどの外部設備を整備することにより機能が活性化されるものも含まれる。具体的には、ＦＡＸ機能や電子メールを送信するＳＥＮＤ機能、デバイス内外のデータの格納・取り出しをデバイスに備える記憶装置に対して行えるＢＯＸ昨日などが挙げられる。
【０１０７】
以上の処理により、本実施形態に示したような印刷装置に対してオプション機能を有効にすることにより、そのオプション機能の情報を参照しながら仮想デバイスの構成を変更した場合に、出力形態を統一することが可能となる。同時に、重複した仮想デバイス構成情報を整理することが可能となる。
【０１０８】
また、本実施例においては、使用頻度の高い仮想デバイスが高機能に変更された場合について考える。このような際に他の仮想デバイスと機能が同等もしくは高くなった場合、ステップＳ１１１３、Ｓ１１１７のようなユーザに問い合わせを行うことなく、仮想デバイスの再構成を行ってもよい。
【０１０９】
なお、本実施形態は印刷装置をデバイスとする仮想デバイスのシステムを例に説明したが、本技術思想が適用されるデバイスは印刷装置に限定されず、スキャナなど単機能の装置なども含まれる。
【０１１０】
＜実施形態２におけるオプションリソース変更時の処理例＞
次に、印刷装置のフォントや帳票フォームなどのリソースデータにおいて、本発明を適用したケースに関して説明を行う。
【０１１１】
印刷装置に対して、外部の管理アプリケーションより印刷に必要となるリソースデータ（フォント、外字、帳票フォームや色処理に用いられるカラープロプロファイルなど）を、印刷機器内部にダウンロードを行うことが可能である。このダウンロードリソースの有無により、出力が可能な印刷物と出力できない印刷物が存在する。例えば、印刷機器内部に登録されている帳票データをオーバーレイして行なう帳票印刷などは、帳票フォームを持たない機器に印刷した場合は出力結果として意味をなさないものとなってしまう。
【０１１２】
同様に、印刷機器内部に登録された外字を用いて印刷を行なう外字を含んだドキュメントの印刷などは、印刷機器内部にその外字が含まれていない場合はその外字が出力されない、もしくは別の文字に置き換えられるなど、意図しない出力結果になってしまう。
【０１１３】
（印刷リソースのダウンロード）
まず、前提条件として外部の印刷機器管理システムより、印刷リソースを出力機器に対してダウンロードする際の処理の概要に関して簡単に説明する。
【０１１４】
印刷リソースをダウンロードするプログラムに関しては、デバイス管理サーバ１０２の一機能として実現していてもよく、クライアントＰＣ１０３上で起動する単体ユーティリティソフトであっても良い。このプログラムに関しては、選択したリソースデータを指定先デバイスに対してダウンロードが可能な形態を取っていれば良い。
【０１１５】
このダウンロードプログラムは、デバイス管理サーバ１０２で実行される場合にはＨＤＤ２１０にインストール、クライアントＰＣ１０３で実行される場合にはＨＤＤ２４９にインストールされ、デバイス管理者の指示により必要に応じて起動される。
【０１１６】
次に、出力機器に対してダウンロードを行なう印刷リソースデータを、ユーザインタフェースを用いて選択する。選択を行なうリソースデータは単一でも複数でもよく、またその種類は制限されるものではない。次に、印刷リソースデータダウンロードプログラムは、印刷出力機器が解釈可能な形に印刷リソースデータをコンバートする。そして、印刷機器との約束事に従いダウンロード指示コマンドおよびダウンロードプロトコルを用いてリソースデータのダウンロードデータを送信する。
【０１１７】
一方、ダウンロードデータを受信した印刷出力機器側では、受信データの解釈を行なう。受信したリソースデータを自分自身の機器内の記憶領域であるＨＤＤ２１８、ＨＤＤ２２９などに格納し、以降の印刷処理要求時に必要に応じで読み出し、使用することで印刷結果への反映を行なうことが可能となる。なお、印刷機器側の記憶領域はＨＤＤだけではなく、ＦＬＡＳＨＲＯＭなどの不揮発性メモリであれば、その記憶媒体の種類に関しては問わない。また、機器側の電源投入にのみ有効であれば良いようなリソースデータに関しては、揮発性メモリ上にダウンロードすることも可能である。
【０１１８】
＜本実施形態で使用される各情報の構成例＞
（オプションリソースと印刷属性を管理するテーブルの例）
図１９は、印刷機器にダウンロード可能な印刷リソースと、印刷機能属性の対応例を示すテーブル１９００の例である。
【０１１９】
ここでは、印刷機器に帳票フォーム１９０１がダウンロードされているときには、帳票ワークフロー１９０２からの出力が可能であると言う情報が格納されている例である。
【０１２０】
以降、帳票フォームの例を用いて説明を行うが、ダウンロードリソースがフォントデータの場合は、書体名称に関する情報と、その書体を選択しているドキュメントが印刷可能となる。ダウンロードリソースが外字の場合、外字データを用いているドキュメントの印刷が可能となる。
【０１２１】
（仮想デバイス構成管理テーブルの例）
図２０は、本例における仮想デバイス構成管理テーブル２０００を示す。
【０１２２】
図２０では、仮想デバイス１と仮想デバイス２が同一グループに属しており、仮想デバイス１はデバイスＡ、デバイスＢ、デバイスＣによって構成されている。この仮想デバイスは、通常印刷属性での印刷時に使用される仮想デバイスである。仮想デバイス２はデバイスＡ、デバイスＢによって構成されており、帳票印刷属性での印刷時に使用される仮想デバイスを表わしている。
【０１２３】
本仮想デバイス構成管理テーブ２０００は、仮想デバイスの定義が完了した後、図２のデバイス管理サーバ１０２のＨＤＤ２１０に格納される。そして、図３Ａの仮想デバイス構成管理部３０３のモジュールを構成する図５の仮想デバイス構成情報管理部５０１のモジュールによって必要に応じて参照される。
【０１２４】
仮想デバイス構成管理テーブル２０００には、仮想デバイスに関する名称である仮想デバイス情報２００１が格納される。また、仮想デバイスを管理するグループに関する情報である仮想デバイスグループ２００２が格納される。また、仮想デバイスを用いて印刷を行なった印刷出力回数２００３が格納される。また、仮想デバイスを構成する各実デバイスにおける機能分担に関する情報２００４が格納されている。
【０１２５】
（仮想デバイス印刷属性テーブルの例）
図２１は、仮想デバイス１および仮想デバイス２において、指定可能な印刷属性を管理する仮想デバイス印刷属性テーブル２１００の例を示す図である。
【０１２６】
仮想デバイス１と仮想デバイス２では、帳票印刷属性以外に差はないという例である。
【０１２７】
本仮想デバイス印刷属性テーブル２１００は、仮想デバイスの定義が完了した後、図２のデバイス管理サーバ１０２のＨＤＤ２１０に格納される。そして、図３Ａの仮想デバイス構成管理部３０３のモジュールを構成する図５の仮想デバイス属性管理部５０２のモジュールによって必要に応じて参照される。
【０１２８】
仮想デバイス印刷属性テーブル２１００には、仮想デバイスに関する名称２１０１、仮想デバイスを管理するグループに関する情報２１０２、指定可能な印刷属性に関する情報２１０３が格納されている。
【０１２９】
＜実施形態２における処理手順例＞
図２２は、実施形態２における処理の流れの例を示すフローチャートである。なお、本例にけるリソースの変更を、リソースデータがダウンロードされる前の対象デバイスと装着オプションの対応情報２３００の例を図２３に、リソースデータがダウンロードされた後の対象デバイスと装着オプションの対応情報２４００の例を図２４に示す。ここでは、デバイスＣに帳票フォーム１及び２が新たにダウンロードされた場合である。
【０１３０】
先ず、ステップＳ２２０１で、デバイス管理サーバ１０２におけるＨＤＤ２１０より、図２０に示したような仮想デバイスの構成情報を取得する。
【０１３１】
ステップＳ２２０２では、ステップＳ２２０１において取得した仮想デバイス構成管理テーブル２０００内の、仮想デバイスグループの情報２００２を参照し、同一グループ内に複数の仮想デバイスが定義されているか否かの判定を行う。判定を行った結果、同一グループ内に複数の仮想デバイスが定義されている場合はステップＳ２２０３へ進み、グループ内に単一の仮想デバイスのみが定義されている場合にはステップＳ２２１６へ進む。本例では、図２０から複数の仮想デバイスが定義されているので、ステップ２２０３に進む。
【０１３２】
ステップＳ２２０３では、同一仮想デバイスグループ内の仮想デバイスを構成する実デバイスの情報を参照し、出力機能を担当している実デバイスが異なるか否かの判定を行なう。同一グループ内の仮想デバイスにおいて、出力機能を担当している実デバイスが異なる場合はステップＳ２２０４へ進み、同一の実デバイスである場合はステップＳ２２１６へ進む。本例では、仮想デバイス１の出力機能はデバイスＣが、仮想デバイス２の出力機能はデバイスＢが担当しているので、ステップＳ２２０４に進む。
【０１３３】
ステップＳ２２０４では、仮想デバイスの出力機能を担当している実デバイスに、新たにリソースデータがダウンロードされたか否かの判定を行う。リソースデータがあらたにダウンロードされたと判定された場合にはステップＳ２２０５へ進み、新たにダウンロードされたリソースデータはないと判定された場合にはステップＳ２２１６へ進む。本例では、図２４に示すように、デバイスＣに新たな帳票フォーム１及び２がダウンロードされたので、ステップＳ２２０５に進む。
【０１３４】
ステップＳ２２０５では、新たにダウンロードされたリソースデータの情報を取得する。取得する情報は帳票フォームであれば、フォームの名称に関する情報やフォームのサブタイトルなど、フォームデータを特定するための情報を取得する。本例では、帳票フォーム１と２であることを取得する。
【０１３５】
また、リソースデータがフォントデータであった場合は、そのフォントを特定するための書体名称を取得する。また、リソースデータがカラープロファイルであった場合は、そのプロファイルを特定するためのプロファイル名称や、色空間に関する情報などの取得を行なう。リソースデータ情報の取得方法に関しては本発明の本質ではないので、一般的なＳＮＭＰを用いたＭＩＢからの情報取得や、独自の機器管理プロトコルを用いて取得する方法を使用することとする。
【０１３６】
ステップＳ２２０６では、新たにダウンロードされたリソースデータと対応可能な印刷属性を、図１９に示すオプションリソースと指定可能な印刷属性の対応表１９００を参照して決定する。本例では、帳票印刷ワークフロー１と２が印刷属性として決定される。
【０１３７】
次に、ステップＳ２２０７では、ステップＳ２２０６において決定したダウンロードされたリソースデータによって対応可能となった印刷属性を、図２１の仮想デバイス印刷属性対応テーブル２１００に反映する。本例では、仮想デバイス２の帳票印刷１及び２が処理可能となる。
【０１３８】
ステップＳ２２０８では、ステップＳ２２０７において更新を行った図２１の仮想デバイス印刷属性対応テーブル２１００の内容を比較して、同一仮想デバイスグループ内において同一の一致する印刷可能属性を持つ仮想デバイスが存在するか否かの判別をする。判別を行った結果、同一の印刷可能属性を持つ仮想デバイスが存在した場合にはステップＳ２２０９へ進み、存在しない場合はステップＳ２２１６へ進む。本例では、仮想デバイス１と２が同一の印刷可能属性を持つようになったので、ステップＳ２２０９に進む。
【０１３９】
ステップＳ２２０９では、図２０における仮想デバイス構成管理テーブル２０００の印刷回数２００３を参照し、どちらの仮想デバイスがより印刷に使用されているかという出力頻度情報を取得する。出力頻度情報を取得した後、ステップＳ２２１０へ進む。
【０１４０】
ステップＳ２２１０では、図２０の仮想デバイス構成管理テーブル２０００から、同一仮想デバイスグループ内の印刷出力機能を担当しているデバイスにダウンロードされているリソースデータを参照する。具体的には、Ｇｒｏｕｐ１に属する仮想デバイス１と仮想デバイス２の、Ｐｒｉｎｔ機能を担当しているデバイスであるデバイスＣとデバイスＢにダウンロードされているリソースデータの情報を取得する。
【０１４１】
ステップＳ２２１１では、印刷結果が出力されるデバイスが変更されることを確認する、図２５に示すようなメッセージ２５００を表示し、仮想デバイスを管理する管理者に判断を行なわせる。
【０１４２】
ステップＳ２２１２では、ステップＳ２２１１において表示を行なったメッセージ２５００に対して、仮想デバイスを管理する管理者の判断情報を取得し、仮想デバイスの構成を再構成するか（ＯＫ）否か（キャンセル）の判定を行なう。判定を行った結果、仮想デバイスを構成する実デバイスの印刷機能を担当するデバイスに対してリソースデータがダウンロードされたことにより、最終的に仮想デバイスの構成を変更したほうが良いと判断された場合はステップＳ２２１３へ進み、再構成しない場合はステップＳ２２１６へ進む。
【０１４３】
ステップＳ２２１３では、仮想デバイスの構成情報を変更する。具体的には、図２０における、仮想デバイス構成管理テーブルの仮想デバイス２のＰｒｉｎｔ機能を担当しているデバイスＢをデバイスＣに置き換えるような処理を行なう。再構成後の仮想デバイス構成管理テーブルの例２０００'を、図２６に示す。図２６で図２０と同じ参照番号は同様である。
【０１４４】
ステップＳ２２１４では、ステップＳ２２１３において構成を変更した仮想デバイス構成管理テーブル２０００'内の、仮想デバイスを構成する実デバイスの情報のチェックを行なう。重複している構成があればステップＳ２２１５へ進み、重複している情報が無ければステップＳ２２１６へ進む。図２６を用いた具体的な例としては、Ｇｒｏｕｐ１の仮想デバイス１と仮想デバイス２を構成する実デバイスの情報が同じで重複しているので、ステップＳ２２１５に進む。
【０１４５】
ステップＳ２２１５では、重複した仮想デバイスの構成情報を削除する。削除後の仮想デバイス構成管理テーブルの例２０００"を、図２７に示す。図２７で図２０と同じ参照番号は同様である。
【０１４６】
ステップＳ２２１６では、上述の処理を行なっていない仮想デバイスグループが存在するかどうかの判定を行い、未処理の仮想デバイスグループが存在する場合にはステップＳ２２０２へ戻って上述の処理を繰りかえす。未処理の仮想デバイスグループが存在しない場合には処理を終了する。
【０１４７】
以上の処理により、本実施形態に示したような印刷装置にリソースデータをダウンロードすることにより、そのリソースデータの内容を参照しながら仮想デバイスの構成を変更した場合に、出力形態を統一することが可能となる。同時に、重複した仮想デバイス構成情報を整理することが可能となる。
【０１４８】
なお、本実施形態は印刷装置をデバイスとする仮想デバイスのシステムを例に説明したが、本技術思想が適用されるデバイスは印刷装置に限定されない。
【０１４９】
尚、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、プリンタなど）から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
【０１５０】
又、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。又、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（OS）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行なう。このような処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５２】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１５３】
【図１】本実施形態の印刷装置の管理システムの構成例を示す概念図である。
【図２】本実施形態におけるハードウエア構成例を示す図である。
【図３Ａ】本実施形態におけるデバイス管理サーバのソフトウエア構成例を示す図である。
【図３Ｂ】本実施形態におけるクライアントＰＣのソフトウエア構成例を示す図である。
【図４】デバイス管理サーバにおけるデバイス管理部のモジュール構成例を示す図である。
【図５】デバイス管理サーバにおける仮想デバイス構成管理部のモジュール構成例を示す図である。
【図６】仮想デバイスを用いた運用方法の概念例１を示す図である。
【図７】仮想デバイスを用いた運用方法の概念例２を示す図である。
【図８】実施形態１の仮想デバイス構成管理テーブルの一例を示す図である。
【図９】実施形態１の仮想デバイスにおける指定可能な印刷属性を管理する管理デバイス印刷属性対応テーブルの一例を示す図である。
【図１０】実施形態１のオプションと対応可能な印刷属性の対応表の一例を示す図である。
【図１１】実施形態１の処理の流れの例を示すフローチャートである。
【図１２】実施形態１の対象デバイスとオプション装着状態を管理するテーブルの一例を示す図である。
【図１３】実施形態１のオプション装着前の対象デバイスとオプション装着状態を管理するテーブルの例を示す図である。
【図１４】実施形態１のオプション装着後の対象デバイスとオプション装着状態を管理するテーブルの例を示す図である。
【図１５】実施形態１の機能制限無しでデバイスを置き換える場合の確認メッセージの例を示す図である。
【図１６】実施形態１の機能制限有りでデバイスを置き換える場合の確認メッセージの例を示す図である。
【図１７】実施形態１で構成が変更された仮想デバイス構成管理テーブルの例を示す図である。
【図１８】実施形態１で重複構成が削除された仮想デバイス構成管理テーブルの例を示す図である。
【図１９】実施形態２のオプションリソースと対応可能な印刷属性の対応表の例を示す図である。
【図２０】実施形態２の仮想デバイス構成管理テーブルの例を示す図である。
【図２１】実施形態２の仮想デバイス印刷属性対応テーブルの例を示す図である。
【図２２】実施形態２における処理の流れの例を示すフローチャートである。
【図２３】実施形態２のリソースデータダウンロード前のデバイスとダウンロードリソース情報の対応を管理するテーブルの例を示す図である。
【図２４】実施形態２のリソースデータダウンロード後のデバイスとダウンロードリソース情報の対応を管理するテーブルの例を示す図である。
【図２５】実施形態２の仮想デバイスの構成を変更する際の確認メッセージの例を示す図である。
【図２６】実施形態２の仮想デバイス構成情報を変更した場合の例を示す図である。
【図２７】実施形態２の重複した仮想デバイス構成情報を削除した場合の例を示す図である。
【図１】
0004961317.tif 000002
【図２】
0004961317.tif 000003
【図３Ａ】
0004961317.tif 000004
【図３Ｂ】
0004961317.tif 000005
【図４】
0004961317.tif 000006
【図５】
0004961317.tif 000007
【図６】
0004961317.tif 000008
【図７】
0004961317.tif 000009
【図８】
0004961317.tif 000010
【図９】
0004961317.tif 000011
【図１０】
0004961317.tif 000012
【図１１】
0004961317.tif 000013
【図１２】
0004961317.tif 000014
【図１３】
0004961317.tif 000015
【図１４】
0004961317.tif 000016
【図１５】
0004961317.tif 000017
【図１６】
0004961317.tif 000018
【図１７】
0004961317.tif 000019
【図１８】
0004961317.tif 000020
【図１９】
0004961317.tif 000021
【図２０】
0004961317.tif 000022
【図２１】
0004961317.tif 000023
【図２２】
0004961317.tif 000024
【図２３】
0004961317.tif 000025
【図２４】
0004961317.tif 000026
【図２５】
0004961317.tif 000027
【図２６】
0004961317.tif 000028
【図２７】
0004961317.tif 000029