以下に添付図面を参照して、情報処理装置、情報処理方法、情報処理プログラムおよび情報処理システムの実施形態を詳細に説明する。
(実施形態の概要)
図1は、実施形態に係る情報処理システムの構成の例を示す。情報処理システムは、互いにネットワーク40を介して接続される端末装置10とサーバ装置20とを含む。端末装置10とネットワーク40とは、有線および無線通信の何れで接続されてもよい。端末装置10は、例えば一般的なパーソナルコンピュータや、タブレット型コンピュータを適用することができる。また、サーバ装置20は、単独のコンピュータにより構成してもよいし、互いに通信可能に接続された複数のコンピュータにより分散させて構成してもよい。
端末装置10は、MFP(Multi Function Printer)30aから設定情報をメモリカード31aを介して受け取ることができる。設定情報は、MFP30aにおける設定可能な設定項目と、設定項目に対して設定された設定値とを含む。端末装置10は、メモリカード31aから読み出した設定情報を、ネットワーク40を介してサーバ装置20に送信する。また、端末装置10は、サーバ装置20からネットワーク40を介して送信された設定情報を受信し、受信した設定情報を、メモリカード31bを介してMFP30bに渡すことができる。MFP30bは、メモリカード31bから設定情報を読み出して、自身の設定情報を更新することができる。
サーバ装置20は、設定情報データベース(DB)21と、ユーザDB22とが接続される。設定情報DB21は、情報処理システムに対応する各MFP30a、30bの設定情報を登録することができる。また、設定情報DB21は、設定情報に含まれる各設定項目の定義を示す情報と識別情報(コモンIDと呼ぶ)とを関連付けるリソースファイルを、機種毎(図1の例ではMFP30a、30b毎)に登録する。リソースファイルの詳細については後述する。
さらに、設定情報DB21は、設定情報に関する属性情報を、その設定情報に関連付けて登録できる。設定情報の属性情報は、例えば、カスタマの名前、コメント、プロジェクトコード、設定情報の変更を許可するか否かを示す情報、設定情報の公開範囲、設定情報の作成者および作成日時、設定情報の更新者および更新日時などを含むことができる。
ユーザDB22は、この情報処理システムを利用可能なユーザの情報であるユーザ情報が登録される。ユーザ情報は、例えばユーザ名とパスワードとを含む。ユーザ情報は、ユーザの所属などの属性情報をさらに含んでいてもよい。
なお、上述では、設定情報の受け渡しが行われる機器がMFP30aおよび30bであるものとして説明しているが、実施形態に適用可能な機器は、MFPに限定されない。
実施形態に係る情報処理システムは、MFP30aの設定情報をMFP30bにコピーする処理を容易に実行可能とするものである。図2は、実施形態に係る、設定情報のコピー処理の基本的な流れを示すフローチャートである。以下では、適宜、設定情報のコピー元の機器であるMFP30aを設定元機器、コピー先の機器であるMFP30bを設定先機器として説明を行う。
図2(a)は、設定元機器であるMFP30aから端末装置10に対する設定情報の転送処理を概略的に示すフローチャートである。この図2(a)の処理に先立って、MFP30aにおいて、メモリカードスロットにメモリカード31aが装着され、MFP30aに記憶される設定情報がメモリカード31aに転送され、メモリカード31aに記憶される。
設定情報は、少なくとも、設定元機器を示す情報と、設定元機器において設定可能な各設定項目(パラメータ)を示す情報と、各設定項目に対して設定された設定値とを含む。また、設定元機器を示す情報は、設定元機器について、個体を識別するための識別情報と、機種を識別する機種情報とを含む。設定情報に含まれる各設定項目は、設定元機器と設定先機器とで、定義が同一だが設定項目名など設定項目を識別する情報が異なる場合がある。
図2(a)において、ステップS10で、端末装置10は、ユーザ操作に応じてメモリカード31aに対して読み出しを行い、メモリカード31aに記憶された設定元機器の設定情報を取り込む。次のステップS11で、端末装置10は、ステップS10で取り込んだ設定元機器の設定情報を、ネットワーク40を介してサーバ装置20に送信し、設定情報のアップロード(UL)を行う。端末装置10から送信された設定情報は、サーバ装置20に受信されて、設定情報DB21に登録される。
図2(b)は、端末装置10から設定先機器であるMFP30bへの設定情報の転送処理を概略的に示すフローチャートである。ステップS20で、端末装置10は、ユーザ操作に応じて、サーバ装置20に対して設定元機器と設定先機器とを指定する。この例では、設定元機器としてMFP30aが指定され、設定先機器としてMFP30bが指定される。なお、設定情報DB21には、設定先機器の設定情報を構成する各設定項目の情報(項目情報)が予め登録されているものとする。
次のステップS21で、端末装置10は、サーバ装置20に対して、設定元機器の各設定項目の各設定値を、設定先機器の各設定項目に適用する指示を出す。
サーバ装置20は、この指示に応じて設定情報DB21を参照し、設定元機器の各設定項目に対応する設定先機器の各設定項目に対して、設定元機器の各設定項目の設定値を適用させる。このとき、サーバ装置20は、詳細を後述するように、定義が同一の設定項目に共通して与えられる識別情報(コモンID)に基づき、設定元機器の各設定項目の設定値を、設定先機器の対応する各設定項目に適用させる。これにより、設定元機器の設定情報と設定先機器の設定情報とにおいて、設定項目の定義が同一で、設定項目名が異なる設定項目が含まれていても、設定元機器の各設定項目の設定値を、設定先機器の対応する各設定項目に適用させることが可能となる。
次のステップS22で、端末装置10は、ユーザ操作に応じて、サーバ装置20から、設定先機器の各設定項目に対して各設定値が適用された設定情報をダウンロード(DL)する。次のステップS23で、端末装置10は、ステップS22でダウンロードした設定情報をメモリカード31bに記憶させる。ユーザは、設定情報が記憶されたメモリカード31bを設定先機器であるMFP30bに装着する。これにより、設定元機器の設定情報における各設定項目の各設定値が適用された設定情報が、設定先機器にコピーされる。
(実施形態に適用可能な構成の具体例)
図3は、実施形態に適用可能なMFP30aおよび30bのハードウェア構成の例を示す。なお、MFP30aおよび30bは、共通の構成を適用可能であるので、ここでは、MFP30aおよび30bをMFP30aで代表させて説明を行う。
図3の例では、MFP30aは、コントローラ300とエンジン部360とをPCI(Peripheral Component Interface)バスで接続した構成となっている。コントローラ300は、MFP30a全体の制御と、描画および通信と、操作表示部320からの入力とを制御する。エンジン部360は、PCIバスに接続可能なプリンタエンジンなどであり、たとえば白黒プロッタ、1ドラムカラープロッタ、4ドラムカラープロッタ、スキャナまたはファックスユニットなどである。なお、このエンジン部360には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理を行う画像処理部が含まれる。
コントローラ300は、CPU301と、ノースブリッジ(NB)と呼ばれるブリッジ303と、システムメモリ(MEM−P)302と、サウスブリッジ(SB)と呼ばれるブリッジ304と、ローカルメモリ(MEM−C)307と、ASIC(Application Specific Integrated Circuit)306と、ハードディスクドライブ(HDD)308とを含み、ブリッジ303とASIC306との間をAGP(Accelerated Graphics Port)バス305で接続した構成となる。また、システムメモリ302は、ROM(Read Only Memory)302aと、RAM(Random Access Memory)302bとを含む。
CPU301は、MFP30aの全体制御を行うものであり、ブリッジ303、システムメモリ302およびブリッジ304からなるチップセットを有し、このチップセットを介して他の機器と接続される。
ブリッジ303は、CPU301とシステムメモリ302、ブリッジ304、AGPバス305とを接続するためのブリッジである。ブリッジ303は、システムメモリ302に対する読み書きなどを制御するメモリコントローラと、PCIマスタおよびAGPターゲットとを含む。
システムメモリ302は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ROM302aとRAM302bとを含む。ROM302aは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリである。RAM302bは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込みおよび読み出し可能なメモリである。
ブリッジ304は、ブリッジ303とPCIデバイス、周辺デバイスとを接続するためのブリッジである。このブリッジ304は、PCIバスを介してブリッジ303と接続されている。PCIバスには、LAN(Local Area Network)といったネットワークと通信を行う通信インタフェース(I/F)370が接続される。
ASIC306は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス305、PCIバス、HDD308およびローカルメモリ307をそれぞれ接続するブリッジの役割を有する。ASIC306は、PCIターゲットおよびAGPマスタと、ASIC306の中核をなすアービタと、ローカルメモリ307を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などをおこなう複数のDMAC(Direct Memory Access Controller)と、エンジン部360との間でPCIバスを介したデータ転送を行うPCIユニットとを含む。
ASIC306には、PCIバスを介して、FCU(Facsimile Control Unit)330、USB(Universal Serial Bus)340、IEEE1394(The Institute of Electrical and Electronics Engineers 1394)インタフェース350が接続される。FCU330は、G3規格およびG4規格に対応したインタフェースをそれぞれ備える。また、図3の例では、ASIC306に対して、PCIバスを介してメモリカードI/F380が接続される。メモリカードI/F380は、メモリカード31aを装着可能なメモリカードスロットを備え、CPU301の指示に従い、メモリカードスロットに装着されたメモリカードに対する書き込みと、メモリカードからの読み出しとを実行する。
さらに、ASIC306に対して、操作表示部320が直接的に接続されている。
ローカルメモリ307は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、HDD308は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。MFP30aの設定情報も、HDD308に記憶される。
AGPバス305は、画像処理を高速化するために提案されたグラフィクスアクセラレーターカード用のバスインタフェースであり、システムメモリ302に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
図4は、実施形態に適用可能な端末装置10のハードウェア構成の例を示す。図4において、端末装置10は、CPU1000と、ROM1001と、RAM1002と、グラフィクスI/F1003と、ストレージ1005と、メモリカードI/F1006と、入力デバイス1007と、通信I/F1008とを含み、これら各部がバス1010により互いに通信可能に接続される。このように、実施形態に係る端末装置10は、一般的なコンピュータと同等の構成を適用できる。
ストレージ1005は、ハードディスクドライブやフラッシュメモリといった不揮発性の記憶媒体であって、プログラムやデータが記憶される。CPU1000は、ストレージ1005やROM1001に記憶されるプログラムに従い、RAM1002をワークメモリとして用いて、端末装置10の全体の動作を制御する。グラフィクスI/F1003は、ディスプレイ1004が接続され、CPU1000によりプログラムに従い生成された表示制御情報に基づき、ディスプレイ1004が表示可能な表示信号を生成する。
メモリカードI/F1006は、メモリカード31aおよび31bが装着可能なメモリカードスロットを備え、CPU1000の指示に従い、メモリカードスロットに装着されたメモリカードに対する書き込みと、メモリカードからの読み出しとを実行する。入力デバイス1007は、ユーザ操作による入力を受け付ける。入力デバイス1007は、例えば、キーボードや、マウスおよびタッチパッドといったポインティングデバイスを適用できる。また、入力デバイス1007として、ディスプレイ1004と一体的に形成され、ディスプレイ1004の表示に応じたユーザ操作による入力を受け付けるタッチパネルを適用することもできる。
通信I/F1008は、ネットワーク40と接続され、ネットワーク40を介した通信を行う。通信I/F1008は、ネットワーク40と直接的に接続されていてもよいし、LANなど他のネットワークを介してネットワーク40と接続されていてもよい。また、通信I/F1008は、有線通信および無線通信の何れを用いてネットワーク40に接続するものでもよい。
図5は、実施形態に適用可能な端末装置10の機能を説明するための一例の機能ブロック図である。図5において、端末装置10は、ブラウザアプリケーション100(以下、ブラウザ100)と、OS(Operating System)101と、入力部102と、表示部103とを含む。これらブラウザ100、OS101、入力部102および表示部103は、CPU1000上で動作するプログラムにより実現される。これに限らず、ブラウザ100、OS101、入力部102および表示部103のうち一部、例えば入力部102および表示部103を、ハードウェア回路により構成してもよい。
ブラウザ100は、HTML(HyperText Markup Language)データに基づき表示などを行う。ブラウザ100としては、Internet Explorer(登録商標)やSafari(登録商標)といった、一般的なブラウザアプリケーションを適用することができる。
OS101は、端末装置10のハードウェアとプログラムとの仲介や、CPU1000上で動作する各プログラムの監視および動作制御などを行い、端末装置10の全体の動作を制御する。入力部102は、入力デバイス1007に対してなされたユーザ操作による入力を受け付け、入力された情報をOS101に渡す。表示部103は、OS101から渡された情報に基づき表示制御情報を生成する。
ブラウザ100は、UI(User Interface)制御部110と、読出部111と、書込部112とを含む。これらUI制御部110、読出部111および書込部112は、所謂Webアプリケーションであって、端末装置10がブラウザ100によりネットワーク40を介してサーバ装置20から取得したプログラムがCPU1000上で実行されることで構成される。以下では、これらUI制御部110、読出部111および書込部112を含むプログラムを、適宜、組み込みツールと呼ぶ。
より具体的には、CPU1000は、ブラウザ100により、例えばUI制御部110、読出部111および書込部112を含むモジュール構成として当該Webアプリケーションを取得する。CPU1000は、取得したWebアプリケーションをRAM1002やストレージ1005に一時的に記憶する。CPU1000は、RAM1002やストレージ1005から当該Webアプリケーションを読み出して実行することにより、UI制御部110、読出部111および書込部112がRAM1002などの主記憶装置上にロードされ、UI制御部110、読出部111および書込部112が主記憶装置上に生成されるようになっている。
UI制御部110は、ユーザに対する情報の表示、ユーザ操作のための画面表示、および、画面表示に応じたユーザ操作による入力の処理など、ユーザインタフェースを制御する。読出部111は、メモリカードI/F1006に装着されたメモリカード31aからのデータの読み出しを制御する。書込部112は、メモリカードI/F1006に装着されたメモリカード31aに対するデータの書込を制御する。
図6は、実施形態に係るサーバ装置20のハードウェア構成の例を示す。図6において、サーバ装置20は、CPU2000と、ROM2001と、RAM2002と、ストレージ2003と、通信I/F2004と、データI/F2005とを含み、これら各部がバス2010により互いに通信可能に接続される。
ストレージ2003は、ハードディスクドライブやフラッシュメモリといった不揮発性の記憶媒体であって、プログラムやデータが記憶される。CPU2000は、ストレージ2003やROM2001に記憶されるプログラムに従い、RAM2002をワークメモリとして用いて、サーバ装置20の全体の動作を制御する。通信I/F2004は、ネットワーク40と接続され、ネットワーク40を介した通信を行う。
データI/F2005は、サーバ装置20が外部との間でデータのやり取りを行うためのインタフェースである。図6の例では、データI/F2005に対して設定情報DB21およびユーザDB22が接続されている。設定情報DB21およびユーザDB22は、例えばハードディスクドライブといった不揮発性の記憶媒体に、所定のテーブルが格納されてなる。
なお、図6および上述した図1では、設定情報DB21およびユーザDB22がそれぞれサーバ装置20の外部に接続される構成としているが、これはこの例に限定されない。例えば、設定情報DB21およびユーザDB22のうち一方または両方を、ストレージ2003上の所定領域に構成してもよいし、設定情報DB21およびユーザDB22を共通する記憶媒体上に構成してもよい。
図7は、実施形態に係るサーバ装置20の機能を説明するための一例の機能ブロック図である。図7において、サーバ装置20は、設定項目取得部200と、設定値取得部201と、共通項目抽出部202と、設定値適用部203と、通信部204とを含む。
これら設定項目取得部200、設定値取得部201、共通項目抽出部202、設定値適用部203および通信部204は、CPU2000上で動作する情報処理プログラムにより構成される。これに限らず、設定項目取得部200、設定値取得部201、共通項目抽出部202、設定値適用部203および通信部204の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。
設定項目取得部200は、設定情報から各設定項目を取得する。設定値取得部201は、設定情報から、各設定項目に対応する各設定値を取得する。共通項目抽出部202は、設定元機器の設定情報と、設定先機器の設定情報との間で定義が同一の設定項目を抽出する。設定値適用部203は、共通項目抽出部202で抽出された各設定項目に対して、設定元機器の設定情報の対応する設定項目の設定値を適用させる。通信部204は、ネットワーク40を介した通信を行う。
実施形態に係るサーバ装置20の各機能を実現するための情報処理プログラムは、インストール可能な形式また実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、情報処理プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、情報処理プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。
情報処理プログラムは、上述した各部(設定項目取得部200、設定値取得部201、共通項目抽出部202、設定値適用部203および通信部204)を含むモジュール構成となっている。実際のハードウェアとしては、CPU2000がストレージ2003などの記憶媒体から当該情報処理プログラムを読み出して実行することにより、上述した各部がRAM2002などの主記憶装置上にロードされ、設定項目取得部200、設定値取得部201、共通項目抽出部202、設定値適用部203および通信部204が主記憶装置上に生成されるようになっている。
(実施形態に係る処理)
次に、実施形態に係る処理について、より詳細に説明する。図8は、実施形態に係る、設定元機器から設定先機器への設定情報のコピー処理を概略的に示す。この図8に示す処理は、例えば端末装置10からの指示に従い、サーバ装置20上で実行される。
サーバ装置20は、設定元機器の設定情報1と、設定先機器の機種に対応した各設定項目を示す項目情報2とを取得する。サーバ装置20は、設定元機器の設定情報1に含まれる各設定項目と、設定先機器の項目情報2に示される各設定項目とで定義が同一の設定項目を示す共通項目情報3を取得する。サーバ装置20は、共通項目情報3に対して設定元機器の設定情報1に含まれる設定値を適用して、設定先機器にコピーするための、設定先機器の設定情報4を生成する。
図9は、実施形態に係る、図8のコピー処理を示す一例のフローチャートである。図9において、ステップS30で、サーバ装置20は、端末装置10からの指示に従い、設定元機器の設定情報1を取得する。サーバ装置20は、例えば、設定元機器の設定情報1を、設定情報DB21から取得することができる。サーバ装置20は、取得した設定元機器の設定情報1から、設定項目取得部200(第1の取得部)により各設定項目を示す項目情報を取得する。また、サーバ装置20は、設定値取得部201(第2の取得部)により、各設定項目それぞれの設定値を取得する。
次のステップS31で、サーバ装置20は、さらに、端末装置10からの指示に従い、設定項目取得部200(第1の取得部)により、設定先機器の機種に対応した各設定項目を示す項目情報(設定先機器の項目情報2)を取得する。
次のステップS32で、サーバ装置20は、共通項目抽出部202により、ステップS30で取得した設定元機器の設定情報1に含まれる各設定項目と、ステップS31で取得した設定先機器の項目情報2に示される各設定項目とで定義が同一の設定項目を抽出し、抽出した設定項目を示す共通項目情報3を作成する。
次のステップS33で、サーバ装置20は、設定値適用部203により、ステップS32で作成した共通項目情報3が示す各設定項目に対して、ステップS30で取得した設定元機器の設定情報1に含まれる、設定項目が対応する設定値を適用する。
次のステップS34で、サーバ装置20は、ステップS33で各設定項目に設定値が適用された共通項目情報3を、設定先機器の設定情報4に反映させる。より具体的には、サーバ装置20は、共通項目情報3に含まれる各設定項目の設定値を、共通項目情報3に含まれる各設定項目にそれぞれ対応する、設定先機器の設定情報4の各設定項目に適用する。端末装置10は、共通項目情報3に含まれる各設定項目の設定値が適用された設定先機器の設定情報4を、サーバ装置20からダウンロードする。
(実施形態に係る処理の具体的な例)
次に、実施形態に係る処理について、より具体的な例を用いて説明する。先ず、上述した、設定情報に含まれる各設定項目の定義と識別情報とを関連付けるリソースファイルについて説明する。リソースファイルは、例えばMFP30a、30bの機種毎に作成される。表1および表2は、それぞれ機種「xxxx」および「yyyy」の機種に対応するリソースファイルの例を示す。
表1および表2の例では、リソースファイルは、1つの設定項目に対応するレコードを設定項目の数だけ含み、各レコードは、「機能名」、「設定項目名」および「コモンID」の各項目を含む。項目「機能名」は、そのレコードの設定項目に定義される機能のカテゴリを示す。項目「設定項目名」は、そのレコードの設定項目に定義される機能に与えられた名前を示す。項目「コモンID」は、そのレコードの設定項目に定義される機能を識別するための識別情報(コモンID)を示す。
これらレコードに含まれる各項目のうち、項目「機能名」および「コモンID」は、複数の機種間で定義が同一の機能について共通の値が用いられる。より具体的には、項目「コモンID」の値すなわちコモンIDに対して、1つの機能が関連付けられる。すなわち、項目「コモンID」の値は、機能に対してユニークな値である。項目「機能名」は、カテゴリが同一の機能に対して同一の値が共通して関連付けられる。一方、項目「設定項目名」は、複数の機種間において、定義が同一の機能に対して異なる値を用いることができる。
表1および表2の例では、項目「コモンID」の値「001」に対して、機種「xxxx」および「yyyy」において、項目「設定項目名」としてそれぞれ同一の値「aaa」が関連付けられている。一方、項目「コモンID」の値「003」に対して、機種「xxxx」では項目「設定項目名」が値「ccc」とされ、機種「yyyy」では、項目「設定項目名」として機種「xxxx」とは異なる値「ckk」が関連付けられている。
また、表1および表2の例では、機種「xxxx」および「yyyy」の各レコードを比較すると、機種「yyyy」のリソースファイルは、機種「xxxx」に含まれる、項目「コモンID」の値が「002」であるレコードを含まない。一方、機種「xxxx」のリソースファイルは、機種「yyyy」に含まれる項目「コモンID」の値が「030」であるレコードを含まない。
これらリソースファイルは、例えばサーバ装置20を含むシステムを管理するシステム管理者や、MFP30a、30bの販売元あるいは製造元などにより機種毎に予め作成され、設定情報DB21に登録される。各リソースファイルは、項目「コモンID」の値に関連付けられる機能にリソースファイル間で互いに矛盾が生じないように、作成される。
上述した図8および図9の処理の具体的な例について、表3〜表6を用いて説明する。表3は、図9のステップS30において取得される、設定元機器の設定情報1の例を示す。ここでは、設定元機器の機種の機種名を「xxxx」とする。設定情報は、1つの設定項目に対応するレコードを設定項目の数だけ含み、さらに、各設定項目に対して設定値が関連付けられる。
表3の例では、設定情報のレコードは、項目「機能名」、「設定項目名」および「設定値」を含む。なお、表3において、コモンIDの項目は、表1との比較のために示したもので、設定元機器の設定情報1には含まれない。また、機種名を示す項目「機種」は、各レコードに共通して含まれる。これらの各項目のうち、項目「機能名」および「設定項目名」は、表1を用いて説明したリソースファイルの各項目と対応している。より具体的には、表3は、機種「xxxx」の設定情報であるので、機種「xxxx」のリソースファイルを示す表1に対応している。
表4は、図9のステップS31において取得される、設定先機器の項目情報2の例を示す。ここでは、設定先機器の機種の機種名を「yyyy」とする。なお、表4においても、コモンIDの項目は、表2との比較のために示したもので、設定先機器の項目情報2には含まれない。表4に示されるように、設定先機器の項目情報2に含まれる項目「機能名」および「設定項目名」は、表2を用いて説明したリソースファイルの各項目と対応している。より具体的には、表4は、機種「yyyy」の設定情報であるので、機種「yyyy」のリソースファイルを示す表2に対応している。
表5は、表3に示した設定元機器の設定情報1における項目「設定値」を除く各項目と、表4に示した設定先機器の項目情報2とを合成した例を示す。ここで、項目「コモンID」は、例えば表3および表4の項目「設定項目名」に基づき表1および表2に示したリソースファイルをそれぞれ参照することで取得できる。すなわち、表3の例では、項目「設定項目名」の値が一致する、表1のリソースファイルの項目「コモンID」の値を取得する。
サーバ装置20は、表5の各レコードにおける項目「コモンID」の値を各レコード間で比較し、項目「コモンID」の値が機種間で一致するレコードを抽出する(図9のステップS32)。サーバ装置20は、抽出した各レコードにより共通項目情報3を作成する。表5の例では、項目「コモンID」の値が「001」、「003」および「004」のレコードが機種「xxxx」および「yyyy」のレコードに含まれている。したがって、サーバ装置20は、表4に示した設定先機器の項目情報2から、項目「コモンID」の値が「001」、「003」および「004」のレコードを抽出し、共通項目情報3を作成する。
なお、サーバ装置20は、設定元機器の設定情報1に含まれる各レコードにおける項目「コモンID」の値のうち、設定先機器の項目情報2に含まれる各レコードにおける項目「コモンID」の値として存在しない値に対応する、設定元機器の設定情報1に含まれるレコードを、共通項目情報3には含めない。表5の例では、設定元機器である機種「xxxx」の各レコードにおける項目「コモンID」の各値のうち、値「002」は、設定先機器である機種「yyyy」の各レコードにおける項目「コモンID」の値として存在しない。そのため、機種「xxxx」の項目「コモンID」の値「002」に対応するレコードは、共通項目情報3には含めない。
同様に、サーバ装置20は、設定先機器の項目情報2に含まれる各レコードにおける項目「コモンID」の値のうち、設定元機器の設定情報1に含まれる各レコードにおける項目「コモンID」の値として存在しない値に対応する、設定先機器の項目情報2に含まれるレコードを、共通項目情報3には含めない。表5の例では、設定先機器である機種「yyyy」の各レコードにおける項目「コモンID」の各値のうち、値「030」は、設定元機器である機種「xxxx」の各レコードにおける項目「コモンID」の値として存在しない。そのため、機種「yyyy」の項目「コモンID」の値「030」に対応するレコードは、共通項目情報3には含めない。
サーバ装置20は、共通項目情報3に含まれる各レコードに対して、設定元機器の設定情報1における項目「コモンID」の値が対応する各レコードにおける項目「設定値」の値を適用し、設定先機器の設定情報4を作成する(図9のステップS33)。
表6は、このように表5に基づき作成された設定先機器の設定情報4の例を示す。設定先機器の設定情報4は、設定元機器の設定情報1と、設定先機器の項目情報2とで項目「コモンID」の値が一致する各レコードを含む。設定先機器の設定情報4に含まれる各レコードの項目「機能名」および「設定項目名」の各値は、設定先機器の項目情報2の対応する項目の値が適用される。また、設定先機器の設定情報4に含まれる各レコードの項目「設定値」の値は、設定元機器の設定情報1の項目「コモンID」の値が一致するレコードの項目「設定値」の値が適用される。
なお、表6において、項目「コモンID」は、表5との比較のために示したもので、実際の設定先機器の設定情報4には含まれない。
表7〜表10は、上述した表3〜表6の各レコードに、より具体的な値を適用した例を示す。表7は、上述の表3に対応する、設定元機器の設定情報1の具体的な例を示す。機種「MFP001」において、各レコードは、項目「設定項目名」の値が「省エネ復帰設定」、「画面表示切り替え」、「アイコン表示位置」および「手差し用紙詰まり防止排出設定」とされ、それぞれ値「1000001」、「1000002」、「1000003」および「1000004」のコモンIDに関連付けられているものとする。また、各レコードには、項目「設定値」の値がそれぞれ「ON」、「ブルーグレイ」、「X100,Y100」および「OFF」とされている。
表8は、上述の表4に対応する、設定先機器の項目情報2の具体的な例を示す。機種「MFP002」において、各レコードは、項目「設定項目名」の値が「省エネ復帰設定」、「画面表示色設定」、「アイコン表示位置」および「ページ印字サイズ設定」とされ、それぞれ値「1000001」、「1000002」、「1000003」および「3300000」のコモンIDが関連付けられているものとする。
これらのうち、値「1000002」のコモンIDに対応するレコードにおける項目「設定項目名」の値が「画面表示色設定」とされている。これに対し、表7に示した設定元機器の設定情報1におけるコモンIDの値が一致するレコードにおける項目「設定項目名」の値が「画面表示切り替え」となっており、設定先機器の項目情報2における、対応するコモンIDの値が一致するレコードの項目「設定項目名」の値と異なっている。
表9は、上述した表5に対応し、表7に示した設定元機器の設定情報1における項目「設定値」を除く各項目と、表8に示した設定先機器の項目情報2とを合成した例を示す。項目「コモンID」は、表5の例と同様に、例えば表7および表8の項目「設定項目名」に基づき機種が対応するリソースファイルをそれぞれ参照することで取得できる。
表10は、上述した表6に対応し、表7〜表9に基づき作成された設定先機器の設定情報4の具体的な例を示す。上述したように、設定先機器の設定情報4は、設定元機器の設定情報1と、設定先機器の項目情報2とで項目「コモンID」の値が一致する各レコードを含む。表10の例では、設定先機器の設定情報4は、表9における項目「コモンID」の値が「1000001」、「1000002」および「1000003」の各レコードを含む。
また、機種「MFP001」および「MFP002」の各レコードのうち、項目「コモンID」の値が「1000002」のレコードは、項目「設定項目名」の値が機種「MFP001」では「画面表示切り替え」、機種「MFP002」では「画面表示色設定」と異なる(表7〜表9参照)。表10に示す設定先機器の設定情報4では、当該レコードについて、項目「設定項目名」の値として、設定先機器である機種「MFP002」の対応するレコードにおける項目「設定項目名」の値「画面表示色設定」が適用されている。また、当該レコードについて、項目「設定値」の値として、設定元機器である機種「MFP001」の対応するレコードにおける項目「設定値」の値「ブルーグレイ」が適用されている。
なお、設定先機器の設定情報4は、設定元機器の設定情報1と、設定先機器の項目情報2とで項目「コモンID」の値が一致する各レコードのうち、設定元機器の設定情報1において設定値が初期値から変更されたレコードを選択的に用いて作成してもよい。
このように、実施形態では、サーバ装置20が、設定元機器の設定情報1と、設定先機器の項目情報2とに含まれる設定項目名に対応するコモンIDの値に基づき、設定先機器の項目情報2に含まれるレコードを抽出する。そして、サーバ装置20は、設定先機器の項目情報2から抽出した各レコードに対して、設定元機器の設定情報1の、対応するコモンIDの値が設定先機器の項目情報2から抽出した各レコードに対応するコモンIDの値と一致する各レコードにおける項目「設定値」の値を適用している。
そのため、実施形態では、設定元機器と設定先機器とで定義が同一の機能に対する機能名や設定項目名が、設定元機器と設定先機器との間で異なっていても、設定元機器の設定情報1の、設定先機器の設定情報4に対するコピーを容易に実行できる。
(実施形態に係る端末装置のUI)
上述したように、実施形態に係る、設定元機器の設定情報1および設定先機器の項目情報2の取得処理、共通項目情報3の抽出処理、および、設定先機器の設定情報4の作成処理は、サーバ装置20において実行される。これらサーバ装置20上で実行される各処理は、端末装置10からの指示に応じて実行される。以下に、サーバ装置20に各処理を実行させるための、実施形態に係る端末装置10のUIについて説明する。
(実施形態に係る設定情報の登録処理)
図10は、実施形態に係る、設定情報のサーバ装置20への登録処理を示す一例のフローチャートである。
これら図10のフローチャートにおける各処理は、例えば、端末装置10がブラウザ100によりサーバ装置20から取得したプログラム(組み込みツール)がCPU1000上で実行されることで構成されるUI制御部110、読出部111および書込部112により実行される。なお、以下では、図1のMFP30aの機種を機種「MFP001」とし、MFP30bの機種を機種「MFP002」とし、機種「MFP001」の設定情報を機種「MFP002」にコピーするものとして説明を行う。
図10において、サーバ装置20から取得された組み込みツールが、ユーザ操作に応じて端末装置10上で実行されると、ステップS100で、端末装置10は、サーバ装置20へのログイン処理を行う。ログイン処理において、端末装置10は、UI制御部110により、端末装置10のディスプレイ1004にログイン画面を表示させる。以降、UI制御部110が端末装置10のディスプレイ1004に画面を表示させる動作を、単に、UI制御部110が画面を表示させる、などのように記載する。
図11は、実施形態に適用可能な、UI制御部110により端末装置10のディスプレイ1004に表示されるログイン画面の例を示す。図11において、ログイン画面500は、入力領域5001および5002と、ボタン5003とを含む。入力領域5001および5002は、それぞれ、サーバ装置20のユーザDB22に予め登録されたユーザIDおよびパスワードを入力するための領域である。ボタン5003は、サーバ装置20にログインを要求するためのログインボタンである。
UI制御部110は、ボタン5003に対する操作に応じて、入力領域5001および5002に入力されたユーザIDおよびパスワードをサーバ装置20に送信するよう、OS101に依頼する。OS101は、この依頼に応じて、通信I/F1008を制御してユーザIDおよびパスワードをサーバ装置20に送信し、サーバ装置20に対してログインを要求する。以降、UI制御部110がOS101に通信を依頼し、OS101がこの依頼に応じて通信I/F1008を制御して通信を行うことを、単に、UI制御部110が通信を行う、などのように記載する。
サーバ装置20は、端末装置10からの要求に応じて、端末装置10から送信されたユーザIDおよびパスワードに基づきユーザDB22を参照して、このユーザIDのユーザに対する認証処理を行う。サーバ装置20は、認証に成功すると、認証成功の通知を端末装置10に送信する。
端末装置10は、サーバ装置20から認証成功の通知を受信すると、ステップS101で、UI制御部110によりホーム画面を表示させる。図12は、実施形態に係るUI制御部110により表示されるホーム画面の例を示す。図12において、ホーム画面501は、ボタン5011〜5016を含む。ボタン5011〜5014は、メニューボタンであって、それぞれ組み込みツールにおける機能を実行させる。
より詳細には、ボタン5011は、設定情報のサーバ装置20へのアップロード(UL)機能を実行させる。ボタン5012は、設定情報DB21に登録済みの設定情報を選択する選択機能を実行させる。ボタン5013は、設定情報の新規作成の機能を実行させる。また、ボタン5014は、ログイン時に入力したユーザIDに対応する履歴を参照する機能を実行させる。
ボタン5015は、システム(サーバ装置20)からのメッセージを表示させる。例えば、UI制御部110は、ホーム画面501を表示させる際に、サーバ装置20と通信を行い、メッセージの有無を問い合わせる。メッセージがある場合、UI制御部110は、サーバ装置20からメッセージを取得し、例えばボタン5015の近傍にメッセージがあることを示すインジケータを表示させる。この状態でボタン5015が操作されると、UI制御部110は、当該メッセージを表示させるためのメッセージ画面をポップアップ表示させる。
図13は、実施形態に適用可能な、UI制御部110により表示されるメッセージ画面の例を示す。図13において、メッセージ画面502は、メッセージ表示領域5021と、ボタン5022とを含む。ボタン5022は、このメッセージ画面502を閉じるためのボタンである。メッセージ表示領域5021は、メッセージが発行された日付と、メッセージの概要とが表示される。メッセージ表示領域5021の右端のボタンを操作することで、メッセージの詳細を表示させる詳細表示画面が表示される。
図14は、実施形態に適用可能な、UI制御部110により表示される詳細表示画面の例を示す。図14において、詳細表示画面503は、表示領域5031および5032と、ボタン5033とを含む。表示領域5031は、上述したメッセージ表示領域5021と同様に、メッセージが発行された日付と、メッセージの概要とが表示される。表示領域5032は、メッセージの詳細が表示される。ボタン5033は、この詳細表示画面503を閉じるためのボタンである。
説明は図10に戻り、ステップS102で、UI制御部110は、ホーム画面501に対するユーザ操作を待機し、ユーザ操作があった場合、そのユーザ操作の判定を行う。ここでは、ホーム画面501においてボタン5011、5012および5013の何れかが操作された場合について説明する。
ステップS102で、UI制御部110は、ボタン5011が操作されたと判定した場合(ステップS102、「UL」)、処理をステップS110に移行させる。ステップS110で、UI制御部110は、メモリカードI/F1006に対するメモリカード31aの装着を待機する。UI制御部110は、メモリカードI/F1006にメモリカード31aが装着されていないと判定した場合(ステップS110、「無し」)、処理をステップS110に戻す。一方、UI制御部110は、メモリカードI/F1006にメモリカード31aが装着されていると判定した場合(ステップS110、「有り」、処理をステップS111に移行させる。
ステップS111で、端末装置10において読出部111は、メモリカードI/F1006に装着されたメモリカード31aから、設定情報を読み出す。ここで読み出される設定情報は、設定元機器の設定情報1である。このメモリカード31aからの設定情報の読み出しの際に、UI制御部110は、設定情報のアップロードに係る情報を入力するアップロード情報入力画面を表示させる。
図15は、実施形態に係るUI制御部110により表示されるアップロード情報入力画面の例を示す。図15において、アップロード情報入力画面504は、ファイル選択領域5040と、機種名表示領域5040bと、入力領域5041〜5046と、ボタン5047〜5049とを含む。
ファイル選択領域5040は、メモリカードI/F1006に装着されたメモリカード31aに記憶されるファイルから、設定情報が格納されたファイルを選択する。より具体的には、ファイル選択領域5040に含まれるボタン5040aを操作することで、メモリカード31aに記憶されるファイルの一覧が表示される。このとき、ファイルの拡張子などに基づき、設定情報が格納されたファイルを選択的に表示させると好ましい。機種名表示領域5040bは、ファイル選択領域5040において選択されたファイルに格納される設定情報に含まれる機種名が表示される。なお、1つのファイルは1つの設定情報を格納しているものとする。
入力領域5041は、ファイル選択領域5040において選択されたファイルに格納される設定情報を保存する、設定先機器の機種名を入力する。入力領域5041は、デフォルトの状態では、ファイル選択領域5040において選択されたファイルに格納される設定情報に含まれる機種名が表示される。
一方、設定先機器の機種が設定元機器の機種と異なる場合には、入力領域5041に対して当該設定先機器の機種名を入力する。このとき、入力領域5041に含まれるボタン5041aを操作することで、設定先機器として選択可能な機種の機種名が一覧表示される。例えば、UI制御部110は、ボタン5041aが操作されると、サーバ装置20に対して、設定情報DB21に登録される設定情報およびリソースファイルに係る機種名を問い合わせる。UI制御部110は、問い合わせに応じてサーバ装置20から取得した各機種名を一覧表示させる。
入力領域5042は、鍵情報が入力される。すなわち、例えばMFP30aは、メモリカード31aに転送する設定情報に対して、設定情報の暗号化および復号を行うための鍵情報を、ユーザ操作に応じて設定することができる。MFP30aは、設定された鍵情報に基づき設定情報を暗号化してメモリカード31aに転送する。ファイル選択領域5040において選択されたファイルに格納される設定情報が暗号化されている場合、入力領域5042に対して、当該暗号化に対応する鍵情報を入力する。
入力領域5043、5044および5045は、それぞれ、カスタマの名前、コメント、および、プロジェクトコードが入力される。
入力領域5046は、チェックボックスであって、ファイル選択領域5040において選択されたファイルに格納される設定情報に対して公開範囲を設定するか否かを設定する。入力領域5046において、公開範囲の設定が可とされた場合、ボタン5047が有効となる。ボタン5047は、当該設定情報を公開する範囲を設定するための公開範囲設定画面を表示させる。
一例として、ユーザDB22は、ユーザIDと、当該ユーザIDのユーザの所属や役職などを関連付けて登録すると共に、所属および役職の一覧を登録しているものとする。UI制御部110は、ボタン5047の操作に応じてユーザDB22から所属および役職の一覧を取得し、端末装置10に表示させる。UI制御部110は、この一覧からユーザ操作に応じて指定された所属や役職を、当該設定情報を公開する範囲として設定することが考えられる。これに限らず、UI制御部110は、特定のユーザIDのユーザに対して限定的に当該設定情報を公開するようにすることも可能である。
ボタン5048は、メモリカード31aからファイル選択領域5040で選択されたファイルを読み出すためのボタンである。UI制御部110は、このボタン5048に対するユーザ操作に応じて、メモリカード31aから当該ファイルを読み出すよう読出部111に指示する。読出部111は、この指示に応じてメモリカード31aから当該ファイルを読み出す。読出部111は、読み出したファイルを、例えばRAM1002やストレージ1005に一時的に記憶する。
表11および表12を用いて、ファイルに格納される設定情報の具体的な例について説明する。設定情報は、ヘッダ情報と、設定項目毎のレコードとを含む。
表11は、ヘッダ情報の例を示す。表11の例では、ヘッダ情報は、項目「FileID」、「Date」、「SerialNo」、「Brand」、「PnP」、「ModelID」、「Destination」、「Composition」、「TotalItemNum」、「Encrypt」、「Identifier」および「Sum」を含む。各項目は、それぞれ内容が「設定情報ファイルID」、「設定情報ファイルの作成日時」、「機器の機番」、「機器のメーカー名」、「機器のPnP名称」、「機器のモデルID」、「機器の仕向け」、「機器の構成情報」、「総項目数」、「暗号化有無」、「項目識別子」および「チェックサム」とされている。
これらのうち、項目「Brand」、「PnP」および「ModelID」は、組み合わせて機器の機種を示す。なお、項目「PnP」は、Plug and Playにおける名前を示す。また、項目「SerialNo」は、機器毎にユニークな値であり、機器を識別するために用いる。
表12は、設定項目毎のレコードに含まれる各項目の例を示す。表12において、「属性名」は、上述した表1〜表10における項目に対応する。すなわち、各レコードは、項目「ModuleID」、「PrefID」、「Secret」、「Unique」、「ItemCode」、「Binary」、「ValueCode」、「Item」および「Value」を含む。各項目は、それぞれ内容が「モジュールID」、「プリファレンスID」、「機密情報」、「機器固有情報」、「項目名文字コード」、「設定値バイナリデータ」、「設定値文字コード」、「項目名」および「設定値」とされている。
これらのうち、項目「Item」および「Value」は、表1〜表10における項目「設定項目名」および「設定値」にそれぞれ対応する。また、項目「ModuleID」および「PrefID」は、この設定情報が対応する機種における識別情報であり、機種間で共通な識別情報であるコモンIDとは異なる。
説明は図15に戻り、ボタン5049は、機種名表示領域5040b、および、入力領域5041〜5046に入力された情報を破棄し、このアップロード情報入力画面504を閉じる。UI制御部110は、アップロード情報入力画面504を閉じた後、処理をステップS101に戻してホーム画面501を表示させる。
説明は図10のフローチャートに戻り、ステップS111で、読出部111によりメモリカード31aから設定情報が読み出されると、処理がステップS112に移行される。ステップS112で、UI制御部110は、ステップS111で読み出された設定情報を、サーバ装置20に送信する。このとき、UI制御部110は、設定情報に、アップロード情報入力画面504の入力領域5041〜5046で入力された各情報を付加してサーバ装置20に送信する。サーバ装置20は、端末装置10から送信された設定情報を受信して、設定情報DB21に登録する。
ステップS112で設定情報がサーバ装置20に送信され設定情報DB21に登録されると、処理がステップS140に移行される。詳細は後述するが、ステップS140で、UI制御部110は、設定情報の編集を行うための編集画面を表示する。
上述したステップS102で、UI制御部110は、ボタン5013が操作されたと判定した場合(ステップS102、「新規作成」)、処理をステップS120に移行させる。ステップS120で、UI制御部110は、新規に作成する設定情報を適用する機種(新規作成対象機種と呼ぶ)などを指定する。
図16は、実施形態に係るUI制御部110により表示される、新規作成対象機種などを指定するための作成・編集設定画面の例を示す。図16において、作成・編集画面509は、入力領域5090〜5095と、ボタン5096〜5098とを含む。
入力領域5090は、設定情報を新規に作成する対象の機種名が入力される。このとき、入力領域5090に含まれるボタン5090aを操作することで、新規作成対象機種として選択可能な機種の機種名が一覧表示される。図15において説明したボタン5041aの場合と同様に、UI制御部110は、ボタン5090aに対する操作に応じて、サーバ装置20から各機種名を取得し、取得した各機種名を一覧表示させる。
入力領域5091は、新規作成対象機種の仕向地が入力される。入力領域5091に含まれるボタン5091aを操作することで、仕向地として指定可能な例えば地域名が一覧表示される。入力領域5092、5093および5094は、それぞれ、新規作成対象機種に関するカスタマの名前、コメント、および、プロジェクトコードが入力される。
入力領域5095は、チェックボックスであって、この作成・編集画面509において指定された新規作成対象機種について設定される設定情報を特定のユーザに限定して公開したい場合にチェックする。ボタン5096は、当該設定情報を公開する範囲を設定するための公開範囲設定画面を表示させる。
ボタン5097は、入力領域5090〜5095に入力された各情報、および、ボタン5096の操作に応じて設定された公開範囲情報を確定し、確定された各情報をサーバ装置20に送信するためのボタンである。また、ボタン5098は、入力領域5090〜5095に入力された各情報、および、ボタン5096の操作に応じて設定された公開範囲情報を破棄し、この作成・編集画面509を閉じる。UI制御部110は、ボタン5098が操作され作成・編集画面509が閉じられた場合に、処理をステップS101に戻すことができる。
説明は図10のフローチャートに戻り、図16の作成・編集画面509においてボタン5097が操作されると、処理がステップS121に移行される。ステップS121で、UI制御部110は、ボタン5097が操作されたことで確定された各情報をサーバ装置20に送信し、サーバ装置20に、新規作成対象機種に対応する設定情報のテンプレートを要求する。テンプレートは、例えば各設定項目の値が初期値とされた設定情報である。
次のステップS122で、UI制御部110は、この要求に応じてサーバ装置20から送信された設定情報のテンプレートを取得する。UI制御部110は、取得したテンプレートを、例えばRAM1002上の記憶領域におけるブラウザ100の管理領域に一時的に記憶する。テンプレートが取得されると、処理がステップS140に移行される。UI制御部110は、ステップS140で、取得したテンプレートを編集対象の設定情報として、設定情報の編集画面を表示する(詳細は後述する)。
上述したステップS102で、UI制御部110は、ボタン5012が操作されたと判定した場合(ステップS102、「選択」)、処理をステップS130に移行させる。
ステップS130で、UI制御部110は、登録済みの設定情報をサーバ装置20に問い合わせる。次のステップS131で、UI制御部110は、ステップS130での問い合わせに応じてサーバ装置20から送信された登録済みの設定情報を取得する。UI制御部110は、取得した設定情報を、例えばRAM1002上の記憶領域におけるブラウザ100の管理領域に一時的に記憶する。
次のステップS132で、UI制御部110は、ステップS131で取得した登録済みの設定情報から、ユーザ操作に応じて、編集対象の設定情報を指定する。UI制御部110は、編集対象の設定情報が指定された場合に、処理をステップS140に移行させて、指定された設定情報を編集するための編集画面を表示させる(詳細は後述する)。
ステップS130〜ステップS132の処理を、より具体的に説明する。ステップS130において、UI制御部110は、例えば、ステップS100のログイン処理において認証されたユーザIDをサーバ装置20に送信し、当該ユーザIDのユーザが編集可能な設定情報をサーバ装置20に問い合わせる。サーバ装置20は、例えば、端末装置10から送信されたユーザIDに基づき設定情報DB21およびユーザDB22を参照して、設定情報DB21に登録済みの設定情報から当該ユーザIDのユーザが公開範囲に含まれる設定情報を抽出する。サーバ装置20は、抽出した設定情報を端末装置10に送信する。
サーバ装置20から送信された設定情報は、端末装置10に受信されてUI制御部110に取得される(ステップS131)。UI制御部110は、取得した設定情報から編集対象の設定情報を選択するための設定情報選択画面を表示させる。
図17は、実施形態に係る、UI制御部110に表示される設定情報選択画面の例を示す。図17において、設定情報選択画面505は、ソートメニュー領域5052と、検索入力領域5053と、表示制御ボタン5054と、設定情報一覧表示領域5055とを含む。
UI制御部110は、ステップS131でサーバ装置20から取得した登録済みの各設定情報を、設定情報一覧表示領域5055に表示する。図17の例では、複数の設定情報について、それぞれの概要が、設定情報一覧表示領域5055に含まれる各表示領域5055a〜5055dに表示されている。各表示領域5055a〜5055dに含まれる各ボタン5056a〜5056dの何れかを操作することで、対応する設定情報が編集対象の設定情報として指定され(ステップS132)、処理がステップS140に移行される。ステップS140では、ステップS132で指定された編集対象の設定情報の編集を行う。
図17において、ソートメニュー領域5052は、サーバ装置20から取得した各設定情報を設定情報一覧表示領域5055に表示させる際のソート方法を指定する。例えば、ソートメニュー領域5052は、設定情報の作成日時、カスタマ名、機種名、および、設定情報の作成者の何れかに基づくソート方法を指定可能であって、図17の例では、設定情報の作成日時に基づくソート方法が指定されている。検索入力領域5053は、サーバ装置20から取得した各設定情報から所望の設定情報を検索するための文字列が入力される。
「+」および「−」表記の一対の表示制御ボタン5054は、設定情報一覧表示領域5055において各表示領域5055a〜5055dの表示を展開表示するか、省略表示とするかを指定する。図17は、各表示領域5055a〜5055dの表示が展開表示されている例である。
また、設定情報一覧表示領域5055において、各表示領域5055a〜5055dは、表示される設定情報の属性毎にグループ化することができる。図17の例では、各表示領域5055a〜5055dは、表示される設定情報の作成日時毎にグループ化されている。
上述したステップS132からステップS140への移行処理を、より具体的に説明する。UI制御部110は、ステップS132における、例えば各ボタン5056a〜5056dの何れかに対する操作に応じて、図18に例示される、実施形態に係る編集メニュー画面506を表示させる。
図18の例では、編集メニュー画面506は、設定情報選択画面505で指定された編集対象の設定情報に対する処理を指定するための、ボタン5060〜5064が含まれる。なお、編集メニュー画面506に含まれるボタン5065は、キャンセルボタンであって、例えば、UI制御部110は、ボタン5065に対する操作に応じて編集メニュー画面506を閉じて処理をステップS101に戻す。
編集メニュー画面506において、ボタン5060は、編集対象の設定情報の属性情報を編集する属性情報編集画面を表示させる。ボタン5061は、編集対象の設定情報の編集を行うための編集画面を表示させる。ボタン5062は、編集対象の設定情報のコピーを行うためのコピー画面を表示させる。ボタン5063は、編集対象の設定情報の削除を行うための削除画面を表示させる。また、ボタン5064は、編集対象の設定情報をメモリカード31bに保存させるための保存画面を表示させる。
これらボタン5060〜5064のうち、ボタン5061が操作された場合に、処理がステップS140に移行される。他のボタン5060、ならびに、ボタン5062〜5064が操作された場合の処理については、後述する。
説明は図10のフローチャートに戻り、上述したステップS112、ステップS122またはステップS132の処理の実行後、処理がステップS140に移行される。ステップS140で、UI制御部110は、設定情報を編集するための編集画面を表示させる。
ここで、処理がステップS112からステップS140に移行した場合には、編集画面は、メモリカード31aから読み出されてサーバ装置20に送信された設定情報が編集対象とされる。例えば、UI制御部110は、ステップS112でサーバ装置20に送信され設定情報DB21に登録された設定情報をサーバ装置20に対して要求し、この要求に応じてサーバ装置20から送信された登録済みの設定情報を、編集画面における編集対象とする。
また、処理がステップS122からステップS140に移行した場合には、編集画面は、ステップS122で取得されたテンプレートが編集対象とされる。さらに、処理がステップS132からステップS140に移行した場合には、ステップS132で指定された設定情報が編集対象とされる。
次のステップS141で、UI制御部110は、編集画面による設定情報の編集が終了したか否かを判定する。UI制御部110は、編集が終了していないと判定した場合(ステップS141、「No」)、処理をステップS141に戻す。
一方、UI制御部110は、編集が終了したと判定した場合(ステップS140、「Yes」)、処理をステップS142に移行する。ステップS142で、UI制御部110は、サーバ装置20に対して、編集が終了した設定情報の設定情報DB21への登録を要求する。このとき、UI制御部110は、設定情報の登録を、対応する設定情報に対する上書き保存により行うか、例えば別名を設定して新規の設定情報として行うかを指定できる。
図19は、実施形態に係る、UI制御部110により表示される編集画面の例を示す。図19において、編集画面510は、検索入力領域5101と、ボタン5102、5103、5107〜5109と、機能タブ領域5104と、項目表示領域5105とを含む。
編集画面510において、ボタン5103は、編集メニューを表示させるためのボタンである。UI制御部110は、ボタン5103に対する操作に応じて、図20に例示するような、実施形態に係る編集メニュー520を表示させる。なお、図20において、図19と共通する部分には同一の符号を付して、詳細な説明を省略する。
図20の例では、編集メニュー520は、ボタン521および522を含む。ボタン521は、プルダウンメニューとなっており、UI制御部110は、ボタン521に対する操作に応じて、この編集画面510で用いる言語を選択する。ボタン522は、この編集画面510で編集中の設定情報と比較する比較対象の設定情報を選択する比較情報選択画面を表示させるためのボタンである。
図21は、実施形態に係る、UI制御部110に表示される比較情報選択画面の例を示す。図21において、比較情報選択画面514は、ソートメニュー領域5140と、検索入力領域5141と、表示制御ボタン5142と、設定情報一覧表示領域5143とを含む。これらソートメニュー領域5140、検索入力領域5141、表示制御ボタン5142および設定情報一覧表示領域5143は、上述した図17の設定情報選択画面505におけるソートメニュー領域5052、検索入力領域5053、表示制御ボタン5054および設定情報一覧表示領域5055にそれぞれ対応する。
比較情報選択画面514において、複数の設定情報について、それぞれの概要が、設定情報一覧表示領域5143に含まれる各表示領域5143a〜5143cに表示される。各表示領域5143a〜5143cに含まれる各ボタン5144a〜5144cの何れかを操作することで、対応する設定情報が比較対象の設定情報として指定される。図21の例では、ボタン5144aが操作され、表示領域5143aに対応する設定情報が比較対象の設定情報として指定されている。例えば、この状態で比較情報選択画面514を閉じることで、比較対象の設定情報が表示領域5143aに対応する設定情報に確定される。
図19の説明に戻り、編集画面510において、機能タブ領域5104は、後述する項目表示領域5105に表示される項目の種類を指定するための複数のタブを含む。図19の例では、機能タブ領域5104は、9個のタブが2段に配置されている。
これら9個のタブのうち、図中に斜線を付して示すタブ5104aおよび5104b以外の7個のタブは、それぞれ、この編集画面510が編集対象としている設定情報が対応する機器(例えばMFP30a)の各機能が割り当てられる機能タブである。UI制御部110は、この7個のタブのうちユーザ操作に応じて指定されたタブに割り当てられる機能に対応する設定項目の設定項目名を、項目表示領域5105に一覧表示させる。
なお、項目表示領域5105に一覧表示される設定項目名は、項目表示領域5105内の表示を所定の操作でスクロールすることで項目表示領域5105内に表示される設定項目名を含む。
UI制御部110は、各設定項目名(および値)を、項目表示領域5105内において階層表示させることができる。最上位の第1階層5105aは、機能タブ領域5104における機能タブにより指定された機能に対応している。第1階層5105aに対して下位の第2階層5105b1および5105b2は、例えばグループ化を可能に指定された設定項目の設定項目名が含まれる。設定項目は、例えば、設定項目に含まれる項目「ModuleID」(表12参照)に基づきグループ化することができる。
UI制御部110は、第1階層5105a、ならびに、第2階層5105b1および5105b2の表示を、それぞれの表示領域の左端に配置されるボタン5106a、ならびに、ボタン5106b1および5106b2の操作に応じて、簡略表示と詳細表示とで切り替えることができる。図19の例では、第1階層5105aおよび第2階層5105b1が詳細表示とされ、第2階層5105b2が簡略表示とされている。また、UI制御部110は、編集画面510に含まれる「+」および「−」表記の一対のボタン5102に対する操作に応じて、項目表示領域5105内に表示される全ての階層の表示を、簡略表示と詳細表示とで切り替えることができる。
UI制御部110は、項目表示領域5105において、ユーザ操作による各設定項目名の指定に応じて、指定された設定項目名が示す設定項目に応じた設定値変更画面を表示させる。図22は、実施形態に係る、UI制御部110に表示される設定値変更画面の例を示す。図22において、設定値変更画面511は、入力領域5110および5111と、ボタン5112および5113とを含む。入力領域5110は、チェックボックスであって、この設定値変更画面511が対応する設定項目の設定値を初期化するか否かを設定する。
入力領域5111は、この設定値変更画面511が対応する設定項目の設定値が入力される。図22の例では、入力領域5111は、ドロップダウンリストを表示させるボタン5111aを含み、入力する値を、このボタン5111aに対する操作により表示されるドロップダウンリストから選択するようになっている。これはこの例に限らず、入力領域5111は、設定値を直接的に入力する形式でもよい。UI制御部110は、入力領域5111に入力された値を、例えばRAM1002上の記憶領域におけるブラウザ100の管理領域に一時的に記憶する。
ボタン5112は、入力領域5111に入力されRAM1002に一時的に記憶された設定値を、サーバ装置20に送信するためのボタンである。UI制御部110は、ボタン5112に対する操作に応じて当該設定値をサーバ装置20に送信し、サーバ装置20に対して当該設定値の更新を依頼する。また、UI制御部110は、ボタン5112に対する操作に応じてこの設定値変更画面511を閉じる。ボタン5113は、入力領域5110および5111に入力された値を破棄して、この設定値変更画面511を閉じる。
なお、UI制御部110は、入力領域5110のチェックボックスにチェックが入った状態でボタン5112が操作されると、設定値を初期化または空白としてサーバ装置20に送信する。
機能タブ領域5104に配置されるタブ5104aは、機能タブ領域5104における機能タブにより指定された機能に対応する設定項目のうち、値が変更された設定項目の設定項目名とその値を、編集画面510内に一覧表示させるためのタブである。
図23は、実施形態に係る、タブ5104aの操作に応じて、値が変更された設定項目の設定項目名とその値とを含む変更項目領域512が編集画面510内に表示された例を示す。変更項目領域512は、設定項目名5120a、変更後の設定値5120bおよび変更前の設定値5120cの各項目を含むテーブル5120が表示される。
例えば、UI制御部110は、タブ5104aに対する操作に応じて、編集対象の設定情報をサーバ装置20から取得し、取得した設定情報の各設定値と、RAM1002上のブラウザ100の管理領域に一時的に記憶される設定値とを比較する。UI制御部110は、比較結果に基づき、同一の設定項目で値が異なる設定値を抽出して、テーブル5120を作成する。
また、機能タブ領域5104に配置されるタブ5104bは、上述の編集メニュー520のボタン522の操作に応じて比較対象として選択された設定情報と、編集対象の設定情報とを比較するためのタブである。
図24は、実施形態に係る、タブ5104bの操作に応じて、比較対象として選択された設定情報と、編集対象の設定情報とを比較した比較結果を含む比較結果領域515が編集画面510内に表示された例を示す。比較結果領域515は、編集対象の設定情報において設定値が変更された設定項目の設定項目名5150aと、当該設定項目の設定値5150bと、当該設定項目に対応する比較対象の設定情報における設定項目の設定値5150cとの各項目を含む、比較結果を示すテーブル5150が表示される。
また、比較結果領域515に含まれるボタン5151は、比較結果を示すテーブル5150をCSV(Comma-Separated Values)形式など所定のフォーマットで保存するためのボタンである。また、ボタン5152は、テーブル5150に含まれる各設定値に基づき異なる設定情報を作成するためのボタンである。
説明は図19に戻り、編集画面510において、ボタン5107は、設定情報の上書きによる登録を指示する。また、ボタン5108は、設定情報の別名での登録を指示する。
より具体的には、UI制御部110は、ボタン5107に対するユーザ操作に応じて、RAM1002のブラウザ100の管理領域に一時的に記憶される設定情報をサーバ装置20に送信する。このとき、UI制御部110は、サーバ装置20に対して、送信した設定情報を、設定情報DB21において上書きにて登録するように要求する。この要求に応じて、サーバ装置20は、端末装置10から受信した設定情報を、設定情報DB21に登録済みの対応する設定情報に対して上書きして登録する。
また、UI制御部110は、ボタン5108に対するユーザ操作に応じて、名前を設定する画面を表示する。UI制御部110は、当該画面にて名前が設定されると、RAM1002のブラウザ100の管理領域に一時的に記憶される設定情報と、設定した名前とをサーバ装置20に送信する。UI制御部110は、送信した設定情報を設定した名前で設定情報DB21に登録するように要求する。この要求に応じて、サーバ装置20は、端末装置10から受信した設定情報を、設定された名前で設定情報DB21に登録する。
編集画面510において、ボタン5109は、設定情報のメモリカード31bへの書き込みを指示する。UI制御部110は、ボタン5109に対する操作に応じて、設定情報をダウンロード(DL)してメモリカード31bへの書き込み保存するための保存画面を表示させる。この保存画面については、後述する。
編集画面510において、ボタン5107および5108の何れかが操作されることで、上述したステップS141において編集が終了したと判定され(ステップS141、「Yes」)、処理がステップS142に移行される。上述したように、UI制御部110は、ステップS142で、編集が終了した設定情報をサーバ装置20に送信し、当該設定情報の設定情報DB21への登録を要求する。このとき、UI制御部110は、設定情報の登録を、対応する設定情報に対する上書きにより行うか、別名を設定して新規の設定情報として行うかを指定できる。
ステップS142で設定情報の設定情報DB21への登録が完了すると、図10のフローチャートによる一連の処理が終了される。
ここで、上述した図18の編集メニュー画面506においてボタン5060、ならびに、ボタン5062〜5064が操作された場合の処理について説明する。
図25は、実施形態に係る、UI制御部110により表示される編集メニュー画面506のボタン5060に対する操作に応じて表示される属性情報編集画面の例を示す。図25において、属性情報編集画面516は、表示領域5160、5162および5168と、入力領域5161、5163、5164、5165および5166と、ボタン5167、および、ボタン5169〜5171とを含む。
属性情報編集画面516において、表示領域5160および5162は、それぞれ、編集対象の設定情報の識別情報(例えば設定情報のファイルID)と、当該設定情報が対応する機種名(例えば機器のモデルID)とが表示される。入力領域5161、5163および5164は、それぞれ、編集対象の設定情報に対応するカスタマの名前、コメント、および、プロジェクトコードが予め入力される。これら入力領域5161、5163および5164の情報は、編集可能である。
入力領域5165および5166は、それぞれチェックボックスであって、入力領域5165は、編集対象の設定情報を編集可能とするか否かを設定する。また、入力領域5166は、編集対象の設定情報に対して公開範囲を設定するか否かを設定する。入力領域5166において公開範囲の設定が可とされた場合、ボタン5167が有効となる。ボタン5167は、当該設定情報を公開する範囲を設定するための公開範囲設定画面を表示させる。
表示領域5168は、編集対象の設定情報の作成者および作成日時、ならびに、更新者および更新日時が表示される。
ボタン5169は、入力領域5161、5163および5164、ならびに、入力領域5165および5166に入力された情報に基づき、編集対象の設定情報の属性情報を更新する。ボタン5170は、入力領域5161、5163および5164、ならびに、入力領域5165および5166に入力された情報を破棄し、編集対象の設定情報の属性情報の更新を行わない。また、ボタン5171は、編集対象の設定情報の属性情報のダウンロードを指示する。
図26は、実施形態に係る、UI制御部110により表示される編集メニュー画面506のボタン5062に対する操作に応じて表示される設定情報コピー画面の例を示す。図26において、設定情報コピー画面507は、表示領域5070と、入力領域5071〜5075と、ボタン5076〜5078とを含む。
表示領域5070は、設定元機器、すなわち、編集対象の設定情報に対応する機器の機種名が表示される。入力領域5071は、設定先機器、すなわち、編集対象の設定情報をコピーするコピー先の機器の機種名が入力される。入力領域5071に含まれるボタン5071aを操作することで、設定先機器として指定可能な機種の機種名のリストが例えばコンボボックス形式で一覧表示される。
例えば、UI制御部110は、ボタン5071aに対するユーザ操作に応じて、サーバ装置20に対して機種名の一覧を問い合わせる。サーバ装置20は、この問い合わせに応じて設定情報DB21を参照し、設定情報DB21に登録される例えばリソースファイルから機種名を抽出し、機種名の一覧として端末装置10に送信する。端末装置10において、UI制御部110は、サーバ装置20から送信された機種名の一覧に基づき機種名のリストを表示させる。
入力領域5072、5073および5074は、編集対象の設定情報に対応するカスタマの名前、コメント、および、プロジェクトコードが予め入力される。これら入力領域5072、5073および5074の情報は、編集可能である。
入力領域5075は、チェックボックスであって、編集対象の設定情報に対して公開範囲を設定するか否かを設定する。ボタン5076は、入力領域5075において公開範囲の設定が可とされた場合に有効となり、当該設定情報を公開する範囲を設定するための公開範囲設定画面を表示させる。入力領域5075、および、公開範囲設定画面における各値は、編集対象の設定情報の値が予め入力される。
ボタン5077は、編集対象の設定情報を、入力領域5071に入力された機種の設定情報にコピーする処理の実行を指示する。UI制御部110は、ボタン5077に対する操作に応じて、編集対象の設定情報と、入力領域5071に入力された設定先機器の機種を示す情報と、編集対象の設定情報の、設定先機器の設定情報へのコピー要求とをサーバ装置20に送信する。また、UI制御部110は、ボタン5077に対する操作に応じて、さらに、入力領域5072〜5074に入力された情報と、入力領域5075などの入力に応じて設定された公開範囲を示す情報とをサーバ装置20に送信する。
サーバ装置20は、端末装置10から送信された各情報を受信する。サーバ装置20は、受信した各情報のうち、編集対象の設定情報と、入力領域5072〜5074に入力された情報と、入力領域5075などの入力に応じて設定された公開範囲を示す情報とを設定情報DB21に登録する。
また、サーバ装置20は、各情報と共に受信したコピー要求に応じて、編集対象の設定情報の、設定先機器の設定情報へのコピーを実行する。サーバ装置20は、このコピー処理を、図8および図9、ならびに、表3〜表10を用いて説明した方法により実行する。
すなわち、サーバ装置20は、端末装置10から受信した各情報に含まれる編集対象の設定情報(図8の設定元機器の設定情報1に対応)を取得する(図9のステップS30)。また、サーバ装置20は、端末装置10から受信した各情報に含まれる設定先機器の機種を示す情報に基づき、当該機種に対応した各設定項目を示す項目情報(設定先機器の項目情報2)を取得する(図9のステップS31)。
サーバ装置20は、次に、編集対象の設定情報に含まれる各設定項目と、設定先機器の機種に対応した各設定項目を示す項目情報とで定義が同一の設定項目を抽出し、抽出した設定項目を示す共通項目情報3(図8、表5、表9など参照)を作成する(図9のステップS32)。サーバ装置20は、作成した共通項目情報3が示す各設定項目に対して、編集対象の設定情報に含まれる、設定項目が対応する設定値を適用する(図9のステップS33)。そして、サーバ装置20は、各設定項目に設定値が適用された共通項目情報3を、設定先機器の設定情報4に反映させる(図9のステップS34)。
このような処理により、設定元機器と設定先機器とで定義が同一の機能に対する機能名や設定項目名が、設定元機器と設定先機器との間で異なっていても、設定元機器の設定情報の、設定先機器の設定情報に対するコピーを容易に実行できる。
端末装置10において、UI制御部110は、サーバ装置20へのコピー処理要求の送信後、設定情報コピー画面507を閉じて、図19の編集画面510を表示させる。
設定情報コピー画面507において、ボタン5078は、キャンセルボタンである。UI制御部110は、ボタン5078に対する操作に応じて、入力領域5071〜5075に入力された情報を破棄し、サーバ装置20へのコピー処理要求を送信せずに、設定情報コピー画面507を閉じて、図19の編集画面510を表示させる。
図27は、実施形態に係る、UI制御部110に表示される編集メニュー画面506のボタン5063に対する操作に応じて表示される削除画面の例を示す。図27において、削除画面518は、ボタン5180および5181を含むと共に、削除を実行するか否かの確認を促すメッセージが表示される。
ボタン5180は、編集対象の設定情報の削除を指示するボタンである。UI制御部110は、ボタン5180に対する操作に応じて、端末装置10に記憶される編集対象の設定情報を削除すると共に、サーバ装置20に対して、編集対象の設定情報に対応する登録済みの設定情報の削除要求を送信する。UI制御部110は、削除要求の送信後、削除画面518を閉じて、図19の編集画面510を表示させる。
ボタン5181は、キャンセルボタンである。UI制御部110は、ボタン5181に対する操作に応じて、削除画面518を閉じて、図19の編集画面510を表示させる。この場合、編集対象の設定情報の削除は、実行されない。
(実施形態に係る設定情報のメモリカードへの保存処理)
次に、実施形態に係る、編集対象の設定情報のメモリカードへの保存処理について説明する。図28は、実施形態に係る、編集対象の設定情報のメモリカード31bへの保存処理を示す一例のフローチャートである。
ステップS150で、UI制御部110は、編集対象の設定情報のメモリカード31bへの書き込み指示を受け付ける。例えば、UI制御部110は、図18の編集メニュー画面506のボタン5064に対する操作に応じて、当該書き込み指示を受け付ける。別の例では、UI制御部110は、図19の編集画面510のボタン5109に対する操作に応じて、当該書き込み指示を受け付ける。UI制御部110は、当該書き込み指示を受け付けると、編集対象の設定情報をメモリカード31bへの書き込み(保存)を実行するための保存画面を表示させる。
図29は、実施形態に係る、UI制御部110に表示される保存画面の例を示す。図29において、保存画面508は、入力領域5080および5081と、ボタン5082および5083とを含む。入力領域5080は、メモリカード31bに保存する設定情報を暗号化するための鍵情報が入力される。入力領域5080を空白とした場合、設定情報が暗号化されずにメモリカード31bに保存される。
入力領域5081は、チェックボックスであって、メモリカード31bに保存する設定情報に、機器固有情報を含めるか否かを設定する。機器固有情報は、例えば、表12に示した項目「Unique」の値である。
ボタン5082は、編集対象の設定情報のメモリカード31bへの書き込みを指示する。ボタン5083は、キャンセルボタンである。UI制御部110は、ボタン5083に対する操作に応じて保存画面508を閉じ、保存画面508の直前の画面に戻る。この場合、編集対象の設定情報のメモリカード31bへの書き込みは、実行されない。
説明は図28のフローチャートに戻り、UI制御部110は、保存画面508のボタン5082に対する操作に応じて、処理をステップS151に移行させる。ステップS151で、UI制御部110は、メモリカードI/F1006のメモリカードスロットにメモリカード31bが装着されているか否かを判定する。UI制御部110は、メモリカードスロットにメモリカード31bが装着されていないと判定した場合(ステップS151、「無し」)、処理をステップS151に戻す。
UI制御部110は、メモリスロットにメモリカード31bが装着されていると判定した場合(ステップS151、「有り」)、処理をステップS152に移行させる。ステップS152で、UI制御部110は、書込部112に対して、編集対象の設定情報をメモリカード31bに書き込むように指示する。書込部112は、この指示に応じて、編集対象の設定情報をメモリカード31bに書き込む。書込部112は、書き込みが完了すると、その旨をUI制御部110に通知する。
書き込み完了の通知を受け取ったUI制御部110は、次のステップS153で、図30に例示される、実施形態に係る結果表示画面を表示させる。図30において、結果表示画面519は、ボタン5191および5192を含むと共に、設定情報のメモリカード31bへの書き込み(保存)が完了した旨を示すメッセージが表示される。なお、設定情報のメモリカード31bへの書き込みが失敗した場合は、その旨を示すメッセージが表示される。
ボタン5191は、結果表示画面519を閉じて図19に示した編集画面510を表示させるためのボタンである。また、ボタン5192は、結果表示画面519を閉じて図12に示したホーム画面501を表示させるためのボタンである。
ステップS153で結果表示画面519が表示されると、図28のフローチャートによる一連の処理が終了される。
なお、上述の実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。