以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図1は、本発明の修理支援サーバの一実施形態である顧客管理サーバ300と、在庫管理サーバ400と、多機能周辺装置(以下、「MFP」と称す)100と、パーソナルコンピュータ(以下、「PC」と称す)200とを含む修理支援システム10の電気的構成を示すブロック図である。
MFP100は、印刷機能、スキャナ機能、FAX機能、及び、コピー機能を有する装置であり、PC200に接続されて利用される。MFP100は、特定の部品の劣化や、特定の機能の低下を定期的に検査(以下、「定期検査」称す)する定期検査機能を有し、その検査結果は検査の度に、PC200を介して顧客管理サーバ300へ送信される。
顧客管理サーバ300では、MFP100の検査結果が受信されると、その検査結果に基づいて、MFP100において異常が発生する時期(以下、「推定異常発生年月日TY」と称す)が算出され、その推定異常発生年月日TYまでの残り期間が短い場合に、その異常の修理に必要な部品の手配が在庫管理サーバに対して指示される。
修理支援システム10によれば、MFP100において異常が発生するおそれが高い場合に、その異常の修理に必要な部品を予め手配できるので、ユーザからMFP100の修理依頼を受ける前に、その修理部品を手配できる。よって、修理依頼を受けてから、修理作業に用いる部品の準備が整うまでの期間を短縮できるので、修理作業を早く開始でき、修理期間を短くできる。
以下、詳細を説明する。まず、MFP100について説明する。MFP100は、CPU101、フラッシュメモリ102、RAM103、プリンタ104、スキャナ105、入力部106、液晶表示装置(以下、「LCD」と称す)107、USBインターフェイス(以下、「USBI/F」と称す)108、LANインターフェイス(以下、「LANI/F」)109を主に有し、これらはバスライン110を介して互いに接続されている。
CPU101は、フラッシュメモリ102に記憶される固定値やプログラムに従って、バスライン110により接続された各部を制御する。フラッシュメモリ102は、不揮発性のメモリであって、MFP100の動作を制御するプログラムなどが格納される。フラッシュメモリ102には、プログラムエリア102a、定期検査フラグ102b、検査結果メモリ102cが設けられる。プログラムエリア102aには、後述する図7(a)に示す製造時検査処理、図7(b)に示す検査実行処理、図7(c)に示すメイン処理を実行する各プログラムが格納される。
定期検査フラグ102bは、MFP100において定期検査を実行するか否かを示すフラグである。定期検査フラグ102bがオンの場合は、直近の定期検査の実行日から所定日数(例えば、10日間)が経過する度に、定期検査が実行される。尚、定期検査フラグ102bがオフからオンに変更された場合には、直ぐに定期検査が実行される。一方、定期検査フラグ102bがオフの場合は、定期検査が実行されない。この定期検査フラグ102bは、PC200からのユーザ操作によりオンオフが切り替えられる。詳細は、図8を参照して後述する。
検査結果メモリ102cは、生産工程で行われる出荷検査の検査結果を示す検査結果情報や、ユーザのもとで行われる定期検査の検査結果を示す検査結果情報を記憶するメモリである。検査結果情報は、MFP100により生成され、検査結果メモリ102cに格納される。ここで、図2を参照して、検査結果情報について説明する。
図2(a)は、出荷検査の検査結果情報の内容一例を示す模式図であり、図2(b)は、定期検査の検査結果情報の内容の一例を示す模式図である。出荷検査の検査結果情報、及び、定期検査の検査結果情報は共に、製品シリアル番号と、検査年月日時間と、製造時識別フラグと、特性値IDと、検査結果値とにより構成される。尚、検査内容については、説明の便宜上示している。
製品シリアル番号は、MFP100を個別に特定するための識別番号であり、MFP100毎に異なる。検査年月日時間は、出荷検査や定期検査が行われた日時である。製造時識別フラグは、検査結果が、出荷検査の検査結果であるか、定期検査の検査結果であるかを示すフラグである。製造時識別フラグがオンの場合は、検査結果が出荷検査の検査結果であることを示し、製造時識別フラグがオフの場合は、検査結果が定期検査の検査結果であることを示す。
特性値IDは、検査項目を示すIDであり、検査項目毎に異なる。この特性値IDは、例えば、英数字の組合せにより構成され、『プリンタ104のキャリッジ移動速度』を測定する検査項目には、「E11021」という特性値IDが割り当てられている。検査結果値は、特性値IDに対応する検査項目の検査結果を示す値であり、その値は、検査項目に関連する部品の故障や、部品の劣化等に伴って上昇したり、下降したり変化する。尚、検査結果値が故障や劣化等に伴ってどのように変化するかは、検査項目に応じて異なる。
例えば、特性値ID「S21203」に対応する検査項目では、『スキャナ105のCIS(Contact Image Sensor)の下限出力値』が検査結果値として測定される。図2(a),(b)に示すように、例えば、出荷検査では、その検査結果値が「4500」と測定されているが、その後に行われた定期検査では、その検査結果値が「1989」と測定されている。この例では、値が急激に変化しているため、不具合が発生していると推測される。
本実施形態では、MFP100の生産工程において出荷検査が行われる場合、製造時検査処理(図8(a)参照)の中で、各種検査が実行される。そして、それらが終了すると、MFP100の製品シリアル番号と、出荷検査が行われた検査年月日時間と、製造時識別フラグと、各種の検査項目に対応する特定値IDおよび検査結果値とを含む検査結果情報が検査結果メモリ102cに記憶され、そして、製造時識別フラグがオンに設定される。
また、出荷検査が行われる場合、MFP100は、LANI/F109を介して、インターネット500と接続されており、出荷検査が終了すると、出荷検査の検査結果情報は、インターネット500を介して、MFP100から顧客管理サーバ300へ直接送信される。
一方、ユーザのもとで定期検査が行われる場合は、メイン処理(図7(c))の中で、各種検査が行われ、それらが終了すると、出荷検査と同様に、検査結果情報が検査結果メモリ102cに記憶されるが、その後、製造時識別フラグはオフに設定される。また、ユーザのもとでは、MFP100は、USBI/F108を介して、PC200と接続されており、定期検査が終了すると、定期検査の検査結果情報は、PC200を介して、MFP100から顧客管理サーバ300へ送信される。
ここで、図1の説明に戻る。RAM103は、CPU101の処理に必要な情報を一時的に記憶する。プリンタ104は、インクジェット方式で画像の印刷を行う装置であり、スキャナ105は、CISを搭載した読取ユニットで画像を読み取る装置である。入力部106は、MFP100に指示や情報を入力するためのタッチパネルで構成され、LCD107の表示面に重ねて配置される。
USBI/F108は、USBケーブル(図示しない)介して接続される他の装置と通信を行うための装置であり、周知の装置で構成される。本実施形態では、PC200のUSBI/F207と通信可能に接続されている。LANI/F109は、インターネット500を介して他の装置と通信を行うための装置であり、周知の装置で構成される。LANI/F109と、インターネット500とが、LANケーブル(図示しない)等により電気的に接続されると、LANI/F109は、インターネット500を介して他の装置と通信可能な状態になる。
次に、PC200について説明する。PC200は、CPU201、ROM202、RAM203、ハードディスクドライブ(以下、「HDD」と称す)204、入力装置205、LCD206、USBI/F207、LANI/F208とを主に有し、これらはバスライン209を介して互いに接続されている。
CPU201は、ROM202やHDD204に記憶される固定値やプログラムに従って、バスライン209により接続された各部を制御する。ROM202は、PC200の動作を制御するためのプログラムなどが格納されたメモリである。RAM203は、CPU201の処理に必要なデータなどを一時的に記憶するための読み書き可能なメモリである。
HDD204は、書換え可能な不揮発性の記憶装置であり、ドライバプログラム204aが格納される。ドライバプログラム204aは、PC200からMFP100を制御するための常駐プログラムである。PC200は、ドライバプログラム204aを介して、MFP100の設定を変更でき、また、印刷機能、スキャナ機能、FAX機能、コピー機能などを制御できる。
尚、PC200からMFP100を利用するためには、ユーザが事前に、MFP100のドライバプログラム204aをHDD204にインストールする必要があり、そのインストールが行われる場合には、後述するユーザ情報入力画面(図8(b)参照)が表示される。
詳細については後述するが、この画面では、例えば、MFP100の機種名、製品シリアル番号、ユーザ名、ユーザの住所、定期検査の実行の有無、印刷用途、印刷頻度など、MFP100を所有するユーザに関する各種情報(以下、「ユーザ情報」と称する)の入力がユーザに求められる。各種情報の入力が終了すると、PC200において後述する顧客情報が生成され、顧客情報は、インターネット500を介して、PC200から顧客管理サーバ300へ直接送信される。
また、ユーザ情報入力画面において、定期検査を実行すると選択された場合には、PC200からMFP100に対して、定期検査フラグ102bをオンに設定するよう指示が通知される。MFP100において、定期検査フラグ102bがオンに設定されると、定期検査が実行される度に、その定期検査の検査結果情報が、MFP100からPC200へ送信される。PC200は、定期検査の検査結果情報を受信した場合、その情報をそのままインターネット500を介して、顧客管理サーバ300へ転送する。
入力装置205は、PC200に指示や情報を入力するためのキーボードや、マウスで構成される。LCD206、USBI/F207、LANI/F208は、上述したLCD107、USBI/F108、LANI/F109と、それぞれ同様に構成される。
次に、顧客管理サーバ300について説明する。顧客管理サーバ300は、CPU301、ROM302、RAM303、HDD304、LANI/F305とを主に有し、これらはバスライン306を介して互いに接続されている。LANI/F305は、上述したLANI/F109と同様に構成される。尚、入力装置やLCDについては図示を省略している。
CPU301は、ROM302やHDD304に記憶される固定値やプログラムに従って、バスライン306により接続された各部を制御する。ROM302は、顧客管理サーバ300の動作を制御するためのプログラムなどが格納されたメモリである。RAM303は、CPU301の処理に必要なデータなどを一時的に記憶するための読み書き可能なメモリである。
HDD304は、書換え可能な不揮発性の記憶装置である。HDD304には、プログラムエリア304aと、顧客情報テーブル304bと、修理担当特定テーブル304cと、製造時検査結果テーブル304dと、最新検査結果テーブル304eと、異常警告値テーブル304fと、交換部品テーブル304gとが設けられる。プログラムエリア304aには、後述する図9(a)に示す顧客情報受信処理、図9(b)に示す検査結果情報受信処理、図10に示す部品手配判定処理を実行する各プログラムが格納される。
顧客情報テーブル304bは、顧客情報を蓄積するテーブルである。顧客情報は、PC200において生成され、PC200から顧客管理サーバ300へ直接送信される。顧客管理サーバ300では、顧客情報が受信された場合に、その顧客情報が顧客情報テーブル304bに追加される。顧客情報テーブル304bは、PC200との通信に基づいて更新されるものであり、MFP100および在庫管理サーバ400とは関係なく更新される。ここで、図3(a)を参照して、顧客情報テーブル304bについて説明する。
図3(a)は、顧客情報テーブル304bの内容の一例を示す模式図である。顧客情報テーブル304bには、顧客情報が複数蓄積される。一の顧客情報は、製品シリアル番号と、ユーザ名と、ユーザ住所と、印刷用途と、印刷頻度とにより構成される。製品シリアル番号については、上述したので説明を省略する。ユーザ名は、製品シリアル番号に対応するMFP100を所有するユーザの氏名である。ユーザ住所は、そのユーザの住所であり、言い換えれば、製品シリアル番号に対応するMFP100の設置場所を意味する。
印刷用途は、ユーザの主な印刷用途である。例えば、選択肢として、『写真印刷』や、『文書印刷』などが設けられており、その中から何れか一つが選択される。印刷頻度は、MFP100で印刷を行う頻度である。例えば、選択肢として、『高』、『普通』、『低』、『殆ど利用しない』などが設けられており、その中から何れか一つが選択される。尚、製品シリアル番号、ユーザ名、ユーザ住所のそれぞれは、PC200においてユーザにより入力され、印刷用途、印刷頻度のそれぞれは、PC200においてユーザにより選択される。
ここで、図1の説明に戻る。修理担当特定テーブル304cは、MFP100の修理を担当する複数のサービスセンターの中から、ユーザのMFP100の修理を担当するセンターを特定するためのテーブルである。修理担当特定テーブル304cは、顧客管理サーバ300の管理者等により予め作成されたり、更新される。ここで、図3(b)を参照して、修理担当特定テーブル304cについて説明する。
図3(b)は、修理担当特定テーブル304cの内容の一例を示す模式図である。修理担当特定テーブル304cは、修理担当地区と、修理担当サービスセンターとにより構成される。
修理担当地区は、例えば、都道府県や区や市等の単位で国内を複数のエリアに区分けした場合の各エリアを表す住所である。修理担当サービスセンターは、修理担当地区に設置されたMFP100の修理を担当すべきサービスセンターである。
ここで、図1の説明に戻る。製造時検査結果テーブル304dは、生産工程において各MFP100から出力される出荷検査の検査結果情報を蓄積するテーブルである。出荷検査の検査結果情報は、MFP100において生成され、MFP100から顧客管理サーバ300へ直接送信される。顧客管理サーバ300では、出荷検査の検査結果情報が受信された場合に、その検査結果情報が製造時検査結果テーブル304dに追加される。
製造時検査結果テーブル304dは、MFP100との通信に基づいて更新されるものであり、PC200および在庫管理サーバ400とは関係なく更新される。ここで、図3(a)を参照して、製造時検査結果テーブル304dについて説明する。
図4(a)は、製造時検査結果テーブル304dの内容の一例を示す模式図である。製造時検査結果テーブル304dは、特性値IDと、検査結果値と、製品シリアル番号と、検査年月日時間とにより構成される。ここで、特性値IDおよび検査結果値は、製品シリアル番号に対応するMFP100の出荷検査でなされた検査項目およびその検査結果を示し、検査年月日時間は、その出荷検査が行われた日時を示す。尚、特性値ID、検査結果値、製品シリアル番号、検査年月日時間については、上述したので説明を省略する。
ここで、図1の説明に戻る。最新検査結果テーブル304eは、ユーザ設定に応じてユーザの所有するMFP100から定期的に出力される定期検査の検査結果情報のうち、直近のものを蓄積するメモリである。定期検査の検査結果情報は、MFP100において生成され、PC200を介して、MFP100から顧客管理サーバ300へ送信される。
顧客管理サーバ300では、定期検査の検査結果情報が受信された場合に、その定期検査が行われたMFP100の定期検査の検査結果情報が既に記憶されているかが確認され、既に記憶されている場合には、既に記憶されている定期検査の検査結果情報に代えて、今回受信した検査結果情報がテーブルに記憶される。一方、記憶されていない場合には、最新検査結果テーブル304eに追加される。
最新検査結果テーブル304eは、PC200との通信に基づいて更新されるものであり、MFP100および在庫管理サーバ400とは関係なく更新される。ここで、図4(b)を参照して、最新検査結果テーブル304eについて説明する。
図4(b)は、最新検査結果テーブル304eの内容の一例を示す模式図である。最新検査結果テーブル304eは、手配済フラグと、特性値IDと、検査結果値と、製品シリアル番号と、検査年月日時間とにより構成される。ここで、特性値IDおよび検査結果値は、製品シリアル番号に対応するMFP100の定期検査でなされた検査項目およびその検査結果を示し、検査年月日時間は、その定期検査が行われた日時を示す。尚、特性値ID、検査結果値、製品シリアル番号、検査年月日時間については、上述したので説明を省略する。
手配済フラグは、特性値IDに対応する検査項目について、推定異常発生年月日TYまでの残り期間が短いと判定された場合に、その異常の修理に必要な部品の手配を在庫管理サーバ400に対して指示したか否かを示すフラグである。
手配済フラグがオンの場合は、推定異常発生年月日TYに発生すると推定される異常の修理に必要な部品であって、特性値IDに対応する検査項目に関連する部品の手配を、在庫管理サーバ400に対して指示したことを示す。一方、手配済フラグがオフの場合は、特性値IDに対応する検査項目に関連する部品の手配を在庫管理サーバ400に対して指示していないことを示す。
特性値IDに対応する検査項目について、推定異常発生年月日TYまでの残り期間が短いと判定された場合に、手配済フラグがオフであれば、その特性値IDに対応する手配済フラグがオンに設定され、特性値IDに対応する検査項目に関連する部品の手配が在庫管理サーバ400に対して指示される。一方、推定異常発生年月日TYまでの残り期間が短いと判定された場合に、手配済フラグがオンであれば、既に、部品の手配がなされているので何もしない。尚、手配済フラグはオンに設定されると、その後、その手配済フラグに対応する製品シリアル番号のMFP100の修理が完了するまでオンに維持される。そして、例えば、修理担当者からその修理完了の通知を受けた場合に、管理者による手作業入力などによりオフに設定される。
ここで、図1の説明に戻る。異常警告値テーブル304fは、特性値IDに対応する検査結果値が異常値であることを示す閾値である異常警告値Kを記憶するテーブルである。異常警告値Kは、特性値ID単位、即ち、検査項目単位で予め設定される。尚、特性値IDに対して既に設定されている異常警告値Kが更新される場合や、新たに異常警告値Kが追加される場合には、管理者等により、他の装置100,200,400とは関係なく更新される。異常警告値テーブル304fは、顧客管理サーバ300において、特性値IDに対応する推定異常発生年月日TYを算出するために用いられる。ここで、図5(a)を参照して、異常警告値テーブル304fについて説明する。
図5(a)は、異常警告値テーブル304fの内容の一例を示す模式図である。異常警告値テーブル304fは、特性値IDと、異常警告値Kとにより構成される。尚、特性値IDについては、上述したので説明を省略する。異常警告値Kは、特性値IDに対応する検査結果値が、故障や劣化等に伴ってどのように変化するかや、どのような範囲で変化するかなどの特性に応じて、上限値、下限値、値の範囲などが予め設定される。
例えば、特性値IDに対応する検査結果値が、部品の故障や劣化等に伴って上昇する場合には、上限値のみ設定され、故障や劣化等に伴って下降する場合には、下限値のみ設定される。また、故障や劣化等に伴って上昇または下降するなど変動する場合には、上限値および下限値(即ち、範囲)が設定される。この異常警告値Kは、特性値IDに対応する検査結果値から、推定異常発生年月日TYを算出するために用いられる。ここで、図5(b)を参照して、推定異常発生年月日TYの算出方法について説明する。尚、推定異常発生年月日TYの算出は、顧客管理サーバ300において行われる。
図5(b)は、推定異常発生年月日TYの算出方法の概略を説明するための概略図であり、縦軸に一の特性値IDについての検査結果値を示し、横軸に年月日を示している。本実施形態では、MFP100において生成された定期検査の検査結果情報が、PC200を介して、MFP100から顧客管理サーバ300に送信される。顧客管理サーバ300では、定期検査の検査結果情報が受信された場合に、今回受信した定期検査の検査結果情報と、その定期検査が行われたMFP100と同一のMFP100の出荷検査の検査結果情報と、異常警告値テーブル304fとを用いて、特性値ID(即ち、検査項目)ごとに、推定異常発生年月日TYを算出する。
具体的には、まず、複数の特性値IDの中から、推定異常発生年月日TYを算出する特性値IDを一つ選択する。そして、出荷検査の検査結果情報の中から、選択された特性値IDに対応する検査結果値VAを抽出し、定期検査の検査結果情報の中から、選択された特性値IDに対応する検査結果値VBを抽出する。尚、説明の便宜上、出荷検査が行われた検査年月日時間のことを製造年月日TAと称し、今回の定期検査が行われた検査年月日時間のことを最新検査年月日TBと称する。
そして、検査結果値VBおよび検査結果値VAの差分値と、最新検査年月日TBおよび製造年月日TAの差分値とに基づいて、検査結果値の推移を表す直線を算出し、その直線と、選択された特性値IDに対応する異常警告値Kとが交差する位置を特定する。そして、その特定した位置における年月日を推定異常発生年月日TYとして算出し、最新検査年月日TBから推定異常発生年月日TYまでの期間を待機期間Nとして算出する。尚、その他の特定値IDについても同様に、特性値ID単位で、推定異常発生年月日TYと、待機期間Nとを算出する。
このように、本実施形態では、最新の定期検査の検査結果情報を用いて、推定異常発生年月日TYを算出するので、推定異常発生年月日TYを精度良く算出できる。また、同一のMFP100で生成された検査結果情報(出荷検査時および定期検査時に生成される情報)を用いて算出するので、MFP100の個体差により生じる誤差を抑制できる。従って、推定異常発生年月日TYの算出精度を向上させることができる。
ここで、図1の説明に戻る。交換部品テーブル304gは、MFP100の異常を解消する修理で交換すべき部品を、特性値IDごとに分類したテーブルである。交換部品テーブル304gは、MFP100の設計者等により予め作成される。尚、交換部品テーブル304gにおいて、特性値IDに対応する部品が変更される場合には、管理者等により、他の装置100,200,400とは関係なく更新される。交換部品テーブル304gは、在庫管理サーバ400に手配させる部品を特定するために、顧客管理サーバ300において用いられる。ここで、図6(a)を参照して、交換部品テーブル304gについて説明する。
図6(a)は、交換部品テーブル304gの内容の一例を示す模式図である。交換部品テーブル304gは、特性値IDと、交換部品名と、部品IDと、入手困難ランクと、修理フロー番号とにより構成される。尚、特性値IDについては、上述したので説明を省略する。交換部品名は、特性値IDに対応する検査項目で異常が発生した場合に、その異常を解消するために交換が必要な部品群のそれぞれの名称である。ここで、部品群とは、部品単体や、ユニット化された部品や、それらの組合せを意味する。部品IDは、交換部品名に対応する各部品の識別番号である。尚、部品には、その種類毎に、異なる識別番号が予め設定される。
入手困難ランクは、特性値IDに対応する部品群を、入手困難から入手容易までの3段階に分類した分類結果である。例えば、入手困難ランクとして、「A(入手困難)」、「B(普通)」、「C(入手容易)」の3つランクが設けられており、部品納期や組立納期などに応じて、3つのランクの何れか一つが部品群に対して予め設定される。修理フロー番号は、特性値IDに対応する検査項目の異常を解消する修理作業において、修理担当者が用いる手順書(以下、「修理フロー」と称す)を示す識別番号である。尚、修理フローには、その修理フロー毎に、異なる修理フロー番号が予め設定される。
詳細については後述するが、この交換部品テーブル304gと、上述した製造時検査結果テーブル304dと、最新検査結果テーブル304eと、異常警告値テーブル304fとが用いられて、推定異常発生年月日TYが算出される。そして、その推定異常発生年月日TYまでの残り期間が短いと判定されると、顧客管理サーバ300では、その異常の修理に必要な部品の手配を在庫管理サーバ400に指示するために、部品手配情報が生成され、その部品手配情報が在庫管理サーバ400に送信される。そして、在庫管理サーバ400では、その部品手配情報に基づいて部品の手配が行われる。
ここで、図6(b)を参照して、部品手配情報について説明する。図6(b)は、部品手配情報の内容の一例を示す模式図である。部品手配情報は、製品シリアル番号と、ユーザ名と、ユーザ住所と、交換部品名と、部品IDと、修理フロー番号と、修理担当サービスセンターと、推定異常発生年月日TYとにより構成される。尚、それぞれの構成については、上述したので説明を省略する。
ここで、図1の説明に戻る。次に、在庫管理サーバ400について説明する。在庫管理サーバ400は、CPU401、ROM402、RAM403、HDD404、LANI/F405とを主に有し、これらはバスライン406を介して互いに接続されている。LANI/F405は、上述したLANI/F109と同様に構成される。尚、入力装置やLCDについては図示を省略している。
CPU401は、ROM402やHDD404に記憶される固定値やプログラムに従って、バスライン406により接続された各部を制御する。ROM402は、在庫管理サーバ400の動作を制御するためのプログラムなどが格納されたメモリである。RAM403は、CPU401の処理に必要なデータなどを一時的に記憶するための読み書き可能なメモリである。
HDD404は、書換え可能な不揮発性の記憶装置である。HDD404には、プログラムエリア404aと、在庫情報メモリ404bと、修理フロー蓄積メモリ404cとが設けられる。プログラムエリア404aには、後述する図11に示す部品手配情報受信処理を実行するプログラムが格納される。
在庫情報メモリ404bは、MFP100を構成する各部品の在庫状態を示す在庫情報が記憶されるメモリである。在庫情報は、MFP100を構成する各部品の部品名と、各部品に対応する部品IDと、各部品の在庫数とにより構成される。在庫情報メモリ404bは、部品の入庫や、部品の出庫や、顧客管理サーバ300との通信に基づいて更新される。
修理フロー蓄積メモリ404cは、各修理フロー番号に対応する修理フローのデータを蓄積するメモリである。修理フロー蓄積メモリ404cは、設計者などが修理フローを変更したり、新たな修理フローが作成された場合に更新されるものであり、MFP100、PC200、及び、顧客管理サーバ300とは関係なく更新される。次に、各装置100,200,300,400のフローチャートを順番に説明する。
図7は(a)は、MFP100のCPU101が実行する製造時検査処理を示すフローチャートである。製造時検査処理は、生産工程でなされる出荷検査を実行するための処理であり、生産工程において作業者により検査開始が指示された場合に実行される。まず、CPU101は、検査実行処理を実行する(S1)。
図7(b)は、MFP100のCPU101が実行する検査実行処理(S1)を示すフローチャートである。検査実行処理(S1)は、複数の検査項目について検査を実行し、その結果を示す検査結果情報を生成するための処理である。まず、CPU101は、複数の検査項目の中から実行する検査項目を一つ選択し(S11)、その検査項目について検査を実行し、検査結果値を算出する(S12)。次に、CPU101は、検査項目に対応する特性値IDを検査結果値に付加し、検査結果メモリ102cに記憶する(S13)。
そして、CPU101は、全ての検査項目について検査を行ったかを判定し(S14)、S14の判定が否定される場合(S14:No)、S11の処理へ戻る。一方、S14の判定が肯定される場合(S14:Yes)、CPU101は、MFP100の製品シリアル番号と、現在の年月日時間と、製造時識別フラグと、特性値IDが付加された各検査結果値とを含む検査結果情報を生成して、検査結果メモリ102cに記憶し(S15)、本処理を終了する。尚、MFP100の製品シリアル番号は、例えば、フラッシュメモリ102の所定領域に予め格納されている。ここで、図7(a)の説明に戻る。
S1の処理が終了したら、次に、CPU101は、検査結果メモリ102cに記憶されている検査結果情報に含まれる製造時識別フラグをオンに設定して(S2)、その検査結果情報を、直接、顧客管理サーバ300へ送信する(S3)。
図7(c)は、MFP100のCPU101が実行するメイン処理を示すフローチャートである。メイン処理は、ユーザのもとでMFP100の主要な処理を実行するための処理であり、MFP100の電源投入後、繰り返し実行される。まず、CPU101は、定期検査フラグ102bの設定指示をPC200から指示されたかを判定する(S21)。S21の判定が肯定される場合(S21:Yes)、CPU101は、そのPC200からの指示に応じて、定期検査フラグ102bの状態を設定し(S22)、S23の処理へ移行する。一方、S21の判定が否定される場合(S21:No)、S23の処理へ移行する。
次に、CPU101は、定期検査フラグ102bがオンかを判定し(S23)、S23判定が否定される場合(S23:No)、S27の処理へ移行する。一方、S23の判定が肯定される場合(S23:Yes)、CPU101は、前回実行した定期検査から10日以上経過しているかを判定する(S24)。S24の判定が否定される場合(S24:No)、CPU101は、S27の処理へ移行する。一方、S24の判定が肯定される場合(S24:Yes)、検査実行処理(S1)を実行する。尚、検査結果メモリ102cに検査結果情報が記憶されている場合は、検査実行処理(S1)が終了すると、古い検査結果情報が今回の検査結果情報に上書きされる。
次に、CPU101は、検査結果メモリ102cに記憶されている検査結果情報に含まれる製造時識別フラグをオフに設定して(S25)、その検査結果情報を、PC200へ送信する(S26)。そして、CPU101は、その他の処理として、MFP100を制御するための各処理を実行して(S27)、S21の処理に戻る。
図8(a)は、PC200のCPU201が実行するMFP監視処理を示すフローチャートである。MFP監視処理は、MFP100から通知されてくる定期検査の検査結果情報や、PC200においてユーザにより入力されるユーザ情報を顧客管理サーバ300へ送信するための処理である。MFP監視処理は、ドライバプログラム204aに含まれる処理の一つであり、PC200の電源投入後、所定間隔毎(例えば、数秒毎)に実行される。まず、CPU201は、ドライバプログラム204aのインストール中に表示されるユーザ情報入力画面において、または、ユーザの指示に応じて表示されたユーザ情報入力画面において、ユーザ情報が入力されたかを判定する(S31)。S31の処理では、ユーザ情報が全て入力された状態で、後述する送信ボタンBT1が押下された場合に、ユーザ情報が入力されたと判定する。ここで、図8(b)を参照して、ユーザ情報入力画面について説明する。
図8(b)は、ユーザ情報入力画面の一例を示す模式図である。ユーザ情報入力画面は、ドライバプログラム204aをユーザがインストールする場合や、ユーザ情報入力画面の表示をユーザが指示した場合などに、LCD206に表示される。ユーザ情報入力画面では、ユーザ情報の入力がユーザに求められる。
ユーザ情報入力画面は、機種名入力欄TB1と、製品シリアル番号入力欄TB2と、ユーザ名入力欄TB3と、ユーザ住所入力欄TB4と、定期検査の実行選択ボタンRB1と、印刷用途選択ボタンRB2と、印刷頻度選択ボタンRB3と、送信ボタンBT1と、キャンセルボタンBT2とを含む。
機種名入力欄TB1には、ユーザにより所有されるMFP100の機種名が入力される。製品シリアル番号入力欄TB2には、ユーザにより所有されるMFP100の製品シリアル番号が入力される。ユーザ名入力欄TB3には、MFP100を所有するユーザの氏名が入力される。ユーザ住所入力欄TB4には、ユーザの住所が入力される。
定期検査の実行選択ボタンRB1では、定期検査を実行させるか否かの2つの選択肢から、一方が選択される。印刷の用途選択ボタンRB2では、写真印刷および文書印刷の2つの選択肢から、印刷用途として一方が選択される。印刷頻度選択ボタンRB3では、毎日使用予定(利用頻度:高)、一週間に2〜3度使用予定(利用頻度:普通)、月に2〜3度使用予定(利用頻度:低)、及び、1年に2〜3度使用予定(利用頻度:殆ど利用しない)の4つの選択肢から、印刷頻度として一つが選択される。
送信ボタンBT1は、ユーザ情報の入力完了を示すと共に、そのユーザ情報から生成される顧客情報を顧客管理サーバ300へ送信するためのボタンであり、キャンセルボタンBT2は、ユーザ情報の入力を中止を示すと共に、ユーザ情報入力画面を閉じるためのボタンである。
ここで、図8(a)の説明に戻る。S31の判定が肯定される場合(S31:Yes)、CPU201は、ユーザ情報入力画面における定期検査項目の選択内容に基づいて、定期検査フラグ102bの設定指示をMFP100へ送信する(S32)。具体的には、定期検査の実行選択ボタンRB1により、定期検査を実行させると選択された場合には、定期検査フラグ102bをオンに設定させる設定指示をMFP100へ送信する。一方、定期検査を実行しないと選択された場合には、定期検査フラグ102bをオフに設定させる設定指示をMFP100へ送信する。そして、CPU201は、ユーザにより入力されたユーザ情報から顧客情報を生成して、顧客管理サーバ300へ送信し(S33)、S34の処理へ移行する。
S31の判定が否定される場合(S31:No)、CPU201は、S34の処理へ移行する。次に、CPU201は、MFP100から送信される定期検査の検査結果情報を受信したかを判定し(S34)、S34の判定が肯定される場合(S34:Yes)、今回受信した定期検査の検査結果情報を、そのまま顧客管理サーバ300へ転送して(S35)、S36の処理へ移行する。一方、S34の判定が否定される場合(S34:No)、S36の処理へ移行する。そして、その他の処理として、MFP100を制御するための各処理を実行し(S36)、本処理を終了する。
図9(a)は、顧客管理サーバ300のCPU301が実行する顧客情報受信処理を示すフローチャートである。顧客情報受信処理は、PC200から送信されてくる顧客情報に基づいて、顧客情報テーブル304bを更新するための処理である。顧客情報受信処理は、顧客管理サーバ300において顧客情報が受信された場合に実行される。CPU301は、今回受信した顧客情報を、顧客情報テーブル304bに追加して(S41)、本処理を終了する。
図9(b)は、顧客管理サーバ300のCPU301が実行する検査結果情報受信処理を示すフローチャートである。検査結果情報受信処理は、出荷検査または定期検査の検査結果情報を受信した場合に、それを製造時検査結果テーブル304dや、最新検査結果テーブル304eに記憶させるための処理である。検査結果情報受信処理は、受信した検査結果情報の種別(出荷検査や、定期検査)に関わらず、検査結果情報を受信した場合に実行される。
まず、CPU301は、今回受信した検査結果情報に含まれる製造時識別フラグがオンであるかを判定する(S51)。S51の判定が肯定される場合(S51:Yes)、CPU301は、今回受信した検査結果情報を、製造時検査結果テーブル304dに追加して(S52)、本処理を終了する。一方、S51の判定が否定される場合(S51:No)、CPU301は、今回受信した検査結果情報から製品シリアル番号を抽出して(S53)、その抽出した製品シリアル番号を含む検査結果情報が、最新検査結果テーブル304eに記憶されているかを判定する(S54)。
S54の判定が否定される場合(S54:No)、CPU301は、今回受信した検査結果情報を、最新検査結果テーブル304eに追加して(S55)、S57の処理へ移行する。一方、S54の判定が肯定される場合(S54:Yes)、今回受信した検査結果情報を、最新検査結果テーブル304eに記憶されている前回の検査結果情報に代えて記憶(上書き)して(S56)、S57の処理へ移行する。そして、CPU301は、部品手配判定処理を実行して(S57)、本処理を終了する。
図10は、顧客管理サーバ300のCPU301が実行する部品手配判定処理を示すフローチャートである。部品手配判定処理は、特性値IDに対応する検査項目について推定異常発生年月日TYを算出し、その推定異常発生年月日TYまでの残り期間が短い場合に、その異常の修理に必要な部品の手配を在庫管理サーバ400に指示するための処理である。
まず、CPU301は、複数の検査項目の中から、推定異常発生年月日TYを算出する検査項目を一つ選択して、その検査項目に対応する特性値IDを取得する(S61)。そして、CPU301は、今回取得した特性値IDに対応する異常警告値Kを、異常警告値テーブル304fから取得する(S62)。そして、図9のS53の処理で抽出した製品シリアル番号を用いて、そのMFP100を所有しているユーザの印刷用途および印刷頻度を、顧客情報テーブル304bから取得する(S63)。
次に、CPU301は、S63の処理で取得した印刷用途が何であるかを判定し(S64)、S64の判定において、写真印刷と判定された場合(S64:写真印刷)、S62の処理で取得した異常警告値Kに対し、補正係数α(0<α≦1)を乗算して異常警告値Kを補正する(S65)。一方、S64の判定において、文書印刷と判定された場合(S64:文書印刷)、S62の処理で取得した異常警告値Kに対し、補正係数β(α<β)を乗算して異常警告値Kを補正する(S66)。印刷ヘッドの駆動やインクの吐出量は、文書印刷よりも写真印刷の方が多くなる可能性が高いので、MFP100にかかる負担は写真印刷の方が大きくなり、異常の発生するおそれは写真印刷の方が高くなると予想される。そこで、例えば、「補正係数α<補正係数β」と設定し、写真印刷の場合は、文章印刷の場合よりも早期に、後述するS78〜S84の処理が実行されるようにし、部品の手配がより早く行われるようにする。
次に、CPU301は、S63の処理で取得した印刷頻度が高であるかを判定し(S67)、S67の判定が肯定される場合(S67:Yes)、S65またはS66の処理で補正した異常警告値Kに対し、補正係数γ(0<γ≦1)を乗算して異常警告値Kを補正する(S68)。一方、S67の判定が否定される場合(S67:No)、S69の処理へ移行する。印刷頻度が低い場合よりも、印刷頻度が高い場合の方が、MFP100にかかる負担が大きくなるので、異常の発生するおそれが高い。そこで、利用頻度が高い場合は、補正係数γを乗算して、S78〜S84の処理が早期に実行されるようにし、部品の手配がより早く行われるようにする。
次に、CPU301は、製造時検査結果テーブル304dおよび最新検査結果テーブル304eを構成するデータの中から、図9のS53の処理で抽出した製品シリアル番号と、S61の処理で取得した特性値IDとに対応づけられたデータを特定し、そのデータから製造年月日TAおよび最新検査年月日TBと、S61の処理で取得した特性値IDに対応する検査結果値VAおよび検査結果値VBとを取得する。そして、CPU301は、その取得した各値と、S62の処理で取得した異常警告値Kとを用いて、推定異常発生年月日TYを算出し(S69)、更に、最新検査年月日TBから推定異常発生年月日TYまでの期間を待機期間Nとして算出する(S70)。
次に、CPU301は、交換部品テーブル304gから、S61の処理で取得した特性値IDに対応する交換部品の入手困難ランクを取得し(S71)、入手困難ランクが何であるかを判定する(S72)。S72の判定において、入手困難ランクが「A(入手困難)」の場合(S72:A)、準備期間Xを「45日」と設定し(S73)、入手困難ランクが「B(普通)」の場合(S72:B)、準備期間Xを「30日」と設定し(S74)、入手困難ランクが「C(入手容易)」の場合(S72:C)、準備期間Xを「15日」と設定する(S75)。
次に、CPU301は、待機期間Nが準備期間X以下であるかを判定し(S76)、S76の判定が否定される場合(S76:No)、S85の処理へ移行する。一方、S76の判定が肯定される場合(S76:Yes)、最新検査結果テーブル304eを構成するデータの中から、図9のS53の処理で抽出した製品シリアル番号と、S61の処理で取得した特性値IDとに対応づけられたデータを特定し、そのデータに含まれる手配済フラグがオンであるかを判定する(S77)。
S77の判定が肯定される場合は(S77:Yes)、既に、在庫管理サーバ400に対して部品手配情報が送信された場合なので、何もせずにS85の処理へ移行する。次に、CPU301は、全ての検査項目について、その検査項目に対応する特性値IDを取得したかを判定し(S85)、S85の判定が否定される場合(S85:No)、S61の処理に戻り、残りの検査項目について推定異常発生年月日TYを算出する。一方、S85の判定が肯定される場合(S85:Yes)、本処理を終了する。
また、S77の判定において、手配済フラグがオフである場合(S77:No)、CPU301は、そのオフの手配済フラグをオンに設定し(S78)、交換部品テーブル304gの中から、S61の処理で取得した特性値IDに対応する交換部品名と、部品IDとを特定する(S79)。次に、CPU301は、顧客情報テーブル304bの中から、図9のS53の処理で抽出した製品シリアル番号に対応するユーザ名と、ユーザ住所とを特定する(S80)。そして、そのユーザ住所と、修理担当特定テーブル304cの修理担当地区とを比較し、ユーザ住所に関し修理担当地区が合致する修理担当サービスセンターを特定する(S81)。
次に、CPU301は、交換部品テーブル304gの中から、S61の処理で取得した特性値IDに対応する修理フロー番号を特定し(S82)、そして、在庫管理サーバ400に対して部品の手配を指示するために、S79〜82の処理で特定した各種情報を含む部品手配情報を生成する(S83)。そして、その生成した部品手配情報を在庫管理サーバ400へ送信し(S84)、S85の処理へ移行する。
図10に示す部品手配判定処理によれば、待機期間Nが準備期間X以下となって、推定異常発生年月日TYまでの残り期間が短くなり、MFP100において異常が発生するおそれが高くなった場合に、部品手配情報を在庫管理サーバ400へ送信できるので、その異常を解消する修理に必要な部品を予め手配できる。よって、MFP100の修理依頼をユーザから受ける前に、その修理作業に用いる部品を手配できるので、ユーザからの修理依頼を受けてから、修理作業に用いる部品の準備が整うまでの期間を短縮できる。従って、修理作業を早く開始できるので、MFP100の修理期間を短縮できる。
また、S72〜S75の処理では、交換部品の入手困難ランクが高いほど(入手困難であるほど)、準備期間Xを長く設定し、入手困難ランクが低いほど(入手容易であるほど)、準備期間Xを短く設定している。よって、交換部品の入手が困難であるほど、その部品をより早く手配できるので、入手の困難な部品であっても、遅延のないように準備できる。従って、ユーザからの修理依頼を受けてから、修理作業に用いる部品の準備が整うまでの期間をより短縮できるので、修理作業を早く開始できる。故に、MFP100の修理期間をより短縮できる。また、交換部品の入手が容易であるほど、その部品をより遅く手配できるので、在庫として保有される部品数が増加することを抑制できる。よって、推定異常発生年月日TYに発生が推定される異常の発生前に、その異常を解消する修理に必要な部品を予め手配することにより、部品の保管スペースが広がることを抑制できる。
また、S64〜S66の処理により、ユーザの印刷用途に応じて、異常警告値Kを補正できる。また、S67,S68の処理により、ユーザの印刷頻度に応じて、異常警告値Kを補正できる。これらの補正により、異常の発生するおそれが高いほど、交換部品をより早く手配できるので、仮に異常が早期に発生しても、ユーザからの修理依頼を受けてから、修理作業に用いる部品の準備が整うまでの期間を短縮できる。従って、修理作業を早く開始できるので、MFP100の修理期間をより短縮できる。
また、本実施形態では、MFP100ではなく、在庫管理サーバ300において、推定異常発生年月日TYの算出や、推定異常発生年月日TYに発生が推定される異常の修理に必要な部品の特定や、部品手配情報の生成や、その部品手配情報の出力を行っている。よって、MFP100にかかる負担を軽減できる。
図11は、在庫管理サーバ400のCPU401が実行する部品手配情報受信処理を示すフローチャートである。部品手配情報受信処理は、部品手配情報により指示される部品を手配するための処理であり、顧客管理サーバ300から送信されてくる部品手配情報を受信した場合に実行される。まず、CPU401は、今回受信した部品手配情報に含まれる部品IDを全て抽出し(S91)、その抽出した部品IDの中から、部品IDを一つ選択する(S92)。
次に、CPU401は、その選択した部品IDに対応する部品が在庫として有るかを、在庫情報メモリ404bに記憶される在庫情報に基づいて判定する(S93)。S93の判定が肯定される場合(S93:Yes)、CPU401は、S92の処理で選択した部品IDに対応する部品を、在庫から割り当てて確保し(S94)、S96の処理へ移行する。尚、部品の確保に伴って、在庫情報メモリ404bの在庫情報も更新する。一方、S93の判定が否定される場合(S93:No)、S92の処理で選択した部品IDに対応する部品を、部品メーカーに対して発注する(S95)。
このように、部品を調達する場合に、在庫に有るものは在庫から確保して発注せず、在庫のないものは発注する。よって、利用予定のない部品が増加して、不要な在庫が増加することを抑制できるので、部品の保管スペースが広がることを抑制できる。
次に、S91の処理で抽出した全ての部品IDについて、在庫確認を行ったかを判定する(S96)。S96の判定が否定される場合(S96:No)、CPU401は、S92の処理に戻り、残りの部品IDに対応する各部品について、在庫確認を行う。
一方、S96の判定が肯定される場合(S96:Yes)、今回受信した部品手配情報から、修理フロー番号と、修理担当サービスセンターとを抽出する(S97)。そして、CPU401は、今回受信した部品手配情報により指示される全部品と、修理フロー番号に対応する修理フローのデータと、今回受信した部品手配情報とが、推定異常発生年月日TYに、修理担当サービスセンターへ届くように、配送を予約する(S98)。尚、修理フローのデータは、修理フロー蓄積メモリ404cから取得する。そして、本処理を終了する。
図11に示す部品手配情報受信処理によれば、顧客管理サーバ300から送信されてくる部品手配情報に基づいて、手配の必要な部品や、その部品の配送先や、部品に対応する修理フローを特定でき、各部品や修理フローのデータの配送を手配できる。即ち、部品手配情報には、「製品シリアル番号」、「ユーザ名」、「ユーザ住所」、「交換部品名」、「部品ID」、「修理フロー番号」、「修理担当サービスセンター」、「推定異常発生年月日TY」とが含まれている。
そして、部品手配情報の「交換部品名」または「部品ID」から、手配すべき部品を特定でき、部品手配情報の「ユーザ住所」または「修理担当サービスセンター」から、ユーザが修理依頼する予定のMFP100の修理を担当するサービスセンターを特定できる。よって、MFP100の修理依頼をユーザから受ける前に、その修理に必要な部品を修理担当のサービスセンターへ予め配送できるように準備、又は、配送できる。従って、ユーザからの修理依頼を受けてから、修理作業に用いる部品の配送準備が整うまでの期間や、サービスセンターにおいて修理作業に用いる部品が整うまでの期間をより短縮できる。故に、修理作業を早く開始できるので、MFP100の修理期間をより短縮できる。
また、部品手配情報の「修理フロー番号」から、異常を解消する修理作業で修理担当者が用いる手順書を特定できるので、手順書データや手順書を準備でき、それを修理担当のサービスセンターへ予め配送できるように準備、又は、配送できる。よって、ユーザからの修理依頼を受けてから、修理作業に用いる手順書の準備が、サービスセンターや、サービスセンターの修理担当者において整うまでの期間を短縮できる。従って、修理作業を早く開始できるので、MFP100の修理期間をより短縮できる。
また、部品を調達する場合に、在庫にないものを発注できるので、利用予定のない部品が増加して、不要な在庫が増加することを抑制できる。よって、推定異常発生年月日TYに発生が推定される異常の発生前に、その異常を解消する修理に必要な部品を予め手配することにより、部品の保管スペースが広がることを抑制できる。
上記実施形態において、検査結果値が機能情報の一例であり、部品IDまたは交換部品名が部品情報の一例であり、部品手配情報が手配情報一例である。製品シリアル番号が識別情報の一例であり、ユーザ住所が設置エリア情報の一例である。修理担当サービスセンターが修理担当情報の一例であり、修理フロー番号が手順書情報の一例である。入手困難ランクが入手困難情報の一例であり、印刷用途や印刷頻度が予測情報の一例である。
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
例えば、上記実施形態で挙げた具体的数値は一例であり、他の数値を採用することは当然可能である。具体的には、異常警告値Kや、準備期間Nや、補正係数α〜γなどは、適宜決めれば良い。
また、上記実施形態では、顧客管理サーバ300において、ユーザの印刷用途や印刷頻度に応じて、異常警告値Kに対し補正係数α〜γを乗算することで異常警告値Kを補正しているが、補正後の異常警告値Kを予めテーブル等に記憶させておき、用いても良い。
また、上記実施形態では、顧客管理サーバ300において、ユーザの印刷用途や印刷頻度を条件として異常警告値Kを補正しているが、ユーザの印刷用途、印刷頻度、及び、交換部品の入手困難ランクの何れを条件として、異常警告値Kを補正しても良い。尚、入手困難ランクを条件として、異常警告値Kを補正する場合は、入手困難ランクが高い(入手困難)ほど、図10のS76の判定においてYesへ分岐され易くなるように、異常警告値Kの上限値や下限値を補正する。この補正により、異常の発生するおそれが高いほど、交換部品をより早く手配できるので、ユーザからの修理依頼を受けてから、修理作業に用いる部品の準備が整うまでの期間をより短縮できる。よって、修理作業を早く開始できるので、MFP100の修理期間をより短縮できる。
また、上記実施形態では、顧客管理サーバ300において、交換部品の入手困難ランクを条件として準備期間Xを変化させているが、ユーザの印刷用途、印刷頻度、及び、交換部品の入手困難ランクの何れを条件として、準備期間Xを変化させても良い。尚、ユーザの印刷用途を条件として、準備期間Xを変化させる場合は、写真印刷の場合の方が文書印刷の場合よりも、準備期間Xが短くなるように設定し、写真印刷の場合の方が、S76の判定においてYesへ分岐され易くなるようにする。また、印刷頻度を条件として、準備期間Xを変化させる場合は、印刷頻度が高いほど、準備期間Xが短くなるように設定し、S76の判定においてYesへ分岐され易くなるようにする。このように構成することで、異常の発生するおそれが高いほど、交換部品をより早く手配できるので、ユーザからの修理依頼を受けてから、修理作業に用いる部品の準備が整うまでの期間をより短縮できる。よって、修理作業を早く開始できるので、MFP100の修理期間をより短縮できる。
また、上記実施形態では、顧客管理サーバ300において、推定異常発生年月日TYを算出する場合に、生産工程で得られた出荷検査の検査結果情報と、最新の定期検査で得られた検査結果情報とを用いて、推定異常発生年月日TYを算出している。これに対し、生産工程で得られた出荷検査の検査結果情報の代わりに、初回の定期検査で得られた検査結果情報や、初期の定期検査で得られた検査結果情報などを保存しておき、その保存した検査結果情報と、最新の定期検査で得られた検査結果情報とを用いて、推定異常発生年月日TYを算出しても良い。また、生産工程で得られた出荷検査の検査結果情報、最新の定期検査で得られた検査結果情報、及び、最新より古い定期検査で得られた検査結果情報のうち、2以上の検査結果情報を用いて、推定異常発生年月日TYを算出しても良い。より多くの検査結果情報を用いて、推定異常発生年月日TYを算出することで、算出の精度を向上させることができる。
また、上記実施形態では、顧客管理サーバ300から在庫管理サーバ400へ送信する部品手配情報の中に、MFP100の設置場所を特定できる情報を含めるために、顧客管理サーバ300において、顧客情報テーブル304bに「ユーザ住所」を記憶させている。これに対し、「ユーザ住所」代えて、又は、「ユーザ住所」に加えて、「ユーザ住所に対応する郵便番号」や「ユーザの電話番号」や所定の地域ごとに予め定めた「エリアコード」などを記憶させても良い。その場合、「ユーザ住所に対応する郵便番号」や「ユーザの電話番号」や「エリアコード」が、設置エリア情報の一例に対応する。このように構成した場合も、MFP100の設置場所を特定できる。
また、「ユーザ住所」に代えて、又は、「ユーザ住所」に加えて、その「ユーザ住所」に対応する「修理担当サービスセンター」や、その修理担当サービスセンターにおける「修理担当者」を記憶させても良い。その場合、「修理担当サービスセンター」や「修理担当者」が、修理担当情報の一例に対応する。このように、「修理担当サービスセンター」や「修理担当者」を記憶させておけば、部品手配情報の中に、「修理担当サービスセンター」や「修理担当者」を含められる。よって、在庫管理サーバ400では、部品手配情報の中の「修理担当サービスセンター」や「修理担当者」から、ユーザが修理依頼する予定のMFP100の修理を担当するサービスセンターや修理担当者を特定できる。従って、MFP100の修理依頼をユーザから受ける前に、その修理に必要な部品をサービスセンターや修理担当者へ予め配送できるように準備、又は、配送できる。その結果、修理作業を早く開始できるので、MFP100の修理期間をより短縮できる。
また、上記実施形態では、MFP100で生成された定期検査の検査結果情報を、PC200を介して、MFP100から顧客管理サーバ300へ送信しているが、MFP100がインターネット500に接続されている場合には、MFP100から顧客管理サーバ300へ直接送信させても良い。
また、上記実施形態では、顧客管理サーバ300と、在庫管理サーバ400とがそれぞれ別体に設けられているが、一体のサーバとして構成しても良い。
また、上記実施形態では、出荷検査の検査結果情報と、定期検査の検査結果情報とから、所定の特定値IDに対応する検査結果値をそれぞれ取得し、その取得した2つの検査結果値の推移を表す直線を算出し、推定異常発生年月日TYを算出しているが、他の手法を用いて、推定異常発生年月日TYを算出しても良い。例えば、3個以上の検査結果情報を用いて、3個以上の検査結果値の推移を表す近似直線や近似曲線を算出して、推定異常発生年月日TYを算出しても良い。
また、上記実施形態では、MFP100について推定異常発生年月日TYを算出し、その推定異常発生年月日TYまでの残り期間が短い場合に、その異常の修理に必要な部品を予め手配する場合の一実施形態について説明したが、MFP100に限らず、他の装置についても適用できる。