(57)【要約】【課題】  ユーザからの指示により、検品装置の検品結果を反映したレコード単位の再印刷処理あるいは継続印刷処理を実行する。【解決手段】  複数のページから構成される複数のレコードを１つのジョブとして処理する印刷装置において、レコード単位の印刷処理を終了するまでに、検品装置から取得している検品結果にエラー情報が含まれているかどうかを判断する（Ｓ２０）。そして、エラー情報が含まれているとジョブ制御部が判断した場合、印刷処理が終了したレコードに後続するレコードの印刷処理を停止して、検品結果から生成されるレコード情報を含む印刷指示画面を表示部に表示する（Ｓ２１）ことを特徴とする。【選択図】  図８
2012171311.tif 000002
【特許請求の範囲】
【請求項１】
複数のページから構成される複数のレコードを１つのジョブとして処理する印刷装置であって、
前記印刷装置により印刷された用紙の画像を読取って印刷状態を検品する検品装置から通知される検品結果を取得する取得手段と、
前記ジョブから生成される印刷データをレコード単位に印刷する印刷手段と、
前記印刷手段がレコード単位の印刷処理を終了するまでに、前記取得手段が前記検品装置から取得している検品結果にエラー情報が含まれているかどうかを判断する判断手段と、
前記エラー情報が含まれていると前記判断手段が判断した場合、前記印刷手段により印刷処理が終了したレコードに後続するレコードの印刷処理を停止して、前記検品結果から生成されるレコード情報を含む印刷指示画面を表示部に表示するジョブ制御手段と、
を備えることを特徴とする印刷装置。
【請求項２】
前記ジョブ制御手段は、前記表示部に表示された印刷指示画面を介して、ユーザにより選択されるレコードに対する再印刷要求を受け付けることを特徴とする請求項１記載の印刷装置。
【請求項３】
前記ジョブ制御手段は、前記表示部に表示された印刷指示画面を介して、印刷を停止したレコード以降のレコードに対する継続印刷要求を受け付けることを特徴とする請求項１記載の印刷装置。
【請求項４】
前記判断手段は、前記印刷手段がレコード単位の印刷処理を複数レコード分終了するまでに、前記取得手段が前記検品装置から取得している検品結果にエラー情報が含まれているかどうかを判断することを特徴とする請求項１記載の印刷装置。
【請求項５】
前記判断手段が前記検品装置から取得する検品結果にエラー情報が含まれていると判断した後、前記印刷手段が印刷処理中のレコードから停止可能な最短のレコード区切り位置を検出する検出手段を備え、
前記ジョブ制御手段は、前記検出手段が検出した前記レコード区切り位置のレコードに対する継続印刷要求を受け付けることを特徴とする請求項１記載の印刷装置。
【請求項６】
複数のページから構成される複数のレコードを１つのジョブとして処理する印刷装置の制御方法であって、
前記印刷装置により印刷された用紙の画像を読取って印刷状態を検品する検品装置から通知される検品結果を取得する取得工程と、
前記ジョブから生成される印刷データをレコード単位に印刷する印刷工程と、
前記印刷工程がレコード単位の印刷処理を終了するまでに、前記取得工程が前記検品装置から取得している検品結果にエラー情報が含まれているかどうかを判断する判断工程と、
前記エラー情報が含まれていると前記判断工程が判断した場合、前記印刷工程により印刷処理が終了したレコードに後続するレコードの印刷処理を停止して、前記検品結果から生成されるレコード情報を含む印刷指示画面を表示部に表示するジョブ制御工程と、
を備えることを特徴とする印刷装置の制御方法。
【請求項７】
前記ジョブ制御工程は、前記表示部に表示された印刷指示画面を介して、ユーザにより選択されるレコードに対する再印刷要求を受け付けることを特徴とする請求項６記載の印刷装置の制御方法。
【請求項８】
前記ジョブ制御工程は、前記表示部に表示された印刷指示画面を介して、印刷を停止したレコード以降のレコードに対する継続印刷要求を受け付けることを特徴とする請求項６記載の印刷装置の制御方法。
【請求項９】
前記判断工程は、前記印刷工程がレコード単位の印刷処理を複数レコード分終了するまでに、前記取得手段が前記検品装置から取得している検品結果にエラー情報が含まれているかどうかを判断することを特徴とする請求項６記載の印刷装置の制御方法。
【請求項１０】
前記判断工程が前記検品装置から取得する検品結果にエラー情報が含まれていると判断した後、前記印刷工程が印刷処理中のレコードから停止可能な最短のレコード区切り位置を検出する検出工程を備え、
前記ジョブ制御工程は、前記検出工程が検出した前記レコード区切り位置のレコードに対する継続印刷要求を受け付けることを特徴とする請求項６記載の印刷装置の制御方法。
【請求項１１】
請求項６乃至１０のいずれか１項に記載の印刷装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検品装置による検品処理を行いながら印刷処理を実行する印刷装置、印刷装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
印刷物に対して、その印刷物が正しく印刷されているかを検査する検品装置というものがある。この場合、検品装置が搬送される印刷物をスキャンしその画像から正しく印刷されたかどうかを判断する処理を実行する。その際、印刷結果をまとめて検品する検品システムや、印刷装置と同期してもし印刷物が正しくないと思われる場合には印刷装置が停止するインライン検品印刷システムが知られている。
【０００３】
また、ＶＤＰ（Variable Data Printing/Variable Data Publishing）と呼ばれるものが知られている。これは、例えばダイレクトメールのように、相手先に応じてそれぞれコンテンツが異なるような印刷である。
【０００４】
一般にはデータベース上にある宛先などの可変な情報を、事前に用意したレイアウトに当てはめて印刷する。単純に宛先だけが変わるものもあれば、相手の情報に応じてレイアウト上に使用する画像コンテンツや使用する用紙が変わり、それに伴ってページ数が変わるようなものもある。ＶＤＰ印刷のジョブは、多くのレコードを含んだ大きな一つのジョブであるのが一般的である。
【０００５】
また、上記のインライン検品システムでは、印刷ページを走査して複数の電子原稿と照合して重複・抜け・白紙を検知し、エラー時に再印刷を要求するものが知られている（例えば特許文献１）。
【０００６】
さらにＶＤＰ印刷の場合には、エラーの生じたレコードからなる再印刷用の可変印刷データを自動的に生成するものが知られている（例えば特許文献２）。これを用いればエラーの起きたページを含むレコードのみを再印刷することが可能である。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−６５４４７号公報
【特許文献２】特開２００９―７５６３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
このように構成されたインライン検品システムでもオフライン検品システムでも、ジョブ全体を印刷した後に、エラーが見つかったページのみを差し替えるのは、非常に大変な作業である。
例えば特許文献１の方法では、エラー時には再印刷を要求するが、元の印刷はそのまま継続されてしまうので、その中から目的のエラーページを探すのは困難である。
【０００９】
また、特許文献２の方法では、エラーの生じたレコードのみを容易に再印刷できるので、レコード単位で差し替えればよいといったメリットがあるが、そのレコードが印刷結果全体のどこにあるかを探す手間はかかるので全体としては効率的でない場合もある。いずれの方法でも、オペレータの基本的な操作ミスによって多くのページやレコードがエラーになってしまった場合であっても、全体を印刷は実行されるので、無駄に用紙やトナーを消費してしまう問題がある。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、ユーザからの指示により、検品装置の検品結果を反映したレコード単位の再印刷処理あるいは継続印刷処理を実行できる仕組みを提供することである。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明の印刷装置は以下に示す構成を備える。
複数のページから構成される複数のレコードを１つのジョブとして処理する印刷装置であって、前記印刷装置により印刷された用紙の画像を読取って印刷状態を検品する検品装置から通知される検品結果を取得する取得手段と、前記ジョブから生成される印刷データをレコード単位に印刷する印刷手段と、前記印刷手段がレコード単位の印刷処理を終了するまでに、前記取得手段が前記検品装置から取得している検品結果にエラー情報が含まれているかどうかを判断する判断手段と、前記エラー情報が含まれていると前記判断手段が判断した場合、前記印刷手段により印刷処理が終了したレコードに後続するレコードの印刷処理を停止して、前記検品結果から生成されるレコード情報を含む印刷指示画面を表示部に表示するジョブ制御手段と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、検品装置の検品結果を反映したレコード単位の再印刷処理あるいは継続印刷処理を実行できる。
また、排紙された印刷物の中から正常に印刷処理されたレコードの印刷物と、検品エラーとなったレコードの印刷物とを特定して、再印刷されるレコードの印刷物と検品エラーとなったレコードの印刷物とを確実に差し替えることができる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態を示す印刷システムの一例を示す概略図である。
【図２】印刷装置のコントローラのハードウエア構成を示すブロック図である。
【図３】検品装置内のコントローラのハードウエア構成を示すブロック図である。
【図４】図２に示したコントローラのソフトウエア構成を示すブロック図である。
【図５】図１に示した検品装置のコントローラの構成を示す概略図である。
【図６】図３に示した文書管理にあるジョブの内部構成例を示す図である。
【図７】図３に示したＵＩパネルに表示されるＵＩを示す図である。
【図８】印刷装置の制御方法を説明するフローチャートである。
【図９】印刷装置の制御方法を説明するフローチャートである。
【図１０】印刷装置の制御方法を説明するフローチャートである。
【図１１】印刷装置の制御方法を説明するフローチャートである。
【図１２】印刷装置の制御方法を説明するフローチャートである。
【図１３】検品装置の制御方法を説明するフローチャートである。
【図１４】印刷装置の制御方法を説明するフローチャートである。
【図１５】印刷装置の制御方法を説明するフローチャートである。
【図１６】印刷装置の制御方法を説明するフローチャートである。
【図１７】印刷装置の制御方法を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
次に本発明を実施するための最良の形態について図面を参照して説明する。以下、検品装置による検品処理を行いながら印刷処理を実行する印刷装置、印刷装置の制御方法、及びプログラムについて詳述する。
＜システム構成の説明＞
〔第１実施形態〕
図１は、本実施形態を示す印刷装置、検品装置を含む印刷システムの一例を示す概略図である。なお、本実施形態においては、複数のページから構成される複数のレコードを１つのジョブとして処理する印刷装置を例とするが、同等の印刷処理機能を備える複合機で構成されていてもよい。  
【００１４】
図1において、２０００はホストコンピュータで、ネットワーク１を介して印刷装置２と通信可能に構成されている。１００２は検品装置であり、印刷装置２から排紙された用紙の画像を読み取って印刷結果をチェックする機能処理を実行する。検品装置１００２は、ネットワーク１を経由して印刷装置２と情報を相互に送信する。なお、印刷装置２は、ホストコンピュータ２０００から受信するジョブから生成される印刷データをレコード単位に印刷する。
なお、ホストコンピュータ２０００は、プロドライバ等を含む印刷制御プログラムが生成した上述したＶＤＰを実行するためのジョブを印刷装置２に対して送信する。
図２は、図１に示した印刷装置２内のコントローラのハードウエア構成を示すブロック図である。
【００１５】
図２において、１００はコントローラで、ＣＰＵ１１、ＲＡＭ１２、プログラムＲＯＭ１３、データＲＯＭ１４等を備える。ＣＰＵ１１は、プログラムＲＯＭ１３に記憶されたプログラムに基づいて動作する。ＲＡＭ１２は、ＣＰＵ１１が動作する際のメインメモリおよび一時的に情報を記憶する領域として使用される。データＲＯＭ１４はプログラムが動作する際に呼び出されるフォントなどの固定情報が記憶される。
【００１６】
１５は通信インタフェースで、ネットワーク１と接続しホストコンピュータ２０００からのジョブを受け取り、検品装置１００２と検品情報を相互送信する。１６は操作部インタフェースで、ＵＩパネルとコントローラ１００とを接続する。
【００１７】
１７はプリンタインタフェースで、プリンタタエンジン１６０とコントローラ１００を接続する。１８は外部メモリインタフェースで、ハードディスクやフラッシュメモリとコントローラ１００を接続する。なお、上記１１〜１８はシステムバス２０で接続されている。
図３は、図１に示した検品装置１００２内のコントローラのハードウエア構成を示すブロック図である。
【００１８】
図３において、１１００はコントローラで、ＣＰＵ１０１１、ＲＡＭ１０１２、プログラムＲＯＭ１０１３、データＲＯＭ１０１４等を備える。ＣＰＵ１０１１は、プログラムＲＯＭ１０１３に記憶されたプログラムに基づいて動作する。ＲＡＭ１０１２は、ＣＰＵ１０１１が動作する際のメインメモリおよび一時的に情報を記憶する領域として使用される。データＲＯＭ１０１４は、プログラムが動作する際に呼び出される文字フォント照合用データやバーコード情報などの固定情報が記憶される。
１０１５は通信インタフェースで、ネットワーク１と接続し、印刷装置２と検品情報を相互送信する。１０１６は操作部インタフェースで、ＵＩパネルとコントローラ１１００を接続する。
【００１９】
１０１７はスキャナインタフェースで、スキャナエンジン１１６０とコントローラ１１００を接続する。１０１８は外部メモリインタフェースで、ハードディスクやフラッシュメモリとコントローラ１１００を接続する。上記１０１１〜１０１８は、システムバス２０で接続されている。
【００２０】
図４は、図１に示した印刷装置２に内蔵されるコントローラ１００のソフトウエア構成及びその周辺デバイスとの対応を示すブロック図である。
図４において、１１０はジョブ制御部である。１２０はＵＩ制御部で、操作部インタフェース１６を制御しＵＩパネル２００と通信する。１３０は通信処理部で、通信インタフェース１５を制御する。なお、ジョブ制御部１１０は、後述するように印刷装置２により印刷された用紙の画像を読取って印刷状態を検品する検品装置１００２から通知される検品結果を取得することが可能に構成されている。
【００２１】
１３５はイベント処理部であり、通信処理部１３０から受け取る検品結果イベントおよびジョブ制御部から受け取るページ補正イベントを処理する。１４０は画像処理部で、ジョブのページのイメージを作成する。１５０はプリンタ制御部で、プリンタインタフェース１７を制御する。１６０はプリンタエンジンで、プリンタインタフェース１７経由でプリンタ制御部１５０から制御される。
１７０は文書管理部で、ホストコンピュータ２０００から受信したジョブの情報を保存している。３００は保存されているジョブで、複数のレコード３１０とページ３２０とから構成される。
【００２２】
なお、上記ジョブ３００、レコード３１０、ページ３２０は、図２に示した外部メモリ３０上に保存されていて、文書管理部１７０により管理されている。また、ジョブ制御部１１０、ＵＩ制御部１２０、通信処理部１３０、イベント処理部１３５、画像処理部１４０、プリンタ制御部１５０制御および文書管理部１７０の管理処理は、プログラムＲＯＭ１３内の各プログラムに従ってＣＰＵ１１により実行される。
図５は、図１に示した検品装置１００２のコントローラのソフトウェアブロックおよびその周辺構成を示す概略図である。
【００２３】
図５において、１１１０はジョブ制御部で、ＵＩ制御部１１２０、ログ制御部１１７０、スキャナ制御部１１５０、画像処理部１１４０、通信処理部１１３０を制御する。なお、ＵＩ制御部１１２０は、操作部インタフェース１０１６を制御し、ＵＩパネル１２００と通信する。１１３０は通信処理部で、通信インタフェース１０１５を制御する。
【００２４】
１１４０は画像処理部で、読み取った画像から検品判定を行なう。１１５０はスキャナ制御部で、スキャナインタフェース１０１７を制御する。１１６０はスキャナエンジンで、スキャナインタフェース１０１７経由でスキャナ制御部１１５０から制御される。
１１７０はログ制御部で、検品結果のログ情報を保存している。
【００２５】
なお、１１１０、１１２０、１１３０、１１４０、１１５０の制御およびログ制御部１１７０の処理は、それぞれプログラムＲＯＭ１０１３内のプログラムに従ってＣＰＵ１０１１により実行される。
図６は、図３に示した文書管理部１７０にあるジョブ３００の内部構成例を示す図である。
図６において、ジョブ３００には一つもしくは複数のレコードの情報を持ち、各レコードは一つもしくは複数のページの情報を持つ。
図７は、図２に示したＵＩパネル２００に表示されるユーザインタフェース（ＵＩ）の一例を示す図である。本例は、ＵＩパネル２００に表示されるリカバリ印刷操作画面の一例を示す。なお、Ｗｅｂアプリケーションを実行するホストコンピュータ２０００上の印刷装置管理画面上に表示する構成とし、後述するような印刷指示をホストコンピュータ２０００から受付可能に構成してもよい。
図７において、２１０はＵＩパネル２００に表示されたリカバリ印刷画面である。２１１はジョブに含まれるレコードのリストである。本例では、停止したレコードから何レコード手前でエラーページ出力があったことを表示し、その後何レコードについては、正常ページ出力があった状態、あるいはエラーページ出力があった状態を表示することが可能に構成されている。
【００２６】
２１２はリカバリ対象となるレコードを設定するチェックボックスである。２１３はリカバリ印刷画面２１０で設定されたレコードの印刷を指示するための指定レコード印刷ボタンである。ここで、指定レコード印刷ボタン２１３は、ユーザからチェックボックス２１２で選択されたレコードのための再印刷要求を受け付けるためのボタンとして機能する。
２１４はリカバリ印刷後に継続印刷を指示するための継続印刷ボタンである。ここで、ジョブ制御部１１０は、継続印刷ボタン２１４の押下指示を、表示部に表示された印刷指示画面を介して受付ける。ユーザが本画面上で継続印刷ボタン２１４を押下すると、ジョブ制御部１１０は、印刷を停止したレコード以降のレコードに対する継続印刷要求を受け付ける。具体的には、ユーザが図７に示す画面表示状態で、継続印刷ボタン２１４を押下すると、ジョブ制御部１１０は、レコード８以降のレコードに対する継続印刷要求を受け付ける。
本実施形態によれば、各レコードの枚数がばらばらの場合や、印刷パフォーマンスを低下させたくない場合に柔軟に対応して、ユーザビリティーを向上できる。
【００２７】
図８は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０のジョブ印刷処理例である。なお、ジョブ制御部１１０はＣＰＵ１１、ＲＡＭ１２、プログラムＲＯＭ１３、データＲＯＭ１４等からなる。また、各ステップの手順はジョブ制御部１１０のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。以下、図１、図２、図４、図６を参考に、図８のフローチャートに従って、通常の印刷処理を説明する。
〔通常の印刷処理〕
【００２８】
ホストコンピュータ２０００からジョブは送信され、ジョブ制御部１１０は、ネットワーク１、通信処理部１３０経由で、そのジョブを受け取る。ジョブ制御部１１０は、ジョブを受け取ったことを認識すると、まず、イベント処理部１３５にジョブを開始したことを通知する（Ｓ１１）。さらに、ジョブ制御部１１０は、ジョブの情報を読み取り文書管理部１７０に保存する（Ｓ１２）。そして、ジョブ制御部１１０は、ジョブの情報からレコードの情報を読み出し（Ｓ１３）レコードの処理に入る。
【００２９】
ここで、ジョブ制御部１１０は、全レコードの処理を終了しているかどうかを判断し、レコードがあると判断した場合（Ｓ１４）、さらに、ジョブ制御部１１０は、レコード内の全てのページの処理を終了しているかどうかを判断する。ここで、全てのページの処理を終了していないとジョブ制御部１１０が判断した場合、Ｓ１６へ進む。
そして、Ｓ１６で、ジョブ制御部１１０は、ページの処理を実行して、画像処理部１４０で画像処理を行ない、プリンタ制御部１５０へページの印刷を依頼する。
【００３０】
次に、ジョブ制御部１１０は、ページの印刷が開始されたら、その時の時刻を元にそのページを持つ紙が排紙される時刻を予測し、文書管理部１７０上のページ３２０に予測時刻を保存する（Ｓ１７）。そして、ジョブ制御部１１０は、印刷開始後に、各種のセンサの情報からジャム等でジョブに印刷エラーが発生しているかどうかを判断する。ここで、印刷エラーが発生していないと判断した場合、例えばエラーがなく本来のページが排出された場合には、何も処理を実行せずに、Ｓ１５へ戻る。
一方、Ｓ１８で、印刷時エラーが発生しているとジョブ制御部１１０が判断した場合、本来出すべきより多くのページを排紙してしまう場合がある。
このような印刷時エラーが発生したと判断した場合、ジョブ制御部１１０は、重複したページ数をページ補正通知イベントとして、イベント処理部１３５へ通知して（Ｓ１９）、Ｓ１５へ戻る。
そして、ジョブ制御部１１０は、Ｓ１５に戻りレコード内の全ページの処理が終わるまでＳ１６からＳ１９の処理を繰り返す。
このようにして、Ｓ１５において、レコードの処理が終了したとジョブ制御部１１０が判断した場合に、Ｓ２０へ進む。
【００３１】
そして、Ｓ２０で、ジョブ制御部１１０は、文書管理部１７０上のページ情報に検品エラーを検出しているかどうかを判断する。ここで、文書管理部１７０上のページ情報に検品エラーを検出しているとジョブ制御部１１０が判断した場合、レコード単位での検品エラー時のリカバリ処理を行なう（Ｓ２１）。
【００３２】
一方、Ｓ２０で、検品エラーを検出していないとジョブ制御部１１０が判断した場合は、Ｓ２２へ進み、ジョブ制御部１１０は次のレコードの情報を取得し（Ｓ２２）、Ｓ１４へ戻り処理を繰り返す。そして、Ｓ１４で、ジョブ制御部１１０が全レコードの処理が終了していると判断した場合は、ジョブ印刷処理を終了する。
なお、図８に示すＳ２０の検品エラーを確認するタイミングにおいては、Ｓ１５でＹＥＳと判断されたレコードそのものではなく、当該Ｓ１５でＹＥＳとすでに判断されて検品装置１００２に搬送されたレコードに対する検品エラーである。つまり、すでに印刷されたレコードに対する検品エラー処理と、次のレコードの印刷処理とは並行処理されており、当該検品エラーによって、停止されるレコードとは、Ｓ１５でＹＥＳと判断された、次のレコードである。
また、Ｓ２０は、レコード単位の印刷処理が終了するまでに、検品装置１００２からの検品結果を判断する場合について説明したが、ジョブ制御部１１０が、レコード単位の印刷処理を複数レコード分終了するまでに、検品装置１００２からの検品結果を判断する構成としてもよい。ここで、複数レコード（Ｎレコード）のＮは、固定値としてもよいし、ユーザの印刷処理環境に応じて、可変設定可能な値としてもよい。
具体的には、ジョブ制御部１１０が複数のレコードの印刷処理を終了するまでに、検品装置１００２から取得する検品結果にエラー情報が含まれているかどうかを判断し、その判断結果に従い再印刷処理、継続印刷処理を制御する。
さらに、印刷装置２による印刷処理が高速に処理されるエンジンを備える場合には、上記処理では、印刷パフォーマンスが低下してしまう場合がある。
そこで、ジョブ制御部１１０が検品装置１００２から取得する検品結果にエラー情報が含まれていると判断した後、印刷装置２が印刷処理中のレコードから停止可能な最短のレコード区切り位置を検出する工程を加える。そして、ジョブ制御部１１０は、当該工程で検出したレコード区切り位置のレコードに対する継続印刷要求を受け付ける。
また、その際、ジョブ制御部１１０は、以下の停止条件を加えて総合的に判断してもよい。
（１）レコードの先頭ページの印刷開始時点で検品装置１００２がエラーを検出している場合には、印刷処理を停止する。
（２）複数のレコードでエラーを検知している場合は、印刷装置２がいずれかのレコードのいずれかのページの印刷処理中であっても、途中のページで印刷処理を停止して、他のページを破棄する。
（３）同一レコード内でエラーを複数検出した場合において、一定のページ数出力した場合に停止して、残ページの印刷処理を停止する。
〔リカバリ印刷処理〕
【００３３】
図９は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０によるＳ２１に対応するレコード単位での検品エラーリカバリ印刷処理の詳細手順例である。以下、図１、図２、図４、図６、図７を参考に、図９のフローチャートに従って、検品エラーが発生した場合のリカバリ印刷処理の一例を説明する。なお、各ステップの手順はジョブ制御部１１０のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。以下、ジョブ制御部１１０が検品結果にエラー情報が含まれていると判断した場合、印刷装置２により印刷処理が終了したレコードに後続するレコードの印刷処理を停止する制御について説明する。なお、その際、ジョブ制御部１１０は、検品装置１００２から取得する検品結果から生成されるレコード情報を含む印刷指示画面を表示部に表示する制御を後述するように実行する。
【００３４】
図８に示したＳ２１において、検品エラーが発生しているとジョブ制御部１１０が判断した場合、まず、Ｓ３１において、ジョブ制御部１１０は、文書管理部１７０のジョブ、レコード、ページ情報を読み出す（Ｓ３１）。
【００３５】
そして、ジョブ制御部１１０は、ＵＩ制御部１２０経由でＵＩパネル２００上にレコード単位での検品結果の情報を、エラーレコード／正常レコードを出力順に表示する。その表示例を、図７の２１１に示す。
【００３６】
次に、ジョブ制御部１１０は、ＵＩパネル２００上に表示されたＵＩに対するユーザからの指示を待つ（Ｓ３３）。ここで、ユーザはＵＩ２００の表示から、現在レコード７まで出力が完了して、レコード８以降は停止中（ジョブ処理待ち）の状態で、レコード４の中のいずれかのページでエラーを検知した状態であることを確認する。
【００３７】
そして、ユーザがＵＩ２１０上のチェックボックス２１２のレコード４を選択して、指定レコード印刷ボタン２１３を押下する。この際、ジョブ制御部１１０は、ＵＩ制御部１２０経由でリカバリ印刷の指示を受け取っているかどうかを判断する（Ｓ３４）。ここで、ＵＩ制御部１２０経由でリカバリ印刷の指示を受け取っているとジョブ制御部１１０が判断した場合、Ｓ３５へ進む。
【００３８】
そして、Ｓ３５で、ジョブ制御部１１０は、最初のレコードの情報を取得し、全指定レコードの印刷を終了しているかどうかを判断する（Ｓ３６）。ここで、全指定レコードの印刷を終了しているとジョブ制御部１１０が判断した場合、Ｓ３２へ戻る。一方、Ｓ３６で、全指定レコードの印刷を終了していないとジョブ制御部１１０が判断した場合、Ｓ３７へ進み、ジョブ制御部１１０は、再印刷すべきレコードのリカバリ印刷を開始するため、リカバリ印刷処理の開始をイベント処理部１３５に通知する（Ｓ３７）。
【００３９】
そして、Ｓ３８で、ジョブ制御部１１０は、レコード内の全てのページの処理を終了しているかどうかを判断する。ここで、全てのページの処理を終了していないとジョブ制御部１１０が判断した場合、Ｓ３９へ進み、ジョブ制御部１１０は、画像処理部１４０と、プリンタ制御部１５０を制御して、ページの印刷処理を行なう。そして、ジョブ制御部１１０は、ページの印刷が開始されたら、その時の時刻を元にそのページを持つ紙が排紙される時刻を予測し、文書管理部１７０上のページ３２０に予測時刻を保存する（Ｓ４０）。そして、ジョブ制御部１１０は、印刷開始後に、各種のセンサの情報からジャム等でジョブに印刷エラーが発生しているかどうかを判断する（４１）。ここで、印刷エラーが発生していないと判断した場合、例えばエラーがなく本来のページが排出された場合には、何も処理を実行せずに、Ｓ３８へ戻る。
【００４０】
一方、Ｓ４１で、印刷時エラーが発生したとジョブ制御部１１０が判断した場合、ジョブ制御部１１０は、重複したページ数をページ補正通知イベントとして、イベント処理部１３５へ通知して（Ｓ４２）、Ｓ３８へ戻る。
【００４１】
そして、Ｓ３８で、ジョブ制御部１１０がレコード内の全ページの印刷が終了していると判断した場合は、Ｓ４３へ進む。そして、Ｓ４３において、ジョブ制御部１１０は、次のレコードの情報を文書管理部１７０から取得し、Ｓ３６へ戻り、同様の処理を繰り返す。
【００４２】
なお、Ｓ３６において、指定されたレコードのリカバリ印刷処理が全て終了したら、Ｓ３２へ戻り、ジョブ制御部１１０は、ＵＩ制御部１２０経由で現在のジョブの情報からレコードの状態をＵＩパネル２００上に再度表示する。
【００４３】
ここで、ユーザが再度エラーを確認した場合、繰り返しリカバリ印刷処理を指示することができる。このようにして、エラーが無くなればユーザはリカバリ印刷されたレコードの出力結果を、エラーのあった出力と容易に差し替えることができる。
【００４４】
その後、ユーザが、図７に示したＵＩ画面上の継続印刷ボタン２１４を押下したことをジョブ制御部１１０が検出した場合、処理は、Ｓ３４からＳ４４へ進む。そして、ジョブ制御部１１０は、リカバリ印刷処理を終了したことをイベント処理部１３５に通知して、リカバリ印刷処理を終了する。
〔出力時刻予測処理〕
【００４５】
図１０は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０によるＳ４０に対応する出力時刻予測処理の詳細手順例である。以下、図１、図２、図４、図６、図７を参考に、図１０のフローチャートに従って、出力時刻予測処理の一例を説明する。なお、各ステップの手順はジョブ制御部１１０のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。
【００４６】
まず、ジョブ制御部１１０は、ＯＳ等から現在の時刻を取得し（Ｓ５１）、現在のエンジンの紙搬送速度を取得する（Ｓ５２）。そして、ジョブ制御部１１０は、印刷すべきページが両面印刷であるかどうかを判断する（Ｓ５３）。ここで、印刷すべきページが両面印刷すべきページであるとジョブ制御部１１０が判断した場合は、Ｓ５８へ進む。
【００４７】
一方、ここで、印刷すべきページが両面印刷すべきページでないとジョブ制御部１１０が判断した場合は、ジョブ制御部１１０は、搬送距離を片面印刷のパスの経路である、マーカーから排紙先までの距離とする（Ｓ５４）。そして、ジョブ制御部１１０は、Ｓ５４で求めた距離をＳ５２で求めた搬送速度で割って搬送時間を求める（Ｓ５５）。
【００４８】
さらに、ジョブ制御部１１０は、Ｓ５１で求めた現在の時刻に搬送時間を加えて出力予測時刻とし（Ｓ５６）、文書管理部１７０の該当するレコードの該当するページに情報として書き込んで（Ｓ５７）、本処理を終了する。
【００４９】
一方、Ｓ５３で、印刷すべきページが両面印刷であるとジョブ制御部１１０が判断した場合は、ジョブ制御部１１０は、印刷すべき当該ページが先に印刷されるページか後に印刷されるページかを判断する（Ｓ５８）。ここで、印刷すべき当該ページが後に印刷するページであるとジョブ制御部１１０が判断した場合は、片面印刷のページと同様にＳ５４へ行き以降の処理を継続する。
一方、Ｓ５８で、印刷すべき当該ページが、両面のうち先に印刷されるページあるとジョブ制御部１１０が判断した場合、Ｓ５９へ進む。
【００５０】
そして、ジョブ制御部１１０は、搬送距離を、両面印刷のパスの経路である、マーカーから両面反転ユニット、反転給紙パス、再度マーカー、排紙先までの距離とする（Ｓ５９）。次に、ジョブ制御部１１０は、この距離をＳ５２で求めた搬送速度で割って搬送時間を求める（Ｓ６０）。さらに、ジョブ制御部１１０は、Ｓ５１で求めた現在の時刻に搬送時間を加えて出力予測時刻とし、文書管理部１７０の該当するレコードの該当するページに情報として書き込んで（Ｓ５７）、本処理を終了する。
〔イベント処理〕
【００５１】
図１１は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のイベント処理部１３５のジョブ単位のイベント処理手順例である。以下、図１、図２、図４、図８、図９を参考に、図１１のフローチャートに従って、出力時刻予測処理の一例を説明する。なお、各ステップの手順はイベント処理部１３５のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。
図８のＳ１１で印刷ジョブが開始されたら、イベント処理部１３５もジョブ単位でのイベント処理を開始する。
【００５２】
イベント処理部１３５は、文書管理部１７０が管理しているジョブの全ページを終了しているかどうかを判断する（Ｓ７１）。ここで、イベント処理部１３５は、ジョブがある間はイベントを受け取るのを待つ（Ｓ７２）。そして、受け取ったイベントが検品装置１００２からの検品通知であるかどうかを判断する（Ｓ７３）。ここで、イベント処理部１３５がイベントを受け取ったと判断した場合、Ｓ７４へ進む。
【００５３】
そして、イベント処理部１３５は、そのイベントを受け取った時刻から、ジョブのどのページに対するイベントかを計算する（Ｓ７４）。なお、各ページには排紙予測時刻が書かれているので、それと比較することによりどのページに対するものかを推測する。
【００５４】
なお、検品装置１００２からのイベントには検品装置１００２が起動した時点からのページ番号が含まれているが、印刷装置２で印刷した順序とは全く同じではないので、印刷装置２内に保存されているどのページを指すイベントかを補正する必要がある。そこで、Ｓ７４でページカウンタを補正した場合には、イベント処理部１３５はこれを排紙される順序を示すページカウンタに記憶させる。
【００５５】
次に、イベント処理部１３５は、イベントの通知内容が検品で正常であるかどうかを判断する（Ｓ７５）。ここで、通知内容が検品で正常であるとイベント処理部１３５が判断した場合には、イベント処理部１３５は該当するページカウンタが示すページに正常終了だったことを書き込み（Ｓ７６）、Ｓ７１へ戻る。
一方、Ｓ７５で、検品エラーであるとイベント処理部１３５が判断した場合は、検品エラーであることを書き込んで（Ｓ７７）、Ｓ７１へ戻り、さらに、次のイベントを待つ。
【００５６】
一方、Ｓ７３で、イベントが検品通知でないとイベント処理部１３５が判断した場合は、通知されたイベントがジョブ制御部１１０からのページ補正通知であるかどうかを判断する（Ｓ７８）。ここで、通知されたイベントがページ補正通知であるとイベント処理部１３５が判断した場合は、イベント処理部１３５はページカウンタを補正数分戻して（Ｓ７９）、Ｓ７１へ戻る。
【００５７】
一方、Ｓ７８で、イベントの通知がページ補正通知でないとイベント処理部１３５が判断した場合は、通知されたイベントがリカバリ印刷の開始の通知であるのか、リカバリ印刷の終了の通知であるのかを判断する（Ｓ８０）。ここで、通知されたイベントの属性がリカバリ印刷を開始したものであるとイベント処理部１３５が判断した場合は、イベント処理部１３５はページカウンタをリカバリ印刷のレコードの先頭を指すよう補正して（Ｓ８１）、Ｓ７１へ戻る。
【００５８】
一方、通知されたイベントの属性がリカバリ印刷を終了したイベントであるとイベント処理部１３５が判断した場合は、イベント処理部１３５は、ページカウンタを最後の出力の次のページへ補正して（Ｓ８２）、Ｓ７１へ進む。
一方、Ｓ７１で、ジョブの印刷処理が終了しているとイベント処理部１３５が判断した場合は、イベント処理を終了する。
〔検品処理〕
【００５９】
図１２は、本実施形態を示す検品装置の制御方法を説明するフローチャートである。本例は、図３に示した検品装置１００２のコントローラ１１００のジョブ制御部１１１０の検品処理例である。ジョブ制御部１１１０はＣＰＵ１０１１、ＲＡＭ１０１２、プログラムＲＯＭ１０１３、データＲＯＭ１０１４等からなり、各ステップの手順はジョブ制御部１１１０のプログラムＲＯＭ１０１３に記憶され、ＣＰＵ１０１１により実行される。以下、図１、図３、図５を参考に、図１２のフローチャートに従って検品処理を説明する。
なお、検品処理は、出力結果単独での検品と、印刷装置２側からの正解データを照合して行なう検品があるが、説明を簡単にするために後者の図示は行なわない。
【００６０】
検品装置１００２が起動すると、ジョブ制御部１１１０は、ＲＡＭ１０１２上にある検品装置１００２で処理したページ数を示すページカウンタを初期化する（Ｓ９１）。印刷装置２から印刷結果が排紙されると、ジョブ制御部１１１０はスキャナ制御部１１５０経由でスキャナエンジン１１６０を動作させてページ単位で印刷結果を検品するためのスキャンを開始する（Ｓ９２）。
【００６１】
ジョブ制御部１１１０は、ページカウンタをインクリメントし（Ｓ９３）、排紙されたページの画像を読み取る（Ｓ９４）。そして、ジョブ制御部１１１０は、その画像を画像処理部１１４０でチェックしエラーかどうか判断する（Ｓ９５）。なお、チェックは当該ページの描画情報との比較によるものとする。
【００６２】
ここで、ジョブ制御部１１１０がチェックした結果が正常であると判断した場合（Ｓ９６）、ジョブ制御部１１１０はページカウンタの値および正常であることを通信処理部１１３０経由で印刷装置２に通知して（Ｓ９７）、Ｓ９３へ戻る。
【００６３】
一方、Ｓ９６で、チェックした結果がエラーであるとジョブ制御部１１１０が判断した場合、ジョブ制御部１１１０は、ページカウンタの値およびエラーであることを通信処理部１１３０経由で印刷装置２に通知して（Ｓ９８）、Ｓ９３へ戻る。ジョブ制御部１１０は、検品装置１００２が動作している限りこの処理を繰り返す。
【００６４】
これにより、ジョブ制御部１１１０は、検品装置１００２が通知する検品エラー情報を取得したタイミングで、検品エラーとなったレコードを文書管理部１７０で管理するジョブ情報から特定できる。そして、ジョブ制御部１１１０は、当該検品エラー情報を取得時に、すでに印刷処理が開始されている後続のレコードはそのまま印刷処理を続行させ、その次のレコードについては、印刷処理が開始されないように制御できる。
【００６５】
したがって、複数のレコードが連なるような１つのジョブの処理中に、検品エラーとなった時点で処理されているレコードはそのまま印刷し、その次のレコードについては印刷されずに済む。その際、ユーザは、リカバリ印刷と、リカバリ印刷に代えて、後続のレコードの印刷処理を開始させることも可能となる。例えば検品エラーとなったレコードの印刷結果と、検品エラーが通知された時点で処理中のレコードまでの排紙結果を排紙先から取り除いた状態で、残る全レコードの印刷処理を終了させることも可能となる。
【００６６】
本実施形態によれば、印刷装置２で複数のレコードを持つジョブの印刷を行なっている間に、検品装置１００２でエラーページを検出すると、その後のレコードを印刷開始する前に印刷処理を停止させることが可能となる。
【００６７】
そして、ＵＩ上には何レコード前にエラーのページがあるか、その後に何レコードの正常出力があるかが表示されていて一目で確認できる。ユーザは、表示されたＵＩ画面に表示されたボタンを指示することで、エラーページを含むレコードのみをリカバリ印刷指示する。そして、印刷が終了するとリカバリ印刷した結果の出力に対する正常もしくはエラーの検品結果がＵＩ画面上に再度表示される。
【００６８】
このリカバリ印刷結果表示により、リカバリ印刷が正常であれば、ユーザは容易にそれまでに出力された結果の最後から数レコード戻ったところにあるエラーの出力結果を抜き取り、リカバリ印刷した結果と差し替えることができる。また、リカバリ印刷が再度エラーになるようであれば、原因を取り除けるまで何度でもそのレコードだけを印刷することも可能となる。
さらに、検品装置１００２により印刷エラーが発生してからは、無駄なページを印刷することがあっても、次のレコードに対する印刷処理は開始されないように制御されているため、用紙やトナーの無駄を抑えることが可能となる。
また、本実施形態では、１つのレコードのページ数が異なる場合、例えばＶＤＰデータを例とするが、１つのレコードのページ数が同じ場合であっても、本発明を適用可能である。
本実施形態によれば、排紙された印刷物の中から正常に印刷処理されたレコードの印刷物と、検品エラーとなったレコードの印刷物とを特定して、再印刷されるレコードの印刷物と検品エラーとなったレコードの印刷物とを確実に差し替えることができる。
【００６９】
〔第２実施形態〕
上記実施形態では、数ページからなるレコードを想定しているので、エラーを検知してすぐ次のレコードの印刷を停止すればよかった。
しかし、レコード内のページ数が、例えば５００ページを越えるような非常にページ数が多い場合には、やはり無駄に用紙やトナーを消費してしまう場合がある。
【００７０】
そこで、以下の実施形態では、非常にページ数が多いジョブで検品エラーが発生した場合の処理を詳述する。なお、ハードウエアやソフトウエアの構成等に対応する図１〜図７、図９〜図１２は第１実施形態と同じ構成については説明を省略する。
【００７１】
図１３は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０のジョブ印刷処理手順例である。以下、図１、図２、図４、図６を参考に、図１３のフローチャートに従って、出力時刻予測処理の一例を説明する。なお、各ステップの手順はイベント処理部１３５のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。
なお、Ｓ１１１〜Ｓ１１９は第１実施形態における図８のフローチャートのＳ１１〜Ｓ１９同じなので説明を省略する。
【００７２】
各ページの印刷ごとに、ジョブ制御部１１０は、そのレコード内で停止する条件に該当するかどうかをチェックする（Ｓ１２０）。ここで、停止する条件に該当するとジョブ制御部１１０が判断した場合、１レコード内での検品エラー時のリカバリ印刷処理を行なう（Ｓ１２１）。
【００７３】
次に、ジョブ制御部１１０は、１レコード内での検品エラー時のリカバリ印刷処理中で、キャンセルの指示があるかどうかを判断する（Ｓ１２２）。ここで、キャンセルの指示があるとジョブ制御部１１０が判断した場合、本処理を終了する。
【００７４】
一方、Ｓ１２０で、ジョブ制御部１１０が継続条件に該当すると判断した場合、もしくはＳ１２２で、ジョブ制御部１１０がキャンセルの指示がないと判断した場合、Ｓ１１５へ戻り、処理を継続する。
なお、Ｓ１２３〜Ｓ１２５は図８のフローチャートのＳ２０〜Ｓ２２と同じなので説明を省略する。
【００７５】
図１４は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０の印刷処理のうちの、レコード内停止条件を判断する処理手順例である。以下、図１、図２、図４、図６を参考に、図１４のフローチャートに従って、レコード内停止条件を判断する処理の一例を説明する。なお、各ステップの手順はイベント処理部１３５のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。
【００７６】
まず、ジョブ制御部１１０は、１ページの印刷処理を行なう毎に、現在印刷中のページを含んでいるレコード内のページを最初からチェックして、検品エラーがあるかどうかを判断する（Ｓ１３１）。ここで、検品エラーページがあるとジョブ制御部１１０が判断した場合、さらに、ジョブ制御部１１０は、そのページから現在の出力ページ数までがある一定の値Ｌ（しきい値Ｌ）より大きいかどうか判断する（Ｓ１３２）。
【００７７】
ここで、そのページから現在の出力ページ数までがある一定の値Ｌ（しきい値Ｌ）より大きいとジョブ制御部１１０が判断した場合、すなわち、レコードが大きくなかなか次のレコードが開始しないと判断した場合、印刷処理を停止すると決定する。
【００７８】
一方、Ｓ１３１で検品エラーがない、もしくはＳ１３２でエラーページから現在の出力ページまでがＬ未満であるとジョブ制御部１１０が判断した場合、ジョブ印刷処理を継続すると決定する。つまり、ジョブ制御部１１０は、もうすぐレコード単位での処理が終了するかもしれないと判断した場合、ジョブ印刷処理を継続すると決定する。なお、本処理におけるＬの数値は、印刷装置２に固定で持つかユーザが設定あるいは印刷すべきジョブの最大ページ数等を考慮して可変に設定できるものとする。
【００７９】
図１５は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０による、図１３に示したＳ１２１における１レコード内での検品エラー時の検品エラーリカバリ印刷処理の詳細手順例である。以下、図１、図２、図４、図６、図７を参考に、図１５のフローチャートに従って、検品エラーが発生した場合のリカバリ印刷処理の一例を説明する。なお、各ステップの手順はジョブ制御部１１０のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。以下、図１、図２、図４、図６を参考に、図１５のフローチャートに従って、１レコード内での検品エラー時のリカバリ処理を説明する。
【００８０】
検品装置１００２が実行する印刷装置２から排紙搬送される画像の検品処理において、検品エラーが発生し１レコード内での検品エラーリカバリ処理に入ったら、ジョブ制御部１１０は、文書管理部１７０の現在処理中のレコードを参照する（Ｓ１５１）。さらにジョブ制御部１１０は、ＵＩ制御部１２０経由でＵＩパネル２００上にエラーのあるレコードの関わる情報を表示し（Ｓ１５２）、ＵＩパネル２００からユーザによる指示入力を待つ（Ｓ１５３）。
【００８１】
ここで、ジョブ制御部１１０は、ユーザからの指示入力がキャンセル指示であるかどうかを判断する（Ｓ１５４）。ここで、ユーザからの指示入力がキャンセル指示であるとジョブ制御部１１０が判断した場合は、ジョブ制御部１１０は本処理を終了する。
【００８２】
一方、Ｓ１５４で、ユーザからの指示入力がキャンセル指示でないと判断した場合、ジョブ制御部１１０は、ユーザからの指示入力がレコードのリカバリ印刷の指示であるかどうかを判断する（Ｓ１５５）。ここで、ユーザからの指示入力がレコードのリカバリ印刷の指示でないとジョブ制御部１１０が判断した場合は、例えば印刷継続指示であるとジョブ制御部１１０が判断した場合は、本処理を終了する。
【００８３】
一方、Ｓ１５５でリカバリ印刷指示であるとジョブ制御部１１０が判断した場合は、レコードの先頭からリカバリ印刷を行うため、Ｓ１５６へ進む。そして、Ｓ１５６で、ジョブ制御部１１０は、レコード内の停止前のページまでリカバリ印刷処理を完了しているかどうかを判断する。ここで、レコード内の停止前のページまでリカバリ印刷処理を完了していると判断した場合は、本処理を終了する。
一方、Ｓ１５６で、レコード内の停止前のページまでリカバリ印刷処理を完了していないとジョブ制御部１１０が判断した場合は、Ｓ１５７へ進む。
【００８４】
そして、通常の印刷処理と同様にジョブ制御部１１０は、ジョブの１ページを印刷するページ印刷処理を実行する（Ｓ１５７）。次に、ジョブ制御部１１０は、そのページ印刷処理時の時刻から出力予測時刻をページに保存する（Ｓ１５８）。
【００８５】
次に、ジョブ制御部１１０は、リカバリ印刷時にエラーがあるかどうかを判断する（Ｓ１５９）。ここで、リカバリ印刷時にエラーがあるとジョブ制御部１１０が判断した場合は、ジョブ制御部１１０は、イベント処理部１３５へページ補正通知イベントを送信して（Ｓ１６０）、Ｓ１５６へ戻る。
一方、Ｓ１５９で、リカバリ印刷時にエラーが無いとジョブ制御部１１０が判断した場合は、何もせず、次のページを処理する。
このようにして、ジョブ制御部１１０がレコード内で停止しているページの前のページの処理まで終了したら（Ｓ１５６）、ジョブ制御部１１０は、本処理を終了する。
【００８６】
本実施形態によれば、レコードに含まれるページが多く、エラーを検出したレコードをまだ印刷している場合でも印刷を停止させることが可能となる。また、その際、ユーザはリカバリ印刷処理を実行させることにより、検品エラーが発生したレコードの先頭ページから停止しているページまでを再度印刷して検品することができる。
【００８７】
そして、再印刷による検品でエラーが発生していない場合、出力結果の中から、途中まで印刷した現在のレコードを取り除き、残りの印刷を継続できる。一方、検品で再度エラーになるようであれば、ユーザはジョブをキャンセルすることも可能となる。また、本実施形態は、リカバリ処理を変更する必要がないため、つまり、第１実施形態と処理と矛盾しないため、一つのシステム内で本処理を共存させることも可能となる。
【００８８】
〔第３実施形態〕
第１、第２実施形態では、リカバリ印刷処理を実行することで、検品エラーとなったジョブを再度印刷すれば正しく出力できる場合について説明した。
しかしながら、処理されたジョブの元のデータが間違っている場合、もしくは印刷装置２のエンジンの不調によりエラーページが多発するような場合に、リカバリ印刷処理を即座に停止したい場合に柔軟に対応できない場合がある。
そこで、上記の要因等に対して柔軟に印刷処理を行う実施形態について詳述する。
なお、なお、ハードウエアやソフトウエアの構成等に対応する図１〜図７、図９〜図１３、図１５は第２実施形態と同じ構成については説明を省略する。
【００８９】
図１６は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０の印刷処理のうちの、図１３に示すＳ１２０に対応するレコード内停止条件を判断する処理手順例である。以下、図１、図２、図４、図６を参考に、図１６のフローチャートに従って、レコード内停止条件を判断する処理の一例を説明する。なお、各ステップの手順はイベント処理部１３５のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。
【００９０】
ジョブ制御部１１０は、１ページの印刷処理を行なう毎に、現在印刷中のページを含んでいるレコード内のページを最初からチェックして、検品エラーがあるかどうかを判断する（Ｓ１３３）。ここで、検品エラーページがあるとジョブ制御部１１０が判断した場合、同じレコード内にいくつエラーページがあるかどうかを判断する。具体的には、ジョブ制御部１１０は、同じレコード内にエラーページ数がある一定の値Ｍより大きいかどうかを判断する（Ｓ１３４）。
【００９１】
ここで、同じレコード内にエラーページ数がある一定の値Ｍより大きいとジョブ制御部１１０が判断した場合、元のデータが間違っているか、印刷装置２のエンジンが不調と判断して、次のレコードまで待たずにジョブ制御部１１０は印刷処理を停止する。
【００９２】
一方、Ｓ１３３で検品エラーがない、もしくはＳ１３４でエラーページ数がＭ未満であるとジョブ制御部１１０が判断した場合、レコード単位でのリカバリ印刷が最適であると判断し、ジョブ印刷処理を継続する。なお、この一定の値の数値は、印刷装置２に固定で持つか、ユーザが設定あるいは可変設定（他の停止条件との関係で可変設定する）できるように構成してもよい。
【００９３】
本実施形態によれば、レコード内に複数のエラーページがあると判断した場合には、まだそのレコードを印刷していても印刷を即座に停止できるように制御することが可能となる。これにより、リカバリ印刷開始直後に、ユーザがリカバリ印刷を停止させることが可能となる。
〔第４実施形態〕
第１、第２実施形態では、リカバリ印刷処理を実行することで、検品エラーとなったジョブを再度印刷すれば正しく出力できる場合について説明した。
【００９４】
しかしながら、処理されたジョブの元のデータが間違っている場合、もしくは印刷装置２のエンジンの不調によりエラーページが多発するような場合に、リカバリ印刷処理を即座に停止したい場合に柔軟に対応できない場合がある。
そこで、上記の要因等に対して柔軟に印刷処理を行う他の実施形態について詳述する。
なお、なお、ハードウエアやソフトウエアの構成等に対応する図１〜図７、図９〜図１３、図１７は第２実施形態と同じ構成については説明を省略する。
【００９５】
図１７は、本実施形態を示す印刷装置の制御方法を説明するフローチャートである。本例は、図１に示した印刷装置２のコントローラ１００のジョブ制御部１１０の印刷処理のうちの、図１３に示すＳ１２０に対応するレコード内停止条件を判断する処理手順例である。以下、図１、図２、図４、図６を参考に、図１７のフローチャートに従って、レコード内停止条件を判断する処理の一例を説明する。なお、各ステップの手順はイベント処理部１３５のプログラムＲＯＭ１３に記憶され、ＣＰＵ１１により実行される。
【００９６】
ジョブ制御部１１０は、１ページの印刷処理を行なうごとに、現在印刷中のページを含んでいるレコード内のページを最初からチェックして、検品エラーがあるかどうかを判断する（Ｓ１３５）。ここで、検品エラーページがあれば、ジョブ制御部１１０は同じレコード内にエラーページが連続しているかどうかを判断する。具体的には、ジョブ制御部１１０は同じレコード内にエラーページが連続している連続数がある一定の値Ｎ以上かどうか判断する（Ｓ１３６）。ここで、ジョブ制御部１１０は同じレコード内にエラーページが連続している連続数がある一定の値Ｎ以上であると判断した場合、元のデータが間違っているか、印刷装置のエンジンが不調と判断する。この場合、ジョブ制御部１１０は次のレコードまで待たずに印刷処理を停止する。
【００９７】
一方、Ｓ１３５で検品エラーがない、もしくはＳ１３６で連続エラーページ数がＮ未満であるとジョブ制御部１１０が判断した場合、ジョブ制御部１１０は、レコード単位でのリカバリ印刷が最適と判断し、ジョブ印刷処理を継続する。なお、このＭの数値は、印刷装置に固定で持つか、ユーザが設定あるいは可変設定（他の停止条件との関係で可変設定する）できるように構成してもよい。
【００９８】
本実施形態によれば、レコード内に連続したエラーページがあると判断した場合には、まだそのレコードをリカバリ印刷していても、当該処理中のリカバリ印刷をユーザの指示で停止することができる。これにより、リカバリ印刷開始直後に、ユーザがリカバリ印刷を停止させることが可能となる。
【００９９】
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をパソコン（コンピュータ）等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
【０１００】
なお、各実施形態において説明したフローチャートにおいて、記載されたステップ以外のステップを組み入れたり、ステップの処理順序を変更したりすることは、本発明の趣旨から外れるものではない。さらに、各実施形態あるいは各実施形態のステップを組み合わせた構成とすることも、本発明の趣旨から外れるものではない。
【０１０１】
また、本発明では、ＶＤＰジョブを例とした印刷装置を説明したが、グループソート機能を備える印刷装置に適用してもよい。この場合、シート後処理装置が印刷装置に接続されることはいうまでもない。
また、上記実施形態では、検品装置１００２から通知される検品結果にエラー情報が含まれている場合に、印刷処理を停止する場合について説明したが、ジョブを停止させるための停止方法に属性を持たせ、各ジョブ毎に設定された停止方法の属性に従い、動的に停止方法を切り替える構成としてもよい。
さらに、再印刷処理で印刷した印刷ページと既に印刷した印刷ページの差し替えを確実に実行するため、ジョブ制御部１１０が以下のように制御してもよい。具体的には、ジョブ差し替えのためにあらかじめユーザやホストコンピュータから指示される最大ページ数を外部メモリ３０に保持させ、上記検品結果からエラー情報を取得した際に、最大ページ数を超えないレコードで印刷処理を停止するように制御する構成としてもよい。
【符号の説明】
【０１０２】
２  印刷装置
１００２  検品装置
【図１】
2012171311.tif 000003
【図２】
2012171311.tif 000004
【図３】
2012171311.tif 000005
【図４】
2012171311.tif 000006
【図５】
2012171311.tif 000007
【図６】
2012171311.tif 000008
【図７】
2012171311.tif 000009
【図８】
2012171311.tif 000010
【図９】
2012171311.tif 000011
【図１０】
2012171311.tif 000012
【図１１】
2012171311.tif 000013
【図１２】
2012171311.tif 000014
【図１３】
2012171311.tif 000015
【図１４】
2012171311.tif 000016
【図１５】
2012171311.tif 000017
【図１６】
2012171311.tif 000018
【図１７】
2012171311.tif 000019