(57)【要約】【課題】  ＶＤＰジョブを処理可能な画像形成システムにおいて、レコード単位でＶＤＰジョブの中断とプロモート処理を可能とし、無駄な印刷出力を省き、効率的なＶＤＰジョブ印刷を可能とするＶＤＰジョブ制御方法を提供する。【解決手段】  複数ページのページ情報からなるレコードを複数有するＶＤＰジョブを受信し、ページ情報に基づいて、出力物を出力可能な画像形成装置であって、印刷ジョブを受信するＶＤＰジョブ受信部２０２と、受信した印刷ジョブの出力処理中に発生するエラーを検知するＶＤＰジョブ解析部２０６と、エラーが検知された印刷ジョブがバリアブル印刷ジョブである場合に、エラーが検知されたレコードの出力処理を中断し、エラーが検知されたレコードの後続のレコードに含まれるページから出力処理を再開させるサスペンドレコード制御部２０４とを有することを特徴とする。【選択図】  図７
2011018977.tif 000002
【特許請求の範囲】
【請求項１】
複数ページのページ情報からなるレコードを複数有するバリアブル印刷ジョブを受信し、前記ページ情報に基づいて、前記レコード毎に固定のマスターオブジェクト及び前記レコード毎に可変のバリアブルオブジェクトからなる出力物を出力することが可能な画像形成装置であって、
印刷ジョブを受信する受信手段と、
前記受信手段により受信した印刷ジョブを出力物として出力するための出力処理を実行する出力手段と、
前記出力処理の実行中に発生するエラーを検知する検知手段と、
前記検知手段によりエラーが検知された印刷ジョブが前記バリアブル印刷ジョブである場合に、前記エラーが検知されたページのページ情報を含むレコードに含まれるページの出力処理を中断し、当該バリアブル印刷ジョブに含まれるレコードのうち、前記エラーが検知されたページのページ情報を含むレコードの後続のレコードに含まれるページから出力処理を再開させる制御手段とを有することを特徴とする画像形成装置。
【請求項２】
前記制御手段は、前記検知手段によりエラーが検知された印刷ジョブが前記バリアブル印刷ジョブではない場合に、前記エラーが検知された印刷ジョブを中断し、当該印刷ジョブの後続の印刷ジョブから出力処理を再開させることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記制御手段により中断されたレコードに関する情報を記憶する記憶手段と、
前記記憶手段に記載されている前記中断されたレコードに関する情報をユーザに報知する報知手段とをさらに有することを特徴とする請求項１または２いずれかに記載の画像形成装置。
【請求項４】
前記報知手段は、前記制御手段によりレコードに含まれるページの出力処理が中断されたことに基づいて、当該中断されたレコードに関する情報をユーザに報知することを特徴とする請求項３に記載の画像形成装置。
【請求項５】
前記報知手段は、前記中断されたレコード以外の前記バリアブル印刷ジョブの出力処理が終了したことに基づいて、当該バリアブル印刷ジョブにおいて中断されたレコードに関する情報をユーザに報知することを特徴とする請求項３に記載の画像形成装置。
【請求項６】
前記制御手段により中断されたレコードの再開指示をオペレータから受け付ける受付手段をさらに有し、
前記制御手段は、前記受付手段により受け付けた前記再開指示に従って、前記中断されたレコードに含まれるページを前記出力手段に出力処理させることを特徴とする請求項１乃至５いずれか１項に記載の画像形成装置。
【請求項７】
前記制御手段により中断されたレコードを再印刷するための再印刷ジョブを生成する生成手段を有することを特徴とする請求項１乃至６いずれか１項に記載の画像形成装置。
【請求項８】
前記制御手段は、出力対象のレコードの１つ前のレコードが中断されたレコードである場合に、当該出力対象のレコードに含まれるページを前記出力手段にシフト排紙させることを特徴とする請求項１乃至７いずれか１項に記載の画像形成装置。
【請求項９】
前記制御手段は、前記記憶手段に記憶される中断されたレコードの数が制限値を超えた場合には、前記バリアブル印刷ジョブを中断し、当該バリアブル印刷ジョブの後続の印刷ジョブから出力処理を再開させることを特徴とする請求項１乃至８いずれか１項に記載の画像形成装置。
【請求項１０】
前記出力手段が行う出力処理は、少なくとも前記ページ情報に従って前記マスターオブジェクトと前記バリアブルオブジェクトとの関連付けを行う解析処理、印刷データを生成するＲＩＰ処理、記録用紙に印刷データを印字する印刷処理のうち１つを含むことを特徴とする請求項１乃至９いずれか１項に記載の画像形成装置。
【請求項１１】
複数ページのページ情報からなるレコードを複数有するバリアブル印刷ジョブを受信し、前記ページ情報に基づいて、前記レコード毎に固定のマスターオブジェクト及び前記レコード毎に可変のバリアブルオブジェクトからなる出力物を出力することが可能な画像形成装置の制御方法であって、
印刷ジョブを受信する受信工程と、
前記受信工程で受信した印刷ジョブを出力物として出力するための出力処理を実行する出力工程と、
前記出力処理の実行中に発生するエラーを検知する検知工程と、
前記検知工程でエラーが検知された印刷ジョブが前記バリアブル印刷ジョブである場合に、前記エラーが検知されたページのページ情報を含むレコードに含まれるページの出力処理を中断し、当該バリアブル印刷ジョブに含まれるレコードのうち、前記エラーが検知されたページのページ情報を含むレコードの後続のレコードに含まれるページから出力処理を再開させる制御工程とを有することを特徴とする制御方法。
【請求項１２】
前記制御工程では、前記検知工程でエラーが検知された印刷ジョブが前記バリアブル印刷ジョブではない場合に、前記エラーが検知された印刷ジョブを中断し、当該印刷ジョブの後続の印刷ジョブから出力処理を再開させることを特徴とする請求項１１に記載の制御方法。
【請求項１３】
前記制御工程で中断されたレコードに関する情報を記憶する記憶工程と、
前記記憶工程において記載された前記中断されるレコードに関する情報をユーザに報知する報知工程とをさらに有することを特徴とする請求項１１または１２いずれかに記載の制御方法。
【請求項１４】
前記報知工程では、前記制御工程でレコードに含まれるページの出力処理が中断されたことに基づいて、当該中断されたレコードに関する情報をユーザに報知することを特徴とする請求項１３に記載の制御方法。
【請求項１５】
前記報知工程では、前記中断されたレコード以外の前記バリアブル印刷ジョブの出力処理が終了したことに基づいて、当該バリアブル印刷ジョブにおいて中断されたレコードに関する情報をユーザに報知することを特徴とする請求項１３に記載の制御方法。
【請求項１６】
前記制御工程で中断されたレコードの再開指示をオペレータから受け付ける受付工程をさらに有し、
前記制御工程では、前記受付工程で受け付けた前記再開指示に従って、前記中断されたレコードに含まれるページを前記出力工程に出力処理させることを特徴とする請求項１１乃至１５いずれか１項に記載の制御方法。
【請求項１７】
前記制御工程で中断されたレコードを再印刷するための再印刷ジョブを生成する生成工程を有することを特徴とする請求項１１乃至１６いずれか１項に記載の制御方法。
【請求項１８】
前記制御工程では、出力対象のレコードの１つ前のレコードが中断されたレコードである場合に、当該出力対象のレコードに含まれるページを前記出力工程にシフト排紙させることを特徴とする請求項１１乃至１７いずれか１項に記載の制御方法。
【請求項１９】
前記制御工程では、前記記憶工程において記憶される中断されたレコードの数が制限値を超えた場合には、前記バリアブル印刷ジョブを中断し、当該バリアブル印刷ジョブの後続の印刷ジョブから出力処理を再開させることを特徴とする請求項１１乃至１８いずれか１項に記載の制御方法。
【請求項２０】
前記出力工程で行う出力処理は、少なくとも前記ページ情報に従って前記マスターオブジェクトと前記バリアブルオブジェクトとの関連付けを行う解析処理、印刷データを生成するＲＩＰ処理、記録用紙に印刷データを印字する印刷処理のうち１つを含むことを特徴とする請求項１１乃至１９いずれか１項に記載の制御方法。
【請求項２１】
請求項１１乃至２０のいずれか１項に記載の制御方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バリアブル印刷ジョブを印刷可能な画像形成装置、その制御方法及びプログラムに関するものである。
【背景技術】
【０００２】
顧客一人ひとりのニーズにあったデータを印刷するバリアブル印刷（Ｖａｒｉａｂｌｅ  Ｄａｔａ  Ｐｒｉｎｔｉｎｇ）の需要が拡大している。バリアブル印刷ジョブ（ＶＤＰジョブ）は、１つのジョブに対して登録されている顧客データを各レコード単位で印刷するため、１つのジョブに大量（例えば数万レコード）のレコードが含まれる。また、ＶＤＰジョブでは、各レコードに対して、ＶＤＰオブジェクトが関連付けられ、背景となるマスターオブジェクトと合成されて印刷される。このようなＶＤＰジョブは複数のレコードが含まれていてもジョブ単位で管理されている。
【０００３】
しかしながら、大量のレコードを含むジョブがジョブ単位で管理されているため、効率的に印刷処理できないケースが発生する。その例として、ＶＤＰジョブに含まれる１つのレコードが何らかのエラーが発生し印刷できなかった場合である。ここでＶＤＰジョブにおいてレコード単位で発生するエラーの例としては、あるレコードが参照するＶＤＰオブジェクトが指定された参照先に存在しなかった場合、あるレコード単位で指定された用紙が給紙段にセットされていない場合が挙げられる。
【０００４】
従来の印刷システムでは、ジョブ単位では、印刷不可となったジョブをサスペンドし、プリントキューに入っている実行可能な次のジョブをプロモートさせ、印刷を継続させるサスペンド／プロモート機能はある。しかし、この従来の機能では、ＶＤＰジョブに含まれるレコード単位でエラーが発生した場合に、エラーが発生したジョブ全体をサスペンドし、後続の印刷可能なジョブをプロモートしてしまう。そのため、エラーが発生したレコードの後続レコードが印刷可能なレコードであっても印刷を継続することができず、非効率的である。また、再印刷時には既に印刷済みのレコードも印刷対象となってしまい、無駄な印刷が発生することになる。
【０００５】
さらに、従来の印刷システムでは、通常のＰＤＬジョブにおいてページ単位でエラー発生ページの印刷をスキップし、ジョブ内の残りのページを印刷可能とするエラースキップ機能がある。しかし、このエラースキップ機能はページ単位で動作しているため、ＶＤＰジョブに含まれる各レコードが複数ページで構成されているような場合には適していない。
【０００６】
このように従来のジョブ単位やページ単位のみのスキップ機能は複数のレコードを持つＶＤＰジョブには最適ではない。また、特許文献１では、事前にＶＤＰ印刷中に使用されるＶＤＰオブジェクトのアクセス可否チェックを行う。そして、アクセス不可能なＶＤＰオブジェクトがあれば、その時点でオペレータに通知して印刷処理をキャンセルさせる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−３０５１１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら特許文献１の方法では、アクセス不可能なＶＤＰオブジェクトがあった場合にジョブ全体がキャンセルされてしまう。そのため、印刷実行中にアクセス不可能により、ジョブ全体がキャンセルされることは防げるが、印刷可能なレコードを優先的に印刷することができず、非効率的である。
【０００９】
そこで本発明では、レコード単位でのサスペンド処理とプロモート処理とを可能とし、無駄な印刷出力を防止し、ＶＤＰジョブの効率的な印刷を実現させる画像形成装置およびその制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明に係る画像形成装置は、複数ページのページ情報からなるレコードを複数有するバリアブル印刷ジョブを受信し、前記ページ情報に基づいて、前記レコード毎に固定のマスターオブジェクト及び前記レコード毎に可変のバリアブルオブジェクトからなる出力物を出力することが可能な画像形成装置であって、印刷ジョブを受信する受信手段と、前記受信手段により受信した印刷ジョブを出力物として出力するための出力処理を実行する出力手段と、前記出力処理の実行中に発生するエラーを検知する検知手段と、前記検知手段によりエラーが検知された印刷ジョブが前記バリアブル印刷ジョブである場合に、前記エラーが検知されたページのページ情報を含むレコードに含まれるページの出力処理を中断し、当該バリアブル印刷ジョブに含まれるレコードのうち、前記エラーが検知されたページのページ情報を含むレコードの後続のレコードに含まれるページから出力処理を再開させる制御手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明により、レコード単位でのサスペンド処理とプロモート処理とを可能とし、無駄な印刷出力を防止し、ＶＤＰジョブの効率的な印刷が可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態としてのコンピュータを含むシステムの構成図。
【図２】本発明の一実施形態としての典型的な画像形成装置のシステムのブロック図。
【図３】レコードデータベースの一例を示す図。
【図４】ジョブ、レコード、ページの階層構造の一例を示す概念図。
【図５】ジョブ印刷処理のフローチャート。
【図６】（Ａ）ＶＤＰジョブのＰＰＭＬファイルの例を示す図。（Ｂ）ＶＤＰジョブの出力物の例を示す図。
【図７】レコード単位解析処理のフローチャート。
【図８】レコード単位ＲＩＰ処理のフローチャート。
【図９】レコード単位印刷処理のフローチャート。
【図１０】サスペンドレコード発生時の再開指示処理のフローチャート。
【図１１】画像形成装置の操作画面の共通仕様設定画面の一例を示す図。
【図１２】画像形成装置の操作画面のサスペンドモード画面の一例を示す図。
【図１３】サスペンドレコード検出時の通知画面の一例を示す図。
【図１４】（Ａ）ＶＤＰジョブでまとめてサスペンドレコードを再開する指示を選択させる処理のフローチャート。（Ｂ）まとめて再開処理のフローチャート。
【図１５】まとめて再開指示を通知する通知画面の一例を示す図。
【図１６】ＶＤＰジョブの再印刷のフローチャート。
【図１７】サスペンドレコードが発生した際のシフト排紙処理のフローチャート。
【図１８】サスペンドレコードの格納レコード数に制限値に設けた処理のフローチャート。
【図１９】サスペンドレコード記憶数が制限値を超えた際の通知画面の一例を示す図。
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１４】
（実施例１）
まず、以下に説明する各実施形態を適用可能な画像形成システムについて図１を用いて説明する。図１は、本発明の実施例１に係る画像形成システムの基本構成の一例を示す構成図である。画像形成システムは、画像形成装置１０、プリントサーバ２０、ファイルサーバ３０、及びクライアントＰＣ４０を有する。画像形成装置１０、プリントサーバ２０、ファイルサーバ３０、及びクライアントＰＣ４０は、ＬＡＮ，ＷＡＮなどのネットワーク５０を介して通信可能に接続されている。
【００１５】
画像形成装置１０は、スキャン、プリント、コピーなどの様々な機能を有する。プリントサーバ２０は、入力された印刷ジョブやネットワーク５０を介して接続されている画像形成装置１０を管理する。プリントサーバ２０は、接続されている画像形成装置１０と全ての印刷ジョブの状況を監視できるとともに、印刷ジョブの一字停止、設定変更、印刷再開、あるいはジョブの複製、異動、削除などの制御を行うことができる。
【００１６】
ファイルサーバ３０は、バリアブル印刷に使用するバリアブルデータに係るデータベース、例えば宛先、住所、氏名などの顧客データからなる顧客データベースを保管する。クライアントＰＣ４０は、アプリケーションファイルの編集や印刷支持を行う機能を有する。また、クライアントＰＣ４０は、プリントサーバ２０内で管理されている画像形成装置１０や印刷ジョブの監視や制御を補佐する機能を有する。オペレータはクライアントＰＣ４０を利用してジョブのステータスなどを確認することができる。
【００１７】
図２は、画像形成装置１０の基本構成を示すブロック図である。制御部２０１は、システムバス２１４を介して接続される各構成を制御し、画像形成装置１０全体の動作を制御する。尚、制御部２０１は記憶部２１３に記憶されているプログラムを実行することで、画像形成装置１０の各構成を制御する。
【００１８】
操作部２１０はオペレータが各種入力を行うためのものであり、各種キー、タッチパネル機能を備えたＬＣＤやＬＥＤなどの表示デバイス等により構成される。この操作部２１０でのオペレータの操作に従って再印刷指示やジョブのキャンセル指示を受け付ける。表示制御部２０５は、操作部２１０の表示デバイスに対して各種表示を行う。例えば、表示制御部２０５は、印刷中のサスペンドレコード検出通知メッセージを操作部２１０に表示し、次の処理をオペレータに促す。
【００１９】
ＶＤＰジョブ受信部２０２は、クライアントＰＣ４０から印刷指示が出てプリントサーバ２０経由で入力されたＶＤＰジョブを受信し、ＶＤＰジョブの処理指示があればＶＤＰジョブ解析部２０６に受信したＶＤＰジョブを送信する。ここで、受信するＶＤＰジョブは、例えばＰＰＭＬ（Ｐｅｒｓｏｎａｌｉｚｅｄ  Ｐｒｉｎｔｅｒ  Ｍａｒｋｅｄ  Ｌａｎｇｕａｇｅ）形式のファイルのように、ジョブに含まれるレコードの中のページ毎に、ページを出力するためのページ情報が含まれている。ここで、ページ情報とは例えば、ＶＤＰオブジェクト及びマスターオブジェクトの対応関係を示す情報、出力時に使用されるメディア情報、カラー／モノクロ出力情報、後処理情報、排出先情報などである。本実施例においては、ＶＤＰジョブは複数ページのページ情報からなるレコードを複数有する。そして、以下に記載する各構成での出力処理により、レコードに含まれるページ情報に基づいて、レコード毎に固定のマスターオブジェクトとレコード毎に可変のＶＤＰオブオブジェクトからなる出力物が出力される。尚、本発明に適応するＶＤＰジョブは上記の形式に限るものではない。例えば、ＶＤＰオブジェクト及びマスターオブジェクトの対応関係を示す情報はファイルサーバ３０に用意されており、ＶＤＰジョブには含まれていなくても構わない。
【００２０】
ＶＤＰジョブ解析部２０６は、ＶＤＰジョブ受信部２０２から受信したＶＤＰジョブのレコードを解析し、ＶＤＰジョブに含まれる複数のレコードに対してＩＤを付与する。また、ＶＤＰジョブ解析部２０６は、解析の結果、必要に応じてファイルサーバ３０に格納されているレコードデータベース２１１を参照する。そして、ＶＤＰジョブ解析部２０６は、ＶＤＰジョブに含まれるページ情報または参照したレコードデータベース２１１の情報に従ってページ毎に使用するＶＤＰオブジェクトとマスターオブジェクトとを関連付ける。尚、ＶＤＰオブジェクト及びマスターオブジェクトはオブジェクト記憶部２１２に格納されている。このときＶＤＰジョブ解析部２０６は、それぞれのオブジェクトに対してアクセスができるかどうかを確認し、アクセスできない場合には後述するサスペンド処理を行う。ＶＤＰジョブ解析部２０６は解析済みのレコード情報と該レコードのＩＤとを解析後レコード記憶部２０７に送信する。以降では、ＶＤＰジョブ解析部２０６が行う処理を総称して解析処理と記載する。
【００２１】
解析後レコード記憶部２０７は、ＶＤＰジョブ解析部２０６から受け取ったレコード情報と該レコードのＩＤとを対応づけて格納する。ＲＩＰ部２０８は制御部２０１の指示により、解析後レコード記憶部２０７の格納されているレコード情報を参照し、レコードに含まれる各ページのＶＤＰオブジェクト、マスターオブジェクトに対してＲＩＰ処理を施し印刷データを生成する。尚、ＲＩＰ処理の際に作られるＲＩＰ済みオブジェクトは、必要に応じてＲＩＰ部２０８内でリユーザブルオブジェクトとして再利用可能な状態で格納される。
【００２２】
印刷部２０９は、ＲＩＰ部２０８でＲＩＰ処理が施された印刷データに対して印刷処理（記録用紙に印刷データを印字）を行い、出力物を排紙する。印刷部２０９内で各レコードに付加される印刷情報に基づいて必要なメディアを要求し、仕上がり設定や指定された排紙方式で排紙される。尚、本実施例において、受信したＶＤＰジョブが出力物として排紙されるまでに行われるＶＤＰジョブ解析処理、ＲＩＰ処理、印刷処理の各処理をまとめて出力処理と表現する。
【００２３】
サスペンドレコード制御部２０４は、ＶＤＰジョブ解析処理、ＲＩＰ処理、印刷処理の、それぞれの処理の過程でエラーが発生し処理が中断された場合に、実行されるサスペンド処理の制御を行う。サスペンド処理の詳細については後述する。サスペンドレコード記憶部２０３は、サスペンドレコード制御部２０４の指示によりサスペンド処理の対象となるレコード情報を一時的に格納する。またサスペンドレコード記憶部２０３は、サスペンドされたレコードに対して再印刷指示があれば、サスペンドされたレコードのレコード情報はジョブ終了後も記憶しておく。
【００２４】
図３は、レコードデータベース２１１に記憶されているデータベースの一例を示す図である。参照番号３０１から３０７はデータベースにおける各データフィールドである。３０１は顧客番号、３０２は名前、３０３は住所、３０４は年齢、３０５はマスターファイルのリンク先、３０６はコース１、３０７はコース２、３０８は詳細情報を示す。ここで、それぞれのコースや詳細情報のオブジェクトが格納されているリンク先が登録されていても良い。
【００２５】
図４は、本発明で表すＶＤＰジョブ、レコード、及びページを階層的に示した概念図である。ＶＤＰジョブ４０１は、複数のレコード４０２を持つ。このレコード４０２の基となるレコード情報はファイルサーバ３０に格納されている。本発明の例ではレコードデータベースに登録されている顧客の数が、印刷対象となるレコード４０２の数（レコード数）となる。各レコード４０２は一枚以上のページ４０３を含む。ここで各レコード４０２に含まれるページ数は必ずしも同一ページ数である必用はなく、各レコード４０２で指示される印刷内容によって異なる。本発明では、ＶＤＰジョブ解析部２０６がＶＤＰジョブを解析し、各レコード４０２に対してＩＤを割り当てる。このレコードＩＤを利用してサスペンドレコード制御部２０４が管理すべきレコードを特定する。また、レコードだけでなく、ＶＤＰジョブにはジョブＩＤが割り当てられ、ページにページＩＤが割り当てられる。
【００２６】
図５は、本発明の画像形成システムがＶＤＰジョブを受信し、出力物を排紙するまでの基本的なフローを示す。尚、図５に示されるフローの各ステップにおける処理は制御部２０１が記憶部２１３に記憶されているプログラムに従って、画像形成装置１０の各構成を制御することで実行される。
【００２７】
ステップＳ５０１において、ＶＤＰジョブ受信部２０２は、プリントサーバ２０から送信されたジョブを受信する。ステップＳ５０２において、ＶＤＰジョブ受信部２０２は、受信したジョブがＶＤＰジョブであるかを判断する。判断の結果、ＶＤＰジョブであると判断された場合には、ステップＳ５０３へ移行する。一方、ＶＤＰジョブではないと判断された場合には、ステップＳ５０９へ移行する。
【００２８】
ステップＳ５０３において、ＶＤＰジョブ受信部２０２は、ＶＤＰジョブをレコード単位でサスペンド処理する設定がされているか否かを判定する。レコード単位でサスペンド処理する設定がされていると判定された場合にはステップＳ５０４へ移行する。一方、レコード単位でサスペンド処理する設定がされていないと判定された場合にはステップＳ５０８へ移行する。ここで、レコード単位でサスペンド処理する設定は、画像形成装置１０の操作部２１０におけるオペレータの操作に従って、制御部２０１が設定する。この設定方法の詳細については後述する。また、ステップＳ５０３においてＶＤＰジョブ受信部２０２は、制御部２０１により画像形成装置１０で設定されているレコード単位でのサスペンド処理に関する設定を確認することで判定を行う。尚、画像形成装置１０での設定に限らず、プリントサーバ２０、クライアントＰＣ４０等の情報処理装置におけるオペレータの指示に従ってＶＤＰジョブに対して設定されても構わない。この場合、ＶＤＰジョブ受信部２０２はＶＤＰジョブに含まれるサスペンド処理の設定情報を確認することで判定を行う。
【００２９】
ステップＳ５０４において、ＶＤＰジョブ解析部２０６が、後述するレコード単位での解析処理を行う。ステップＳ５０５において、解析後レコード記憶部２０７は、ステップＳ５０４で各レコードに付与されたレコードＩＤ、解析が行われた各レコードのレコード情報と対応付けて記憶する。
【００３０】
ステップＳ５０６において、ＲＩＰ部２０８は、解析後レコード記憶部２０７に記憶されているレコード情報を参照して、レコード単位でのＲＩＰ処理を行い、印刷データを生成する。ステップＳ５０７において、印刷部２０９は、ステップＳ５０５でＲＩＰ処理された印刷データに対してレコード単位での印刷処理を行い、出力物を排紙した後処理フローを終了する。尚、レコード単位でのＲＩＰ処理、レコード単位での印刷処理の詳細については後述する。
【００３１】
ステップ５０８において、ＶＤＰジョブ解析部２０６が、ジョブ単位での解析処理を行う。ステップＳ５０８において、ＲＩＰ部２０８がＶＤＰジョブ以外のジョブまたは、ステップＳ５０８において解析されたＶＤＰジョブに対してジョブ単位でのＲＩＰ処理を行う。ステップＳ５１０において、印刷部２０９は、前記ステップＳ５０９でＲＩＰ処理された印刷データに対してジョブ単位での印刷処理を行い、出力物を排紙した後、処理フローを終了する。尚、ジョブ単位での解析処理、ジョブ単位でのＲＩＰ処理、ジョブ単位での印刷処理の詳細については後述する。
【００３２】
図６（Ａ）は、ＶＤＰジョブの１つであるＰＰＭＬファイルの一例を示す図である。また、図６（Ｂ）はＰＰＭＬファイルの１レコードに対応する出力物を示す図である。図６（Ａ）で示されるＰＰＭファイルでは、１レコードが２ページからなり、図３に示したデータベースに基づいたＶＤＰオブジェクトと再利用可能なリユーザブルオブジェクト（マスターオブジェクト）とを合成された出力が行われる。
【００３３】
各レコードの１ページ目には、参照するバリアブルオブジェクトの参照先を示す情報、リユーザブルオブジェクトの参照先を示す情報が記載されている。ＶＤＰオブジェクトの「Ａ１」とは図３のデータベースにおける１番目の情報を参照先として示す情報である。この場合、図３のデータベースにおいて１番目のデータのＣＯＵＲＳＥ１のフィールドは「Ａコース」となっている。そのため、リユーザブルオブジェクトのＣＯＵＲＳＥ１の部分には「Ａコース」に対応するＶＤＰオブジェクトがオブジェクト記憶部２１２より選択され、関連付けされる。
【００３４】
図６（Ａ）で示されるＰＰＭファイルでは、レコード毎に＜Ｄｏｃｕｍｅｎｔ＞タグが付加され、各Ｄｏｃｕｍｅｎｔ内にレコードは２ページ分の＜Ｐａｇｅ＞タグが付加されている。ＶＤＰジョブ解析部２０６は、このタグを用いることで、レコード及びページを認識することが可能となる。ここで、レコードを区別するタグは必ずしも＜Ｄｏｃｕｍｅｎｔ＞タグを使用する必要はなく、ＰＰＭＬファイルを生成するアプリケーションが付加するコメントの場合や、レコードを区別するタグを付加しない場合もある。
【００３５】
図７は、図５のステップＳ５０４におけるレコード単位での解析処理の詳細なフローチャートである。尚、図７に示されるフローの各ステップにおける処理は制御部２０１が記憶部２１３に記憶されているプログラムに従って、画像形成装置１０の各構成を制御することで実行される。
【００３６】
ステップＳ７０１において、ＶＤＰジョブ解析部２０６は、受信したＶＤＰジョブに付加されているＤｏｃｕｍｅｎｔタグに基づいて次のレコードを検出する。尚、レコードの検出はこの方法に限らず、ＶＤＰジョブの形式に適した方法を実行するものとする。ステップＳ７０２において、ＶＤＰジョブ解析部２０６は、検出されたレコードにレコードの識別するための識別情報であるレコードＩＤを付与する。
【００３７】
ステップＳ７０３において、ＶＤＰジョブ解析部２０６は、ＶＤＰジョブの記載に従って、ファイルサーバ３０、オブジェクト記憶部２１２を参照し、レコードの出力に用いるＶＤＰオブジェクトとマスターオブジェクトを関連付ける。ステップＳ７０４において、ＶＤＰジョブ解析部２０６は、ステップＳ７０３での関連付けの際に、リンク先のオブジェクトが存在しなかったことによるエラーを検知し、エラーが発生したかどうかを判断する。エラーが発生したと判断された場合にはステップＳ７０５に移行する。エラーが発生しなかったと判断された場合にはステップＳ７０６に移行する。
【００３８】
ステップＳ７０５において、ＶＤＰジョブ解析部２０６は、エラーが発生したページを有するレコードに含まれる複数のページに対する解析処理を中断する。そしてＶＤＰジョブ解析部２０６は、エラーが発生したページを有するレコード（サスペンドレコード）をサスペンドレコード制御部２０４へ通知する。サスペンドレコード制御部２０４は、通知を受けたサスペンドレコードをサスペンドレコード記憶部２０３に記憶する。尚、ＶＤＰジョブ解析部２０６は、現在解析処理を行っているレコードのレコードＩＤを保持しておき、エラーが起こった際に、保持しているレコードＩＤに基づきサスペンドレコードを特定する。また、前述した方法に限らず、エラーが発生したページのページＩＤを元に、そのページＩＤを含むレコードをサスペンドレコードとして特定してもよい。尚、以降の説明においてもサスペンドレコードの特定は上記の方法により各種処理部（ＶＤＰジョブ解析部２０６、ＲＩＰ部２０８、印刷部２０９）が行うものとする。
【００３９】
ステップＳ７０６において、ＶＤＰジョブ解析部２０６は、ＶＤＰジョブに含まれる全てのレコードの解析処理が終了したかどうかを判断する。全てのレコードの解析処理が終了したと判断されれば処理フローを終了し、全てのレコードの解析処理が終了していないと判断されればステップＳ７０１へ移行し、次の解析対象レコードの解析処理を開始する。
【００４０】
次に、図５のステップＳ５０８におけるジョブ単位での解析処理について説明する。ジョブ単位での解析処理において、ＶＤＰジョブ解析部２０６は、ジョブに含まれる全てのページに対して出力に用いるＶＤＰオブジェクトとマスターオブジェクトを関連付ける。尚、関連付けの方法はレコード単位解析処理と同様である。そして、関連付けの際にエラーが検知されると、制御部２０１はＶＤＰジョブ全体を中断し、画像形成装置１０にストックされている次のジョブをプロモートして実行する。
【００４１】
図８は、図５のステップＳ５０６におけるレコード単位でのＲＩＰ処理の詳細なフローチャートである。尚、図８に示されるフローの各ステップにおける処理は制御部２０１が記憶部２１３に記憶されているプログラムに従って、画像形成装置１０の各構成を制御することで実行される。
【００４２】
ステップＳ８０１において、ＲＩＰ部２０８は、ＲＩＰ処理の対象となる次のレコードのレコード情報を解析後レコード記憶部２０７から取得する。ステップＳ８０２において、ＲＩＰ部２０８は、取得したレコード情報に従って、レコードの出力に用いるＶＤＰオブジェクトとマスターオブジェクトのリンク先を確認する。
【００４３】
ステップＳ８０３において、ＲＩＰ部２０８は、リンク先確認の結果、リンク先のオブジェクトが存在しなかった場合にエラーを検知し、エラーが発生したと判断する。エラーが検知され、エラーが発生したと判断された場合にはステップＳ８０５に移行する。エラーが発生しなかったと判断された場合にはステップＳ８０４に移行する。
【００４４】
ステップＳ８０４において、ＲＩＰ部２０８は、レコードに含まれるオブジェクトのＲＩＰ処理を行い、印刷データを生成する。ステップＳ８０５において、ＲＩＰ部２０８は、サスペンドレコードを特定し、サスペンドレコードに含まれる複数のページに対するＲＩＰ処理を中断する。そしてＲＩＰ部２０８は、サスペンドレコードをサスペンドレコード制御部２０４へ通知する。サスペンドレコード制御部２０４は、通知を受けたサスペンドレコードをサスペンドレコード記憶部２０３に記憶する。
【００４５】
ステップＳ８０６において、ＲＩＰ部２０８は、ＶＤＰジョブに含まれる全てのレコードのＲＩＰ処理が終了したかどうかを判断する。全てのレコードのＲＩＰ処理が終了したと判断されれば処理フローを終了し、全てのレコードのＲＩＰ処理が終了していないと判断されればステップＳ８０１へ移行し、次のＲＩＰ対象レコードのＲＩＰ処理を開始する。
【００４６】
次に、図５のステップＳ５０９におけるジョブ単位でのＲＩＰ処理について説明する。ジョブ単位でのＲＩＰ処理において、ＲＩＰ部２０８は、ジョブに含まれる全てのページに対してＲＩＰ処理を行う。そして、ＲＩＰ処理の際にエラーが検知されると、制御部２０１はＶＤＰジョブ全体を中断し、画像形成装置１０にストックされている次のジョブをプロモートして実行する。
【００４７】
図９は、図５のステップステップＳ５０７におけるレコード単位での印刷処理の詳細なフローチャートである。尚、図９に示されるフローの各ステップにおける処理は制御部２０１が記憶部２１３に記憶されているプログラムに従って、画像形成装置１０の各構成を制御することで実行される。
【００４８】
ステップＳ９０１において、印刷部２０９は、印刷対象レコードの印刷データを取得する。ステップＳ９０２において、印刷部２０９は、印刷対象レコードの印刷データを印刷する時に使用されるメディアが給紙段に正しくセットされているかを確認する。
【００４９】
ステップＳ９０３において、印刷部２０９は、ステップＳ２０９での確認の結果メディアが給紙段に正しく存在していなかった場合にエラーを検知し、エラーが発生したと判断する。エラーが検知され、エラーが発生したと判断された場合にはステップＳ９０５に移行する。エラーが発生しなかったと判断された場合にはステップＳ９０４に移行する。
【００５０】
ステップＳ９０４において、印刷部２０９は印刷対象レコードの印刷データを印刷し出力物として排紙する。ステップＳ９０５において、印刷部２０９は、サスペンドレコードを特定し、サスペンドレコードに含まれる複数のページに対する印刷処理を中断する。そして印刷部２０９は、サスペンドレコードをサスペンドレコード制御部２０４へ通知する。サスペンドレコード制御部２０４は、通知を受けたサスペンドレコードをサスペンドレコード記憶部２０３に記憶する。
【００５１】
ステップＳ９０６は、印刷部２０９はＶＤＰジョブに含まれる全てのレコードの印刷処理が終了したかどうかを判断する。全てのレコードの印刷処理が終了したと判断されれば処理フローを終了し、全てのレコードの印刷処理が終了していないと判断されればステップＳ９０１へ移行し、次の印刷対象レコードの印刷処理を開始する。
【００５２】
次に、図５のステップＳ５１０におけるジョブ単位での印刷処理について説明する。ジョブ単位での印刷処理において、印刷部２０９は、ジョブに含まれる全てのページに対して印刷処理を行う。そして、印刷処理の際にエラーが検知されると、制御部２０１はＶＤＰジョブ全体を中断し、画像形成装置１０にストックされている次のジョブをプロモートして実行する。
【００５３】
尚、本実施例では、リンク先にオブジェクトが存在しない場合、印刷時に印刷に必要な正しいメディアが給紙段にセットされていない場合の２通りのエラーを挙げた。しかしこの２通りのエラーに限らず、その他のエラーであっても本発明は適応可能であることはいうまでもない。
【００５４】
本実施例では、ＶＤＰジョブの出力処理においてレコード単位での中断（サスペンド）を行い、中断された次のレコードから出力処理を再開する（プロモート処理）ことで、無駄な印刷出力を防止し、ＶＤＰジョブの効率的な印刷が可能となる。ここでレコード単位での中断とは、エラーが検知されたページのページ情報を含むレコードに含まれるページの出力処理を中断することを指す。そして、中断された次のレコードから出力処理を再開するとは、バリアブル印刷ジョブに含まれるレコードのうち、エラーが検知されたページのページ情報を含むレコードの後続のレコードに含まれるページから出力処理を再開させることを指す。
【００５５】
また、受信したジョブがＶＤＰジョブか否かを判断し、ＶＤＰジョブであると判断されたジョブにはレコード単位での出力処理を行い、ＶＤＰジョブでないと判断されたジョブにはジョブ単位での出力処理を行う。これによりジョブの種類に適したサスペンド処理が可能となり、ジョブの効率的な印刷が可能となる。
【００５６】
（実施例２）
実施例２では、ＶＤＰジョブの出力処理中にエラーが発生し、レコードのサスペンドが行われた場合に、サスペンドレコードをオペレータに報知するために表示を行う。また、報知と共にサスペンドレコードの再開指示を促し、オペレータの再開指示に基づいて再出力処理を行う。尚、以降の実施例では図９を用いて説明を行ったレコード単位での印刷処理時のサスペンド処理を元に説明を行うが、印刷処理に限らず、解析処理、ＲＩＰ処理とう他の出力処理にも適用可能である。また、以降の実施例では、解析対象レコード、ＲＩＰ対象レコード、印刷対象レコードを総じて出力対象レコードと記載する。
【００５７】
図１０は、実施例２における処理の流れを示すフローチャートである。尚、本実施例における、ステップＳ９０１〜ステップＳ９０６の処理は実施例１と同様であるため、説明を省略し、実施例１との差分であるステップＳ１００１〜ステップＳ１００５の処理についてのみ説明する。
【００５８】
ステップＳ１００１において、表示制御部２０５は、印刷処理中にレコードがサスペンドされ、印刷が中断されたこと示す画面を操作部２１０に表示させオペレータに通知する。この時に、表示制御部２０５は、サスペンドレコードのレコードＩＤまたは顧客番号をサスペンドレコード記憶部２０３から取得し、操作部２１０に表示する。ここで表示されるメッセージの例は図１３に示す。
【００５９】
ステップＳ１００２において、サスペンドレコード制御部２０４は操作部２１０を介してオペレータによりサスペンドレコードの再開指示が行われたか否かを判定する。再開指示が行われたと判定された場合は、サスペンドレコード制御部２０４は再開指示を受け付け、ステップＳ１００３へ移行し、再開指示が行われなかったと判定された場合は、ステップＳ１００４へ以降する。
【００６０】
ステップＳ１００３において、印刷部２０９は、再開指示に従ってサスペンドレコード記憶部２０３に格納されたサスペンドレコードに対応する印刷データを取得し、再印刷対象とし、ステップＳ９０２に移行する。
【００６１】
ステップＳ１００４において、サスペンドレコード制御部２０４は、操作部２１０を介してオペレータによりサスペンドレコードを含むＶＤＰジョブに対する継続処理指示が行われたか否かを判定する。継続処理指示が行われたと判定された場合は、ステップＳ９００６へ移行し、継続処理指示が行われなかったと判定された場合は、ステップＳ１００５へ以降する。
【００６２】
ステップＳ１００５において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードを削除し、処理を終了する。そして、制御部２０１はＶＤＰジョブ全体を中断し、画像形成装置１０にストックされている次のジョブをプロモートして実行する。
【００６３】
本実施例では、サスペンドレコードをオペレータに報知するために表示を行い、報知と共にサスペンドレコードの再開指示を促し、受け付けたオペレータの再開指示に基づいて再出力処理を行う。これにより、オペレータはサスペンドレコードの通知を見て、エラーの原因を解決した後、サスペンドレコードの再印刷を開始させることが可能となる。
【００６４】
図１１は、表示制御部２０５により操作部２１０に表示される共通仕様設定画面１１０１を示す図である。
【００６５】
共通仕様設定画面１１０１の例では、排紙トレイの用紙混載ボタン１１０２、サスペンドモード設定ボタン１１０３、機能制限モードボタン１１０４，シャットダウンモードボタン１１０５、閉じるボタン１１０６が設けられている。排紙トレイの用紙混載ボタン１１０２と機能制限モードボタン１１０４とシャットダウンモードボタン１１０５はそれぞれの機能を設定する共通仕様設定画面から設定可能な機能の例であるため、本発明とは直接関係しない。表示制御部２０５は、操作部２１０において閉じるボタン１１０６が押されたことを検知し、共通仕様設定画面１１０１を閉じる。
【００６６】
表示制御部２０５は、操作部２１０においてサスペンドモード設定ボタン１１０３が押されたことを検知し、図１２で示すサスペンドモード設定画面を表示する。
【００６７】
図１２は、共通仕様設定画面１１０１でサスペンドモード設定ボタン１１０３が押された際に表示されるサスペンドモード設定画面１２０１を示す図である。サスペンドモード設定画面１２０１には、ジョブ単位ボタン１２０２とレコード単位ボタン１２０３、キャンセルボタン１２１１とＯＫボタン１２１２が設けられている。
【００６８】
ジョブ単位ボタン１２０２は、出力処理中のサスペンド処理をジョブ単位で行うよう設定するためのボタンである。レコード単位ボタン１２０３は、出力処理中のサスペンド処理をレコード単位で行うよう設定するためのボタンである。また、表示制御部２０５はレコード単位ボタン１２０３がオペレータにより押されたことを検知し、レコード単位サスペンド処理の詳細設定画面１２０４を表示する。レコード単位サスペンド処理の詳細設定画面１２０４には、レコードサスペンドタイムアウト時間の設定、サスペンドレコードが検出毎にサスペンドレコードを表示する設定をそれぞれ設定可能な項目が設けられている。さらに、レコード単位サスペンド処理の詳細設定画面１２０４には、ジョブの出力処理終了後にサスペンドレコードをまとめて表示する設定設定可能な項目が設けられている。
【００６９】
オペレータは、レコードサスペンドタイムアウト時間１２０５をマイナスとプラスボタン１２０６で変更可能である。ここで、レコードサスペンドタイムアウト時間とは、サスペンドされた際に次のレコードがプロモートされるまでの待機時間を示す。このタイムアウトが発生するまでに、オペレータがサスペンドされているレコードの要因を回避できれば、サスペンドされたレコードの処理が続行される。また、オペレータは、サスペンドレコード検出毎にレコードがサスペンドされたことを通知するか否かをＹｅｓボタン１２０７とＮｏボタン１２０８で選択可能である。Ｙｅｓボタン１２０７の押下が検知された場合には、図１０のステップＳ１００１における表示がなされるよう設定される。また、オペレータは、ジョブの最後にサスペンドレコードを表示するか否かをＹｅｓボタン１２０９とＮｏボタン１２１０で選択可能である。Ｙｅｓボタン１２０９の押下が検知された場合には、１つのＶＤＰジョブに含まれる印刷可能なレコードの出力処理が全て終了した際に当該ジョブでサスペンドされたレコード情報を取得し、一覧で表示する。出力処理終了時のサスペンドレコード表示については実施例３において後述する。
【００７０】
表示制御部２０５は、キャンセルボタン１２１１が押されたことを検知すると、サスペンドモード設定画面１２０１及びレコード単位サスペンド処理の詳細設定画面１２０４で設定変更された内容を破棄し、サスペンドモード設定画面１２０１を閉じる。また、表示制御部２０５は、ＯＫボタン１２１２が押されたことを検知すると、サスペンドモード設定画面１２０１及びレコード単位サスペンド処理の詳細設定画面１２０４で設定変更された内容をサスペンドレコード制御部２０４へ通知する。そして、表示制御部２０５は、通知の終了後、サスペンドモード設定画面１２０１を閉じる。サスペンドレコード制御部２０４は通知された設定内容に従ってサスペンド処理の設定を行う。
【００７１】
図１３は、図１０のステップＳ１００１におけるサスペンドレコードの表示例を示す図である。表示画面１３０１には、サスペンドされたレコードの印刷を再開する再開指示ボタン１３０３と、ジョブ内の処理可能なレコードを印刷するボタン１３０４と、現在のジョブを中断し、次のジョブを印刷するボタン１３０５が設けられている。表示制御部２０５が１３０２にレコードＮｏ．ＸＸＸが何らかの理由で印刷処理が中断され、レコードがサスペンドされていることを表示する。ここでレコードＮｏ．ＸＸＸはレコードＩＤである。また、レコードＩＤに限らず、図３のデータベースに含まれている情報を表示しても構わない。例えば、サスペンドレコードに対応する顧客番号や名前を表示することでオペレータはどのレコードでエラーが発生したのかを分かりやすく通知することが可能となる。
【００７２】
表示制御部２０５は、サスペンドレコードの再開指示ボタン１３０３が押されたことを検知すると、サスペンドレコード制御部２０４にサスペンドされているレコードが再印刷対象であることを通知する。この通知がされていると、図１０のステップＳ１００２において、サスペンドレコード制御部２０４は、操作部２１０を介してオペレータによりサスペンドレコードの再開指示が行われたと判定する。サスペンドエラーが発生した際に、オペレータがサスペンドエラーの原因を特定し、原因を回避した後に押下することが想定される。例えば印刷に必要なメディアが給紙段にセットされていないことが原因でレコードがサスペンドされた場合には、オペレータが用紙を給紙段にセットし直した後に再開指示ボタン１３０３を押下することで効率的に印刷が継続される。
【００７３】
表示制御部２０５は、ジョブ内の処理可能なレコードを印刷するボタン１３０４が押されたことを検知すると、サスペンドレコード制御部２０４に次のレコードの継続出力指示があることを通知する。この通知がされていると、図１０のステップＳ１００４において、サスペンドレコード制御部２０４は、操作部２１０を介してオペレータによりサスペンドレコードを含むＶＤＰジョブに対する継続処理指示が行われたと判定する。オペレータは、サスペンドされたレコードの原因がすぐに特定、または回避できない場合にこのボタンを押下し、次のレコードのプロモート要求を出し、印刷を継続させる。このようにレコード単位でエラー発生時に次レコードをプロモート可能とすることで、ＶＤＰジョブ全体の印刷を中断することなく効率的に印刷可能となる。
【００７４】
表示制御部２０５は、サスペンドされたレコードを含む印刷中のジョブをキャンセルし、次のジョブをプロモートするボタン１３０５が押されたことを検知すると、サスペンドレコード制御部２０４にジョブキャンセル指示を通知する。この通知がされていると、図１０のステップＳ１００４において、サスペンドレコード制御部２０４は、操作部２１０を介してオペレータによりサスペンドレコードを含むＶＤＰジョブに対する継続処理指示が行われていないと判定する。レコード全体にエラーが発生するような場合には、ボタン１３０５を押すことで、ＶＤＰジョブ全体をキャンセルし、次のジョブをプロモートすることで、効率的に出力処理を行うことが可能となる。
【００７５】
（実施例３）
実施例３では、ＶＤＰジョブの出力処理中に発生した、レコードのサスペンドを、ＶＤＰジョブに含まれる全てのレコードの出力処理が終了した後にまとめてオペレータに報知するために表示を行う。また、報知と共にサスペンドレコードの再開指示を促し、オペレータの再開指示に基づいて再出力処理を行う。
【００７６】
図１４（Ａ）は、実施例３における処理の流れを示すフローチャートである。尚、本実施例における、ステップＳ９０１〜ステップＳ９０５の処理は実施例１と同様であるため、説明を省略し、実施例１との差分であるステップＳ１４００〜ステップＳ１４０２の処理についてのみ説明する。
【００７７】
ステップＳ１４００において、印刷部２０９はＶＤＰジョブに含まれる全てのレコードの印刷処理が終了したかどうかを判断する。全てのレコードの印刷処理が終了したと判断されればステップＳ１４０１へ移行し、全てのレコードの印刷処理が終了していないと判断されればステップＳ９０１へ移行し、次の出力対象レコードの印刷処理を開始する。
【００７８】
ステップＳ１４０１において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に、サスペンドレコードが格納されているかどうかを判断する。サスペンドレコードが格納されていると判断された場合は、ステップ１４０２に移行し、サスペンドレコードが格納されていないと判断された場合は、ＶＤＰジョブの出力処理を終了し、次のジョブをプロモートする。
【００７９】
ステップＳ１４０２では、ＶＤＰジョブにおいて発生したサスペンドレコードの情報をまとめてオペレータに報知され、オペレータの指示に従って再印刷が行われる、まとめて再開処理が実行される。
【００８０】
図１４（Ｂ）は、ステップＳ１４０２におけるまとめて再開処理の詳細を示すフローチャートである。ステップＳ１４０３において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードを取得する。
【００８１】
ステップＳ１４０４において、表示制御部２０５は、取得されたサスペンドレコードを操作部２１０に表示し、オペレータにＶＤＰジョブで発生したサスペンドレコードの情報をまとめて報知する。この時表示される画面の例を図１５に示す。ここで表示制御部２０５は、各レコードが保持するＩＤまたは顧客番号をサスペンドレコード記憶部２０３から取得し、表示する。
【００８２】
ステップＳ１４０５において、サスペンドレコード制御部２０４は、操作部２１０を介してオペレータにより、サスペンドレコードを今すぐに再開する指示が行われたか否かを判定する。サスペンドレコードを今すぐに再開する指示が行われたと判定された場合には、サスペンドレコード制御部２０４は指示を受け付け、ステップＳ１４０６へ移行する。一方、サスペンドレコードを今すぐに再開する指示が行われていないと判定された場合は、ステップＳ１４０７へ移行する。
【００８３】
ステップＳ１４０６において、サスペンドレコード制御部２０４は、今すぐに再開する指示に従って、指示が行われたサスペンドレコードの印刷データをサスペンドレコード記憶部２０３の情報に基づいて取得し、図１４（Ａ）のステップＳ９０２に移行する。
【００８４】
ステップＳ１４０７において、サスペンドレコード制御部２０４は、サスペンドレコードの情報をログとして記憶部２１３に保存する。ここでログとして残される情報は、エラー発生の理由、ジョブＩＤ、レコードＩＤ、出力処理日時等である。このように、サスペンドレコードのログを保存しておくことで、オペレータは、エラーの発生原因等の解析を行うことが可能となる。
【００８５】
ステップＳ１４０８において、サスペンドレコード制御部２０４は、操作部２１０を介してオペレータにより、サスペンドレコードを後で再印刷する指示が行われた否かを判定する。後で再印刷する指示が行われたと判定された場合にはステップＳ１４０９へ移行し、後で再印刷する指示が行われていないと判定された場合には、ステップＳ１４１１へ移行する。
【００８６】
ステップＳ１４０９において、サスペンドレコード制御部２０４は、現在出力処理を行っていたＶＤＰジョブに含まれるサスペンドレコードのうち、後で再印刷する指示が行われたサスペンドレコード以外のサスペンドレコードを削除する。具体的には、サスペンドレコード制御部２０４は、後で再印刷する指示が行われたサスペンドレコードのレコードＩＤを表示制御部２０５から取得する。そして、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードのうち、現在出力処理を行っていたＶＤＰジョブに含まれ、かつ、取得したレコードＩＤ以外のレコードを持つサスペンドレコードを削除する。
【００８７】
ステップＳ１４１０において、サスペンドレコード制御部２０４は、後で再印刷する指示が行われたサスペンドレコードの再印刷ジョブを生成し、サスペンドレコード記憶部２０３に保存する。ここで生成された再印刷ジョブには、再印刷対象のサスペンドレコードを含むＶＤＰジョブと同じジョブＩＤが付与される。また、再印刷ジョブは、オペレータが操作部２１０において実行指示を行うことで、出力処理が行われる。再印刷ジョブの出力処理については図１５を用いて後述する。また、再印刷ジョブに用いられる、リユーザブルオブジェクトが存在する場合には再印刷時の出力処理を効率化するため削除せず残しておくことが望ましい。尚、再印刷ジョブは画像形成装置１０内での保存に限らず、例えばクライアントＰＣ４０、プリントサーバ２０へ送信され、送信先でジョブの実行指示がされてもよい。このようにサスペンドされたレコードのみを別ジョブとして再印刷可能とすることで、既に印刷済みのレコードを再印刷し、無駄な出力物を出すことや、印刷済みのレコードを再印刷する時間を省くことができる。
【００８８】
ステップＳ１４１１において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードのうち、現在出力処理を行っていたＶＤＰジョブに含まれるサスペンドレコードを全て削除し、処理を終了する。
【００８９】
本実施例においては、サスペンドレコードを、ＶＤＰジョブに含まれる全てのレコードの出力処理が終了した後にまとめてオペレータに報知するために表示を行う。これにより、ジョブの途中でエラーが発生した場合でも、次のレコードが出力され効率のより出力処理が行われる。さらに、オペレータは、サスペンドレコードをジョブ終了後にまとめて確認することができる。
【００９０】
また、本実施例においては、報知と共にサスペンドレコードの再開指示を促し、オペレータの再開指示に基づいて再出力処理を行う。これにより、オペレータは、サスペンドされ印刷の行われなかったレコードを、エラー原因に応じて自分の好きなタイミングで再印刷を行うことができる。
【００９１】
図１５は、再印刷ジョブの出力処理の流れを示すフローチャートである。ステップＳ１５０１において、ＶＤＰジョブ受信部２０２は、操作部２１０を介してオペレータにより入力された再印刷ジョブの実行指示を受信する。尚、再印刷ジョブの実行指示は画像形成装置１０の操作部２１０に限らず、プリントサーバ２０またはクライアントＰＣ４０からも可能である。
【００９２】
ステップＳ１５０２において、ＶＤＰジョブ解析部２０６は、再印刷ジョブを解析し、再印刷ジョブのジョブＩＤを取得する。ステップＳ１５０３において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードの中から取得されたジョブＩＤを持つサスペンドレコードを全て検出する。そして、検出されたレコードをＲＩＰ部２０８へ渡す。
【００９３】
ステップＳ１５０４において、ＲＩＰ部２０８は、レコードに含まれるオブジェクトのＲＩＰ処理を行い、印刷データを生成する。この時に既にＲＩＰ済みのオブジェクトがＲＩＰ部２０８に格納されていれば、そのオブジェクトに対しては再ＲＩＰを行わずにＲＩＰ済みオブジェクトを印刷データとして再利用を行う。ステップＳ１５０５において、印刷部２０９は出力対象レコードの印刷データを印刷し出力物として排紙する。
【００９４】
このように、再印刷ジョブをサスペンドレコード記憶部２０３に記憶されているレコード情報に基づいて処理することで、新規ジョブに比べて、効率よく出力処理を実行することが可能となる。
【００９５】
図１６は、図１４（Ｂ）のステップＳ１４０４におけるサスペンドレコードの表示例を示す図である。表示画面１６０１には、エラーメッセージ１６０２と、サスペンドレコード一覧１６０３と印刷を再開するボタン１６０４と後で再印刷ボタン１６０５とキャンセルボタン１６０６が設けられている。エラーメッセージ１６０２には、ＶＤＰジョブの印刷可能なレコードは全て印刷が終了し、サスペンドされたレコードが検出された旨をオペレータに報知するメッセ時が表示される。
【００９６】
サスペンドレコード一覧１６０３には、サスペンドレコードの一覧が表示される。図１６では、レコードＩＤでの表示を行っているが、図３のデータベースに含まれている情報を表示しても構わない。オペレータはサスペンドレコード一覧１６０３のチェックボックスにチェックすることで、出力処理を再開するレコードまたは、後で再印刷をするために再印刷ジョブを生成するレコード選択することが可能である。
【００９７】
表示制御部２０５は、印刷を再開するボタン１６０４が押されたことを検知すると、サスペンドレコード一覧１６０３で選択されているレコードのレコードＩＤをサスペンドレコード制御部２０４に通知する。サスペンドレコード制御部２０４は、通知されたレコードＩＤに対応するレコードの出力処理を再開する。尚、印刷を再開するボタン１６０４が押された場合に、図１４（Ｂ）のステップＳ１４０５において、サスペンドレコードを今すぐに再開する指示が行われたと判定される。
【００９８】
表示制御部２０５は、後で再印刷ボタン１６０５が押されたこを検知すると、サスペンドレコード一覧１６０３の一覧で選択されているレコードのレコードＩＤをサスペンドレコード制御部２０４に通知する。尚、後で再印刷ボタン１６０５が押された場合に、図１４（Ｂ）のステップＳ１４０８において、後で再印刷する指示が行われたと判定される。
【００９９】
表示制御部２０５は、キャンセルボタン１６０６が押されたことを検知すると、ジョブ終了指示をサスペンドレコード制御部２０４に通知する。尚、キャンセルボタン１６０６が押された場合に、図１４（Ｂ）のステップＳ１４０８において、後で再印刷する指示が行われなかったと判定される。
【０１００】
このように、サスペンドされたレコードをまとめて印刷終了直前に表示することで、オペレータはサスペンドされていたレコード数とサスペンドされたレコードを確認することが出来る。また、オペレータによるジョブ終了時直前にサスペンドされた複数のレコードの再開指示を可能とすることで、何らかの理由により印刷できないレコードを最小限にすることができる。
【０１０１】
（実施例４）
実施例４では、サスペンドレコード発生時に、サスペンドレコードの後続のレコードの出力をシフト出力する。図１７は、実施例４における処理の流れを示すフローチャートである。尚、本実施例における、ステップＳ９０１〜ステップＳ９０６の処理は実施例１と同様であるため、説明を省略し、実施例１との差分であるステップＳ１７０１、ステップＳ１７０２の処理についてのみ説明する。
【０１０２】
ステップＳ１７０１において、印刷部２０９は、現在印刷処理中のレコード（対象レコード）の１つ前のレコードがサスペンドレコードか否かを判定する。前のレコードがサスペンドレコードであると判定された場合、ステップＳ１７０２へ移行し、前のレコードがサスペンドレコードでないと判定された場合、ステップＳ９０２に移行する。この時、サスペンドレコード記憶部２０３に対象レコードの１つ前のレコードが格納されているかをレコードＩＤを基に判定する。対象レコードのレコードＩＤ（ｉ）の一つ前のレコードＩＤ（ｉ−１）保持するレコードがサスペンドレコード記憶部２０３に格納されていることが検出された場合、前のレコードがサスペンドレコードであると判定される。
【０１０３】
ステップＳ１８０３において、印刷部２０９は、対象レコードに対してシフト排紙指示を付加する。ここで付加されたシフト排紙指示はステップＳ９０６において印刷処理される場合に適応され、出力物に対してシフト排紙が実行される。
【０１０４】
本実施例においてサスペンドされたレコードの次のレコードをシフト出力することでオペレータが容易にサスペンドレコードが発生した箇所を積載された出力物からも特定できるようにしている。しかし、出力物の中でサスペンドレコードを特定する手法はシフト出力に限定されるものにおいてなく、挿入紙（色紙）をサスペンドレコードが発生した位置に出力する手法や、排紙向きを通常出力物と変えた挿入紙を出力する手法などでも実施可能である。
【０１０５】
（実施例５）
実施例５では、１つのＶＤＰジョブにおけるサスペンドレコード数に制限値を設け、制限を越えた場合に、ジョブをキャンセルし、次のジョブをプロモートする。図１８は、実施例５における処理の流れを示すフローチャートである。尚、本実施例における、ステップＳ９０１〜ステップＳ９０６の処理は実施例１と同様であるため、説明を省略し、実施例１との差分であるステップＳ１８０１〜ステップＳ１８０５の処理についてのみ説明する。
【０１０６】
ステップＳ１８０１において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードの数が制限値以下かどうかを判定する。サスペンドレコードの数が制限値以下である判定された場合にはステップＳ９０６へ移行し、制限値以下ではないと判定された場合にはステップＳ１８０２へ移行する。
【０１０７】
ステップＳ１８０２において、表示制御部２０５は、サスペンドレコードが制限値を超えた旨を伝えるメッセージをオペレータに通知する。この時表示される画面の例を図１９に示す。
【０１０８】
ステップＳ１８０３において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードの再開指示があったかを判定する。再開指示があったと判定された場合には、ステップＳ１８０４へ移行する。再開指示がなかったと判定された場合にはステップＳ１８０５へ移行する。
【０１０９】
ステップＳ１８０４において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードに対応する印刷データを取得する。
【０１１０】
ステップＳ１８０５において、サスペンドレコード制御部２０４は、サスペンドレコード記憶部２０３に格納されているサスペンドレコードを削除した後、現在出力処理を行っているＶＤＰジョブをキャンセルし、出力処理を終了する。
【０１１１】
ＶＤＰジョブは何万レコードも含まれているケースが多く、場合によってはサスペンドされるレコード数が多い可能性がある。このような場合に、サスペンド可能なレコード数に制限を設けておくことで記憶領域が上限値に達することを防ぐ。また、サスペンドレコードが多く発生するジョブでは、基本的なエラー原因が存在している可能性が高く、そのようなエラーが頻発するジョブをキャンセルし、次のジョブをプロモートすることで効率的な出力処理が可能となる。
【０１１２】
図１９は、サスペンドレコードの格納数が制限値を超えた場合にステップＳ１８０２において表示される画面の例を示す図である。
【０１１３】
表示画面２００１にはエラーメッセージ２００２、キャンセルボタン２００３、サスペンドレコード再開指示ボタン２００４とサスペンドレコード確認ボタン２００５が設けられている。
【０１１４】
エラーメッセージ２００２には、サスペンドレコードの数が制限値（例えば２０００）を超えたことをオペレータに通知するためのメッセージを表示する。
【０１１５】
表示制御部２０５は、キャンセルボタン２００３が押されたことを検知すると、ジョブ終了指示をサスペンドレコード制御部２０４に通知する。尚、キャンセルボタン２００３が押された場合に、図１８のステップＳ１８０３において、サスペンドレコードの再開指示が行われなかったと判定される。
【０１１６】
表示制御部２０５は、サスペンドレコード再開指示ボタン２００４が押されたことを検知すると、サスペンドレコード制御部２０４に、サスペンドレコードの再開指示を出す。尚、サスペンドレコード再開指示ボタン２００４が押された場合に、図１８のステップＳ１８０３において、サスペンドレコードの再開指示が行われたと判定される。
【０１１７】
表示制御部２０５は、サスペンドレコード確認ボタン２００５が押されたことを検知すると、操作部２１０にサスペンドレコード記憶部２０３に格納されているサスペンドレコードの一覧を表示する。
【０１１８】
以上、本発明の各実施例について具体例を挙げて説明したが、本発明は上記の実施例に限定されるものではない。また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１１９】
１０  画像形成装置
２０１  制御部
２０２  ＶＤＰジョブ受信部
２０３  サスペンドレコード記憶部
２０４  サスペンドレコード制御部
２０５  表示制御部
２０６  ＶＤＰジョブ解析部
２０７  解析後レコード記憶部
２０８  ＲＩＰ部
２０９  印刷部
２１０  操作部
４０１  ＶＤＰジョブ
【図１】
2011018977.tif 000003
【図２】
2011018977.tif 000004
【図３】
2011018977.tif 000005
【図４】
2011018977.tif 000006
【図５】
2011018977.tif 000007
【図６】
2011018977.tif 000008
【図７】
2011018977.tif 000009
【図８】
2011018977.tif 000010
【図９】
2011018977.tif 000011
【図１０】
2011018977.tif 000012
【図１１】
2011018977.tif 000013
【図１２】
2011018977.tif 000014
【図１３】
2011018977.tif 000015
【図１４】
2011018977.tif 000016
【図１５】
2011018977.tif 000017
【図１６】
2011018977.tif 000018
【図１７】
2011018977.tif 000019
【図１８】
2011018977.tif 000020
【図１９】
2011018977.tif 000021