(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
クライアントの第１の設定値を保持する保持手段と、
更新要求を受けたことに応じて、前記保持手段に保持されている前記第１の設定値を、前記第１の設定値の設定可能範囲を示す情報を含む第１の仕様情報と前記更新要求で取得された設定値とに基づいて更新する更新手段と、を有し、
前記更新手段は、前記第１の仕様情報が前記情報処理装置に保持されている場合は、保持されている前記第１の仕様情報に基づいて前記第１の設定値を更新し、前記第１の仕様情報が前記情報処理装置に保持されていない場合において、クライアントとして動作するために用いられる第２の設定値と前記第２の設定値の設定可能範囲を示す情報を含む第２の仕様情報とを管理するクライアントアプリケーションを前記情報処理装置が有しているときは、前記クライアントアプリケーションから、前記第２の仕様情報を前記第１の仕様情報として取得することを特徴とする情報処理装置。
【請求項２】
前記更新手段は、前記第１の仕様情報が前記情報処理装置に保持されていない場合において、前記クライアントアプリケーションを前記情報処理装置が有していないときは、前記第１の仕様情報を外部装置から取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記更新手段は、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲内である場合は、前記第１の設定値を前記取得された設定値に更新することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記更新手段は、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲を外れた場合は、前記第１の設定値を更新しないことを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記更新手段は、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲を外れた場合は、前記第１の設定値を、前記第１の仕様情報で示される設定可能範囲内で、前記取得された設定値に最も近い値に更新することを特徴とする請求項１または２に記載の情報処理装置。
【請求項６】
前記更新手段は、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲を外れた場合は、前記第１の設定値を、予め定められた固定値に更新することを特徴とする請求項１または２に記載の情報処理装置。
【請求項７】
クライアントの第１の設定値を保持する保持手段を有する情報処理装置の制御方法であって、
更新要求を受けたことに応じて、前記保持手段に保持されている前記第１の設定値を、前記第１の設定値の設定可能範囲を示す情報を含む第１の仕様情報と前記更新要求で取得された設定値とに基づいて更新する更新ステップを有し、
前記更新ステップは、前記第１の仕様情報が前記情報処理装置に保持されている場合は、保持されている前記第１の仕様情報に基づいて前記第１の設定値を更新し、前記第１の仕様情報が前記情報処理装置に保持されていない場合において、クライアントとして動作するために用いられる第２の設定値と前記第２の設定値の設定可能範囲を示す情報を含む第２の仕様情報とを管理するクライアントアプリケーションを前記情報処理装置が有しているときは、前記クライアントアプリケーションから、前記第２の仕様情報を前記第１の仕様情報として取得することを特徴とする情報処理装置の制御方法。
【請求項８】
前記更新ステップは、前記第１の仕様情報が前記情報処理装置に保持されていない場合において、前記クライアントアプリケーションを前記情報処理装置が有していないときは、前記第１の仕様情報を外部装置から取得することを特徴とする請求項７に記載の情報処理装置の制御方法。
【請求項９】
前記更新ステップは、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲内である場合は、前記第１の設定値を前記取得された設定値に更新することを特徴とする請求項７または８に記載の情報処理装置の制御方法。
【請求項１０】
前記更新ステップは、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲を外れた場合は、前記第１の設定値を更新しないことを特徴とする請求項７または８に記載の情報処理装置の制御方法。
【請求項１１】
前記更新ステップは、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲を外れた場合は、前記第１の設定値を、前記第１の仕様情報で示される設定可能範囲内で、前記取得された設定値に最も近い値に更新することを特徴とする請求項７または８に記載の情報処理装置の制御方法。
【請求項１２】
前記更新ステップは、前記更新要求で取得された設定値が、前記第１の仕様情報で示される設定可能範囲を外れた場合は、前記第１の設定値を、予め定められた固定値に更新することを特徴とする請求項７または８に記載の情報処理装置の制御方法。
【請求項１３】
請求項７〜１２のいずれか１項に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントの設定値を管理する情報処理装置等に関する。
【背景技術】
【０００２】
近年、複合機等のクライアントの設定値を、ネットワーク接続されたサーバ等の情報処理装置に保存して一元管理する設定値管理システムが開発されている。例えば、特許文献１には、サーバ上の設定値の値を変更すると、変更後の値が複合機に通知され、複合機内の設定値の値も変更されるシステムが開示されている。特許文献１に記載のシステムでは、複合機内の設定値の値を変更すると、サーバ上の設定値の値も変更される。特許文献１に記載のサーバは、設定値ごとの値情報を保持している設定値データベースに加えて、設定値ごとの初期値、値域、適応機種／バージョン、設定値の表示条件等の仕様情報を保持している。特許文献１に記載のシステムでは、設定値をサーバに導入するために用いる仕様情報（設定値の値域や初期値等）は、クライアントとの通信により、クライアントからサーバが取得する。
【０００３】
特許文献２には、設定値の管理システムにおいて、複合機等の装置そのものをサーバとして利用する構成が開示されている。また従来、ある複合機に設定されている設定値を他の複合機に導入するための技術が知られている。
【０００４】
特許文献３には、ある複合機から他の複合機に設定値を入力する際に、当該他の複合機の機器識別情報に応じて、当該他の複合機に入力された設定値を反映させるレベルを決定することが開示されている。機器識別情報には、機種管理番号、機体管理番号、ファームウェアバージョン、仕向け情報、ユーザ編集情報、アクセサリ接続情報、及び、ライセンス情報などの情報が含まれる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−１２１９８９号公報
【特許文献２】特開２０１０−２８３６１８号公報
【特許文献３】特開２０１２−２２６６６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１や特許文献２に示される設定値の管理システムにおけるサーバに設定値を入力する際に、特許文献３に示される方法を用いて、他の装置の設定値をサーバに導入（インポート）することが考えられる。しかしながら、サーバにクライアントが１台も接続されていない場合、従来のシステムではサーバに仕様情報が登録されていない。このようなサーバに、他の装置の設定値をインポートしようとしても、設定値データを仕様情報と突き合わせることができない。従って、他の装置の設定値をサーバにインポートできないという問題がある。
【０００７】
本発明の目的は、クライアントと接続されていない場合であっても、取得した設定値と自装置に記憶されている仕様情報とに基づいて、クライアントの設定値を適切に更新することである。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明は、情報処理装置であって、クライアントの第１の設定値を保持する保持手段と、更新要求を受けたことに応じて、前記保持手段に保持されている前記第１の設定値を、前記第１の設定値の設定可能範囲を示す情報を含む第１の仕様情報と前記更新要求で取得された設定値とに基づいて更新する更新手段と、を有し、前記更新手段は、前記第１の仕様情報が前記情報処理装置に保持されている場合は、保持されている前記第１の仕様情報に基づいて前記第１の設定値を更新し、前記第１の仕様情報が前記情報処理装置に保持されていない場合において、クライアントとして動作するために用いられる第２の設定値と前記第２の設定値の設定可能範囲を示す情報を含む第２の仕様情報とを管理するクライアントアプリケーションを前記情報処理装置が有しているときは、前記クライアントアプリケーションから、前記第２の仕様情報を前記第１の仕様情報として取得することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、クライアントと接続されていない場合であっても、取得した設定値と自装置に記憶されている仕様情報とに基づいて、クライアントの設定値を適切に更新することができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置を含む情報処理システムの構成を示す図である。
【図２】複合機のハードウェア構成を示すブロック図である。
【図３】サーバのハードウェア構成を示すブロック図である。
【図４】サーバが一体型構成の場合の情報処理システムの構成を示す図である。
【図５】管理データの構成を示すブロック図である。
【図６】サーバが別体型構成である場合のソフトウェア構成モジュールを示すブロック図である。
【図７】サーバが一体型構成である場合のソフトウェア構成モジュールを示すブロック図である。
【図８】設定値仕様情報の取得処理のフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態を図面を参照して説明する。
【００１２】
図１は、本発明の一実施の形態に係る情報処理装置を含む情報処理システムの構成を示す図である。本実施の形態では、クライアントとして複合機１１０（１１０ａ、１１０ｂ）を例示する。サーバとしてパーソナルコンピュータ（ＰＣ）等のサーバ１２０を例示する。図１に示す例では、サーバ１２０は設定値管理サーバである。複合機１１０の数は問わない。以降、複数の複合機１１０の各々を区別しない場合は、単に複合機１１０と記す。ネットワーク１００には、複合機１１０、サーバ１２０、操作端末１３０、設定値仕様管理サーバ１４０が接続されている。
【００１３】
ところで、本実施の形態では、サーバ１２０の構成として、「別体型構成」と「一体型構成」の双方を考える。まず、別体型構成は、サーバ１２０が複合機１１０とは別体に構成され、クライアントとしての機能を有さず専ら設定値管理サーバとして機能する構成である。一体型構成は、サーバ１２０が実質的に複合機１１０内に構築され、クライアントとしての機能を有すると同時に設定値管理サーバとしての機能も有する構成である。一体型構成の場合は、サーバ１２０はいわゆるデバイスサーバである。一体型構成の場合のサーバ１２０は、外観上は複合機１１０と変わりないので、ユーザからは複合機と呼称されることがあるが、呼称は問わない。別体型構成については、主に図１〜図３、図６で説明する。一体型構成については、主に図４、図７で説明する。
【００１４】
サーバ１２０は、複合機１１０の設定値を管理しており、サーバ１２０上で保持する設定値を各複合機１１０に反映させる機能を持つ。複合機１１０は、サーバ１２０に対するクライアントとして機能する。サーバ１２０及び複合機１１０は、ウェブアプリケーションを搭載しており、操作端末１３０からウェブブラウザ等でサーバ１２０及び複合機１１０にアクセスすることができる。操作端末１３０のユーザは、サーバ１２０や複合機１１０で管理されるデータをファイルとして出力したり、他の設定値管理サーバや複合機から出力したファイルを入力したりするほか、サーバ１２０が持つデータを編集することができる。設定値仕様管理サーバ１４０は、ネットワーク１００を通してサーバ１２０へ設定値仕様情報を送信する機能を持つ。サーバ１２０、複合機１１０、設定値仕様管理サーバ１４０の構成の詳細は後述する。
【００１５】
複合機１１０は複数種類の機能（コピー、ＦＡＸ等）を実現する画像形成装置等の機器であり、内部にそれらの機能の実行時に利用する設定値を記憶している。複合機１１０は、設定値に変更があった場合は、サーバ１２０にネットワーク１００を介して変更情報を通知する。また、サーバ１２０上で管理データ４０１（図６で詳述する）の変更情報を受信した際には、複合機１１０は自身の設定値を変更する。なお、設定値によっては、複合機１１０ａと複合機１１０ｂとの間のように、複数の複合機間で値の同期が行われるものも存在する。それらの設定値に関しては、サーバ１２０上の管理データ４０１に変更があった場合は、各々の複合機１１０に設定値の変更情報が通知される。また、いずれかの複合機１１０の設定値に変更があった場合は、まず、サーバ１２０に変更情報が通知され、その後、サーバ１２０経由で他の複合機１１０に変更情報が通知される。
【００１６】
図１に示す構成では、サーバ１２０は、設定値管理サービス５００を有している。設定値管理サービス５００は管理データ４０１を保持し、管理している。管理データ４０１には、設定値仕様管理ＤＢ（データベース）４１０、共通設定値管理ＤＢ４１２及び個別設定値管理ＤＢ４１４が含まれる（図５で後述）。設定値管理サービス５００は、クライアントの設定値（ＤＢ４１２、ＤＢ４１４）と第１の仕様情報（ＤＢ４１０）とを管理するためのサーバアプリケーションである。図１に示す構成ではまた、各複合機１１０は、複合機ファームウェア５１０を有している。複合機ファームウェア５１０は、クライアントとして動作するために用いられる設定値（設定値ＤＢ５１７）と第２の仕様情報（設定値仕様情報５１５）とを管理するためのクライアントアプリケーションである。外部装置である設定値仕様管理サーバ１４０は、第３の仕様情報（設定値仕様マスターＤＢ５２０）を保持する。
【００１７】
別体型構成（図１）では、サーバ１２０は、複合機ファームウェア５１０を有さないが、一体型構成（図４）では、サーバ１２０は、設定値管理サービス５００だけでなく複合機ファームウェア５１０も有する。
【００１８】
まず、図２、図３で、別体型構成（図１）における複合機１１０、サーバ１２０の構成を説明する。図２は、複合機１１０のハードウェア構成を示すブロック図である。複合機１１０は、コントローラユニット２００、操作部２２０、スキャナ２３０及びプリンタ２４０を含む。コントローラユニット２００には、タッチパネルを有する操作部２２０が接続されるとともに、画像入力デバイスであるスキャナ２３０や画像出力デバイスであるプリンタ２４０が接続される。コントローラユニット２００は、ＣＰＵ２０２を有する。ＣＰＵ２０２は、ＲＯＭ２０６に格納されているブートプログラムによりＯＳ（ＯｐｅｒａｔｉｎｇＳｙｓｔｅｍ）を立ち上げる。ＯＳはＲＯＭ２０６に格納されている。コントローラユニット２００は、このＯＳ上で、ＨＤＤ（Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）２０５に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。ＣＰＵ２０２の作業領域としてはＲＡＭ２０３が用いられる。ＨＤＤ２０５は、上記アプリケーションプログラムや各種データを格納する。
【００１９】
ＣＰＵ２０２には、システムバス２１０を介して、ＲＯＭ２０６、ＲＡＭ２０３のほか、操作部Ｉ／Ｆ２０１、デバイスＩ／Ｆ２０４、ネットワークＩ／Ｆ２０７、画像処理部２０８が接続される。操作部Ｉ／Ｆ２０１は、操作部２２０とのインタフェースである。操作部Ｉ／Ｆ２０１は、操作部２２０に表示するための各種データ等の情報を送出したり、ユーザにより入力された情報をＣＰＵ２０２に送出したりする。デバイスＩ／Ｆ２０４は、スキャナ２３０及びプリンタ２４０を接続し、データや制御信号の入出力を行う。ネットワークＩ／Ｆ２０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各装置との間で情報の入出力を行う。画像処理部２０８は、スキャナ２３０からの入力画像処理やプリンタ２４０への出力画像処理のほか、画像回転、画像圧縮、解像度変換、色空間変換、階調変換などの処理を行う。
【００２０】
図３は、サーバ１２０の構成を示すブロック図である。サーバ１２０は、コントローラユニット３００、操作部３２０を含んでいる。コントローラユニット３００は、各ユニット間を接続するためのシステムバス３１０を有する。ＣＰＵ３０２に対し、システムバス３１０を介して、操作部Ｉ／Ｆ３０１、ＲＡＭ３０３、ＨＤＤ３０５、ＲＯＭ３０６及びネットワークＩ／Ｆ３０７が接続される。ＣＰＵ３０２は、ＲＯＭ３０６に格納されているブートプログラムによりＯＳを立ち上げる。ＯＳはＲＯＭ３０６に格納されている。ＣＰＵ３０２は、このＯＳ上でＨＤＤ３０５に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。ＣＰＵ３０２の作業領域としてはＲＡＭ３０３が用いられる。ＨＤＤ３０５は、上記アプリケーションプログラムと複合機１１０の設定値等を格納する。操作部Ｉ／Ｆ３０１は、マウス、キーボード等から成る操作部３２０とのインタフェースであり、操作部３２０によってユーザにより入力された情報をＣＰＵ３０２に送出する。また、ネットワークＩ／Ｆ３０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各装置との間で情報の入出力を行う。
【００２１】
図４は、情報処理装置であるサーバ１２０が一体型構成の場合の情報処理システムの構成を示す図である。図４において、図１に示すものと同じ構成要素には同じ符号を付してある。このシステムでは、サーバ１２０の機能が１つの複合機１１０上に配置されていて、サーバ１２０をクライアントの１つと見なせば、システムにおいて、単体のハード構成としての設定値管理サーバは存在しない。一方、サーバ１２０を、クライアント機能を併有する設定値管理サーバ、すなわち、デバイスサーバと見なすこともできる。サーバ１２０が設定値仕様情報を取得する処理に関すれば、図４のシステム構成においては、設定値仕様管理サーバ１４０は存在しなくてもよい。
【００２２】
一体型構成のサーバ１２０は、複合機１１０の機能として、コントローラユニット２００（図２）及び操作部２２０を有しているため、コントローラユニット３００（図３）及び操作部３２０は必要ない。従って、一体型構成のサーバ１２０においては、操作部Ｉ／Ｆ３０１、ＣＰＵ３０２、ＲＡＭ３０３、ＨＤＤ３０５の代わりに、それぞれ、操作部Ｉ／Ｆ２０１、ＣＰＵ２０２、ＲＡＭ２０３、ＨＤＤ２０５が用いられることとする。さらに、ＲＯＭ３０６、ネットワークＩ／Ｆ３０７、操作部３２０の代わりに、それぞれ、ＲＯＭ２０６、ネットワークＩ／Ｆ２０７、操作部２２０が用いられることとする。
【００２３】
図５は、サーバ１２０により管理される管理データ４０１の構成を示すブロック図である。管理データ４０１は、設定値仕様管理ＤＢ４１０、設定値編集用表示リソースＤＢ４１１、共通設定値管理ＤＢ４１２、登録デバイス管理ＤＢ４１３、個別設定値管理ＤＢ４１４及びデバイス構成情報管理ＤＢ４１５を含む。ＤＢ４１０〜ＤＢ４１２、ＤＢ４１４、ＤＢ４１５の具体例は表を用いて後述する。
【００２４】
概略を述べると、設定値仕様管理ＤＢ４１０は、インポートデータを受け付けて管理データ４０１に反映させる際に参照されるデータベースである。設定値仕様管理ＤＢ４１０は、同期開始後には管理データ４０１に保持されているが、同期開始前等のように、管理データ４０１に保持されていない状態もあり得る。共通設定値管理ＤＢ４１２は、サーバ１２０によって設定値が管理される複合機１１０の全てで共通に使用される設定値を管理するデータベースであり、複数のデバイス（クライアント）で共有する設定値を保持する。登録デバイス管理ＤＢ４１３は、サーバ１２０で設定値を管理する複合機１１０の個体の個体識別子を保持し、登録されるデバイスを管理するためのデータベースである。個別設定値管理ＤＢ４１４は、複合機１１０の各々で値が異なる設定値を管理するデータベースであり、個別のデバイスに採用されるデータを保持する。デバイス構成情報管理ＤＢ４１５は、複合機１１０の個体のデバイス構成情報を格納し管理するためのデータベースである。設定値編集用表示リソースＤＢ４１１は、対象のデータの表示名をユーザに提示するための情報を保持するデータベースである。
【００２５】
サーバ１２０は、その機能の１つとして、複合機１１０の設定値をリアルタイムに同期することができる。サーバ１２０の持つ管理データ４０１に変更があった場合は、各複合機１１０にネットワーク１００を介して変更情報を通知する。また、複合機１１０から設定値の変更情報を受信した際には、サーバ１２０自身の管理データ４０１の値を変更する。
【００２６】
図６は、サーバ１２０が別体型構成である場合のサーバ１２０、複合機１１０、サーバ１２０、設定値仕様管理サーバ１４０及び操作端末１３０におけるソフトウェア構成モジュールを示すブロック図である。図６では複合機１１０は代表して１つだけ示してある。
【００２７】
設定値管理サービス５００は、サーバ１２０のＣＰＵ３０２によりＲＯＭ３０６から呼び出されて実行されることにより実現される。設定値管理サービス５００には、管理データ４０１を編集するサーバＤＢ管理モジュール５０１が含まれ、全てのデータはこのサーバＤＢ管理モジュール５０１を介して編集される。同期制御サーバモジュール５０２は、ネットワーク１００を利用してクライアントからのデータ取得要求や変更要求を受け、サーバＤＢ管理モジュール５０１に対して読み書きの指示を行う。設定値管理サービス５００にはさらに、入出力モジュール５０３、仕様ＤＢ取得モジュール５０４が含まれる。
【００２８】
一方、複合機１１０が備える各機能部は、複合機１１０のＣＰＵ２０２がＲＯＭ２０６に格納された複合機ファームウェア５１０を読み出して実行することにより実現される。複合機ファームウェア５１０には、設定値ＤＢ５１７が配置され、設定値管理モジュール５１１を介して設定値ＤＢ５１７の読み書きが行われる。図６では割愛しているが、複合機１１０上で動作する全てのアプリケーションプログラムはこの設定値管理モジュール５１１を利用して設定値ＤＢ５１７のデータにアクセスする。
【００２９】
同期制御クライアントモジュール５１３は、ネットワーク１００を介して設定値管理サービス５００の同期制御サーバモジュール５０２と通信する。同期制御クライアントモジュール５１３は主に、定期的なポーリングによりサーバ１２０側のＤＢ変更を複合機１１０側へ取り込む動作、及び、複合機１１０側の設定値ＤＢ５１７の更新をサーバ１２０側のＤＢに反映させるための動作を行う。設定値ＤＢ５１７の変更を管理データ４０１に反映させる一連の動作、及び、管理データ４０１の変更を検知してそれを設定値ＤＢ５１７に反映させる一連の動作が、本実施の形態における同期制御と位置付けられる。
【００３０】
複合機ファームウェア５１０にはさらに、入出力モジュール５１４、設定値仕様情報５１５及び構成情報管理モジュール５１６が含まれる。構成情報管理モジュール５１６は、複合機ファームウェア５１０の動作する複合機１１０に接続されたフィニッシャやサイドペーパーデッキ等のアクセサリ（いずれも図示せず）の情報を読み取り、その情報を設定値管理モジュール５１１へ通知する。すると、設定値管理モジュール５１１は、その情報を設定値ＤＢ５１７に保存する。
【００３１】
操作端末１３０は操作端末機能５３０を有する。操作端末機能５３０は、操作端末１３０の不図示のＣＰＵによりＲＯＭから呼び出されて実行されることにより実現される。操作端末１３０上で実行される操作端末機能５３０には、サーバアクセスモジュール５３１及び複合機アクセスモジュール５３２が含まれる。サーバアクセスモジュール５３１及び複合機アクセスモジュール５３２は、例えば、ウェブブラウザ等の一般的なネットワークサーバへのアクセスツールである。サーバアクセスモジュール５３１は、ユーザからの操作を受けて設定値管理サービス５００にアクセスし、サーバ１２０の入出力モジュール５０３の機能性を利用してユーザの指示によるデータの入出力オペレーションを実施する。複合機アクセスモジュール５３２は、ユーザからの操作を受けて複合機ファームウェア５１０にアクセスし、複合機１１０の入出力モジュール５１４の機能性を利用してユーザの指示によるデータの入出力オペレーションを実施する。
【００３２】
サーバ１２０の入出力モジュール５０３は、操作端末１３０から送付されたインポートデータを元に、サーバＤＢ管理モジュール５０１を介して、管理データ４０１のうち共通設定値管理ＤＢ４１２、個別設定値管理ＤＢ４１４等を更新する。入出力モジュール５０３はまた、サーバＤＢ管理モジュール５０１を介して、管理データ４０１のうち共通設定値管理ＤＢ４１２、個別設定値管理ＤＢ４１４等から取得したデータを元にエクスポートデータを生成する。そして入出力モジュール５０３は、エクスポートデータを操作端末機能５３０へ送信する。入出力モジュール５０３はさらに、サーバＤＢ管理モジュール５０１を介して管理データ４０１のうち共通設定値管理ＤＢ４１２、個別設定値管理ＤＢ４１４等を更新する。
【００３３】
複合機１１０の入出力モジュール５１４は、操作端末１３０から送付されたインポートデータを元に設定値ＤＢ５１７を更新する。入出力モジュール５１４はまた、設定値ＤＢ５１７から取得したデータを元にエクスポートデータを生成し、ネットワーク１００を通じて外部へ送信する。その送信先は、操作端末機能５３０でもあってもよいし、ファイルサーバであってもよい。
【００３４】
設定値仕様管理サーバ１４０は、設定値仕様管理サービス１４１を有する。設定値仕様管理サービス１４１は、設定値仕様管理サーバ１４０の不図示のＣＰＵによりＲＯＭから呼び出されて実行されることにより実現される。設定値仕様管理サービス１４１には、設定値仕様マスターＤＢ５２０、表示リソースマスターＤＢ５２１及び仕様ＤＢ配信モジュール５２２が含まれる。サーバ１２０が別体型構成である場合、サーバ１２０は、自身が設定値仕様情報を保持していない場合があり、その場合、外部装置から設定値仕様情報を取得する必要がある。仕様ＤＢ取得モジュール５０４は、設定値仕様情報を外部装置である設定値仕様管理サーバ１４０から取得する場合、仕様ＤＢ配信モジュール５２２に設定値仕様情報の取得要求を送信する。すると、仕様ＤＢ配信モジュール５２２は、設定値仕様マスターＤＢ５２０と表示リソースマスターＤＢ５２１とから必要な情報を取得し、それを設定値仕様情報として仕様ＤＢ取得モジュール５０４へ送信する。サーバＤＢ管理モジュール５０１は、仕様ＤＢ取得モジュール５０４が仕様ＤＢ配信モジュール５２２から受けた設定値仕様情報を、設定値仕様管理ＤＢ４１０に登録する。
【００３５】
図７は、サーバ１２０が一体型構成（図４）である場合のサーバ１２０、複合機１１０、サーバ１２０及び操作端末１３０におけるソフトウェア構成モジュールを示すブロック図である。図７では、設定値仕様管理サーバ１４０の図示は省略されている。図７では、図５に示すものと同じ構成要素に同じ符号を付し、構成や動作が図５に示すものと共通する構成要素については説明を省略する。
【００３６】
サーバ１２０は、設定値管理サービス５００及び複合機ファームウェア５１０の両方を保持する形態（デバイスサーバ）となっている。具体的には、１つの複合機１１０（例えば、複合機１１０ａ）に設定値管理サービス５００が配置されたものがサーバ１２０となっている。他の複合機１１０（例えば、複合機１１０ｂ）は、単独でネットワーク１００を通じてサーバ１２０に接続される。図７に示す構成では、サーバ１２０のハードウェア構成は図３に示した構成ではなく、図２に示した構成となる。設定値仕様情報５１５はＨＤＤ２０５に保存される。また、設定値管理サービス５００及び複合機ファームウェア５１０は、ＣＰＵ２０２がＲＯＭ２０６から読み出して実行することにより実現される。
【００３７】
図７に示すように、サーバ１２０がデバイスサーバである場合、同期制御クライアントモジュール５１３は、設定値管理サービス５００との初期接続時に、設定値仕様情報５１５をネットワーク１００を通して設定値管理サービス５００へ送信する。設定値管理サービス５００は、受け取った設定値仕様情報５１５のデータを設定値仕様情報として管理データ４０１の設定値仕様管理ＤＢ４１０に登録する。管理データ４０１に設定値仕様情報が登録されていない場合は、仕様ＤＢ取得モジュール５０４は、自身の設定値仕様情報５１５から設定値仕様情報を取得する。そしてサーバＤＢ管理モジュール５０１は、仕様ＤＢ取得モジュール５０４が取得した設定値仕様情報を設定値仕様管理ＤＢ４１０に登録する。
【００３８】
なお、一体型構成のサーバ１２０が１つのクライアントとして機能する場合の動作は、図６で説明した複合機１１０の動作と同様である。また、一体型構成のサーバ１２０が設定値管理サーバとして機能する場合における、サーバ１２０と他の複合機１１０との間の動作は、図６で説明したサーバ１２０と複合機１１０との間の動作と同様である。
【００３９】
次に、各データストレージの内部イメージについて表を用いて説明する。表１は、管理データ４０１内の設定値仕様管理ＤＢ４１０のデータ内容を示している。
【００４０】
【表１】
0006652297.tif 000002
設定値仕様管理ＤＢ４１０は、サーバＤＢ管理モジュール５０１により管理される設定値仕様情報である。設定値仕様管理ＤＢ４１０には、キー識別子、キー表示リソースＩＤ、データ型、初期値、値域、値表示リソースＩＤ及びアクティベート条件が格納されている。キー識別子は、管理される設定値名（キー）を特定するための情報である。データ型はデータの形式である。値域は、取り得る値の範囲を示す情報であり、通常、最小値から最大値までの範囲を有する。例えば、設定値名「濃度補正」に対して、データ型として「ｕＲａｎｇｅ」が保持され、値域として最小値０及び最大値４が保持される。あるいは、設定値名「ジョブ履歴の表示」に対して、データ型として「Ｂｏｏｌ」が保持され、値域として最小値０及び最大値１が保持される。設定値の設定可能範囲を示す情報には、データ型及び値域が含まれる。従って、設定可能範囲は数値に限定されない。また、設定可能範囲は実質的に範囲のない１つの値である場合もある。
【００４１】
値表示リソースＩＤは、設定値名を表示するのに必要な表示リソース及び、選択肢を表示する場合のリソースを特定する情報である。アクティベート条件には、値表示リソースＩＤで特定される項目をデバイス上でアクティベートさせるための表示条件が格納されている。なお、初期値とは別個に、固定値の情報を設定値仕様管理ＤＢ４１０に設けてもよい。
【００４２】
設定値仕様管理ＤＢ４１０は、ユーザが操作端末１３０のサーバアクセスモジュール５３１によってサーバ１２０の設定値の更新を要求（インポート要求）したとき、入出力モジュール５０３が送信されたインポートデータを反映させる際に参照される。更新要求の値域やデータ型の指定が設定可能範囲を外れた場合には設定値は更新されず、指定された値が範囲外の値であることがユーザに通知される。
【００４３】
なお、変更要求に係る値域やデータ型の指定が設定可能範囲を外れた場合であっても、丸め処理等の所定のルールで設定値の更新が実施されるようにしてもよい。例えば、設定可能範囲内で、変更要求で取得された設定値に最も近い値、または予め定められた固定値に更新するようにしてもよい。例えば、「濃度補正」の設定可能な値域（０〜４）に対して、変更要求で「５」が指定された場合に、濃度補正の値を「４」に更新してもよい。予め定められた固定値として設定値仕様管理ＤＢ４１０内の初期値を採用してもよい。複合機１１０の機種やファームウェアバージョンによってキー識別子の数、値域または表示文言情報等が異なることが一般的であるため、設定値仕様管理ＤＢ４１０は、機種やファームウェアバージョンにより異なった構成になり得る。
【００４４】
ところで、設定値仕様管理サーバ１４０内の設定値仕様マスターＤＢ５２０には、市場に販売済みの全ての機種及びファームウェアバージョン毎に関連付けられた情報であって設定値仕様管理ＤＢ４１０と同様のものが一元的に管理されている。設定値仕様マスターＤＢ５２０には、新機種や新ファームウェアバージョンがリリースされるたびに新規に登録される。
【００４５】
【表２】
0006652297.tif 000003
表２は、設定値編集用表示リソースＤＢ４１１に格納されるデータを表している。ＤＢ４１１には、ＤＢ４１０内に格納されていたリソースＩＤに紐づく実際の表示文言情報が言語ごとに格納されている。ここでは表示文言情報の例として日本語と英語のみを記載しているが、保持される言語は問わず、言語数も問わない。表示文言情報は、ユーザがサーバアクセスモジュール５３１によってサーバ１２０の設定値を更新する際や、インポートまたはエクスポートする際に、対象のデータの表示名をユーザに提示するために使用される。
【００４６】
ところで、設定値仕様管理サーバ１４０内の表示リソースマスターＤＢ５２１には、市場に販売済みの全ての機種及びファームウェアバージョンが具備するＩＤ情報が登録されている。新しい文言を含んだファームウェアバージョンが登場する場合や新しい言語の文言情報が準備された場合には表示リソースマスターＤＢ５２１は更新される。
【００４７】
【表３】
0006652297.tif 000004
表３は、共通設定値管理ＤＢ４１２に格納されるデータを表している。共通設定値管理ＤＢ４１２には、キー識別子と、キー識別子に対応する値とが格納される。このキー識別子は、設定値仕様管理ＤＢ４１０のキー識別子と同一の体系をもつ識別子である。共通設定値管理ＤＢ４１２には、サーバ１２０に管理される複数の複合機１１０の全てで共通に使用される設定値が格納される。
【００４８】
【表４】
0006652297.tif 000005
表４は、個別設定値管理ＤＢ４１４に格納されるデータを表している。個別設定値管理ＤＢ４１４は複合機１１０の各々に対応して存在する。個別設定値管理ＤＢ４１４には、キー識別子と、キー識別子に対応する値とが格納される。このキー識別子は、設定値仕様管理ＤＢ４１０のキー識別子と同一の体系をもつ識別子である。個別設定値管理ＤＢ４１４には、サーバ１２０によって管理される複数の複合機１１０の各々で値が異なり得る設定値が格納される。
【００４９】
【表５】
0006652297.tif 000006
表５は、デバイス構成情報管理ＤＢ４１５で管理される複合機１１０の個体毎のデバイス構成情報の内容を表している。デバイス構成情報管理ＤＢ４１５はデバイス構成情報を複数格納・管理するデータベースである。デバイス構成情報は、属性情報として、複合機１１０の個体を識別する個体識別子、機種名、ファームウェアのバージョン、利用可能な機能を表すライセンス情報などを含む。なお、機種名、ファームウェアのバージョン、ライセンス等は、設定値仕様管理ＤＢ４１０に格納されているアクティベート条件と同一の体系を持つ。
【００５０】
登録デバイス管理ＤＢ４１３には、サーバ１２０で管理される複合機１１０の個体の個体識別子を格納される。サーバ１２０は、管理データ４０１の各データベースを利用して、管理対象の複合機１１０の各々で、異なる設定値、管理対象の複合機１１０の全てで共通の設定値、及び、各設定値そのもののメタデータを一括管理することが可能である。
【００５１】
【表６】
0006652297.tif 000007
表６は、複合機ファームウェア５１０内の設定値ＤＢ５１７の構成の一例を表している。設定値ＤＢ５１７は、複合機１１０で使用される設定値が格納されるデータベースであり、ＨＤＤ２０５に格納される。設定値ＤＢ５１７に格納される設定値には、設定値を識別するためのキー識別子、設定値の値（現在値）等の要素が含まれる。これらの要素は管理データ４０１で管理されているものと同一の体系で管理されるものである。サーバ１２０もしくは複合機１１０において設定値が変更された場合には、設定値ＤＢ５１７のデータのうち少なくともキー識別子及び値を通信することにより設定値が同期される。適切に同期された後には、共通設定値管理ＤＢ４１２（表３）及び個別設定値管理ＤＢ４１４（表４）に格納された値と設定値ＤＢ５１７の値とは一致する。
【００５２】
図８は、設定値仕様情報の取得処理のフローチャートである。この処理は、サーバ機能（設定値管理サービス５００）が配置された環境に応じてサーバＤＢ管理モジュール５０１が適切な取得先から設定値仕様情報を取得するための処理である。この処理は、ＣＰＵ３０２（一体型構成の場合はＣＰＵ２０２）がＲＯＭ３０６（一体型構成の場合はＲＯＭ２０６）に格納されたプログラムを実行することで実現される。この処理の開始にあたって、設定値管理サービス５００は、サーバ１２０が別体型構成なのか一体型構成なのかを認識していない場合がある。設定値管理サービス５００または設定値管理サービス５００内のモジュールを処理の主体として説明する。
【００５３】
図８の処理は、初期接続のタイミングで開始される。このほか、図８の処理は、複合機ファームウェア５１０（一体型構成の場合はサーバ１２０内の複合機ファームウェア５１０も含む）からネットワーク１００を介して設定値管理サービス５００に設定値の変更情報が通知されたタイミングで開始される。あるいは、図８の処理は、ネットワーク１００を通じて、操作端末１３０の操作端末機能５３０から入出力モジュール５０３を介して設定値管理サービス５００へデータのインポート要求が行われたタイミングで開始される。
【００５４】
まずステップＳ８０１では、サーバＤＢ管理モジュール５０１（以下、モジュール５０１と略記することもある）は、設定値仕様情報を管理データ４０１の設定値仕様管理ＤＢ４１０から取得できるか否かを判別する。なお、管理データ４０１における、設定値仕様情報を取得する先のデータベースとして設定値仕様管理ＤＢ４１０を例示するが、取得する先のデータベースは設定値編集用表示リソースＤＢ４１１であってもよい。サーバ１２０が複合機１１０とデータの同期を既に開始している場合には、複合機１１０の設定値仕様情報５１５がサーバ１２０の設定値仕様管理ＤＢ４１０に登録されているため、設定値仕様情報を取得できる。この場合、処理はステップＳ８０７へ移行する。
【００５５】
一方、設定値仕様情報を設定値仕様管理ＤＢ４１０から取得できない場合は、モジュール５０１は、処理をステップＳ８０２に進める。例えば、操作端末１３０から入出力モジュール５０３を介してデータのインポートが行われた場合、設定値仕様情報を取得し、入力されたデータのチェック（突き合わせ）を行う必要がある。しかし、サーバ１２０が複合機１１０とデータの同期を開始していない状態では、設定値仕様管理ＤＢ４１０に設定値仕様情報が登録されておらず、何らかの手法により設定値仕様情報を取得する必要がある。そこで、ステップＳ８０２へ処理が移行する。
【００５６】
ステップＳ８０２では、モジュール５０１は、設定値管理サービス５００が複合機１１０上に配置されているか否かを判別する。この判別は、サーバ１２０が一体型構成（デバイスサーバ）であるか否かの判別と同義である。サーバ１２０が複合機ファームウェア５１０を記憶している場合には、サーバ１２０が一体型構成のデバイスサーバであると判別される。ステップＳ８０２の判別の結果、設定値管理サービス５００が複合機１１０上に配置されている（サーバ１２０がデバイスサーバである）場合、処理はステップＳ８０４に進む。一方、設定値管理サービス５００が複合機１１０上に配置されていない（サーバ１２０がデバイスサーバでない）場合、処理はステップＳ８０３に進む。
【００５７】
ステップＳ８０３では、モジュール５０１は、設定値管理サービス５００が、設定値管理サーバとしてのサーバ１２０上に配置されているか否かを判別する。この判別は、サーバ１２０が別体型構成で、例えばサーバ１２０がＰＣサーバ等として構成されているか否かの判別と同義である。サーバ１２０が複合機ファームウェア５１０を記憶していない場合には、サーバ１２０が別体型構成の設定値管理サーバであると判別される。ステップＳ８０３の判別の結果、設定値管理サービス５００が、サーバ１２０上に配置されている（サーバ１２０が設定値管理サーバである）場合、処理はステップＳ８０５に進む。一方、設定値管理サービス５００が、サーバ１２０上に配置されている（サーバ１２０が設定値管理サーバでない）場合、処理はステップＳ８０６に進む。
【００５８】
ここで、ステップＳ８０２、Ｓ８０３において、設定値管理サービス５００がどのような環境に配置されているかの判定方法に限定はない。しかし一例として、設定値管理サービス５００が動作するオペレーションシステム（ＯＳ）のシステムプロパティを取得して判定する方法や、コンフィグレーションファイル（コンフィグファイル）に記載されている値を読み込んで判定する方法などがある。より詳細には、例えばシステムプロパティから判定する場合は、サーバソフトウェアが、ＯＳ側で用意されている標準ライブラリ関数を呼び出し、ＯＳのシステム名（例えば、Linux、Windows等；登録商標）を取得して判定できる。そして、取得したシステム名が特定のものであれば、サーバのソフトウェアの動作する複合機またはサーバであると判定される。コンフィグファイルから判定する場合、サーバソフトウェアを動作させる環境を示す文字列（iR-ADV、C5030、Windows Server 2008R2等；登録商標）を記載したコンフィグファイルを予め環境に配置しておく。そして、配置したコンフィグファイルから取得した文字列が特定の文字列であれば、サーバのソフトウェアの動作する複合機またはサーバであると判定される。
【００５９】
ステップＳ８０４では、設定値管理サービス５００が複合機１１０上に配置されているため（図７）、仕様ＤＢ取得モジュール５０４は、自デバイスのＨＤＤ２０５内にある設定値仕様情報５１５から設定値仕様情報を取得する。そしてモジュール５０１は、取得された設定値仕様情報を設定値仕様管理ＤＢ４１０に登録する。その後、処理はステップＳ８０７に移行する。ステップＳ８０５では、設定値管理サービス５００はサーバ１２０上に配置されている（図６）。この場合、仕様ＤＢ取得モジュール５０４は、設定値仕様管理サーバ１４０へ設定値仕様情報の取得要求を送信し、それに対する応答として、設定値仕様管理サービス１４１の仕様ＤＢ配信モジュール５２２から設定値仕様情報を取得する。そしてモジュール５０１は、仕様ＤＢ配信モジュール５２２から取得された設定値仕様情報を設定値仕様管理ＤＢ４１０に登録する。その後、処理はステップＳ８０７に移行する。
【００６０】
ステップＳ８０６では、設定値仕様情報を取得できる取得先が存在しないことから、モジュール５０１はエラーを通知し、図８の処理を終了させる。実際の運用では、設定値管理サービス５００は複合機１１０上かサーバ１２０上に配置されるため、この処理に移行することは想定されない。ステップＳ８０７では、モジュール５０１は、設定値仕様管理ＤＢ４１０から設定値仕様情報を取得し、図８の処理を終了させる。
【００６１】
その後、上述したように、モジュール５０１は、変更要求で取得された設定値が取得した設定値仕様情報で規定される設定可能範囲内であれば、管理する設定値を、取得された設定値に更新する。このようにして、設定値管理サービス５００がクライアントである複合機１１０と同期を開始していない場合であっても、設定値管理サービス５００が配置された環境に応じて適切な取得先から設定値仕様情報が取得される。そして、設定値仕様情報を参照して適切に設定値を更新できる。
【００６２】
本実施の形態によれば、サーバＤＢ管理モジュール５０１は、設定値仕様管理ＤＢ４１０（第１の仕様情報）を保持している場合は、設定値仕様情報を設定値仕様管理ＤＢ４１０から取得する。しかし、モジュール５０１は、設定値仕様管理ＤＢ４１０を保持しておらず且つ、設定値仕様情報５１５（第２の仕様情報）を記憶している場合は、設定値仕様情報５１５から設定値仕様情報を取得し、設定値仕様管理ＤＢ４１０に登録する。そして、モジュール５０１は、管理する設定値を、変更要求で取得された設定値と、取得した設定値仕様情報に基づいて決定する。これにより、クライアント（複合機１１０）と接続されていない場合であっても、取得した設定値と自装置に記憶されている設定値仕様情報とに基づいて、管理する設定値を決定することができる。
【００６３】
また、モジュール５０１は、設定値仕様管理ＤＢ４１０を保持しておらず且つ、設定値仕様情報５１５を記憶していない場合は、設定値仕様管理サーバ１４０の設定値仕様マスターＤＢ５２０（第３の仕様情報）から設定値仕様情報を取得する。そして設定値仕様情報が設定値仕様管理ＤＢ４１０に登録される。これにより、自装置に設定値仕様情報が記憶されていなくても、取得した設定値と外部装置から取得される設定値仕様情報とに基づき、管理する設定値を決定することができる。
【００６４】
また、設定値管理サービス５００は、自身が配置された環境を判定し、環境に応じて設定値仕様情報の適切な取得先を選択するので、設定値管理サービス５００が適用される装置に自由度がある。
【００６５】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６６】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。
【符号の説明】
【００６７】
４１０  設定値仕様管理ＤＢ
４１２  共通設定値管理ＤＢ
４１４  個別設定値管理ＤＢ
５００  設定値管理サービス
５０１  サーバＤＢ管理モジュール
５０３  入出力モジュール
５１５  設定値仕様情報
５１７  設定値ＤＢ
【図１】
0006652297.tif 000008
【図２】
0006652297.tif 000009
【図３】
0006652297.tif 000010
【図４】
0006652297.tif 000011
【図５】
0006652297.tif 000012
【図６】
0006652297.tif 000013
【図７】
0006652297.tif 000014
【図８】
0006652297.tif 000015