(57)【要約】【課題】画像形成装置に対して設定データを反映させる際の再起動の回数を低減させ、作業効率を向上させる。【解決手段】情報処理装置であって、処理が規定されたコマンドを含んで構成されたデータを取得する取得手段と、処理後に再起動を要する所定のコマンドが複数、前記データに含まれているか否かを判定する第１の判定手段と、前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定された場合、複数の前記所定のコマンドのうち、最後に処理される所定のコマンドを特定する特定手段と、前記特定手段にて特定された所定のコマンドが処理された後に再起動を実行させる制御手段とを有する。【選択図】  図１０
2020038547.tif 000002
【特許請求の範囲】
【請求項１】
処理が規定されたコマンドを含んで構成されたデータを取得する取得手段と、
処理後に再起動を要する所定のコマンドが複数、前記データに含まれているか否かを判定する第１の判定手段と、
前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定された場合、複数の前記所定のコマンドのうち、最後に処理される所定のコマンドを特定する特定手段と、
前記特定手段にて特定された所定のコマンドが処理された後に再起動を実行させる制御手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定された場合、前記データにおいて、複数の前記所定のコマンドが連続して処理されるように構成されているか否かを判定する第２の判定手段を更に有し、
前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定され、かつ、前記第２の判定手段にて複数の前記所定のコマンドが連続して処理されるように構成されていると判定された場合、前記特定手段は、複数の前記所定のコマンドのうち、最後に処理される所定のコマンドを特定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定され、かつ、前記第２の判定手段にて複数の前記所定のコマンドが連続して処理されるように構成されていないと判定された場合、前記所定のコマンドが処理されるごとに再起動を実行させることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記所定のコマンドは、前記情報処理装置に対する設定値の設定を指示するコマンドであることを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記データは、スクリプトにより記述されることを特徴とする請求項１乃至４のいずれか一項に記載の情報処理装置。
【請求項６】
前記情報処理装置は、画像形成装置であることを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
外部装置からの要求に応じて、当該外部装置にて実行させる処理が規定されたコマンドを含んで構成されるデータを生成する生成手段を備え、
前記生成手段は、処理後に再起動を要する第１のコマンドを複数、前記データに含める場合、複数の第１のコマンドを、処理後に再起動を要する１の第２のコマンドに置き換えて前記データを生成することを特徴とする情報処理装置。
【請求項８】
前記第１、第２のコマンドは、前記外部装置に対する設定値の設定を指示するコマンドであることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記データは、スクリプトにより記述されることを特徴とする請求項７または８に記載の情報処理装置。
【請求項１０】
前記外部装置は、画像形成装置であることを特徴とする請求項７乃至９のいずれか一項に記載の情報処理装置。
【請求項１１】
処理が規定されたコマンドを含んで構成されたデータを取得する取得工程と、
処理後に再起動を要する所定のコマンドが複数、前記データに含まれているか否かを判定する判定工程と、
前記判定工程にて複数の前記所定のコマンドが含まれていると判定された場合、複数の前記所定のコマンドのうち、最後に処理される所定のコマンドを特定する特定工程と、
前記特定工程にて特定された所定のコマンドが処理された後に再起動を実行させる制御工程と
を有することを特徴とする情報処理装置の制御方法。
【請求項１２】
外部装置からの要求に応じて、当該外部装置にて実行させる処理が規定されたコマンドを含んで構成されるデータを生成する生成工程を有し、
前記生成工程において、処理後に再起動を要する第１のコマンドを複数、前記データに含める場合、複数の第１のコマンドを、処理後に再起動を要する１の第２のコマンドに置き換えて前記データを生成することを特徴とする情報処理装置の制御方法。
【請求項１３】
コンピュータを、
処理が規定されたコマンドを含んで構成されたデータを取得する取得手段、
処理後に再起動を要する所定のコマンドが複数、前記データに含まれているか否かを判定する第１の判定手段、
前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定された場合、複数の前記所定のコマンドのうち、最後に処理される所定のコマンドを特定する特定手段、
前記特定手段にて特定された所定のコマンドが処理された後に再起動を実行させる制御手段
として機能させるためのプログラム。
【請求項１４】
コンピュータを、
外部装置からの要求に応じて、当該外部装置にて実行させる処理が規定されたコマンドを含んで構成されるデータを生成する生成手段として機能させ、
前記生成手段は、処理後に再起動を要する第１のコマンドを複数、前記データに含める場合、複数の第１のコマンドを、処理後に再起動を要する１の第２のコマンドに置き換えて前記データを生成することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、画像形成装置を新規導入するにあたり、事前に画像形成装置の使用環境に応じた初期設置作業を行う必要がある。画像形成装置の初期設置作業には、フィニッシャーなどハードウェアオプションの取り付けや、画像形成装置の拡張機能のライセンスの有効化作業、拡張プログラムのインストール、デバイス構成変更などの作業があり、多くの時間と手間が掛かる。上記のような初期設置作業を自動実施する方法として、予め設置作業の処理内容をスクリプトにて定義しておき、スクリプトに従って設置作業を実行するようなシステムがある。
【０００３】
デバイス構成変更の工程では、設定データのインポートを行うが、それらの設定を反映させるために画像形成装置の再起動を行う必要があった。そこで、再起動の回数を減らすために、設定データをカテゴリに分類し、画像形成装置のカテゴリ別に再起動要否を判断するようなシステムが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第６１５７２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、一度でも再起動が必要と決定された場合、再起動を回避する手段がない。画像形成装置が要再起動状態では次のインポート指示を受け付けないため、要再起動状態となった後は、連続してインポートを行うことができなかった。そのため、設置作業を行う作業者の作業効率を妨げていた。例えば、設定値のＰＣ編集アプリやＵＳＢメモリーを使って設定データを作成してインポートする回数は一回とは限らず、複数の設定データをインポートがすることも想定される。そのため、設置時の画像形成装置の再起動回数は極力減らしたい。
【０００６】
そこで、本発明は、画像形成装置の設定作業時における再起動の回数を減らし、作業効率を向上させる構成を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、情報処理装置であって、処理が規定されたコマンドを含んで構成されたデータを取得する取得手段と、処理後に再起動を要する所定のコマンドが複数、前記データに含まれているか否かを判定する第１の判定手段と、前記第１の判定手段にて複数の前記所定のコマンドが含まれていると判定された場合、複数の前記所定のコマンドのうち、最後に処理される所定のコマンドを特定する特定手段と、前記特定手段にて特定された所定のコマンドが処理された後に再起動を実行させる制御手段とを有する。
【発明の効果】
【０００８】
本発明により、画像形成装置の設定作業時における再起動の回数を減らし、作業効率を向上させることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の自動設置システムにおける機器構成の例を示す図。
【図２】画像形成装置のハードウェア構成の例を示す図。
【図３】画像形成装置のソフトウェア構成の例を示す図。
【図４】各サーバーのハードウェア構成の例を示す図。
【図５】各サーバーのソフトウェア構成の例を示す図。
【図６】第１の実施形態に係る設置用のスクリプトの例を示す図。
【図７】サポート機能の自動設置の処理のフローチャート。
【図８】サポート機能のＵＩの例を示す図。
【図９】デバイス構成変更工程における基本処理シーケンス。
【図１０】第１の実施形態に係るスクリプト実行の処理のフローチャート。
【図１１】第２の実施形態に係る設置用のスクリプトの例を示す図。
【図１２】案件管理サーバーのスクリプト生成処理のフローチャート。
【図１３】第２の実施形態に係るスクリプト実行の処理のフローチャート。
【図１４】第３の実施形態に係る設置用のスクリプトの例を示す図。
【図１５】第３の実施形態に係るスクリプト実行の処理のフローチャート。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下に示す構成等は一実施形態に過ぎず、これらの構成に限定するものではない。
【００１１】
＜第１の実施形態＞
［システム全体構成］
図１は、本発明における自動設置システムの機器構成の例を示す図である。本実施形態に係る自動設置システムは、ネットワーク１００に接続された複数の画像形成装置１０１と、画像形成装置１０１が通信可能に接続されている案件管理サーバー１０２、及びソフトウェア管理サーバー１０３を含んで構成される。ネットワーク１００は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、およびインターネットなどを含んで構成され、有線／無線や通信方式は特に限定するものではない。
【００１２】
画像形成装置１０１は、例えば、複写機にスキャナー、プリンター、ファクシミリ、ファイル送信機能等複数の機能を統合した複合機（ＭＦＰ：Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）である。また、画像形成装置１０１は、ネットワーク１００に接続するインターフェースを有している。ここでは、２台の画像形成装置１０１を示しているが、それぞれが異なる構成や機能を有してよい。また、本実施形態では、設置対象の装置を画像形成装置として示しているが、これに限定するものではない。
【００１３】
案件管理サーバー１０２は、画像形成装置１０１の納品先、顧客、受注した商談などの案件単位に、複数の設置データを管理するためのサーバーである。設置データには、機種、外部接続するハードウェア、ファームウェアや拡張プログラムのバージョンの組み合わせ、設定値などの納品する画像形成装置１０１の構成情報、またそれらの適用順序などが含まれる。案件管理サーバー１０２で管理する詳細なデータは後述する。ソフトウェア管理サーバー１０３は、画像形成装置１０１で利用可能なファームウェアや拡張プログラムのバイナリデータ、各種ライセンス情報等を管理するサーバーである。
【００１４】
尚、本実施形態においては案件管理サーバー１０２とソフトウェア管理サーバー１０３を複数のサーバーとして定義しているが、同一の管理サーバーとして構成されていてもよい。また、ソフトウェア管理サーバー１０３をソフトウェア管理用のサーバーとライセンス管理用のサーバーに分けるなど更に複数のサーバーで構成されていてもよい。案件管理サーバー１０２で管理する設置データやソフトウェア管理サーバー１０３で管理するソフトウェアは、ネットワーク１００を経由してクライアントコンピューター（不図示）によって作成および格納することを想定しているが、この限りではない。
【００１５】
［ハードウェア構成：画像形成装置］
図２は、本実施形態に係る画像形成装置１０１のハードウェア構成の例を示す図である。画像形成装置１０１は、制御ユニット２００、操作部２０１、スキャナー２０２、及びプリンター２０３を備える。
【００１６】
制御ユニット２００は、操作部関連の処理部として、ＣＰＵ２１０、ＲＡＭ２１１、操作部Ｉ／Ｆ２１２、ネットワークＩ／Ｆ２１３、ＲＯＭ２１５、ＨＤＤ２１６、画像バスＩ／Ｆ２１７、及びシステムバス２１８を含んで構成される。また、制御ユニット２００は、印刷、およびスキャン関連の処理部として、画像バス２１９、デバイスＩ／Ｆ２２０、スキャナー画像処理部２２１、及びプリンター画像処理部２２２を含んで構成される。なお、スキャナー２０２、及びスキャナー画像処理部２２１については必要に応じて備えることになる。
【００１７】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１０は、制御ユニット２００全体を制御するためのコントローラである。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２１１は、揮発性の記憶領域であり、画像データやソフトウェアの動作に必要な処理を一時記憶するためのメモリーである。操作部Ｉ／Ｆ２１２は、操作部２０１とのインターフェースであり、操作部２０１で表示する画像データを操作部２０１に対して出力する。また、操作部Ｉ／Ｆ２１２は、ユーザーが操作部２０１により入力した情報をＣＰＵ２１０へ伝達する。ネットワークＩ／Ｆ２１３は、ネットワーク１００と接続しており、ネットワーク１００を介して、外部の装置と情報のやり取りをするインターフェースである。外部の装置とは、例えば、案件管理サーバー１０２を指す。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２１５は、ブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２１６は、不揮発性の記憶領域であり、システムソフトウェア、画像データ、設定情報などを格納する。
【００１８】
画像バスＩ／Ｆ２１７は、システムバス２１８と画像バス２１９とを接続し、データ変換を行うバスブリッジである。システムバス２１８は、制御ユニット２００を構成する各コンポーネント同士の共通データ交換経路である。画像バス２１９は、ＰＣＩバス、またはＩＥＥＥ１３９４で構成されており、画像データを高速に転送する経路である。デバイスＩ／Ｆ２２０は、画像入出力デバイスであるスキャナー２０２及びプリンター２０３と制御ユニット２００とを接続し、画像データの同期系／非同期系の変換を行う。スキャナー画像処理部２２１は、スキャナー２０２からの入力画像に対し、補正や加工、編集を行う。プリンター画像処理部２２２は、プリント出力画像データに対して、プリンター２０３の性能に応じた補正、解像度の変換などを行う。
【００１９】
［ソフトウェア構成：画像形成装置］
図３（Ａ）は、画像形成装置１０１のソフトウェア構成の例を示す図である。本実施形態では、複数のプログラムが階層的に構成され、上層のプログラムは、下層のプログラムが提供する機能を利用して動作可能である。
【００２０】
ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）３００上では、ネイティブプログラム３０１と拡張プログラム実行プラットフォーム３０２が動作している。ネイティブプログラム３０１は、プリンター２０３やＦＡＸ（不図示）、スキャナー２０２などの、画像形成装置１０１に元々備わっている機能の制御用プログラムである。拡張プログラム実行プラットフォーム３０２は、画像形成装置１０１に機能を追加する拡張プログラムの実行プラットフォームである。
【００２１】
ネイティブプログラム３０１上では、ファームウェア更新サービス３０３、オプション有効化サービス３０４、及び設定管理サービス３０５が動作している。また、拡張プログラム実行プラットフォーム３０２上では、拡張プログラムシステムサービス３０６、及び拡張プログラム３０７が動作している。
【００２２】
ファームウェア更新サービス３０３は、ファームウェアを更新するための各種機能を提供するサービスである。例えば、ファームウェア更新サービス３０３は、ユーザーから指定されたファームウェアと、画像形成装置１０１内のファームウェアを比較し、該ファームウェアへの更新が必要か否かを判断する。また、ファームウェア更新サービス３０３は、ネイティブプログラム３０１に対し、または、ネイティブプログラム３０１を介して、画像形成装置１０１のファームウェアを更新する。
【００２３】
オプション有効化サービス３０４は、ネイティブプログラム３０１に予め組み込まれているオプション機能（以下、「組み込みオプションプログラム」とも表記する）を、有効化するためのプログラムである。オプション有効化サービス３０４は、ユーザーから指定されたオプションライセンスファイルにより特定されるオプション機能を識別し、そのオプション機能を有効化する。オプションライセンスファイルには、例えば、有効化対象のオプション機能、有効化する期間などの情報が指定される。
【００２４】
設定管理サービス３０５は、プリンターやＦＡＸなどの各種設定情報を管理するためのプログラムである。設定管理サービス３０５は、例えば、ユーザーから１つまたは複数の設定情報、または複数の設定情報を含むファイルを指定されると、ネイティブプログラム３０１の設定情報を書き換える機能を提供する。なお、設定管理サービス３０５は、ユーザインターフェース（以下、ＵＩ）を備え、ユーザーは画像形成装置１０１の操作部２０１に表示される設定メニュー画面（不図示）を介して設定変更の指示ができる。
【００２５】
拡張プログラムシステムサービス３０６は、拡張プログラム３０７に共通に有用なユーティリティライブラリーであり、画像形成装置１０１が備えるシステム（不図示）から提供される。拡張プログラム３０７から拡張プログラムシステムサービス３０６の機能を呼び出すことにより、共通的に拡張機能を利用することができる。このような構成により、例えば、画像形成装置１０１のユーザーは重複した機能を有する拡張プログラム３０７を開発する手間を省くことができる。
【００２６】
拡張プログラム３０７は、拡張プログラム実行プラットフォーム３０２、または上述した各種サービス（３０３〜３０６）を介してのみ、他の拡張プログラム３０７などの画像形成装置１０１の各モジュールへアクセスすることができる。また、ＵＩを持つ拡張プログラム３０７は、画像形成装置１０１の操作部２０１に表示されるメインメニュー画面（不図示）にアイコン等を表示することもできる。ここでは、説明を簡略化するために、拡張プログラム３０７として、拡張プログラムＡ、及び拡張プログラムＢの２つを示しているが、これに限定するものではなく、更に多くの異なる機能を提供可能な拡張プログラムが備えられていてよい。
【００２７】
操作部Ｉ／Ｆ２１２は、操作部２０１を通じて、メインメニュー画面（不図示）上のアイコンがユーザーによって選択されたことを検知すると、その選択を示す情報をＣＰＵ２１０に送信する。ＣＰＵ２１０は、上記選択を示す情報を受け取ると、ユーザーに選択された拡張プログラム３０７のＵＩを操作部２０１に表示させる。
【００２８】
なお、図３に示すソフトウェア構成は、基本的な部分のみであり、実施環境によっては、画像形成装置１０１が他のサービス等を備えるようにしてもよい。また、設定を制限するなどの理由によって不要となるサービスについては、画像形成装置１０１が備えない、もしくは動作を制限するようにしてもよい。
【００２９】
図３（Ｂ）は、画像形成装置１０１で動作する自動設置サポート機能（以下、「サポート機能」）３５０の機能構成の例を示す図である。本実施形態に係るサポート機能３５０は、案件管理サーバー１０２から取得した設置データにより、画像形成装置１０１のシステム構成を自動で変更する（以下、「自動設置」）機能を提供する。
【００３０】
本実施形態において、サポート機能３５０は、画像形成装置１０１の拡張プログラム３０７の一つとして実装されるものとする。サポート機能３５０の各構成要素は、画像形成装置１０１のＲＯＭ２１５やＨＤＤ２１６に格納されており、ＣＰＵ２１０が各機能に応じたプログラムを実行することによりサポート機能３５０を実現する。
【００３１】
サポート機能３５０は、ＵＩ制御部３５１、通信部３５２、処理実行部３５３、及びスクリプト解析部３５４を含んで構成される。ＵＩ制御部３５１は、サポート機能３５０を操作するためのＵＩを、操作部２０１を通じてユーザーに提供し、ユーザーの操作を受け付ける。通信部３５２は、ネットワークＩ／Ｆ２１３を介して案件管理サーバー１０２やソフトウェア管理サーバー１０３と通信し、設置に必要な各種データを取得する。取得するデータは、例えば、設置データを画像形成装置１０１に適用するための設置作業指示情報であるスクリプトや、設置作業に必要なソフトウェアなどの設置データである。
【００３２】
処理実行部３５３は、ＵＩ制御部３５１、通信部３５２、及びスクリプト解析部３５４の指示に従い、各種処理を行う。スクリプト解析部３５４は、通信部３５２が取得した設置作業指示情報であるスクリプトを解析し、処理実行部３５３が実行すべき処理、順序を決定する。
【００３３】
［ハードウェア構成：サーバー］
図４は、本実施形態に係る案件管理サーバー１０２、及びソフトウェア管理サーバー１０３のハードウェア構成の例を示すブロック図である。本実施形態ではいずれのサーバーも同じ構成を備える情報処理装置として説明するが、これに限定するものではない。ここでは、案件管理サーバー１０２を例に挙げて説明する。
【００３４】
案件管理サーバー１０２は、制御ユニット４００、入力装置としてのマウス４０１およびキーボード４０２、及び、出力装置としてのディスプレイ４０３を含んで構成される。制御ユニット４００は、案件管理サーバー１０２の全体の動作の制御部として、ＣＰＵ４１０、ＲＯＭ４１１、ＲＡＭ４１２、ＨＤＤ４１３、操作部Ｉ／Ｆ４１４、ディスプレイＩ／Ｆ４１５、及びネットワークＩ／Ｆ４１６を含んで構成される。
【００３５】
ＣＰＵ４１０は、ＲＯＭ４１１に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ４１２は、ＣＰＵ４１０の主メモリーであり、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ４１３は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。操作部Ｉ／Ｆ４１４は、案件管理サーバー１０２で実行されるプログラムへの制御操作を入力するユーザーインターフェース端末を接続するインターフェースである。本実施形態では、ユーザーインターフェース端末としてマウス４０１やキーボード４０２で構成するが、その限りではない。また、案件管理サーバー１０２においては、操作部Ｉ／Ｆ４１４は必須ではなく、ネットワークＩ／Ｆ４１６を介して制御操作を行う構成でもよい。
【００３６】
ディスプレイＩ／Ｆ４１５は、案件管理サーバー１０２で実行されるプログラムのＵＩを表示するディスプレイ端末を接続するインターフェースである。本実施形態では、ディスプレイ端末としてディスプレイ４０３で構成するが、その限りではない。また、案件管理サーバー１０２においては、ディスプレイＩ／Ｆ４１５は必須ではなく、ネットワークＩ／Ｆ４１６を介してＵＩを表示する構成でもよい。ネットワークＩ／Ｆ４１６は、制御ユニット４００をネットワーク１００に接続する。ネットワークＩ／Ｆ４１６は、ネットワーク１００を介して他の装置との間で各種情報を送受信する。
【００３７】
［ソフトウェア構成］
（案件管理サーバー）
図５（Ａ）は、本実施形態に係る案件管理サーバー１０２で動作する案件管理機能５００、及びデータ格納部５０５の機能構成の例を示す図である。案件管理サーバー１０２のＣＰＵ４１０が案件管理機能５００に対応するプログラムを読み出して実行することにより、各機能が実現される。データ格納部５０５は、案件管理サーバー１０２のＨＤＤ４１３等に構成される。
【００３８】
案件管理機能５００は、制御部５０１、案件管理部５０２、通信部５０３、及びスクリプト生成部５０４を含んで構成される。制御部５０１は、通信部５０３が受信する要求内容に従って、案件管理部５０２に対して設置データの格納、削除、更新、取得等の処理を指示する。また、制御部５０１は、通信部５０３が受信する要求内容に従って、スクリプト生成部５０４に対して、案件管理部５０２で管理する設置データを画像形成装置１０１に適用するための設置作業指示情報であるスクリプトを生成するように指示する。案件管理部５０２は、制御部５０１の指示に従い、データ格納部５０５に対して設置データの格納、削除、更新を行う。また、案件管理部５０２は、データ格納部５０５から設置データの取得などを行う。
【００３９】
通信部５０３は、画像形成装置１０１などからの要求を受信して、制御部５０１に要求内容を送信する。更に、通信部５０３は、制御部５０１から要求に対する処理結果を受け取り、要求に対する応答データを作成し、要求元に応答データを送信する。スクリプト生成部５０４は、制御部５０１の指示に従い、案件管理部５０２で管理する設置データを基に画像形成装置１０１に適用するためのスクリプトを生成する。生成するスクリプトについては図６を用いて後述する。データ格納部５０５は、案件管理サーバー１０２で動作するデータベースである。
【００４０】
表１は、本実施形態における、案件管理サーバー１０２のデータ格納部５０５で管理する設置データに関する情報の構成例を示す表である。尚、表１で示す案件管理サーバー１０２で管理する設置データに関する情報としては、設置データの構成情報のみを管理しており、画像形成装置１０１に適用するデータの実体は後述のソフトウェア管理サーバー１０３のソフトウェア格納部５５４で管理している。
【００４１】
【表１】
2020038547.tif 000003
【００４２】
表１は、案件管理テーブルである。案件管理テーブルは、案件ＩＤ、案件名、及び設置データＩＤのカラムを含んで構成される。案件は、画像形成装置１０１を設置するための設置データを管理する単位であり、作業者や営業担当者が１レコードを登録する。案件は商談や顧客ごとに作成してもよいし、画像形成装置１０１を納品する期間に合わせて作成してもよい。案件ＩＤは、本テーブルにおけるユニークなＩＤ（識別情報）であり、案件を特定するための情報である。案件名は、案件を管理する上で、作業者や営業担当者が見分けやすくするための情報である。
【００４３】
設置データＩＤは、後述の設置データ管理テーブルで管理する設置データを特定する情報である。設置データは、１つの案件に対して複数登録することができる。設置データの詳細については表２で後述する。例えば、表１の一行目は、案件ＩＤ“Ａ００１”で示す“Ｘ社商談”に対して、設置データ“Ｓ００１”、“Ｓ００２”、“Ｓ００３”を登録したことを示している。尚、表１において、案件名や設置データＩＤのみを定義しているが、これに限定されず、カラムの増減があってもよい。
【００４４】
【表２】
2020038547.tif 000004
【００４５】
表２は、設置データ管理テーブルである。設置データ管理テーブルは、設置データＩＤ、装置ＩＤ、機種、共通データＩＤ、及び個別データＩＤのカラムを含んで構成される。設置データは、作業者や営業担当者が設置を予定している画像形成装置１０１の数だけ登録される。尚、表２において、不要な項目は含まれていなくてもよい。また、共通データを使用しない、または個別データを使用しない場合は、値を空にしていてもよい。
【００４６】
（ソフトウェア管理サーバー）
図５（Ｂ）は、本実施形態に係るソフトウェア管理サーバー１０３で動作する、ソフトウェア管理機能５５０、ソフトウェア格納部５５４、及びライセンス情報格納部５５６の機能構成の例を示す図である。ソフトウェア管理サーバー１０３のＣＰＵ４１０がソフトウェア管理機能５５０に対応するプログラムを読み出して実行することにより、各機能が実現される。ソフトウェア格納部５５４、及びライセンス情報格納部５５６は、ソフトウェア管理サーバー１０３のＨＤＤ４１３等に構成される。
【００４７】
ソフトウェア管理機能５５０は、制御部５５１、ソフトウェア管理部５５２、通信部５５３、及びライセンス管理部５５５を含んで構成される。制御部５５１は、通信部５５３が受信する要求内容に従って、ソフトウェア管理部５５２に対してソフトウェアの格納、削除、更新、取得等の処理を指示する。また、制御部５５１は、ライセンス管理部５５５に対してライセンスの発行、削除（無効化）、更新、取得等の処理を指示する。
【００４８】
ソフトウェア管理部５５２は、制御部５５１の指示に従い、ソフトウェア格納部５５４に対してソフトウェアの格納、削除、更新を行う。更にソフトウェア管理部５５２は、ソフトウェア格納部５５４からソフトウェアの取得などを行う。通信部５５３は、画像形成装置１０１などからの要求を受信して、制御部５５１に要求内容を送信する。更に、通信部５５３は、制御部５５１から要求に対する処理結果を受け取り、要求に対する応答データを作成し、要求元に応答データを送信する。ソフトウェア格納部５５４は、ソフトウェア管理サーバー１０３で動作するデータベースである。尚、本実施形態ではソフトウェア管理サーバー１０３にソフトウェア格納部５５４が構成されているが、ソフトウェア管理機能５５０と連携できるようになっていれば別のサーバーに配置されるような構成でもよい。
【００４９】
ライセンス管理部５５５は、制御部５５１の指示に従い、ライセンスの発行、あるいはライセンス情報格納部５５６に対してライセンス発行情報の格納、削除（無効化）、更新を行う。更にライセンス管理部５５５は、ライセンス情報格納部５５６からライセンス発行情報の取得などを行う。ライセンス情報格納部５５６は、ソフトウェア管理サーバー１０３で動作するデータベースである。尚、本実施形態ではソフトウェア管理サーバー１０３にライセンス情報格納部５５６が構成されているが、ソフトウェア管理機能５５０と連携できるようになっていれば別のサーバーに配置されるような構成でもよい。本実施形態において、ソフトウェア管理サーバー１０３がソフトウェアの管理とライセンスの管理の両方の役割を担っているが、これに限らず、別のサーバーとして動作していてもよい。
【００５０】
［設置用スクリプト］
図６は、本実施形態に係る画像形成装置１０１の構成変更を自動で実施するための処理内容および設置手順が規定された設置用のスクリプトの例を示す。
【００５１】
図６の設置用のスクリプト６００は、本実施形態で示す設置用のスクリプトの記述例である。設置用のスクリプト６００は、画像形成装置１０１が備えるサポート機能３５０の通信部３５２で受信され、スクリプト解析部３５４によって解析される。スクリプト解析部３５４によって解析された設置用のスクリプト６００は、その後、処理実行部３５３によって記載された処理が実行される。尚、本実施形態で示す設置用のスクリプト６００は、案件管理サーバー１０２の案件管理機能５００によって生成される。本実施形態に係る設置用のスクリプト６００は、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記載されている。尚、本実施形態ではＸＭＬによりスクリプトを表現しているが、ＸＭＬに限定されず、シェルスクリプトなどで書かれていてもよい。
【００５２】
設置用のスクリプト６００は、設置データ識別部６０１、画像形成装置識別部６０２、及び処理記載部６０３を含んで構成されている。ここでは、上記に示した表１、表２にて管理されているデータの例を用いて説明する。設置データ識別部６０１は、設置データを識別するための設置データＩＤ“Ｓ００１”が記載されており、＜ｉｎｓｔａｌｌａｔｉｏｎＤａｔａＩｄ＞タグで構成されている。設置データＩＤは、設置データを案件管理サーバー１０２に登録する際に、案件管理機能５００によって設置データに対して付与する識別子で、全ての設置データに対してユニークな値である。画像形成装置識別部６０２は、設置対象である画像形成装置１０１を識別するためのターゲット識別子“Ｄ１１１”が記載されており、＜ｄｅｖｉｃｅＩｄ＞タグで構成されている。
【００５３】
処理記載部６０３は、設置するために必要な処理群が記載される。処理記載部６０３は、ファームウェア更新処理部６０４、設定データインポート処理部６０５などで構成されている。処理記載部６０３は、拡張プログラムインストール処理、拡張プログラム開始処理、オプションアクティベート処理などを含めて構成される場合もある。各処理を示すタグの中にはＯｒｄｅｒ属性が含まれており、本実施形態では、Ｏｒｄｅｒの値に応じて処理の順番が決定する。つまり、Ｏｒｄｅｒの値が小さい処理から順に実行される。
【００５４】
ファームウェア更新処理部６０４は、ファームウェア更新サービス３０３を介してファームウェアを更新する処理である。ファームウェア更新処理部６０４は、＜ｕｐｄａｔｅＦｉｒｍｗａｒｅＣｏｍｍａｎｄ＞タグを記載することで処理を定義している。具体的には、＜ｓｏｆｔｗａｒｅＵｒｌ＞タグ、＜ｆｉｒｍｗａｒｅＭｏｄｅｌ＞タグ、および＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグにより構成されている。＜ｓｏｆｔｗａｒｅＵｒｌ＞タグは、更新対象のファームウェアの取得先ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を指定している。＜ｆｉｒｍｗａｒｅＭｏｄｅｌ＞タグは、取得するファームウェアの種類を指定している。＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグは、取得するファームウェアのバージョンを指定している。サポート機能３５０は、これらの情報を用いることで、取得先から必要なファームウェアを取得する。
【００５５】
設定データインポート処理部６０５は、＜ｉｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞タグの記載により処理を定義している。設定データインポート処理部６０５は、＜ｓｏｆｔｗａｒｅＵｒｌ＞タグ、＜ｃｏｍｍｏｎＳｅｔｔｉｎｇＦｉｌｅ＞タグ、及び＜ｉｎｄｉｖｉｓｕａｌＳｅｔｔｉｎｇＦｉｌｅ＞タグによりインポートする設定データを指定している。＜ｓｏｆｔｗａｒｅＵｒｌ＞タグは、インポートする設定データの取得先ＵＲＬを指定している。＜ｃｏｍｍｏｎＳｅｔｔｉｎｇＦｉｌｅ＞タグは、画像形成装置１０１に対して適用する共通設定データが示されている。＜ｉｎｄｉｖｉｓｕａｌＳｅｔｔｉｎｇＦｉｌｅ＞タグは、画像形成装置１０１に対して適用する個別設定データが示されている。本実施形態において共通設定データと個別設定データを同じ処理部内で指定しているが、これに限定するものではない。以下、＜ｉｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞を、設定値コマンド６０６と示す。上述したように、設定値コマンド６０６による設定値を画像形成装置１０１に反映させるためには、再起動を要する。そのため、設定値コマンド６０６の処理後には、いずれかのタイミングにて再起動を行うこととなる。本実施形態に係る再起動のタイミングについては、処理シーケンスと併せて後述する。なお、図６の例の場合、２つの設定データインポート処理部６０５（６０５Ａ、６０５Ｂ）を含んだ例を示しているが、これに限定するものではない。
【００５６】
［自動設置処理］
図７は、本実施形態に係る画像形成装置１０１の自動設置の処理フローを示す。図７の処理フローは、画像形成装置１０１のサポート機能３５０が、ユーザーによって実行を指示されることで開始される。具体的には、設置作業者が、図８（Ａ）で示す初期表示画面８００における実行ボタン８０２を押下することで処理が開始される。
【００５７】
図８（Ａ）は、サポート機能３５０の初期表示画面８００の一例である。サポート機能の初期表示画面８００は、メッセージ８０１、実行ボタン８０２、及びキャンセルボタン８０３を含んで構成される。メッセージ８０１には、自動設置の開始を通知する文字列とともに、自動設置を実施する画像形成装置１０１の装置ＩＤが表示される。装置ＩＤは、画像形成装置１０１を特定するための識別子であり、機器に振られるシリアル番号などが該当する。
【００５８】
実行ボタン８０２は、サポート機能３５０による画像形成装置１０１の各種設定やソフトウェアの更新、インストール、アクティベートを開始するためのトリガーとなるボタンである。本実施形態においては、設置作業者が実行ボタン８０２を押下することで図７に示す自動設置処理フローが開始される。キャンセルボタン８０３は、サポート機能３５０による画像形成装置１０１の自動設置を中止する場合に押下するボタンである。キャンセルボタン８０３が押下されると、サポート機能３５０の処理実行部３５３は自動設置を中止し、初期表示画面８００を閉じるなどの処理を行う。
【００５９】
Ｓ７００にて、サポート機能３５０は、案件管理サーバー１０２に対して自装置用の設置データが設置データ管理テーブル（表２）に存在するかの確認を要求する。具体的には、処理実行部３５３は、サポート機能３５０が動作する画像形成装置１０１の装置ＩＤを取得する。装置ＩＤ取得後、処理実行部３５３は、取得した装置ＩＤと共に、通信部３５２を介して案件管理サーバー１０２へ設置データの存在確認要求を送信する。案件管理サーバー１０２の案件管理部５０２は、設置データの存在確認要求を受信すると、設置データ管理テーブルの装置ＩＤの中に画像形成装置１０１から受信した装置ＩＤと一致する設置データを確認し、その結果を返す。そして、処理実行部３５３は、設置データの存在確認要求の応答を、通信部３５２を介して受信する。
【００６０】
Ｓ７０１にて、処理実行部３５３は、Ｓ７００の応答として受信した結果に基づき、設置データが存在するか否かを判定する。設置データが存在する場合は（Ｓ７０１にてＹＥＳ）Ｓ７０４へ処理を移行し、存在しない場合は（Ｓ７０１にてＮＯ）Ｓ７０２へ処理を移行する。設置データ管理テーブルに自装置の装置ＩＤが存在するケースとして、設置データ登録時に設置データを適用する画像形成装置１０１の装置ＩＤを一緒に登録したケースが考えられる。別のケースとして、一度設置データを適用した画像形成装置１０１の故障によりＨＤＤ２１６が交換されたケースなどが考えられる。一方、自装置の装置ＩＤが存在しないケースとして、設置データ登録時に設置データを適用する画像形成装置１０１の識別ＩＤを登録できなかったケースが考えられる。別のケースとして、設置データを適用した画像形成装置１０１の故障により交換後の画像形成装置１０１から設置データを要求したケースなどが考えられる。
【００６１】
Ｓ７０２にて、処理実行部３５３は、ＵＩ制御部３５１を介して操作部２０１に図８（Ｂ）のＵＩ８１０を表示する。
【００６２】
図８（Ｂ）は、ＵＩ制御部３５１が、自装置用の設置データが存在しなかった場合に、画像形成装置１０１へ適用する設置データＩＤを入力するための画面の構成例である。メッセージ８１１には、自装置用の設置データが存在しなかった旨を通知する文字列とともに、設置データＩＤの入力を促す文字列が表示される。設置データＩＤ入力部８１２は、設置データＩＤの入力を受け付けるテキストボックスである。設置作業者は、設置データＩＤ入力部８１２に対し、例えば、操作部２０１のタッチパネル等を利用して設置データＩＤを入力する。なお、図８（Ｂ）では、設置データＩＤ入力部８１２に対し設置データＩＤ“Ｓ００１”が入力されている状態を示している。図８（Ｂ）における実行ボタン８０２は、設置データＩＤが入力されていない場合には、使用（押下）不可になっていてもよい。
【００６３】
Ｓ７０３にて、処理実行部３５３は、設置作業者によって実行ボタン８０２、またはキャンセルボタン８０３のどちらが押下されたかを判定する。実行ボタン８０２が押下されたと判定した場合は（Ｓ７０３にてＹＥＳ）Ｓ７０４へ処理を移行し、キャンセルボタン８０３が押下されたと判定した場合は（Ｓ７０３にてＮＯ）本処理フローを終了する。
【００６４】
Ｓ７０４にて、処理実行部３５３は、案件管理サーバー１０２に対して設置作業指示情報であるスクリプト６００の取得を要求する。Ｓ７０４において、Ｓ７０１の判断結果に応じてスクリプト取得要求のパラメータが異なる。自装置用の設置データが存在すると判定された場合は、スクリプト取得要求のパラメータとして自装置の装置ＩＤが送信される。自装置用の設置データが存在しないと判定された場合は、スクリプト取得要求のパラメータとして自装置の装置ＩＤ、及び設置データＩＤが送信される。案件管理サーバー１０２の案件管理部５０２は、スクリプト取得要求のパラメータで指定された設置データが存在する場合、その設置データを適用するためのスクリプト６００を返す。設置データが存在しない場合は、エラーメッセージを返す。そして、処理実行部３５３は、案件管理サーバー１０２からのスクリプト取得要求の応答を、通信部３５２を介して受信する。
【００６５】
Ｓ７０５にて、処理実行部３５３は、Ｓ７０４の応答としてスクリプトを取得できたか否かを判定する。スクリプトを取得できた場合は（Ｓ７０５にてＹＥＳ）、取得したスクリプト６００をＨＤＤ２１６に保存し、Ｓ７０７へ処理を移行する。スクリプト６００を取得できなかった場合は（Ｓ７０５にてＮＯ）Ｓ７０６へ処理を移行する。
【００６６】
Ｓ７０６にて、処理実行部３５３は、ＵＩ制御部３５１を介して操作部２０１にＳ７０４で受信したエラーメッセージを含むＵＩを表示する。そして、本処理フローを終了する。
【００６７】
図８（Ｃ）は、ＵＩ制御部３５１が、スクリプトを取得できなかった場合に操作部２０１へ表示するエラーメッセージ表示画面８２０の一例である。メッセージ８２１には、スクリプトを取得できなかった場合の原因が表示される。図８（Ｃ）では、入力した設置データＩＤに該当する設置データが存在しなかった場合の表示例を示している。メッセージ８２１で表示されるその他の内容として、ネットワーク接続時エラーやスクリプト生成時のエラーなどが挙げられる。終了ボタン８２２は、自動設置処理を終了するためのボタンである。終了ボタン８２２は、処理が継続できない場合に表示される。
【００６８】
なお、図８（Ｃ）では、スクリプトを取得できなかった場合に処理を終了することを指示可能なＵＩを示している。しかし、これに限らず、エラーの種類によって他の処理の実行を指示可能なように構成してもよい。例えば、設置データＩＤに該当する設置データが存在しなかった場合は、メッセージ８２１とともに設置データＩＤ入力部８１２と実行ボタン８０２を表示し、設置データＩＤの再入力を促して設置処理を継続させてもよい。
【００６９】
Ｓ７０７にて、処理実行部３５３は、スクリプト解析部３５４により解析したスクリプト６００の内容に従い、設置作業を実行する。Ｓ７０７において実施される設置処理では、ソフトウェア管理サーバー１０３と通信することで、処理に必要なソフトウェアのダウンロードや、ライセンスファイルの発行、再発行が実施される。
【００７０】
Ｓ７０８にて、処理実行部３５３は、Ｓ７０７のスクリプト６００の実行完了後に、ＵＩ制御部３５１を介して操作部２０１に実行結果を示すＵＩを表示する。そして、本処理フローを終了する。
【００７１】
図８（Ｄ）は、スクリプトの実行完了後に操作部２０１に表示される実行結果表示画面８３０の一例である。メッセージ８３１には、Ｓ７０７のスクリプトを実行した結果が表示される。図８（Ｄ）では、スクリプト実行結果がエラーなしで成功した場合の表示例を示している。一方、スクリプトの実行においてエラーが発生した場合は、失敗した旨を表示してもよい。
【００７２】
［自動設置処理］
図９は、本実施形態に係る案件管理サーバー１０２（データ格納部５０５、スクリプト生成部５０４）と、画像形成装置１０１（サポート機能３５０、拡張プログラムシステムサービス３０６）の連携を示す、画像形成装置の自動設置処理のシーケンスである。
【００７３】
Ｓ９００にて、案件管理サーバー１０２の制御部５０１は、通信部５０３を介して、サポート機能３５０のスクリプト解析部３５４からスクリプト取得要求を受信する。本工程は、図７のＳ７０４に対応する。
【００７４】
Ｓ９０１にて、スクリプト生成部５０４は、スクリプトを生成する。
【００７５】
Ｓ９０２にて、サポート機能３５０は、スクリプト生成部５０４からスクリプトを取得し、そのスクリプトを読み込む。
【００７６】
Ｓ９０３にて、サポート機能３５０のスクリプト解析部３５４は、スクリプト内のコマンドを読み込む。
【００７７】
Ｓ９０４にて、スクリプト解析部３５４は、複数の設定値コマンド６０６が存在するか否かを判定する。複数の設定値コマンド６０６が存在する場合、Ｓ９０５〜Ｓ９０６の処理が行われる。複数の設定値コマンド６０６が存在しない場合、Ｓ９０７へ処理を移行する。
【００７８】
Ｓ９０５にて、サポート機能３５０は、連続インポートフラグ情報をＯＮにして、ＲＡＭ４１２の一時記憶領域に記憶する。なお、連続インポートフラグ情報は、Ｓ９０２にてスクリプトを取得した際に初期化するような構成であってもよい。
【００７９】
Ｓ９０６にて、サポート機能３５０は、最後の設定値コマンド６０６に指定されたＵＵＩＤの値をＲＡＭ４１２の一時記憶領域に記憶する。なお、ＵＵＩＤに限らず、最後のインポートする設定データのファイル名を記憶しておいてもよい。
【００８０】
Ｓ９０７にて、サポート機能３５０のスクリプト解析部３５４は、再度先頭からスクリプトを読み込む。
【００８１】
Ｓ９０８にて、サポート機能３５０は、全コマンドの実行が完了したか否かを判定し、完了していた場合は本シーケンスを終了する。完了していない場合は、Ｓ９０９以降の処理が繰り返される。
【００８２】
Ｓ９０９にて、スクリプト解析部３５４は、一つずつコマンドを読み込み、コマンド種別を判別する。
【００８３】
Ｓ９１０にて、スクリプト解析部３５４は、ＲＡＭ４１２の一時記憶領域に記憶したＵＵＩＤを参照し、最後の設定値コマンド６０６か否かを判定する。最後の設定値コマンド６０６である場合、連続インポートフラグ情報をＯＦＦに変更して、ＲＡＭ４１２の一時記憶領域に記憶する。
【００８４】
Ｓ９１１にて、スクリプト解析部３５４は、読み込んだコマンドのコマンド種別を特定する。コマンド種別がソフトウェア／ライセンス／その他であると特定された場合は、Ｓ９２２へと処理を移行し、ソフトウェア／ライセンスに必要な処理を施し、次のコマンドを実行する。ソフトウェア／ライセンスに必要な処理に関しては、本実施形態に係る内容でないため、ここでは説明を省略する。この処理が完了した後、Ｓ９０９にて未処理のコマンドの読み込みが行われる。コマンド種別が設定値コマンドであると判別された場合は、Ｓ９１２の処理に移行する。
【００８５】
Ｓ９１２にて、サポート機能３５０は、拡張プログラムシステムサービス３０６に対してＲＡＭ４１２の一時記憶領域に記憶した連続インポートフラグ情報を指定のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）に反映して通知する。
【００８６】
Ｓ９１３にて、サポート機能３５０は、案件管理サーバー１０２のデータ格納部５０５から設定データを取得する。
【００８７】
Ｓ９１４にて、サポート機能３５０は、拡張プログラムシステムサービス３０６に対して、セマフォ取得要求（ロック要求）を出す。
【００８８】
セマフォが取得できた場合、Ｓ９１５にて、サポート機能３５０は、拡張プログラムシステムサービス３０６に対してインポート指示を出す。セマフォを取得できない場合は、取得できるまで待機する。なお、所定の時間が経過してもセマフォを取得できない場合には、エラーとして扱ってもよい。
【００８９】
Ｓ９１６にて、サポート機能３５０は、拡張プログラムシステムサービス３０６からインポート結果通知を受信する。
【００９０】
Ｓ９１７にて、サポート機能３５０は、拡張プログラムシステムサービス３０６から再起動有無の通知を受信する。
【００９１】
Ｓ９１８にて、サポート機能３５０は、再起動が必要で、かつ、ＲＡＭ４１２の一時記憶領域に記憶してある連続インポートフラグ情報がОＦＦか否かを判定する。本条件を満たす場合、Ｓ９１９へ処理を移行する。本条件を満たさない場合、Ｓ９２１へ処理を移行する。
【００９２】
Ｓ９１９にて、サポート機能３５０は、拡張プログラムシステムサービス３０６に対して、セマフォ解除要求（リリースロック要求）を出す。
【００９３】
Ｓ９２０にて、サポート機能３５０は、再起動指示を出す。そして、Ｓ９０９にて未処理のコマンドの読み込みが行われる。
【００９４】
Ｓ９２１にて、サポート機能３５０は、再起動を行わずに連続してインポートする設定データが残っているとして、再起動指示を出すことなく、セマフォ解除要求（リリースロック要求）だけを、拡張プログラムシステムサービス３０６に対して出す。その後、Ｓ９０９にて未処理のコマンドの読み込みが行われる。
【００９５】
［スクリプト実行処理］
図１０は、本実施形態における画像形成装置１０１の自動設置の処理フローを示す。図１０の処理フローは、画像形成装置１０１のサポート機能３５０が、ユーザーによって実行されることで処理を開始する。具体的には、設置作業者が、図８（Ａ）で示す初期表示画面８００における実行ボタン８０２の押下することで処理が開始される。なお、図１０は、図９に示した処理シーケンスに対応しており、同じ工程については同じ参照番号を付し、詳細な説明は省略する。ただし、Ｓ１００１は、Ｓ９１２、Ｓ９１４〜Ｓ９１７の処理をまとめて記載している。
【００９６】
以上、本実施形態によれば、再起動が必要であってもＲＡＭ４１２の一時記憶領域に記憶しておいた連続インポートフラグ情報によって、再起動のタイミングを任意に省略することが可能である。画像形成装置の１台あたりの再起動回数を減らすことができるので、画像形成装置の設定作業時間の短縮を見込むことができる。結果として、設定作業の効率化が可能となる。
【００９７】
＜第２の実施形態＞
第１の実施形態では、サポート機能３５０のスクリプト解析部３５４がスクリプトを読み込む際に、複数の設定値コマンド６０６が存在するかを判定していた（図９や図１０のＳ９０４）。第２の実施形態では、案件管理サーバー１０２のスクリプト生成部５０４が、設定値コマンド６０６が存在するか否かを判定し、設定値コマンド６０６を、連続設定値指示コマンドに置き換える方法について説明する。本実施形態において、図１〜図９にて示した構成と重複する構成については説明を省略する。以下、第１の実施形態と異なる構成について説明する。
【００９８】
図１１は、本実施形態に係る設置用のスクリプト１１００の記述例を示す。図１１の設置用のスクリプト１１００内の、設置データ識別部６０１、画像形成装置識別部６０２、処理記載部６０３、ファームウェア更新処理部６０４は、図６にて示した設置用のスクリプト６００と同様である。
【００９９】
設定データ連続インポート処理部１１０１は、＜ｃｏｎｔｉｎｕｏｕｓＩｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞タグの記載により処理を定義している。設定データ連続インポート処理部１１０１は、＜ｓｏｆｔｗａｒｅＵｒｌ＞タグ、＜ｃｏｍｍｏｎＳｅｔｔｉｎｇＦｉｌｅ＞タグ、及び＜ｉｎｄｉｖｉｓｕａｌＳｅｔｔｉｎｇＦｉｌｅ＞タグによりインポートする設定データを指定している。＜ｓｏｆｔｗａｒｅＵｒｌ＞タグは、インポートする設定データの取得先ＵＲＬを指定している。＜ｃｏｍｍｏｎＳｅｔｔｉｎｇＦｉｌｅ＞タグは、画像形成装置１０１に対して適用する共通設定データを示している。＜ｉｎｄｉｖｉｓｕａｌＳｅｔｔｉｎｇＦｉｌｅ＞タグは、画像形成装置１０１に対して適用する個別設定データを示している。以下、＜ｃｏｎｔｉｎｕｏｕｓＩｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞を、連続設定値指示コマンド１１０２と称する。
【０１００】
［スクリプト生成処理］
図１２は、本実施形態に係る案件管理サーバー１０２のスクリプト生成の処理フローを示す。図１２の処理フローは、制御部５０１が通信部５０３を介して、サポート機能３５０からスクリプト取得要求を受信することで開始される。
【０１０１】
Ｓ１２００にて、制御部５０１は、案件管理部５０２を介して受信した要求に含まれている設置データＩＤをキーとして、設置データ管理テーブル（表２）から該当する設置データを検索する。検索した結果、該当する設置データが存在していた場合は、案件管理部５０２はＲＡＭ４１２の一時記憶領域に設置データを記憶する。存在しなかった場合は、ＲＡＭ４１２には何も記憶しない。なお、存在しなかった場合は、そのことを示すためにＮｕｌｌ値や空文字などを記憶してもよい。
【０１０２】
Ｓ１２０１にて、制御部５０１は、Ｓ１２００の結果を受けて要求に含まれる設置データＩＤに該当する設置データの有無を判定する。該当する設置データが存在する場合は（Ｓ１２０１にてＹＥＳ）Ｓ１２０３へ処理を移行し、該当する設置データが存在しない場合は（Ｓ１２０１にてＮＯ）Ｓ１２０２へ処理を移行する。
【０１０３】
Ｓ１２０２にて、制御部５０１は、通信部５０３を介して要求元に設置データが存在しなかったことを示すエラーメッセージを送信する。そして、本処理フローを終了する。
【０１０４】
Ｓ１２０３にて、制御部５０１は、スクリプト生成部５０４を介して、要求に含まれる設置データＩＤ、または装置ＩＤで特定される設置データを画像形成装置１０１に適用するためのスクリプトを生成する。例えば、第１の実施形態にて示した図６のスクリプト６００を生成する。
【０１０５】
Ｓ１２０４にて、制御部５０１は、スクリプトに、設定データインポート処理部６０５（設定値コマンド）が２つ以上含まれているか否かを判定する。設定データインポート処理部６０５が２つ以上存在する場合は（Ｓ１２０４にてＹＥＳ）Ｓ１２０５へ処理を移行し、存在しない場合は（Ｓ１２０４にてＮＯ）Ｓ１２０６へ処理を移行する。
【０１０６】
Ｓ１２０５にて、スクリプト生成部５０４は、スクリプト内の設定データインポート処理部６０５を、図１１に示した設定データ連続インポート処理部１１０１の構成に書き換えることにより、スクリプトを生成する。つまり、複数の設定データインポート処理部６０５（ここでは、６０５Ａと６０５Ｂ）が、１つの設定データ連続インポート処理部１１０１に書き換えられる。
【０１０７】
Ｓ１２０６にて、制御部５０１は、通信部５０３を介して、生成したスクリプトを要求元へ送信する。そして、本処理フローを終了する。
【０１０８】
なお、第１の実施形態では、案件管理サーバー１０２が要求に応じてスクリプトを生成する場合には、図１２に示すＳ１２０４〜Ｓ１２０５の処理が無い処理フローにてスクリプトを生成することとなる。
【０１０９】
［スクリプト実行処理］
図１３は、本実施形態に係る画像形成装置１０１の自動設置の処理のフローチャートを示す。図１２の処理フローは、画像形成装置１０１のサポート機能３５０が、ユーザーによって実行されることで処理が開始される。具体的には、設置作業者が、図８（Ａ）で示す初期表示画面８００における実行ボタン８０２の押下することで処理が開始される。尚、図１３のＳ９０２、Ｓ９０３、Ｓ９０７〜Ｓ９１１、Ｓ９１３、Ｓ１００１、Ｓ９１８〜Ｓ９２２は、図１０の処理と同様のため、説明を省略する。なお、本処理フローでは、Ｓ９１０の工程は不要となる。
【０１１０】
Ｓ１３００にて、サポート機能３５０は、連続設定値指示コマンド１１０２が存在するか否かを判定する。連続設定値指示コマンド１１０２が存在しない場合（Ｓ１３００にてＮＯ）Ｓ１３０１へ処理を移行し、連続設定値指示コマンド１１０２が存在する場合（Ｓ１３００にてＹＥＳ）Ｓ１３０２へ処理を移行する。
【０１１１】
Ｓ１３０１にて、サポート機能３５０は、連続インポートフラグ情報をＯＮにして、ＲＡＭ４１２の一時記憶領域に記憶する。そして、Ｓ１００７へ進む。
【０１１２】
Ｓ１３０２にて、サポート機能３５０は、連続インポートフラグ情報をＯＦＦにして、ＲＡＭ４１２の一時記憶領域に記憶する。そして、Ｓ１００７へ進む。
【０１１３】
Ｓ９２１の処理の後、Ｓ１３０３にて、サポート機能３５０は、連続インポートフラグ情報をＯＦＦにして、ＲＡＭ４１２の一時記憶領域に記憶する。そして、Ｓ９０８へ進む。これは例えば、連続設定値指示コマンド１１０２による処理が終了した場合に、保留していた再起動を以降の処理にて実行可能とするためである。
【０１１４】
以上、本実施形態によれば、サポート機能３５０のスクリプト解析部３５４が設定値コマンド６０６数をカウントせずとも、スクリプト指示に応じて、再起動のタイミングを任意にずらすことが可能である。
【０１１５】
＜第３の実施形態＞
上述した設定データインポート処理部６０５は、共通設定データと個別設定データを分割して定義することが可能である。第１の実施形態、第２の実施形態では、これらを分割せずに一括で配信した構成について説明した。これに対し、本発明の第３の実施形態として、設定データを分割して構成する例について説明する。
【０１１６】
図１４は、本実施形態に係る設置用のスクリプト１４００の記述例を示す。図１４の設置用のスクリプト１４００内の、設置データ識別部６０１、画像形成装置識別部６０２、処理記載部６０３、及びファームウェア更新処理部６０４は、第１の実施形態の図６にて示した設置用のスクリプト６００と同様である。
【０１１７】
本実施形態において、設定データインポート処理部６０５は、共通設定データと個別設定データを分割して定義する。ここでは、３つの設定データインポート処理部６０５Ａ〜６０５Ｃを例に挙げて説明する。このように分割して定義するのは、共通設定データと個別設定データを複数回に分け、かつ、フォルダ生成処理部１４０１を間に挟むためである。例えば、デバイス内のフォルダサーバー機能を有効化してから共有先のフォルダを作成し、共有先のフォルダに対しての設定を行うために、このようなスクリプトを生成する場合がある。
【０１１８】
まず、設定データインポート処理部６０５Ａにおいて、共通設定データが記述される。次に、設定データインポート処理部６０５Ｂにおいて、個別設定データとして、デバイス内のフォルダサーバー機能を有効化する設定が記述される。
【０１１９】
次に、フォルダ生成処理部１４０１において、＜ｃｒｅａｔＦｏｌｄｅｒＣｏｍｍａｎｄ＞タグの記載によりフォルダ生成処理が定義される。＜ｆｏｌｄｅｒＰａｔｈ＞タグは、フォルダ生成先を指定している。＜ｆｏｌｄｅｒＮａｍｅ＞タグは、生成するフォルダ名を示す。
【０１２０】
最後に、設定データインポート処理部６０５Ｃにおいて、生成したフォルダに対して必要な設定が記述される。これにより、顧客先の環境に合わせたデバイス内のフォルダサーバー機能を設定した上で画像形成装置１０１を提供することが可能になる。
【０１２１】
本実施形態で示す設置用のスクリプト１４００の記述は、画像形成装置１０１の設置に必要な処理を限定するものではなく、必要に応じて処理の重複、増減があってもよい。
【０１２２】
［スクリプト実行処理］
図１５は、本実施形態に係る画像形成装置１０１の自動設置の処理フローを示す。本処理フローでは、図１４に示したように共通設定データと個別設定データが分割して定義されたスクリプトを読み込んだ際の処理である。図１５の処理フローは、画像形成装置１０１のサポート機能３５０が、ユーザーによって実行されることで処理を開始する。具体的には、設置作業者が、図８（Ａ）で示す初期表示画面８００における実行ボタン８０２の押下することで処理が開始される。尚、図１５のＳ９０２〜Ｓ９１１、Ｓ９１３、Ｓ９０１、Ｓ９１８〜Ｓ９２２は、第１の実施形態にて示した図９の処理と同様のため、説明を省略する。
【０１２３】
Ｓ９０４にて設定値コマンドが複数あると判定された場合（Ｓ９０４にてＹＥＳ）、Ｓ１５００にて、サポート機能３５０は、複数の設定値コマンド６０６に連続性があるか否かを判定する。図１４の例の場合、複数の設定値コマンド６０６に対応する設定データインポート処理部６０５Ａ、６０５Ｂは、連続性を有している場合である。ここでの連続性とは、設定データインポート処理部の間に他の処理部が含まれていないことを意味する。複数の設定値コマンド６０６が連続性を有していない場合（Ｓ１５００にてＮＯ）Ｓ９０７へ処理を移行する。設定値コマンド６０６が連続性を有する場合は（Ｓ１５００にてＹＥＳ）、サポート機能３５０は、連続インポートフラグ情報をＯＮにして、ＲＡＭ４１２の一時記憶領域に記憶する。そして、Ｓ９０５の処理へ移行する。
【０１２４】
以上、本実施形態によれば、サポート機能３５０のスクリプト解析部３５４が設定値コマンド６０６数をカウントせずとも、スクリプト指示に応じて、再起動のタイミングを任意にずらすことが可能となる。
【０１２５】
＜その他の実施形態＞
本発明は上述の実施形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１２６】
１０１…画像形成装置、１０２…案件管理サーバー、１０３…ソフトウェア管理サーバー、３５０…自動設置サポート機能、５００…案件管理機能、５５０…ソフトウェア管理機能
【図１】
2020038547.tif 000005
【図２】
2020038547.tif 000006
【図３】
2020038547.tif 000007
【図４】
2020038547.tif 000008
【図５】
2020038547.tif 000009
【図６】
2020038547.tif 000010
【図７】
2020038547.tif 000011
【図８】
2020038547.tif 000012
【図９】
2020038547.tif 000013
【図１０】
2020038547.tif 000014
【図１１】
2020038547.tif 000015
【図１２】
2020038547.tif 000016
【図１３】
2020038547.tif 000017
【図１４】
2020038547.tif 000018
【図１５】
2020038547.tif 000019