以下、本発明の実施の形態を図面を参照しながら詳述する。
本実施の形態では、画像処理装置としてのMFPと各種データを同期可能な情報処理装置としてのサーバに本発明を適用した場合について説明するが、本発明の適用先はサーバに限られない。例えば、MFPと各種データを同期可能な画像処理装置としての他のMFP、クライアントPC、及びスマートフォンであれば本発明を適用することができる。
また本実施形態では、サーバとMFPとが同時期に共通の設定情報を共有していることを、サーバとMFPとが設定情報を同期しているという。
図1は、本発明の実施の形態に係る情報処理装置としてのサーバ101を含む通信システム100の構成を概略的に示すブロック図である。
図1において、通信システム100は、サーバ101及び画像処理装置としてのMFP102,103を備え、サーバ101及びMFP102,103はネットワーク104を介して互いに接続されている。
通信システム100は、MFP102,103の各々で実行される各種処理に用いられる情報である複数種の設定情報をサーバ101で管理する。設定情報は、FAX通信等で用いられるアドレス情報や、ユーザが所望する操作を容易に実行するためのカスタム設定情報等を含む。サーバ101は管理対象となる設定情報(以下、「管理対象設定情報」という。)をMFP102,103から取得し、取得された管理対象設定情報を格納する。また、サーバ101は格納された管理対象設定情報をMFP102,103のうち少なくとも1つと同期可能であり、例えば、或る管理対象設定情報をMFP102,103と共有(同期)可能である。MFP102,103は、コピー処理、スキャン処理、FAX通信処理等の各種処理を実行可能である。
図2は、図1におけるサーバ101の構成を概略的に示すブロック図である。
図2において、サーバ101は、制御部200、操作部208、及び表示部209を備え、制御部200は操作部208及び表示部209と夫々接続されている。制御部200は、CPU201、ROM202、RAM203、HDD204、操作部I/F205、表示部I/F206、及びネットワークI/F207を備え、これらはシステムバス210を介して互いに接続されている。
制御部200はサーバ101全体を統括的に制御する。CPU201はROM202に格納された各種プログラムを実行して各種制御を行う。ROM202はCPU201で用いられる各種プログラムや各種データを格納する。RAM203はCPU201の作業領域として用いられ、また、RAM203は各種データの一時格納領域として用いられる。HDD204は各種プログラム及び各種データを格納する。本実施の形態では、HDD204はMFP102,103から取得された管理対象設定情報を管理する後述する図5の管理データ500を格納する。操作部I/F205は操作部208とデータ通信を行い、表示部I/F206は表示部209とデータ通信を行う。ネットワークI/F207はネットワーク104に接続されたMFP102,103等とデータ通信を行う。操作部208は図示しない各種設定キーを備え、ユーザの操作部208の操作によって入力された入力情報を操作部I/F205を介してCPU201に送信する。表示部209はディスプレイを備え、各種画像を表示するための画像データを表示部I/F206から取得し、取得された画像データに基づいて各種設定を行うための設定メニュー等を表示する。本実施の形態では、表示部209は、管理対象設定情報の同期先を設定する後述する図8の設定メニュー800(設定画面)を表示する。
次にMFP102,103の構成について説明する。本実施の形態では、MFP102,103は同様の構成を有するため、以下、一例として、MFP102を用いて説明する。
図3は、図1におけるMFP102の構成を概略的に示すブロック図である。
図3において、MFP102は、制御部300、操作表示部309、スキャナ310、及びプリンタ311を備え、制御部300は操作表示部309、スキャナ310、及びプリンタ311と夫々接続されている。制御部300は、CPU301、ROM302、RAM303、HDD304、操作表示部I/F305、デバイスI/F306、ネットワークI/F307、及び画像処理部308を備え、これらはシステムバス312を介して互いに接続されている。
制御部300はMFP102全体を統括的に制御する。CPU301はROM302に格納された各種プログラムを実行して各種制御を行う。ROM302はCPU301で用いられる各種プログラムや各種データを格納する。RAM303はCPU301の作業領域として用いられ、また、RAM303は各種データの一時格納領域として用いられる。HDD304は各種プログラム及び各種データを格納する。操作表示部I/F305は操作表示部309とデータ通信を行い、デバイスI/F306はスキャナ310及びプリンタ311とデータ通信を行う。ネットワークI/F307はネットワーク104に接続されたサーバ101やMFP103等とデータ通信を行う。画像処理部308は、スキャナ310によって取得された画像データ等に対し、画像回転、画像圧縮、解像度変換、色空間変換、諧調変換等の各種画像処理を施す。操作表示部309は図示しないタッチパネル式のディスプレイ及び各種設定キーを備える。操作表示部309は、ユーザの操作表示部309の操作によって入力された入力情報を操作表示部I/F305を介してCPU301に送信する。また、操作表示部309は、各種画像を表示するための画像データを操作表示部I/F305から取得し、取得された画像データに基づいて各種設定を行うための設定メニュー等を表示する。スキャナ310は図示しない原稿台に配置された原稿を読み取って画像データを取得し、取得された画像データをデバイスI/F306を介して画像処理部308に送信する。プリンタ311は印刷を行うための印刷データをデバイスI/F306から取得し、取得された印刷データに基づいて印刷処理を行う。
図4は、図1におけるサーバ101の管理モジュール400の構成を概略的に示すブロック図である。
図4において、管理モジュール400は、編集部モジュール401、閲覧部モジュール402、通信部モジュール403、データ取得部モジュール404、及びデータ更新部モジュール405を備える。また、管理モジュール400は、グループ設定取得部モジュール406、グループ設定更新部モジュール407、識別部モジュール408、データ保持部モジュール409、グループ設定保持部モジュール410、及び管理情報保持部モジュール411を備える。管理モジュール400の各種処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。
管理モジュール400は図5に示す管理データ500を管理する。管理データ500は、登録管理DB501、共有範囲管理DB502、グループ管理DB503、及び設定情報DB504を含み、MFP102,103等から取得された管理対象設定情報を管理するためのデータである。
登録管理DB501は、下記表1に示すように、「デバイスID」及び「個体識別子」を含み、サーバ101と管理対象設定情報の同期処理の実行を許可された装置(以下、「同期許可装置」という。)、例えば、MFP102,103を識別する識別情報を含む。
デバイスIDは各個体識別子に割り当てられた一意のID情報であり、個体識別子は各同期許可装置を識別可能な識別子である。サーバ101は各同期許可装置の登録を行う際に各同期許可装置から当該個体識別子を取得する。
共有範囲管理DB502は、下記表2に示すように、「種別」及び「共有範囲」を含み、管理対象設定情報の種別毎の同期先に関する情報を含む。
種別は各管理対象設定情報の種別であり、共有範囲は管理対象設定情報の共有範囲を示す。共有範囲では、管理対象設定情報の種別毎に、全ての同期許可装置を同期先とする「全て」、グループ管理DB503に含まれるグループを同期先とする「グループ」、及び固有の同期許可装置のみを同期先とする「固有」のいずれか1つが設定される。
グループ管理DB503は、下記表3に示すように、「グループ識別子」、「グループ名」、及び「デバイスID」を含む。
グループ管理DB503は各同期許可装置が所属するグループに関する情報を含み、グループには少なくとも1つの同期許可装置が所属する。グループ識別子は各グループに割り当てられた一意のID情報であり、グループ名は各グループの名称である。デバイスIDは各グループに所属する同期許可装置のID情報であり、グループ管理DB503のデバイスID及び登録管理DB501のデバイスIDは対応付けされている。
設定情報DB504は、下記表4に示すように、「設定情報識別子」及び「データ」を含み、各管理対象設定情報の具体値を含む。
設定情報識別子は、各管理対象設定情報及び当該管理対象設定情報の共有範囲を識別可能な識別子である。本実施の形態では、共有範囲管理DB502の「種別」を示す文字列等の管理対象設定情報の種別を示す文字列の先頭に共有範囲情報を示す文字列、例えば、「全て」を示す「user」等を付加した文字列が設定情報識別子として設定される。データは各管理対象設定情報の具体値である。
図4の編集部モジュール401はユーザの操作部208の操作によって各管理対象設定情報の更新が指示されると、当該指示に基づいてデータ更新部モジュール405及びグループ設定更新部モジュール407に更新処理の実行の指示を行う。閲覧部モジュール402は各管理対象設定情報及び当該管理対象設定情報の共有範囲を表示部209に表示する。通信部モジュール403は各同期許可装置とのデータ通信を制御する。通信部モジュール403の制御によって、サーバ101は同期許可装置から各管理対象設定情報の更新の指示通知や、各管理対象設定情報の共有範囲の更新の指示通知を受信する。指示通知は同期許可装置を識別可能な個体識別子及び更新対象となる管理対象設定情報の種別を示す種別情報を含む。また、通信部モジュール403の制御によって、サーバ101は当該指示通知に基づく各種処理の実行結果に関する通知を同期許可装置に送信する。データ取得部モジュール404は、同期許可装置から送信された指示通知に含まれる個体識別子及び種別情報を取得し、取得された個体識別子及び種別情報に対応する設定情報DB504の「データ」、すなわち、管理対象設定情報の具体値を取得する。データ更新部モジュール405は編集部モジュール401からの更新処理の実行の指示に基づいて設定情報DB504を更新する。グループ設定取得部モジュール406は、同期許可装置から送信された指示通知に含まれる種別情報を取得し、取得された種別情報に対応する共有範囲管理DB502の「共有範囲」を取得する。グループ設定更新部モジュール407は編集部モジュール401からの更新処理の実行の指示に基づいて共有範囲管理DB502を更新する。識別部モジュール408は、同期許可装置から送信された指示通知に含まれる個体識別子及び登録管理DB501に基づいて同期許可装置を識別する。データ保持部モジュール409は設定情報DB504をHDD204に格納し、グループ設定保持部モジュール410は共有範囲管理DB502をHDD204に格納し、管理情報保持部モジュール411は登録管理DB501をHDD204に格納する。すなわち、本実施の形態では、管理モジュール400で実行される各種処理によって管理データ500が管理され、同期許可装置から取得された管理対象設定情報が管理される。なお、本実施の形態では、一例として、サーバ101が管理モジュール400を備えた場合について説明したが、管理モジュール400を備える装置はサーバ101に限られず、例えば、MFP102,103のいずれか一方が管理モジュール400を備えてもよい。この場合も、例えば、管理モジュール400を備えるMFP102がHDD304に管理データ500を格納し当該管理データ500を管理することにより、MFP102が同期許可装置から取得された管理対象設定情報を管理可能である。
図6は、図1におけるMFP102のソフトウェアモジュール600の構成を概略的に示すブロック図である。
図6において、ソフトウェアモジュール600は、通信部モジュール601、管理部モジュール602、保持部モジュール603、同期制御部モジュール604、及び識別子保持部モジュール605を備える。また、ソフトウェアモジュール600は、デバイス情報通信部モジュール606及びデバイス情報収集部モジュール607を備える。ソフトウェアモジュール600の各種処理は、CPU301がROM302に格納された各種プログラムを実行することによって行われる。
通信部モジュール601はサーバ101とのデータ通信の制御を行う。管理部モジュール602はサーバ101から同期された管理対象設定情報や、ユーザの操作表示部309の操作によって更新された管理対象設定情報等のデータ管理を行う。保持部モジュール603は管理対象設定情報をHDD304に保持し、同期制御部モジュール604はサーバ101との同期処理の制御を行う。同期処理は、MFP102の所定の動作時、例えば、MFP102の起動時、スリープ移行時、スリープ復帰時等に実行され、また、同期処理は予め設定された一定の間隔で実行される。識別子保持部モジュール605は、MFP102を識別可能な個体識別子をHDD304に格納する。デバイス情報通信部モジュール606は、MFP102の個体識別子、ファームウェアバージョン情報、アクセサリ構成情報、ソフトウェアライセンス情報等を含むデバイス情報をサーバ101に送信する。デバイス情報収集部モジュール607はMFP102のデバイス情報を収集し、収集されたデバイス情報をHDD304等に格納する。
図7は、図1におけるサーバ101で実行される共有範囲設定処理の手順を示すフローチャートである。
図7の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。また、図7の処理は、管理対象設定情報の共有範囲の更新の指示の一例として、ユーザの操作部208の操作によって各管理対象設定情報の共有範囲の更新の指示が行われた場合を前提とする。
ここで、従来の通信システムでは、管理対象設定情報の共有範囲を設定する場合、一の管理対象設定情報を全ての同期許可装置に共有し、他の管理対象設定情報を複数の同期許可装置のうち一部の同期許可装置のみに共有するといった設定を行うことができない。また、従来の通信システムでは、当該通信システムに新たに同期許可装置が追加された場合、追加された同期許可装置に管理対象設定情報を共有するか否かをユーザが設定することができない。すなわち、従来では、管理対象設定情報の共有範囲の設定において、ユーザの意図に対して柔軟に対応することができない。
これに対応して、本実施の形態では、管理対象設定情報の種別毎に当該管理対象設定情報の共有範囲が設定される。すなわち、設定情報の種別毎に当該設定情報の同期先を変更可能である。
図7において、まず、CPU201は、共有範囲管理DB502を取得し(ステップS701)、当該共有範囲管理DB502に基づいて管理対象設定情報の共有範囲を設定する図8の設定メニュー800を表示部209に表示する(ステップS702)。設定メニュー800は、設定情報種別801、現在の設定802、変更後の設定803、プルダウンメニュー804、及びOKボタン805を含む。設定情報種別801は管理対象設定情報の種別を示し、現在の設定802は設定メニュー800が表示された時点で設定されている共有範囲を示す。設定メニュー800が表示された時点で共有範囲の設定が行われていない場合、空欄や「−」等が設定される。変更後の設定803では、共有範囲を選択可能なプルダウンメニュー804(選択メニュー)が表示される。プルダウンメニュー804には、全ての同期許可装置を同期先とする「全てのデバイスで共有」、グループ管理DB503で管理されるグループを同期先とする「グループで共有」、及び固有の同期許可装置を同期先とする「デバイス固有」の3つの選択肢が表示される。プルダウンメニュー804は、管理対象設定情報の種別毎に予め設定された選択肢を含み、管理対象設定情報の種別毎に異なる選択肢の組合せを含む。例えば、プルダウンメニュー804は、上記3つの選択肢を含むが、複数の管理対象設定情報のうち或る種別の選択肢として「デバイス固有」のみを含み、他の種別の選択肢として「全てのデバイスで共有」及び「デバイス固有」の2つの選択肢を含んでもよい。本実施の形態では、ユーザが設定メニュー800を用いて、任意の同期許可装置を管理対象設定情報の種別毎に当該管理対象設定情報の同期先として設定可能である。OKボタン805は各管理対象設定情報の共有範囲の設定を完了する設定ボタンである。
次いで、CPU201は、OKボタン805が選択されるまで待機し、OKボタン805が選択されると、管理対象設定情報の共有範囲の更新の指示を受け付ける(ステップS703)。次いで、CPU201は、当該指示に基づいて共有範囲管理DB502の共有範囲を更新し(ステップS704)、更新された共有範囲管理DB502の共有範囲に基づいて設定情報DB504の設定情報識別子を生成する(ステップS705)。次いで、CPU201は、生成された設定情報識別子を設定情報DB504に設定する(ステップS706)。これにより、上記指示に基づく管理対象設定情報の共有範囲の更新が完了する。次いで、CPU201は、上記指示に基づく管理対象設定情報の共有範囲の更新が完了した旨を表示部209に表示し(ステップS707)、本処理を終了する。
上述した図7の処理によれば、複数種の管理対象設定情報を格納するサーバ101において、任意の同期許可装置が管理対象設定情報の種別毎に当該管理対象設定情報の同期先として設定される。これにより、ユーザが所望する管理対象設定情報の同期先としての同期許可装置を当該管理対象設定情報の種別毎に任意に設定することができ、もって、管理対象設定情報の同期先の設定において、ユーザの意図に対して柔軟に対応することができる。
また、上述した図7の処理では、任意の同期許可装置を管理対象設定情報の種別毎に当該管理対象設定情報の同期先として設定するためのプルダウンメニュー804が表示される。プルダウンメニュー804は全ての同期許可装置を同期先とする「全てのデバイスで共有」及び固有の同期許可装置を同期先とする「デバイス固有」を含む。これにより、ユーザは管理対象設定情報の種別毎に全ての同期許可装置を同期先とするか、若しくは固有の同期許可装置を同期先とするかを容易に設定することができる。
さらに、上述した図7の処理では、プルダウンメニュー804は管理対象設定情報の種別毎に異なる選択肢の組合せを含む。これにより、ユーザは管理対象設定情報の種別に応じた選択肢の組合せから所望する選択肢を選択することができ、もって、ユーザは管理対象設定情報の種別に見合った適切な各同期許可装置を同期先とすることができる。
上述した図7の処理では、管理対象設定情報は各同期許可装置で実行される各種処理に用いられる情報を含むので、各同期許可装置で実行される各種処理に用いられる情報の同期先を設定する際、ユーザの意図に対して柔軟に対応することができる。
以上、本発明について実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。
例えば、後述する図9の管理データ900を用いて管理対象設定情報の種別毎の共有範囲を管理してもよい。
管理データ900は、図5の登録管理DB501の他に、共有範囲管理DB901、対応付け管理DB902、及び設定情報DB903を備える。
共有範囲管理DB901は、下記表5に示すように、「共有範囲ID」、「グループ識別子」、「グループ名」、「デバイスID」、「種別」、及び「共有範囲」を含む。
共有範囲管理DB901は、管理対象設定情報の種別毎の共有範囲に関する情報を含む。共有範囲IDは共有範囲管理DB901内で一意に割り当てられたID情報であり、グループ識別子は各グループに割り当てられた一意のID情報であり、デバイスIDは各同期許可装置を識別可能なID情報である。種別は管理対象設定情報の種別であり、共有範囲は管理対象設定情報の共有範囲である。
対応付け管理DB902は、下記表6に示すように、「共有範囲ID」及び「設定情報ID」を含み、共有範囲管理DB901及び設定情報DB903を対応付けるための情報を含む。
共有範囲IDでは共有範囲管理DB901の共有範囲IDに対応するID情報が設定され、設定情報IDでは、各共有範囲IDに対応する管理対象設定情報のID情報であって、且つ設定情報DB903に含まれる設定情報IDが設定される。
設定情報DB903は、下記表7に示すように、「設定情報ID」、「設定情報識別子」、及び「データ」を含み、各管理対象設定情報の具体値を含む。
設定情報IDは設定情報DB903内で一意に割り当てられたID情報であり、管理対象設定情報の種別を識別するための識別子である。データは各管理対象設定情報の具体値である。管理データ900を用いることで、管理対象設定情報の種別毎の共有範囲を更新する場合に、共有範囲管理DB502及び設定情報DB504の2種のデータを更新する必要をなくすことができる。その結果、管理データ500を用いた場合より複雑なデータ管理を行うことなく、管理対象設定情報の種別毎の共有範囲の更新処理を簡易的に行うことができる。
また、本実施の形態では、管理対象設定情報の種別毎の共有範囲の更新内容に基づいて設定情報DB903に含まれる情報の一部を削除してもよい。
図10は、図7の共有範囲設定処理の第1の変形例の手順を示すフローチャートである。
図10の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。また、図10の処理は、管理対象設定情報の共有範囲の更新の指示の一例として、ユーザの操作部208の操作によって各管理対象設定情報の共有範囲の更新の指示が行われた場合を前提とする。
図10において、まず、CPU201は、図9における共有範囲管理DB901を取得する(ステップS1000)。次いで、CPU201は取得された共有範囲管理DB901に基づいて管理対象設定情報の共有範囲を設定する設定メニュー800を表示部209に表示する(ステップS1001)。次いで、CPU201は図7のステップS703と同様の処理を行う。次いで、CPU201は、ステップS703で受け付けた更新の指示に基づいて共有範囲管理DB901を更新する(ステップS1002)。次いで、CPU201はステップS703において共有範囲が広がるような更新の指示が行われたか否かを判別する(ステップS1003)。例えば、設定されている共有範囲が「デバイス固有」であるのに対し、ステップS703において「グループ共有」や「全てのデバイスで共有」への更新の指示が行われた場合、CPU201は共有範囲が広がるような更新の指示が行われたと判別する。一方、設定されている共有範囲が「全てのデバイスで共有」であるのに対し、ステップS703において「グループ共有」や「デバイス固有」への更新の指示が行われた場合、CPU201は共有範囲が狭まるような更新の指示が行われたと判別する。
ステップS1003の判別の結果、共有範囲が広がるような更新の指示が行われたとき、CPU201は、共有範囲の更新によって不要となる情報を設定情報DB903から削除する(ステップS1004)。ここで、例えば、設定情報識別子「settings.copy.default_job.copy.dual−side」の共有範囲が「グループ共有」から「全てのデバイスで共有」へ更新される場合を一例として説明する。この場合、全ての同期許可装置が上記設定情報識別子に対応する管理対象設定情報を共有するので、当該管理対象設定情報は1種のみが用いられる。そのため、設定情報DB903において、設定情報ID「1」、「3」のいずれかの情報は不要になる。不要な情報が設定情報DB903に含まれたまま放置されると、設定情報DB903の容量が必要以上に大きくなる可能性がある。これに対応して、本実施の形態では、CPU201は、ステップS1004において、設定情報ID「1」、「3」のいずれか、例えば、設定情報ID「3」の情報を削除する。CPU201は、例えば、設定情報ID「1」、「3」の情報うち、利用する同期許可装置が最も少ない設定情報IDの情報を削除する。これにより、設定情報DB903は表7から下記表8のように更新され、設定情報DB903の容量が必要以上に大きくなることを回避することができる。
次いで、CPU201は、設定情報DB903の更新内容に基づいて対応付け管理DB902を更新し(ステップS1005)、本処理を終了する。
ステップS1003の判別の結果、共有範囲が狭まるような更新の指示が行われたとき、CPU201は、共有範囲の更新によって必要となる新たな情報を設定情報DB903に追加する(ステップS1006)。ここで、例えば、設定情報識別子「settings.copy.default_job.copy.dual−side」や「settings.copy.default_job.copy.staple」の共有範囲が「グループ共有」から「デバイス固有」へ更新される場合を一例として説明する。この場合、各同期許可装置が管理対象設定情報を共有しないので、上記設定情報識別子に対応する複数種の管理対象設定情報が必要になる。これに対応して、本実施の形態では、CPU201は、ステップS1006において、設定情報ID「1」〜「4」の他に、例えば、表9のように、設定情報ID「16」〜「21」の情報を追加する。CPU201は、設定情報ID「16」〜「21」の各「データ」に、ユーザの更新の指示内容に基づく情報や、予め設定された初期値等を設定する。
その後、CPU201はステップS1006の処理を実行した後に、ステップS1005の処理を行って、本処理を終了する。
次に、同期処理に関連する各種処理を、設定された管理対象設定情報の共有範囲に基づいて実行する同期関連処理について説明する。
図11は、図1におけるサーバ101で実行される同期関連処理の手順を示すフローチャートである。
図11の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。
図11において、まず、CPU201は、同期許可装置から同期処理に関連する各種処理の実行を要求する要求通知を受信するまで待機する。同期処理に関連する各種処理は、例えば、管理対象設定情報の登録処理、管理対象設定情報の更新処理、管理対象設定情報の同期処理、管理対象設定情報の削除処理、デバイス情報の登録処理、デバイス情報の更新処理、及びデバイス情報の削除処理を含む。その後、CPU201は同期許可装置、例えば、MFP102から上記要求通知を受信すると(ステップS1101でYES)、受信された要求通知を解析する(ステップS1102)。次いで、CPU201は、上記要求通知が管理対象設定情報の登録処理の実行を要求する要求通知であるか否かを判別する(ステップS1103)。
ステップS1103の判別の結果、管理対象設定情報の登録処理の実行を要求する要求通知であるとき、CPU201は後述する図12の管理対象設定情報の登録処理を行う(ステップS1104)。具体的に、CPU201は要求通知に基づいて新たに管理対象設定情報を設定する。次いで、CPU201は、要求通知に基づく処理の実行結果をMFP102に送信し(ステップS1105)、本処理を終了する。
ステップS1103の判別の結果、管理対象設定情報の登録処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知が管理対象設定情報の更新処理の実行を要求する要求通知であるか否かを判別する(ステップS1106)。
ステップS1106の判別の結果、管理対象設定情報の更新処理の実行を要求する要求通知であるとき、CPU201は、後述する図13の管理対象設定情報の更新処理を行う(ステップS1107)。具体的に、CPU201は要求通知に基づいて管理対象設定情報を更新する。次いで、CPU201はステップS1105の処理を行う。一方、ステップS1106の判別の結果、管理対象設定情報の更新処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知が管理対象設定情報の同期処理の実行を要求する要求通知であるか否かを判別する(ステップS1108)。
ステップS1108の判別の結果、管理対象設定情報の同期処理の実行を要求する要求通知であるとき、CPU201は、後述する図14の管理対象設定情報の同期処理を行う(ステップS1109)。具体的に、CPU201は要求通知に基づいて管理対象設定情報をMFP102に同期する。次いで、CPU201はステップS1105の処理を行う。一方、ステップS1108の判別の結果、管理対象設定情報の同期処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知が管理対象設定情報の削除処理の実行を要求する要求通知であるか否かを判別する(ステップS1110)。
ステップS1110の判別の結果、管理対象設定情報の削除処理の実行を要求する要求通知であるとき、CPU201は、後述する図15の管理対象設定情報の削除処理を行う(ステップS1111)。具体的に、CPU201は要求通知に基づいて管理対象設定情報を削除する。次いで、CPU201はステップS1105の処理を行う。一方、ステップS1110の判別の結果、管理対象設定情報の削除処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知がデバイス情報の登録処理の実行を要求する要求通知であるか否かを判別する(ステップS1112)。
ステップS1112の判別の結果、デバイス情報の登録処理の実行を要求する要求通知であるとき、CPU201は、デバイス情報の登録処理を行い(ステップS1113)、ステップS1105の処理を行う。一方、ステップS1112の判別の結果、デバイス情報の登録処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知がデバイス情報の更新処理の実行を要求する要求通知であるか否かを判別する(ステップS1114)。
ステップS1114の判別の結果、デバイス情報の更新処理の実行を要求する要求通知であるとき、CPU201は、デバイス情報の更新処理を行い(ステップS1115)、ステップS1105の処理を行う。一方、ステップS1114の判別の結果、デバイス情報の更新処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知がデバイス情報の削除処理の実行を要求する要求通知であるか否かを判別する(ステップS1116)。
ステップS1116の判別の結果、デバイス情報の削除処理の実行を要求する要求通知であるとき、CPU201は後述する図16のデバイス情報の削除処理を行い、要求通知に基づいてデバイス情報を削除する(ステップS1117)。次いで、CPU201はステップS1105の処理を行う。一方、ステップS1116の判別の結果、デバイス情報の削除処理の実行を要求する要求通知でないとき、CPU201は、上記要求通知が予め設定された他の処理の実行を要求する要求通知であるか否かを判別する(ステップS1118)。
ステップS1118の判別の結果、予め設定された他の処理の実行を要求する要求通知であるとき、CPU201は、要求通知に基づく他の処理を行い(ステップS1119)、ステップS1105の処理を行う。一方、ステップS1116の判別の結果、予め設定された他の処理の実行を要求する要求通知でないとき、CPU201は、エラーメッセージを含むエラー通知を生成し(ステップS1120)、ステップS1105の処理を行う。
図12は、図11のステップS1104の管理対象設定情報の登録処理の手順を示すフローチャートである。
図12の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。図12の処理は、一例として、管理データ500を用いることを前提とする。
図12において、まず、CPU201は、取得された要求通知及び共有範囲管理DB502に基づいて要求通知に対応する管理対象設定情報の共有範囲を解析する(ステップS1201)。次いで、CPU201は当該管理対象設定情報の共有範囲が「固有」であるか否かを判別する(ステップS1202)。
ステップS1202の判別の結果、上記管理対象設定情報の共有範囲が「固有」であるとき、CPU201は、共有範囲が「固有」であることを示す文字列を含む文字列データを生成する(ステップS1203)。CPU201は、例えば、共有範囲が「固有」であることを示す文字列、MFP102のデイバスID、及び管理対象設定情報の種別を示す文字列の順に並べた文字列データを生成する。次いで、CPU201は後述するステップS1207の処理を行う。
ステップS1202の判別の結果、上記管理対象設定情報の共有範囲が「固有」でないとき、CPU201は、上記管理対象設定情報の共有範囲が「グループ」であるか否かを判別する(ステップS1204)。
ステップS1204の判別の結果、上記管理対象設定情報の共有範囲が「グループ」であるとき、CPU201は、共有範囲が「グループ」であることを示す文字列を含む文字列データを生成する(ステップS1205)。CPU201は、例えば、共有範囲が「グループ」であることを示す文字列、MFP102のグループ識別子、及び管理対象設定情報の種別を示す文字列の順に並べた文字列データを生成する。次いで、CPU201は後述するステップS1207の処理を行う。
ステップS1204の判別の結果、上記管理対象設定情報の共有範囲が「グループ」でないとき、CPU201は、共有範囲が「全て」であることを示す文字列を含む文字列データを生成する(ステップS1206)。CPU201は、例えば、共有範囲が「全て」であることを示す文字列、及び管理対象設定情報の種別を示す文字列の順に並べた文字列データを生成する。次いで、CPU201は、生成された文字列データを用いて設定情報DB504から当該文字列データに対応する設定情報識別子を検索し(ステップS1207)、文字列データに対応する設定情報識別子が存在するか否かを判別する(ステップS1208)。
ステップS1208の判別の結果、文字列データに対応する設定情報識別子が存在しないとき、CPU201は、生成された文字列データを設定情報識別子として設定情報DB504に管理対象設定情報の登録を行う(ステップS1209)。次いで、CPU201は、管理対象設定情報の登録が成功したか否かを判別する(ステップS1210)。
ステップS1210の判別の結果、管理対象設定情報の登録が成功したとき、CPU201は、管理対象設定情報の登録が成功した旨を示す成功通知を生成し(ステップS1211)、図11のステップS1105以降の処理を行う。
ステップS1208の判別の結果、文字列データに対応する設定情報識別子が存在するとき、又はステップS1210の判別の結果、管理対象設定情報の登録が失敗したとき、CPU201は、管理対象設定情報の登録が失敗した旨を示す失敗通知を生成する(ステップS1212)。次いで、CPU201は図11のステップS1105以降の処理を行う。
図13は、図11のステップS1107の管理対象設定情報の更新処理の手順を示すフローチャートである。
図13の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。図13の処理は、一例として、管理データ500を用いることを前提とする。
図13において、まず、CPU201は、図12のステップS1201〜S1208と同様の処理を行う。
ステップS1208の判別の結果、文字列データに対応する設定情報識別子が存在しないとき、CPU201は、図12のステップS1209以降の処理を行う。一方、ステップS1208の判別の結果、文字列データに対応する設定情報識別子が存在するとき、CPU201は、文字列データに対応する、設定情報DB504の管理対象設定情報を更新する(ステップS1301)。具体的に、CPU201は、文字列データに対応する、設定情報DB504の管理対象設定情報に対して、要求通知に基づく管理対象設定情報を上書きする。次いで、CPU201は、図12のステップS1210以降の処理を行う。
図14は、図11のステップS1109の管理対象設定情報の同期処理の手順を示すフローチャートである。
図14の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。図14の処理は、一例として、管理データ500を用いることを前提とする。
図14において、まず、CPU201は、要求通知に基づいて管理対象設定情報の種別を特定し、特定された種別に対応する複数の設定情報識別子を設定情報DB504から取得する(ステップS1401)。その後、CPU201は取得された各設定情報識別子に対して後述するステップS1402〜ステップS1407の処理を行う。以下では、一例として、複数の設定情報識別子のうち或る設定情報識別子としての設定情報識別子Aに対してステップS1402〜ステップS1407の処理を行う場合を説明する。CPU201は、共有範囲管理DB502に基づいて設定情報識別子Aの共有範囲を取得し(ステップS1402)、取得された共有範囲が「固有」であるか否かを判別する(ステップS1403)。
ステップS1403の判別の結果、取得された共有範囲が「固有」であるとき、CPU201は、設定情報識別子AのデバイスID及びMFP102のデバイスIDが一致するか否かを判別する(ステップS1404)。
ステップS1404の判別の結果、設定情報識別子AのデバイスID及びMFP102のデバイスIDが一致するとき、CPU201は同期用情報Aを生成する(ステップS1405)。同期用情報Aは、設定情報識別子Aに対応する管理対象設定情報に基づいて生成される。次いで、CPU201は、後述するステップS1408の処理を行う。
ステップS1403の判別の結果、取得された共有範囲が「固有」でないとき、CPU201は、取得された共有範囲が「グループ」であるか否かを判別する(ステップS1406)。
ステップS1406の判別の結果、取得された共有範囲が「グループ」であるとき、CPU201は、設定情報識別子Aのグループ識別子及びMFP102のグループ識別子が一致するか否かを判別する(ステップS1407)。
ステップS1407の判別の結果、設定情報識別子Aのグループ識別子及びMFP102のグループ識別子が一致するとき、CPU201は、ステップS1405以降の処理を行う。
ステップS1404の判別の結果、設定情報識別子AのデバイスID及びMFP102のデバイスIDが一致しないとき、又はステップS1407の判別の結果、設定情報識別子Aのグループ識別子及びMFP102のグループ識別子が一致しないとき、CPU201は後述するステップS1408の処理を行う。
ステップS1406の判別の結果、取得された共有範囲が「グループ」でないとき、CPU201、ステップS1405の処理を行う。CPU201は、設定情報識別子A以外の他の設定情報識別子に対してもステップS1402〜S1407の処理を施す。次いで、CPU201は、生成された各同期用情報をMFP102に同期し(ステップS1408)、全ての同期用情報をMFP102に同期すると、全ての同期用情報をMFP102に同期したことを示す通知を生成する。その後、CPU201は図11のステップS1105以降の処理を行う。
上述した本実施の形態では、ステップS1408において同期処理を行う場合について説明したが、これに限らない。ステップS1408の処理を実行せず、ステップS1105の処理で同期処理を実行してもよい。
図15は、図11のステップS1111の管理対象設定情報の削除処理の手順を示すフローチャートである。
図15の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。図15の処理は、一例として、管理データ500を用いることを前提とする。
図15において、まず、CPU201は、図12のステップS1201〜S1207と同様の処理を行う。次いで、CPU201は、文字列データに対応する設定情報識別子が存在すると、設定情報DB504から文字列データに対応する設定情報識別子の管理対象設定情報を削除する(ステップS1501)。次いで、CPU201は、管理対象設定情報を削除する削除処理が成功したか否かを判別する(ステップS1502)。
ステップ1502の判別の結果、上記削除処理が成功したとき、CPU201は削除処理が成功した旨を示す成功通知を生成し(ステップS1503)、図11のステップS1105以降の処理を行う。一方、ステップS1502の判別の結果、管理対象設定情報を削除する削除処理が失敗したとき、CPU201は削除処理が失敗した旨を示す失敗通知を生成し(ステップS1504)、図11のステップS1105以降の処理を行う。
図16は、図11のステップS1117のデバイス情報の削除処理の手順を示すフローチャートである。
図16の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。図16の処理は、一例として、管理データ500を用いることを前提とする。
図16において、まず、CPU201は、要求通知に基づいて管理対象設定情報の種別を特定し、特定された種別に対応する複数の設定情報識別子を設定情報DB504から取得する(ステップS1601)。その後、CPU201は取得された各設定情報識別子に対して後述するステップS1602〜ステップS1604の処理を施す。以下では、一例として、複数の設定情報識別子のうち或る設定情報識別子としての設定情報識別子Aに対してステップS1602〜ステップS1604の処理を行う場合を説明する。CPU201は、共有範囲管理DB502に基づいて設定情報識別子Aの共有範囲を取得し、取得された共有範囲が「固有」であるか否かを判別する(ステップS1602)。
ステップS1602の判別の結果、取得された共有範囲が「固有」であるとき、CPU201は、設定情報識別子AのデバイスID及びMFP102のデバイスIDが一致するか否かを判別する(ステップS1603)。
ステップS1603の判別の結果、設定情報識別子AのデバイスID及びMFP102のデバイスIDが一致するとき、CPU201は、設定情報DB504から設定情報識別子Aに対応する管理対象設定情報を削除する(ステップS1604)。CPU201は、設定情報識別子A以外の他の設定情報識別子に対してもステップS1602〜S1604の処理を施す。次いで、CPU201は、要求通知に基づく個体識別子及び当該個体識別子に対応するデバイスIDを含むデバイス情報を登録管理DB501から削除する(ステップS1605)。その後、CPU201は登録管理DB501からデバイス情報を削除すると、登録管理DB501からデバイス情報を削除したことを示す通知を生成し、図11のステップS1105以降の処理を行う。
ステップS1602の判別の結果、取得された共有範囲が「固有」でないとき、又はステップS1603の判別の結果、設定情報識別子AのデバイスID及びMFP102のデバイスIDが一致しないとき、CPU201は、ステップS1605以降の処理を行う。
上述した本実施の形態では、ステップS1003の処理において、共有範囲が広がるような指示が行われた場合、共有範囲が変更された設定情報に関する情報を削除した後に生成してもよい。
図17は、図7の共有範囲設定処理の第2の変形例の手順を示すフローチャートである。
図17の処理は、CPU201がROM202に格納された各種プログラムを実行することによって行われる。
図17において、まず、CPU201は図10のステップS1000〜S1003の処理を行う。
ステップS1003の判別の結果、共有範囲が狭まるような更新の指示が行われたとき、CPU201は図10のステップS1005の処理を行う。ここで、サーバ101は共有範囲が変更される前の設定情報を共有範囲が変更された後も保持する。
一方、ステップS1003の判別の結果、共有範囲が広がるような更新の指示が行われたとき、CPU201は設定情報DB903から共有範囲が変更された設定情報を削除する(ステップS1701)。次いで、CPU201はステップS1005以降の処理を行う。
次に、図17の処理が完了した後に各同期許可装置によって行われる同期要求処理について説明する。以下では、一例として、同期許可装置であるMFP102が同期要求処理を行う場合について説明する。
図18は、図1のMFP102で実行される同期要求処理の手順を示すフローチャートである。
図18の処理は、MFP102のCPU301がROM302に格納されたプログラムを実行することによって行われる。
図18において、まず、CPU301はサーバ101にMFP102の設定情報の同期要求を行う(ステップS1801)。CPU301は、例えば、サーバ101とMFP102が接続して初めて同期処理を開始する場合、サーバ101において設定変更を行うために同期処理が一旦中断された後、同期処理を再開する場合等に図18に示す同期要求を行う。ステップS1801では、例えば、CPU301はサーバ101に対してMFP102に設定された全ての種別の設定情報の同期要求を行う。本実施形態において、MPF102は、設定情報の種別毎に同期要求を行う。例えば、CPU301は設定情報の種別として「settings.copy.default_job.copy.dual−side」の同期要求を行い、「custom_menu」の同期要求を行うといったように個別に同期要求を行う。
サーバ101はMFP102から同期要求を受け付けると、後述する図19の設定情報送信処理を行う。次いで、CPU301はMFP102が通信システム100においてデータ通信可能に接続されているか否かを判別する(ステップS1802)。
ステップS1802の判別の結果、MFP102が通信システム100においてデータ通信可能に接続されていないとき、CPU301はステップS1801の処理に戻る。一方、ステップS1802の判別の結果、MFP102が通信システム100においてデータ通信可能に接続されているとき、CPU301はサーバ101から設定情報を取得したか否かを判別する(ステップS1803)。ステップS1803以降の処理は、設定情報の種別の同期要求毎に実行される。例えば、CPU301が「custom_menu」の同期要求を行った場合、サーバ101から「custom_menu」の設定情報を取得したか否かを判別する。
ステップS1803の判別の結果、サーバ101から設定情報を取得したとき、CPU301は取得された設定情報を設定する(ステップS1804)。これにより、サーバ101に保持されていた設定情報がMFP102に同期される。その後、CPU301は本処理を終了する。
ステップS1803の判別の結果、サーバ101から設定情報を取得しないとき、CPU301はMFP102の設定情報の登録要求をサーバ101に行う(ステップS1805)。次いで、CPU301はMFP102の設定情報の登録要求を成功したか否かを判別する(ステップS1806)。例えば、CPU301が「custom_menu」の同期要求に対してサーバ101から「custom_menu」の設定情報を受信しなかった場合、以下の処理を行う。すなわち、MFP102が保持する「custom_menu」の設定情報をサーバ101に登録要求する。
ステップS1806の判別の結果、MFP102の設定情報の登録要求を成功しないとき、CPU301はステップS1805の処理に戻る。一方、ステップS1806の判別の結果、MFP102の設定情報の登録要求を成功したとき、CPU301は本処理を終了する。MFP102の設定情報の登録要求が成功すると、登録されたMFP102の設定情報の同期処理が可能になる。これにより、図17のステップS1701で共有範囲が変更された設定情報に関する全ての情報が削除されても、同期処理を行うためのMFP102の設定情報がサーバ101に保持される。
また、CPU301は、後述する図19のステップS1904の処理でサーバ101から送信されたエラーの応答を受信した後、該エラーに対応する種別の設定情報の同期要求を行わない。
図19は、図1のサーバ101で実行される設定情報送信処理の手順を示すフローチャートである。
図19の処理は、CPU201がROM202に格納されたプログラムを実行することによって行われる。
図19において、まず、CPU201は同期許可装置から同期要求を受け付ける(ステップS1901)。例えば、ステップS1901において、同期許可装置であるMFP102から該MFP102に設定された全ての設定情報の同期要求を受け付けた場合、CPU201は該MFP102に設定された各設定情報に対して後述するステップS1902〜S1912の処理を行う。以下では、一例として、MFP102に設定された設定情報のうち一の設定情報に対して後述するステップS1902〜S1912の処理を行う場合について説明する。CPU201は一の設定情報の種別を確認し(ステップS1902)、一の設定情報の種別が同期対象とすべき種別であるか否かを判別する(ステップS1903)。同期対象とすべき種別はシステム管理者によって予め設定されている。
ステップS1903の判別の結果、一の設定情報の種別が同期対象とすべき種別でないとき、CPU201はMFP102にエラーを応答し(ステップS1904)、後述するステップS1913の処理を行う。一方、ステップS1903の判別の結果、一の設定情報の種別が同期対象とすべき種別であるとき、CPU201は共有範囲管理DB901において、一の設定情報の種別の共有範囲が「固有」に設定されているか否かを判別する(ステップS1905)。
ステップS1905の判別の結果、一の設定情報の種別の共有範囲が「固有」に設定されていないとき、CPU201は後述するステップS1909の処理を行う。一方、ステップS1905の判別の結果、一の設定情報の種別の共有範囲が「固有」に設定されているとき、CPU201は共有範囲が「固有」のMFP102の一の設定情報(以下、「MFP102の固有設定情報」という。)を保持しているか否かを判別する(ステップS1906)。すなわち、ステップS1906では、MFP102の固有設定情報をサーバ101が管理しているか否かを判別する。例えば、サーバ101がMFP102と初めて同期処理を実行する場合、サーバ101はMFP102の固有設定情報を記憶していない。また、一の設定情報の種別の共有範囲が「全て」や「グループ」から「固有」に設定された後に初めてMFP102及びサーバ101が接続する場合、サーバ101は一の設定情報の種別におけるMFP102の固有設定情報を記憶していない。CPU201は設定情報DB903にMFP102の固有設定情報が含まれていないとき、MFP102の固有設定情報を保持していないと判別する。一方、CPU201は設定情報DB903にMFP102の固有設定情報が含まれているとき、MFP102の固有設定情報を保持していると判別する。
ステップS1906の判別の結果、MFP102の固有設定情報を保持しているとき、CPU201は後述するステップS1909の処理を行う。一方、ステップS1906の判別の結果、MFP102の固有設定情報を保持していないとき、CPU201は、共有範囲が「グループ」又は「全て」の一の設定情報(以下、「共有設定情報」という。)を保持しているか否かを判別する(ステップS1907)。共有設定情報はMFP102の他に、MFP103等の他の同期許可装置に対しても同期される設定情報である。例えば、一の設定情報の種別の共有範囲が「グループ」又は「全て」から「固有」に設定された場合、共有設定情報はサーバ101に保持される。このような場合、ステップS1907では、CPU201は共有設定情報を保持していると判別する。一方、設定情報DB903に共有設定情報が含まれていないとき、CPU201は共有設定情報を保持していないと判別する。
ステップS1907の判別の結果、共有設定情報を保持していないとき、CPU201は後述するステップS1909の処理を行う。一方、ステップS1907の判別の結果、共有設定情報を保持しているとき、CPU201は該共有設定情報に基づいてMFP102の固有設定情報を生成する(ステップS1908)。CPU201は、例えば、共有設定情報を複製(コピー)して固有設定情報を生成する。また、CPU201はMFP102の構成情報に応じて共有設定情報を変更し、変更された共有設定情報に基づいてMFP102の固有設定情報を生成する。これにより、共有範囲が「全て」や「グループ」から「固有」に変更された後に実行される初めの同期処理において、共有範囲が「全て」や「グループ」に設定時の設定情報を同期するといったユーザの要求を実現可能となる。次いで、CPU201は一の設定情報を保持しているか否かを判別する(ステップS1909)。ステップS1909では、例えば、共有範囲管理DB901において、一の設定情報の種別の共有範囲が「グループ」や「全て」に設定され、且つサーバ101が共有設定情報を保持している場合、CPU201は一の設定情報を保持していると判別する。また、共有範囲管理DB901において、一の設定情報の種別の共有範囲が「固有」に設定され、且つサーバ101がMFP102の固有設定情報を保持している場合、CPU201は一の設定情報を保持していると判別する。一方、設定情報DB903に共有設定情報及びMFP102の固有設定情報のいずれも含まれていないとき、CPU201は一の設定情報を保持していないと判別する。
ステップS1909の判別の結果、一の設定情報を保持していないとき、CPU201は同期要求を正常に受理した旨を示す応答通知をMFP102に送信し(ステップS1910)、後述するステップS1913の処理を行う。一方、ステップS1909の判別の結果、一の設定情報を保持しているとき、CPU201は上記応答通知をMFP102に送信する(ステップS1911)。次いで、CPU201は一の設定情報をMFP102に送信し(ステップS1912)、全ての設定情報の種別の確認処理が完了したか否かを判別する(ステップS1913)。
ステップS1913の判別の結果、いずれかの設定情報の種別の確認処理が完了しないとき、CPU201はステップS1902の処理に戻る。一方、ステップS1913の判別の結果、全ての設定情報の種別の確認処理が完了したとき、CPU201は本処理を終了する。
次に、図17〜図19の処理について、具体的な処理例について説明する。
図17のステップS1003において、共有範囲を狭めるような指示が行われたと判別された場合のサーバ101及びMFP102の処理について説明する。
以下では、一例として、表5に示す「custom_menu」の共有範囲を「全て」から「固有」に変更した場合について説明する。
サーバ101は、共有範囲を狭めるような指示に基づいて「custom_menu」の共有範囲を狭める設定変更が行われると、以下の処理を行う。すなわち、サーバ101は同期許可装置であるMFP102,103のそれぞれに「custom_menu」の設定情報を登録するためのスキームを設定情報DB903内に用意する。この時点では、各同期許可装置の「custom_menu」に対するデータは空の状態である。また、サーバ101は共有範囲が「全て」の「custom_menu」の共有設定情報を設定情報DB903に保持する。次いで、ステップS1005において、対応付け管理DB902が更新されてサーバ101は図17の処理を終了する。
図17の処理が完了すると、システム管理者はサーバ101及びMFP102の再接続を行う。再接続は、例えば、サーバ101及びMFP102をネットワーク接続した状態で、サーバ101との同期処理を開始するための指示をMFP102において入力することによって行われる。サーバ101及びMFP102の再接続が指示されると、MFP102は図18の処理を実行し、「custom_menu」を含む複数の設定情報の同期要求をサーバ101に送信する(ステップS1801)。
サーバ101は、同期要求を受け付け(ステップS1901)、複数の設定情報のうち一の設定情報として「custom_menu」を選択する。「custom_menu」が同期対象とすべき種別であると(ステップS1903でYES)、サーバ101はステップS1905の処理を行う。ここでは、「custom_menu」の共有設定が「固有」に変更された場合を前提とするので、サーバ101は「custom_menu」の共有設定が「固有」であると判別し(ステップS1905でYES)、ステップS1906の処理を行う。上述した通り、共有設定を「全て」から「固有」に変更した時点では、設定情報DB903において、MFP102の固有設定情報としての「custom_menu」に対するデータが空の状態であるので、ステップS1906では、サーバ101は「custom_menu」のMFP102の固有設定情報を保持していないと判別する(ステップS1906でNO)。次いで、サーバ101はステップS1907の処理を行う。上述した通り、「custom_menu」の共有設定情報は設定情報DB903に保持されているので、ステップS1907では、サーバ101は「custom_menu」の共有設定情報を保持していると判別する。次いで、サーバ101は「custom_menu」の共有設定情報からMFP102の「custom_menu」を生成する。例えば、「custom_menu」の共有設定情報を複製(コピー)して「custom_menu」のMFP102の固有設定情報を生成する。次いで、サーバ101は応答通知及び生成された「custom_menu」のMFP102の固有設定情報をMFP102に送信する(例えば、ステップS1911及びS1912)。
このようにして、共有範囲を狭める設定変更を行った場合、設定変更前に用いていた設定情報に基づいて設定変更後の設定情報がサーバ101に登録される。
次に、図17のステップS1003において、共有範囲を広げるような指示が行われたと判別された場合のサーバ101及びMFP102の処理の具体例について説明する。
以下では、一例として、表5に示す「settings.copy.default_job.copy.dual−side」の共有範囲を「グループ0」から「全て」に変更した場合について説明する。
サーバ101は、共有範囲を広げるような指示に基づいて「settings.copy.default_job.copy.dual−side」の共有範囲を広げる設定変更が行われると、以下の処理を行う。すなわち、サーバ101は「settings.copy.default_job.copy.dual−side」の設定情報を削除する。具体的に、サーバ101は設定情報DB903において、グループ0の設定情報識別子「group_0.settings.copy.default_job.copy.dual−side」のデータである「片面」を削除する。次いで、ステップS1005において、対応付け管理DB902が更新されてサーバ101は図17の処理を終了する。
図17の処理が完了すると、システム管理者はサーバ101及びMFP102の再接続を行う。
サーバ101及びMFP102の再接続が指示されると、MFP102は図18の処理を実行する。例えば「settings.copy.default_job.copy.dual−side」を含む複数の設定情報の同期要求をサーバ101に送信する(ステップS1801)。
サーバ101は、同期要求を受け付け(ステップS1901)、複数の設定情報のうち一の設定情報として「settings.copy.default_job.copy.dual−side」を選択する。「settings.copy.default_job.copy.dual−side」が同期対象とすべき種別であると(ステップS1903でYES)、サーバ101はステップS1905の処理を行う。ここでは、「settings.copy.default_job.copy.dual−side」の共有設定が「全て」に変更された場合を前提とするので、サーバ101は共有設定が「固有」に設定されていないと判別する(ステップS1905でNO)。次いで、サーバ101は「settings.copy.default_job.copy.dual−side」の設定情報を保持しているか否かを判別する(ステップS1909)。図17のステップS1701で説明したように、共有範囲を広げる設定変更が行われると、設定変更前に保持されていた設定情報が削除される。従って、ステップS1909では、サーバ101は「settings.copy.default_job.copy.dual−side」の設定情報を保持していないと判別する(ステップS1909でNO)。次いで、サーバ101はMFP102に応答通知のみを送信する。
ここで、応答通知のみを受信したMFP102の動作について図18のフローチャートに沿って説明する。MFP102は、ステップS1803において、設定情報を取得しないと判別する(ステップS1803でNO)。次いで、MFP102は該MFP102が保持する「settings.copy.default_job.copy.dual−side」の設定情報をサーバ101に登録要求する(ステップS1805)。
サーバ101は、MFP102から登録要求された当該設定情報を、「settings.copy.default_job.copy.dual−side」の共有設定情報として登録する。このようにして、共有範囲を広げる設定変更を行った場合、設定変更後にサーバ101に初めて接続されたMFP102が保持する設定情報が、共有設定情報としてサーバ101に登録される。これにより、共有範囲が設定された後、サーバ101及びMFP102の同期処理を行うことができる。
上述した本実施の形態では、ステップS1908において、共有設定情報を複製してMFP102の固有設定情報を生成しているが、MFP102の固有設定情報は共有設定情報が複製された設定情報に限られない。例えば、ユーザが操作部208の操作等によってMFP102の固有設定情報として設定した設定情報をMFP102の固有設定情報としてもよい。
本発明は、上述の実施の形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。