(57)【特許請求の範囲】
【請求項１】
印刷データを格納するための格納手段と、
印刷イメージを作成する処理プログラムを記憶するための記憶手段を備え、前記格納手段に格納された印刷データについて該記憶手段に記憶された第１の版数による処理プログラムに従って印刷イメージを作成する作成手段と、
前記印刷イメージを印刷する印刷手段と、
前記印刷イメージの作成中に障害が発生したときに前記第１の版数を少なくとも含み前記障害を表す障害情報を生成すると共に、生成した障害情報を出力する出力手段と、
外部から第１の版数の障害が修復された第２の版数による印刷処理プログラムを受け取って前記記憶手段に記憶させる更新手段と、
前記更新手段により記憶された印刷処理プログラムを用いて前記障害発生以降の印刷イメージを前記作成手段に生成させる印刷リカバリ手段と、
を備えた印刷装置。
【請求項２】
前記更新手段は、前記記憶手段に記憶された処理プログラムを外部から受け取った印刷処理プログラムに更新するまたは外部から受け取った印刷処理プログラムを更に記憶させることを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記更新手段により記憶された印刷処理プログラムを用いて印刷イメージを生成したときに、障害発生時の印刷処理プログラムで生成された印刷イメージと、前記更新手段により記憶された印刷処理プログラムで生成された印刷イメージとについて、障害発生以前の印刷イメージを比較する比較手段をさらに備えたことを特徴とする請求項１に記載の印刷装置。
【請求項４】
前記障害に関係するメッセージを受信するメッセージ受信手段と、受信したメッセージを報知する報知手段とをさらに備えたことを特徴とする請求項１乃至請求項３の何れか１項に記載の印刷装置。
【請求項５】
印刷装置において印刷イメージを作成する第１の版数による処理プログラムにより発生する障害と、該障害が修復された第２の版数の印刷処理プログラムとの関係が登録された登録手段と、
印刷装置から出力された障害情報を受信する受信手段と、
受信した障害情報が前記登録手段に登録された関係に含まれるとき、該当する関係の修復された印刷処理プログラムを前記障害情報を出力した印刷装置に向けて送信する送信手段と、
を備えた障害対処装置。
【請求項６】
前記送信手段は、受信した障害情報に該当する関係が前記登録手段に登録されていないとき、前記障害情報を出力した印刷装置にメッセージを送信するメッセージ送信手段を備えたことを特徴とする請求項５記載の障害対処装置。
【請求項７】
前記送信手段は、受信した障害情報に該当する関係が前記登録手段に登録されていないとき、予め定めた印刷処理プログラムを前記障害情報を出力した印刷装置ヘ向けて送信することを特徴とする請求項５記載の障害対処装置。
【請求項８】
前記送信手段は、同一の印刷装置に発生した障害に対する印刷処理プログラムの送信の回数と、記憶させるべき印刷処理プログラムの版数を関連づけたテーブルを有し、記憶させた印刷処理プログラムで障害が回避されるまで前記テーブルに従って順次版数を増加させた印刷処理プログラムを前記障害情報を出力した印刷装置に向けて送信することを特徴とする請求項５記載の障害対処装置。
【請求項９】
前記印刷装置が送信した障害と同一の障害が登録されていない場合に、該障害を新規登録する新規登録手段をさらに備えたことを特徴とする請求項５記載の障害対処装置。
【請求項１０】
ネットワークに接続された請求項１乃至請求項４の何れか１項に記載の印刷装置と、ネットワークに接続された請求項５乃至請求項９の何れか１項に記載の障害対処装置と、を含んで構成した障害復旧システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷装置、障害対処装置、障害復旧システムにかかり、特に、ネットワーク等を介してデータを受け取って印刷する印刷装置内の異常により発生した障害に対処することが可能な印刷装置、障害対処装置、障害復旧システムに関する。
【０００２】
【従来の技術】
印刷装置は、データを印刷する印刷処理の途中で印刷完了まで処理を遂行できない障害が発生することがある。例えば、印刷装置内部の紙詰まりによる印刷継続が困難な障害、停電や不意の電源遮断等によりデータの消失や装置の不具合等の障害がある。
【０００３】
ところで、印刷処理は印刷装置内部に格納された印刷処理プログラムの実行によりなされるが、印刷処理プログラムは対応の多様性を実現するため、バージョンアップされることが多い。印刷処理プログラムのバージョンアップでは、ＳＥやユーザーに作業負担がかかることや、バージョンアップした結果、前バージョンとの互換性を維持できなくなることを懸念し、バージョンアップを頻繁に行わず、以前のバージョンのまま印刷処理プログラムを継続使用する場合がある。  従って、以前のバージョンの印刷処理プログラムを使用した場合、より最新のバージョンの印刷処理プログラムにおいて障害が修復されている場合がある。なお、バージョンアップした印刷処理プログラムでは、バージョンアップにより追加されたり修復されたりした処理部分において新たな障害が発生する場合がある。例えば、以前のバージョンでは印刷できたデータの一部が印刷できなくなる障害が発生する場合がある。
【０００４】
これらの障害に対する対処として、印刷が正常に終了するまでホストコンピュータ等の上位装置から出力されたデータを一時的に格納し、印刷処理の途中で障害が発生した場合に、一時的に格納したデータを用いて印刷が正常に行われなかったページの最初のデータ以降を再印刷する技術が提案されている（特開昭６０−２５７２６２号公報）。
【０００５】
また、印刷処理の途中で障害が発生したときに、上位装置にオペレータが障害発生を通知し、印刷途中となっているぺージの最初のデータから再送して再印刷する技術が提案されている（特開昭６１−６７２３号公報）。
【０００６】
さらに、印刷データ中に復帰開始位置を示す制御コードを用いることで、複数のページを一つのセットとして出力を行わせるエラーリカバリ技術が提案されている（特開平７−２３２４６０号公報）。
【０００７】
【発明が解決しようとする課題】
しかしながら、従来の技術では印刷装置の紙詰まりや不意の電源断等で発生した障害には対応できるものの、印刷処理の中途で生じた障害に、自動的に対処することができなかった。
【０００８】
本発明は、上記事実を考慮して、印刷処理の途中で印刷完了まで処理を遂行できない障害が発生した場合に自動的に障害復旧を行い印刷を再開することによって利用者の作業負荷の軽減を図ることが可能な印刷装置、障害対処装置、障害復旧システムの提供を目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために本発明の印刷装置は、印刷データを格納するための格納手段と、印刷イメージを作成する処理プログラムを記憶するための記憶手段を備え、前記格納手段に格納された印刷データについて該記憶手段に記憶された第１の版数による処理プログラムに従って印刷イメージを作成する作成手段と、前記印刷イメージを印刷する印刷手段と、前記印刷イメージの作成中に障害が発生したときに前記第１の版数を少なくとも含み前記障害を表す障害情報を生成すると共に、生成した障害情報を出力する出力手段と、外部から第１の版数の障害が修復された第２の版数による印刷処理プログラムを受け取って前記記憶手段に記憶させる更新手段と、前記更新手段により記憶された印刷処理プログラムを用いて前記障害発生以降の印刷イメージを前記作成手段に生成させる印刷リカバリ手段と、を備えている。
【００１０】
本発明の印刷装置では、格納手段に印刷データが格納され、その印刷データについて作成手段が印刷イメージを作成する。作成手段に備えられた記憶手段には印刷イメージを作成する処理プログラムが記憶されている。この処理プログラムに従って印刷イメージが作成され、印刷手段によって、印刷イメージが印刷される。この印刷イメージの作成中に障害が発生したときには、出力手段において、障害情報を生成すると共に、生成した障害情報を出力する。
【００１１】
ここで、出力された障害情報は、印刷装置の外部の装置で受け取られ、その障害が解消された印刷処理プログラムが送られる。印刷装置の外部の装置としては、後述する障害対処装置がある。
【００１２】
更新手段は、その外部からの印刷処理プログラムを受け取って記憶手段に記憶させる。この更新手段により記憶された印刷処理プログラムを用いて、印刷リカバリ手段は障害発生以降の印刷イメージを作成手段に生成させる。
【００１３】
このように、印刷装置で障害が発生したときに、障害情報を外部へ出力し、その出力に対して障害が解消された印刷処理プログラムが送られてくる。この印刷処理プログラムを受け取って障害発生以降の印刷イメージを生成するので、障害が解消された印刷が可能となる。
【００１４】
前記更新手段は、前記記憶手段に記憶された処理プログラムを外部から受け取った印刷処理プログラムに更新するまたは外部から受け取った印刷処理プログラムを更に記憶させることができる。
【００１５】
また、前記更新手段により記憶された印刷処理プログラムを用いて印刷イメージを生成したときに、障害発生時の印刷処理プログラムで生成された印刷イメージと、前記更新手段により記憶された印刷処理プログラムで生成された印刷イメージとについて、障害発生以前の印刷イメージを比較する比較手段をさらに備えることができる。
【００１６】
また、前記障害に関係するメッセージを受信するメッセージ受信手段と、受信したメッセージを報知する報知手段とをさらに備えることができる。
【００１７】
本発明の障害対処装置は、印刷装置において印刷イメージを作成する第１の版数による処理プログラムにより発生する障害と、該障害が修復された第２の版数の印刷処理プログラムとの関係が登録された登録手段と、印刷装置から出力された障害情報を受信する受信手段と、受信した障害情報が前記登録手段に登録された関係に含まれるとき、該当する関係の修復された印刷処理プログラムを前記障害情報を出力した印刷装置に向けて送信する送信手段と、を備えている。
【００１８】
本発明の障害対処装置では、登録手段に印刷装置において発生する障害と、該障害が修復された印刷処理プログラムとの関係が登録されている。従って、印刷装置から出力された障害情報を受信手段によって受信すると、その受信した障害情報に障害が修復された印刷処理プログラムに対応する障害が登録されているか判断できる。そこで、送信手段は、受信した障害情報が登録手段に登録された関係に含まれるとき、該当する関係の修復された印刷処理プログラムを障害情報を出力した印刷装置に向けて送信する。これによって、障害が発生した印刷装置には障害が修復された印刷処理プログラムが送信され、印刷装置において障害に対する修復作業所謂リカバリ処理を行うことができる。
【００１９】
前記送信手段は、受信した障害情報に該当する関係が前記登録手段に登録されていないとき、前記障害情報を出力した印刷装置にメッセージを送信するメッセージ送信手段を備えることができる。
【００２０】
また、前記送信手段は、受信した障害情報に該当する関係が前記登録手段に登録されていないとき、予め定めた印刷処理プログラムを前記障害情報を出力した印刷装置ヘ向けて送信することができる。
【００２１】
また、前記送信手段は、同一の印刷装置に発生した障害に対する印刷処理プログラムの送信の回数と、記憶させるべき印刷処理プログラムの版数を関連づけたテーブルを有し、記憶させた印刷処理プログラムで障害が回避されるまで前記テーブルに従って順次版数を増加させた印刷処理プログラムを前記障害情報を出力した印刷装置に向けて送信することができる。
【００２２】
なお、前記印刷装置が送信した障害と同一の障害が登録されていない場合に、該障害を新規登録する新規登録手段をさらに備えることができる。
【００２３】
本発明の障害復旧システムは、ネットワークに接続された前記印刷装置と、ネットワークに接続された前記障害対処装置と、を含んで構成している。
【００２４】
このように、印刷装置がネットワークに接続されているので、障害情報はネットワーク上に容易に送出でき、その障害情報をネットワークに接続された障害対処装置で容易に受け取ることができ、障害に対する対処を容易に行うことができる。
【００２５】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。本実施の形態は、印刷装置と障害情報サーバ装置とをネットワークに接続した障害復旧システムに本発明を適用したものである。
【００２６】
〔第１実施の形態〕
図１に示すように、本発明の実施の形態にかかる障害復旧システムは、印刷装置１０と、上位装置としてのホストコンピュータ１６と、障害情報サーバ装置１８とから構成されている。印刷装置１０、ホストコンピュータ１６、及び障害情報サーバ装置１８は、ネットワークバス２０によってネットワーク接続されている。
【００２７】
印刷装置１０は、印刷器１２及び印刷データ処理装置１４から構成されている。印刷器１２は、印刷データ処理装置１４から入力された印刷イメージを印刷するための機器であり、印刷データ処理装置１４に接続されている。印刷データ処理装置１４は、ネットワークを介して印刷指示がなされたデータの印刷イメージを生成し印刷器１２へ出力するものである。印刷器１２は、請求項１の印刷手段として機能する。
【００２８】
印刷データ処理装置１４は、マイクロコンピュータを含んで構成されており、機能別にはＯＳ部３０、作成手段としての印刷処理プログラム実行部３２、出力手段としての障害ハンドラ処理部３４、格納手段としての入力データファイル格納部３６、印刷リカバリ部３８、プログラムロード部４０、障害情報ファイル格納部４２、ネットワークインタフェース部４４、及び報知部４６に分類されている。印刷リカバリ部３８及びプログラムロード部４０により本発明の更新手段及び印刷リカバリ手段が構成される。
【００２９】
ＯＳ部３０は、印刷データ処理装置１４内の処理を統括管理及び処理するためのものであり、報知部４６は障害の復旧の状態をユーザーに報知するためのものである。ネットワークインタフェース部４４はネットワークとのインタフェースを行うものであり、入力データファイル格納部３６はホストコンピュータ（上位装置）１６がネットワークを介して送信する印刷データを格納するためのものである。印刷処理プログラム実行部３２は、入力データファイル格納部３６に入力データファイルとして格納された印刷データを印刷器１２で印刷可能なビットマップイメージに変換生成するためのものであり、処理を実行する印刷処理プログラムを記憶するメモリを備えている。
【００３０】
障害ハンドラ処理部３４は、印刷処理プログラム実行部３２における障害の発生や、ＯＳ部３０で発生した続行不可能なシグナルを検知し収集するためのものであり、障害情報ファイル格納部４２は障害ハンドラ処理部３４が収集した障害情報を格納するためのものである。プログラムロード部４０は、障害情報サーバ装置１８（詳細は後述）から送られた印刷処理プログラムを既存の印刷処理プログラムと置きかえたり追加したりするためのものである。印刷リカバリ部３８は、プログラムロード部４０により置きかえたり追加したりした印刷処理プログラムを用いて障害が生じた印刷のリカバリ、すなわち印刷データに対する印刷イメージ生成を印刷処理プログラム実行部３２に行さわせるものである。
【００３１】
障害情報サーバ装置１８は、印刷装置で発生した障害に対して修復された印刷処理プログラムの提供等の対処を行うものである。障害情報サーバ装置１８は、ネットワークインタフェース部５０、障害判断部５２、送信手段としてのプログラム送信部５４、登録手段としての障害データべース格納部５６、及びプログラム群格納部５８を含んで構成されている。ネットワークインタフェース部５０は、本発明の受信手段及び送信手段の一部を構成する。
【００３２】
障害データベース格納部５６は、印刷装置で発生する障害の発生条件と当該障害が解消された印刷処理プログラムのバージョン（版数）との対応関係が記されたデータベースが格納されるものである。障害判断部５２は、印刷装置１０からの障害情報が対応関係として障害データベース格納部５２に登録されているか否かを判断するためのものである。プログラム送信部５４は、障害判断部５２において障害データベース格納部５６にその障害が登録済みとの判断の場合に、障害データベースからその障害に対応する修正がなされた印刷処理プログラムのバージョンの情報を得て、プログラム群格納部５８から障害の修復に対応する印刷処理プログラムを印刷装置に送信するためのものである。
【００３３】
次に、本実施の形態の作用を説明する。印刷装置１０に電源が投入され、ホストコンピュータ１６から印刷データの出力と共に印刷指示がなされると、ＯＳ部３０の統括下で、図２の処理ルーチンが実行される。ステップ１００では、ホストコンピュータ１６からの印刷データを入力データファイル格納部に格納する。印刷データはネットワークインタフェース部４４を介して入力される。
【００３４】
印刷データの格納が終了すると、次のステップ１０２では、印刷処理プログラム実行部３２において印刷イメージを生成させる。すなわち、印刷処理プログラム実行部３２では、入力データファイル格納部３６に格納されている印刷データを読み取り（ステップ１０４）、印刷イメージとしてビットマップイメージデータを生成する（ステップ１０６）。そして、生成したビットマップイメージデータを印刷器１２へ出力する（ステップ１０８）。これによって印刷器（ＩＯＴ）１２は受け取ったピットマップイメージに基づいて用紙への印字を行うことができる。
【００３５】
印刷処理プログラム実行部３２では、障害の発生に備えて、上記処理中にログ情報として記録する（ステップ１１０）。例えば、次の表１に示す関数の入口点と出口点のトレースや、ビットマップイメージとして印刷器１２に出力したぺージ数等の情報をログ情報として記録する。そして、印刷処理プログラム実行部３２はこれらの処理が完了するまで、すなわち、全ての印刷データをビットマップイメージとして作成し印刷器１２への出力が完了するまで、繰り返し実行する（ステップ１１２）。
【００３６】
【表１】
0003826593.tif 000002
【００３７】
全ての印刷データの処理が正常に終了すると（ステップ１１２で肯定判断）、次のステップ１１４において、印刷データとして入力データファイル格納部３６に格納されている入力データファイルを削除する。
【００３８】
なお、印刷処理プログラム実行部３２では、印刷イメージ生成の処理中に処理続行が不可能なプログラム処理上における障害（例えば内部で使用しているデータ値が不正でプログラム処理の続行が不可能な場合等）や予め定めた障害信号（例えばＳＩＧＳＥＧＶやＳＩＧＢＵＳ等の障害信号）を検知した場合には、図３の割り込み処理ルーチンが実行され、ステップ１１６において障害発生時のハンドラとして障害ハンドラ処理部３４へ信号を出力する。
【００３９】
次に、障害ハンドラ処理部３４の処理を説明する。障害ハンドラ処理部３４では、図４の処理ルーチンが実行され、ステップ１２０において印刷処理プログラム実行部３２からの信号を受信したか否かを判別することによって、印刷処理プログラム実行部３２で障害が発生したか否かを判断する。障害が発生していないときはステップ１２０で否定され、そのまま本ルーチンを終了する。一方、障害が発生したときはステップ１２０で肯定され、ステップ１２２へ進む。ステップ１２２では、障害情報を収集して、収集した障害情報を障害情報ファイル格納部４２へ格納する。この障害情報には、例えば、印刷装置の（ネットワーク上の位置を表す）ＩＰアドレス、印刷処理プログラムのバージョン、ログ情報、障害の種類、障害時のぺージ番号、障害時のプログラムの変数の状態等の情報がある。次のステップ１２４では、格納した障害情報全てまたは格納した障害情報の一部、例えば次の表２に示す障害情報サーバ装置１８が障害の解析に必要な情報をネットワーク上の障害情報サーバ装置１８に送信して本ルーチンを終了する。
【００４０】
【表２】
0003826593.tif 000003
【００４１】
次に、障害情報サーバ装置１８の作動を説明する。なお、障害情報サーバ装置１８の障害データベース格納部５６には、例えば、表３に示す障害が発生する必要条件（プログラムバージョン／障害発生関数／障害の種類等）と障害の修正がなされた印刷処理プログラムのバージョン名（版数名）が関連づけられ、障害データベースとして登録されている。また、この関連づけられた障害の修正がなされた印刷処理プログラムは、プログラム群格納部５８に格納されている。
【００４２】
【表３】
0003826593.tif 000004
【００４３】
障害情報サーバ装置１８では図５の処理ルーチンが実行され、ステップ１３０へ進み、障害情報を受信したか否かを判断する。障害情報を受信したときはステップ１３０で肯定され、次のステップ１３２で障害情報と登録済みの障害とを比較する。すなわち、障害情報サーバ装置１８は印刷装置１０から表２に示した障害解析情報を受信した場合、例えば、表３に示すように障害が発生する必要条件（プログラムバージョン、障害発生関数、障害の種類等）と障害の修正がなされた印刷処理プログラムのバージョン名が関連づけられており、障害データベースに登録されている障害と、印刷装置から受信した障害情報とを順次比較する。
【００４４】
次のステップ１３４では、ステップ１３２の比較結果で一致する障害が登録されているか否かを判断する。一致する障害が登録されていない場合には、障害に対して対処することができないので、ステップ１３４で否定され、そのまま本ルーチンを終了する。なお、一致する障害が登録されていない場合は対処が困難な場合や新規の障害である確度が高いので、別途対処（詳細は後述）を行うことが好ましい。
【００４５】
一方、一致する障害が登録されている場合には、ステップ１３４で肯定され、ステップ１３６へ進み、障害データベースに登録されている障害と修復されている印刷処理プログラムのバージョンとの関係から、障害が修復されたバージョンの印刷処理プログラムを印刷装置１０に送信する。例えば、表２の障害解析情報が送られた場合は表３の障害情報サーバー登録情報を順次比較して、発生したトラブルがＴＲ００１５の障害発生条件を満たすのでトラブルに対応するバージョンＶ３．５のプログラムを印刷装置１０に送信する。
【００４６】
上記のようにして、印刷装置１０から障害に対する障害情報が出力され、その障害を解消する印刷処理プログラムが障害情報サーバ装置１８から送信されると、印刷装置１０を構成する印刷データ処理装置１４の印刷リカバリ部３８において次のようにしてリカバリ処理がなされる。
【００４７】
印刷データ処理装置１４の印刷リカバリ部３８では、図６の処理ルーチンが実行され、図６のステップ１４０においてプログラムを受信したか否かを判断する。すなわち、ステップ１４０では障害情報サーバ装置１８から障害を修復したバージョンの印刷処理プログラムを受信したか否かを判断する。障害情報サーバ装置１８から障害を修復したバージョンの印刷処理プログラムを受信したときにはステップ１４０で肯定され、次のステップ１４２へ進む。
【００４８】
ステップ１４２ではプログラムロード部４０により、障害情報サーバ装置１８からの障害修復がなされたバージョンの印刷処理プログラムを、印刷処理プログラム実行部３２のメモリへ格納させる。すなわち、受信した印刷処理プログラムを既存の印刷処理プログラムと置き換える。なお、印刷処理プログラムを置き換えることなく、新規に、受信した印刷処理プログラムを追加記憶してもよい。
【００４９】
次のステップ１４４では、障害発生時のログ情報を参照し該ログ情報から印刷済みのページ数を獲得する。なお、ログ情報から印刷済みのページ数を獲得するには印刷処理プログラムを初期状態、すなわち再度起動することが好ましい。次のステップ１４６では、上記で得られた印刷済みのページ数を基にして、障害発生時のページ以降からページの印刷を行うべく、印刷処理プログラム実行部へ指示する。
【００５０】
このようにすることにより、印刷装置をプログラムに障害が発生した場合において、障害を自動的に復旧させることができると共に、印刷のリカバリすることができる。
【００５１】
また、印刷処理プログラム内で障害が発生して処理続行不可能となる場合でも、過去の障害と同一の障害の場合は自動的に印刷処理をリカバリすることが可能である。また、バージョンアップのときに作り込まれた障害においても、バージョンを自動的に戻して印刷を再開することで自動的にリカバリすることが可能となる。
【００５２】
〔第２実施の形態〕
本実施の形態は、印刷装置で発生した障害が障害データベースに未登録の場合の対処について説明したものである。本実施の形態は、上記実施の形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【００５３】
本実施の形態の障害情報サーバ装置１８では図７の処理ルーチンが実行され、障害情報を受信し（ステップ１３０で肯定）、障害情報と登録済みの障害とを比較し（ステップ１３２）、一致する障害が登録されていない場合には（ステップ１３４で否定）、ステップ１３８へ進み、障害の対処が困難であることを表す旨のメッセージを送信して本ルーチンを終了する。このメッセージ送信処理は、本発明のメッセージ送信手段の処理に相当するものとして機能する。
【００５４】
ステップ１３４で否定されたときの障害は、登録されていない対処が困難なものや、新たな障害である確度が高い。このため、別途対処の必要のことがある。このため、ステップ１３８で送信するメッセージは、印刷装置１０に対応するトラブルが登録されていない旨を表すメッセージである。
【００５５】
印刷データ処理装置１４の印刷リカバリ部３８では、図８の処理ルーチンが実行され、障害情報サーバ装置１８から障害を修復したバージョンの印刷処理プログラムを受信していないとき（ステップ１４０で否定）、ステップ１４８へ進む。
【００５６】
ステップ１４８では、メッセージを受信したか否かを判断する。すなわち、印刷装置１０では当該印刷装置１０上に発生した障害と一致するトラブルが登録されていない旨を表すメッセージを障害情報サーバ装置１８から受信した場合に肯定される。ステップ１４８で肯定されたときには、次のステップ１５０において、報知部４６にメッセージを表示することによって、印刷装置１０で障害が発生したことをユーザに通知するメッセージを表示する。これにより、自動的な障害の復旧が不可能な場合に、ユーザーに障害通知することが可能となり、障害対処について別途手当てをすることができる。このメッセージ受信処理は、本発明のメッセージ受信手段の処理に相当するものとして機能する。
【００５７】
このようにすることにより、印刷装置をプログラムに障害が発生した場合において、障害を自動的に復旧させることができると共に、復旧が困難な障害に対する場合であっても、ユーザにその障害が発生したことを報知することができ、迅速なる対処が可能となる。
【００５８】
〔第３実施の形態〕
本実施の形態は、印刷装置で発生した障害を修復したバージョンの印刷処理プログラムで、既に印刷済みのページに関して考慮を加えたものである。本実施の形態は、上記実施の形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【００５９】
本実施の形態における印刷装置１０の印刷リカバリ部３８では、図９に示す処理ルーチンが実行される。図９の処理ルーチンは、図８の処理ルーチンにおけるステップ１４６の処理を詳細にしたものである。
【００６０】
印刷リカバリ部３８では、図９の処理ルーチンが実行され、印刷処理プログラムを受信し（ステップ１４０で肯定）、その印刷処理プログラムを印刷処理プログラム実行部３２のメモリへ格納させる（ステップ１４２）。本実施の形態では、既存の印刷処理プログラムに加え、受信した印刷処理プログラムを新規に追加記憶する。次に、障害発生時のログ情報を参照し該ログ情報から印刷済みのページ数を獲得する（ステップ１４４）。
【００６１】
次のステップ１５２では、上記で得られた印刷済みのページ数を基にして、障害発生時のページまで、すなわち既に印刷したページの再印刷を行うべく、印刷処理プログラム実行部へ指示する。この場合、以下のようにして、既存の印刷処理プログラム（すなわち障害が発生した旧バージョンの印刷処理プログラム）と新規の印刷処理プログラム（すなわち障害を修復した新バージョンの印刷処理プログラム）との出力比較（印刷イメージ比較）を行うため、最初のページから再印刷することが好ましい。この比較処理は、本発明の比較手段を構成する。
【００６２】
次に、ステップ１５４において、既存の印刷処理プログラムで生成される印刷イメージ（ビットマップイメージ）を獲得し、次のステップ１５６において、同一のページについて新規の印刷処理プログラムで生成される印刷イメージを獲得する。そして、次のステップ１５８において、上記で獲得した印刷イメージの差分等を演算し演算値の大小を判断することにより、印刷イメージに差異が有るか否かを判断する。
【００６３】
印刷イメージに差異がないときは、ステップ１５８で否定され、そのままステップ１６６へ進む。すなわち、新旧ともに印刷イメージが同一であるので、再印刷が不要であるためである。一方、印刷イメージに差異が有るときは、ステップ１５８で肯定され、次のステップ１６２において、そのページを新規の印刷処理プログラムで生成される印刷イメージで印刷させた後、次のステップ１６４において印刷させたページが既に印刷させたものと差異がある旨を報知部４６に表示する。ステップ１６４における表示は、障害が発生した以前に印刷されたページとの出力結果の確認を促すメッセージであることが好ましい。
【００６４】
ステップ１６６では、障害発生直前ページまで上記処理が完了したか否かを判断する。障害発生直前ページまでのページで残存する場合、ステップ１６６で肯定され、ステップ１５４へ戻り、上記処理を繰り返し実行する。一方、障害発生直前ページまで上記処理が完了した場合、ステップ１６６で否定され、ステップ１６８へ進む。ステップ１６８では、上記で得られた印刷済みのページ数を基にして、障害発生時のページ以降から新規の印刷処理プログラムによるページの印刷を行うべく、印刷処理プログラム実行部へ指示する。
【００６５】
このようにすることにより、印刷装置をプログラムに障害が発生した場合において、障害を自動的に復旧させることができると共に、復旧以前に既に印刷済みのページについて、印刷処理プログラムが変更されたことによる結果の差異を報知することができる。
【００６６】
すなわち、障害発生後のリカバリ処理において、障害を起こした印刷処理プログラムと、障害情報サーバ装置１８から受信した印刷処理プログラムの両方を使用してぺージ毎に同期を取りながら障害発生前のぺージまで上記印刷処理（双方の印刷処理プログラムで作成した印刷イメージを比較し、新規の印刷処理プログラムで差異の発生したページを印刷させ、報知）を行うことで、印刷装置が障害を検出する以前に不正なページが印刷されていた場合や、バージョンを変更したことによる印字結果の変更に対応して、全てのページの再印刷することなく、用紙の差し替えだけでリカバリすることが可能となる。
【００６７】
なお、上記では、差異がある印刷イメージのみを印刷させているが、本発明はこれに限定されるものではなく、印刷イメージの差異に関係なく印刷させてもよい。
【００６８】
〔第４実施の形態〕
本実施の形態は、印刷装置で発生した障害が障害データベースに未登録の場合の対処について説明したものである。なお、本実施の形態は、上記実施の形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【００６９】
本実施の形態の障害情報サーバ装置１８では図１０の処理ルーチンが実行され、障害情報を受信し（ステップ１３０で肯定）、障害情報と登録済みの障害とを比較し（ステップ１３２）、一致する障害が登録されていない場合には（ステップ１３４で否定）、ステップ１３５へ進む。
【００７０】
ステップ１３５では、障害情報サーバ装置１８は予め登録されているバージョンの印刷処理プログラム（例えば、最新のバージョンの印刷処理プログラムや障害が発生したバージョンの一つ前のバージョンの印刷処理プログラム) を印刷装置１０へ向けて送信する。
【００７１】
この印刷処理プログラムの送信を受けて、印刷装置１０は、障害情報サーバ装置１８からの印刷処理プログラムをロードして、上記で説明したようにリカバリ処理（例えば、図８の処理）を試みる。
【００７２】
このようにすることにより、印刷装置をプログラムに障害が発生したとき、障害情報サーバ装置１８に登録されていないような障害が発生した場合において、印刷処理プログラムのバージョンを変更することや再度印刷処理プログラムをロードさせることで障害を自動的に復旧させることができる可能性を高めることが可能となる。
【００７３】
〔第５実施の形態〕
本実施の形態は、印刷装置で発生した障害について複数回対処を試みる場合について説明したものである。なお、本実施の形態は、上記実施の形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【００７４】
本実施の形態の障害情報サーバ装置１８では図１１の処理ルーチンが実行され、障害情報を受信し（ステップ１３０で肯定）、その障害情報を参照して次のステップ１７０において初めての障害か否かを判断する。初めての障害であるときは、ステップ１７０で肯定され、次のステップ１３２において障害情報と登録済みの障害とを比較し（ステップ１３２）、一致する障害が登録されているときは（ステップ１３４で肯定）障害データベースに登録されている障害と修復されている印刷処理プログラムのバージョンとの関係から障害が修復されたバージョンの印刷処理プログラムを印刷装置１０に送信する（ステップ１３６）。
【００７５】
一方、一致する障害が登録されていないときは（ステップ１３４で否定）障害情報サーバ装置１８は予め登録されているバージョンの印刷処理プログラム（例えば、最新のバージョンの印刷処理プログラムや障害が発生したバージョンの一つ前のバージョンの印刷処理プログラム) を印刷装置１０へ向けて送信する。（ステップ１３５）。
【００７６】
障害情報サーバ装置１８で受信した障害情報の障害が初回でないときは、ステップ１７０で否定され、ステップ１７２へ進む。ステップ１７２では、最新バージョンでリカバリ処理済みか否か、すなわち以前に印刷装置１０に最新バージョンの印刷処理プログラムを送信したか否かを判断する。まだ最新バージョンの印刷処理プログラムを送信していないときは、ステップ１７２で否定され、次のステップ１８０において最新バージョンの印刷処理プログラムを送信する。一方、既に最新バージョンの印刷処理プログラムを送信しているときは、ステップ１７２で肯定され、次のステップ１７４で最新バージョンの直前（１つ前）のバージョンの印刷処理プログラムを送信してリカバリ処理が済んでいるか否かを判断する。
【００７７】
直前バージョンの印刷処理プログラムによるリカバリが未処理のときは、ステップ１７４で否定され、次のステップ１７８において最新バージョンの直前バージョンの印刷処理プログラムを送信する。一方、直前バージョンの印刷処理プログラムでのリカバリ処理済のときは、ステップ１７４で肯定され、次のステップ１７６において現在リカバリが困難であることを表す旨のメッセージを送信する。
【００７８】
このように、印刷装置１０で障害発生後の印刷のリカバリ中に、アップロードされた印刷処理プログラム内で再度障害が発生した場合に、印刷装置１０は再度障害情報を障害情報サーバ装置１８に送信する。障害情報サーバ装置１８は、印刷装置から送られた障害情報から障害に対するリカバリ回数に関する情報を取り出し、そのリカバリ回数に従い、アップロードするプログラムのバージョンを変更し、数回リカバリを試みることにより、印刷処理について自動的に修復することの可能性を高めることができる。
【００７９】
なお、上記において初めての障害であるか否かの判断には、印刷装置に発生した障害に対する印刷処理プログラムの送信の回数と、記憶させるべき印刷処理プログラムの版数を関連づけたテーブルを用意し、このテーブルを参照することが好ましい。これにより、記憶させた印刷処理プログラムで障害が回避されるまでテーブルに従って順次版数を増減させる等の印刷処理プログラムを障害情報を出力した印刷装置に向けて送信することが容易となる。
【００８０】
〔第６実施の形態〕
本実施の形態は、印刷装置で発生した障害が障害データベースに未登録の場合の対処について説明したものである。なお、本実施の形態は、上記実施の形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【００８１】
本実施の形態の障害情報サーバ装置１８では図１２の処理ルーチンが実行され、障害情報を受信し（ステップ１３０で肯定）、障害情報と登録済みの障害とを比較し（ステップ１３２）、一致する障害が登録されていない場合には（ステップ１３４で否定）、ステップ１３９へ進む。ステップ１３９では、障害判断部５２により、印刷装置１０からの受信した障害を障害データベースに登録する。この障害データべースの登録処理は、本発明の新規登録手段の処理に相当するものとして機能する。
【００８２】
このようにすることにより、印刷装置をプログラムに障害が発生したとき、障害情報サーバ装置１８に登録されていないような障害が発生した場合において、障害情報サーバ装置１８では、受信した障害の障害データベースへの登録により、新規の障害が発生したときに障害データベースヘの登録の簡易化を図ることができる。
【００８３】
【発明の効果】
以上説明したように本発明の印刷装置によれば、障害が発生したときに、障害情報を外部へ出力し、その出力に対して送られた障害が解消された印刷処理プログラムを受け取って障害発生以降の印刷イメージを生成するので、障害が解消された印刷が可能となる、という効果がある。
【００８４】
また、本発明の障害対処装置によれば、登録されている印刷装置で発生する障害と、障害が修復された印刷処理プログラムとの関係から、印刷装置からの障害情報を受信したときに、登録された関係に含まれた該当する関係の修復された印刷処理プログラムを障害情報を印刷装置に向けて送信するので、障害が発生した印刷装置には障害が修復された印刷処理プログラムが送信され、印刷装置において障害に対する修復作業所謂リカバリ処理を行うことができる、という効果がある。
【００８５】
また、障害復旧システムによれば、印刷装置がネットワークに接続されているので、障害情報はネットワーク上に容易に送出でき、その障害情報をネットワークに接続された障害対処装置で容易に受け取ることができ、障害に対する対処を容易に行うことができる、という効果がある。
【図面の簡単な説明】
【図１】  本発明の実施の形態にかかる、印刷装置と障害情報サーバ装置とをネットワークに接続した障害復旧システムの概略を示すブロック図である。
【図２】  第１実施の形態のメイン処理の流れを示すフローチャートである。
【図３】  第１実施の形態の割り込み処理の流れを示すフローチャートである。
【図４】  第１実施の形態の障害ハンドラ部の処理の流れを示すフローチャートである。
【図５】  第１実施の形態の障害情報サーバ装置の処理の流れを示すフローチャートである。
【図６】  第１実施の形態の印刷リカバリ部の処理の流れを示すフローチャートである。
【図７】  第２実施の形態の障害情報サーバ装置の処理の流れを示すフローチャートである。
【図８】  第２実施の形態の印刷リカバリ部の処理の流れを示すフローチャートである。
【図９】  第３実施の形態の処理の流れを示すフローチャートである。
【図１０】  第４実施の形態の処理の流れを示すフローチャートである。
【図１１】  第５実施の形態の処理の流れを示すフローチャートである。
【図１２】  第６実施の形態の処理の流れを示すフローチャートである。
【符号の説明】
１０    印刷装置
１２    印刷器
１４    印刷データ処理装置
１６    ホストコンピュータ
１８    障害情報サーバ装置
２０    ネットワークバス
【図１】
0003826593.tif 000005
【図２】
0003826593.tif 000006
【図３】
0003826593.tif 000007
【図４】
0003826593.tif 000008
【図５】
0003826593.tif 000009
【図６】
0003826593.tif 000010
【図７】
0003826593.tif 000011
【図８】
0003826593.tif 000012
【図９】
0003826593.tif 000013
【図１０】
0003826593.tif 000014
【図１１】
0003826593.tif 000015
【図１２】
0003826593.tif 000016