(57)【要約】【課題】  印刷装置の異常発生時において、異常の要因毎にそれぞれ個別に適切な処理モードが選択できる印刷装置、ホスト装置、印刷システム、プログラム、及び端末装置の制御方法を提供する。【解決手段】  印刷装置は、ホスト装置から送信されたデータに基づいて印刷を行う通常処理モードと、データを読み捨てる削除処理モードと、を有し、印刷装置の異常を検出すると共に異常の要因を判別する異常検出手段と、異常検出手段によって異常が検出されたとき、当該異常の要因のそれぞれに対応して予め指定された、通常処理モードの継続、又は削除処理モードへの移行を実行する削除処理モード移行手段と、を備える。ホスト装置は、印刷装置の異常の要因毎に、当該要因によって発生した異常に対応して実行する処理の処理モードを予め設定する、要因別処理モード設定手段を備える。印刷システムは、当該印刷装置及びホスト装置を備える。【選択図】    図３
2006343917.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置によって制御されて印刷を行う印刷装置であって、
前記ホスト装置から送信されたデータに基づいて印刷を行う通常処理モードと、
前記ホスト装置から送信された前記データを読み捨てる削除処理モードと、を有し、
異常の発生を検出する異常検出手段と、
前記異常の要因を判別する異常要因判別手段と、
前記通常処理モードにおいて、前記異常検出手段によって前記異常が検出されたとき、当該異常の前記要因のそれぞれに対応して予め指定された、前記通常処理モードの継続、又は前記削除処理モードへの移行を選択する要因別処理モード決定手段と、前記要因別処理モード決定手段により決定した処理モードを実行する削除処理モード移行手段と、
前記削除処理モードにおいて、前記ホスト装置からの印刷再開コマンドに従って、前記削除処理モードを終了し、前記通常処理モードに移行する通常処理モード移行手段と、を備えたことを特徴とする印刷装置。
【請求項２】
前記ホスト装置から送信された前記データを格納する受信バッファと、前記データが前記印刷装置の印刷ヘッドに供給される形式に処理されたイメージデータを格納するプリントバッファとを更に備え、
前記削除処理モード移行手段は、前記要因のそれぞれに対応して予め指定された破棄処理モードで、前記受信バッファ内の前記データ及び前記プリントバッファ内の前記イメージデータの処理を実行することを特徴とする、請求項１に記載の印刷装置。
【請求項３】
前記破棄処理モードは、
前記削除処理モードへの移行に伴い、前記受信バッファ内の前記データ及び前記プリントバッファ内の前記イメージデータを破棄しない第１破棄処理モードと、
前記削除処理モードへの移行に伴い、前記受信バッファ内の前記データ及び前記プリントバッファ内の前記イメージデータを破棄する第２破棄処理モードと、
前記削除処理モードへの移行に伴い、前記プリントバッファ内の前記イメージデータを破棄し、前記受信バッファ内の前記データを保持する第３破棄処理モードと、を含むことを特徴とする、請求項２に記載の印刷装置。
【請求項４】
前記要因のそれぞれに対応する前記通常処理モードの継続、又は前記削除処理モードへの移行を予め指定する異常発生時モード選択コマンドは、
少なくとも、前記要因を指定する第１のパラメータと、
前記通常処理モードの継続、又は前記削除処理モードへの移行のいずれかを指定する第２のパラメータと、を含み、
前記第１のパラメータは、前記要因の全てを指定する値を含むことを特徴とする、請求項１乃至３のいずれか１項に記載の印刷装置。
【請求項５】
新たに受信した前記破棄処理モード選択コマンド又は前記処理モード選択コマンドで指定された設定値が、既に指定されて記憶装置に記憶されている設定値と同一の場合には、前記記憶装置に記憶されている前記設定値を保持し、前記記憶装置に記憶されている前記設定値の書替えを実行しないことを特徴とする、請求項１乃至４のいずれか１項に記載の印刷装置。
【請求項６】
印刷装置を制御するホスト装置であって、
前記印刷装置の異常の要因毎に、当該要因によって発生した前記異常に対応して実行する処理の処理モードを予め設定する、要因別処理モード設定手段を備えることを特徴とするホスト装置。
【請求項７】
前記要因別処理モード設定手段が前記印刷装置に対して前記要因のそれぞれに対応する処理モードを予め指定するための処理モード選択コマンドは、少なくとも、前記要因を指定する第１のパラメータと、前記処理モードを指定する第４のパラメータとを含み、前記第１のパラメータは、前記要因の全てを指定する値を含むことを特徴とする、請求項６に記載のホスト装置。
【請求項８】
請求項１乃至５のいずれか１項に記載の印刷装置と、請求項６又は７に記載のホスト装置とを備えることを特徴とする印刷システム。
【請求項９】
コンピュータを、請求項１乃至５のいずれか１項に記載の印刷装置の各手段として機能させるためのプログラム。
【請求項１０】
コンピュータを、請求項６又は７に記載のホスト装置、又は請求項８に記載の印刷システムにおける前記ホスト装置の各手段として機能させるためのプログラム。
【請求項１１】
ホスト装置によって制御されて処理を行い、前記ホスト装置から送信されたデータに基づいて処理を行う通常処理モードと、前記ホスト装置から送信された前記データを読み捨てる削除処理モードと、を有する端末装置の制御方法であって、
前記端末装置の異常を検出すると共に、前記異常の要因を判別する異常検出工程と、
前記通常処理モードにおいて、前記異常検出手段によって前記異常が検出されたとき、当該異常の前記要因のそれぞれに対応して予め指定された、前記通常処理モードの継続、又は前記削除処理モードへの移行を実行する削除処理モード移行工程と、
前記ホスト装置からの処理再開コマンドに従って、前記削除処理モードを終了し、前記通常処理モードに移行する通常処理モード移行工程と、を有することを特徴とする端末装置の制御方法。
【請求項１２】
前記ホスト装置から送信された前記データは、受信バッファに格納され、前記データが前記処理装置の処理ヘッドに供給される形式に処理された処理形式データは、処理バッファに格納され、
前記削除処理モード移行工程において、前記要因のそれぞれに対応して予め指定された破棄処理モードで、前記受信バッファ内の前記データ及び前記処理バッファ内の前記処理データの処理を実行することを特徴とする、請求項１１に記載の端末装置の制御方法。
【請求項１３】
前記削除処理モード移行工程における前記破棄処理モードは、前記受信バッファ内の前記データ及び前記プリントバッファ内の前記イメージデータを破棄しない第１破棄処理モードと、
前記削除処理モードへの移行に伴い、前記受信バッファ内の前記データ及び前記プリントバッファ内の前記イメージデータを破棄する第２破棄処理モードと、
前記削除処理モードへの移行に伴い、前記イメージデータを破棄し、前記受信バッファ内の前記データを保持する第３破棄処理モードと、を含むことを特徴とする、請求項１２に記載の端末装置の制御方法。
【請求項１４】
前記端末装置は印刷装置であり、前記データには印刷データが含まれることを特徴とする、請求項１１乃至１３のいずれか１項に記載の端末装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信したデータに基づいて印刷を行う印刷装置、当該印刷装置に前記データを送信して当該印刷装置を制御するホスト装置、前記印刷装置と前記ホスト装置とを含む印刷システム、当該印刷システムの一部又は全部を機能させるためのプログラム、及び当該印刷システムを構成する端末装置の制御方法に関するものである。
【背景技術】
【０００２】
従来、上記した印刷装置に、用紙切れやカバーオープンや紙ジャムなどの要因が発生し、印刷が実行できない異常の状態となった場合、例えば、特許文献１に記載されているように、以下のような手順で印刷装置の異常状態からの復帰処理を行っている。
（１）印刷装置は、異常発生のステータスをホスト装置に送信し、予め指定されている処理モードに従い未印字データの処理を実行する。処理モードとしては、以下のモードが選択指定可能である。
（ａ）受信バッファおよびプリントバッファ内のデータを保持し、削除処理モードに移行せず、通常処理モードを継続する。
（ｂ）受信バッファおよびプリントバッファ内のデータを破棄し、削除処理モードに移行する。
（２）印刷装置の状態監視を行っているホスト装置は、印刷装置からの異常発生ステータス取得により、データの送信を一時中止する。
（３）印刷装置は、異常要因が解除されたことを検出した後、異常解除のステータスをホスト装置に送信し、正常状態に復帰する。このとき、上記（ａ）のように受信バッファ内に未処理データがある場合には、当該未処理データの処理を実行する。
（４）ホスト装置は、印刷装置からの異常解除のステータスを受信して、選択指定した未印刷データの処理モードに対応する、未送信データの処理を実行する。上記（ａ）の処理モードを指定した場合には、（ｃ）異常が復帰した後、既送信データの続きの未送信データから送信を再開する。上記（ｂ）の処理モードを指定した場合には、（ｄ）異常が復帰した後、未送信データを破棄し、既送信データの最初から、全データを再送信する。
【０００３】
【特許文献１】特開２００５−７７６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、異常を発生させる要因は様々であり、要因によって適切な処理モードが異なるが、特許文献１に開示された装置又は方法においては、全要因に対して同一の処理モードを指定することから、全ての要因に対して、処理モードが必ずしも適切ではないという課題があった。
【０００５】
例えば、以下のような不適切な処理モードが選択されることに起因する課題があった。異常の要因が連続用紙の用紙切れの場合には、既印刷部分と新たな用紙とは分離されてしまうことから、新たな用紙に改めて既印刷部分の先頭から印刷することが好ましい。異常の要因がカバーオープンであって、カバーが閉じられるとそのまま正常状態に戻るような構造の印刷装置においては、既印刷部分に続けて未印刷データの印刷を実行することが好ましい。
【０００６】
上記（ａ）の処理モードが指定されており、異常の要因が連続用紙の用紙切れの場合には、新しい用紙がセットされて用紙切れが解除されると、ホスト装置からのデータ送信が再開され、既送信データの続きの「未送信データ」の送信が実行され、新しい用紙に、再開後送信された「未送信データ」に対応する印刷のみが実行される。印刷結果が用紙切れ前の用紙と新しい用紙とに分断されており、改めて最初から印刷することが必要である。従って、新しい用紙に実行された「未送信データ」に対応する印刷に要する時間、消費される用紙、及び消費される例えば印刷用インクなどの消耗品が、無駄に消費されるという課題があった。上記（ｂ）の処理モードが指定されており、異常の要因が上記したカバーオープンである場合には、カバーが閉じられてカバーオープンが解除されると、ホスト装置からのデータ送信が再開され、「未送信データ」は破棄されて、「既送信データ」の最初から、全データが再送信され、「既送信データ」に対応して既に印刷されたものも含む、全データに対応する印刷が実行される。「既送信データ」に対応して既に印刷されたものに続けて「未送信データ」に対応する印刷が実行されることで全データに対応する印刷が実行できるにもかかわらず、全データに対応する印刷が実行されることで、「既送信データ」に対応して既に実行された印刷に要した時間、消費された用紙、及び消費された例えば印刷用インクなどの消耗品が、全て無駄になるという課題があった。
【０００７】
そこで、本発明は、上記の問題点に鑑み、印刷装置の異常発生時において、異常の要因毎にそれぞれ個別に適切な処理モードが選択できる印刷装置、ホスト装置、印刷システム、プログラム、及び端末装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の印刷装置は、ホスト装置によって制御されて印刷を行う印刷装置であって、ホスト装置から送信されたデータに基づいて印刷を行う通常処理モードと、ホスト装置から送信されたデータを読み捨てる削除処理モードと、を有し、印刷装置は異常の発生を検出する異常検出手段と、異常の要因を判別する異常要因判別手段と、通常処理モードにおいて、異常検出手段によって異常が検出されたとき、当該異常の要因のそれぞれに対応して予め指定された、通常処理モードの継続、又は削除処理モードへの移行を選択する要因別処理モード決定手段と、要因別処理モード決定手段により決定した処理モードを実行する削除処理モード移行手段と、削除処理モードにおいて、ホスト装置からの印刷再開コマンドに従って、削除処理モードを終了し、通常処理モードに移行する通常処理モード移行手段と、を備えたことを特徴とする。
【０００９】
この構成によれば、削除処理モード移行手段が、異常の要因のそれぞれに対応して予め指定された、通常処理モードの継続、又は削除処理モードへの移行を実行することで、個々の要因に対応した適切な処理モードを実行することができる。印刷装置の異常が検出されたとき、データを読み捨てる削除処理モードに移行することで、ホスト装置のデータ送信中止処理に間に合わなかったデータや、通信途上のデータが存在した場合でも、異常が解除されて印刷が再開されたときに、これらのデータに従って不必要な印刷が実行されることを回避することができる。また、印刷装置の異常が検出されたとき、通常処理モードを継続することで、異常が解除されて印刷が再開されたときに、異常が発生する前に実行された印刷に続く印刷を実行し、異常が発生する前後で連続した印刷結果を実現することができる。
【００１０】
この場合、印刷装置は、ホスト装置から送信されたデータを格納する受信バッファと、データが印刷装置の印刷ヘッドに供給される形式に処理されたイメージデータを格納するプリントバッファとを更に備え、削除処理モード移行手段は、要因のそれぞれに対応して予め指定された破棄処理モードで、受信バッファ内のデータ及びプリントバッファ内のイメージデータの処理を実行することが好ましい。
【００１１】
この構成によれば、個々の要因に対応した適切な破棄処理モードで、受信バッファ内のデータ及びイメージデータの破棄処理を実行することができる。例えば、削除処理モードへの移行に伴い、データ及びイメージデータを破棄する破棄処理モードを実行することで、削除処理モードにおいて、受信バッファ内のデータを削除するのに要する時間を短縮することができる。また、通常処理モードを継続するのに伴い、データ及びイメージデータを破棄しない破棄処理モードを実行することで、ホスト装置から印刷装置に送信されていたデータを維持することができる。
【００１２】
この場合、破棄処理モードは、削除処理モードへの移行に伴い、受信バッファ内のデータ及びプリントバッファ内のイメージデータを破棄しない第１破棄処理モードと、削除処理モードへの移行に伴い、受信バッファ内のデータ及びプリントバッファ内のイメージデータを破棄する第２破棄処理モードと、削除処理モードへの移行に伴い、プリントバッファ内のイメージデータを破棄し、受信バッファ内のデータを保持する第３破棄処理モードと、を含むことが好ましい。
【００１３】
この構成によれば、データ及びイメージデータを破棄しない第１破棄処理モードを選択することで、ホスト装置から印刷装置に送信されていたデータを維持することができる。削除処理モードへの移行に伴い、データ及びイメージデータを破棄する第２破棄処理モードを選択することで、削除処理モードにおいて、受信バッファ内のデータを削除するのに要する時間を短縮することができる。第３破棄処理モードを選択することで、受信バッファ内のデータを保持したまま、削除処理モードへ移行するため、ホスト装置のデータ送信中止処理に間に合わなかったデータや、通信途中のデータの中に印刷再開コマンドが含まれていた場合に、当該印刷再開コマンドによって通常処理モードに移行することができる。したがって、例えばページ毎に印刷再開コマンドが組み込まれたデータに基づいて印刷を行う場合は、異常発生頁の次の頁から印刷を再開することができる。
【００１４】
この場合、要因のそれぞれに対応する通常処理モードの継続、又は削除処理モードへの移行を予め指定する異常発生時モード選択コマンドは、少なくとも、要因を指定する第１のパラメータと、通常処理モードの継続、又は削除処理モードへの移行のいずれかを指定する第２のパラメータと、を含み、第１のパラメータは、要因の全てを指定する値を含むことが好ましい。
【００１５】
この構成によれば、コマンドが、要因を指定する第１のパラメータと、通常処理モードの継続、又は削除処理モードへの移行のいずれかを指定する第２のパラメータと、を有することで、各要因にそれぞれ対応させて、通常処理モードの継続、又は削除処理モードへの移行を指定することができる。また、第１のパラメータが、要因の全てを指定する値を有することで、全ての要因において同一の処理をすることが適当である印刷装置に対する、ホスト装置におけるセットアップ時の処理を効率よく実行することができる。
【００１６】
この場合、印刷装置は、新たに受信した破棄処理モード選択コマンド又は処理モード選択コマンドで指定された設定値が、既に指定されて記憶装置に記憶されている設定値と同一の場合には、記憶装置に記憶されている設定値を保持し、記憶装置に記憶されている設定値の書替えを実行しないことが好ましい。
【００１７】
この構成によれば、指定された設定値が記憶されている設定値と同じ場合には書替えが実行されないことから、記憶装置への書き込み回数の増加を抑制することができる。記憶装置として、例えばフラッシュメモリのような書き込み回数に寿命がある装置を使用する場合に有効である。
【００１８】
本発明のホスト装置は、印刷装置を制御するホスト装置であって、印刷装置の異常の要因毎に、当該要因によって発生した異常に対応して実行する処理の処理モードを予め設定する、要因別処理モード設定手段を備えることを特徴とする。
【００１９】
この構成によれば、印刷装置が異常状態になったときの対応処理を、各異常要因毎に指定して、印刷装置に実行させることができる。
【００２０】
この場合、ホスト装置は、要因別処理モード設定手段が印刷装置に対して要因のそれぞれに対応する処理モードを予め指定するための処理モード選択コマンドは、少なくとも、要因を指定する第１のパラメータと、処理モードを指定する第４のパラメータとを含み、第１のパラメータは、要因の全てを指定する値を含むことが好ましい。
【００２１】
この構成によれば、処理モード選択コマンドが、要因を指定する第１のパラメータと、処理モードを指定する第４のパラメータとを有することで、各要因にそれぞれ対応させて、異常発生に対応する処理モードを指定することができる。また、第１のパラメータが、要因の全てを指定する値を有することで、全ての要因において同一の処理モードを選択することが適当である印刷装置に対する、ホスト装置におけるセットアップ時の処理を効率よく実行することができる。
【００２２】
本発明の印刷システムは、上記請求項のいずれか１項に記載の印刷装置と、上記請求項のいずれか１項に記載のホスト装置とを備えることを特徴とする。
【００２３】
この構成によれば、印刷システムを構成する印刷装置に発生した異常の要因に応じて、適切な処理モードを選択し、適切な処理を実行することができる。
【００２４】
本発明のプログラムは、コンピュータを、上記請求項のいずれか１項に記載の印刷装置の各手段として機能させるためのものであることを特徴とする。
【００２５】
この構成によれば、印刷システムを構成する印刷装置に発生した異常の要因に応じて、適切な処理モードを選択し、異常に対応する適切な処理を実行することができる。
【００２６】
本発明の他のプログラムは、コンピュータを、上記請求項のいずれか１項に記載のホスト装置、又は上記請求項のいずれか１項に記載の印刷システムにおけるホスト装置の各手段として機能させるためのものであることを特徴とする。
【００２７】
この構成によれば、印刷システムを構成する印刷装置に発生した異常の要因に応じて、適切な処理モードを選択し、異常に対応する適切な処理を実行するとともに、印刷装置に、異常の要因に応じて、異常に対応する適切な処理を実行させることができる。
【００２８】
本発明の端末装置の制御方法は、ホスト装置によって制御されて処理を行い、ホスト装置から送信されたデータに基づいて処理を行う通常処理モードと、ホスト装置から送信されたデータを読み捨てる削除処理モードと、を有する端末装置の制御方法であって、端末装置の異常を検出すると共に、異常の要因を判別する異常検出工程と、通常処理モードにおいて、異常検出手段によって異常が検出されたとき、当該異常の要因のそれぞれに対応して予め指定された、通常処理モードの継続、又は削除処理モードへの移行を実行する削除処理モード移行工程と、ホスト装置からの処理再開コマンドに従って、削除処理モードを終了し、通常処理モードに移行する通常処理モード移行工程と、を有することを特徴とする。
【００２９】
この構成によれば、削除処理モード移行手段が、異常の要因のそれぞれに対応して予め指定された、通常処理モードの継続、又は削除処理モードへの移行を実行することで、個々の要因に対応した適切な処理モードを実行することができる。端末装置の異常が検出されたとき、データを読み捨てる削除処理モードに移行することで、ホスト装置のデータ送信中止処理に間に合わなかったデータや、通信途上のデータが存在した場合でも、異常が解除されて処理が再開されたときに、これらのデータに従って不必要な処理が実行されることを回避することができる。また、端末装置の異常が検出されたとき、通常処理モードを継続することで、異常が解除されて処理が再開されたときに、異常が発生する前に実行された処理に続く処理を実行し、異常が発生する前後で連続した処理結果を実現することができる。なお、「処理再開コマンド」とは、上記の印刷装置における「印刷再開コマンド」に相当するものである。
【００３０】
この場合、端末装置の制御方法は、ホスト装置から送信されたデータは、受信バッファに格納され、データが処理装置の処理ヘッドに供給される形式に処理された処理形式データは、処理バッファに格納され、削除処理モード移行工程において、要因のそれぞれに対応して予め指定された破棄処理モードで、受信バッファ内のデータ及び処理バッファ内の処理データの処理を実行することが好ましい。
【００３１】
この構成によれば、個々の要因に対応した適切な破棄処理モードで、受信バッファ内のデータ及びイメージデータの破棄処理を実行することができる。削除処理モードへの移行に伴い、データ及びイメージデータを破棄することで、削除処理モードにおいて、受信バッファ内のデータを削除するのに要する時間を短縮することができる。通常処理モードを継続するのに伴い、データ及びイメージデータの破棄を実行しないことで、ホスト装置から端末装置に既に送信されていたデータを維持することができる。
【００３２】
この場合、削除処理モード移行工程における破棄処理モードは、受信バッファ内のデータ及びプリントバッファ内のイメージデータを破棄しない第１破棄処理モードと、削除処理モードへの移行に伴い、受信バッファ内のデータ及びプリントバッファ内のイメージデータを破棄する第２破棄処理モードと、削除処理モードへの移行に伴い、イメージデータを破棄し、受信バッファ内のデータを保持する第３破棄処理モードと、を含むことが好ましい。
【００３３】
この構成によれば、データ及びイメージデータを破棄しない第１破棄処理モードを選択することで、ホスト装置から端末装置に既に送信されていたデータを維持することができる。削除処理モードへの移行に伴い、データ及びイメージデータを破棄する第２破棄処理モードを選択することで、削除処理モードにおいて、受信バッファ内のデータを削除するのに要する時間を短縮することができる。第３破棄処理モードを選択することで、受信バッファ内のデータを保持したまま、削除処理モードへ移行するため、ホスト装置のデータ送信中止処理に間に合わなかったデータや、通信途上のデータの中に印刷再開コマンドが含まれていた場合に、当該印刷再開コマンドによって通常処理モードに移行することができる。
【００３４】
これらの場合、端末装置は印刷装置であり、データには印刷データが含まれることが好ましい。
【００３５】
この構成によれば、印刷システムを構成する端末としての印刷装置に発生した異常の要因に応じて、適切な処理モードを選択し、異常に対応する適切な処理を実行することができる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明の一実施形態に係る印刷装置、ホスト装置、印刷システム、プログラム、及び端末装置の制御方法について、添付図面を参照しながら詳細に説明する。本発明では、ホスト装置によって制御されて印刷を行う印刷装置が、印刷装置自身の異常を検出すると共に当該異常の要因を検出し、当該異常の要因のそれぞれに対応して予め指定された、通常処理モードの継続、又は削除処理モードへの移行を実行する。これにより、異常の発生に際して、個々の要因に対応した適切な処理モードを実行することができる。
【００３７】
そこで、以下、ＰＯＳ（Point Of Sale）システムにおいて用いられるホスト装置（レジ端末）と、印刷装置（レシートプリンタ）を例に挙げて、印刷装置および印刷システムについて説明する。また、本発明のプログラムは、上記のホスト装置および印刷装置を機能させるためのものであるため、プログラムについての記載は省略する。また、本発明の端末装置の制御方法は、印刷装置の説明に含めるものとして、これについての記載も省略する。
【００３８】
図１は本発明の一実施形態に係る印刷システム（ＰＯＳシステム）の構成を示す図である。同図に示すように、本実施形態の印刷システム１は、オペレータによる商品情報の入力に基づいて会計処理を行うと共に、レシートや領収書等として用いられる印刷データを生成するホスト装置１０と、当該ホスト装置１０から送信された印刷データおよび制御データに基づいて印刷を行う印刷装置２０と、複数のホスト装置１０（ＰＯＳ端末）と接続され（図１に示す例では１台のみ図示）、これらホスト装置１０を統括制御するＰＯＳサーバ３０と、によって構成されている。そして、ホスト装置１０と印刷装置２０とがセットとなり、一人のオペレータの操作対象となる１台のＰＯＳ端末を構成している。
【００３９】
ホスト装置１０は、本体ケース１８の前部上面にオペレータが商品情報を手入力するキーボード１４と、その後部右側にオペレータが入力情報を確認するオペレータ用ディスプレイ１７ａとを配置し、本体ケース１８内にはキャッシュドロア１８ａが収納されている。また、本体ケース１８の右側側面には商品に貼付されたバーコードを読みとるためのバーコードスキャナ１６、キーボード１４の右側には、顧客から提示されたクレジットカードを読みとるためのカードリーダ１５（カードリーダ用スロット）が形成されている。さらに、本体ケース１８の背面側には、顧客が商品情報等を確認するための顧客用ディスプレイ１７ｂが配置されている。
【００４０】
そして、ホスト装置１０は、キーボード１４やバーコードスキャナ１６により入力された商品情報に基づいて、印刷データを生成して印刷装置２０に送信する。また、ホスト装置１０は、印刷装置２０からのステータス情報やレスポンスを受信し、異常発生の有無や処理モード（通常処理モード又は削除処理モード：後述する）の確認など印刷装置２０の状態監視を行うと共に、印刷装置２０を制御するための各種制御データおよびコマンドを送信する。
【００４１】
一方、印刷装置２０は、前部が開口した筐体２１と、前部開口を開閉自在に覆蓋するカバー２２を備え、当該カバー２２を開放することによって、連続用紙Ｐ（図示省略）の交換および内部の保守、点検が可能となっている。連続用紙Ｐは、巻回された状態で、印刷装置内部の用紙収容部２５に収納されている。また、用紙収容部２５から繰り出された連続用紙Ｐは、カバー２２に形成された排紙口２４から筐体２１外へ導かれる。また、排紙口２４の内側にはカッタ機構（図示省略）を備えている。
【００４２】
また、印刷装置２０は、コネクタ等を介してホスト装置１０と接続されており、当該ホスト装置１０からの印刷指示にしたがって、レシートや領収書の発行処理を行う。すなわち、ホスト装置１０からの印刷指示により、印刷ヘッド１２２、インク供給部１２５（いずれも図４参照）を制御してキャラクタ（文字や記号など）および絵柄等の印刷を行い、紙送りモータ１２４（図４参照）を駆動して連続用紙Ｐを排紙口２４に搬送する。そして、印刷を完了すると、排紙口２４の内側に配置されたカッタ機構（図示省略）により切断分離する。連続用紙Ｐから切断分離されたシートは、排紙口２４から排出された後、利用者に提供される。
【００４３】
また、筐体２１の前面には、印刷装置２０内の各種異常要因を表示する複数のエラーＬＥＤ２３が備えられており、用紙収容部２５に収容された連続用紙Ｐを使い切った場合（用紙切れとなった場合）、インク切れの場合、その他紙ジャムなど印刷続行が困難となるエラーが発生した場合は、それぞれの異常要因に対応したエラーＬＥＤ２３を点灯または点滅することにより異常発生を表示する。
【００４４】
次に、図２を参照してホスト装置１０の制御構成について説明する。図２は、ホスト装置の機能ブロック図である。図２に示すとおり、ホスト装置１０は、印刷装置２０とのデータの送受信を行うインタフェース３１と、印刷装置２０から受信したステータスやレスポンス等のデータを格納する受信バッファとして機能するデータ受信部３２と、印刷装置２０の異常発生時における処理モード（通常処理モード又は削除処理モード）を予め設定するためのコマンドの生成など、各種モード設定のための処理を行う要因別モード設定部３３と、印刷装置２０から受信したステータス情報やレスポンス等に基づき、印刷装置２０の状態監視を行う状態監視部３４と、連続用紙Ｐに印刷するための印刷データを生成する印刷データ生成部３５と、印刷装置２０における削除処理モードを終了させるための印刷再開コマンドを生成する印刷再開コマンド生成部３６と、ホスト装置１０全体を制御する制御部３７と、各種コマンドや印刷データを送信するデータ送信部３８（アプリケーションが管理するデータバッファ、およびＯＳが管理する送信バッファとしても機能する）と、を備えている。
【００４５】
要因別モード設定部３３は、印刷装置２０の異常発生時における処理モードを、上記した用紙切れやインク切れやエラーなどの異常の要因毎に、それぞれ個別に設定する。印刷装置２０の異常発生時に実行する各処理の詳細は、後述する。
【００４６】
状態監視部３４は、印刷装置２０からＡＳＢ（Automatic Status Back）ステータスを受信することにより、用紙切れやインク切れ等の印刷装置２０の状態を監視する。また、プロセスＩＤレスポンス、削除処理開始レスポンス、削除処理終了レスポンス等により、印刷装置２０におけるデータ処理の進行状況を監視する。なお、プロセスＩＤレスポンスとは、ホスト装置１０が制御コマンドや印刷データに任意に挿入して印刷装置２０に送信したプロセスＩＤに応じて送信されるレスポンスであり、当該制御コマンドや印刷データが印刷装置２０によって処理されたことを示すものである。これにより、ホスト装置１０は、印刷装置２０の内部実行状況と同期を取りながらデータ送信を行うことができる。また、削除処理開始レスポンスおよび削除処理終了レスポンスは、印刷装置２０において削除処理モードが開始したことおよび終了したこと（通常処理モードに復帰したこと）を示すレスポンスであり、これによりホスト装置１０は、印刷装置２０の処理モードを確認することができる。なお、印刷装置２０の処理モードおよびこれらのレスポンスについては、後に詳述する。
【００４７】
制御部３７は、印刷装置２０が通常処理モードの場合は、通常の処理（印刷データや制御コマンドの送信）を行う。また、状態監視部３４により印刷装置２０が削除処理モードに移行したことを検出したとき（削除処理開始レスポンスを取得したとき）、その時点で実行しているデータ送信処理を停止する。また、印刷装置２０から異常解除のステータスを受信したとき、印刷再開コマンド生成部３６へ処理を移し、印刷再開コマンドを送信する。その後、状態監視部３４により印刷装置２０が通常処理モードに復帰したことを検出したとき（削除処理終了レスポンスを取得したとき）、印刷データの送信処理を再開する。
【００４８】
次に、図３を参照して印刷装置２０の制御構成について説明する。図３は印刷装置の機能ブロック図である。図３に示すとおり、印刷装置２０は、ホスト装置１０とのデータの送受信を行うインタフェース４１と、受信した印刷データや制御コマンドを格納する受信バッファ２４２（図４参照）として機能するデータ受信部４２と、ホスト装置１０から受信した印刷再開コマンドや印刷装置２０の異常検出に基づいて、処理モードを判定し、判定した処理モードに対応する通常処理モード制御部４４又は削除処理モード制御部４５に処理を移す処理モード判定部４３と、当該処理モード判定部４３により通常処理モードと判定された場合に制御を行う通常処理モード制御部４４と、同じく処理モード判定部４３により削除処理モードと判定された場合に制御を行う削除処理モード制御部４５と、異常発生時における処理モードを決定するためのホスト装置１０からの指定値（コマンド）を記憶する要因別処理モード記憶部４６と、カバー検出センサ１４２、用紙検出センサ１４３及びインク残量検出センサ１４４（いずれも図４参照）等の状態を検出して、印刷装置２０内の異常の有無および異常要因を検出する要因検出部４７ａと、要因検出部４７ａの検出結果を監視することで印刷装置２０が印刷続行可能な状態であるか否かを監視する状態監視部４７と、ホスト装置１０から送信された印刷データに基づいて生成されたイメージデータを格納するプリントバッファ２４５（図４参照）として機能し、かつ印刷制御を行う印刷制御部４８と、ホスト装置１０に送信する各種ステータスやレスポンスを生成するステータス／レスポンス生成部４９と、ステータス／レスポンス生成部４９により生成された各種ステータスやレスポンスを、ホスト装置１０に送信するデータを格納する送信バッファ２４３（図４参照）として機能するデータ送信部５０と、を備えている。要因検出部４７ａが、異常検出手段と要因判別手段とに相当する。
【００４９】
通常処理モード制御部４４は、印刷装置２０が正常に印刷できる通常処理モードの状態において、ホスト装置１０から受信した印刷データや各種コマンドの処理を実行する。また、通常処理モード制御時において、印刷再開コマンドを受信した場合は、これを破棄する。印刷装置２０に異常が発生した場合は、処理モード判定部４３が、検出された異常の要因に対応して、処理モードを判定し、削除処理モードに移行することが指定された異常要因の場合には、削除処理モード制御部４５に処理を移す。
【００５０】
また、削除処理モード制御部４５は、削除処理モードに移行したときに、ホスト装置１０に削除処理開始レスポンスを送信すると共に、ホスト装置１０から印刷再開コマンドを受信したときに、削除処理終了レスポンスを送信し、その後通常処理モード制御部４４に処理を移す。また、削除処理モード制御部４５は、削除処理モードの処理対象となっている特定のコマンド（印刷再開コマンド、処理モード（通常処理モード又は削除処理モード）確認コマンド、印刷装置の状態通知要求コマンド、紙ジャムなどのエラーを復帰するためのエラー復帰コマンド）のみを実行し、これら以外のコマンドや印刷データは読み捨て処理を行う。
【００５１】
また、ステータス／レスポンス生成部４９は、状態監視部４７で検出した印刷装置２０の状態を通知するＡＳＢステータスや、データの処理状況を通知する、プロセスＩＤレスポンス、削除処理開始レスポンス、削除処理終了レスポンス等の各種レスポンスを生成する。
【００５２】
次に、図４を参照して印刷装置２０の制御を司る構成について説明する。図４は、印刷装置の制御構成を示す制御ブロック図である。図４に示すように、印刷装置２０は、エラーＬＥＤ２３を有し、印刷装置２０における異常状態を表示する表示部１１０と、印刷ヘッド１２２と、紙送りモータ１２４により連続用紙Ｐを搬送する用紙送り部１２３と、インクカートリッジ１２６からインクを供給するインク供給部１２５とを有し、ホスト装置１０から送信された印刷データに基づいて印刷を行う印刷部１２０と、用紙カッタ１３２とこれを駆動するカッタモータ１３１とを有し、連続用紙Ｐの印刷済み部分の後端を切断する切断部１３０と、カバー２２の開閉（カバーオープン又はカバークローズ）を検出するカバー検出センサ１４２と、連続用紙Ｐの有無を検出する用紙検出センサ１４３と、インクカートリッジ１２６内のインク残量を検出するインク残量検出センサ１４４とを有し、各種検出を行う検出部１４０と、ヘッドドライバ１５２およびモータドライバ１５３（送りモータドライバ１５３ａ、カッタモータドライバ１５３ｂ）を有し、各部を駆動する駆動部１５０と、各部と接続され、印刷装置２０全体を制御する制御部２００と、を備えている。
【００５３】
制御部２００は、ＣＰＵ２１０、ＲＯＭ２２０、キャラクタジェネレータＲＯＭ（ＣＧ−ＲＯＭ）２３０、ＲＡＭ２４０、フラッシュＲＯＭ２５０および入出力制御装置（以下、「ＩＯＣ（Input Output Controller）」と表記する。）２６０を備え、当該各装置は、互いに内部バス２７０により接続されている。ＲＯＭ２２０は、処理モードに応じた制御を行うためのプログラムの他、ＣＰＵ２１０で処理する各種プログラムを記憶する制御プログラムブロック２２１と、各種テーブルや制御データを記憶する制御データブロック２２２とを有している。また、ＣＧ−ＲＯＭ２３０は、文字や記号のフォントデータを記憶しており、文字等を特定するコードデータが与えられると、対応するフォントデータを出力する。なお、ホスト装置１０の処理能力に応じて、ＣＧ−ＲＯＭ２３０を省略した構成としても良い。
【００５４】
ＲＡＭ２４０は、フラグ等として使用される各種ワークエリアブロック２４１の他、ホスト装置１０から受信した印刷データ等を記憶するデータ受信部４２（図３参照）として機能する受信バッファ２４２と、ホスト装置１０に送信するステータスおよび各種レスポンスを記憶するデータ送信部５０（図３参照）として機能する送信バッファ２４３と、異常発生時モード選択コマンド（図５（ａ）参照）の指定値を記憶する要因別処理モード記憶部４６（図３参照）として機能する異常発生時モードブロック２４４と、印刷するためのイメージデータを記憶するプリントバッファ２４５と、を有し、作業領域として使用される。
【００５５】
フラッシュＲＯＭ２５０は、起動時モード選択コマンドの指定値を記憶する要因別処理モード記憶部４６（図３参照）として機能する起動時モードブロック２５１と、用紙検出センサ１４３で検出した検出結果に基づいて特定された用紙種類に関するデータを記憶する用紙種類データブロック２５２と、を有する。用紙種類としては、連続用紙、単票用紙、特定用途向け用紙などがある。当然、フラッシュＲＯＭ２５０はフラッシュＲＯＭであるため、電源をオフしてもこれら記憶したデータを失うことはない。なお、用紙種類の設定は、用紙検出センサ１４３で検出した検出結果に基づいて設定する構成の他に、ホスト装置１０からの制御データに基づいて設定する構成でも良いし、印刷装置２０に備えられたディップスイッチを手作業で操作してセットし、当該セット状態に基づいて設定する構成でもよい。
【００５６】
ＩＯＣ２６０には、ＣＰＵ２１０の機能を補うと共に各種周辺回路とのインタフェース信号を取り扱うための論理回路が、ゲートアレイやカスタムＬＳＩなどにより構成されて組み込まれている。これにより、ＩＯＣ２６０は、ホスト装置１０からの印刷データや制御データをそのまま或いは加工して内部バス２７０に取り込む。
【００５７】
そして、ＣＰＵ２１０は、上記の構成により、ＲＯＭ２２０内の制御プログラムにしたがって、ＩＯＣ２６０を介してホスト装置１０および印刷装置２０内の各部から各種信号やデータを入力し、ＣＧ−ＲＯＭ２３０からのフォントデータ、ＲＡＭ２４０内の各種データを処理し、ＩＯＣ２６０を介して印刷装置２０内の各部に、各種信号やデータを出力することにより、ホスト装置１０から送信された制御コマンドに応じたモード移行や印刷処理等の制御を行う。
【００５８】
次に、ホスト装置１０から印刷装置２０に送信される制御コマンドについて説明する。図５は、制御コマンドの一例を示す説明図である。図５（ａ）に示すように、異常発生時における処理を決定するための異常発生時モード選択コマンドは、「ＥＳＣ  Ａ  ｍ１  ｍ２  ｍ３」で表される。最初に、パラメータｍ１について説明する。ｍ１＝０の場合（第１処理モード）は、異常発生時において、処理モード判定部４３は、削除処理モードに移行しないと判定する。この場合、受信バッファ２４２およびプリントバッファ２４５内に蓄積された印刷が完了していないデータを保持する。また、ｍ１＝１の場合（第２処理モード）は、異常発生時において、処理モード判定部４３は、削除処理モードに移行すると判定し、削除処理モード制御部４５に処理を移す。削除処理モード制御部４５は、削除処理モードの各処理を実行すると共に、受信バッファ２４２およびプリントバッファ２４５内に蓄積された印刷が完了していないデータを一括破棄する。また、ｍ１＝２の場合（第３処理モード）は、異常発生時において、処理モード判定部４３は、削除処理モードに移行すると判定し、削除処理モード制御部４５に処理を移す。削除処理モード制御部４５は、削除処理モードの各処理を実行すると共に、プリントバッファ２４５内に蓄積された印刷が完了していないデータを一括破棄し、受信バッファ２４２内に蓄積された印刷が完了していないデータを保持する。
【００５９】
このように、パラメータｍ１を変化させることにより、異常発生時の適切な処理モードを選択することができる。すなわち、第１処理モード（ｍ１＝０）を選択すると、異常が解除された後、異常発生前に実行した印刷のデータに続くデータに基づく印刷が、異常発生前に実行された印刷結果に連続して印刷されることで、継続した印刷結果を得ることができる。従って、例えばインクエンドのような、異常発生によって用紙が分断しない異常要因による異常の場合に有効である。この場合、印刷データの再送信が必要なくなると共に、異常発生前に実行した印刷が無駄にならないことから、用紙などの無駄が発生することがない。
【００６０】
また、第２処理モード（ｍ１＝１）を選択すると、受信バッファ２４２とプリントバッファ２４５内のデータを一括破棄するため、削除処理モードにおいてデータを削除するのに要する時間を短縮することができる。さらに、印刷装置２０の状態監視を行うアプリケーションを用いている場合は、印刷装置２０からのステータスを監視しながら処理を行うことができるため、異常解除のステータス受信後に印刷再開コマンドを送信することで、支障なく処理を続行することができる。
【００６１】
また、第３処理モード（ｍ１＝２）を選択すると、受信バッファ２４２内のデータを保持したまま、削除処理モードへ移行し、削除処理モードにおいて、受信バッファ２４２内のデータを１バイトずつ確認しながら削除していく。異常発生時にホスト装置１０のデータ送信中止処理に間に合わなかったデータや、通信途上のデータの中に印刷再開コマンドが含まれていた場合に、印刷装置２０の異常状態が解除されたときに、当該印刷再開コマンドによって通常処理モードに移行することができる。なお、通信途上のデータには、ホスト装置１０に設けられたＯＳが管理する送信バッファ内のデータ、印刷装置サーバに設けられたデータバッファ内のデータ、印刷装置２０の受信バッファ２４２内のデータなどがある。印刷装置２０の異常状態解除を検出して、ホスト装置１０から印刷再開コマンドを送ることを必要とせずに通常処理モードに復帰することができるため、ホスト装置１０のアプリケーションが、印刷装置２０の状態監視を行わないアプリケーションであっても、支障なく処理を続行することができる。なお、受信バッファ２４２内のデータを１バイトずつ確認しながら削除していく処理は、削除処理に時間がかかるため、印刷装置２０の状態監視を行うアプリケーションを使用している場合には、第２処理モード（ｍ１＝１）を選択することが好ましい。
【００６２】
次に、パラメータｍ２について説明する。異常発生時モード選択コマンド「ＥＳＣ  Ａ  ｍ１  ｍ２  ｍ３」は、パラメータｍ２によって、処理モード移行時のレスポンスをホスト装置１０に送信するか否かを指定する。例えば、ｍ２＝０の場合は、処理モード移行時のレスポンスをホスト装置１０に送信しない。また、ｍ２＝１の場合は、通常処理モードから削除処理モードへの移行、又は削除処理モードから通常処理モードへの移行の際に、削除処理モード制御部４５又は通常処理モード制御部４４が、それぞれ削除処理開始レスポンス又は削除処理終了レスポンスを、ステータス／レスポンス生成部４９に生成させて、ホスト装置１０に送信する。この場合の削除処理モード制御部４５又は通常処理モード制御部４４が、モード移行レスポンス選択手段に相当する。
【００６３】
印刷装置２０から、削除処理開始レスポンスおよび削除処理終了レスポンスを送信することで、ホスト装置１０は、印刷装置２０の処理モードを把握することができる。また、削除処理終了レスポンスにより、印刷再開コマンドが正常処理されたことを確認することができる。
【００６４】
また、処理モード移行時のレスポンスをホスト装置１０に送信するか否かを選択して指定することが可能であるため、両レスポンスをホスト装置に「送信しない」とすることで、ホスト装置１０のアプリケーションが、印刷装置２０の状態監視を行わないアプリケーションである場合にも対応することができる。
【００６５】
次に、パラメータｍ３について説明する。異常発生時モード選択コマンド「ＥＳＣ  Ａ  ｍ１  ｍ２  ｍ３」は、パラメータｍ３によって、当該異常発生時モード選択コマンドが、パラメータｍ１で指定する処理モードで対応する異常要因を指定する。例えば、ｍ３＝１０の場合は、異常の要因がカッタエラーの場合に、パラメータｍ１で指定する処理モードで対応することを指定する。ｍ３＝１１、ｍ３＝２０、ｍ３＝２１、ｍ３＝３０、ｍ３＝４０は、それぞれ、異常の要因がキャリッジ動作エラー、カバーＡのオープン、カバーＢのオープン、用紙なし（用紙切れ）、インクエンド（インク切れ）の場合に、パラメータｍ１で指定する処理モードで対応することを指定する。ｍ３＝０は、全ての異常要因に対して、当該異常発生時モード選択コマンドがパラメータｍ１で指定する処理モードで対応することを指定する。
【００６６】
異常時の処理モードが、要因によらず同一の処理でよい印刷装置においては、ｍ３＝０を選択して指定することで、セットアップ時のアプリケーションの処理を効率化することができる。また、一旦、ｍ３＝０を選択して指定することで、全ての要因に対して同一処理モードを指定し、次に異なる処理モードが必要な要因についてのみ、個々に再設定することで、要因毎に異常時の処理モードが異なる印刷装置においても、セットアップ時のアプリケーションの処理を効率化することができる。パラメータｍ３が、第１のパラメータに相当する。
【００６７】
カッタエラーは、連続紙を切断するカッタが、例えば基準位置に戻らないため、用紙カットが実行できないなどの、カッタ周辺のエラーである。キャリッジ動作エラーは、ヘッドを搭載したキャリッジが、摺動しないため印刷が実行できないなどの、キャリッジ周辺のエラーである。これらのエラーは、当該エラーが発生する直前の印刷が正常に実行されていない場合があり、エラー発生から復帰したところで、既印刷部分も再度印刷を実行することが好ましい。
【００６８】
カバーＡのオープン、カバーＢのオープンは、カバーＡ、カバーＢが開いている状態を指定する。カバーＡは、例えばインクカートリッジの収容部のカバーであって、カバーＡが開けられると印刷が停止する。印刷が停止しても、用紙やヘッドは印刷が停止した時の状態を維持しており、カバーＡが閉じられたところで、既印刷部に続けて未印刷データによる印刷を実行することで、目的の印刷を実行することが可能である。カバーＢは、例えば、開けることで用紙の保持ができなくなる構成の用紙収容部のカバーであって、カバーＢが開けられて印刷が停止したところで用紙の位置ずれがおこる。従って、カバーＢが閉じられたところで、未印刷データによる印刷を再開しても、既印刷部と未印刷データによる印刷が連続しない可能性が高いため、既印刷部分も再度印刷を実行することが好ましい。
【００６９】
用紙なし（用紙切れ）は、セットされた印刷用紙が無くなった状態である。印刷停止後、新たに連続紙を補充することで異常要因が解除されるが、補充された連続紙に未印刷データによる印刷を再開しても、既印刷部分に連続して印刷することはできない。従って、連続紙が補充された後、既印刷部分も再度印刷を実行することが好ましい。また、用紙が単票用紙の場合には、印刷停止後、新たに用紙を補充することで異常要因が解除され、補充された用紙に未印刷データによる印刷を実行することで、目的の印刷を実行することが可能である。
【００７０】
インクエンド（インク切れ）は、ヘッドに供給される印刷用インクが無くなった状態である。インクエンドが要因で印刷が停止しても、用紙やヘッドは印刷が停止した時の状態を維持しており、インクが補充されたところで、既印刷部に続けて未印刷データによる印刷を実行することで、目的の印刷を実行することが可能である。
【００７１】
なお、異常発生時の処理モードの選択、モード移行レスポンス有無の選択、並びに当該選択した処理を適用する異常要因の選択は、上記の通りコマンドによって選択可能とする方法以外に、印刷装置２０にメモリスイッチを備え、ホスト装置１０から当該メモリスイッチを切り替え可能な制御データを送信することで選択できるようにしても良い。また、印刷装置２０にディップスイッチ等を備え、当該ディップスイッチ等を切替えることによって選択可能としても良い。
【００７２】
次に、図５（ｂ）を参照して印刷再開コマンドについて説明する。印刷再開コマンドは、削除処理モードから通常処理モードへの移行を指令するためのコマンドであり、「ＥＳＣ  Ｂ  ｄ１・・・ｄｋ」で表される。ここで、ｄ１・・・ｄｋは、例えば「ＦＩＮＩＳＨ」といった文字列など、任意のキーワードを設定可能となっている。このように、任意のキーワードをパラメータとすることにより、不測の一致による誤動作を回避することができる。また、ホスト装置１０のアプリケーションが、印刷装置２０の状態監視を行っているアプリケーションである場合は、ホスト装置１０から印刷装置２０へ、印刷再開コマンドを送信することで、通常処理モードへの復帰をアプリケーションが管理することができるため、印刷が完了していないデータを確実に削除することができる。さらに、印刷装置２０の状態監視を行わないアプリケーションを用いる場合は、印刷データの先頭に印刷再開コマンドを付加することで、異常発生時に処理されていた頁の次の頁から印刷を再開することができる。また、連続用紙Ｐの切断を指令するコマンドの直前（被印刷媒体が単票用紙の場合は、当該単票用紙の排出を指令するコマンドの直前）など、確実に動作させたいデータの直前に印刷再開コマンドを付加することで、これらの処理を確実に行わせることができる。
【００７３】
次に、図５（ｃ）を参照して処理モード確認コマンドについて説明する。処理モード確認コマンドとは、印刷装置２０の処理モードを確認するためのコマンドであり、「ＥＳＣ  Ｃ  ｍ」で表される。ここで、パラメータｍは、例えばｍ＝１とすることができる。このように、ホスト装置１０は、処理モード確認コマンドを用いることで、例えば印刷データを送信する前にこれを送信し、印刷装置２０の処理モードを確認して、印刷装置２０の処理モードに合わせたデータ送信を行うことができる。したがって、印刷データを送信したにも関わらず、印刷装置２０が削除処理モードのため、当該印刷データが読み捨てられるといったことがない。また、ホスト装置１０のアプリケーションが起動する前に、既に印刷装置２０が削除処理モードに移行していた場合、削除処理開始レスポンスがアプリケーションに届かないことが考えられるが、この場合でも処理モード確認コマンドを使用することで印刷装置２０が削除処理モードであることを認識することができる。
【００７４】
なお、この処理モード確認コマンド「ＥＳＣ  Ｃ  ｍ」に対する印刷装置２０からの戻り値は、例えば、削除処理開始レスポンス又は削除処理終了レスポンスである。すなわち、印刷装置２０が、削除処理モードの場合、削除処理開始レスポンスを送信し、通常処理モードの場合、削除処理終了レスポンスを送信する。このように、モード移行を通知するためのレスポンスと同様のレスポンスを戻り値とすることで、ホスト装置１０は、各処理モードに応じた制御と共通のタスクを使用して処理を行うことができる。
【００７５】
次に、図６ないし図８のフローチャートを参照し、印刷装置２０の状態監視を行うアプリケーションを用いた場合の印刷装置２０の処理例について説明する。
【００７６】
最初に、図６を参照して通常データ処理時（通常処理モード）における印刷装置２０の処理例について説明する。図６に示すように、印刷装置２０は、ホスト装置１０からデータを受信すると（ステップＳ１１）、異常発生時のモード指定であるか否か（異常発生時モード選択コマンド「ＥＳＣ  Ａ」であるか否か）を判定する（ステップＳ１２）。ここで、異常発生時のモード指定である場合は（ステップＳ１２でＹｅｓ）、指定値Ａ（パラメータｍ１，ｍ２，ｍ３の値）を異常発生時モードブロック２４４（図４参照）に記憶し（ステップＳ１３）、受信したデータに対応する処理を終了する。なお、印刷装置２０の状態監視を行うアプリケーションを用いた場合、指定値Ａのパラメータｍ２は常に１（モード移行レスポンスを送信する）とする（図５（ａ）参照）ことが好ましい。上述したように、パラメータｍ３は要因を指定するパラメータであり、パラメータｍ３が示す要因毎の指定値Ａ（パラメータｍ１，ｍ２の値）が記憶される。なお、データを受信した時点で、既に異常発生時モードブロック２４４に指定値Ａが記憶されており、受信したデータの指定値Ａと記憶されていた指定値Ａとが同一の場合には、新たに受信した指定値Ａの異常発生時モードブロック２４４への書き込みは実行せず、記憶されていた指定値Ａを維持する。異常発生時モードブロック２４４は、書き込み回数の増加による劣化の可能性があるフラッシュメモリであるような場合に、不要な書き込み動作を実行しないことで、劣化を抑制することができる。
【００７７】
異常発生時のモード指定でない場合は（ステップＳ１２でＮｏ）、処理モード確認コマンド「ＥＳＣ  Ｃ」であるか否かを判定する（ステップＳ１４）。処理モード確認コマンドである場合は（ステップＳ１４でＹｅｓ）、現在が通常処理モードであるため、削除処理終了レスポンスをホスト装置１０に送信し（ステップＳ１５）、通常処理モードであることを通知する。また、処理モード確認コマンドでない場合は（ステップＳ１４でＮｏ）、データの指令に応じた処理（印刷制御やメカ制御等）を実行し（ステップＳ１６）、受信したデータに対応する処理を終了する。
【００７８】
なお、図示は省略したが、通常処理モードにおいて、例えばオペレータのミス等により印刷再開コマンドを受信した場合は、これを破棄する。
【００７９】
次に、図７および図８を参照して異常発生時および削除処理モードにおける印刷装置２０の処理例について説明する。
【００８０】
図７に示すように、印刷装置２０の要因検出部４７ａが異常発生（紙ジャム、カバーオープン、用紙切れ、インク切れ等）を検出すると（ステップＳ２１でＹｅｓ）、印刷制御およびメカ制御を停止し、異常発生の状態通知をホスト装置１０に送信する（ステップＳ２２）。説明を簡略するために、異常要因を仮に、カバーオープン（要因ａ）、用紙切れ（要因ｂ）、インクエンド（要因ｃ）の３種類として説明する。カバーオープン（要因ａ）、用紙切れ（要因ｂ）、インクエンド（要因ｃ）は、図５（ａ）を参照して説明した、カバーＡのオープン、用紙なし（用紙切れ）、インクエンド（インク切れ）である。
【００８１】
次に、要因が要因ａ（カバーＡのオープン）であって、要因ａの場合に削除処理モードの指定があるか否か、すなわち要因ａに対応する指定値Ａが、ｍ１＝１又は２であるか否か（図５（ａ）参照）を判定する（ステップＳ２３）。要因が要因ａでないまたは削除処理モードの指定がない（ｍ１＝０）場合は（ステップＳ２３でＮｏ）、要因が要因ｂ（用紙切れ）であって、要因ｂの場合に削除処理モードの指定があるか否か、すなわち要因ｂに対応する指定値Ａが、ｍ１＝１又は２であるか否か（図５（ａ）参照）を判定する（ステップＳ２４）。要因が要因ｂでないまたは削除処理モードの指定がない（ｍ１＝０）場合は（ステップＳ２４でＮｏ）、要因が要因ｃ（インクエンド）であって、要因ｃの場合に削除処理モードの指定があるか否か、すなわち要因ｃに対応する指定値Ａが、ｍ１＝１又は２であるか否か（図５（ａ）参照）を判定する（ステップＳ２５）。
【００８２】
要因が要因ｃでないまたは削除処理モードの指定がない（ｍ１＝０）場合は（ステップＳ２５でＮｏ）、新たな要因による異常が発生したか否かを判定する（ステップＳ４１）。新たな要因による異常が発生していた場合（ステップＳ４１でＹｅｓ）は、ステップＳ２３に戻り、ステップＳ２３からステップＳ２５を繰返す。ステップＳ４１を実行することで、要因の判定及び削除処理モードの指定の有無の判定を実行する間に発生した新たな要因による異常に対応して、適切な処理を実行することができる。例えば、ステップＳ２５が実行されてＮｏと判定されると、削除処理モードには移行しない。従って、ステップＳ２５が実行されてＮｏと判定される間に、要因ａ又は要因ｂによる異常が発生し、要因ａ又は要因ｂに対して削除処理モードの指定がある（指定値Ａが、ｍ１＝１又は２）場合には、新たに発生した要因ａ又は要因ｂによる異常に対しては適切な処理が実行されない。ステップＳ４１を実行することで、新たに発生した異常に対して、要因の判定及び削除処理モードの指定の有無の判定を実行し、適切な処理を実行することができる。
【００８３】
新たな要因による異常が発生していない場合（ステップＳ４１でＮｏ）は、異常が解除されたか否か判定し（ステップＳ４２）異常が解除されない場合は（ステップＳ４２でＮｏ）、ステップＳ４１を繰返す。異常解除された後（ステップＳ４２でＹｅｓ）、未処理データ（印刷が完了していないデータ）の処理を再開し（ステップＳ４３）、異常発生時の処理を終了する。この場合、異常発生時に未処理データを破棄していない（保持したままである）ため、異常発生前の印刷に継続して印刷を行う。
【００８４】
一方、異常の要因が、要因ａ、要因ｂ、又は要因ｃであって、いずれかの要因に対して削除処理モードの指定がある（指定値Ａが、ｍ１＝１又は２）場合は（ステップＳ２３、ステップＳ２４、又はステップＳ２５のすくなくともひとつでＹｅｓ）、ステップＳ２６に進む。ここで、ｍ１＝１の場合は、受信バッファ２４２内の未処理データとプリントバッファ２４５内の未処理イメージデータとを一括破棄する。また、ｍ１＝２の場合は、受信バッファ２４２内の未処理データを保持したまま、プリントバッファ２４５内の未処理イメージデータを破棄する。さらに、処理モード移行時のレスポンス送信が指定されている場合（指定値Ａが、ｍ２＝１）は、削除処理開始レスポンスをホスト装置１０に送信し、削除処理モードに移行する。また、ｍ２＝０の場合には、削除処理開始レスポンスを送信せずに削除処理モードに移行する（ステップＳ２６）。
【００８５】
次に、印刷装置２０に状態変化があるか否かを判定し（ステップＳ２７）、状態変化があった場合は（ステップＳ２７でＹｅｓ）、それが異常解除であるか否かを判定し（ステップＳ２８）、異常解除である場合は（ステップＳ２８でＹｅｓ）、異常解除のステータスをホスト装置１０に送信する（ステップＳ２９）。また、異常発生である場合は（ステップＳ２８でＮｏ）、異常発生のステータスをホスト装置１０に送信する（ステップＳ３０）。
【００８６】
異常解除又は異常発生のステータスの送信を実行した後（ステップＳ２９，ステップＳ３０）、並びに状態変化がない場合は（ステップＳ２７でＮｏ）、図８に示すように、ホスト装置１０からの受信データがあるか否かを判定する（ステップＳ３１）。受信データがある場合は（ステップＳ３１でＹｅｓ）、当該データが処理モード確認コマンド「ＥＳＣ  Ｃ」であるか否かを判定し（ステップＳ３２）、処理モード確認コマンドである場合は（ステップＳ３２でＹｅｓ）、現在が削除処理モードであるため、削除処理開始レスポンスを送信し（ステップＳ３３）、削除処理モードであることを通知する。
【００８７】
また、処理モード確認コマンドでない場合は（ステップＳ３２でＮｏ）、状態通知（ステータス）要求コマンドであるか否かを判定し（ステップＳ３４）、状態通知要求コマンドである場合は（ステップＳ３４でＹｅｓ）、状態通知を送信する（ステップＳ３５）。
【００８８】
さらに、状態通知要求コマンドでもない場合は（ステップＳ３４でＮｏ）、印刷再開コマンド「ＥＳＣ  Ｂ」であるか否かを判定し（ステップＳ３６）、印刷再開コマンドでない場合は（ステップＳ３６でＮｏ）、受信したデータを読み捨てる（ステップＳ３７）。また、印刷再開コマンドである場合は（ステップＳ３６でＹｅｓ）、削除処理終了レスポンスを送信し（ステップＳ３８、但し、指定値Ａがｍ２＝０の場合には、レスポンスは送信しない）、削除処理モードを終了して通常処理モードに復帰する。
【００８９】
なお、ステップＳ２６で実行している未処理データの破棄を、ステップＳ２６のように削除処理モードの移行前に実行することは、必須ではない。例えば、削除処理モードへの移行処理の終了時に未処理データの破棄を実行するなど、上述した一連の削除処理の間に実行すればよい。
【００９０】
このように、削除処理モードにおいては、上記に示す特定のコマンド（処理モード確認コマンド、状態通知要求コマンド、印刷再開コマンド）以外は全て読み捨てるため、異常発生時モード選択コマンドで削除処理モードを指定することにより、未処理データ（ホスト装置１０が削除を所望するデータ）を確実に削除することができる。
【００９１】
なお、印刷再開コマンドを受信し、通常処理モードに復帰した時点で、異常要因（異常状態）が解除されていない場合は、最初の異常検出処理により異常あり（ステップＳ２１でＹｅｓ）となり、再度上記した異常発生時の処理を実行する。この構成によれば、印刷装置２０は確実に異常要因を解除することができる、また、ホスト装置１０は、異常状態が継続していることを把握することができると共に印刷再開コマンドが正常処理されたことを確認することができる。
【００９２】
また、例えば印刷再開コマンドをオペレータの判断でも送信できる構成となっている場合、オペレータの操作ミス等により、異常要因が解除されていないにも関わらず、印刷再開コマンドを送信してしまうことが考えられる。このような場合であって、印刷装置２０からレスポンスが送信できない状況となると、印刷装置の送信バッファ２４３内に過去の削除処理開始レスポンスおよび削除処理終了レスポンスが未送信のまま残ってしまうことがある。また、レスポンスの受信と処理モード確認コマンドの送信を別タスクで起動するような場合にも、同様にレスポンスが重複することが考えられる。このように、送信バッファ２４３内に過去の両レスポンスおよび削除処理終了レスポンスが未送信のまま存在している状態で、再度削除処理モードに移行した場合は、当該過去の両レスポンスを破棄して、最新の削除処理開始レスポンスのみを送信する。この構成によれば、送信バッファ２４３内に蓄積された過去の削除処理開始レスポンスおよび削除処理終了レスポンスがホスト装置に連続送信されることがない。したがって、印刷装置２０の状態監視の間隔が大きいアプリケーションを用いても、複数のレスポンスが連続送信されることで制御部（ＣＰＵ等）に負荷をかけることがない。
【００９３】
次に、図９のフローチャートを参照して印刷装置２０の状態監視を行うアプリケーションを用いた場合のホスト装置１０の処理例について説明する。
【００９４】
図９に示すように、ホスト装置１０は、印刷装置２０への送信データがあるか否かを判定し（ステップＳ５１）、送信データがある場合には（ステップＳ５１でＹｅｓ）、印刷装置２０へのデータ送信処理を行う（ステップＳ５２）。次に、ホスト装置１０は、印刷装置２０からの受信データがあるか否かを判定し（ステップＳ５３）、受信データがある場合には（ステップＳ５３でＹｅｓ）、これが削除処理開始レスポンスであるか否かを判定する（ステップＳ５４）。削除処理開始レスポンスでない場合は（ステップＳ５４でＮｏ）、受信データが異常発生の通知（図７ステップＳ２２参照）であるか、即ち印刷装置２０において異常が発生したか否かを判定する（ステップＳ５５）。受信データが異常発生の通知でない場合は（ステップＳ５５でＮｏ）、受信データに応じた処理を実行し（ステップＳ５７）、処理を終了する。
【００９５】
また、受信データが削除処理開始レスポンスである場合は（ステップＳ５４でＹｅｓ）、これにより印刷装置２０が削除処理モードに入ったことを認識し、データ送信処理を停止する（ステップＳ５６）。
【００９６】
データ送信処理を停止すると（ステップＳ５６）、印刷装置２０からのデータを受信したか否かを判定し（ステップＳ６３）、受信していない場合は（ステップＳ６３でＮｏ）、データの受信を待つ。印刷装置２０からのデータを受信した場合は（ステップＳ６３でＹｅｓ）、受信したデータが異常解除通知であるか否かを判定し（ステップＳ６４）、異常解除通知でない場合は（ステップＳ６４でＮｏ）、データの受信を待つ。そして、異常解除通知を受信した場合は（ステップＳ６４でＹｅｓ）、未送信データを破棄し（ステップＳ６５）、印刷再開コマンド「ＥＳＣ  Ｂ」を送信する（ステップＳ６６）。そして、当該印刷再開コマンド「ＥＳＣ  Ｂ」に対する削除処理終了レスポンスを受信したか否かを判定し（ステップＳ６７）、削除処理終了レスポンスを受信できない場合（ステップＳ６７でＮｏ）は、受信できるまで待機する。削除処理終了レスポンスを受信することにより（ステップＳ６７でＹｅｓ）、印刷装置２０が通常処理モードに復帰したことを認識し、異常発生時の処理を終了する。
【００９７】
ステップＳ５５で、受信データが異常発生の通知であった場合は、これにより印刷装置２０に異常が発生したことを認識し（ステップＳ５５でＹｅｓ）、データ送信処理を停止する（ステップＳ５８）。
【００９８】
データ送信処理を停止すると（ステップＳ５８）、印刷装置２０からのデータを受信したか否かを判定し（ステップＳ５９）、受信していない場合は（ステップＳ５９でＮｏ）、データの受信を待つ。印刷装置２０からのデータを受信した場合は（ステップＳ５９でＹｅｓ）、受信したデータが削除処理開始レスポンスであるか否かを判定する（ステップＳ６０）。受信したデータが削除処理開始レスポンスである場合は（ステップＳ６０でＹｅｓ）、これにより印刷装置２０が削除処理モードに入ったことを認識し、ステップＳ６３に進んで、上述したステップＳ６３からステップＳ６７の処理を実行する。
【００９９】
削除処理開始レスポンスでない場合は（ステップＳ６０でＮｏ）、受信したデータが異常解除通知であるか否かを判定し（ステップＳ６１）、異常解除通知でない場合は（ステップＳ６１でＮｏ）、データの受信を待ち、上述したステップＳ５９及びステップＳ６０の処理を実行する。そして、異常解除通知を受信した場合は（ステップＳ６１でＹｅｓ）、未送信データの送信処理を再開し（ステップＳ６２）、異常発生時の処理を終了する。
【０１００】
なお、削除処理開始レスポンスを受信した場合の処理終了後は、異常発生時に送信を停止したデータの最初からデータを送信することが好ましい。
【０１０１】
次に、図１０および図１１のフローチャートを参照し、印刷装置２０の状態監視を行わないアプリケーションを用いた場合の印刷装置２０の処理例について説明する。なお、印刷装置２０の状態監視を行わない点で、図２ないし図４を参照して説明した状態監視を行うアプリケーションを用いた場合のホスト装置１０および印刷装置２０と異なるが、印刷装置２０からステータスやレスポンスを送信しない点、並びにアプリケーションが生成するデータ（印刷データおよび制御データ）に印刷再開コマンドが挿入されている点以外は、状態監視を行う場合と同様であるため、図２ないし図４を参照して説明した制御構成に相当する説明を省略する。
【０１０２】
最初に、図１０を参照して通常データ処理時（通常処理モード）における印刷装置２０の処理例について説明する。
【０１０３】
図１０に示すように、ホスト装置１０からデータを受信すると（ステップＳ７１）、異常発生時のモード指定であるか否か（異常発生時モード選択コマンド「ＥＳＣ  Ａ」であるか否か）を判定し（ステップＳ７２）、異常発生時のモード指定である場合は（ステップＳ７２でＹｅｓ）、指定値Ａ（パラメータｍ１，ｍ２，ｍ３の値）を異常発生時モードブロック２４４（図４参照）に記憶し（ステップＳ７３）、受信したデータに対応する処理を終了する。上述したように、パラメータｍ３は要因を指定するパラメータであり、パラメータｍ３が示す要因毎の指定値Ａ（パラメータｍ１，ｍ２の値）が記憶される。なお、印刷装置２０の状態監視を行わないアプリケーションを用いた場合、指定値Ａのパラメータｍ２は常に０（モード移行レスポンスを送信しない）とする（図５（ａ）参照）ことが好ましい。
【０１０４】
異常発生時のモード指定でない場合は（ステップＳ７２でＮｏ）、受信データが印刷再開コマンド「ＥＳＣ  Ｂ」であるか否かを判定する（ステップＳ７４）。受信データが印刷再開コマンドである場合は（ステップＳ７４でＹｅｓ）、これを破棄し（ステップＳ７５）、受信したデータに対応する処理を終了する。受信データが、印刷再開コマンドでもない場合は（ステップＳ７４でＮｏ）、そのデータに応じた処理を実行し（ステップＳ７６）、受信したデータに対応する処理を終了する。
【０１０５】
このように、印刷装置２０の状態監視を行わないアプリケーションを用いた場合に印刷再開コマンドが組み込まれた場合でも、通常処理モードでは印刷再開コマンドを破棄するため、通常通りの印刷処理を行うことができる。
【０１０６】
次に、図１１を参照して異常発生時および削除処理モードにおける印刷装置２０の処理例について説明する。図１１に示すように、印刷装置２０が異常発生（紙ジャム、カバーオープン、用紙切れ、インク切れ等）を検出すると（ステップＳ８１：Ｙｅｓ）、印刷制御およびメカ制御を停止する（ステップＳ８２）。説明を簡略するために、異常要因を仮に、カバーオープン（要因ａ）、用紙切れ（要因ｂ）、インクエンド（要因ｃ）の３種類として説明する。カバーオープン（要因ａ）、用紙切れ（要因ｂ）、インクエンド（要因ｃ）は、図５（ａ）を参照して説明した、カバーＡのオープン、用紙なし（用紙切れ）、インクエンド（インク切れ）である。
【０１０７】
次に、要因が要因ａ（カバーＡのオープン）であって、要因ａの場合に削除処理モードの指定があるか否か、すなわち要因ａに対応する指定値Ａが、ｍ１＝１又は２であるか否か（図５（ａ）参照）を判定する（ステップＳ８３）。要因が要因ａでないまたは削除処理モードの指定がない（ｍ１＝０）場合は（ステップＳ８３でＮｏ）、要因が要因ｂ（用紙切れ）であって、要因ｂの場合に削除処理モードの指定があるか否か、すなわち要因ｂに対応する指定値Ａが、ｍ１＝１又は２であるか否か（図５（ａ）参照）を判定する（ステップＳ８４）。要因が要因ｂでないまたは削除処理モードの指定がない（ｍ１＝０）場合は（ステップＳ８４でＮｏ）、要因が要因ｃ（インクエンド）であって、要因ｃの場合に削除処理モードの指定があるか否か、すなわち要因ｃに対応する指定値Ａが、ｍ１＝１又は２であるか否か（図５（ａ）参照）を判定する（ステップＳ８５）。
【０１０８】
要因が要因ｃでないまたは削除処理モードの指定がない（ｍ１＝０）場合は（ステップＳ８５でＮｏ）、新たな要因による異常が発生したか否かを判定する（ステップＳ９１）。新たな要因による異常が発生していた場合（ステップＳ９１でＹｅｓ）は、ステップＳ８３に戻り、ステップＳ８３からステップＳ８５を繰返す。ステップＳ９１を実行することで、要因の判定及び削除処理モードの指定の有無の判定を実行する間に発生した新たな要因による異常に対応して、適切な処理を実行することができる。例えば、ステップＳ８５が実行されてＮｏと判定されると、削除処理モードには移行しない。従って、ステップＳ８５が実行されてＮｏと判定される間に、要因ａ又は要因ｂによる異常が発生し、要因ａ又は要因ｂに対して削除処理モードの指定がある（指定値Ａが、ｍ１＝１又は２）場合には、新たに発生した要因ａ又は要因ｂによる異常に対しては適切な処理が実行されない。ステップＳ９１を実行することで、新たに発生した異常に対して、要因の判定及び削除処理モードの指定の有無の判定を実行し、適切な処理を実行することができる。
【０１０９】
新たな要因による異常が発生していない場合（ステップＳ９１でＮｏ）は、異常が解除されたか否か判定し（ステップＳ９２）異常が解除されない場合は（ステップＳ９２でＮｏ）、ステップＳ９１を繰返す。異常解除された後（ステップＳ９２でＹｅｓ）、未処理データ（印刷が完了していないデータ）の処理を再開する（ステップＳ９３）。この場合、異常発生時に未処理データを破棄していない（保持したままである）ため、異常発生前の印刷に継続して印刷を実行する。
【０１１０】
一方、異常の要因が、要因ａ、要因ｂ、又は要因ｃであって、いずれかの要因に対して削除処理モードの指定がある（指定値Ａが、ｍ１＝１又は２）場合は（ステップＳ８３、ステップＳ８４、又はステップＳ８５のすくなくともひとつでＹｅｓ）、ステップＳ８６に進む。ここで、ｍ１＝１の場合は、受信バッファ２４２内の未処理データとプリントバッファ２４５内の未処理イメージデータとを一括破棄し、削除処理モードに移行する。また、ｍ１＝２の場合は、プリントバッファ２４５内の未処理イメージデータを破棄し、受信バッファ２４２内の未処理データを保持したまま、削除処理モードに移行する（ステップＳ８６）。
【０１１１】
次に、異常要因が解除されたか否かを判定し（ステップＳ８７）、異常要因が解除されていない場合は（ステップＳ８７でＮｏ）、異常要因の解除を待つ。また、異常要因が解除された場合は（ステップＳ８７でＹｅｓ）、ホスト装置１０からの受信データがあるか否かを判定する（ステップＳ８８）。受信データがない場合は（ステップＳ８８でＮｏ）、ホスト装置１０からのデータを待つ。受信データがある場合は（ステップＳ８８でＹｅｓ）、当該データが印刷再開コマンドであるか否かを判定し（ステップＳ８９）、印刷再開コマンドでない場合は（ステップＳ８９でＮｏ）、これを読み捨てる（ステップＳ９０）。また、印刷再開コマンドである場合は（ステップＳ８９でＹｅｓ）、削除処理モードを終了し、通常処理モードに復帰する。
【０１１２】
なお、ステップＳ８６で実行している未処理データの破棄を、ステップＳ８６のように削除処理モードの移行前に実行することは、必須ではない。例えば、異常解除を検出した（ステップＳ８７）後に未処理データの破棄を実行するなど、上述した一連の削除処理の間に実行すればよい。
【０１１３】
このように、ホスト装置１０のアプリケーションとして、印刷装置２０の状態監視を行わないアプリケーションを用いた場合でも、削除処理モードにおいては、印刷再開コマンド以外は全て読み捨てるため、異常発生時モード選択コマンドで削除処理モードを指定することにより、未処理データを確実に削除することができる。
【０１１４】
なお、上記のように、印刷装置２０の状態監視を行わないアプリケーションを用いた場合においても、通常処理モードに復帰した時点で、異常要因（異常状態）が解除されていない場合は、最初の異常検出処理により異常発生あり（ステップＳ８１でＹｅｓ）となり、再度削除処理モードに移行する。
【０１１５】
以上、説明したとおり、本発明の印刷装置２０および印刷システム１によれば、要因検出部４７ａが印刷装置２０の異常を検出すると、処理モード判定部４３が、異常の要因のそれぞれに対応して予め指定され、要因別処理モード記憶部４６に記憶された、通常処理モードの継続、又は削除処理モードへの移行を実行することで、個々の要因に対応した適切な異常発生時の処理モードを実行することができる。印刷装置２０の異常が検出されたとき、データを読み捨てる削除処理モードに移行することで、ホスト装置１０のデータ送信中止処理に間に合わなかったデータや、通信途上のデータが存在した場合でも、異常が解除されて印刷が再開されたときに、これらのデータに従って不必要な印刷が実行されることを回避することができる。また、印刷装置２０の異常が検出されたとき、通常処理モードを継続することで、異常が解除されて印刷が再開されたときに、異常が発生する前に実行された印刷に続く印刷を実行し、異常が発生する前後で連続した印刷結果を実現することができる。
【０１１６】
また、異常発生時モード選択コマンドにより、アプリケーションの種類やユーザが所望する印刷結果、及び異常の要因に対応して、適切な処理モードを選択することができる。パラメータｍ３の値によって要因を指定し、パラメータｍ１の値によって処理モードを指定することで、要因毎に適切な処理モードを選択することができる。例えば、異常発生によって用紙を分断（分割）しない要因の場合、第１処理モード（ｍ１＝０）を選択すると、継続した印刷結果を得ることができる。したがって、印刷データの再送信が必要なくなると共に用紙の無駄が発生することがない。また、第２処理モード（ｍ１＝１）を選択すると、受信バッファ２４２内のデータを破棄するため、削除処理モードにおいてデータを削除するのに要する時間を短縮することができる。さらに、印刷装置２０の状態監視を行うアプリケーションであれば、印刷装置２０からのステータスを監視しながら処理を行うことができるため、破棄するデータ内に印刷再開コマンドを含ませない制御が可能となる。また、第３処理モード（ｍ１＝２）を選択すると、受信バッファ２４２内のデータを保持したまま、削除処理モードへ移行するため、通信途上のデータの中に印刷再開コマンドが含まれていた場合に、当該印刷再開コマンドによって通常処理モードに移行することができる。したがって、受信バッファ２４２内のデータの削除処理に時間がかかるが、印刷装置２０の状態監視を行わないアプリケーションであっても、支障なく処理を続行することができる。
【０１１７】
なお、上記の例では、ホスト装置１０と印刷装置２０とによって構成される印刷システム１を例に挙げたが、ホスト装置１０によって制御される装置は印刷装置に限らず、種々の端末装置に適用することが可能である。また、上記の実施例によらず、例えばシステム構成やコマンド等について、本発明の要旨を逸脱しない範囲で、適宜変更も可能である。
【図面の簡単な説明】
【０１１８】
【図１】本発明の一実施形態に係る印刷システムの構成を示す図。
【図２】本発明のホスト装置の制御構成を示す機能ブロック図。
【図３】本発明の印刷装置の制御構成を示す機能ブロック図。
【図４】本発明の印刷装置の制御構成を示す制御ブロック図。
【図５】本発明の制御コマンドの一例を示す説明図。
【図６】印刷装置の状態監視を行うアプリケーションを用いた場合の、印刷装置における通常データ処理過程を示すフローチャート。
【図７】印刷装置の状態監視を行うアプリケーションを用いた場合の、印刷装置における異常発生時における処理過程を示すフローチャート。
【図８】図７に続く、印刷装置における異常発生時における処理過程を示すフローチャート。
【図９】印刷装置の状態監視を行うアプリケーションを用いた場合の、印刷装置の異常発生時におけるホスト装置の処理過程を示すフローチャート。
【図１０】印刷装置の状態監視を行わないアプリケーションを用いた場合の、印刷装置における通常データ処理過程を示すフローチャート。
【図１１】印刷装置の状態監視を行わないアプリケーションを用いた場合の、印刷装置における異常発生時における処理過程を示すフローチャート。
【符号の説明】
【０１１９】
１…印刷システム、１０…ホスト装置、２０…印刷装置、３０…ＰＯＳサーバ、３１…インタフェース（ホスト装置）、３２…データ受信部、３３…要因別モード設定部、３４…状態監視部、３５…印刷データ生成部、３６…印刷再開コマンド生成部、３７…制御部、３８…データ送信部、４１…インタフェース（印刷装置）、４２…データ受信部、４３…処理モード判定部、４４…通常処理モード制御部、４５…削除処理モード制御部、４６…要因別処理モード記憶部、４７…状態監視部、４７ａ…要因検出部、４８…印刷制御部、４９…ステータス／レスポンス生成部、５０…データ送信部、２４２…受信バッファ（印刷装置）、２４３…送信バッファ、２４４…異常発生時モードブロック、２４５…プリントバッファ、Ｐ…連続用紙。
【図１】
2006343917.tif 000003
【図２】
2006343917.tif 000004
【図３】
2006343917.tif 000005
【図４】
2006343917.tif 000006
【図５】
2006343917.tif 000007
【図６】
2006343917.tif 000008
【図７】
2006343917.tif 000009
【図８】
2006343917.tif 000010
【図９】
2006343917.tif 000011
【図１０】
2006343917.tif 000012
【図１１】
2006343917.tif 000013