JP2018120541A - 情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システム - Google Patents
情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システム Download PDFInfo
- Publication number
- JP2018120541A JP2018120541A JP2017013336A JP2017013336A JP2018120541A JP 2018120541 A JP2018120541 A JP 2018120541A JP 2017013336 A JP2017013336 A JP 2017013336A JP 2017013336 A JP2017013336 A JP 2017013336A JP 2018120541 A JP2018120541 A JP 2018120541A
- Authority
- JP
- Japan
- Prior art keywords
- script
- information processing
- command
- error
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】 管理装置から取得する設置情報が記述されたスクリプトの実行処理が特定のコマンドで中断した場合でも、該スクリプトから管理装置が生成する分割スクリプトを取得して設置作業を継続する。【解決手段】管理装置と通信する情報処理装置において、スクリプトに基づいて開始したコマンド処理が特定のコマンドでエラーとなる場合で、かつ、該エラーとなった特定のコマンドの属性が他の情報処理装置でも共通する属性である場合、エラーとなった特定のコマンドの情報と、取得した前記スクリプトに対応する分割スクリプトを作成する要求とを管理装置に送信する。そして、管理装置が作成した分割スクリプトを取得し、該取得した分割スクリプトを実行する構成を特徴とする。【選択図】 図11
Description
本発明は、情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システムに関するものである。
一般に、情報処理装置である複合機に代表されるデバイスは新規に導入される際に、顧客環境に応じた設置作業が必要となる。デバイスの設置作業には多くの時間と手間がかかる。そのため、複数台のデバイスに対し、同様の設置作業を行う場合には、予め必要なソフトウエアや設定情報、検証用のデータなどの共通データを用意しておく。
そして、それらを設置指示情報に従って処理していくことで、複合機の設置に詳しくない作業者(例えば、顧客先へ複合機を配送する配送担当者)であっても、自動的にかつ効率良く設置作業を行えるシステムが提案されている。
そして、それらを設置指示情報に従って処理していくことで、複合機の設置に詳しくない作業者(例えば、顧客先へ複合機を配送する配送担当者)であっても、自動的にかつ効率良く設置作業を行えるシステムが提案されている。
このようなシステムでは、高コストのサービス担当者(従来、顧客先で複合機を設置していた作業員)を個々の顧客先に派遣することが不要となる。サービス担当者は、配送担当者による設置作業で発生したエラーに遠隔地から対応する。また、あるデバイスで発生したエラーと同一のエラーが、別のデバイスでも発生しないよう、エラー発生前に対処するシステムも提案されている(特許文献1参照)
また、設置作業時間をできるだけ削減するため、複合機の組立作業の延長として工場で1次設置を行い、残りの作業(1次設置時点で作業不可な処理)を2次設置として顧客先で行う、2段階設置も検討されている。
しかしながら、特許文献1のシステムは、あるデバイスで発生したエラーが別デバイスでも発生しないように、エラーが起きた処理と同一処理の実行前に処理を停止する。そのため、設置作業が中途半端な状態で一時停止してしまい、実行可能な後続処理があったとしても実行されず、また停止したデバイスが、どの処理で一次停止中なのかなど、状態管理が複雑化する。
また、エラーが接触不良等のハードウエアなど、デバイス固有の場合は、同一処理のエラーが別のデバイスでは発生しない。しかしながら、あるデバイスでエラーが発生した処理は、別デバイスで実行してもエラーになると判断してしまうため、エラーにならない設置作業も停止させ、作業の効率化を低下させてしまっていた。
そして、2段階設置の1次設置はデスバイスを納品する数ヶ月前に行う作業であり、その時点では、設置作業の処理項目が全て決定していなかったり、一部必要なデータが準備出来ていなかったりする可能性がある。その場合、1次設置の時点で、全ての設置作業を実行できないという課題もあった。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、管理装置から取得する設置情報が記述されたスクリプトの実行処理が特定のコマンドで中断した場合でも、該スクリプトから管理装置が生成する分割スクリプトを取得して設置作業を継続できる仕組みを提供することである。
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
管理装置と通信する情報処理装置であって、前記管理装置から設置情報が記述されたスクリプトを取得する取得手段と、前記管理装置から取得したスクリプトを解析してコマンド処理を実行する実行手段と、前記実行手段が開始したコマンド処理が特定のコマンドでエラーとなる場合で、かつ、該エラーとなった特定のコマンドの属性が他の情報処理装置でも共通する属性である場合、エラーとなった特定のコマンドの情報と、取得した前記スクリプトに対応する分割スクリプトを作成する要求とを前記管理装置に送信する送信手段と、を備え、前記取得手段は、前記管理装置が作成した分割スクリプトを取得し、前記実行手段は、該取得した分割スクリプトを実行することを特徴とする。
上記目的を達成する本発明の管理装置は以下に示す構成を備える。
情報処理装置と通信する管理装置であって、前記情報処理装置に設定する設置情報が記述されたスクリプトを管理する管理手段と、前記情報処理装置から受信する前記スクリプトに対する分割スクリプトの取得要求に従い、前記情報処理装置に送信したオリジナルのスクリプトと、前記取得要求に含まれるコマンドの情報とから前記オリジナルのスクリプトに記述されたコマンドの依存関係を抽出して、前記オリジナルのスクリプトに対する分割スクリプトを生成する生成手段と、前記生成手段が生成した分割スクリプトを要求元の情報処理装置に応答する応答手段と、を備えることを特徴とする。
管理装置と通信する情報処理装置であって、前記管理装置から設置情報が記述されたスクリプトを取得する取得手段と、前記管理装置から取得したスクリプトを解析してコマンド処理を実行する実行手段と、前記実行手段が開始したコマンド処理が特定のコマンドでエラーとなる場合で、かつ、該エラーとなった特定のコマンドの属性が他の情報処理装置でも共通する属性である場合、エラーとなった特定のコマンドの情報と、取得した前記スクリプトに対応する分割スクリプトを作成する要求とを前記管理装置に送信する送信手段と、を備え、前記取得手段は、前記管理装置が作成した分割スクリプトを取得し、前記実行手段は、該取得した分割スクリプトを実行することを特徴とする。
上記目的を達成する本発明の管理装置は以下に示す構成を備える。
情報処理装置と通信する管理装置であって、前記情報処理装置に設定する設置情報が記述されたスクリプトを管理する管理手段と、前記情報処理装置から受信する前記スクリプトに対する分割スクリプトの取得要求に従い、前記情報処理装置に送信したオリジナルのスクリプトと、前記取得要求に含まれるコマンドの情報とから前記オリジナルのスクリプトに記述されたコマンドの依存関係を抽出して、前記オリジナルのスクリプトに対する分割スクリプトを生成する生成手段と、前記生成手段が生成した分割スクリプトを要求元の情報処理装置に応答する応答手段と、を備えることを特徴とする。
本発明によれば、管理装置から取得する設置情報が記述されたスクリプトの実行処理が特定のコマンドで中断した場合でも、該スクリプトから管理装置が生成する分割スクリプトを取得して設置作業を継続することができる。
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
<システム構成の説明>
〔第1実施形態〕
<システム構成の説明>
図1は、本実施形態を示す自動設置システムの構成の例を示す図である。
図1は、本実施形態を示す自動設置システムの構成の例を示す図である。
図1において、LAN101は設置を行う顧客環境のLANであり、MFP105が複数台接続される。以下、情報処理装置の一例としてMFPを適用するシステムについて詳述する。MFP105は、複写機にスキャナ、プリンタ等の複数の機能を統合した画像形成装置であり、後述する自動設置プログラム450がインストールされている。
MPF105 にインストールされた自動設置プログラム450は、案件管理サーバー107で管理されている作業指示書の一例である設置用スクリプト(図9、図13)を取得し、設置用スクリプトの内容に従って自動での設置作業を実施する。
LAN102は、設置の事前準備を行う環境であり、クライアントPC106が接続される。
クライアントPC106は、パーソナルコンピュータなどの情報処理装置であり、後述する案件作成プログラム500がインストールされている。案件作成プログラムは、設置用スクリプトを含む案件データを生成する。
MPF105 にインストールされた自動設置プログラム450は、案件管理サーバー107で管理されている作業指示書の一例である設置用スクリプト(図9、図13)を取得し、設置用スクリプトの内容に従って自動での設置作業を実施する。
LAN102は、設置の事前準備を行う環境であり、クライアントPC106が接続される。
クライアントPC106は、パーソナルコンピュータなどの情報処理装置であり、後述する案件作成プログラム500がインストールされている。案件作成プログラムは、設置用スクリプトを含む案件データを生成する。
案件管理サーバー107は、後述する案件管理サーバープログラム510がインストールされている。案件管理サーバープログラム510は、作成された案件データを管理する。各種データ管理サーバー108は、MFP105で利用可能なファームウエアや各種ライセンス情報等を管理するサーバーである。MFP105にインストールされた自動設置プログラム450は、設置用スクリプトの内容に従って、各種データ管理サーバー108から設置に必要なソフトウエアをダウンロードする。
なお、本実施形態では、案件管理サーバー107と各種データ管理サーバー108を独立した構成としているが、1つの管理装置として構成してもよい。また、本実施形態では、情報処理装置の一例としてMFP105を挙げているが、もちろんその他SFPなどでもよい。
<MFP>
図2は、図1に示した自動設置システムのハードウエア構成の例を示すブロック図である。
図2の(A)は、MFP105のハードウエア構成の例である。MFPはコントローラユニット200を含む。コントローラユニット200には、画像入力デバイスであるスキャナ217や画像出力デバイスであるプリンタ216、および操作部208が接続される。コントローラユニット200は、スキャナ217で読み取られた画像データをプリンタ216により印刷出力するコピー機能を実現するための制御を行う。コントローラユニット200はプロセッサであるCPU201を有する。
図2は、図1に示した自動設置システムのハードウエア構成の例を示すブロック図である。
図2の(A)は、MFP105のハードウエア構成の例である。MFPはコントローラユニット200を含む。コントローラユニット200には、画像入力デバイスであるスキャナ217や画像出力デバイスであるプリンタ216、および操作部208が接続される。コントローラユニット200は、スキャナ217で読み取られた画像データをプリンタ216により印刷出力するコピー機能を実現するための制御を行う。コントローラユニット200はプロセッサであるCPU201を有する。
CPU201はROM207に格納されているブートプログラムによりオペレーションシステム(OS)を立ち上げる。そして、立ち上げたOS上で、HDD(ハードディスクドライブ)209に格納されているプログラムを実行し、作業領域としてRAM202を用い、各処理を実行する。HDD209は各種データを格納する。CPU201には、システムバス210を介して、操作部I/F203、ネットワークI/F206、画像バスI/F212が接続される。
操作部I/F203は、タッチパネルを有する操作部204とのインタフェースであり、操作部204に表示すべき画像データを出力し、操作部204においてユーザにより入力された情報をCPU201に送信する。ネットワークI/Fは、MFP105をLAN101に接続するためのインタフェースである。画像バスI/F212は、システムバス210と画像データを高速で転送する画像バス211を接続し、データ形式を変換するためのバスブリッジである。
画像バス211上には、デバイスI/F215、スキャナ画像処理部214、プリンタ画像処理部213が設けられ、デバイスI/Fには、スキャナ217およびプリンタ216が接続され、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部214は入力画像データの編集等を、プリンタ画像処理部213はプリント出力画像データの解像度変換等を行う。
<クライアントPC>
図2の(B)は、クライアントPC106のハードウエア構成の例である。
図2の(B)において、CPU251を含む制御部250は、クライアントPC106の全体の動作を制御する。CPU251は、ROM252に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM253は、CPU251の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD254は、各種データやプログラムを記憶する。操作部I/F255は、クライアントPC106で実行されるプログラムへの制御操作を入力するユーザインタフェース端末を接続する。
図2の(B)は、クライアントPC106のハードウエア構成の例である。
図2の(B)において、CPU251を含む制御部250は、クライアントPC106の全体の動作を制御する。CPU251は、ROM252に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM253は、CPU251の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD254は、各種データやプログラムを記憶する。操作部I/F255は、クライアントPC106で実行されるプログラムへの制御操作を入力するユーザインタフェース端末を接続する。
本実施形態では、マウス259やキーボード260で構成されるが、その限りではない。ディスプレイI/F256は、クライアントPC106で実行されるプログラムのUIを表示するディスプレイ端末を接続する。本実施形態ではディスプレイ261で構成されるが、その限りではない。ネットワークI/F258は、制御部250をLAN102に接続し、ネットワークを介して他の装置との間で各種情報を送受信する。
<サーバー>
図3は、本実施形態を示す管理装置のハードウエア構成の例を示すブロック図である。図3の(A)は、案件管理サーバー107のハードウエア構成を、図3の(B)は、図1に示した各種データ管理サーバー108のハードウエア構成の例である。
図3は、本実施形態を示す管理装置のハードウエア構成の例を示すブロック図である。図3の(A)は、案件管理サーバー107のハードウエア構成を、図3の(B)は、図1に示した各種データ管理サーバー108のハードウエア構成の例である。
図3において、CPU301を含む制御部300、350は、案件管理サーバー107または各種データ管理サーバー全体の動作を制御する。CPU301は、ROM302に記憶された制御プログラムを読み出して各種制御処理を実行する。CPU351は、ROM352に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM303は、CPU301の主メモリ、ワークエリア等の一時記憶領域として用いられる。
RAM353は、CPU351の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD304は、案件管理サーバー107の各種プログラムや後述する各種データテーブルを記憶する。
HDD354は、各種データ管理サーバー108の各種プログラムや後述する各種データテーブルを記憶する。ネットワークI/F305、355は、制御部300、350をLAN101に接続し、ネットワークを介して他の装置との間で各種情報を送受信する。
RAM353は、CPU351の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD304は、案件管理サーバー107の各種プログラムや後述する各種データテーブルを記憶する。
HDD354は、各種データ管理サーバー108の各種プログラムや後述する各種データテーブルを記憶する。ネットワークI/F305、355は、制御部300、350をLAN101に接続し、ネットワークを介して他の装置との間で各種情報を送受信する。
<MFPのソフトウエア構成>
図4は、本実施形態を示す情報処理装置のソフトウエアの構成を説明する図である。図4の(A)は、MFP105のソフトウエア構成の例を示す。
図4の(A)において、OS400上には、ネイティブプログラム401と拡張プログラム実行プラットフォーム402が動作している。ネイティブプログラム401は、プリンタ216やスキャナ217など元々備わっている機能の制御プログラムであり、拡張プログラム実行プラットフォーム402は拡張機能の制御プログラムである。
さらに、ネイティブプログラム401上には、ファームウエア更新サービス403、オプション有効化サービス404、設定管理サービス405が動作している。拡張プログラム実行プラットフォーム402上には、拡張プログラムシステムサービス406と拡張プログラム407が動作している。
図4は、本実施形態を示す情報処理装置のソフトウエアの構成を説明する図である。図4の(A)は、MFP105のソフトウエア構成の例を示す。
図4の(A)において、OS400上には、ネイティブプログラム401と拡張プログラム実行プラットフォーム402が動作している。ネイティブプログラム401は、プリンタ216やスキャナ217など元々備わっている機能の制御プログラムであり、拡張プログラム実行プラットフォーム402は拡張機能の制御プログラムである。
さらに、ネイティブプログラム401上には、ファームウエア更新サービス403、オプション有効化サービス404、設定管理サービス405が動作している。拡張プログラム実行プラットフォーム402上には、拡張プログラムシステムサービス406と拡張プログラム407が動作している。
ファームウエア更新サービス403は、ファームウエアを更新するための各種機能を提供するサービスである。例えば、ユーザから指定されたファームウエアを参照し、ファームウエアの更新が必要か否かを判断後、ネイティブプログラム401を介し、ファームウエアを更新する。オプション有効化サービス404は、ネイティブプログラム401に予め組み込まれているオプション機能を有効化するためのサービスであり、特定のハードウエアが接続されている必要があるオプションもある。設定管理サービス405は、プリンタ216やスキャナ217などの各種設定情報を管理するためのサービスである。
なお、設定管理サービス405は、ユーザインタフェース(以下、UI)を持っており、ユーザはMFP105の操作部208を介して設定変更の指示ができる。拡張プログラムシステムサービス406は、拡張プログラム407に共通に有用なユーティリティライブラリで、システムから提供される。拡張プログラム407から拡張プログラムシステムサービス406の機能を呼び出すことにより、拡張プログラム407を開発する手間を省くことができる。
拡張プログラム407は、拡張プログラム実行プラットフォーム402または拡張プログラムシステムサービス406を介してのみ、他の拡張プログラムやMFPの各モジュールへアクセスすることができる。
また、UIを持つ拡張プログラム407は、MFP105の操作部208に表示されるメインメニュー画面にアイコンを表示することができる。このアイコンをユーザが選択したことを、操作部208を通じて操作部I/F203が検知すると、操作部I/Fはその旨をCPU201に送信し、CPU201はユーザに選択された拡張プログラム407のUIを操作部208に表示する。なお、本ソフトウエア構成は基本的な部分のみ記載したものであり、実施環境によっては他のサービス等が含まれていても良い。
また、UIを持つ拡張プログラム407は、MFP105の操作部208に表示されるメインメニュー画面にアイコンを表示することができる。このアイコンをユーザが選択したことを、操作部208を通じて操作部I/F203が検知すると、操作部I/Fはその旨をCPU201に送信し、CPU201はユーザに選択された拡張プログラム407のUIを操作部208に表示する。なお、本ソフトウエア構成は基本的な部分のみ記載したものであり、実施環境によっては他のサービス等が含まれていても良い。
<自動設置プログラムのソフトウエア構成>
図4の(B)は、MFP105で動作する自動設置プログラム450の機能構成の例を示す。
本実施形態において、自動設置プログラム450は、MFP105の拡張プログラム407の一つとして実装されるものとする。CPU201が各機能に応じたプログラムを実行することにより、各機能は実現される。自動設置プログラム450は、UI制御部451、処理実行部452、スクリプト解析部453、通信部454を有する。UI制御部451は、自動設置プログラム450を操作するためのUIを操作部208を通じてユーザに提供し、ユーザの操作を受け付ける。処理実行部452は、UI制御部451の指示やスクリプト解析部453が行うスクリプトの解析結果に従い、各種処理を行う。ここで、スクリプトとは、画像形成装置を設置する際に設定する各種の設置情報が記述されたファイルをいう。
図4の(B)は、MFP105で動作する自動設置プログラム450の機能構成の例を示す。
本実施形態において、自動設置プログラム450は、MFP105の拡張プログラム407の一つとして実装されるものとする。CPU201が各機能に応じたプログラムを実行することにより、各機能は実現される。自動設置プログラム450は、UI制御部451、処理実行部452、スクリプト解析部453、通信部454を有する。UI制御部451は、自動設置プログラム450を操作するためのUIを操作部208を通じてユーザに提供し、ユーザの操作を受け付ける。処理実行部452は、UI制御部451の指示やスクリプト解析部453が行うスクリプトの解析結果に従い、各種処理を行う。ここで、スクリプトとは、画像形成装置を設置する際に設定する各種の設置情報が記述されたファイルをいう。
スクリプト解析部453は、設置作業指示情報である設置用スクリプトを解析し、処理実行部452が実行すべき処理や順序を決定する。通信部454は、処理実行部452の指示に従い、案件管理サーバー107にデータを送受信したり、処理実行部452の指示に従い各種データ管理サーバー108からファームウエアやライセンスファイルなどの各種ソフトウエアも取得したりする。
<案件作成プログラムのソフトウエア構成>
図5は、本実施形態を示す自動設置システムのソフトウエア構成の例を示すブロック図である。
図5の(A)は、クライアントPC106で動作する案件作成プログラム500の機能構成の例である。なお、CPU251が案件作成プログラム500を実行することにより各機能が実現される。本実施形態では、クライアントPC106でプログラムが実行されることを想定するが、その限りではない。ネットワーク上にあるサーバーやサービスで実行してもよい。
図5は、本実施形態を示す自動設置システムのソフトウエア構成の例を示すブロック図である。
図5の(A)は、クライアントPC106で動作する案件作成プログラム500の機能構成の例である。なお、CPU251が案件作成プログラム500を実行することにより各機能が実現される。本実施形態では、クライアントPC106でプログラムが実行されることを想定するが、その限りではない。ネットワーク上にあるサーバーやサービスで実行してもよい。
案件作成プログラム500は、UI制御部501、処理実行部502、案件データ生成部503とスクリプト生成部504、および通信部505を有する。UI制御部501は、案件作成プログラム500を操作するためのUIをディスプレイ261を通じて作業者に提供し、マウス259やキーボード260を通じて作業者の操作を受け付ける。
処理実行部502は、UI制御部501の指示に従い各種処理を行う。案件データ生成部503は、UI制御部501からの入力情報を基に処理実行部502の指示に従って案件データを生成する。スクリプト生成部504は、処理実行部502の指示に従い、案件データ生成部503で生成された案件データを基に設置用のスクリプトを生成する。通信部505は、処理実行部502の指示に従い、案件管理サーバー107に対して案件データを送受信したりする。
<サーバーのソフトウエア構成>
図5の(B)は、案件管理サーバー107で動作する案件管理サーバープログラム510、および、データ格納部516の機能構成の例である。
案件管理サーバー107のCPU301が案件管理サーバープログラム510を実行することにより各機能が実現される。案件管理サーバープログラム510は、制御部511、分割スクリプト生成部512、案件データ管理部513、エラー解析部514、通信部515を有するWebアプリケーションである。制御部511は、通信部515が受信する要求にしたがって、案件データ管理部513に対して各データの格納、削除、更新、取得等の処理を指示する。
図5の(B)は、案件管理サーバー107で動作する案件管理サーバープログラム510、および、データ格納部516の機能構成の例である。
案件管理サーバー107のCPU301が案件管理サーバープログラム510を実行することにより各機能が実現される。案件管理サーバープログラム510は、制御部511、分割スクリプト生成部512、案件データ管理部513、エラー解析部514、通信部515を有するWebアプリケーションである。制御部511は、通信部515が受信する要求にしたがって、案件データ管理部513に対して各データの格納、削除、更新、取得等の処理を指示する。
分割スクリプト生成部512は、制御部511から渡される分割スクリプトの生成(フロー図12を用いて後述する)を行う。案件データ管理部513は、制御部511の指示に従い、後述するデータ格納部516に対して案件データの格納、削除、更新を行い、データ格納部516から案件データの取得などを行う。
エラー解析部514は、エラー情報から、エラー種別が案件内で共通しているか否かを判断する。エラー種別の判断処理については後述する。通信部515は、クライアントPC106などからの要求を受信して、制御部511に要求内容を送信する。さらに、制御部511から要求に対する処理結果を受け取り、応答データを作成し、クライアントPC106などに応答を送信する。データ格納部516は、案件管理サーバー107で動作するデータベースである。
なお、本例では案件管理サーバー107にデータ格納部516が構成されているが、案件管理サーバープログラム510と連携できるようになっていれば別のサーバーに配置されるような構成でも良い。データ格納部516で管理するデータについては(図6)を用いて後述する。
図5の(C)は、各種データ管理サーバー108で動作する各種データ管理サーバープログラム520、および、データ格納部524の機能構成の例である。CPU351が各種データ管理サーバープログラム520を実行することにより、各機能が実現される。
各種データ管理サーバープログラム520は、制御部521、データ管理部522、通信部523を有するWebアプリケーションである。制御部521は、通信部523が受信する要求内容に従って、データ管理部522に対してデータの抽出を指示する。データ管理部522は、制御部523の指示に従い、必要なデータを、データ格納部524から取得し、制御部521に結果を送信する。
データ格納部524は、設置対象であるMFP105のソフトウエア、ファームウエア、ライセンス等の実態を保存・管理しており、各種データ管理サーバー108で動作するデータベースである。
なお、本例では各種データ管理サーバー108にデータ格納部524が構成されているが、各種データ管理サーバープログラム520と連携できるようになっていれば別のサーバーに配置されるような構成でも良い。
通信部523は、MFP105からの要求を受信して、制御部521に要求内容を送信する。さらに、制御部521から要求に対する処理結果を受け取り、応答データを作成し、MFP105などに応答を送信する。
なお、本例では各種データ管理サーバー108にデータ格納部524が構成されているが、各種データ管理サーバープログラム520と連携できるようになっていれば別のサーバーに配置されるような構成でも良い。
通信部523は、MFP105からの要求を受信して、制御部521に要求内容を送信する。さらに、制御部521から要求に対する処理結果を受け取り、応答データを作成し、MFP105などに応答を送信する。
<データ格納部で管理されるテーブル群>
図6は、図5に示したデータ格納部516で管理するデータテーブルの例を示す図である。
図6の(A)は案件管理テーブルで管理される案件データを、図6の(B)は設置デバイスデータ管理テーブルが管理するデバイスデータを示している。なお、図6のテーブル構成は、説明をしやすくするために冗長な部分を残しているが、リレーショナルデータベースなどである場合は正規化を行い、冗長性を除く等、本例とは異なるテーブル構成であってもよい。
図6は、図5に示したデータ格納部516で管理するデータテーブルの例を示す図である。
図6の(A)は案件管理テーブルで管理される案件データを、図6の(B)は設置デバイスデータ管理テーブルが管理するデバイスデータを示している。なお、図6のテーブル構成は、説明をしやすくするために冗長な部分を残しているが、リレーショナルデータベースなどである場合は正規化を行い、冗長性を除く等、本例とは異なるテーブル構成であってもよい。
図6の(A)に示す案件管理テーブルは、案件データを格納および管理しているテーブルであり、案件ID、案件名、機種、オリジナルスクリプト、1次スクリプト、2次スクリプト、備考で構成される。なお、案件管理テーブルにおいて、1レコードが1つの案件を表している。
案件IDは案件データを一意に識別するための識別子、案件名は案件名称、備考は案件の管理者用メモである。
案件IDは案件データを一意に識別するための識別子、案件名は案件名称、備考は案件の管理者用メモである。
最初のスクリプトであるオリジナルスクリプトは、設置用スクリプト(図9)である。また、1次スクリプトおよび2次スクリプトは分割スクリプト(図13)である。1次スクリプトおよび2次スクリプトは、オリジナルスクリプト実行中にエラーが発生し、処理が実行できない場合に、スクリプト編集部512によって生成される。各スクリプトの詳細は後述する。なお、本例では各データの実体を格納しているが、データのパスを格納し、実体は別の場所に置く構成でも良い。
図6の(B)に示す設置デバイスデータ管理テーブルは、設置対象MFPのデータの格納および管理しているテーブルである。設置デバイスデータ管理テーブルは、個別データID、案件ID、個別データ名、個別データ、デバイスID、デバイス名、作業状況で構成される。
設置デバイスデータ管理テーブルにおいて、案件ID、とデバイスIDとで、案件の詳細とMFPを関連付けている。
個別データIDは個別データを一意に識別するための識別子であり、個別データ名は個別データ名称である。個別データとは、設置対象のMFPごとに設定するデータであり、例えば、MFPのIPアドレスや設置場所などの設定である。
設置デバイスデータ管理テーブルにおいて、案件ID、とデバイスIDとで、案件の詳細とMFPを関連付けている。
個別データIDは個別データを一意に識別するための識別子であり、個別データ名は個別データ名称である。個別データとは、設置対象のMFPごとに設定するデータであり、例えば、MFPのIPアドレスや設置場所などの設定である。
なお、本例では個別データの実体を格納しているが、パスを格納し、実体は別の場所に置くような構成でも良い。デバイスIDはMFPを一意に識別するための識別子であり、各デバイスに割り当てられている番号である。デバイス名はデバイス名称である。
作業状況はMFPの設置作業状況である。作業状況の詳細は、"未"はスクリプト未実行、"作業中"はスクリプト実行中、"完了"は成功、"失敗"はエラー終了を示す。また、テーブルの先頭に付加されている文字で、"S0−"はオリジナルスクリプト、"S1−"は1次スクリプト、"S2−"は2次スクリプトを意味する。
作業状況はMFPの設置作業状況である。作業状況の詳細は、"未"はスクリプト未実行、"作業中"はスクリプト実行中、"完了"は成功、"失敗"はエラー終了を示す。また、テーブルの先頭に付加されている文字で、"S0−"はオリジナルスクリプト、"S1−"は1次スクリプト、"S2−"は2次スクリプトを意味する。
<MFPの設置作業手順>
図7は、本実施形態を示す情報処理装置の設置作業を説明する図である。本例では、MFP105の基本的な設置をするまでの作業フローを説明する。
S701は、案件作成者720が案件の作成を行う作業である。案件の作成は、営業担当者が顧客と対話して決定した内容を設定したり、設置管理者がMFP105の入出庫を管理する倉庫で設定内容の微修正を行なったりする。
本例では営業担当者や設置管理者など案件を編集する人をまとめて案件作成者720と表現する。案件作成者720は、MFP105の構成と設定内容を案件作成プログラム500を使用してクライアントPC106から入力する。
MFP105の構成とは、機種、オプション構成、アクティベートするオプション等のことである。クライアントPC106は、入力したその内容を案件データとして案件管理サーバー107へ送信し、データ格納部516に保存して管理する。
図7は、本実施形態を示す情報処理装置の設置作業を説明する図である。本例では、MFP105の基本的な設置をするまでの作業フローを説明する。
S701は、案件作成者720が案件の作成を行う作業である。案件の作成は、営業担当者が顧客と対話して決定した内容を設定したり、設置管理者がMFP105の入出庫を管理する倉庫で設定内容の微修正を行なったりする。
本例では営業担当者や設置管理者など案件を編集する人をまとめて案件作成者720と表現する。案件作成者720は、MFP105の構成と設定内容を案件作成プログラム500を使用してクライアントPC106から入力する。
MFP105の構成とは、機種、オプション構成、アクティベートするオプション等のことである。クライアントPC106は、入力したその内容を案件データとして案件管理サーバー107へ送信し、データ格納部516に保存して管理する。
S702は、設置担当者721がMFP105を実際に設置する際に、MFP105の組立工場や顧客先等で行う作業である。MFP105の組立後や、倉庫からMFP105が配送されると、設置担当者721はMFP105を設置作業環境のLAN101に接続する。設置担当者721は自動設置プログラム450が表示するUIで設置ボタンを押下する。
なお、ここで表示するUIについては図10を用いて後述する。MFP105にインストールされる自動設置プログラム450は、設置ボタンが押下されたことを検知すると、自動での設置作業を開始する。そして、設置に必要なデータ(ファームウエアを含む)を案件管理サーバー107や各種データ管理サーバー108(S703)からダウンロードしながら自動設置を行う。自動設置作業の処理については後述する。MFP105で自動設置作業が開始すると、設置担当者721は次のMFP105の設置作業を行う。
設置担当者721はデバイスID"N001"、"N002"と順番に"N008"まで、S702の作業を繰り返し行うことで、すべてのMFP105の設置作業が完了する。以上が本実施形態に関わるMFP105の基本的な設置をするまでの作業フローである。なお、図7で説明した基本的な設置をするまでの作業における各プログラムの詳細な処理について、図11乃至図15を用いて後述する。
<案件作成プログラム>
図8A、図8Bは、図5に示した案件作成プログラム500が表示するUI画面を示す図である。本UIは、案件作成者720がS701の作業を行う際に操作する。
図8Aの(A)は、案件作成プログラム500の案件データ一覧表示UIの一例である。UI800は、案件データ一覧801と、ボタン802〜804で構成される。案件作成プログラム500は起動すると、案件管理サーバー107から案件データの一覧を取得し、取得した案件データの一覧を案件データ一覧801にセットし、UIに表示する。案件データ一覧801は案件データの概要を表示するリストである。本例では、図6の(A)で説明した、案件ID、案件名、備考を表示している。
図8A、図8Bは、図5に示した案件作成プログラム500が表示するUI画面を示す図である。本UIは、案件作成者720がS701の作業を行う際に操作する。
図8Aの(A)は、案件作成プログラム500の案件データ一覧表示UIの一例である。UI800は、案件データ一覧801と、ボタン802〜804で構成される。案件作成プログラム500は起動すると、案件管理サーバー107から案件データの一覧を取得し、取得した案件データの一覧を案件データ一覧801にセットし、UIに表示する。案件データ一覧801は案件データの概要を表示するリストである。本例では、図6の(A)で説明した、案件ID、案件名、備考を表示している。
ボタン802は案件データを新規で作成するためのボタンである。ボタン803は案件データを編集するためのボタンである。案件作成プログラム500は、新規ボタンが押下されたことを検知すると、全データを空の状態でUI(図8の(B))をクライアントPC106のディスプレイ261に表示する。
また、案件作成プログラム500は、編集ボタンに対応するボタン803が押下されたことを検知すると、案件データ一覧801で選択状態のデータの詳細情報を案件管理サーバー107から取得する。そして、案件作成プログラム500は、取得したデータの詳細情報をテキストボックス等をUI820(図8の(B))にセットして表示する。ボタン804は案件作成プログラム500を終了するためのボタンである。
また、案件作成プログラム500は、編集ボタンに対応するボタン803が押下されたことを検知すると、案件データ一覧801で選択状態のデータの詳細情報を案件管理サーバー107から取得する。そして、案件作成プログラム500は、取得したデータの詳細情報をテキストボックス等をUI820(図8の(B))にセットして表示する。ボタン804は案件作成プログラム500を終了するためのボタンである。
図8の(B)は、図8の(A)のUI画面において、新規作成を指示するボタン802または編集開始を指示するボタン803が押下された際に、案件作成プログラム500が提供する案件データ編集表示UIの一例である。
UI820は、タブページ821〜823、および、ボタン832、833で構成される。UI820では、タブページ822がアクティブな状態で表示されている。
タブページ822は、テキストボックス825、827、829及びボタン828、830、831等で構成される。なお、UI820では、案件IDがA001である案件データの編集を行っている際の例を記載している。タブページ821は、案件データの概要を設定するためのタブページである。
UI820は、タブページ821〜823、および、ボタン832、833で構成される。UI820では、タブページ822がアクティブな状態で表示されている。
タブページ822は、テキストボックス825、827、829及びボタン828、830、831等で構成される。なお、UI820では、案件IDがA001である案件データの編集を行っている際の例を記載している。タブページ821は、案件データの概要を設定するためのタブページである。
タブページ822は、データの設定を行うためのタブページである。825は機種を設定するためのコンボボックスであり、設置対象MFPの機種を選択する。826はインストールするファームウエアバージョンを設定するためのコンボボックスであり、テキストボックス825で選択済機種のファームウエアバージョンが選択可能となる。
827はインストールするアプケーションを設定する入力エリアであり、チェックボックスでインストールするアプリケーションを選択することができる(複数選択可)。ここで、入力エリア827で選択したアプリケーションを使用するためのラインス情報はライセンス欄のテキストボックスに入力する。ライセンス入力後、確認するボタン828が押下されると、案件作成プログラム500は入力されたライセンスの有効性チェックの依頼を各種データ管理サーバー108に送信する。
そして、各種データ管理サーバープログラム520は、ライセンスを受信すると、受信したライセンスのチェックを行い結果を返信する。案件作成プログラム500は、受信したライセンス有効性の結果をUI820の入力エリア827に表示する。
829はオプション構成を設定する入力エリアであり、チェックボックスで有効化するオプション項目を選択(複数選択可)可能である。入力エリア829で選択したオプションを有効化するためのラインス情報をライセンス欄のテキストボックスに入力する。オプション構成のライセンスも、アプリケーション同様、有効性のチェックを行う。
831は上記で設定した処理の処理順序の確認および編集を行うためのボタンである。処理順序確認および編集のためのボタン831が押下されたことを検知すると、案件作成プログラム500は、上記で選択および入力された情報を使用し、適切な設置順序を設定し、UI(図8Bの(C)または(D))をディスプレイ261に表示する。
832は作成または編集中の案件データを保存するためのボタンであり、押下されると、案件作成プログラム500は本案件データを案件管理サーバー107に送信する。そして、案件管理サーバー107の案件管理サーバープログラム510は、案件データを受信すると、受信した案件データをデータ格納部516に保存する。
833は、案件データの作成または編集をキャンセルするためのボタンである。823は個別データの設定を行うためのタブページである。個別データの設定画面に関しては図示しないが、図6の(B)のカラムにある各データが入力可能となっている。
図8Bの(C)は、図8Aの(B)のUI画面において、オリジナルスクリプトの処理順序確認および編集のためのボタンが押下された際に、処理順序を確認および編集する表示UIの一例である。
図8Bの(C)において、851は図8Aの(B)で入力された処理の順序を示すフロー図である。図8Aの(B)で設定した案件は、この順で処理されることを意味している。
図8Bの(C)において、851は図8Aの(B)で入力された処理の順序を示すフロー図である。図8Aの(B)で設定した案件は、この順で処理されることを意味している。
また、図8Bの(D)も処理順序を確認および編集する表示UIの一例であるが、分割スクリプトの例である。
図8Bの(D)において、871は1次スクリプトであり、872は2次スクリプトである。分割スクリプトを構成する1次スクリプト871および2次スクリプト872の生成等については、フロー図12および図13を用いて後述する。
図8Bの(D)において、871は1次スクリプトであり、872は2次スクリプトである。分割スクリプトを構成する1次スクリプト871および2次スクリプト872の生成等については、フロー図12および図13を用いて後述する。
図8Bの(C)、(D)において、案件作成者は、処理項目をドラッグアンドドロップすることで、処理順序を変更することが可能である。
ボタン860、880は、処理順序851、872を保存するためのボタンであり、押下されると、案件作成プログラム500は、作業PC内に一次保存する。再度、831が押下されると、作業PC内に保存したデータを使用して、図8Bの(C)または図8Bの(D)を表示する。
ボタン861、881は、処理順序を確認および編集を保存せずに終了するためのキャンセルボタンである。
ボタン860、880は、処理順序851、872を保存するためのボタンであり、押下されると、案件作成プログラム500は、作業PC内に一次保存する。再度、831が押下されると、作業PC内に保存したデータを使用して、図8Bの(C)または図8Bの(D)を表示する。
ボタン861、881は、処理順序を確認および編集を保存せずに終了するためのキャンセルボタンである。
<設置用スクリプトの例>
図9は、図1に示したMFP105の設置を自動で実施するための設置作業手順を記述した設置用スクリプトの一例を示す図である。設置用スクリプトは、UI820で作成された案件データの一部として案件管理サーバー107のデータ格納部516に格納されている。MFP105の自動設置プログラム500の通信部454は、案件管理サーバー107のデータ格納部516に格納されている設置用スクリプトを取得し、スクリプト解析部453で解析する。
図9は、図1に示したMFP105の設置を自動で実施するための設置作業手順を記述した設置用スクリプトの一例を示す図である。設置用スクリプトは、UI820で作成された案件データの一部として案件管理サーバー107のデータ格納部516に格納されている。MFP105の自動設置プログラム500の通信部454は、案件管理サーバー107のデータ格納部516に格納されている設置用スクリプトを取得し、スクリプト解析部453で解析する。
スクリプト解析部453によって解析された設置用スクリプトは、処理実行部452によって記載された処理が実行される。設置用スクリプトは、XML(Extensible Markup Language)で記載されており、更新日時部921、案件データ識別部922、MFP識別部923、コマンド記載部950で構成されている。なお、本図ではXMLによりスクリプトを表現しているが、XMLに限定されず、シェルスクリプトなどで書かれていても良い。
スクリプト部900は、設置用スクリプトが記載され、<script>で構成される。type属性が含まれ、図6の(A)のスクリプトの種別を指定する。値がoriginalはオリジナルスクリプトを、値がfirstは図13に示す1次スクリプト1300を、値がsecondは図13に示す2次スクリプト1350を示す。
更新日時部921は、設置用スクリプトの生成日時または最終更新日時が記載され、<date>で構成される。
更新日時部921は、設置用スクリプトの生成日時または最終更新日時が記載され、<date>で構成される。
案件データ識別部922は、案件ID701が記載され、<setupId>で構成される。本例ではA001といった4桁の文字列で記載しているが、GUID(グローバル一意識別子)などを用いるのが望ましい。MFP識別部923には、MFP105を識別するためのデバイスIDが記載され、<deviceId>で構成される。
コマンド記載部950は、設置するために必要なコマンド群が記載され、ファームウエアダウンロードコマンド部903、ライセンス発行コマンド部904、905、アプリケーションダウンロードコマンド部906を有する。さらに、コマンド記載部950は、ファームウエア更新コマンド部907、アプリケーションインストールコマンド部908を有する。コマンド記載部950は、オプション有効化コマンド部909、設定値設定コマンド部910を有する。各コマンドの中にはid属性が含まれ、コマンドを一意に識別する。なお、id属性は、コマンドの実行順序に依存する従属情報として記述されている。
また、各コマンドの中にはerror属性も含まれ、コマンドがエラーとなった場合、設置予定の別MFP105で同一エラーが発生する(案件内共通エラー)か否かを指定する。
従属情報である値が"all"は別MFP105でも同一コマンドでエラーが発生する(案件内共通エラー)ことを示し、値が"alone"は別MFP105ではエラーが発生しない(案件内共通エラーではない、案件内個別エラー)ことを示す。
本実施形態では、オプション有効化および個別データ設定のみ"alone"としている。オプション有効化は、指定されたハードウエアが接続されている必要があるためである。図8Aの(b)に示したデバイスオプション829にある、暗号化セキュアプリントや地紋印刷は、専用のオプションボードが必要になる。
従属情報である値が"all"は別MFP105でも同一コマンドでエラーが発生する(案件内共通エラー)ことを示し、値が"alone"は別MFP105ではエラーが発生しない(案件内共通エラーではない、案件内個別エラー)ことを示す。
本実施形態では、オプション有効化および個別データ設定のみ"alone"としている。オプション有効化は、指定されたハードウエアが接続されている必要があるためである。図8Aの(b)に示したデバイスオプション829にある、暗号化セキュアプリントや地紋印刷は、専用のオプションボードが必要になる。
そのため、オプションボードの認識エラーなど、エラーがハードウエア要因の可能性があり、別MFP105で同一エラーが起こる可能性が低いと考えられる。また、個別データの設定はMFP105毎に異なるデータであるため、別MFP105で同一エラーが起こる可能性が低いと考えられる。error属性の使用方法については、フロー図12を用いて後述する。
また、ファームウエアダウンロードとファームウエア更新など、依存関係を持つコマンドは、<depend>に依存関係のあるコマンドidの値を保持する。詳細は、後述する。ファームウエアダウンロードコマンド部903は、各種データ管理サーバー108からファームウエアをダウンロードし、HDD209に一時保存するコマンドである。ファームウエアダウンロードコマンド部は、<downloadFirmwareCommand>で定義され、<version>等で必要なファームウエアを特定する。
本例では、<version>にバージョンを指定することでファームウエアを特定できるようにしたが、例えばネットワークパスや、DB上の場所を指定するidなどで場所を特定しても良い。以後の説明において、各種データ管理サーバー108からデータをダウンロードするコマンドがいくつかあるが、不図とする。
全てのコマンドにおいて、データが置かれている場所を特定するため、ネットワークパスやDB上の場所を特定するフォルダパスやidなどが記載されているものとする。ライセンス発行コマンド部904およびライセンス発行コマンド部905は、各種データ管理サーバー108からライセンスを発行およびダウンロードし、HDD209に一時保存するコマンドである。このコマンドは、<publishLicenseCommand>で定義される。
アプリケーションダウンロードコマンド部906は、各種データ管理サーバー108からアプリケーションをダウンロードし、HDD209に一時保存するコマンドであり、<downloadApplicationCommand>で定義される。アプリケーションは、先に説明したライセンスが必要になるものもある。
その場合、<depend>の<commandId>に、必要なライセンス発行コマンドのIDが記載される。本例のアプリケーションダウンロードコマンド部906では、<depend>の<commandId>の値が"2"であり、コマンドのIdが2であるライセンス発行コマンド部904のライセンスを必要としている。ライセンス発行コマンド部904が実行完了かつ処理が成功していないと、アプリケーションダウンロードコマンド部906は実行不可(実行エラーとなる)ことを意味する。
これをコマンドの依存関係とする。ファームウエア更新コマンド907は、ダウンロードしたファームウエアを使用してファームウエアを更新するコマンドであり、<updateFirmwareCommand>で定義される。
これをコマンドの依存関係とする。ファームウエア更新コマンド907は、ダウンロードしたファームウエアを使用してファームウエアを更新するコマンドであり、<updateFirmwareCommand>で定義される。
ここでも、先と同様に、<depend>の<commandId>が定義されており、値は"1"である。つまり、ファームウエアダウンロードコマンド部903の実行完了(成功)を必要としている。
ファームウエアダウンロードコマンド部903でダウンロードしたファームウエアを使用して、ファームウエアを更新する。アプリケーションインストールコマンド部908は、ダウンロードしたライセンスおよびアプリケーションを使用してアプリケーションをインストールするコマンドであり、<installApplicationCommand>で定義される。
アプリケーションインストールコマンド部908も、先と同様に、アプリケーションダウンロードコマンド部906の実行完了(成功)を必要としている。またさらに、アプリケーションダウンロードコマンド部906はライセンス発行コマンド部904の実行完了(成功)を必要としている。
ファームウエアダウンロードコマンド部903でダウンロードしたファームウエアを使用して、ファームウエアを更新する。アプリケーションインストールコマンド部908は、ダウンロードしたライセンスおよびアプリケーションを使用してアプリケーションをインストールするコマンドであり、<installApplicationCommand>で定義される。
アプリケーションインストールコマンド部908も、先と同様に、アプリケーションダウンロードコマンド部906の実行完了(成功)を必要としている。またさらに、アプリケーションダウンロードコマンド部906はライセンス発行コマンド部904の実行完了(成功)を必要としている。
ライセンス発行コマンド部904でダウンロードしたライセンスと、アプリケーションダウンロードコマンド部906でダウンロードしたアプリケーションを使用して、アプリケーションをインストールする。オプション有効化コマンド部909は、ダウンロードしたライセンスを使用してオプションを有効化するコマンドであり、<activateOptionCommand>で定義される。
オプション有効化コマンド部909も、先と同様に、ライセンス発行コマンド部905の実行完了(成功)を必要としている。アプリケーションダウンロードコマンド部906でダウンロードしたライセンスを使用して、オプションを有効化する。個別データ設定コマンド910は、案件管理サーバー107から個別データをダウンロードして設定するするコマンドであり、<setIndividualDataCommand>で定義される。
<自動設置処理>
図10は、MFP105の操作部208に表示するUI画面を示す図である。本UIは、設置担当者721がS702の作業を行う際に操作する。
図10の(A)は、MFP105のネイティブプログラム401のUIの一例である。UI1000はボタン1001を有し、1001は自動設置プログラム450を起動するためのボタンである。ネイティブプログラム401は、ボタン1001が押下されたことを検知すると、自動設置プログラム450を起動する。なお、本実施形態では分かり易く説明するため、ボタン1001のみを表示しているがその限りではない。
図10は、MFP105の操作部208に表示するUI画面を示す図である。本UIは、設置担当者721がS702の作業を行う際に操作する。
図10の(A)は、MFP105のネイティブプログラム401のUIの一例である。UI1000はボタン1001を有し、1001は自動設置プログラム450を起動するためのボタンである。ネイティブプログラム401は、ボタン1001が押下されたことを検知すると、自動設置プログラム450を起動する。なお、本実施形態では分かり易く説明するため、ボタン1001のみを表示しているがその限りではない。
図10の(B)は、自動設置プログラム450のUIの一例である。本UIは、ボタン1001を押下された際に表示するUIである。UI1050は、ボタン1051と1052を有し、特にデバイスID"N001"であるMFP105の自動設置プログラム450が表示するUIである。
1051は自動設置作業を実行するためのボタンであり、自動設置プログラム450は、ボタン1051が押下されたことを検知すると、自動設置作業を開始する。自動設置作業の処理については図11乃至図15を用いて後述する。キャンセルするボタン1052は、自動設置プログラム450を終了するためのボタンである。
1051は自動設置作業を実行するためのボタンであり、自動設置プログラム450は、ボタン1051が押下されたことを検知すると、自動設置作業を開始する。自動設置作業の処理については図11乃至図15を用いて後述する。キャンセルするボタン1052は、自動設置プログラム450を終了するためのボタンである。
<設置時のフロー>
図11は、本実施形態を示す情報処理システムの制御方法を説明するフローチャートである。本例は自動設置作業におけるMFP105の自動設置プログラム450、および、案件管理サーバー107の案件管理サーバープログラム510の処理例である。なお、S1101〜S1110は、CPU201が自動設置プログラム450を実行することで実現され、S1151〜S1157は、CPU301が案件管理サーバープログラム510を実行することで実現される。S1101〜S1110は、設置担当者721がボタン1051を押下した際の自動設置プログラム450の自動設置作業の処理である。
図11は、本実施形態を示す情報処理システムの制御方法を説明するフローチャートである。本例は自動設置作業におけるMFP105の自動設置プログラム450、および、案件管理サーバー107の案件管理サーバープログラム510の処理例である。なお、S1101〜S1110は、CPU201が自動設置プログラム450を実行することで実現され、S1151〜S1157は、CPU301が案件管理サーバープログラム510を実行することで実現される。S1101〜S1110は、設置担当者721がボタン1051を押下した際の自動設置プログラム450の自動設置作業の処理である。
〔MFP105側の設定処理〕
S1101で、通信部454は、案件管理サーバー107へ対応する設置用スクリプトを要求して、S1102に遷移する。具体的には通信部454が、案件管理サーバープログラム510の通信部515に対してHTTPのGETコマンドによる要求を行う。当該要求にはMFP105のデバイスID(図6の(B))が含まれている。S1102で、通信部454は、案件管理サーバー107から応答があったかを判断する。
S1101で、通信部454は、案件管理サーバー107へ対応する設置用スクリプトを要求して、S1102に遷移する。具体的には通信部454が、案件管理サーバープログラム510の通信部515に対してHTTPのGETコマンドによる要求を行う。当該要求にはMFP105のデバイスID(図6の(B))が含まれている。S1102で、通信部454は、案件管理サーバー107から応答があったかを判断する。
ここで、通信部454が案件管理サーバー107から応答があったと判断した場合、処理をS1103に進め、応答がないと判断した場合、応答監視を続ける。
S1103で、通信部454は、案件管理サーバー107から案件IDと設置用スクリプトを受信し、処理をS1104へ進める。
S1104で、スクリプト解析部453は、案件管理サーバー107から受信したスクリプトが分割スクリプトか否かを判断する。ここで、分割スクリプトとは、図6の(A)で説明した、1次スクリプトおよび2次スクリプトである。S1104で、スクリプト解析部453は、分割スクリプトであると判断した場合、処理をS1105に進め、オリジナルスクリプトと判断した場合は、処理をS1106へ進める。
S1103で、通信部454は、案件管理サーバー107から案件IDと設置用スクリプトを受信し、処理をS1104へ進める。
S1104で、スクリプト解析部453は、案件管理サーバー107から受信したスクリプトが分割スクリプトか否かを判断する。ここで、分割スクリプトとは、図6の(A)で説明した、1次スクリプトおよび2次スクリプトである。S1104で、スクリプト解析部453は、分割スクリプトであると判断した場合、処理をS1105に進め、オリジナルスクリプトと判断した場合は、処理をS1106へ進める。
S1105で、処理実行部452は、S1103で受信した分割スクリプトを実行して、本処理を終了する。分割スクリプトの実行の詳細手順については図14を用いて後述する。
S1106で、処理実行部452は、S1103で案件管理サーバー107から受信したオリジナルスクリプトを実行し、処理をS1107に進める。
具体的には、処理実行部452は、図9に示したコマンド記載部950に記載されている各コマンドをコマンド部903〜910へ順に実行し、途中でエラーが発生した場合は、その時点で実行を停止する。
S1107で、処理実行部452は、S1106の実行結果が成功か失敗かを判断する。全てのコマンド処理が成功したと判断した場合、処理をS1110に進め、途中でエラーとなったと判断した場合、処理をS1108に進める。なお、実行結果が失敗である場合は、
S1108で、通信部454は、分割スクリプトの生成を案件管理サーバー107へ要求し、処理をS1109に進める。なお、分割スクリプト生成の詳細手順についてはフロー図12を用いて後述する。
具体的には、処理実行部452は、図9に示したコマンド記載部950に記載されている各コマンドをコマンド部903〜910へ順に実行し、途中でエラーが発生した場合は、その時点で実行を停止する。
S1107で、処理実行部452は、S1106の実行結果が成功か失敗かを判断する。全てのコマンド処理が成功したと判断した場合、処理をS1110に進め、途中でエラーとなったと判断した場合、処理をS1108に進める。なお、実行結果が失敗である場合は、
S1108で、通信部454は、分割スクリプトの生成を案件管理サーバー107へ要求し、処理をS1109に進める。なお、分割スクリプト生成の詳細手順についてはフロー図12を用いて後述する。
S1109で、処理実行部452は、S1108で分割スクリプトが生成されたか否かを判断する。ここで、処理実行部452は、分割スクリプトが生成されたと判断した場合、処理をS1105に進め、生成されなかったと判断した場合、処理をS1110に進める。
S1110で、通信部454は、案件IDと実行したスクリプト種別および実行結果を案件管理サーバー107へ送信し、本処理を終了する。なお、設置結果送信処理の詳細手順については図15を用いて後述する。
S1110で、通信部454は、案件IDと実行したスクリプト種別および実行結果を案件管理サーバー107へ送信し、本処理を終了する。なお、設置結果送信処理の詳細手順については図15を用いて後述する。
〔案件管理サーバープログラム510の処理〕
図11において、案件管理サーバー107が実行するS1151からS1155は、S1101の処理で自動設置プログラム450から送信されたスクリプト取得要求を受信してから応答を返すまでの案件管理サーバープログラム510の処理である。
S1151で、案件管理サーバー107の通信部515は、MFP105からスクリプトの取得要求を受信したかを監視する。スクリプト取得要求を受信したと判断した場合はS1152に遷移し、受信していないと判断した場合は監視を続ける。S1152で、案件データ管理部513は、S1151で取得したデバイスIDを使用して、案件管理テーブルおよび設置デバイスデータ管理テーブル(図6)から、1次スクリプトおよび2次スクリプトに対応する分割スクリプトが生成されているか否かを判断する。
図11において、案件管理サーバー107が実行するS1151からS1155は、S1101の処理で自動設置プログラム450から送信されたスクリプト取得要求を受信してから応答を返すまでの案件管理サーバープログラム510の処理である。
S1151で、案件管理サーバー107の通信部515は、MFP105からスクリプトの取得要求を受信したかを監視する。スクリプト取得要求を受信したと判断した場合はS1152に遷移し、受信していないと判断した場合は監視を続ける。S1152で、案件データ管理部513は、S1151で取得したデバイスIDを使用して、案件管理テーブルおよび設置デバイスデータ管理テーブル(図6)から、1次スクリプトおよび2次スクリプトに対応する分割スクリプトが生成されているか否かを判断する。
例えば、S1151で、デバイスID"N002"からの要求を受信したとする。デバイスID"N002"は設置デバイスデータ管理テーブルより、案件ID"A001"のデバイスであることがわかる。さらに、案件管理テーブルより案件ID"A001"は1次スクリプト"スクリプト1−1"および2次スクリプト"スクリプト1−2"が生成されていることがわかる。よって、案件データ管理部513は、分割スクリプトありと判断し、S1153に遷移する。
また、デバイスID"N101"からの要求の場合、案件ID"A003"であり、案件ID"A003"はオリジナルスクリプトのみである。よって、案件データ管理部513は、分割スクリプトなしと判断し、S1154に遷移する。S1153で、通信部515は、案件IDおよび、該当する案件IDの1次スクリプトと2次スクリプトを要求元のMFP105に送信する。
例えば、デバイスID"N003"の場合、案件ID"A001"と、1次スクリプト"スクリプト1−1"および2次スクリプト"スクリプト1−2"を送信し、S1155に遷移する。S1154で、通信部515は、案件IDおよびオリジナルスクリプトをMFP105に送信する。例えば、デバイスID"N102"の場合、案件ID"A003"とオリジナルスクリプト"スクリプト1"を送信し、S1155に遷移する。
S1155で、案件データ管理部513は、設置デバイスデータ管理テーブル(図6の(B))の作業状況を変更(更新)し、処理を終了する。
具体的には、S1151で受信したデバイスIDに対応するレコードの作業状況を"未"(未実行)から"作業中"に変更する。例えば、デバイスID"N003"の場合は、"S1−作業中"(1次スクリプト実行中)に、デバイスID"N102"の場合は、"S0−作業中"(オリジナルスクリプト実行中)に変更する。
具体的には、S1151で受信したデバイスIDに対応するレコードの作業状況を"未"(未実行)から"作業中"に変更する。例えば、デバイスID"N003"の場合は、"S1−作業中"(1次スクリプト実行中)に、デバイスID"N102"の場合は、"S0−作業中"(オリジナルスクリプト実行中)に変更する。
S1156は、S1108で自動設置プログラム450から送信された分割スクリプトの生成要求を受信してから応答を返すまでの、案件管理サーバープログラム510の処理である。S1156で、案件管理サーバープログラム510は分割スクリプトを生成し終了する。分割スクリプトの生成については図12を用いて後述する。
S1157は、S1110で自動設置プログラム450から送信された設置結果を受信してから応答を返すまでの、案件管理サーバープログラム510の処理である。S1157で、案件管理サーバープログラムは受信した設置結果を保存し終了する。設置結果を保存については、図15を用いて後述する。
〔分割スクリプトの生成処理〕
図12は、本実施形態における情報処理システムの制御方法を説明するフローチャートである。本例は、図1に示したMFP105および案件管理サーバー107の分割スクリプト生成制御手順に対応する。本例は、自動設置作業におけるMFP105の自動設置プログラム450、および案件管理サーバー107の案件管理サーバープログラム510の処理例である。なお、S1201からS1204は、CPU201が自動設置プログラムを実行することで実現され、S1211からS1215は、CPU301が案件管理サーバープログラム510を実行することで実現される。
図12は、本実施形態における情報処理システムの制御方法を説明するフローチャートである。本例は、図1に示したMFP105および案件管理サーバー107の分割スクリプト生成制御手順に対応する。本例は、自動設置作業におけるMFP105の自動設置プログラム450、および案件管理サーバー107の案件管理サーバープログラム510の処理例である。なお、S1201からS1204は、CPU201が自動設置プログラムを実行することで実現され、S1211からS1215は、CPU301が案件管理サーバープログラム510を実行することで実現される。
分割スクリプトの生成処理は、前述した図11に示したS1108とS1156の処理である。
S1201で、スクリプト解析部453は、S1106でエラーとなったコマンドが設置予定の別MFP105でもエラーが発生するかを解析する処理を実行して、処理をS1202に進める。
具体的には、スクリプト解析部453は、エラーになったコマンド記載部950のerror属性を調べ、"all"である場合、エラー種別は案件内共通と判断し、"alone"である場合、案件内で共通ではないエラー(個別エラー)と判断する。例えば、ライセンス発行コマンド部904でエラーとなった場合は案件内共通と判断し、オプション有効化でエラーとなった場合は案件内共通ではないと判断する。
S1201で、スクリプト解析部453は、S1106でエラーとなったコマンドが設置予定の別MFP105でもエラーが発生するかを解析する処理を実行して、処理をS1202に進める。
具体的には、スクリプト解析部453は、エラーになったコマンド記載部950のerror属性を調べ、"all"である場合、エラー種別は案件内共通と判断し、"alone"である場合、案件内で共通ではないエラー(個別エラー)と判断する。例えば、ライセンス発行コマンド部904でエラーとなった場合は案件内共通と判断し、オプション有効化でエラーとなった場合は案件内共通ではないと判断する。
S1202で、スクリプト解析部453は、S1201で解析した結果が案件内共通であるか否かを判断する。ここで、スクリプト解析部453は、エラー種別が案件内共通(別MFP105でも同様のエラーが発生する)であると判断した場合、処理をS1203に進める。一方、スクリプト解析部453は、案件内共通エラーではない(別MFP105では同様のエラーが発生しない)と判断した場合、処理を終了する。
S1203で、通信部454は、S1103で受信した案件IDおよびS1106でエラーとなったコマンド情報と共に、案件管理サーバー107に分割スクリプト生成の要求を送信して、処理を1204に進める。
S1204で、スクリプト解析部453は、通信部454を介して案件管理サーバー107からの応答を監視して、分割スクリプトを受信したかどうかを判断する。ここで、処理実行部452は、分割スクリプトを受信したと判断した場合、処理を終了し、分割スクリプトを受信していないと判断した場合、案件管理サーバー107からの応答受信の監視を続ける。
S1203で、通信部454は、S1103で受信した案件IDおよびS1106でエラーとなったコマンド情報と共に、案件管理サーバー107に分割スクリプト生成の要求を送信して、処理を1204に進める。
S1204で、スクリプト解析部453は、通信部454を介して案件管理サーバー107からの応答を監視して、分割スクリプトを受信したかどうかを判断する。ここで、処理実行部452は、分割スクリプトを受信したと判断した場合、処理を終了し、分割スクリプトを受信していないと判断した場合、案件管理サーバー107からの応答受信の監視を続ける。
〔案件管理サーバープログラム107の処理〕
S1211乃至S1215は、S1156で自動設置プログラム450から送信された分割スクリプト生成要求を受信してから応答結果を返すまでの、案件管理サーバープログラム107の処理である。
図13は、図6の(A)に示したスクリプトの分割スクリプトとなる1次スクリプト1300、2次スクリプト1350の一例を示す図である。
S1211で、案件管理サーバープログラム107の通信部515は、MFP105から分割スクリプト生成要求を受信したかを判断する。ここで、制御部511は、通信部515が分割スクリプト生成要求をMFP105から受信したと判断した場合、処理をS1212に進め、受信していないと判断した場合、MFP105からの応答の監視を続ける。
S1212で、分割スクリプト編集部512は、S1211でMFP105から受信した案件IDとエラーコマンド情報を使用して、該当する案件IDのオリジナルスクリプトからコマンドの依存関係を抽出し、処理をS1213に進める。
S1211乃至S1215は、S1156で自動設置プログラム450から送信された分割スクリプト生成要求を受信してから応答結果を返すまでの、案件管理サーバープログラム107の処理である。
図13は、図6の(A)に示したスクリプトの分割スクリプトとなる1次スクリプト1300、2次スクリプト1350の一例を示す図である。
S1211で、案件管理サーバープログラム107の通信部515は、MFP105から分割スクリプト生成要求を受信したかを判断する。ここで、制御部511は、通信部515が分割スクリプト生成要求をMFP105から受信したと判断した場合、処理をS1212に進め、受信していないと判断した場合、MFP105からの応答の監視を続ける。
S1212で、分割スクリプト編集部512は、S1211でMFP105から受信した案件IDとエラーコマンド情報を使用して、該当する案件IDのオリジナルスクリプトからコマンドの依存関係を抽出し、処理をS1213に進める。
例えば、図9の設置用スクリプトが該当案件IDのオリジナルスクリプトとし、ライセンス発行コマンド部904でエラーが発生したとする。コマンドidは"2"であるので、以降のコマンドから<depend>内の<commamdId>が"2"になっているコマンドを抽出する。
コマンド部905は<commamdId>がないため依存しない。コマンド部906は<commamdId>が"2"であるため依存し、抽出対象となる。さらにコマンド部906のコマンドIDは"4"であるため、以後のコマンドは、<commamdId>が"2"または"4"のコマンドを抽出することになる。
続けて、コマンド部907は<commamdId>が"1"であり依存せず。コマンド部908は<commamdId>が"4"であるため依存する。
コマンド部905は<commamdId>がないため依存しない。コマンド部906は<commamdId>が"2"であるため依存し、抽出対象となる。さらにコマンド部906のコマンドIDは"4"であるため、以後のコマンドは、<commamdId>が"2"または"4"のコマンドを抽出することになる。
続けて、コマンド部907は<commamdId>が"1"であり依存せず。コマンド部908は<commamdId>が"4"であるため依存する。
同様にコマンド部910まで繰り返すと、コマンド部904に依存するコマンドは、コマンド部906、908であることがわかり、これら3コマンドを抽出する。
S1213で、分割スクリプト編集部512は、S1212で抽出したコマンド(2次スクリプト)と、それ以外のコマンド(1次スクリプト)に分割し、処理をS1214に進める。
本例では、分割スクリプト編集部512は、コマンド部904、906、908を抽出したため、これらのコマンドを2次スクリプト1350とし、それ以外のコマンド部903、905、907、909、910は1次スクリプト1300とする。
S1214で、案件データ管理部513は、案件管理テーブル(図6の(A))内にある、S1211で受信した案件IDに対応するレコードの1次スクリプト、2次スクリプトにS1213で生成した2つのスクリプトを保存し、処理をS1215に進める。
S1215で、通信部515は、S1213で生成した分割スクリプトをMFP105に送信して、本処理を終了する。
S1213で、分割スクリプト編集部512は、S1212で抽出したコマンド(2次スクリプト)と、それ以外のコマンド(1次スクリプト)に分割し、処理をS1214に進める。
本例では、分割スクリプト編集部512は、コマンド部904、906、908を抽出したため、これらのコマンドを2次スクリプト1350とし、それ以外のコマンド部903、905、907、909、910は1次スクリプト1300とする。
S1214で、案件データ管理部513は、案件管理テーブル(図6の(A))内にある、S1211で受信した案件IDに対応するレコードの1次スクリプト、2次スクリプトにS1213で生成した2つのスクリプトを保存し、処理をS1215に進める。
S1215で、通信部515は、S1213で生成した分割スクリプトをMFP105に送信して、本処理を終了する。
〔分割スクリプトの実行処理〕
図14は、本実施形態を示す情報処理システムの制御方法を説明するフローチャートである。本例は、MFP105、案件管理サーバー107およびクライアントPC106の分割スクリプトの実行制御手順に対応する。本例は、自動設置作業におけるMFPの自動設置プログラム450、案件管理サーバーの案件管理サーバープログラム510およびクライアントPC106の案件作成プログラム500の処理例である。
なお、S1401からS1409は、CPU201が自動設置プログラムを実行することで実現され、S1411からS1415は、CPU301が案件管理サーバープログラム510を実行することで実現される。さらに、S1421からS1422は、CPU251が案件作成プログラム500を実行することで実現される。なお、分割スクリプトの実行処理は前述したS1105の処理である。
図14は、本実施形態を示す情報処理システムの制御方法を説明するフローチャートである。本例は、MFP105、案件管理サーバー107およびクライアントPC106の分割スクリプトの実行制御手順に対応する。本例は、自動設置作業におけるMFPの自動設置プログラム450、案件管理サーバーの案件管理サーバープログラム510およびクライアントPC106の案件作成プログラム500の処理例である。
なお、S1401からS1409は、CPU201が自動設置プログラムを実行することで実現され、S1411からS1415は、CPU301が案件管理サーバープログラム510を実行することで実現される。さらに、S1421からS1422は、CPU251が案件作成プログラム500を実行することで実現される。なお、分割スクリプトの実行処理は前述したS1105の処理である。
S1401で、MFP105のスクリプト解析部453は、S1103またはS1108で受信した1次スクリプト1300を読み込み、さらに処理実行部452は読み込んだ1次スクリプト1300を実行し、処理をS1402へ進める。具体的には、処理実行部452はS1106と同様に、1次スクリプト1300に記載されているコマンドを順に実行し、途中でエラーが発生した場合はその時点で実行を停止する。
S1402で、処理実行部452は、S1401の実行結果が成功か失敗かを判断する。ここで、処理実行部452は、全てのコマンド処理が成功していると判断した場合、処理をS1403に進め、途中でエラーとなったと判断した場合、処理をS1408に進める。
S1403で、通信部454は、S1110と同様に設置結果を案件管理サーバー107に送信し、処理をS1404に進める。設置結果送信については図15を用いて後述する。
S1404で、処理実行部452は、スクリプト1300の実行処理を一時停止し、再開後、処理をS1405に進める。なお、分割スクリプトはオリジナルスクリプト実行中にエラーが発生した場合(S1107のNO)に生成され、2次スクリプトは実行不可能なコマンドを抽出(S1212)したものである。このため、処理実行部452が2次スクリプト1350を実行するとエラーとなる。
S1403で、通信部454は、S1110と同様に設置結果を案件管理サーバー107に送信し、処理をS1404に進める。設置結果送信については図15を用いて後述する。
S1404で、処理実行部452は、スクリプト1300の実行処理を一時停止し、再開後、処理をS1405に進める。なお、分割スクリプトはオリジナルスクリプト実行中にエラーが発生した場合(S1107のNO)に生成され、2次スクリプトは実行不可能なコマンドを抽出(S1212)したものである。このため、処理実行部452が2次スクリプト1350を実行するとエラーとなる。
よって、ここで、エラー要因調査や2次スクリプト修正を行い、2次スクリプトが実行可能となるまで待つ。
なお、本実施形態では、MFP105は、再起動時や一定時間(例えば24時間)の経過などのタイミングで、定期的にスクリプトの一時停止を解除し、スクリプト実行処理を再開する。
S1405で、通信部452は、案件IDおよび2次スクリプト1350の更新日時部921を案件管理サーバー107に送信し、2次スクリプト1350の更新が行われたか否か、案件管理サーバー107に問い合わせをして、処理をS1406に進める。
S1406で、処理実行部452は、通信部454を介して、案件管理サーバー107から応答があったかを判断する。ここで、処理実行部452は、通信部454を介して案件管理サーバー107から応答があったと判断した場合は、処理をS1407に進め、応答がないと判断した場合は、応答監視を続ける。
S1407で、処理実行部452は、2次スクリプト1350の更新が行われたか否かを判断する。なお、S1406において、処理実行部452は、案件管理サーバー107から新規に2次スクリプト1350を受信している場合は更新されたと判断し、処理をS1408に進める。
なお、本実施形態では、MFP105は、再起動時や一定時間(例えば24時間)の経過などのタイミングで、定期的にスクリプトの一時停止を解除し、スクリプト実行処理を再開する。
S1405で、通信部452は、案件IDおよび2次スクリプト1350の更新日時部921を案件管理サーバー107に送信し、2次スクリプト1350の更新が行われたか否か、案件管理サーバー107に問い合わせをして、処理をS1406に進める。
S1406で、処理実行部452は、通信部454を介して、案件管理サーバー107から応答があったかを判断する。ここで、処理実行部452は、通信部454を介して案件管理サーバー107から応答があったと判断した場合は、処理をS1407に進め、応答がないと判断した場合は、応答監視を続ける。
S1407で、処理実行部452は、2次スクリプト1350の更新が行われたか否かを判断する。なお、S1406において、処理実行部452は、案件管理サーバー107から新規に2次スクリプト1350を受信している場合は更新されたと判断し、処理をS1408に進める。
S1407で、処理実行部452は、S1406で未更新の結果だけを取得している場合は未更新と判断し、処理をS1404に戻す。
S1408で、スクリプト解析部453は、S1406で受信した2次スクリプト1350を読み込み、さらに処理実行部452は読み込んだ2次スクリプト1350を実行し、処理をS1409へ進める。
具体的にはS1106と同様に、処理実行部452は、図13に示したスクリプト1350に記載されているコマンドを順に実行し、処理をS1409へ進める。なお、スクリプト実行の途中でエラーが発生した場合はその時点で実行を停止する。
S1409で、処理実行部452は、通信部454を介して、S1110と同様に設置結果を案件管理サーバー107に送信し、処理を終了する。なお、設置結果送信処理の詳細について図15を用いて後述する。
S1408で、スクリプト解析部453は、S1406で受信した2次スクリプト1350を読み込み、さらに処理実行部452は読み込んだ2次スクリプト1350を実行し、処理をS1409へ進める。
具体的にはS1106と同様に、処理実行部452は、図13に示したスクリプト1350に記載されているコマンドを順に実行し、処理をS1409へ進める。なお、スクリプト実行の途中でエラーが発生した場合はその時点で実行を停止する。
S1409で、処理実行部452は、通信部454を介して、S1110と同様に設置結果を案件管理サーバー107に送信し、処理を終了する。なお、設置結果送信処理の詳細について図15を用いて後述する。
〔案件管理サーバープログラム510の処理〕
S1411〜S1415は、案件作成プログラム500から2次スクリプト修正要求を受信した際と、自動設置プログラム450から2次スクリプト受信要求を受信した際の案件管理サーバープログラム510の処理である。
S1411で、制御部511は、クライアントPC106の通信部515を介して案件作成プログラム500から2次スクリプト修正要求を受信したか否か判断する。ここで、制御部511は、通信部515を介して案件作成プログラム500から2次スクリプト修正要求を受信したと判断した場合、処理をS1412に進める。一方、2次スクリプト修正要求を受信していないと判断した場合、案件作成プログラム500から2次スクリプト修正要求を受信したかどうかの監視処理を続ける。
S1412で、案件データ管理部513は、案件IDと修正済2次スクリプトを受信した場合、処理をS1413に進める。S1413で、案件データ管理部513は、案件管理テーブル(図6の(A))の該当箇所に、S1412でクライアントPC106から受信した修正済2次スクリプトを上書き保存し、処理を終了する。その際、案件データ管理部513は、2次スクリプト1350の<update>の<date>は上書き保存した時点の日時となる。
S1411〜S1415は、案件作成プログラム500から2次スクリプト修正要求を受信した際と、自動設置プログラム450から2次スクリプト受信要求を受信した際の案件管理サーバープログラム510の処理である。
S1411で、制御部511は、クライアントPC106の通信部515を介して案件作成プログラム500から2次スクリプト修正要求を受信したか否か判断する。ここで、制御部511は、通信部515を介して案件作成プログラム500から2次スクリプト修正要求を受信したと判断した場合、処理をS1412に進める。一方、2次スクリプト修正要求を受信していないと判断した場合、案件作成プログラム500から2次スクリプト修正要求を受信したかどうかの監視処理を続ける。
S1412で、案件データ管理部513は、案件IDと修正済2次スクリプトを受信した場合、処理をS1413に進める。S1413で、案件データ管理部513は、案件管理テーブル(図6の(A))の該当箇所に、S1412でクライアントPC106から受信した修正済2次スクリプトを上書き保存し、処理を終了する。その際、案件データ管理部513は、2次スクリプト1350の<update>の<date>は上書き保存した時点の日時となる。
S1414で、制御部511は、通信部515を介してMFP105から2次スクリプト1350の取得要求を受信したかを判断する。ここで、制御部515は、2次スクリプト1350の取得要求を受信したと判断した場合、処理をS1415に進める。一方、2次スクリプト1350の取得要求を受信していないと判断した場合、2次スクリプト1350の取得の要求を監視する処理を続ける。
S1415で、案件データ管理部513は、S1414で受信した案件IDと2次スクリプト更新日時と、案件管理テーブル(図6の(A))の2次スクリプト更新日時を比較し、2次スクリプト1350が修正済か否かを判断する。ここで、案件データ管理部513は、2次スクリプト1350が修正済であると判断した場合、制御部511は、通信部515を介して、修正済であれば更新済の2次スクリプト1350をMFP105に送信し、処理を終了する。一方、案件データ管理部513は、未更新であれば2次スクリプト1350が未更新であることをMFP105に送信し、処理を終了する。
例えば、案件データ管理部513は、2次スクリプト1350にある"A001"と"2016/4/1 12:00"を受信した場合、案件ID"A001"の2次スクリプト1350が、2016年4月1日12時以降に更新されていれば更新済と判断する。逆に、案件データ管理部513は、2次スクリプト1350が2016年4月1日12時のままであれば未更新と判断する。
S1415で、案件データ管理部513は、S1414で受信した案件IDと2次スクリプト更新日時と、案件管理テーブル(図6の(A))の2次スクリプト更新日時を比較し、2次スクリプト1350が修正済か否かを判断する。ここで、案件データ管理部513は、2次スクリプト1350が修正済であると判断した場合、制御部511は、通信部515を介して、修正済であれば更新済の2次スクリプト1350をMFP105に送信し、処理を終了する。一方、案件データ管理部513は、未更新であれば2次スクリプト1350が未更新であることをMFP105に送信し、処理を終了する。
例えば、案件データ管理部513は、2次スクリプト1350にある"A001"と"2016/4/1 12:00"を受信した場合、案件ID"A001"の2次スクリプト1350が、2016年4月1日12時以降に更新されていれば更新済と判断する。逆に、案件データ管理部513は、2次スクリプト1350が2016年4月1日12時のままであれば未更新と判断する。
〔案件作成プログラム500の処理〕
S1421乃至S1422は、案件作成者720が2次スクリプト1350を修正する際の、案件作成プログラム500の処理である。なお、案件作成者720が、案件データ一覧801から修正したい案件データを選択し、編集ボタン803を押下することにより開始される。
S1421乃至S1422は、案件作成者720が2次スクリプト1350を修正する際の、案件作成プログラム500の処理である。なお、案件作成者720が、案件データ一覧801から修正したい案件データを選択し、編集ボタン803を押下することにより開始される。
S1421で、UI制御部501は、該当する案件データの編集画面(図8Aの(B))を表示し、案件作成者は正しい値を入力する。ボタン831が押下されると、処理実行部502は、分割スクリプトの処理順序(図8Bの(D))で、実行済処理871と未実行部分872を表示する。案件作成者720は、この画面で未実行の部分を確認することができる。保存ボタン832の押下を検知すると、スクリプト生成部504はS1421で修正した2次スクリプト1350を保存し、処理をS1422に進める。なお、2次スクリプト1350で修正が不要である例えばライセンス数の不足の場合は、案件データの編集画面(図8Aの(B))のライセンス欄にOKが表示されない。
ライセンス管理者による必要なライセンス数を再発行後(不図)、案件作成者720は案件データの編集画面にライセンスの確認のためのボタン828、830を押下することで、ライセンスチェックOKとなる。
S1422で、通信部505は、S1421で修正された2次スクリプト1350を案件管理サーバー107へ送信し、本処理を終了する。
S1422で、通信部505は、S1421で修正された2次スクリプト1350を案件管理サーバー107へ送信し、本処理を終了する。
図15は、本実施形態を示す情報処理システムの制御方法を説明するフローチャートである。本例は、MFP105および案件管理サーバー107の各スクリプトの実行結果登録手順に対応する。本例は、自動設置作業におけるMFP105の自動設置プログラム450および案件管理サーバー107の案件管理サーバープログラム510の処理例である。
〔MFP105の自動設置プログラム450の処理〕
なお、S1501は、CPU201が自動設置プログラム450を実行することで実現され、S1511からS1512は、CPU301が案件管理サーバープログラム510を実行することで実現される。
実行結果の送信は前述したS1110、S1403およびS1409の処理である。S1501で、通信部454は、デバイスID、S1106またはS1401またはS1408で実行したスクリプトの種別およびスクリプトの実行結果を案件管理サーバー107へ送信して処理を終了する。
なお、S1501は、CPU201が自動設置プログラム450を実行することで実現され、S1511からS1512は、CPU301が案件管理サーバープログラム510を実行することで実現される。
実行結果の送信は前述したS1110、S1403およびS1409の処理である。S1501で、通信部454は、デバイスID、S1106またはS1401またはS1408で実行したスクリプトの種別およびスクリプトの実行結果を案件管理サーバー107へ送信して処理を終了する。
〔案件管理サーバープログラム510の処理〕
S1511およびS1512は、自動設置プログラム450から実行結果を受信した際の案件管理サーバープログラム510の処理である。S1511で、制御部511がMFP105の通信部515を介してMFP105から実行結果を受信したかを判断する。ここで、制御部511が実行結果を受信したと判断した場合、処理をS1512に進め、実行結果を受信していないと判断した場合、制御部515は、MFP105からの応答を監視する処理を続ける。
S1511およびS1512は、自動設置プログラム450から実行結果を受信した際の案件管理サーバープログラム510の処理である。S1511で、制御部511がMFP105の通信部515を介してMFP105から実行結果を受信したかを判断する。ここで、制御部511が実行結果を受信したと判断した場合、処理をS1512に進め、実行結果を受信していないと判断した場合、制御部515は、MFP105からの応答を監視する処理を続ける。
S1512で、案件データ管理部513は、S1511で受信した実行結果に対応するデータを基に、対応する設置デバイスデータ管理テーブル(図6の(B))の作業状況を変更し、処理を終了する。
例えば、デバイスID"N002"の1次スクリプト成功の結果を受信した場合、デバイスID"N002"の作業状況を、"未"(未実行)から"S1−完了"(1次スクリプト成功)に変更する。
例えば、デバイスID"N002"の1次スクリプト成功の結果を受信した場合、デバイスID"N002"の作業状況を、"未"(未実行)から"S1−完了"(1次スクリプト成功)に変更する。
本実施形態によれば、管理装置で設置作業中に発生したエラー情報を用いて、現時点で実行可能な処理と実行不可能な処理に分割し、現時点で可能な処理のみを実行し、エラー修正後に未実行の処理を実行する。これにより、効率的に設置作業を行うことが可能となる。
また、管理装置がスクリプト中で未実行部分を作成・管理することで、設置対象デバイスの状態把握も容易となる。
また、管理装置がスクリプト中で未実行部分を作成・管理することで、設置対象デバイスの状態把握も容易となる。
さらに、2段階設置を実施する際も、設置作業を実行した時点で処理実行の不可を判断して作業を自動分割するため、案件作成者は、今までと同じように1つの作業として登録することが可能である。
〔第2実施形態〕
第1実施形態においては、S1201のエラー解析において、各処理に対応するコマンド部905にerror属性を設けることで、エラー種別の解析を行った。しかし、コマンドレベルでの判断となるため、詳細な設定ができず、精度にかける場合がある。そこで、第2実施形態では、コマンドとエラー要因を用いてエラー内容の解析を行う例について説明する。
第1実施形態においては、S1201のエラー解析において、各処理に対応するコマンド部905にerror属性を設けることで、エラー種別の解析を行った。しかし、コマンドレベルでの判断となるため、詳細な設定ができず、精度にかける場合がある。そこで、第2実施形態では、コマンドとエラー要因を用いてエラー内容の解析を行う例について説明する。
図16は、本実施形態を示す情報処理システムの制御方法を説明する図である。図16の(A)は、第2実施形態におけるMFP105および案件管理サーバーの、コマンドおよびエラー要因を用いてのエラー解析を説明するフローチャートに対応する。エラー解析以外は、第1実施形態と同様のため説明を省略する。
本例は、自動設置作業におけるMFP105の自動設置プログラム450および案件管理サーバー107の案件管理サーバープログラム510の処理例である。なお、S1601およびS1602は、CPU201が自動設置プログラム450を実行することで実現され、S1611乃至S1615は、CPU301が案件管理サーバープログラム510を実行することで実現される。
〔MFP105のエラー解析要求処理〕
S1601で、通信部454は、S1107のNOの直前で実行エラーとなったコマンドおよびエラーの要因を案件管理サーバー107の通信部515に送信し、S1602に遷移する。S1602で、通信部454は、案件管理サーバー107からエラー種別応答があったかを監視する。通信部454は応答があったと判断した場合は、処理を終了、応答がないと判断した場合は、応答監視を続ける。
〔MFP105のエラー解析要求処理〕
S1601で、通信部454は、S1107のNOの直前で実行エラーとなったコマンドおよびエラーの要因を案件管理サーバー107の通信部515に送信し、S1602に遷移する。S1602で、通信部454は、案件管理サーバー107からエラー種別応答があったかを監視する。通信部454は応答があったと判断した場合は、処理を終了、応答がないと判断した場合は、応答監視を続ける。
〔案件管理サーバープログラム510の処理〕
S1611およびS1615は、MFP105からからエラー解析要求を受信した際の案件管理サーバープログラム510の処理である。また、図16の(B)はデータ格納部516に保存されている案件内共通エラーテーブルの例である。案件内共通エラーテーブルは、案件内で共通に発生するエラーを定義および管理しているテーブルであり、コマンド種別、エラー番号、エラー内容で構成され、1レコードが1つのエラー要因を表している。
S1611およびS1615は、MFP105からからエラー解析要求を受信した際の案件管理サーバープログラム510の処理である。また、図16の(B)はデータ格納部516に保存されている案件内共通エラーテーブルの例である。案件内共通エラーテーブルは、案件内で共通に発生するエラーを定義および管理しているテーブルであり、コマンド種別、エラー番号、エラー内容で構成され、1レコードが1つのエラー要因を表している。
例えば、publishLicenseCommand(ライセンス発行)コマンドにおいて、E−001(ライセンス不足)のエラー650が発生した場合、案件内共通エラーと定義している。これは、発行したライセンス数が不足したエラーであり、新たにライセンスを発行しない限り、今後の設置MFP105においても同一のエラーが発生するためである。
また逆に、installApllicationCommand(アプリケーションインストール)コマンドにおいて、E−003(データのキャッシュエラー)があるが、これは案件内共通エラーと定義していないため、テーブル内には存在しない。これは、ダウンロードしたデータが破損しているエラーであり、エラーとなったMFP105のHDD209等のハードウエア要因で発生した可能性が高く、同一のエラーが別MFP105で発生する可能性が低いためである。
また逆に、installApllicationCommand(アプリケーションインストール)コマンドにおいて、E−003(データのキャッシュエラー)があるが、これは案件内共通エラーと定義していないため、テーブル内には存在しない。これは、ダウンロードしたデータが破損しているエラーであり、エラーとなったMFP105のHDD209等のハードウエア要因で発生した可能性が高く、同一のエラーが別MFP105で発生する可能性が低いためである。
〔案件管理サーバー107のエラー内容解析処理〕
S1611で、制御部511は、通信部515を介して、MFP105の自動設置プログラム450からエラー解析要求を受信したかを判断する。ここで、制御部511は、エラー解析要求を受信したと判断した場合、処理をS1612に進め、受信していないと判断した場合、MFP105からの応答を監視する処理を続ける。
S1612で、エラー解析部514は、S1611で受信したエラー情報が、案件内共通エラーDBの中にあるか否かを判断する。
S1611で、制御部511は、通信部515を介して、MFP105の自動設置プログラム450からエラー解析要求を受信したかを判断する。ここで、制御部511は、エラー解析要求を受信したと判断した場合、処理をS1612に進め、受信していないと判断した場合、MFP105からの応答を監視する処理を続ける。
S1612で、エラー解析部514は、S1611で受信したエラー情報が、案件内共通エラーDBの中にあるか否かを判断する。
例えば、S1611で受信したエラー情報が、コマンド="publishLicenseCommand"かつ、エラー番号="E−001"である場合、図16の(B)に示す案件内共通エラーデータベース650に存在すると判断する。このため、制御部511は、案件内共通エラーデータベース650内に存在する場合、処理をS1613に進め、存在しないと判断した場合、処理をS1614に進める。
S1613で、制御部511は、エラー種別は案件内共通とし、処理をS1615に進める。
一方、S1614で、制御部511は、エラー種別は案件内共通ではないとし、処理をS1615に進める。S1615で、制御部511は、通信部515を介してMFP105 の通信部454にエラー種別を送信して、本処理を終了する。
S1613で、制御部511は、エラー種別は案件内共通とし、処理をS1615に進める。
一方、S1614で、制御部511は、エラー種別は案件内共通ではないとし、処理をS1615に進める。S1615で、制御部511は、通信部515を介してMFP105 の通信部454にエラー種別を送信して、本処理を終了する。
本実施形態によれば、エラーコマンドおよびエラー原因を組み合わせて案件内共通エラーか否かを判断する。従って、第1実施形態より精度の高いエラー解析が可能となる。
〔第3実施形態〕
第1実施形態および第2実施形態においては、S1201のエラー解析において、予めコマンドとエラー情報を登録しておき、エラーが発生したら、登録済の情報と比較することで、エラー解析を行った。しかし、コマンドやエラー要因が追加された場合、その都度、エラー解析情報も追加しなければいけない。そこで、第3実施形態では、エラー情報の履歴を管理してエラー内容の解析を行う例について説明する。
第1実施形態および第2実施形態においては、S1201のエラー解析において、予めコマンドとエラー情報を登録しておき、エラーが発生したら、登録済の情報と比較することで、エラー解析を行った。しかし、コマンドやエラー要因が追加された場合、その都度、エラー解析情報も追加しなければいけない。そこで、第3実施形態では、エラー情報の履歴を管理してエラー内容の解析を行う例について説明する。
図17は、本実施形態を示す情報処理システムの制御方法を説明する図である。図17の(A)は、第3実施形態におけるMFP105および案件管理サーバー107の、エラー履歴を用いてのエラー解析を説明するフローチャートに対応する。エラー解析以外は、第1実施形態と同様のため説明を省略する。
本例は、自動設置作業におけるMFP105の自動設置プログラム450および案件管理サーバーの案件管理サーバープログラム510の処理例である。なお、S1701からS1702は、CPU201が自動設置プログラム450を実行することで実現され、S1711からS1716は、CPU301が案件管理サーバープログラム510を実行することで実現される。
〔MFP105のエラー内容解析処理〕
S1701で、処理実行部452は、通信部454を介して案件管理サーバー107に、案件番号、S1107のNOの直前で実行エラーとなったコマンドおよびエラーの要因を送信し、S1702に遷移する。S1702で、処理実行部452は、通信部454を介して案件管理サーバー107からエラー種別応答があったかを監視する。処理実行部452は、案件管理サーバー107から応答があったと判断した場合、処理を終了し、応答がないと判断した場合、案件管理サーバー107から応答を受信する処理を続ける。
S1701で、処理実行部452は、通信部454を介して案件管理サーバー107に、案件番号、S1107のNOの直前で実行エラーとなったコマンドおよびエラーの要因を送信し、S1702に遷移する。S1702で、処理実行部452は、通信部454を介して案件管理サーバー107からエラー種別応答があったかを監視する。処理実行部452は、案件管理サーバー107から応答があったと判断した場合、処理を終了し、応答がないと判断した場合、案件管理サーバー107から応答を受信する処理を続ける。
〔案件管理サーバー107のエラー内容解析処理〕
S1711およびS1716は、自動設置プログラム450からエラー解析要求を受信した際の案件管理サーバープログラム510の処理である。
また、図17の(B)はデータ格納部516に保存されているエラー履歴テーブルの例である。エラー履歴テーブルは、設置作業中に発生したエラー履歴750,751を格納および管理しているテーブルであり、案件ID、コマンド種別、エラー番号で構成され、1レコードが1つのエラー履歴を表している。例えば、エラー履歴750は、案件ID"A001"の設置中に、publishLicenseCommand(ライセンス発行)コマンドにおいて、E−001(ライセンス不足)のエラーが発生したことを意味している。なお、E−001(ライセンス不足)のエラーは、案件内共通エラーデータベース650で管理している。
S1711およびS1716は、自動設置プログラム450からエラー解析要求を受信した際の案件管理サーバープログラム510の処理である。
また、図17の(B)はデータ格納部516に保存されているエラー履歴テーブルの例である。エラー履歴テーブルは、設置作業中に発生したエラー履歴750,751を格納および管理しているテーブルであり、案件ID、コマンド種別、エラー番号で構成され、1レコードが1つのエラー履歴を表している。例えば、エラー履歴750は、案件ID"A001"の設置中に、publishLicenseCommand(ライセンス発行)コマンドにおいて、E−001(ライセンス不足)のエラーが発生したことを意味している。なお、E−001(ライセンス不足)のエラーは、案件内共通エラーデータベース650で管理している。
S1711で、制御部511は通信部515を介してMFP105からエラー解析要求を受信したかを監視する。制御部511はエラー解析要求を受信したと判断した場合、処理をS1712に進め、受信していないと判断した場合、MFP105からの要求を監視する処理を続ける。
S1712で、エラー解析部514は、S1711で受信したエラー情報が、エラー履歴テーブル752の中にあるか否かを判断する。例えば、S1711で受信データが、案件番号"A001"、エラーコマンド"publishLicense"(ライセンス発行)かつ、エラー番号"E−001"である場合、エラー履歴テーブルに存在すると判断する。
ここで、エラー解析部514は、エラー履歴テーブルに存在すると判断した場合、処理をS1713に進め、存在しないと判断した場合、処理をS1715に進める。S1713で、制御部511は、エラー種別は案件内共通と判断し、処理をS1714に進める。
S1712で、エラー解析部514は、S1711で受信したエラー情報が、エラー履歴テーブル752の中にあるか否かを判断する。例えば、S1711で受信データが、案件番号"A001"、エラーコマンド"publishLicense"(ライセンス発行)かつ、エラー番号"E−001"である場合、エラー履歴テーブルに存在すると判断する。
ここで、エラー解析部514は、エラー履歴テーブルに存在すると判断した場合、処理をS1713に進め、存在しないと判断した場合、処理をS1715に進める。S1713で、制御部511は、エラー種別は案件内共通と判断し、処理をS1714に進める。
S1715で、制御部511は、エラー種別は案件内共通ではないと判断し、処理をS1716に進める。S1716で、案件データ管理部513は、S1711で受信したエラー情報と同様のエラーが発生した場合、エラー種別は、案件内共通と判断させるため、S1711で受信したエラー情報をエラー履歴テーブル752に蓄積し、処理をS1714に進める。例えば、案件ID"A003"で、"downloadFirmwareCommand"コマンドの、エラー番号"E−003"が発生した場合、エラー履歴751のレコードを格納する。以降、エラー履歴751で格納したエラーと同一の案件番号で同一のエラーが発生した場合、S1712において、エラー種別は案件内共通と判断する。
S1714で、制御部511は、通信部515を介して、MFP105に、S1713またはS1715で判断したエラー種別を送信し、本処理を終了する。
S1714で、制御部511は、通信部515を介して、MFP105に、S1713またはS1715で判断したエラー種別を送信し、本処理を終了する。
本実施形態によれば、案件IDおよびエラー情報の履歴を蓄積し、エラー発生時にその蓄積したエラー履歴データと比較することで案件内共通エラーか否かを判断する。従って、エラー履歴情報が独立しているため、コマンドやエラー要因の新規追加があっても、エラー解析部514は変更することなく動作することが可能となる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えばASIC)によっても実現可能である。
105 MFP
106 クライアントPC
107 案件管理サーバー
108 各種データ管理サーバー
106 クライアントPC
107 案件管理サーバー
108 各種データ管理サーバー
Claims (18)
- 管理装置と通信する情報処理装置であって、
前記管理装置から設置情報が記述されたスクリプトを取得する取得手段と、
前記管理装置から取得したスクリプトを解析してコマンド処理を実行する実行手段と、
前記実行手段が開始したコマンド処理が特定のコマンドでエラーとなる場合で、かつ、該エラーとなった特定のコマンドの属性が他の情報処理装置でも共通する属性である場合、エラーとなった特定のコマンドの情報と、取得した前記スクリプトに対応する分割スクリプトを作成する要求とを前記管理装置に送信する送信手段と、を備え、
前記取得手段は、前記管理装置が作成した分割スクリプトを取得し、前記実行手段は、該取得した分割スクリプトを実行することを特徴とする情報処理装置。 - 前記抽出手段は、エラーとなったコマンドの属性が他の情報処理装置でも共通して発生する共通エラーと、前記情報処理装置で発生する個別エラーとを識別することを特徴とする請求項1に記載の情報処理装置。
- 前記スクリプトに記述される複数のコマンドは、実行順序に依存する従属情報が記述されていることを特徴とする請求項1に記載の情報処理装置。
- 前記分割スクリプトは、1次スクリプトと、2次スクリプトからなることを特徴とする請求項1に記載の情報処理装置。
- 前記取得手段が前記1次スクリプトを取得した場合、さらに、該1次スクリプトに対応する2次スクリプトを前記管理装置から取得することを特徴とする請求項1に記載の情報処理装置。
- 前記実行手段は、前記管理装置から最初に取得するスクリプトが分割スクリプトである場合、該分割スクリプトに対応づけられた1次スクリプトを実行することを特徴とする請求項4または5に記載の情報処理装置。
- 前記1次スクリプトは、複数の情報処理装置で共通して設定する設置情報であることを特徴とする請求項5〜6のいずれか1項に記載の情報処理装置。
- 前記2次スクリプトは、それぞれの情報処理装置で個別に設定する設置情報であることを特徴とする請求項5〜6のいずれか1項に記載の情報処理装置。
- 情報処理装置と通信する管理装置であって、
前記情報処理装置に設定する設置情報が記述されたスクリプトを管理する管理手段と、
前記情報処理装置から受信する前記スクリプトに対する分割スクリプトの取得要求に従い、前記情報処理装置に送信したオリジナルのスクリプトと、前記取得要求に含まれるコマンドの情報とから前記オリジナルのスクリプトに記述されたコマンドの依存関係を抽出して、前記オリジナルのスクリプトに対する分割スクリプトを生成する生成手段と、
前記生成手段が生成した分割スクリプトを要求元の情報処理装置に応答する応答手段と、
を備えることを特徴とする管理装置。 - 前記分割スクリプトは、1次スクリプトと、2次スクリプトからなることを特徴とする請求項9に記載の管理装置。
- 前記管理手段は、前記情報処理装置から分割スクリプトの生成の要求を受信した場合、前記スクリプトに分割スクリプトの情報を付加して管理することを特徴とする請求項9に記載の管理装置。
- 前記1次スクリプトは、複数の情報処理装置で共通して設定する設置情報であることを特徴とする請求項10項に記載の管理装置。
- 前記2次スクリプトは、複数の情報処理装置で個別に設定する設置情報であることを特徴とする請求項10項に記載の管理装置。
- 管理装置と情報処理装置とが通信する自動設置システムであって、
前記情報処理装置は、
前記管理装置から設置情報が記述されたスクリプトを取得する取得手段と、
前記管理装置から取得したスクリプトを解析してコマンド処理を実行する実行手段と、
前記実行手段が開始したコマンド処理が特定のコマンドでエラーとなる場合で、かつ、該エラーとなった特定のコマンドの属性が他の情報処理装置でも共通する属性である場合、エラーとなった特定のコマンドの情報と、取得した前記スクリプトに対応する分割スクリプトを作成する要求とを前記管理装置に送信する送信手段と、を備え、
前記取得手段は、前記管理装置が作成した分割スクリプトを取得し、前記実行手段は、該取得した分割スクリプトを実行し、
前記管理装置は、
前記情報処理装置に設定する設置情報が記述されたスクリプトを管理する管理手段と、
前記情報処理装置から受信する前記スクリプトに対する分割スクリプトの取得要求に従い、前記情報処理装置に送信したオリジナルのスクリプトと、前記取得要求に含まれるコマンドの情報とから前記オリジナルのスクリプトに記述されたコマンドの依存関係を抽出して、前記オリジナルのスクリプトに対する分割スクリプトを生成する生成手段と、
前記生成手段が生成した分割スクリプトを要求元の情報処理装置に応答する応答手段と、
を備えることを特徴とする自動設置システム。 - 管理装置と通信する情報処理装置の制御方法であって、
前記管理装置から設置情報が記述されたスクリプトを取得する取得工程と、
前記管理装置から取得したスクリプトを解析してコマンド処理を実行する実行工程と、
前記実行工程が開始したコマンド処理が特定のコマンドでエラーとなる場合で、かつ、該エラーとなった特定のコマンドの属性が他の情報処理装置でも共通する属性である場合、エラーとなった特定のコマンドの情報と、取得した前記スクリプトに対応する分割スクリプトを作成する要求とを前記管理装置に送信する送信工程と、を備え、
前記取得工程は、前記管理装置が作成した分割スクリプトを取得し、前記実行工程は、該取得した分割スクリプトを実行することを特徴とする情報処理装置の制御方法。 - 情報処理装置と通信する管理装置の制御方法であって、
前記情報処理装置に設定する設置情報が記述されたスクリプトを記憶手段に記憶して管理する管理工程と、
前記情報処理装置から受信する前記スクリプトに対する分割スクリプトの取得要求に従い、前記情報処理装置に送信したオリジナルのスクリプトと、前記取得要求に含まれるコマンドの情報とから前記オリジナルのスクリプトに記述されたコマンドの依存関係を抽出して、前記オリジナルのスクリプトに対する分割スクリプトを生成する生成工程と、
前記生成工程が生成した分割スクリプトを要求元の情報処理装置に応答する応答工程と、
を備えることを特徴とする管理装置の制御方法。 - 請求項15に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
- 請求項16に記載の管理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017013336A JP2018120541A (ja) | 2017-01-27 | 2017-01-27 | 情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017013336A JP2018120541A (ja) | 2017-01-27 | 2017-01-27 | 情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018120541A true JP2018120541A (ja) | 2018-08-02 |
Family
ID=63043952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017013336A Pending JP2018120541A (ja) | 2017-01-27 | 2017-01-27 | 情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018120541A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020003620A1 (ja) | 2018-06-26 | 2020-01-02 | アルプスアルパイン株式会社 | エンジンスタート装置及びその製造方法 |
JP2020149591A (ja) * | 2019-03-15 | 2020-09-17 | キヤノン株式会社 | 情報処理システム、およびその制御方法 |
-
2017
- 2017-01-27 JP JP2017013336A patent/JP2018120541A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020003620A1 (ja) | 2018-06-26 | 2020-01-02 | アルプスアルパイン株式会社 | エンジンスタート装置及びその製造方法 |
JP2020149591A (ja) * | 2019-03-15 | 2020-09-17 | キヤノン株式会社 | 情報処理システム、およびその制御方法 |
JP7336220B2 (ja) | 2019-03-15 | 2023-08-31 | キヤノン株式会社 | 情報処理システム、およびその制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6355370B2 (ja) | 自動設置システム及び方法、情報処理装置、画像形成装置、プログラム | |
US7853946B2 (en) | Information processing apparatus, information processing method, and control program | |
JP4371673B2 (ja) | プログラムインストール方法およびサーバ装置 | |
US10015326B2 (en) | Image forming apparatus, automatic installation method for efficiently installing an image forming apparatus, and storage medium | |
JP2015046075A (ja) | 情報処理装置、その制御方法、及びコンピュータプログラム | |
JP7000013B2 (ja) | 情報処理装置、該装置の制御方法、該方法を実行する制御プログラム | |
JP7098427B2 (ja) | 情報処理装置、情報処理装置の制御方法及びプログラム | |
JP2017004175A (ja) | 管理システムおよびその制御方法、情報処理装置、並びにプログラム | |
JP2017156953A (ja) | 自動設置システム、管理装置、情報処理装置、管理装置の制御方法、情報処理装置の制御方法、及びプログラム | |
JP2016064591A (ja) | 情報処理装置、その制御方法、プログラム。 | |
JP2016148947A (ja) | 情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム | |
JP2015205499A (ja) | 画像処理装置、画像処理装置の制御方法およびプログラム | |
JP2018120541A (ja) | 情報処理装置、管理装置、情報処理装置の制御方法、管理装置の制御方法、及びプログラム、自動設置システム | |
JP2017049924A (ja) | デバイス設置システム、管理装置、管理装置の制御方法、及びプログラム | |
JP2021194856A (ja) | 画像形成装置及びその制御方法、並びにプログラム | |
JP2017076857A (ja) | 管理装置、情報処理装置、管理装置の制御方法、情報処理装置の制御方法、及びプログラム | |
JP2017111531A (ja) | 情報処理システム、情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP7286325B2 (ja) | 画像形成装置および制御方法 | |
JP2018081607A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP2019008673A (ja) | 情報処理装置およびドライバーインストール方法 | |
JP2017049923A (ja) | デバイス設置システム、管理装置、管理装置の制御方法、及びプログラム | |
JP2018116361A (ja) | 情報処理装置、管理装置、情報処理装置の制御方法、及びプログラム、情報処理システム | |
JP2016148949A (ja) | 管理装置、情報処理装置、管理装置の制御方法、情報処理装置の制御方法、及びプログラム | |
JP2016091521A (ja) | 案件管理装置、案件管理システムおよび案件管理方法 | |
JP2020047139A (ja) | 組み込みシステムのファームウエアバージョン変更方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20180306 |