(57)【要約】【課題】設置データを作成する際、ソフトウェアの導入可否が機種によって一意に決まらないため、機種情報だけで単純に作業指示データを作成できず、作業指示データの処理に失敗することがある。【解決手段】作業指示データ作成の際に、機種の判断に加え、ソフトウェアを導入する際の有効化処理の有無を確認し、ソフトウェアの導入を作業指示データに追加可能か判断する。加えて有効化処理が含まれなくとも、ソフトウェアの導入指示が追加可能かを判断する。【選択図】図５
2020035232.tif 000002
【特許請求の範囲】
【請求項１】
対象装置の初期設置時に前記対象装置が実行する処理を記述した作業指示データを作成する情報処理装置であって、
作成される作業指示データに対して、ソフトウェアのインストールを前記処理として追加する操作が行われた場合に、前記作業指示データの適用対象の前記対象装置が、前記ソフトウェアの追加許可の機能を有する特定機種であるかを判断する第１判断手段と、
前記特定機種であると判断した場合に、前記ソフトウェアの追加許可の機能を有効化する有効化処理が前記作業指示データに含まれているかを判断する第２判断手段と、
前記有効化処理が含まれていないと判断した場合には、前記ソフトウェアは、前記有効化処理が含まれていなくとも前記対象装置へとインストール可能か判断する第３判断手段と、
前記第１判断手段により前記特定機種ではないと判断した場合、または前記第２判断手段により前記有効化処理が含まれていると判断した場合、または前記第３判断手段によりインストール可能と判断した場合に、前記ソフトウェアのインストールを前記設定データに追加する追加手段と
を有することを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記第１判断手段により前記対象装置が前記特定機種でないと判断した場合に、前記対象装置では不要な処理が存在するかを判断する第４判断手段を更に有し、
前記追加手段は、前記不要な処理が存在していないと判断した場合にも、前記ソフトウェアのインストールを前記作業指示データに追加する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
ユーザインターフェイス手段を更に有し、
ユーザーが、前記ユーザインターフェイス手段を介して、前記作業指示データへと前記処理を追加する操作を行い、
前記第３判断手段によりインストール可能でないと判断した場合、または前記第４判断手段により前記不要な処理が存在していると判断した場合には、前記ユーザインターフェイス手段によりエラーを出力する
ことを特徴とする情報処理装置。
【請求項４】
請求項１乃至３のいずれか一項に記載の情報処理装置であって、
前記ユーザインターフェイス手段は、前記処理および該処理により適用されるコンテンツ名とが処理の順序に従って配置された画面を表示する
ことを特徴とする情報処理装置。
【請求項５】
請求項１乃至４のいずれか一項に記載の情報処理装置であって、
前記作業指示データの保存の指示に応じて、前記対象装置が前記特定機種であり、かつ、前記ソフトウェアの追加許可の機能を有効化する処理が前記作業指示データに含まれているか判断し、該当する場合には、前記ソフトウェアの追加許可の機能を無効化する無効化処理を前記作業指示データの末尾に追加する
ことを特徴とする情報処理装置。
【請求項６】
請求項１乃至５のいずれか一項に記載の情報処理装置であって、
前記第１判断手段により前記対象装置が前記特定機種であると判断した場合には、前記ソフトウェアの追加許可の機能を無効化する無効化処理が前記作業指示データに含まれているか判断する第５判断手段を更に有し、
含まれていないと判断した場合には前記第２判断手段による判断を行い、含まれていると判断した場合には、エラーとする
ことを特徴とする情報処理装置。
【請求項７】
請求項１乃至６のいずれか一項に記載の情報処理装置であって、
前記作業指示データを外部サーバーに送信する送信手段を更に有し、
前記作業指示データは前記外部サーバーに保存され、前記対象装置が前記外部サーバーから取得して実行することを特徴とする情報処理装置。
【請求項８】
請求項１乃至７のいずれか一項に記載の情報処理装置であって、
前記ソフトウェアは、前記対象装置の機能を拡張する拡張プログラムであることを特徴とする情報処理装置。
【請求項９】
請求項１乃至８のいずれか一項に記載の情報処理装置であって、
前記対象装置は画像形成装置であることを特徴とする情報処理装置。
【請求項１０】
請求項１乃至９のいずれか一項に記載の情報処理装置であって、
前記作業指示データは、前記対象装置により解釈されるスクリプトであることを特徴とする情報処理装置。
【請求項１１】
請求項１乃至１０のいずれか一項に記載の情報処理装置と、
前記対象装置であり、前記作業指示データに含まれた前記処理を実行する画像形成装置と、
を含むことを特徴とする画像形成装置の初期設置システム。
【請求項１２】
情報処理装置による、対象装置の初期設置時に前記対象装置が実行する処理を記述した作業指示データの作成方法であって、
作成される作業指示データに対して、ソフトウェアのインストールを前記処理として追加する操作が行われた場合に、前記作業指示データの適用対象の前記対象装置が、前記ソフトウェアの追加許可の機能を有する特定機種であるかを判断し、
前記特定機種であると判断した場合に、前記ソフトウェアの追加許可の機能を有効化する有効化処理が前記作業指示データに既に含まれているかを判断し、
前記有効化処理が含まれていないと判断した場合には、前記ソフトウェアは、前記有効化処理が含まれていなくとも前記対象装置へとインストール可能か判断し、
前記前記対象装置は前記特定機種ではないと判断した場合、または前記作業指示データに前記有効化処理が含まれていると判断した場合、または前記ソフトウェアがインストール可能と判断した場合に、前記ソフトウェアのインストールを前記設定データに追加する
ことを特徴とする作成方法。
【請求項１３】
情報処理装置による、対象装置の初期設置時に前記対象装置が実行する処理を記述した作業指示データを作成するためのプログラムであって、
作成される作業指示データに対して、ソフトウェアのインストールを前記処理として追加する操作が行われた場合に、前記作業指示データの適用対象の前記対象装置が、前記ソフトウェアの追加許可の機能を有する特定機種であるかを判断し、
前記特定機種であると判断した場合に、前記ソフトウェアの追加許可の機能を有効化する有効化処理が前記作業指示データに既に含まれているかを判断し、
前記有効化処理が含まれていないと判断した場合には、前記ソフトウェアは、前記有効化処理が含まれていなくとも前記対象装置へとインストール可能か判断し、
前記前記対象装置は前記特定機種ではないと判断した場合、または前記作業指示データに前記有効化処理が含まれていると判断した場合、または前記ソフトウェアがインストール可能と判断した場合に、前記ソフトウェアのインストールを前記設定データに追加するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び作業指示データの作成方法及びプログラムに関する。
【背景技術】
【０００２】
画像形成装置を新規導入するにあたり、顧客先での使用環境に応じた初期設置作業が必要である。初期設置作業では、ファームウェアの更新、設定値の変更、ソフトウェアの導入などを行う。これらの初期設置作業には多くの時間と手間が掛かる。そのため、初期設置で行う作業を編集ツールにより予め作業指示書に定義し、ファームウェア、設定値、ソフトウェアなど初期設置に必要なデータ(以下、設置データとする)を用いて、画像形成装置に自動的に適用するシステムが提案されている。
【０００３】
画像形成装置は、前述の通り画像形成装置の機能拡張のためのソフトウェアを導入可能である。しかしながら画像形成装置の種類（以下、機種と記す）によっては、ソフトウェアを導入できないことがある。例えば、画像形成装置自体がソフトウェアを導入する仕組みを持たないケースや、導入対象のソフトウェアが機種依存するように作成されているケースなどが挙げられる。このようなケースでソフトウェアをミスなく導入する方法の一例として、特許文献１が開示されている。特許文献１では、クライアント装置が、ソフトウェア導入対象の画像形成装置から機種情報を取得し、該機種情報をもとに該機種に導入可能なソフトウェアを特定する。その後、導入可能なソフトウェアを対象機種に対して送付することでソフトウェア導入の効率化を図っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−４９７１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
初期設置作業は、設置データを作成するタイミングと、設置データを適用するタイミングが異なる。これは設置データを作成、または適用するユーザー、または場所が異なることがあるためである。例えば、設置データは販売会社にて作成するが、適用は顧客先で行う場合などが挙げられる。
【０００６】
特許文献１の技術は、導入先の画像形成装置から機種情報を取得する必要があるため、導入先の画像形成装置と通信可能な状態で作業を実施する必要がある。このため、初期設置作業のための設置データを予め作成しておくことができない。
【０００７】
また設置データを作成する際、機種情報だけでソフトウェアを導入可能か判断できないこともある。例えば、ソフトウェア導入のために、事前に対象の画像形成装置のソフトウェア追加許可の有効化が必要なケースがある。またソフトウェアによっては追加許可の有効化が不要でソフトウェアを導入可能なケースもある。
【０００８】
以上のようにソフトウェアの導入可否が機種によって一意に決まらないケースがあり、機種情報だけで単純に設置データを作成できない。またソフトウェアの導入ができない設置データを作成してしまうと、設置データの適用に失敗してしまい、大きな手戻りが発生してしまう。
【０００９】
本発明は上記従来例に鑑みてなされたもので、画像形成装置の初期設置作業にあたって適切な設置データを作成し、設置作業を効率的に行うことを可能にする情報処理装置及び作業指示データの作成方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明は以下の構成を有する。すなわち、対象装置の初期設置時に前記対象装置が実行する処理を記述した作業指示データを作成する情報処理装置であって、
作成される作業指示データに対して、ソフトウェアのインストールを前記処理として追加する操作が行われた場合に、前記作業指示データの適用対象の前記対象装置が、前記ソフトウェアの追加許可の機能を有する特定機種であるかを判断する第１判断手段と、
前記特定機種であると判断した場合に、前記ソフトウェアの追加許可の機能を有効化する有効化処理が前記作業指示データに含まれているかを判断する第２判断手段と、
前記有効化処理が含まれていないと判断した場合には、前記ソフトウェアは、前記有効化処理が含まれていなくとも前記対象装置へとインストール可能か判断する第３判断手段と、
前記第１判断手段により前記特定機種ではないと判断した場合、または前記第２判断手段により前記有効化処理が含まれていると判断した場合、または前記第３判断手段によりインストール可能と判断した場合に、前記ソフトウェアのインストールを前記設定データに追加する追加手段とを有することを特徴とする情報処理装置が提供される。
【発明の効果】
【００１１】
本発明により、画像形成装置の初期設置作業にあたって適切な設置データを作成し、設置作業を効率的に行うことが可能になる。
【図面の簡単な説明】
【００１２】
【図１】初期設置システムの機器構成の例を示す図
【図２】本発明における画像形成装置１０１のハードウェア構成の一例を示す図
【図３】本発明における画像形成装置１０１のソフトウェア構成の一例を示す図
【図４】本発明における初期設置システム全体のソフトウェア構成を示す図
【図５】本発明における設置データ編集アプリにおける設置データ作成の処理フローを示す図
【図６】本発明における設置データ編集画面の一例を示す図
【図７】本発明における作業指示書の一例を示す図
【図８】第１の実施形態における設置サポート機能３５０の実施する設置処理フローを示す図
【図９】第２の実施形態における設置データ編集アプリの設置データ保存処理フローを示す図
【図１０】第３の実施形態における設置サポート機能３５０の実施する設置処理フローを示す図
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための形態について図面を用いて説明する。以降、本実施形態において画像形成装置に導入する（以降、インストールする、とも記す）ソフトウェアとして、画像形成装置で動作するアプリケーション（以降、アプリと記す）を例として記載するが、ソフトウェアであればこの限りでない。また本実施形態において、画像形成装置に適用するデータやコンテンツ、特に初期設置の際に適用するデータ等を設置データと記す。さらにデータやコンテンツを適用するための作業指示書を含めて設置データと記す場合がある。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１４】
＜第１の実施形態＞
●初期設置システムの構成
図１は、本発明における画像形成装置１０１を含む初期設置システムの機器構成の例を示す図である。初期設置システムとは、画像形成装置１０１の初期設置を実施するために構成された仕組みである。本実施形態の初期設置システムは、ネットワーク１００に接続された複数の画像形成装置１０１と、画像形成装置１０１が通信可能なクライアント装置１０２、及び外部サーバー１０３で構成される。設置対象の画像形成装置を、対象装置と呼ぶことがある。なお画像形成装置は対象装置の一例であって、他の種の装置を対象装置とすることも可能である。
【００１５】
画像形成装置１０１は、複写機にスキャナー、プリンター、ファクシミリ、ファイル送信機能など複数の機能を統合した複合機である。また、画像形成装置１０１は、ネットワークに接続するインターフェースを有している。図１における画像形成装置１０１としては、画像形成装置１０１ａ、及び画像形成装置１０１ｂが存在している。画像形成装置１０１ａは、アプリをインストールするために事前に対象の画像形成装置のソフトウェア追加許可の有効化が必要な機体である。一方、画像形成装置１０１ｂは、アプリインストール時に特別な操作は不要な機体である。
【００１６】
クライアント装置１０２は、設置データ作成のための情報処理装置であり、ネットワーク１００を介して外部サーバー１０３と通信し、作成した設置データを保存できる。クライアント装置１０２で作成する設置データは、画像形成装置１０１に対して適用するデータ、及び作業指示書を指す。また作業指示書にはインストール対象のソフトウェアや設定値などの実ファイルや実ファイルの取得先を指定できる。なお作業指示書は画像形成装置１０１等の装置により読み取り可能なデジタルデータ（作業指示書データまたは作業指示データとも呼ぶ）であって良いが、本明細書では単に作業指示書と呼ぶ。
【００１７】
外部サーバー１０３は、画像形成装置１０１にインストールするソフトウェアや設定値などのコンテンツを管理する管理サーバーである。またクライアント装置１０２で作成した各種データを保存しておくことも可能である。尚、本実施形態において外部サーバー１０３にはすでに必要なコンテンツ情報、及びデータは登録されているものとして説明する。登録方法については特に記載しないが、外部サーバー１０３にＷｅｂ登録用のＵＩを用意し、それを操作することで登録しても良いし、別途登録可能なアプリケーションを介して登録しても良い。また、本実施形態における外部サーバー１０３は、コンテンツ管理や作成データ管理の役割を兼ね備えているが、画像形成装置１０１やクライアント装置１０２から通信可能であればよく、コンテンツ管理と作成データ管理を分割しても良い。またコンテンツの種類（ファームウェアやアプリケーション）などで分かれていても良くこれに限定されない。
【００１８】
本実施形態において、初期設置システムは、初期設置用の設置データを作成する流れとして、クライアント装置１０２で作成した設置作業の順序を示す作業指示書を含む設置データを一度外部サーバー１０３にて保存、管理することを想定している。また設置データを適用する流れとして、画像形成装置１０１が外部サーバー１０３から作成した設置データを取得、適用することを想定している。しかしながらこれに限らず、クライアント装置１０２で作成した設置データを不図示の可搬記憶媒体、例えばＵＳＢストレージに保存し、画像形成装置１０１は、ＵＳＢストレージから設置データを取得しても良い。
【００１９】
●ハードウェア
図２は、本発明における画像形成装置１０１のハードウェア構成の一例を示す図である。本発明を制御するＣＰＵ（中央処理ユニット）２０１、ＣＰＵ２０１のワークエリアを提供するＲＡＭ２０２、画像を読み取る読取部２０３、画像を印刷する印刷部２０４、本発明のプログラムや様々な設定を記憶する記憶部２０５（ＨＤＤやＮＶＲＡＭ等でもよい）が存在する。さらに、ユーザーがコマンドの入力を行うユーザー入力部２０６、画面表示を行うＵＩ表示部２０７、他機器とネットワークによる通信を行うネットワーク部２０８、及び各コンポーネントを接続するメインバス２００により構成されている。尚、本実施形態では特に断らない限り、情報処理装置１０１はＣＰＵ２０１がメインバス２００を介してＲＡＭ２０２、読み取り部２０３、印刷部２０４、記憶部２０５、ユーザー入力部２０６、ＵＩ表示部２０７、ネットワーク部２０８を制御する。また、ＵＩ表示部２０７は、タッチパネルディスプレイのようなユーザー入力装置２０６を兼ねても良い。
【００２０】
●画像形成装置のソフトウェア
図３は、本実施形態における画像形成装置１０１のソフトウェア構成の一例を示す図である。図３に示す各機能部は、画像形成装置１０１のＣＰＵ２０１が制御プログラムを実行することにより実現される。
【００２１】
図３（Ａ）は、画像形成装置１０１ａにおけるソフトウェア構成であり、ネイティブプログラム３００、及び設置サポート機能３５０で構成されている。
【００２２】
ネイティブプログラム３００は、画像形成装置１０１を動作させるためのソフトウェアプラットフォームであり、ファームウェア更新管理部３０１、組み込みオプション管理部３０２、拡張プログラム管理部３０４、設定管理部３０５を含む。尚、ネイティブプログラム３００にはＯＳ（Ｏｐｅｒａｔｉｏｎｇ  Ｓｙｓｔｅｍ）を含んでいても良いし、あとから追加した拡張プログラムを含めても良い。
【００２３】
ファームウェア更新管理部３０１は、ファームウェアを更新するための各種機能を提供する。例えば、ファームウェア更新管理部３０１は、ユーザーから指定されたファームウェアを参照し、ファームウェアの更新が必要か否かを判断する。またファームウェア更新管理部３０１は、画像形成装置１０１のファームウェアを更新する。
【００２４】
組み込みオプション管理部３０２は、ネイティブプログラム３００に予め組み込まれているオプション機能を有効化し、使用可能にする。組み込みオプション管理部３０２は、ユーザーから指定されたオプションライセンスファイルにより特定されるオプション機能を識別し有効化する。ソフトウェア追加許可３０３は、オプション機能の一つであり、本機能を有効化することで後述の拡張プログラムをインストール可能とする機能である。ソフトウェア追加許可３０３は、前述の機能を果たすためのプログラムであってもよいが、ソフトウェアの追加を許可するか否かを示すデータであってもよい。尚、ソフトウェア追加許可３０３のオプション機能は、拡張プログラムのインストールに限定されず、例えばファームウェアを更新する際にオプション機能の有効化状態を確認し、インストール可否を判断しても良い。またオプション機能は、ソフトウェア追加許可３０３に限定されず、任意のオプション機能が備わっていても良い。
【００２５】
拡張プログラム管理部３０４は、ＵＩ表示装置２０７からのユーザー指示や、設置作業の作業指示に従い、画像形成装置１０１にインストールされた拡張プログラムを管理する。例えば、画像形成装置１０１にインストールされた拡張プログラムの起動状態や、ライセンス期限、画像形成装置１０１起動時の自動起動など、拡張プログラムに関する処理を担う。拡張プログラムとは、画像形成装置に対して機能を拡張できるプログラムを指しており、拡張プログラムの一つとしてアプリケーションが挙げられる。以降、説明のため拡張プログラムをアプリケーション、または単にアプリと記す。
【００２６】
アプリケーション（すなわち拡張プログラム）は、ネイティブプログラム３００を介してのみ、他のアプリケーションなどの画像形成装置１０１の各モジュールへアクセスすることができる。拡張プログラム管理部３０４が管理するアプリケーションは、各々がＵＩを持っており、画像形成装置１０１のＵＩ表示装置２０７のメインメニュー画面（不図示）にアイコン等を表示できる。またユーザーがメインメニュー画面上のアイコンを選択すると、ＵＩ表示装置２０７はユーザーによって選択されたアプリケーションのＵＩをＵＩ表示装置２０７に表示する。
【００２７】
設定管理部３０５は、プリンターやＦＡＸなどの各種設定情報を管理する。設定管理部３０５は、例えば、ユーザーから１つまたは複数の設定、または複数の設定情報を含むファイルを指定されると、ネイティブプログラム３００の設定情報を書き換える機能を提供する。なお、設定管理部３０５は、ユーザインタフェース（以下、ＵＩと記述）を持っており、ユーザーは画像形成装置１０１のＵＩ表示装置２０７に表示される設定メニュー画面（不図示）を介して設定変更の指示ができる。
【００２８】
本実施形態において、設置サポート機能３５０は、画像形成装置１０１にインストールされたアプリケーションの一つとして実現されるものとする。ただし、これに限らず組み込みオプション機能などで実現されていても良い。設置サポート機能３５０の各構成要素は、画像形成装置１０１の記憶装置２０５等に格納されており、ＣＰＵ２０１が各機能に応じたプログラムを実行することにより設置サポート機能を実現する。設置サポート機能３５０は、通信部３５１、ＵＩ制御部３５２、スクリプト管理部３５３、及び処理部３５４を有する。
【００２９】
通信部３５１は、ＨＴＴＰプロトコルに従い、ネットワーク１００を介して外部サーバー１０３と通信する。具体的には、通信部３５１は外部サーバー１０３から送信される作業指示書を含む設置データを受信する。また通信部３５１は、外部サーバー１０３に対して各種データの取得要求や設置結果のアップロードを行う。
【００３０】
ＵＩ制御部３５２は、設置サポート機能を操作するためのＵＩを、ＵＩ表示装置２０７を介してユーザーに提供し、ユーザーの操作を受け付ける。
【００３１】
スクリプト管理部３５３は、通信部３５１が外部サーバー１０３から取得した作業指示書であるスクリプトを解析する。解析されたスクリプトに基づき、スクリプトを解釈して設置サポート機能が実行すべき処理や順序を決定し、処理部３５４に指示する。
【００３２】
処理部３５４は、ＵＩ制御部３５２、スクリプト管理部３５３の指示に従い、各種処理を行う。処理部３５４は、通信部３５１を介して外部サーバー１０３から取得した設置データを、ネイティブプログラム３００の各管理部に渡し、具体的な処理を依頼する。例えば、外部サーバー１０３から取得したオプションライセンスファイルを組み込みオプション管理部３０２に渡し、当該オプションライセンスに対応するオプション機能、例えばソフトウェア追加許可３０３の有効化を指示し、有効化させる。また例えば、ソフトウェア追加許可３０３を有効化した上で、外部サーバー１０３から取得したアプリケーション及びライセンスファイルを拡張プログラム管理部３０４に渡し、対象のアプリのインストールを指示し、インストールさせ、併せて有効化させる。
【００３３】
図３（Ｂ）は、画像形成装置１０１ｂにおけるソフトウェア構成であり、図３（Ａ）と異なりソフトウェア追加許可３０３が不要な構成となっている。これにより、アプリなどのソフトウェアをインストールする際に、ソフトウェア追加許可のオプション機能を有効化せずとも対象のアプリをインストール可能となる。尚、図３（Ｂ）は、ソフトウェア追加許可３０３を除き、図３（Ａ）と同じであるため、説明を省略する。
【００３４】
図３に示すソフトウェア構成は、基本的な部分のみであり、実施環境によっては、画像形成装置１０１が他の機能を備えるようにしてもよい。また、不要な機能については、画像形成装置１０１が備えていなくても良い。
【００３５】
●外部サーバーおよびクライアントのソフトウェア
図４は、本発明における初期設置システム全体のソフトウェア構成を示す図である。尚、クライアント装置１０２、及び外部サーバー１０３におけるハードウェア構成については、一般的なコンピュータの構成と同じため説明を省略する。すなわち、ＣＰＵによりメモリに記憶したプログラムを実行し、また特にクライアント装置１０２はユーザインターフェイスを提供するための操作ユニットなどを有する。図４に示す各機能部は、クライアント装置１０２、及び外部サーバー１０３のそれぞれが有するＣＰＵが制御プログラムを実行することにより実現される。
【００３６】
クライアント装置１０２は、設置データ編集アプリ４００を有する。設置データ編集アプリ４００は、画像形成装置１０１に対して適用すべきデータ、及びデータの適用順序を示す作業指示書を作成、編集するためのアプリケーションである。設置データ編集アプリ４００は、通信部４０１、ＵＩ制御部４０２、スクリプト生成部４０３を有する。
【００３７】
通信部４０１は、ネットワーク１００を介して、外部サーバー１０３と通信を行う。本実施形態において、通信部４０１は、ＨＴＴＰプロトコルによる通信を行うことを想定しているが、外部の装置と通信可能であればよく、これに限定されない。
【００３８】
ＵＩ制御部４０２は、設置データ編集アプリ４００を操作するためのＵＩを、クライアント装置１０２におけるＵＩ表示装置（例えばディスプレイ）を介してユーザーに提供し、ユーザーの操作を受け付ける。本操作により、ユーザーは初期設置に必要な設置データ、つまり適用対象コンテンツの指定、及び作業指示書の作成を実施する。操作画面については図５で後述する。
【００３９】
スクリプト生成部４０３は、UI制御部４０２で指定したコンテンツをもとに、作業指示書（スクリプト）を生成する。作業指示書を生成するにあたり、画像形成装置１０１へ適用するデータの適用順序を決定する。また作業指示書を生成した後、通信部４０１を介して外部サーバー１０３に対して設置データを保存する。尚、本実施形態における保存時の設置データは、作業指示書、及び作業指示書に記載されたコンテンツ情報を想定しているが、これに限らず設置に必要なデータがあれば保存しても良い。また、設置データ保存の際、コンテンツの取得先を設置指示書内に記載することを想定しているが、これに限らず物理ファイルを外部サーバー１０３から適用対象のデータを取得し、これを保存しても良い。
【００４０】
外部サーバー１０３は、画像形成装置１０１にインストールするソフトウェアや設定値などのコンテンツを管理する管理サーバーであり、設置データ管理部４５１、コンテンツ管理部４５２、通信部４５３を有する。
【００４１】
設置データ管理部４５１は、設置データ編集アプリ４００で生成した設置データを管理する。例えば、設置データ管理部４５１は、クライアント装置１０２から設置データとともに保存要求を受け取ると、外部サーバー１０３が保持する記憶装置（不図示）に設置データを格納する。また画像形成装置１０１やクライアント装置１０２から設置データの取得要求を受けると、該当の設置データを要求元へ送信する。設置データの管理方法として、保存時に設置データを一意に識別するためのＩＤ（以降、設置データＩＤ）を発行し、設置データＩＤを保存した設置データの主キーとして利用する。尚、設置データＩＤに限らず、画像形成装置１０１を一意に識別するデバイスシリアル番号などを利用しても良い。
【００４２】
コンテンツ管理部４５２は、ファームウェアやアプリケーションなどのソフトウェア、また必要に応じてライセンスを管理する。例えば、コンテンツ管理部４５２は、クライアント装置１０２から通信部４５３を介して、機種情報とあわせてコンテンツ情報の取得要求を受けると、自身の管理するコンテンツから該当の機種でインストール可能なソフトウェアの情報を応答する。例えば、画像形成装置１０１から通信部４５３を介してアプリの取得要求を受けると、画像形成装置１０１から要求されたアプリケーションを画像形成装置１０１へ送信する。同時に、コンテンツ管理部４５２はアプリケーションをインストールするためのライセンスを発行し、画像形成装置１０１へ送信する。
【００４３】
通信部４５３は、ネットワーク１００を介して画像形成装置１０１やクライアント装置１０２と通信する。例えば、通信部４５３はクライアント装置１０２から送信される作業指示書を含む設置データを受信し、設置データ管理部４５１へ要求を伝達する。また通信部３５１は、画像形成装置１０１からのデータ取得要求を受けると設置データ管理部４５１やコンテンツ管理部４５２へ要求を伝達する。
【００４４】
●設置データの作成
図５は、本実施形態におけるクライアント装置１０２の設置データ編集アプリ４００による設置データ作成の処理フローである。図５の処理フローは、ユーザーが設置データ編集アプリ４００を起動することで処理を開始する。また図５の処理フローは、特に断りのない限り、ＵＩ制御部４０２が主体で動作する。尚、図５において、ＵＩ制御部４０２が各種判断を実施しているが、これに限らず他の処理部がＵＩ制御部４０２の指示を受けて実施しても良い。いずれにしてもハードウェアの観点では、クライアント装置１０２のＣＰＵが図５の手順を実現するためのプログラムを実行する。ここで設置データ編集アプリ４００起動時に表示する画面の一例を、図６を用いて説明する。
【００４５】
●設置データ編集画面
図６は、本実施形態における設置データ編集アプリ４００が設置データを編集するユーザーに対して表示する画面の一例である。図６（Ａ）は、設置データ編集アプリ４００が提供する設置データを編集するための設置データ編集画面６００である。本画面では、画像形成装置１０１に対して適用するファームウェアやアプリ、設定値などの設置データとその適用順序を指す作業手順書を作成し、また編集できる。なお図６（Ａ）では、すでに作成済みの作業手順書が表示されており、例えば設置データ編集アプリ４００を起動し、例えば表示された選択画面において対象となる画像形成装置を選択することで、対応する設置データが読み込まれて表示されてよい。
【００４６】
設置データ編集画面６００は、設置データを適用する対象の機種を示す機種ラベル６０１、設置の順序と適用する設置データの具体的内容を示す設置作業リスト６０２で構成される。また設置データに関する指示を設置作業リスト６０２に追加するための追加ボタン６０３、及び削除するための削除ボタン６０４、及び作成した設置データを外部サーバー１０３へ保存するための保存ボタン６０５を有する。
【００４７】
機種ラベル６０１は、作成する設置データを適用する画像形成装置の機種を表示するラベルであり、ユーザーは機種ラベル６０１を参考に必要な設置データを作成する。機種ラベル６０１に表示する機種は、例えば設置データ編集画面６００を表示する直前で機種選択画面（不図示）などにより選択しても良いし、本画面にて機種選択できても良い。尚、図５で機種ラベル６０１に表示する"機種Ａ"は、前述の画像形成装置１０１ａに該当するソフトウェア追加許可３０３が必要な機種と仮定する。
【００４８】
設置作業リスト６０２は、適用対象の機種に対して、どのようなデータをどの順序で処理するかの指示を表示するためのリストである。例えば設置作業リスト６０２において、最初に機種Ａに対して実施する指示はファームウェア更新処理であり、具体的なデータとして"機種Ａ＿２０．０１"というファームウェアを適用することを示している。また次の指示として"ソフトウェア追加許可"３０３のオプション機能の有効化処理を実行すること、アプリケーションをインストールすること、設定値を適用すること、をこの順序で示している。なお対応する設置データがない場合や設置作業リストが空の場合には、例えば枠のみを表示するなどしてよい。
【００４９】
追加ボタン６０３は、適用対象機種に対して適用するデータ、及び適用指示を追加するためのボタンである。ユーザーが追加ボタン６０３を押下すると、設置データ編集アプリ４００はユーザーに対して後述の図６（Ｂ）のダイアログを表示する。図６（Ｂ）のダイアログが、ＯＫボタン６１６の操作で閉じられると、ダイアログで指定された設置処理の指示を設置作業リスト６０２の最後へ作業指示を追加する。
【００５０】
削除ボタン６０４は、設定済みの設置処理が不要になった場合に、不要になった設置作業指示を削除するためのボタンである。ユーザーが設置作業リスト６０２の削除対象項目を選択し削除ボタン６０４を押下することで、設置作業リスト６０２から選択項目が削除される。
【００５１】
保存ボタン６０５は、設置データを外部サーバー１０３へ保存するためのボタンである。保存の際、図７で後述する作業指示書（スクリプト）を生成したうえで、通信部４０１を介して外部サーバー１０３へ通知する。
【００５２】
図６（Ａ）において、設置作業リスト６０２で表示する設置指示の順序を変更することができないＵＩとなっているが、必要に応じて、設置指示の順序を変更可能なボタンなどを用意しても良い。
【００５３】
図６（Ｂ）は、画像形成装置１０１で実施する設置処理がどのような処理で、どのようなデータを適用するかを指定するための処理追加ダイアログ６１０である。処理追加ダイアログ６１０は、追加処理指定部６１１、コード入力部６１２、コード検索ボタン６１３、名称表示部６１４、キャンセルボタン６１５、ＯＫボタン６１６を有する。
【００５４】
追加処理指定部６１１は、設置作業としてどのような処理を追加するのかを指定する。指定は、リスト表示された候補から選択することで行われてよい。その場合、候補となる処理は予め決められていてよい。例えば図６（Ｂ）では、アプリのインストール処理を追加が選択された状態を示している。追加処理指定部６１１は、アプリのインストール処理以外でも、ファームウェア更新処理やオプション機能の有効化処理、設定値の適用処理など選択可能である。尚、設置作業の具体的な処理を指定できれば良いため、これに限らず例えば再起動処理などが選択できても良い。
【００５５】
コード入力部６１２は、適用対象のデータを特定するためのＩＤを入力するためのコントロールである。図６（Ｂ）では、ユーザーがインストール対象のアプリケーションを指定するため、ＡＰＰ０１というＩＤを入力した例である。
【００５６】
コード検索ボタン６１３は、ユーザーによって押下されると、コード入力部６１２に入力したＩＤに該当するデータを外部サーバー１０３へ問い合わせる。問い合わせた結果、データが特定できた場合は、データの名称を名称表示部６１４に表示する。特定できなかった場合は、エラーメッセージ（不図示）などを表示（あるいは出力）しても良い。あるいはＩＤを直接入力せず、指定された追加処理６１１を添付して対象となりえるデータを外部サーバー１０３に問い合わせ、応答に含まれたデータを候補としてリスト表示し、そこから選択するように構成してもよい。
【００５７】
名称表示部６１４は、コード検索ボタン６１３の問い合わせ結果に応じて、データの名称を表示するラベルである。
【００５８】
キャンセルボタン６１５は、処理追加ダイアログ６１０における作業を中止するためのボタンである。キャンセルボタン６１５が押下されると、処理を追加することなく処理追加ダイアログ６１０を閉じ、図６（Ａ）の設置データ編集画面６００に戻る。
【００５９】
ＯＫボタン６１６は、追加処理指定部６１１等で指定した設置処理、及び設置データを確定するためのボタンである。ＯＫボタン６１６が押下されると、処理追加ダイアログ６１０を閉じ、また処理追加ダイアログ６１０で指定した設置処理、及び設置データを設置データ編集アプリ６００の設置データ編集画面６００に指示情報として渡し、設置データ編集画面６００に戻る。その場合には追加された処理に関するデータが設置作業リスト６０２に追加されて表示される。図５の説明に戻る。
【００６０】
●設置データ作成処理手順
Ｓ５００は、ユーザーが設置データ編集アプリ４００に対してどのような操作をしたかを判断する処理である。具体的には図６（Ａ）の追加ボタン６０３を押下して、図６（Ｂ）の画面で入力した設置処理を追加したのか、保存ボタン６０５を押下して設置データを保存したかを判断する。すなわち、保存ボタン６０５が押されたか、それともＯＫボタン６１６が押されたか判定する。ユーザーが、設置処理の指示を追加した場合は、Ｓ５０１へ処理を移行し、保存操作をした場合はＳ５１０へ処理を移行する。ここでは説明を省略したが、追加ボタン６０３が押されると図６（Ｂ）のユーザインターフェイスを表示し、その中で前述した要領で追加する処理が指定される。また、削除指示が入力された場合には指定された処理を削除し、処理の順序の変更が指示された場合には指示に応じて順序を変更する。なお既に入力された処理の変更については、それを許してもよいし、変更対象の処理を削除してから変更後の処理を新規に追加することにしておいてもよい。
【００６１】
Ｓ５０１は、ユーザーが追加した設置処理がアプリのインストール処理であるか、を判断する処理である。アプリのインストール処理である場合はＳ５０３へ処理を移行し、アプリのインストール処理でない場合はＳ５０２へ処理を移行する。尚、Ｓ５０１は、説明の簡単化のためアプリのインストール処理に限定して説明しているが、アプリのインストールに限らず、例えばソフトウェア追加許可の有効化の要否判断などが必要な処理かを判断しても良い。具体的には、ファームウェア更新処理がソフトウェア追加許可の有効化有無の判断が必要な処理である場合は、Ｓ５０１の判断において該当する処理として判断する。この場合の判断方法の一例として、設置データ編集アプリ４００が保持するソフトウェア追加許可不要アプリのリストに、追加対象のアプリが保持するアプリ識別子が含まれるかによって判断する方法が挙げられる。一方、画像形成装置１０１を再起動するだけの単純な処理であった場合は、以降の判断が不要な処理として、Ｓ５０２へ移行する。
【００６２】
Ｓ５０２は、図６（Ａ）の設置作業リスト６０２に対して指定された処理を設置の指示として追加する処理である。追加対象の指示は、設置作業リスト６０２の最後に追加する。
【００６３】
Ｓ５０３は、設置データの適用対象機種が、ソフトウェア追加許可３０３を有する特定機種であるかを判断する処理である。つまり、画像形成装置１０１ａで示す機種であるか、画像形成装置１０１ｂで示す機種であるかを判断する。ソフトウェア追加許可を有する機種である場合はＳ５０４へ処理を移行し、ソフトウェア追加許可３０３が存在しない機種であればＳ５０８へ処理を移行する。
【００６４】
Ｓ５０４は、図６（Ａ）の設置作業リスト６０２の設置処理の中に、ソフトウェア追加許可の有効化指示が存在するか否かを判断する処理である。設置作業リスト６０２にソフトウェア追加許可の有効化指示が存在する場合はＳ５０６に処理を移行し、存在しない場合はＳ５０５へ処理を移行する。
【００６５】
Ｓ５０５は、設置作業リスト６０２にソフトウェア追加許可の有効化指示が存在しない場合、つまりソフトウェア追加許可が無効な状態でも、追加対象のアプリがインストール可能なアプリであるかを判断する処理である。ソフトウェア追加許可が無効な状態でもインストール可能なアプリである場合はＳ５０６へ処理を移行し、有効化が必要なアプリである場合はＳ５０７へ処理を移行する。尚、Ｓ５０５の判断方法の一例として、設置データ編集アプリ４００が保持するソフトウェア追加許可不要アプリのリストに、追加対象のアプリが保持するアプリ識別子が含まれるかによって判断する方法が挙げられる。この場合、ソフトウェア追加許可不要アプリのリストは、設置データ編集アプリ４００起動時などに外部サーバー１０３から取得する。またこれに限らず、例えば対象のアプリ自身にソフトウェア追加許可が不要である情報を持たせて置き、インストール指示の追加時にＵＩ制御部４０２が当該情報の有無を判断しても良い。
【００６６】
Ｓ５０６は、図６（Ａ）の設置作業リスト６０２に対して指定された処理を設置の指示として追加する処理である。追加対象の指示は、設置作業リスト６０２の最後（すなわち末尾）に追加する。尚、Ｓ５０６を実施後は、ソフトウェア追加許可が必要なアプリの場合、必ずソフトウェア追加許可３０３の有効化指示の後にアプリのインストール指示が配置された状態となる。
【００６７】
Ｓ５０７は、対象のアプリを追加できない旨を通知するエラーを表示する処理である。本エラーの一例として図６（Ｃ）で示すエラーダイアログ６２０が挙げられる。
【００６８】
Ｓ５０８は、ソフトウェア追加許可３０３が存在しない機種である場合に、設置作業リスト６０２にソフトウェア追加許可指示、つまり不要な指示（処理）が存在するかを判断する処理である。不要な指示が存在すると判断した場合はＳ５０９へ処理を移行し、不要な処理が存在しないと判断した場合はＳ５０２へ処理を移行する。Ｓ５０８は、ソフトウェア追加許可３０３を有する画像形成装置１０１ａ向けに作成した設置データを、画像形成装置１０１ｂ向け変更する際に必要となる判断である。例えば、ソフトウェア追加許可３０３の有効化指示を追加した設置データを複製し、複製データの機種をソフトウェア追加許可３０３の存在しない機種に変更した場合が挙げられる。その場合、アプリの追加などのタイミングで不要な処理の存在を知らせる必要がある。尚、Ｓ５０８はアプリインストール処理Ｓ５０１の判断後に不要な処理の存在確認をしているが、タイミングによっては機種を変更指示した直後に本判断を実施しても良い。
【００６９】
Ｓ５０９は、不要な処理が存在する場合にその旨を通知するエラーを表示する処理である。本エラーの一例として図６（Ｄ）で示すエラーダイアログ６３０が挙げられる。
【００７０】
Ｓ５１０は、図６（Ａ）の保存ボタン６０５を押下した際に、スクリプト生成部４０３が設置作業リスト６０２に表示された内容をもとに、作業手順書であるスクリプトを生成する処理である。本処理によりスクリプトを生成すると、スクリプト生成部４０３は外部サーバー１０３に対して設置データの保存を要求する。要求を受信した外部サーバー１０３は、生成されたスクリプト（作業指示書）を含む設置データを保存する。
【００７１】
●作業指示書の例
図７は、本実施形態における画像形成装置１０１の初期設置作業時に使用する作業指示書の一例である。
【００７２】
作業指示書７００（以降、スクリプト７００と記す）は、設置データ編集アプリ４００のスクリプト生成部４０３によって生成される。またスクリプト７００は、スクリプト生成部４０３から外部サーバー１０３へ設置データの一部として保存を要求され、外部サーバー１０３の設置データ管理部４５１にて管理される。さらにスクリプト７００は、画像形成装置１０１の設置サポート機能３５０によって取得され、スクリプト管理部３５３によって解析される。その後解析されたスクリプト７００の結果に従い、処理部３５４が処理を実行する。
【００７３】
スクリプト７００は、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ）で記載されており、設置データ識別部７０１と処理記載部７０２で構成されている。尚、本実施形態ではＸＭＬによりスクリプトを表現しているが、ＸＭＬに限定されず、シェルスクリプトなどで書かれていても良い。
【００７４】
設置データ識別部７０１は、設置データを識別するための情報が記載されており、設置データＩＤ、及びデバイスＩＤで構成されている。
【００７５】
設置データＩＤは、＜ｉｎｓｔａｌｌａｔｉｏｎＤａｔａＩｄ＞タグによって表現され、具体的な値として"Ｓ００１"が記載されている。設置データＩＤは、設置データを外部サーバー１０３に保存する際に、設置データ管理部４５１によって設置データに対して付与する識別子で、全ての設置データに対してユニークな値である。デバイスＩＤは、＜ｄｅｖｉｃｅＩｄ＞タグによって表現され、具体的な値として"Ｄ１１１"が記載されている。デバイスＩＤは、設置対象の画像形成装置１０１を特定するための識別子である。
【００７６】
処理記載部７０２には、初期設置に必要な処理群が記載される。本例では、処理記載部７０２は、ファームウェア更新処理部７０３、オプション機能の有効化処理部７０４、拡張プログラムインストール処理部７０５、設定データインポート処理部７０６で構成されている。各処理を示すタグの中にはＯｒｄｅｒ属性が含まれており、本実施形態ではＯｒｄｅｒの値に応じて処理の順番が決定される。
【００７７】
ファームウェア更新処理部７０３は、ファームウェア更新管理部３０１を介してファームウェアを更新する処理である。ファームウェア更新処理部７０３は、＜ｕｐｄａｔｅＦｉｒｍｗａｒｅＣｏｍｍａｎｄ＞タグを記載することで処理を定義する。ファームウェア更新部７０３は、＜ｕｒｌ＞タグ、＜ｉｄ＞タグ、＜ｎａｍｅ＞タグにより構成されている。＜ｕｒｌ＞タグは、更新版の（すなわち新しい版の）ファームウェアの取得先ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を指定している。＜ｉｄ＞タグは、取得するファームウェアを特定可能な識別子を指定している。＜ｎａｍｅ＞タグは、取得対象のコンテンツ名、具体的にはファームウェアの種類、及びバージョ情報をユーザーが認識可能な情報が記載される。設置サポート機能３５０は、これらの情報を用いることで、取得先から必要なファームウェアを取得する。
【００７８】
オプション機能有効化処理部７０４は、＜ａｃｔｉｖａｔｅＯｐｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により画像形成装置１０１に予め組み込まれているオプション機能を有効化するための処理を定義している。オプション機能有効化処理部７０４は、＜ｕｒｌ＞タグ、＜ｉｄ＞タグ、＜ｎａｍｅ＞タグにより構成されている。＜ｕｒｌ＞タグは、オプション機能有効化に必要なライセンスファイルの発行依頼先ＵＲＬを指定している。＜ｉｄ＞タグは、どのオプション機能のライセンスを発行するかを特定可能な識別子を指定している。＜ｎａｍｅ＞タグは、どのオプション機能を有効化するかをユーザーが認識可能な情報が記載される。設置サポート機能３５０は、以上の情報を用いることで、オプション機能の有効化に必要なライセンスファイルの取得を行い、オプション機能の有効化処理を実施する。尚、ライセンスの有効化のためにライセンスファイルを必要とすることを記載したが、これに限らず、例えば文字列で定義されるようなライセンスキーを取得しても良い。
【００７９】
拡張プログラムインストール処理部７０５は、＜ｉｎｓｔａｌｌＡｐｐｌｉｃａｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により処理を定義している。拡張プログラムインストール処理部７０５は、＜ｕｒｌ＞タグ、＜ｉｄ＞タグ、＜ｎａｍｅ＞タグにより構成されている。＜ｕｒｌ＞タグは、インストールする拡張プログラム（以降、アプリと記す）の取得先、及びインストールに必要なライセンス発行先ＵＲＬを指定している。＜ｉｄ＞タグは、インストール対象のアプリを特定可能な識別子を指定している。＜ｎａｍｅ＞タグは、インストール対象のアプリをユーザーが認識可能な情報が記載される。設置サポート機能３５０は、以上の情報を用いることで、アプリのインストールに必要な各種データの取得を行い、アプリのインストール処理を実施する。尚、本処理によって、アプリをインストール処理だけでなく、アプリを開始状態、つまり使用可能な状態にする処理の実施も想定しているが、必要に応じて処理部を分割しても良い。
【００８０】
設定データインポート処理部７０６は、＜ｉｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞タグの記載により処理を定義している。設定データインポート処理部７０６は、＜ｕｒｌ＞タグ、＜ｉｄ＞タグ、＜ｎａｍｅ＞タグにより構成されている。＜ｕｒｌ＞タグは、インポートする設定データの取得先ＵＲＬを指定している。＜ｉｄ＞タグは、インポートする設定データを特定可能な識別子を指定している。＜ｎａｍｅ＞タグは、インポートする設定データをユーザーが認識可能な情報が記載される。設置サポート機能３５０は、以上の情報を用いることで、インポートする設定データの取得を行い、設定データのインポート処理を実施する。
【００８１】
本実施形態で示す設置用のスクリプト７００は、初期設置処理の一例であり、必要に応じて処理の重複、増減があっても良い。例えば、再起動が必要であれば再起動処理の定義を追加しても良い。
【００８２】
●設置処理
図８は、本実施形態における画像形成装置１０１の設置サポート機能３５０の実施する設置処理フローである。図８の処理フローは、画像形成装置１０１の設置サポート機能３５０が、ユーザーによって実行されることで処理を開始する。具体的には、設置作業者が画像形成装置１０１のＵＩ制御部３５２で表示する画面（不図示）から、設置サポート機能３５０の起動用ボタンなどを押下することで処理が開始される。ハードウェアの観点からは、画像形成装置１０１のＣＰＵ２０１によりメモリに記憶したプログラムを実行することで図8の手順が実現される。
【００８３】
Ｓ８００は、ＵＩ制御部３５２がユーザーに対して設置データＩＤの入力画面を表示し、ユーザーに対して設置データＩＤの入力を促す処理である。Ｓ８００で入力された設置データＩＤを使用することで、設置対象の画像形成装置１０１に適用すべき設置データを一意に特定できる。設置データＩＤが入力されると、ＵＩ制御部は処理部３５４に対して設置データの検索を要求する。
【００８４】
Ｓ８０１は、処理部３５４が入力された設置データＩＤで特定する情報を外部サーバー１０３に問い合わせ、設置データの存在有無を判断する処理である。設置データが存在している場合はＳ８０３へ処理を移行し、存在しない場合は、Ｓ８０２へ移行する。
【００８５】
Ｓ８０２は、処理部３５４がＵＩ制御部３５２に対して、入力された設置データＩＤに紐づく設置データが存在しなかったことをエラー画面として表示する処理である。エラーを表示すると、本処理フローを終了する。
【００８６】
Ｓ８０３は、処理部３５４が、設置データに含まれる作業指示書（スクリプト）７００を外部サーバー１０３から取得する処理である。処理部３５４はスクリプト７００の取得が完了すると、スクリプト７００を記憶装置２０５へ保存し、スクリプト７００へのファイルパスとともにスクリプト管理部３５３に解析処理を依頼する。
【００８７】
Ｓ８０４は、スクリプト管理部３５３が、Ｓ８０３で取得したスクリプト７００を解析する処理である。スクリプト管理部３５３は、スクリプトの記載内容から設置処理に必要な順序と処理、及び設置データを管理する。また解析した内容に合わせて設置処理の実施有無なども管理する。尚、これらの情報は、ＲＡＭ２０２で記録していても良いし、画像形成装置１０１の再起動によりＲＡＭがクリアされてしまうことを考慮し記憶装置２０５に保存しておいても良い。
【００８８】
Ｓ８０５は、処理部３５４が、Ｓ８０４で解析済みの設置処理の状態をスクリプト管理部３５３に問い合わせ、設置処理がすべて実行完了したかを判断する処理である。設置処理がすべて完了している場合は本処理フローを終了し、未完了の場合はＳ８０６へ処理を移行する。
【００８９】
Ｓ８０６は、処理部３５４が、未実行の設置処理を設置順序に従って読み込む処理である。例えば、図７のスクリプト７００記載の設置処理の場合、最初はファームウェア更新処理部７０３の設置処理部を読み込む。次の読み込み処理Ｓ８０６を実施する場合は、ファームウェア更新処理部７０３が完了しているため、オプション機能有効化処理部７０４を読み込む。
【００９０】
Ｓ８０７は、処理部３５４が、読み込んだ処理で必要な設置データを、外部サーバー１０３から取得する処理である。例えばＳ８０６で拡張プログラムインストール処理部７０５を読み込んでいる場合、該処理部７０５の＜ｕｒｌ＞、及び＜ｉｄ＞を使用してそのＵＲＬで指定される宛先、例えば外部サーバー１０３へ、ＩＤで指定されるデータ取得を要求する。設置データの取得が完了すると、処理部３５４は、取得した設置データを記憶装置２０５へ保存する。
【００９１】
Ｓ８０８は、処理部３５４が、読み込んだ処理に従って、取得した設置データとともにネイティブプログラム３００の各管理部へ設置データの適用を依頼する処理である。Ｓ８０８により、画像形成装置１０１はスクリプト７００に記載された設置データが適用される。例えばオプション機能有効化処理７０４であれば、外部サーバー１０３から取得したライセンスファイルをインストールする。これによってそのライセンスファイルに対応した機能（この例ではソフトウェア追加許可）が有効化される。設置データの適用が完了すると、処理部３５４は、スクリプト管理部３５３に対して該当の設置処理が完了した旨を通知する。
【００９２】
本実施形態において、設置データを画像形成装置に適用するにあたり、適用する設置データによっては画像形成装置１０１の再起動が必要になる場合もある。その場合は設置データの適用処理直後に再起動し、改めてＳ８０５の設置処理の実行完了判断から本処理フローを再開する。また設置データの適用時にエラーが発生した場合はＵＩ制御部３５２に対してエラーを表示する。エラー発生時は、エラーが発生した設置処理以降の作業をしなくても良いし、以降の設置処理を継続しても良い。以上が、図８における画像形成装置１０１の設置サポート機能３５０の実施する設置処理フローである。
【００９３】
以上、本実施形態によれば、ソフトウェアの導入可否が、機種だけに応じて決まるのではなく、導入のためにはソフトウェアの追加許可が必要な場合や、ソフトウェアの追加許可が無くても導入可能なソフトウェアがある場合を考慮した設置データの作成が可能となる。これは、予め作業指示書となるスクリプトを作成して起き、そのスクリプトに、設置時の処理、例えばソフトウェアの追加許可処理を設定することを記述しておくことで実現される。そのスクリプトの作成に際しては、例えば、ソフトウェアを導入できる条件に反してソフトウェアを導入しようとする試みや、不要なライセンスをインストールしようとする試み、すなわち設置時に行えばエラーとなるであろう処理は、画像形成装置の設置時にではなく、スクリプトの作成時にエラーとする。このため、画像形成装置の初期設置作業にあたって適切な設置データを作成しておき、設置作業を効率的に行うことが可能になる。
【００９４】
＜第２の実施形態＞
第１の実施形態では、ソフトウェアの導入可否が機種によって一意に決まらないケースを考慮した設置データの作成方法について述べた。具体的には、特定機種の場合に、ソフトウェア追加許可機能の有効化処理の有無やソフトウェア追加許可の有効化が不要なソフトウェアであるかの判断について述べている。
【００９５】
ソフトウェア追加許可機能の有効化が必要になる機種の場合、初期設置時での作業者によるソフトウェア導入は許可するが、画像形成装置出荷後の顧客によるソフトウェア導入は許可したくないという意図で使用することも少なくない。そのような場合、第１の実施形態では作業者によるソフトウェア導入後、ソフトウェア追加許可が有効化されたままとなってしまうため、顧客によるソフトウェア導入が可能となってしまう。そこで本実施形態では、初期設置作業時にだけソフトウェア導入を可能とするための設置データの作成方法について述べる。尚、第２の実施形態では、第１の実施形態と同じ構成、及び同じ内容の図面に対する説明は省略し、差異のある図面のみ説明する。
【００９６】
図９は、本実施形態におけるクライアント装置１０２の設置データ編集アプリ４００による設置データ及び作業指示書（スクリプト）の保存処理フローである。図９の処理フローは、ユーザーが設置データ編集画面６００の保存ボタン６０５を押下することで処理を開始する。すなわち、図５のステップＳ５１０に代えて図９の手順が実行される。尚、図９の処理フローは、特に断りのない限り、スクリプト生成部４０３が主体で動作する。図９において、スクリプト生成部４０３が各種判断を実施しているが、これに限らず他の処理部がスクリプト生成部４０３の指示を受けて実施しても良い。
【００９７】
S９００は、保存時に作成している設置データの適用対象機種が、ソフトウェア追加許可３０３を有する機種であるかを判断する処理である。つまり、画像形成装置１０１ａで示す機種であるか、画像形成装置１０１ｂで示す機種であるかを判断する。ソフトウェア追加許可を有する機種である場合はＳ９０１へ処理を移行し、ソフトウェア追加許可３０３が存在しない機種であればＳ９０４へ処理を移行する。
【００９８】
Ｓ９０１は、作成中の作業指示書の中、すなわち図６（Ａ）の設置作業リスト６０２の設置処理の中に、ソフトウェア追加許可の有効化指示が存在するか否かを判断する処理である。設置作業リスト６０２にソフトウェア追加許可の有効化指示が存在する場合はＳ９０２に処理を移行し、存在しない場合はＳ９０４へ処理を移行する。
【００９９】
Ｓ９０２は、設置作業リスト６０２の設置処理の中に、ソフトウェア追加許可の無効化指示（すなわち無効化処理）が存在するか否かを判断する処理である。設置作業リスト６０２にソフトウェア追加許可の無効化指示が存在する場合はＳ９０４に処理を移行し、存在しない場合はＳ９０３へ処理を移行する。
【０１００】
Ｓ９０３は、設置作業リスト６０２の設置処理に、ソフトウェア追加許可の無効化指示を自動で追加する処理である。無効化指示を設置処理の最後に追加することで、設置作業完了後のソフトウェアの導入を禁止可能となる。
【０１０１】
Ｓ９０４は、スクリプト生成部４０３が設置作業リスト６０２に表示された内容をもとに、作業手順書であるスクリプトを生成する処理である。本処理によりスクリプトを生成すると、スクリプト生成部４０３は外部サーバー１０３に対して設置データの保存を要求する。
【０１０２】
尚、本実施形態において、ソフトウェア追加許可の有効化、及び無効化の順序については考慮していないが、必要に応じて設置順序の入れ替えなどを行っても良い。この手順で作成されたスクリプトには、ソフトウェア追加許可の無効化指示が必ず含まれる。そのため、画像形成装置の設置処理においては、ソフトウェア追加許可の無効化指示を実行することで例えばソフトウェア追加許可のライセンスがアンインストールされ、設置後は追加ソフトウェアのインストールを行わせない。
【０１０３】
以上、本実施形態によれば、ソフトウェア導入を初期設置作業時にだけに限定できるように設置データを作成することができる。
【０１０４】
＜第３の実施形態＞
第２の実施形態では、ソフトウェア追加許可の無効化処理を自動追加することで、ソフトウェア導入を初期設置時にだけに限定する設置データを作成可能な方法について述べた。しかしながらソフトウェア追加許可の無効化処理を設置処理の最後に自動追加するため、図９の手順で作成された既存の設置データに対して新規ソフトウェアを追加すると無効化処理の後にソフトウェア追加することになる。そのためソフトウェア追加許可が無効化状態でソフトウェアを導入しようとすることになり、この設置データを用いた設置処理でエラーとなる可能性がある。そこで本実施形態では、設置データの再編集時にソフトウェアを新規追加した場合の設置データ作成処理について述べる。尚、第３の実施形態では、第１の実施形態、第２の実施形態と同じ構成、及び同じ内容の図面に対する説明は省略し、差異のある図面のみ説明する。
【０１０５】
図１０は、本実施形態におけるクライアント装置１０２の設置データ編集アプリ４００による設置データ及び作業指示書（スクリプト）の作成のフローである。図１０の処理フローは、ユーザーが設置データ編集アプリ４００を起動することで処理を開始する。また図１０の処理フローは、特に断りのない限り、ＵＩ制御部４０２が主体で動作する。尚、図１０において、ＵＩ制御部４０２が各種判断を実施しているが、これに限らず他の処理部がＵＩ制御部４０２の指示を受けて実施しても良い。また図１０のＳ１０００からＳ１０１０までの処理は、図５におけるＳ５００からＳ８１０までと同様のため説明を省略する。
【０１０６】
Ｓ１０１１は、ソフトウェア追加許可３０３を有する機種であると判断された後、設置作業リスト６０２にソフトウェア追加許可３０３の無効化指示が存在するかを確認する処理である。無効化指示が存在している場合は、設置作業リスト６０２の最後にアプリインストール指示を追加しても設置データ適用時にエラーとってしまうため、Ｓ１０００７にて追加できない旨をエラー表示する。一方、無効化指示が存在していない場合は、アプリインストール指示の追加が可能なため、Ｓ１００４へ処理を移行する。
【０１０７】
このようにして、本実施形態において、編集対象の設置データに無効化指示が存在しているとエラー表示しアプリインストール指示を追加できなくする。なお、これに限らず、アプリインストール指示を、無効化指示の前に追加できるようにしても良い。または、ステップＳ１０１１で、ソフトウェア追加許可の無効化指示があると判定したばあには、その無効化指示を削除してステップＳ１００４へと分岐してもよい。この場合には、ステップＳ１０１０に代えて、図９の手順を実行するようにすれば更によい。さらに、一度設置作業リスト６０２の最後に追加した後に、自動で無効化指示を最後のインストール指示の後に移動させても良い。
【０１０８】
以上、本実施形態によれば、ソフトウェア追加許可が無効化の状態でソフトウェア導入されないように設置データを作成することができる。このため、画像形成装置の設置時における、設置データの誤りに起因するエラーの発生を防止することができる。
【０１０９】
［他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１０】
１００  画像形成装置、３０３  ソフトウェア追加許可、４００  設置データ編集アプリ、４０３  スクリプト生成部、７００  スクリプト
【図１】
2020035232.tif 000003
【図２】
2020035232.tif 000004
【図３】
2020035232.tif 000005
【図４】
2020035232.tif 000006
【図５】
2020035232.tif 000007
【図６】
2020035232.tif 000008
【図７】
2020035232.tif 000009
【図８】
2020035232.tif 000010
【図９】
2020035232.tif 000011
【図１０】
2020035232.tif 000012