(57)【要約】【課題】印刷ジョブをキャンセルした後に新たに登録された印刷ジョブの早期の印刷完了が期待できる印刷装置を提供すること。【解決手段】プリンタ１００は，受け付けた印刷ジョブのキャンセル指示が入力された場合に，キャンセル対象となった印刷ジョブであるキャンセルジョブをジョブキュー５１から消去し，さらに，キャンセルジョブのジョブキュー５１での登録位置を保持する。また，キャンセル指示が入力された後に受け付けた印刷ジョブである新規ジョブが，キャンセルジョブを代替する代替ジョブと判断された場合に，その新規ジョブを保持された登録位置でジョブキュー５１に登録する。【選択図】図９
2014104636.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブを受け付ける受付部と，
前記受付部が受け付けた印刷ジョブが登録されるジョブキューと，
前記ジョブキューに登録された印刷ジョブに基づいて印刷を行う印刷部と，
前記ジョブキューに登録された印刷ジョブのキャンセル指示を入力する入力部と，
制御部と，
を備え，
前記制御部は，
前記キャンセル指示が入力された場合に，キャンセル対象となった印刷ジョブであるキャンセルジョブを前記ジョブキューから消去するキャンセル処理と，
前記キャンセルジョブの前記ジョブキューでの登録位置を保持する保持処理と，
前記キャンセル指示が入力された後に受け付けた印刷ジョブである新規ジョブが，前記キャンセルジョブを代替する代替ジョブか否かを判断する判断処理と，
前記判断処理にて新規ジョブが代替ジョブと判断された場合に，当該新規ジョブを前記保持処理にて保持された登録位置で前記ジョブキューに登録する登録処理と，
を実行することを特徴とする印刷装置。
【請求項２】
請求項１に記載する印刷装置において，
前記判断処理では，前記キャンセルジョブのユーザと，前記新規ジョブのユーザとが一致する場合に，前記新規ジョブを前記代替ジョブと判断することを特徴とする印刷装置。
【請求項３】
請求項２に記載する印刷装置において，
前記登録処理では，前記保持処理にて保持された登録位置を同じユーザについて複数有する場合，最先の登録位置で前記新規ジョブを登録することを特徴とする印刷装置。
【請求項４】
請求項２または請求項３に記載する印刷装置において，
前記制御部は，
前記キャンセルジョブの印刷属性を記憶する属性記憶処理を実行し，
前記登録処理では，前記属性記憶処理にて記憶された印刷属性と，前記代替ジョブと判断された前記新規ジョブの印刷属性との，少なくとも一部が一致する場合に，当該新規ジョブを前記保持処理にて保持された登録位置で前記ジョブキューに登録することを特徴とする印刷装置。
【請求項５】
請求項１から請求項４のいずれか１つに記載する印刷装置において，
前記登録処理では，前記代替ジョブと判断された前記新規ジョブを，前記保持処理にて保持された登録位置の直前に位置する印刷ジョブの印刷が完了する前に受け付けた場合に，当該新規ジョブを前記保持処理にて保持された登録位置で前記ジョブキューに登録することを特徴とする印刷装置。
【請求項６】
請求項５に記載する印刷装置において，
前記登録処理では，前記代替ジョブと判断された前記新規ジョブを，前記保持処理にて保持された登録位置の直前に位置する印刷ジョブの印刷が完了した後に受け付けた場合に，当該新規ジョブを現在印刷中の印刷ジョブを除く先頭位置で前記ジョブキューに登録することを特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，印刷機能を有する印刷装置に関する。さらに詳細には，ジョブキューに登録された印刷ジョブをキャンセルするキャンセル機能を有する印刷装置に関するものである。
【背景技術】
【０００２】
従来から，ジョブキューに登録された印刷ジョブを登録順に印刷する印刷装置が知られている。また，ジョブキューに登録された印刷ジョブのキャンセル指示を受け付け，キャンセル指示を受けた印刷ジョブをキャンセルする印刷装置が知られている。
【０００３】
印刷ジョブをキャンセルする技術は，例えば，特許文献１に開示されている。特許文献１に開示される印刷装置では，複数段階の終了条件を有し，キャンセル指示を入力するキーの入力時間に応じて適切な終了条件が選択され，その終了条件に基づいて印刷実行中の印刷ジョブをキャンセルする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−３４１３８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら，前記した従来の印刷装置には，次のような問題があった。すなわち，印刷装置は，ジョブキューへの登録順に印刷ジョブを実行することから，印刷ジョブをキャンセルしたユーザが，キャンセル直後に新たな印刷ジョブを登録しても，その印刷ジョブはジョブキューの最後尾に登録され，既に登録済みの印刷ジョブの完了を待って実行される。そのため，その新たな印刷ジョブの印刷が完了するまでの，ユーザの待ち時間が長くなる。
【０００６】
本発明は，前記した従来の印刷装置が有する問題点を解決するためになされたものである。すなわちその課題とするところは，印刷ジョブをキャンセルした後に新たに登録された印刷ジョブの，早期の印刷完了が期待できる印刷装置を提供することにある。
【課題を解決するための手段】
【０００７】
この課題の解決を目的としてなされた印刷装置は，印刷ジョブを受け付ける受付部と，前記受付部が受け付けた印刷ジョブが登録されるジョブキューと，前記ジョブキューに登録された印刷ジョブに基づいて印刷を行う印刷部と，前記ジョブキューに登録された印刷ジョブのキャンセル指示を入力する入力部と，制御部とを備え，前記制御部は，前記キャンセル指示が入力された場合に，キャンセル対象となった印刷ジョブであるキャンセルジョブを前記ジョブキューから消去するキャンセル処理と，前記キャンセルジョブの前記ジョブキューでの登録位置を保持する保持処理と，前記キャンセル指示が入力された後に受け付けた印刷ジョブである新規ジョブが，前記キャンセルジョブを代替する代替ジョブか否かを判断する判断処理と，前記判断処理にて新規ジョブが代替ジョブと判断された場合に，当該新規ジョブを前記保持処理にて保持された登録位置で前記ジョブキューに登録する登録処理とを実行することを特徴としている。
【０００８】
本明細書で開示される印刷装置は，受け付けた印刷ジョブのキャンセル指示が入力された場合，キャンセルジョブのジョブキューでの登録位置を保持する。そして，その後に新規ジョブを受け付けた場合，新規ジョブが，キャンセルジョブの代替ジョブであるか否かを判断し，代替ジョブと判断されたら，保持された登録位置でその新規ジョブを登録する。なお，キャンセル指示の入力は，自装置の操作パネルへのユーザ操作であってもよいし，外部装置からの指示であってもよい。また，登録位置としては，例えば印刷ジョブの通し番号，前後のジョブの識別情報が該当する。また，代替ジョブとしては，例えばキャンセルジョブとユーザが同じジョブ，キャンセルジョブと印刷属性が近似するジョブが該当する。
【０００９】
すなわち，本明細書で開示される印刷装置によれば，受け付けた新規ジョブがキャンセルジョブの代替ジョブであると判断した場合，キャンセルジョブが登録されていた位置にその新規ジョブを登録する。これにより，その新規ジョブを最後尾に登録する場合と比較して，その新規ジョブが早く完了する。そのため，キャンセルジョブの代替ジョブと判断された新規ジョブの早期の印刷完了が期待できる。
【００１０】
また，本明細書で開示される印刷装置は，前記判断処理では，前記キャンセルジョブのユーザと，前記新規ジョブのユーザとが一致する場合に，前記新規ジョブを前記代替ジョブと判断するとよい。新規ジョブが，印刷ジョブをキャンセルしたユーザと同じユーザの印刷ジョブであれば，その新規ジョブを代替ジョブと判断してキャンセルジョブの登録位置に登録しても，他のユーザにとって優先順位は変わらない。そのため，他のユーザに生じる不公平感の低減が期待できる。なお，ユーザが同じであることは，例えばユーザ情報（ユーザＩＤやグループＩＤ）が同じであることや，送信元の装置の識別情報（装置ＩＤやＩＰアドレス）が同じであることが該当する。
【００１１】
また，本明細書で開示される印刷装置は，前記登録処理では，前記保持処理にて保持された登録位置を同じユーザについて複数有する場合，最先の登録位置で前記新規ジョブを登録するとよい。同じユーザが複数の印刷ジョブをキャンセルすると，同じユーザについて複数の登録位置が保持される。このように，代替ジョブの登録位置の候補が複数ある場合には，最も早期に印刷が開始される最先の位置に登録することで，代替ジョブと判断された新規ジョブの，より早期の印刷完了が期待できる。
【００１２】
また，前記制御部は，前記キャンセルジョブの印刷属性を記憶する属性記憶処理を実行し，前記登録処理では，前記属性記憶処理にて記憶された印刷属性と，前記代替ジョブと判断された前記新規ジョブの印刷属性との，少なくとも一部が一致する場合に，当該新規ジョブを前記保持処理にて保持された登録位置で前記ジョブキューに登録するとよい。印刷属性が大きく異なるジョブは，キャンセルジョブとの関連度合いが低く，そのようなジョブまでキャンセルジョブの登録位置に登録すると，他のユーザに不公平感を与える可能性がある。そのため，少なくとも一部の属性が一致するジョブに限り代替ジョブとする方が好ましい。なお，印刷属性としては，例えば，カラー設定，両面設定，用紙サイズ，給紙トレイ，排紙トレイ，画質，集約，ポスター印刷，ウォーターマーク，画像ファイル名が該当する。また，例えば，少なくとも画像ファイル名が一致すれば，キャンセルジョブとの関連度合いが高いと推測されるため，キャンセルジョブの登録位置でジョブキューに登録するとしてもよい。
【００１３】
また，本明細書で開示される印刷装置は，前記登録処理では，前記代替ジョブと判断された前記新規ジョブを，前記保持処理にて保持された登録位置の直前に位置する印刷ジョブの印刷が完了する前に受け付けた場合に，当該新規ジョブを前記保持処理にて保持された登録位置で前記ジョブキューに登録するとよい。少なくともキャンセルジョブの直前の印刷ジョブの印刷が完了する前に受け付けた代替ジョブについては，緊急度が高いと推測されることから，キャンセルジョブの登録位置に登録して，印刷優先順位を高くする方が好ましい。なお，印刷ジョブの印刷が完了するとは，ジョブキューから当該印刷ジョブの登録が削除されることを含む。
【００１４】
また，本明細書で開示される印刷装置は，前記登録処理では，前記代替ジョブと判断された前記新規ジョブを，前記保持処理にて保持された登録位置の直前に位置する印刷ジョブの印刷が完了した後に受け付けた場合に，当該新規ジョブを現在印刷中の印刷ジョブを除く先頭位置で前記ジョブキューに登録するとよい。キャンセルジョブの直前の印刷ジョブの印刷が完了した後に受け付けた代替ジョブについては，可能な限り印刷優先順位を高くして早期に完了させる方が好ましい。
【発明の効果】
【００１５】
本発明によれば，印刷ジョブをキャンセルした後に新たに登録された印刷ジョブの，早期の印刷完了が期待できる印刷装置が実現される。
【図面の簡単な説明】
【００１６】
【図１】実施の形態にかかるプリンタの概略構成を示す斜視図である。
【図２】プリンタの電気的構成を示すブロック図である。
【図３】ジョブキューを示す説明図である。
【図４】キャンセルジョブ情報を示す説明図である。
【図５】ジョブキャンセル処理を示すフローチャートである。
【図６】キャンセル前の操作パネルの表示を示す説明図である。
【図７】キャンセル後の操作パネルの表示を示す説明図である。
【図８】キャンセル後のジョブキューを示す説明図である。
【図９】ジョブ受付処理を示すフローチャートである。
【図１０】代替ジョブ判断処理を示すフローチャートである。
【図１１】ジョブキューを示す説明図である。
【図１２】ジョブキューを示す説明図である。
【図１３】キャンセルジョブ情報を示す説明図である。
【発明を実施するための形態】
【００１７】
以下，本発明にかかる印刷装置を具体化した実施の形態について，添付図面を参照しつつ詳細に説明する。本形態は，電子写真方式のカラープリンタに本発明を適用したものである。
【００１８】
［プリンタの全体構成］
本実施の形態のプリンタ１００は，図１に示すように，シートに画像を形成する画像形成部１０と，画像形成部１０の上面に位置する操作パネル４０とを有している。操作パネル４０は，液晶ディスプレイからなる表示部４１と，スタートキー，ストップキー，テンキー等から構成されるボタン群４２とを備えている。ユーザは，操作パネル４０を使用して，ジョブの進捗状況の確認や，ジョブのキャンセル指示の入力操作等を行う。画像形成部１０は印刷部の一例であり，操作パネル４０は入力部の一例である。
【００１９】
［プリンタの電気的構成］
続いて，プリンタ１００の電気的構成について説明する。プリンタ１００は，図２に示すように，ＣＰＵ３１と，ＲＯＭ３２と，ＲＡＭ３３と，ＮＶＲＡＭ（不揮発性ＲＡＭ）３４とを備えている。また，プリンタ１００は，画像形成部１０と，操作パネル４０と，ネットワークインターフェース３７と，ＵＳＢインターフェース３８を備え，これらがＣＰＵ３１によって制御される。
【００２０】
ＲＯＭ３２には，プリンタ１００を制御するための各種制御プログラムや各種設定，初期値等が記憶されている。ＲＡＭ３３は，各種制御プログラムが読み出される作業領域として，あるいは，画像データを一時的に記憶する記憶領域として利用される。ＲＡＭ３３には，ジョブキュー５１とキャンセルジョブ情報５２が記憶される。ジョブキュー５１は，プリンタ１００が受け付けた印刷ジョブが登録されるデータベースである。キャンセルジョブ情報５２は，受け付け後にキャンセルされたジョブについてのデータが記憶されるデータベースである。ジョブキュー５１及びキャンセルジョブ情報５２の内容については後述する。
【００２１】
ＣＰＵ３１は，ＲＯＭ３２から読み出した制御プログラムに従って，その処理結果をＲＡＭ３３またはＮＶＲＡＭ３４に記憶させながら，プリンタ１００の各構成要素を制御する。ＣＰＵ３１は，制御部の一例である。
【００２２】
ネットワークインターフェース３７は，ＬＡＮ等のネットワークに接続される。ネットワークインターフェース３７は，プリンタ１００用のプリンタドライバが組み込まれた外部装置とプリンタ１００との接続を可能にする。ＵＳＢインターフェース３８は，ＵＳＢ接続の可能な周辺機器に接続される。プリンタ１００は，ネットワークインターフェース３７やＵＳＢインターフェース３８を介して，印刷ジョブを受け付けることができる。ネットワークインターフェース３７およびＵＳＢインターフェース３８は，受付部の一例である。
【００２３】
［ジョブキューの構成］
次に，プリンタ１００のＲＡＭ３３に設けられるジョブキュー５１の構成について説明する。プリンタ１００は，ネットワークインターフェース３７またはＵＳＢインターフェース３８を介して印刷ジョブを受け付けると，各印刷ジョブを識別するジョブＩＤを付けて，順次，ジョブキュー５１に登録する。ジョブキュー５１には，図３に示すように，受け付けた印刷ジョブがそれぞれのジョブＩＤとともに登録される。図３中で横一列のデータが１つの印刷ジョブに関するデータであり，その印刷ジョブのジョブレコード５５である。
【００２４】
ジョブキュー５１に登録される各印刷ジョブのジョブレコード５５は，例えば，ジョブＩＤ，受付日時，ユーザ名，ファイル名，印刷設定，ステータス等の項目を含む。ジョブＩＤは，各印刷ジョブを識別する符号であり，例えば，受付順に昇順に付けられる通し番号である。受付日時は，プリンタ１００がその印刷ジョブを受け付けた日時である。図では時刻のみを示しているが，月日の情報をも含むとよい。ユーザ名は，その印刷ジョブをプリンタ１００に送信したユーザを識別する情報である。ユーザ名としては，ユーザの個人名，ユーザＩＤ，グループＩＤ等のユーザの識別情報であってもよいし，装置ＩＤやＩＰアドレス等の送信元の装置の識別情報であってもよい。
【００２５】
ファイル名は，プリンタ１００に送信された印刷用の画像ファイルの情報である。印刷設定は，印刷に際して印刷ジョブに付加される各種の設定である。印刷設定は，例えば，カラーかモノクロかを示すカラー設定，両面印刷か片面印刷かを示す両面設定，印刷する用紙サイズ，使用する給紙トレイ，使用する排紙トレイ，画質のレベル，集約印刷の有無，ポスター印刷の有無，ウォーターマークの有無等が該当する。ファイル名と印刷設定とはいずれも，印刷属性の一例である。また，ステータスは，その印刷ジョブの進捗状況を示す情報である。
【００２６】
ジョブキュー５１には，図３に示すように，印刷を実行中の印刷ジョブのジョブレコード５５を先頭に，待機中のジョブレコード５５が登録されている。プリンタ１００は，ジョブキュー５１に基づいて，登録されている順序に従って印刷を実行する。そして，実行中の印刷ジョブの印刷が終了すると，プリンタ１００は，その印刷ジョブのジョブレコード５５をジョブキュー５１から消去する。そして，終了した印刷ジョブの次にジョブキュー５１に登録されている待機中の印刷ジョブのステータスを実行中に変更し，その印刷ジョブの印刷を開始する。
【００２７】
なお，消去された印刷ジョブがあっても，残りの印刷ジョブのジョブＩＤが付け替えられることはなく，登録時のジョブＩＤが保持される。印刷が終了し，ジョブキュー５１からのジョブレコード５５の消去でもって，そのジョブの印刷完了と見なされる。
【００２８】
また，印刷完了より前に印刷ジョブのキャンセル指示が入力された場合には，プリンタ１００は，キャンセルされた印刷ジョブのジョブレコード５５をジョブキュー５１から消去し，以降のジョブレコード５５を順次繰り上げる。さらに，プリンタ１００は，例えば，図４に示すように，キャンセルされた印刷ジョブに関するデータを，ＲＡＭ３３のキャンセルジョブ情報５２に登録する。図４は，図３中のジョブＩＤ００３のジョブがキャンセルされた場合の，キャンセルジョブ情報５２の一例である。
【００２９】
キャンセルジョブ情報５２には，キャンセルされた印刷ジョブのジョブレコード５５に基づくキャンセルジョブレコード５６がキャンセル順に保存される。各キャンセルジョブレコード５６は，例えば，対応するジョブレコード５５から受付日時とステータス情報を除き，キャンセル日時を追加したデータである。図４の例では，キャンセルジョブレコード５６は，キャンセルジョブのジョブＩＤ，キャンセル日時，ユーザ名，ファイル名，印刷設定を含む。
【００３０】
［ジョブキャンセル処理］
続いて，プリンタ１００にて受信済みの印刷ジョブをキャンセルするジョブキャンセル処理について，図５のフローチャートを参照しつつ説明する。本処理は，印刷ジョブをキャンセルするキャンセル指示を受け付けたことを契機に，ＣＰＵ３１によって実行される。なお，キャンセル指示は，操作パネル４０へのユーザ操作であってもよいし，ネットワークインターフェース３７等を介して受ける外部装置からの指示であってもよい。
【００３１】
例えば，ジョブキュー５１が図３に示した状態において，ユーザが投入済みの印刷ジョブをキャンセルする場合には，操作パネル４０の表示部４１に，図６に示すように受け付け済みの印刷ジョブ一覧を表示させる。ユーザは，ファイル名やユーザ名等を手がかりに，キャンセルしようとするジョブにカーソル４５を合わせて選択することにより，その印刷ジョブをキャンセルすることができる。
【００３２】
キャンセルされた印刷ジョブは，印刷ジョブ一覧から削除され，以下の印刷ジョブが順に繰り上げられる。例えば，ユーザＣがファイル名Ｃ０１の印刷ジョブをキャンセルした場合には，表示部４１に表示される印刷ジョブ一覧は，図７に示すようになる。なお，実行中の印刷ジョブをキャンセルする場合には，例えば，ストップボタンの押下によってもよい。
【００３３】
キャンセル指示の入力を受け，ジョブキャンセル処理を開始すると，ＣＰＵ３１は，まず，キャンセルされた印刷ジョブのジョブレコード５５に基づくキャンセルジョブレコード５６（図４参照）を，ＲＡＭ３３のキャンセルジョブ情報５２に保存させる（Ｓ１０１）。キャンセルジョブ情報５２に保存されたキャンセルジョブレコード５６によって，ＣＰＵ３１は，ジョブキュー５１におけるキャンセルジョブの登録位置，および，キャンセルジョブのユーザの情報，キャンセルジョブの印刷属性を把握できる。
【００３４】
すなわち，キャンセルジョブレコード５６のジョブＩＤによって，登録された順序に関する他の印刷ジョブとの関係を把握することができる。キャンセルジョブレコード５６のユーザ名は，キャンセルジョブのユーザの情報である。また，キャンセルジョブレコード５６のファイル名及び印刷設定は，キャンセルジョブの印刷属性である。従って，Ｓ１０１の処理は，保持処理および属性記憶処理の一例に相当する。
【００３５】
続いて，ＣＰＵ３１は，キャンセルジョブのジョブレコード５５を，ジョブキュー５１から消去する（Ｓ１０２）。Ｓ１０２の処理は，キャンセル処理の一例に相当する。なお，キャンセルジョブの画像データ等を既に受け付けてＲＡＭ３３に記憶している場合には，その画像データも消去するとよい。
【００３６】
先の例のように，図３に示した状態で，ユーザＣがファイル名Ｃ０１の印刷ジョブをキャンセルする指示を入力した場合には，キャンセルジョブ情報５２の内容は図４に示したようになる。すなわち，キャンセルジョブ情報５２には，ジョブＩＤ００３の印刷ジョブのキャンセルジョブレコード５６が記憶される。キャンセルジョブレコード５６のジョブＩＤに基づいて，このキャンセルジョブは，ジョブキュー５１において，ジョブＩＤ００２の印刷ジョブとジョブＩＤ００４の印刷ジョブとの間にあったことがわかる。
【００３７】
一方，ジョブキュー５１の内容は，図８に示すようになる。すなわち，ジョブキュー５１からは，ジョブＩＤ００３のジョブレコード５５が削除され，ジョブＩＤ００２のジョブレコード５５の次に，ジョブＩＤ００４のジョブレコード５５が並ぶ。このジョブキュー５１に基づいて印刷の実行が進行すれば，ジョブＩＤ００２の印刷ジョブの次にジョブＩＤ００４の印刷ジョブが実行される。
【００３８】
図５のジョブキャンセル処理の続きに戻り，ＣＰＵ３１は，Ｓ１０２の後，予め決めた保持時間を経過したか否かを判断する（Ｓ１０３）。そして，保持時間を経過していないと判断したら（Ｓ１０３：Ｎｏ），保持時間を経過するまで待機する。保持時間を経過したと判断したら（Ｓ１０３：Ｙｅｓ），Ｓ１０１にて保存したキャンセルジョブレコード５６をキャンセルジョブ情報５２から消去する（Ｓ１０４）。
【００３９】
プリンタ１００では，後述するように，キャンセルジョブを代替する代替ジョブと判断される印刷ジョブを新たに受け付けた場合に，キャンセルジョブレコード５６を利用して，キャンセルジョブの元の登録位置を把握する。しかし，すべてのキャンセルジョブに対して，代替ジョブが投入されるとは限らない。そこで，プリンタ１００は，代替ジョブを受け付ける期限として，キャンセルジョブレコード５６を保持する保持時間を予め設けている。これにより，キャンセルジョブ情報５２にキャンセルジョブレコード５６が長く留まることが抑制される。これで，ジョブキャンセル処理を終了する。
【００４０】
［ジョブ受付処理］
続いて，新規に印刷ジョブを受け付けた際にプリンタ１００にて実行されるジョブ受付処理について，図９のフローチャートを参照しつつ説明する。本処理は，ネットワークインターフェース３７等を介して印刷ジョブを受け付けたことを契機に，ＣＰＵ３１によって実行される。
【００４１】
ジョブ受付処理では，ＣＰＵ３１は，まず，キャンセルジョブがあるか否かを判断する（Ｓ２０１）。すなわち，キャンセルジョブ情報５２にキャンセルジョブレコード５６が記憶されているか否かを判断する。キャンセルジョブ情報５２にキャンセルジョブレコード５６が無く，キャンセルジョブが無いと判断した場合は（Ｓ２０１：Ｎｏ），受け付けた印刷ジョブをジョブキュー５１の最後尾に登録する（Ｓ２０２）。つまり，直近のジョブＩＤの次の番号でジョブＩＤを付加して，ジョブキュー５１に登録する。この場合には，これでジョブ受付処理を終了する。
【００４２】
一方，キャンセルジョブ情報５２にキャンセルジョブレコード５６が有り，キャンセルジョブがあると判断した場合は（Ｓ２０１：Ｙｅｓ），受け付けた印刷ジョブである新規ジョブが，キャンセルジョブを代替する代替ジョブであるか否かを判断するための判断処理である代替ジョブ判断処理を実行する（Ｓ２０３）。
【００４３】
図１０に，Ｓ２０３にて実行される代替ジョブ判断処理の手順を示す。代替ジョブ判断処理の実行を開始すると，ＣＰＵ３１は，新規ジョブに関するデータと，キャンセルジョブ情報５２に記憶されているキャンセルジョブレコード５６とを比較する。なお，キャンセルジョブ情報５２に複数のキャンセルジョブレコード５６が記憶されている場合は，ジョブＩＤの小さい順に比較の対象とするとよい。つまり，キャンセル順ではなく，最先の登録位置であったキャンセルジョブを優先的に判断対象とする。
【００４４】
ＣＰＵ３１は，まず，新規ジョブとキャンセルジョブとで，ユーザ名及びファイル名を比較する（Ｓ３０１）。そして，新規ジョブのユーザ名とキャンセルジョブレコード５６に含まれるユーザ名とが同一であるか否かを判断する（Ｓ３０２）。新規ジョブのユーザと，キャンセルジョブのユーザとが一致すれば，新規ジョブはキャンセルジョブの代替ジョブである可能性がある。
【００４５】
新規ジョブのユーザ名がキャンセルジョブのユーザ名と同一であると判断した場合は（Ｓ３０２：Ｙｅｓ），続いて，新規ジョブのファイル名とキャンセルジョブレコード５６に含まれるファイル名とが同一であるか否かを判断する（Ｓ３０３）。ファイル名が同一であると判断した場合は（Ｓ３０３：Ｙｅｓ），新規ジョブを，キャンセルジョブレコード５６に対応するキャンセルジョブの代替ジョブであると判定する（Ｓ３０４）。ユーザ名とファイル名とがいずれも同一であれば，キャンセルジョブとの関連度合いが高く，代替ジョブである可能性が高いと推測されるからである。この場合には，これで代替ジョブ判断処理を終了する。
【００４６】
一方，新規ジョブとキャンセルジョブとで，ユーザ名が同一であっても，ファイル名が同一ではないと判断した場合には（Ｓ３０３：Ｎｏ），新規ジョブの印刷設定と，キャンセルジョブレコード５６に含まれる印刷設定とを比較する（Ｓ３０５）。そして，これらの印刷設定の差分が，あらかじめ決めた閾値以下であるか否かを判断する（Ｓ３０６）。差分が閾値以下であると判断した場合には（Ｓ３０６：Ｙｅｓ），新規ジョブとキャンセルジョブとの関連度合いが高いと推測されることから，新規ジョブがそのキャンセルジョブの代替ジョブであると判定する（Ｓ３０４）。この場合には，これで代替ジョブ判断処理を終了する。
【００４７】
一方，ユーザ名が同一でないと判断した場合（Ｓ３０２：Ｎｏ），及び，印刷設定の差分が閾値を超えていると判断した場合（Ｓ３０６：Ｎｏ）には，新規ジョブはそのキャンセルジョブの代替ジョブではないと判断する。異なるユーザによる印刷ジョブは，代替ジョブではないと判断することが好ましい。また，印刷設定が大きく異なる印刷ジョブは，キャンセルジョブとの関連度合いが低いと推測されることから，代替ジョブではないと判断することが好ましい。
【００４８】
そこで，Ｓ３０２にてＮｏの場合，及び，Ｓ３０６にてＮｏの場合には，キャンセルジョブ情報５２に，さらに次のキャンセルジョブレコード５６が有るか否かを判断する（Ｓ３０７）。次のキャンセルジョブレコード５６が無いと判断した場合は（Ｓ３０７：Ｎｏ），新規ジョブが代替するキャンセルジョブは無いと判定する（Ｓ３０８）。つまり，新規ジョブは，代替ジョブではないと判断される。この場合には，これで代替ジョブ判断処理を終了する。
【００４９】
一方，キャンセルジョブ情報５２に別のキャンセルジョブレコード５６があると判断した場合には（Ｓ３０７：Ｙｅｓ），Ｓ３０１に戻って，新規ジョブのデータと次のキャンセルジョブレコード５６とを比較する。そして，Ｓ３０４とＳ３０８とのいずれかを実行するまで，本処理を繰り返す。これで代替ジョブ判断処理を終了する。
【００５０】
図９のジョブ受付処理の続きに戻り，Ｓ２０３の代替ジョブ判断処理において，新規ジョブが代替ジョブであると判断されたか否かを判断する（Ｓ２０４）。新規ジョブはいずれのキャンセルジョブをも代替しないと判断した場合は（Ｓ２０４：Ｎｏ），新規ジョブに新たなジョブＩＤを付加して，ジョブキュー５１の最後尾に登録する（Ｓ２０２）。この場合には，これでジョブ受付処理を終了する。
【００５１】
一方，Ｓ２０３の代替ジョブ判断処理において，代替ジョブであると判断した場合は（Ｓ２０４：Ｙｅｓ），新規ジョブにキャンセルジョブのジョブＩＤを付加する（Ｓ２０５）。例えば，先の例でジョブＩＤ００３のジョブをキャンセルしたユーザＣが，改めてファイル名Ｃ０１の印刷ジョブを投入した場合には，この新規ジョブは，キャンセルされたジョブＩＤ００３のジョブを代替する代替ジョブと判断される。そこで，この新規ジョブには，ジョブＩＤ００３が付加される。
【００５２】
次に，ＣＰＵ３１は，新規ジョブが代替するキャンセルジョブの直前のジョブが印刷済みであるか否かを判断する（Ｓ２０６）。例えば，現在実行中の印刷ジョブのジョブＩＤと，新規ジョブに付加したジョブＩＤとを比較することにより，それらの受け付けた順序を把握することができる。
【００５３】
そして，キャンセルジョブの直前のジョブが印刷済みではないと判断した場合には（Ｓ２０６：Ｎｏ），新規ジョブを，代替するキャンセルジョブの登録位置に登録する（Ｓ２０７）。先の例でジョブＩＤ００２の印刷ジョブを実行中であれば，ジョブキュー５１は，図１１に示すようになる。つまり，ジョブＩＤ００３の新規ジョブは，ジョブＩＤ００４の印刷ジョブやジョブＩＤ００５の印刷ジョブより受付日時が後であるが，ジョブＩＤ００２の印刷ジョブの次の位置に登録される。これにより，新規ジョブは，保持処理にて保持された登録位置でジョブキュー５１に登録されたことになる。このＳ２０７の処理が登録処理の一例に相当する。
【００５４】
一方，直前のジョブが印刷済みであると判断した場合には（Ｓ２０６：Ｙｅｓ），現在実行中の印刷ジョブの後の位置に，新規ジョブを登録する（Ｓ２０８）。例えば，先の例で，ジョブＩＤ００２の印刷ジョブが印刷済みであり，ジョブＩＤ００４の印刷ジョブを実行中であれば，ジョブＩＤ００３の新規ジョブは，ジョブＩＤ００４の印刷ジョブの次の位置に登録される。この場合のジョブキュー５１は，図１２に示すようになる。
【００５５】
さらに，Ｓ２０７またはＳ２０８によって，新規ジョブをジョブキュー５１に登録した後，ＣＰＵ３１は，新規ジョブが代替したキャンセルジョブのキャンセルジョブレコード５６を，キャンセルジョブ情報５２から消去する（Ｓ２０９）。これで，ジョブ受付処理を終了する。
【００５６】
以上詳細に説明したように，本形態のプリンタ１００によれば，キャンセル指示が入力された印刷ジョブは，キャンセルジョブとなってジョブキュー５１から消去される。そのとき，ジョブＩＤを含むキャンセルジョブレコード５６が，キャンセルジョブ情報５２に保持される。その後，新たに印刷ジョブを受け付けた場合には，プリンタ１００は，その新規ジョブが，キャンセルジョブを代替する代替ジョブであるか否かを判断する。新規ジョブがキャンセルジョブの代替ジョブであると判断した場合には，プリンタ１００は，キャンセルジョブ情報５２のキャンセルジョブレコード５６に保持されているジョブＩＤによって示される登録位置に，新規ジョブを登録する。従って，印刷ジョブをキャンセルした後に新たに登録された印刷ジョブが代替ジョブであれば，早期の印刷完了が期待できる。
【００５７】
なお，本実施の形態は単なる例示にすぎず，本発明を何ら限定するものではない。したがって本発明は当然に，その要旨を逸脱しない範囲内で種々の改良，変形が可能である。例えば，プリンタに限らず，複合機やＦＡＸ等の印刷機能を有する装置であれば，本発明を適用可能である。
【００５８】
また，例えば，図１０に示した代替ジョブ判断処理としては，Ｓ３０２，Ｓ３０３，Ｓ３０６の全てをするとしなくてもよい。これらのうちの少なくとも１つの判断をすればよい。例えば，同一のファイル名であるか否かの判断（Ｓ３０３）をしないで，ファイル名も印刷属性の１つとして他の印刷設定と同等に扱ってもよい。ただし，判断の種類が多いほど，より正確な判断を行うことができるので好ましい。ユーザが同一であるか否かの判断（Ｓ３０２）を行えば，他のユーザのジョブによって代替されることがないので，他のユーザに生じる不公平感の低減が期待できる。また，同一のファイル名であるか否かの判断（Ｓ３０３）を行えば，印刷設定の差分にかかわらず代替ジョブと判断されるので好ましい。また，印刷設定の差分が小さいか否かの判断（Ｓ３０６）を行えば，全く属性の異
なる印刷ジョブを代替ジョブと判断する可能性が小さいので好ましい。
【００５９】
また，例えば，図９に示したジョブ受付処理において，キャンセルジョブの直前の印刷ジョブが印刷済みであった場合（Ｓ２０６：Ｙｅｓ）には，実行中の印刷ジョブの後の位置に登録する（Ｓ２０８）としたが，ジョブの最後尾に登録するとしてもよい。その場合には，Ｓ２０２と同様に受付順で直近のジョブＩＤの次の番号でジョブＩＤを付加してもよい。また，このようにする場合には，ジョブキャンセル処理において，保持時間の経過を観察する（Ｓ１０３）処理の代わりに，そのキャンセルジョブの直前の印刷ジョブが印刷済みとなったら，キャンセルジョブレコード５６をキャンセルジョブ情報５２から消去するとしてもよい。
【００６０】
また，例えば，キャンセルジョブの登録位置を保持する方法として，ジョブＩＤに限らず，前後またはそのいずれか一方に登録された印刷ジョブのファイル名またはユーザ名によってもよい。ただし，ファイル名やユーザ名の場合，ジョブキュー５１に同名のファイル名や同名のユーザ名の印刷ジョブが登録される可能性があり，それらと区別する処理が必要となる。そのため，ジョブＩＤで管理する方が処理は簡単である。
【００６１】
また，例えば，上記の形態では，キャンセルジョブ情報５２に登録されているキャンセルジョブレコード５６を，ジョブキュー５１への登録順が最先のものから順に比較対象とするとした。そのため，キャンセルジョブ情報５２に同じユーザのキャンセルジョブが複数記憶されている場合には，新規ジョブはそれらのうちの最先のジョブを代替することになる。例えば，図１３に示すように，キャンセルジョブ情報５２にユーザＣのキャンセルジョブが複数記憶されている場合には，ユーザＣの新規ジョブは，ジョブＩＤ００３のキャンセルジョブを代替する代替ジョブと判断される。
【００６２】
しかし，これに限るものではなく，キャンセルジョブ情報５２の最後のものから順に比較対象として，最後の登録位置のキャンセルジョブを代替するとしてもよい。または，キャンセル日時の早い順に比較するとしてもよい。あるいは，新規ジョブとの印刷属性の差異が最も小さいキャンセルジョブを代替する代替ジョブであるとしてもよい。ただし，ジョブキュー５１への登録順が最先のキャンセルジョブとすれば，早期の印刷完了が期待できるので好ましい。
【００６３】
また，例えば，上記の形態では，代替ジョブのジョブＩＤを，キャンセルジョブのジョブＩＤとするとしたが，これに限らず，代替ジョブであることを識別できる別のジョブＩＤを付加することとしてもよい。
【００６４】
また，実施の形態に開示されている処理は，単一のＣＰＵ，複数のＣＰＵ，ＡＳＩＣなどのハードウェア，またはそれらの組み合わせで実行されてもよい。また，実施の形態に開示されている処理は，その処理を実行するためのプログラムを記録した記録媒体，または方法等の種々の態様で実現することができる。
【符号の説明】
【００６５】
１０  画像形成部
３１  ＣＰＵ
３７  ネットワークインターフェース
３８  ＵＳＢインターフェース
４０  操作パネル
５１  ジョブキュー
５２  キャンセルジョブ情報
【図１】
2014104636.tif 000003
【図２】
2014104636.tif 000004
【図３】
2014104636.tif 000005
【図４】
2014104636.tif 000006
【図５】
2014104636.tif 000007
【図６】
2014104636.tif 000008
【図７】
2014104636.tif 000009
【図８】
2014104636.tif 000010
【図９】
2014104636.tif 000011
【図１０】
2014104636.tif 000012
【図１１】
2014104636.tif 000013
【図１２】
2014104636.tif 000014
【図１３】
2014104636.tif 000015