(57)【要約】【課題】これから印刷する可能性が高いユーザや、未だ印刷実行を指示していないユーザ等、時間予測の結果を欲する蓋然性が高いユーザに、該結果を早いタイミングで提示すること。【解決手段】本発明は、印刷ジョブの予測時間を導出する導出手段と、前記導出した予測時間をユーザに提示する提示手段とを有する、複数の印刷ジョブの夫々に対する前記予測時間を前記印刷ジョブが留め置きされた順に導出し、前記ユーザに順次提示する画像形成装置であって、前記ユーザによる操作に応じて、前記複数の印刷ジョブの夫々に対して設定されている時間予測の優先度を変更する優先度変更手段と、前記変更された優先度に基づき、前記印刷ジョブの時間予測の順序を変更する順序変更手段とを有することを特徴とする画像形成装置である。【選択図】図８
2019126975.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブの予測時間を導出する導出手段と、
前記導出した予測時間をユーザに提示する提示手段と
を有する、複数の印刷ジョブの夫々に対する前記予測時間を前記印刷ジョブが留め置きされた順に導出し、前記ユーザに順次提示する画像形成装置であって、
前記ユーザによる操作に応じて、前記複数の印刷ジョブの夫々に対して設定されている時間予測の優先度を変更する優先度変更手段と、
前記変更された優先度に基づき、前記印刷ジョブの時間予測の順序を変更する順序変更手段と
を有することを特徴とする画像形成装置。
【請求項２】
前記印刷ジョブの書誌情報を作成する作成手段を更に有し、
前記作成された書誌情報は、リストに登録され、
前記リストでは、前記印刷ジョブの夫々に対応する、書誌ＩＤと、ユーザ名と、前記予測時間と、前記時間予測をキャンセルするか否かを示すフラグと、印刷状況を示すステータスとの各項目の値が保持されることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記優先度変更手段は、前記ユーザにより設定された優先度設定値に対応するテーブルを、前記印刷ジョブに対応する前記印刷状況を示すステータスの値を用いて参照することで、該印刷ジョブに対する前記優先度を決定することを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記リストに前記書誌情報が登録された前記印刷ジョブに対応する前記書誌ＩＤの値を保持する、予測待ちジョブリストを更に有し、
前記導出手段は、前記予測待ちジョブリストに登録されている前記印刷ジョブの前記予測時間を、該予測待ちジョブリストに登録された順に導出することを特徴とする請求項３に記載の画像形成装置。
【請求項５】
前記予測待ちジョブリストに、前記複数の印刷ジョブを前記優先度が高いものから順に登録する登録手段を更に有することを特徴とする請求項４に記載の画像形成装置。
【請求項６】
前記印刷ジョブに含まれるＰＤＬデータに基づき、プロファイルデータを生成する生成手段と、
前記画像形成装置のデバイス依存情報を取得する取得手段と、
前記画像形成装置の印刷時の動的情報を取得する取得手段と
を更に有し、
前記導出手段は、前記プロファイルデータと、前記デバイス依存情報と、前記動的情報とに基づき、前記予測時間を導出することを特徴とする請求項１乃至５の何れか１項に記載の画像形成装置。
【請求項７】
前記生成手段が前記プロファイルデータを生成する途中で、前記印刷ジョブに対する前記時間予測のキャンセル指示があるか判定する判定手段と、
前記判定手段が、前記キャンセル指示があると判定した場合、生成途中の前記プロファイルデータを破棄して、前記印刷ジョブに対する前記時間予測をキャンセルするキャンセル手段と
を更に有することを特徴とする請求項６に記載の画像形成装置。
【請求項８】
前記複数の印刷ジョブの夫々について、前記操作を行なったユーザと、前記印刷ジョブを留め置きしたユーザとが同一か判定する同一性判定手段を更に有し、
前記同一性判定手段が、前記ユーザと、前記印刷ジョブを留め置きしたユーザとが同一と判定した場合、前記優先度変更手段は、該印刷ジョブに対する前記優先度を変更することを特徴とする請求項１乃至７の何れか１項に記載の画像形成装置。
【請求項９】
前記操作は、ログイン操作、指定の印刷ジョブに対する印刷指示、又はログアウト操作であることを特徴とする請求項８に記載の画像形成装置。
【請求項１０】
前記操作がログイン操作の場合であって、かつ前記同一性判定手段が、前記操作を行ったユーザと、前記印刷ジョブを留め置きしたユーザとが同一と判定した場合、前記優先度変更手段は、該印刷ジョブに対する前記優先度を上げることを特徴とする請求項９に記載の画像形成装置。
【請求項１１】
前記操作が指定の印刷ジョブに対する印刷指示の場合であって、かつ前記同一性判定手段が、前記操作を行ったユーザと、前記印刷ジョブを留め置きしたユーザとが同一と判定した場合、前記優先度変更手段は、該印刷ジョブに対する前記優先度を上げる、又は、下げることを特徴とする請求項９に記載の画像形成装置。
【請求項１２】
前記操作がログアウト操作の場合であって、かつ前記同一性判定手段が、前記操作を行ったユーザと、前記印刷ジョブを留め置きしたユーザとが同一と判定した場合、前記優先度変更手段は、該印刷ジョブに対する前記優先度を下げることを特徴とする請求項９に記載の画像形成装置。
【請求項１３】
前記順序変更手段が前記順序を変更する場合に、実行中の前記時間予測を一旦キャンセルするか判定する判定手段を更に有することを特徴とする請求項１乃至１２の何れか１項に記載の画像形成装置。
【請求項１４】
印刷ジョブの予測時間を導出する導出手段と、
前記導出した予測時間をユーザに提示する提示手段と
を有する、複数の印刷ジョブの夫々に対する前記予測時間を前記印刷ジョブが留め置きされた順に導出し、前記ユーザに順次提示する画像形成装置の制御方法であって、
前記ユーザによる操作に応じて、前記複数の印刷ジョブの夫々に対して設定されている時間予測の優先度を変更するステップと、
前記変更された優先度に基づき、前記印刷ジョブの時間予測の順序を変更するステップと
を有することを特徴とする制御方法。
【請求項１５】
コンピュータに、請求項１４に記載の方法を実行させるための、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、その制御方法、及びプログラムに関し、特に、複数の印刷ジョブの夫々に対し、印刷処理に要する時間を予測する際、予測する印刷ジョブの順序を変更する技術に関する。
【背景技術】
【０００２】
従来、企業のオフィスのように複数ユーザがプリンターを共用する印刷環境において、プルプリントが行なわれている。ここでいうプリンターには、ＭＦＰ（ＭｕｌｔｉＦｕｎｃｔｉｏｎＰｅｒｉｐｈｅｒａｌ）のようにネットワークプリンターとして使用可能な情報機器が含まれる。プルプリントでは、サーバが使用され、印刷ジョブの作成とは非同期のタイミングで印刷ジョブの実行（即ち、印刷処理）が行われる。
【０００３】
例えば、複数のプリンターを備えるプルプリントシステムにおいて、ユーザがパーソナルコンピュータ（以下、ＰＣとする）からドキュメントの印刷を指示すると、ＰＣで作成された印刷ジョブがサーバへ送信される。送信された印刷ジョブは、サーバにおいて一旦保存される（留め置きという）。その後、ユーザが複数のプリンターから任意に選んだ一つのプリンターの設置場所へ出向き、プリンターの操作パネルを用いて印刷ジョブの実行を指示する。ユーザの指示を受けたプリンターは、印刷ジョブを留め置き中のサーバから、指定された印刷ジョブを引き出して実行する。
【０００４】
プルプリントのように印刷ジョブをサーバに留め置きする場合、留め置かれている印刷ジョブを解析し、印刷に要する時間の予測値（以下、予測時間とする）を求め、この予測時間をプリンターの操作パネルに表示することでユーザに提示する技術がある。例えば、大量の印刷ジョブ、多数のページを含む印刷ジョブ、印刷に多大な時間を要する印刷ジョブ等を投入したユーザは、予測時間を確認することで、印刷されるまでの間の時間を有効活用したり、心理的負担を軽減したりすることが可能となる。
【０００５】
しかし、このような時間予測は印刷ジョブがサーバに留め置かれた順に実行され、また、予測待ちの印刷ジョブや予測中の印刷ジョブに対し、印刷ジョブの実行指示があっても予測は継続して行われる。そのため、例えば、別ユーザの印刷ジョブが先に大量に留め置かれていた場合等には、別ユーザの印刷ジョブの時間予測に時間が割かれてしまい、自分の印刷ジョブの予測時間を確認できない場合がある。自分の印刷ジョブの予測時間を確認できない場合、ユーザは、予測時間を確認できないまま印刷ジョブを実行することを強いられる。或いは、どうしても予測時間を確認したい場合は、先に時間予測が行われている別ユーザの印刷ジョブと、自分の印刷ジョブとの夫々に対する時間予測が完了するのを待って印刷することを強いられる。そのため、複数ユーザから印刷ジョブが投入されるような環境下でも、各ユーザに対して、印刷ジョブの予測時間を早く表示させるような技術が求められている。
【０００６】
例えば、特許文献１には、１つの印刷ジョブに対して行う時間予測にかける時間に閾値を設け、閾値を超える場合、該当する印刷ジョブに対する時間予測を中止し、次の印刷ジョブに対する時間予測を開始する技術が記載されている。この技術によれば、解析に時間のかかる印刷ジョブの時間予測にリソースが占有されてしまうのを防ぐことができるので、後から受け付けた印刷ジョブの時間予測を開始できない問題を解決することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１６−１３７６６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら特許文献１では、印刷ジョブに対する時間予測が、印刷ジョブが留め置かれた順に開始されるのは変わらないため、印刷ジョブを後に留め置いたユーザは自ずと時間予測の結果を受け取るタイミングは遅くなる。また、印刷ジョブを後に留め置いたユーザが先にプリンターの設置場所に印刷目的で来た場合など、プリンターを共用する印刷環境では、ユーザは印刷ジョブを留め置いた順に印刷に来るとは限らない。そのため、単純に留め置かれた順に時間予測を実行すると、これから印刷する可能性が高いユーザや、未だ印刷実行を指示していないユーザに対して、時間予測の結果を提示するタイミングが遅くなる課題がある。このような理由により、留め置かれた順に印刷ジョブの時間予測を実行するのは必ずしも適切ではない。
【０００９】
そこで本発明は、これから印刷する可能性が高いユーザや、未だ印刷実行を指示していないユーザ等、時間予測の結果を欲する蓋然性が高いユーザに、該結果を早いタイミングで提示することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、印刷ジョブの予測時間を導出する導出手段と、前記導出した予測時間をユーザに提示する提示手段とを有する、複数の印刷ジョブの夫々に対する前記予測時間を前記印刷ジョブが留め置きされた順に導出し、前記ユーザに順次提示する画像形成装置であって、前記ユーザによる操作に応じて、前記複数の印刷ジョブの夫々に対して設定されている時間予測の優先度を変更する優先度変更手段と、前記変更された優先度に基づき、前記印刷ジョブの時間予測の順序を変更する順序変更手段とを有することを特徴とする画像形成装置である。
【発明の効果】
【００１１】
本発明によれば、これから印刷する可能性が高いユーザや、未だ印刷実行を指示していないユーザ等、時間予測の結果を欲する蓋然性が高いユーザに、該結果を早いタイミングで提示できる。
【図面の簡単な説明】
【００１２】
【図１】実施形態１における、印刷システムのブロック図
【図２】実施形態１における、複数ユーザの印刷ジョブの夫々に要する時間を予測する際に、印刷ジョブの予測順序を変更するケースを示すシーケンス図
【図３】実施形態１における、印刷ジョブ留め置き処理のフローチャート
【図４】実施形態１における、印刷ジョブの書誌情報を保持するリストを示す図
【図５】実施形態１における、予測待ちジョブリストを示す図
【図６】実施形態１における、時間予測処理のフローチャート
【図７】実施形態１における、印刷ジョブの時間予測を実行する際の処理順序を示す図
【図８】実施形態１における、ユーザ認証時の予測順序変更処理のフローチャート
【図９】実施形態１における、優先度設定値を示す図
【図１０】実施形態１における、優先度決定用テーブルを示す図
【図１１】実施形態１における、ユーザ認証（ログイン）時の予測順序変更を示す図
【図１２】実施形態１における、印刷指示受信時の予測順序変更処理のフローチャート
【図１３】実施形態１における、印刷指示受信時の予測順序変更を示す図
【図１４】実施形態１における、ログアウト時の予測順序変更処理のフローチャート
【図１５】実施形態１における、ログアウト時の予測順序変更を示す図
【図１６】実施形態１における、ログイン画面
【図１７】実施形態１における、印刷指示やログアウト操作を行うためのＵＩ
【図１８】実施形態１における、印刷ジョブの時間予測結果が反映されたＵＩ
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１４】
［実施形態１］
＜印刷システムの構成＞
図１は、本実施形態における画像形成装置を有する印刷システムの構成例を示すブロック図である。図１に示す画像形成装置１０１〜１０３は、ＭＦＰ、ＳＦＰ（ＳｉｎｇｌｅＦｕｎｃｔｉｏｎＰｒｉｎｔｅｒ）、ＬＢＰ（ＬａｓｅｒＢｅａｍＰｒｉｎｔｅｒ）のうちの何れのプリンターであっても良いし、これら以外のプリント方式のプリンターであっても良い。また、図１では、印刷システムが３つの画像形成装置を備える構成を示すが、印刷システムが備える画像形成装置の数は１以上であれば良い。
【００１５】
画像形成装置１０１〜１０３は、イーサネット（登録商標）等のＬＡＮ（ＬｏｃａｌＡｒｅａＮｅｔｗｏｒｋ）１０５を介し、各種指示を行うＰＣ１０４及びＰＣ１０６と接続される。画像形成装置１０１〜１０３は、ＰＣ１０４又はＰＣ１０６から送信される印刷ジョブに基づく印刷処理を実行する。また、図１に示すような複数の画像形成装置がＬＡＮ１０５を介して接続される場合、画像形成装置は他の画像形成装置から印刷ジョブを受け取り、該受け取った印刷ジョブに基づく印刷処理を実行することが可能である。
【００１６】
画像形成装置１０１は、コントローラ１１０、プリント機構１１１、カードリーダ１１２、及び操作パネル１１３を備える。画像形成装置１０２及び画像形成装置１０３は、画像形成装置１０１と同様の構成を有する。
【００１７】
コントローラ１１０は、ＲＯＭ１２６やＨＤＤ１２４に記憶されたプログラムに従って、画像形成装置１０１全体を制御する。ネットワークＩ／Ｆ１２０は、例えばＬＡＮカード等で実現され、ＬＡＮ１０５に接続して外部装置との間で情報の入出力を行う。リーダＩ／Ｆ１２１は、外部からの認証情報を受け取るカードリーダ１１２に対するインタフェース部であり、外部から入力された認証情報を受け取りＣＰＵ１２３に伝える役割を担う。パネルＩ／Ｆ１２２は、各種メニューや印刷ジョブに関する情報等を表示可能な画面を有する操作パネル１１３に対するインタフェース部である。パネルＩ／Ｆ１２２は、操作パネル１１３に対してユーザインターフェース（ＵＩと略記する）を描画するデータ（操作画面データとする）を出力する。また、パネルＩ／Ｆ１２２は、操作パネル１１３を介してユーザが入力した情報をＣＰＵ１２３に伝える役割も担う。
【００１８】
ＣＰＵ１２３は、画像形成装置１０１全体を制御するための中央処理装置である。ＨＤＤ１２４は、ハードディスクドライブ等の記憶装置であり、各種処理のためのオペレーティングシステムやソフトウェアプログラム、及び、入力された印刷ジョブや画像データ等が格納される。ＲＡＭ１２５は、ＣＰＵ１２３が動作するためのワークメモリであり、入力された印刷ジョブや画像データが一時的に格納される。ＲＯＭ１２６は、ブートＲＯＭであり、システムのブートプログラムが格納されている。デバイスＩ／Ｆ１２７は、プリント機構１１１とコントローラ１１０とを接続し、画像データの同期系／非同期系の変換を行う。ＲＩＰ（ＲａｓｔｅｒＩｍａｇｅＰｒｏｃｅｓｓｏｒ）１２８は、印刷ジョブに含まれる描画コマンド（ＰＤＬコマンド）や中間データ（ディスプレイリスト）を解析して、ビットマップ形式の画像データを作成する。画像処理回路１２９は、ＲＩＰ１２８によって作成された画像データに対し、プリント機構１１１に応じた補正、解像度変換等の画像処理を行う。
【００１９】
プリント機構１１１は、コントローラ１１０の指示に従って、印刷を実行する。カードリーダ１１２は、ユーザが持つＩＤカード等の情報を読み取る機能を有し、ＩＤカードから読み取ったユーザ情報をコントローラ１１０へ通知する。操作パネル１１３は、コントローラ１１０から受け取る操作画面データを用いて、ホーム画面等の画面を表示する。また、操作パネル１１３は、ユーザの操作を受け付け可能であり、受け付けた内容をコントローラ１１０へ通知する。
【００２０】
図１の下部に示す符号１３１〜１３８は、画像形成装置１０１の動作を制御するコントローラ１１０が有するソフトウェアコンポーネントを示す。これらのコンポーネントは、ＨＤＤ１２４等のハードウェアやＲＯＭ１２６に記憶されたプログラムがＲＡＭ１２５に展開され、該展開されたプログラムをＣＰＵ１２３が実行することによって実現される。
【００２１】
認証部１３１は、リーダＩ／Ｆ１２１よりシステムバス１３０経由で受け取ったユーザ情報に基づいてユーザ認証を行い、該ユーザ認証の結果を留め置き制御部１３７等の他コンポーネントに通知する。設定部１３２は、パネルＩ／Ｆ１２２を用いて操作パネル１１３への入出力の制御を行う。管理部１３３は、留め置き制御部１３７が受信した印刷ジョブや印刷ジョブに関する書誌的な情報（書誌情報とする）を管理する。印刷制御部１３４は、ネットワークＩ／Ｆ１２０等を介して入力された印刷指示や印刷ジョブの情報を取得し、留め置き制御部１３７や印刷実行部１３８に対して印刷ジョブに対する処理を指示する。ジョブ解析部１３５は、留め置き制御部１３７が受信した印刷ジョブを解析する。時間予測部１３６は、留め置き制御部１３７が受信した印刷ジョブに対するジョブ解析部１３５による解析結果に応じて、印刷ジョブの印刷に要する時間の予測値を導出する。留め置き制御部１３７は、留め置きされている印刷ジョブに対する解析、管理、及び時間予測を制御するとともに、留め置きされている印刷ジョブに基づく印刷処理の実行を、印刷実行部１３８へ指示する。印刷実行部１３８は、印刷ジョブに基づく印刷処理を実行する。具体的には、印刷実行部１３８は、ＲＩＰ１２８や画像処理回路１２９を用いて記録用データを作成し、記録用データをデバイスＩ／Ｆ１２７を通じてプリント機構１１１に送信して、プリント機構１１１に、記録用データに基づく記録処理を実行させる。
【００２２】
＜印刷ジョブに対する時間予測処理について＞
図２は、実施形態１に係る画像形成装置１０１を有する印刷システムにおける、印刷ジョブの実行時間の予測値を導出する処理（時間予測処理とする）の一例を示すシーケンス図である。
【００２３】
ユーザＢはＰＣ１０６にログインし（Ｓ２０１）、任意のアプリケーション上で任意のデータの印刷を要求する（Ｓ２０２）。この要求を受け付けたＰＣ１０６はまず、ユーザＢに関するユーザ情報（例えば、ユーザＩＤ等）を取得する（Ｓ２０３）。次いで、ＰＣ１０６は、印刷ジョブを作成し（Ｓ２０４）、ステップＳ２０３で取得したユーザ情報を、該作成した印刷ジョブに付与する。次いで、ＰＣ１０６は、ユーザ情報を付与した印刷ジョブを、画像形成装置１０１に送信する（Ｓ２０５）。
【００２４】
画像形成装置１０１は、ユーザＢの印刷ジョブを受信すると、該受信した印刷ジョブをＨＤＤ１２４に保存する（Ｓ２０６）。次いで、画像形成装置１０１は、保存した印刷ジョブに含まれるユーザ情報に基づき、ユーザＢの印刷ジョブの書誌情報を作成し（Ｓ２０７）、該作成した書誌情報をＨＤＤ１２４又はＲＯＭ１２６に保存する（Ｓ２０８）。
【００２５】
画像形成装置１０１は、書誌情報を保存すると、予測待ちジョブリストにユーザＢの印刷ジョブを追加（新規登録）し（Ｓ２０９）、予測待ちジョブリストに追加した順に（本例ではユーザＢの印刷ジョブから）、印刷ジョブの時間予測処理を実行する（Ｓ２１０）。
【００２６】
ユーザＢがＰＣ１０６にログインした後、ユーザＡがＰＣ１０４にログインし（Ｓ２１１）、任意のアプリケーション上で任意のデータの印刷を要求する（Ｓ２１２）。この要求を受け付けたＰＣ１０４はまず、ユーザＡのユーザ情報を取得する（Ｓ２１３）。次いで、ＰＣ１０４は、印刷ジョブを作成し（Ｓ２１４）、ステップＳ２１３で取得したユーザ情報を、該作成した印刷ジョブに付与する。次いで、ＰＣ１０４は、ユーザ情報を付与した印刷ジョブを、画像形成装置１０１に送信する（Ｓ２１５）。
【００２７】
画像形成装置１０１は、ユーザＡの印刷ジョブを受信すると、該受信した印刷ジョブをＨＤＤ１２４に保存する（Ｓ２１６）。次いで、画像形成装置１０１は、保存した印刷ジョブに含まれるユーザ情報に基づきユーザＡの印刷ジョブの書誌情報を作成し（Ｓ２１７）、該作成した書誌情報をＨＤＤ１２４又はＲＯＭ１２６に保存する（Ｓ２１８）。
【００２８】
画像形成装置１０１は、書誌情報を保存すると予測待ちジョブリストにユーザＡの印刷ジョブを追加（新規登録）する（Ｓ２１９）。画像形成装置１０１は、予測待ちジョブリストに先に追加されたユーザＢの印刷ジョブに対する時間予測が完了するまで待機し、ユーザＡの印刷ジョブに対する時間予測を開始しない（Ｓ２２０）。
【００２９】
ここで、先に印刷ジョブを送信したユーザＢより先に、ユーザＡが印刷する目的で画像形成装置１０１の設置場所に来たとする。この時点では、ユーザＢの印刷ジョブに対する時間予測が実行中であるので、ユーザＡの印刷ジョブに対する時間予測は未だ始まっていない。ユーザＡが画像形成装置１０１で図１６に示すログイン画面を介してユーザ名とパスワードを入力し、画像形成装置１０１にログインすると、画像形成装置１０１はまず、ログイン通知を受信する（Ｓ２２１）。次いで、画像形成装置１０１は、ログインしたユーザＡのユーザ情報を取得し、ＲＡＭ１２５に保存する（Ｓ２２２）。次いで、画像形成装置１０１は、ユーザＡによるログイン操作をトリガーとする、ログインしたユーザＡの印刷ジョブに対する時間予測を開始する。その際、時間予測中だったユーザＢの印刷ジョブについては、時間予測を一旦キャンセルし、予測待ちジョブリストに再度追加することで、時間予測を後回しにする（Ｓ２２３）。このように、ユーザＢの印刷ジョブに対する時間予測より、ユーザＡの印刷ジョブに対する時間予測を優先して実行する。
【００３０】
また、画像形成装置１０１は、ユーザ情報に基づき、印刷ジョブの書誌情報を保持するリスト（印刷ジョブリストとする）を用いて、ログインしたユーザの印刷ジョブ一覧を操作パネル１１３に表示する（Ｓ２２４）。図４は、本ステップで用いる印刷ジョブリストの一例である。また、図１７は、本ステップで表示するＵＩの一例であり、ユーザＡの印刷ジョブがユーザＢの印刷ジョブより優先された結果、ユーザＡの印刷ジョブに対する時間予測が開始されたことを示す図である。
【００３１】
しかし、ユーザＡは、時間予測の完了を待たずして、印刷ジョブの実行指示を出したとする。ここでは、ユーザＡが図１７に示す「ｆｉｌｅＡ２．ｘｌｓｘ」を選択し印刷開始ボタンを押下した場合を例として説明する。この場合、画像形成装置１０１は印刷指示を受信して（Ｓ２２５）、印刷を開始する（Ｓ２２６）。また、画像形成装置１０１は、印刷指示を受けた印刷ジョブ（本例では文書名「ｆｉｌｅＡ２．ｘｌｓｘ」）に対する時間予測の優先度を下げる。次いで、画像形成装置１０１は、優先度を下げた印刷ジョブについては、時間予測を一旦キャンセルし、予測待ちジョブリストに再度追加することで、時間予測を後回しにする（Ｓ２２７）。このようにする理由は、時間予測の完了を待たずして印刷指示を行った印刷ジョブについては、ユーザは時間予測の結果に関心がないと推察できるためである。尚、本例では、時間予測の完了を待たずして印刷指示を行った印刷ジョブについては優先度を下げているが、このような印刷ジョブについて、逆に優先度を高くして、時間を予測しても良い。
【００３２】
さらに、ユーザＡは、自分の印刷ジョブに対する時間予測中にもかかわらず、ログアウト操作を行ったとする。ログアウトは、例えば、図１７に示すＵＩのログアウトボタンをユーザが押下することで、または、タイムアウトにより行われる。この場合、画像形成装置１０１は、ログアウト通知を受けると（Ｓ２２８）、ログアウト処理を実行する。また、画像形成装置１０１は、ログアウト処理後、ログアウトしたユーザ（ここでは、ユーザＡ）の印刷ジョブに対する時間予測の優先度を下げる。このようにする理由は、ログアウトしたユーザがすぐに印刷に来る可能性が低いと推察できるためである。そのため、優先度を下げたユーザＡの印刷ジョブについては、時間予測を一旦キャンセルし、予測待ちジョブリストに再度追加することで、時間予測を後回しにする。これにより、画像形成装置１０１は、未だ印刷を行っていない、これから印刷に来る可能性の高いユーザＢの印刷ジョブに対する時間予測を優先して開始する（Ｓ２２９）。その後、ユーザＢの印刷ジョブに対する時間予測が完了すると、導出した予測値を書誌情報に反映する（印刷ジョブリスト４００を更新する）（Ｓ２３０）。
【００３３】
その後、ユーザＢが印刷する目的で画像形成装置１０１の設置場所に来たとする。ユーザＢが画像形成装置１０１で図１６に示すログイン画面を介してユーザ名とパスワードを入力し、画像形成装置１０１にログインすると、画像形成装置１０１はまず、ログイン通知を受信する（Ｓ２３１）。次いで、画像形成装置は、ユーザ情報を取得し、ＲＡＭ１２５に記憶する（Ｓ２３２）。画像形成装置１０１は、ユーザ情報に基づき、書誌情報を保持する印刷ジョブリストを用いて、ログインしたユーザの印刷ジョブ一覧を操作パネル１１３に表示する（Ｓ２３３）。このとき、ユーザＢの印刷ジョブに対する時間予測が完了しているので、印刷ジョブ一覧には該時間予測の結果が反映されている。図１８は、印刷ジョブの時間予測が完了したユーザＢの印刷ジョブ一覧を表示するＵＩを示し、導出された予測時間が順次提示された後の最終的な状態を示している。
【００３４】
＜印刷ジョブ留め置き処理について＞
図３は、コントローラ１１０が有するソフトフェアコンポーネント（具体的には、管理部１３３〜印刷実行部１３８）が実行する、印刷ジョブ留め置き処理のフローチャートである。
【００３５】
ステップＳ３０１において、印刷制御部１３４は、ネットワークＩ／Ｆ１２０を通じてＰＣ１０４等から送信された印刷ジョブを受信する。
【００３６】
ステップＳ３０２において、留め置き制御部１３７は、ステップＳ３０１で受信した印刷ジョブを留め置くか判定する。ステップＳ３０２の判定結果が真の場合、ステップＳ３０５に進む一方、該判定結果が偽の場合、ステップＳ３０３に進む。
【００３７】
まず、ステップＳ３０２の判定結果が偽の場合について説明する。この場合、ステップＳ３０３において、印刷制御部１３４は、受信した印刷ジョブの印刷処理を開始し、印刷ジョブに基づきビットマップ形式の画像データ（レンダリング画像とする）を作成するレンダリング処理を実行する。
【００３８】
ステップ３０４において、印刷実行部１３８は、ステップＳ３０３で作成したレンダリング画像に対し画像処理を施し、該画像処理によって作成されるデータ（記録用データとする）に基づく記録処理を実行する。
【００３９】
続いて、ステップＳ３０２の判定結果が真の場合について説明する。この場合、ステップＳ３０５において、留め置き制御部１３７は、ステップＳ３０１で受信した印刷ジョブに含まれるユーザ情報を取得する。通常、ユーザ情報は「ユーザ名：Ａ」等と記述されるが、ユーザ情報は印刷ジョブのヘッダー情報内に含まれていても良いし、送信元のホストコンピュータからユーザ情報を別途送る構成であっても構わない。つまり、ユーザ情報とは、ユーザ名やユーザＩＤ等の印刷ジョブを入力したユーザを識別できる情報であれば、任意のものを任意の形態で用いて良い。
【００４０】
ステップＳ３０６において、ジョブ解析部１３５は、ステップＳ３０１で受信した印刷ジョブに含まれる印刷設定情報と文書名とを取得する。この印刷設定情報には、例えば片面印刷か両面印刷かを示す情報、カラーで印刷するかモノクロで印刷するかを示す情報、出力する用紙サイズに関する情報等が含まれる。
【００４１】
ステップＳ３０７において、留め置き制御部１３７は、ステップＳ３０５で取得したユーザ情報と、ステップＳ３０６で取得した印刷設定情報及び文書名とを関連付けて、ステップＳ３０１で受信した印刷ジョブに対応する書誌情報を作成する。
【００４２】
ステップＳ３０８において、管理部１３３は、ステップＳ３０７で作成した書誌情報を、印刷ジョブリスト４００に追加登録する。
【００４３】
ステップＳ３０９において、管理部１３３は、書誌情報を印刷ジョブリストに追加したタイミングで、予測待ちジョブリストに対象の印刷ジョブの情報を追加し、一連の処理は終了する。時間予測部１３６は、予測待ちジョブリストに印刷ジョブがあれば、その印刷ジョブの時間予測を開始し、また、予測待ちジョブリストに複数の印刷ジョブが登録されていれば、登録順に時間予測を行う。以上が、本実施形態における印刷ジョブ留め置き処理の内容である。
【００４４】
＜印刷ジョブの書誌情報を保持するリストについて＞
図４は、印刷ジョブの書誌情報を保持するリスト（印刷ジョブリスト）の一例を示す図である。図示するように、印刷ジョブリスト４００では、受信順と、書誌ＩＤと、ＰＤＬ保存場所と、ジョブ名と、ユーザ名と、予測時間と、予測キャンセルと、印刷状況との各項目の値を保持する。また、ここでは図示しないが、印刷ジョブリスト４００が、印刷設定や印刷ジョブの入稿時間等の他の項目の値を保持しても良い。
【００４５】
書誌ＩＤは、印刷ジョブを識別するために用いられる。印刷ジョブ（ＰＤＬ）保存場所は、時間予測や印刷等の処理で必要となる印刷ジョブ実体の置き場を示す。ジョブ名は、投入された印刷ジョブのファイル名を示す。ユーザ名は、印刷ジョブを投入したユーザを識別するために用いられる。予測時間は、時間予測が完了していない場合、「時間予測中」又は「時間予測待ち」等のステータスを示す値をとる一方、時間予測が完了している場合、印刷ジョブの実行時間の予測値が保持されて操作パネル１１３への表示等に利用される。予測キャンセルは、時間予測をキャンセルするか否かを示すフラグであり、予測キャンセルを通知する際に用いられる。尚、予測キャンセルを通知する方法として、本例では書誌情報に含まれるフラグを渡す方法を採用するが、メッセージ通信等を採用しても良い。印刷状況は、印刷のステータスを示し、「未印刷」、「未印刷指示」、「印刷指示」、「印刷中」、「印刷済み」等の値を取り得る。
【００４６】
＜予測待ちジョブリストについて＞
図５は、時間予測の開始を待つ１又は複数の印刷ジョブを示す、予測待ちジョブリストの一例を示す図である。本例では、予測待ちジョブリスト５００は、書誌情報として、書誌ＩＤ値のみを保持しているが、時間予測の開始に用いることができる情報であれば、他の情報を代わりに用いても構わない。
【００４７】
予測待ちジョブリストには基本的に、書誌情報を印刷ジョブリスト４００に登録した順に書誌ＩＤが追加されていく。また、時間予測を終えた印刷ジョブや時間予測をキャンセルした印刷ジョブの情報は、予測待ちジョブリスト５００から削除される。印刷ジョブリスト４００を例に挙げると、書誌ＩＤ値が１０００１〜１０００３の印刷ジョブについては、予測時間の値が保持されていることから、時間予測を終えていることが分かる。一方、書誌ＩＤ値が１０００４〜１００１２の印刷ジョブについては、予測時間の値が「時間予測中」又は「時間予測待ち」となっていることから、時間予測を終えていないことが分かる。そのため、予測待ちジョブリスト５００には、時間予測を終えていない印刷ジョブに対応する書誌ＩＤ値１０００４〜１００１２が登録されている。
【００４８】
＜時間予測処理について＞
図６は、時間予測部１３６が実行する時間予測処理のフローチャートである。
【００４９】
ステップＳ６００において、予測待ちジョブリスト５００にある全ての印刷ジョブに対してステップＳ６０１〜ステップＳ６１１の処理が完了するまで、該処理を繰り返す。
【００５０】
ステップＳ６０１において、予測待ちジョブリスト５００より、処理対象の印刷ジョブに対応する書誌ＩＤ値を取得する。本ステップでは、予測待ちジョブリスト５００の上から順に書誌ＩＤ値を取得する。従って、図５の場合、１回目のステップＳ６０１の処理では、予測待ちジョブリスト５００の先頭にある書誌ＩＤ値１０００４が取得される。便宜上、本ステップで取得する書誌ＩＤ値に対応する印刷ジョブを「注目ジョブ」と呼ぶ。
【００５１】
ステップＳ６０２において、印刷ジョブリスト４００を参照し、直近のステップＳ６０１で取得した書誌ＩＤ値を用いて、注目ジョブの書誌情報を取得する。
【００５２】
ステップＳ６０３において、注目ジョブに対する時間予測のキャンセル指示があるか判定する。具体的には、印刷ジョブリスト４００を参照し、注目ジョブの書誌ＩＤ値を用いて、注目ジョブに対する予測キャンセル値を取得する。そして、予測キャンセル値がＴＲＵＥであれば、キャンセル指示があると判定する一方、予測キャンセル値がＦＡＬＳＥであれば、キャンセル指示が無いと判定する。本ステップの判定結果が偽の場合、Ｓ６０４に進む。尚、本ステップの判定結果が真の場合、注目ジョブに対する時間の予測値は、導出されない。
【００５３】
ステップＳ６０４において、印刷ジョブリスト４００で保持されている、注目ジョブに対する予測時間の値を、「時間予測待ち」から「時間予測中」に更新する。本ステップ後、注目ジョブに対する予測時間の導出を開始する。
【００５４】
ステップＳ６０５において、印刷ジョブリスト４００に保持されている書誌情報のうちＰＤＬ保存場所の値を用いて、印刷ジョブの実体（具体的には、ＰＤＬデータ）を取得し、該取得したＰＤＬデータを解析する。本ステップにおける解析処理は、注目ジョブの先頭ページから最終ページまで、ページ毎に繰り返し実行される。
【００５５】
ステップＳ６０６において、ＰＤＬデータに基づきページ単位で、プロファイルデータを生成する。本ステップにおけるプロファイルデータの生成処理は、オブジェクト単位で行い、１ページ分の処理が完了するまでオブジェクト単位の処理を繰り返す。
【００５６】
ステップＳ６０７において、注目ジョブに対する時間予測のキャンセル指示があるか判定する。具体的には、ステップＳ６０３と同様に、印刷ジョブリスト４００を参照し、注目ジョブの書誌ＩＤ値を用いて、注目ジョブに対する予測キャンセル値を取得する。そして、予測キャンセル値がＴＲＵＥであれば、キャンセル指示があると判定する。本ステップの判定結果が真（予測キャンセル値がＴＲＵＥ）の場合、ステップＳ６１１へ進む。一方、本ステップの判定結果が偽（予測キャンセル値がＦＡＬＳＥ）の場合、キャンセル指示を受信していないので、対象のオブジェクトに対し、エッジ／レベル／フィルといった、ビットマップ画像を作成するのに必要な要素をカウントする。１ページ分処理を終えると、カウントした値、印刷設定等をまとめて、対象ページのプロファイルデータを生成する。このような１ページ分のプロファイルデータを生成する処理を、全ページのプロファイルデータ生成が完了するまで繰り返し実行する。全ページのプロファイルデータ生成処理が完了すると、ステップＳ６０８へ進む。
【００５７】
ステップＳ６０８において、画像形成装置１０１依存の情報（デバイス依存情報とする）を取得する。このデバイス依存情報には例えば、ＦＰＯＴ（ＦｉｒｓｔＰｒｉｎｔＯｕｔＴｉｍｅ）、ＰＰＭ（ＰａｇｅＰｅｒＭｉｎｕｔｅｓ）、カラーモノクロエンジン切替え時間等が含まれる。
【００５８】
ステップＳ６０９において、画像形成装置１０１の印刷時の動的な情報（動的情報）を取得する。この動的情報には例えば、キャリブレーション開始までの残り枚数等が含まれる。キャリブレーション機能とは、色を安定して再現するための色調整機能であり、所定枚数の記録媒体を印刷した後、キャリブレーションは自動的に開始される。
【００５９】
ステップＳ６１０において、生成したプロファイルデータと、デバイス依存情報と、動的情報とに基づき、注目ジョブの印刷に要する時間の予測値を導出する。本ステップで予測値が導出されると、印刷ジョブリスト４００における注目ジョブの予測時間の値が、該導出された予測値に更新される。尚、本ステップの予測結果は、操作パネル１１３に表示されるＵＩ上で反映される（例えば、図１８）。
【００６０】
ステップＳ６０７でＹＥＳの場合、ステップＳ６１１において、生成途中のプロファイルデータを破棄する。以上が、本実施形態における時間予測処理の内容である。
【００６１】
＜留め置き時の時間予測の処理順序について＞
図７は、印刷ジョブが留め置きされており、かつ、留め置きした全てのユーザが画像形成装置１０１にログインする前に印刷ジョブの時間予測が行われた場合の、時間予測の処理順序について説明するための図である。
【００６２】
本実施形態では、時間予測を行う印刷ジョブの処理順序を優先度に応じて並べ替えるために、図７に示すような時間予測優先度別リストを用意する。図示するように、時間予測優先度別リストは、優先度毎のリストで構成される。
【００６３】
予測待ちジョブリスト５００に印刷ジョブを新たに追加する際、留め置き時の時間予測優先度別リスト７００のうち優先度が高いリストに登録されている印刷ジョブから優先度が低いリストに登録されている印刷ジョブの順に追加する規則を適用する。また、同一の優先度のリストに登録されている印刷ジョブについては、該リストに登録された順に、予測待ちジョブリスト５００に追加する規則を適用する。尚、優先度の変更は、ログイン時、ユーザからの印刷指示受信時、又はログアウト時等に発生する。留め置き時の優先度は一律でｍｅｄｉｕｍの優先度になり、留め置き時、時間予測優先度別リストのうち優先度がｍｅｄｉｕｍのリストに、印刷ジョブが順次登録される。
【００６４】
留め置き時の時間予測優先度別リスト７００は、留め置き時、かつ、留め置きを行った全てのユーザがログインする前の状況を示しているので、優先度がｍｅｄｉｕｍのリストにのみ印刷ジョブが登録されている。従って、予測待ちジョブリスト５００には、印刷ジョブを留め置いた順、つまり、優先度がｍｅｄｉｕｍのリストに登録された順に、印刷ジョブが追加されることになる。
【００６５】
留め置き時の予測待ちジョブリスト７０１は、本ケースで予測待ちジョブリスト５００に登録される印刷ジョブと、その処理順とを簡易的に表している。尚、実際には予測待ちジョブリスト５００にジョブ名の値は登録されないが、どのユーザの印刷ジョブかを分かりやすくするために記載している。
【００６６】
＜ユーザ認証時の予測順序変更処理について＞
図８は、認証部１３１、設定部１３２、管理部１３３、及び留め置き制御部１３７が実行する、時間予測を行う印刷ジョブの処理順序を、ユーザ認証時に変更する処理のフローチャートである。尚、以下では、処理を開始する前の予測待ちジョブリストが、予測待ちジョブリスト７０１に示す状態にあるものと仮定して説明する。
【００６７】
ユーザが持つＩＤカードがカードリーダ１１２にかざされた場合、ステップＳ８０１において認証部１３１は、カードリーダ１１２がＩＤカードから読み取ったユーザ情報をリーダＩ／Ｆ１２１を通じて受け取り、該受け取ったユーザ情報に基づくユーザ認証を行う。そして、ユーザ認証に成功した場合、留め置き制御部１３７は、ニーザ認証通知を受信する。尚、ここでは、ユーザのＩＤカードから読み取ったユーザ情報を用いてユーザ認証を行う形態を示すが、設定部１３２が操作パネル１１３を介して受信したＩＤとパスワードとに基づき、認証部１３１がユーザ認証を行う方式等の、他の方式を採用しても構わない。以下、ユーザＡが画像形成装置１０１にログインしたケースについて説明する。
【００６８】
ステップＳ８０２において、留め置き制御部１３７は、認証したユーザを識別するためのユーザ情報（本例ではユーザ名「Ａ」）を取得し、ＲＡＭ１２５に記憶する。
【００６９】
ステップＳ８０３において、留め置き制御部１３７は、予測待ちジョブリスト７０１を取得する。
【００７０】
ステップＳ８０４において、留め置き制御部１３７は、予測待ちジョブリスト７０１にある印刷ジョブの数だけ予測待ちの順にステップＳ８０５からステップＳ８０９の処理を繰り返す。尚、ステップＳ８０５からステップＳ８０９では、印刷ジョブ毎に処理を行うが、便宜上、処理対象の印刷ジョブを「対象ジョブ」と呼ぶ。
【００７１】
ステップＳ８０５において、留め置き制御部１３７は、印刷ジョブリスト４００を参照し、予測待ちジョブリスト７０１で保持される対象ジョブの書誌ＩＤ値を用いて、対象ジョブの書誌情報を取得する。本ステップで取得する書誌情報には、対象ジョブに対応するユーザ名の値が含まれる。
【００７２】
ステップＳ８０６において、留め置き制御部１３７は、認証したユーザと対象ジョブのユーザとが同一か判定する。具体的には、ステップＳ８０２で取得したユーザ名の値とステップＳ８０５で取得したユーザ名の値とが同一の場合に、同一と判定する。本ステップの判定結果が真の場合、ステップＳ８０７に進む。一方、本ステップの判定結果が偽の場合、対象ジョブに対する処理は終了し、次の印刷ジョブに対する処理が実行されることとなる。このように本実施形態では、留め置き制御部１３７は、同一性判定手段として機能する。
【００７３】
ステップＳ８０７において、留め置き制御部１３７は、優先度設定値を取得する。優先度設定値とは、印刷ジョブの優先度を決める上で必要となるユーザ設定値である。ここで図９に、優先度設定値の例を示す。図示するように本例では、「印刷指示／印刷中の印刷ジョブの優先度高」、「印刷指示／印刷中の印刷ジョブの優先度低」という２値の優先度設定値９００を用意する。但し、印刷ジョブの優先度を決定できるような値であれば、他の形態の優先度設定値を採用して構わない。また、本実施形態では、ユーザが操作パネル１１３を介して優先度設定値を入力するが、印刷ジョブの優先度を決定できるのであれば、優先度設定値を印刷ジョブに紐付けるような構成を採用しても良い。
【００７４】
ステップＳ８０８において、留め置き制御部１３７は、ステップＳ８０７で取得した優先度設定値に対応する優先度決定用テーブルを取得し、該取得した優先度決定用テーブルを用いて対象ジョブの優先度を決定する。優先度決定用テーブルとは、優先度を決める際に用いるテーブルである。図１０は、優先度決定用テーブルの例を示す図である。図１０（ａ）は、優先度設定値が「印刷指示／印刷中の印刷ジョブの優先度高」の場合に用いる優先度決定用テーブルを示す。図１０（ｂ）は、優先度設定値が「印刷指示／印刷中の印刷ジョブの優先度低」の場合に用いる優先度決定用テーブルを示す。
【００７５】
本例では、現在ログインしているユーザはユーザＡである。また、ユーザＡの印刷ジョブについて、印刷ジョブリスト４００を参照すると、印刷状況の値が全て「未印刷／未印刷指示」であることから、時間予測を終えていないユーザＡの印刷ジョブは全て、未だ印刷されていない状態にある。この場合、図１０（ａ）と図１０（ｂ）との何れのテーブルを用いた場合であっても、ユーザＡの全ての印刷ジョブに対する優先度は「ｈｉｇｈ」となる。
【００７６】
ステップＳ８０９において、留め置き制御部１３７は、ステップＳ８０８で決定した優先度に対応する優先度別のリストに、対象ジョブを追加（つまり対象ジョブの書誌ＩＤ値を登録）する。これにより、時間予測優先度別リストが更新される。本例では、ユーザＡのログインをトリガーとして予測順序変更処理が実行される結果、ログイン前の時間予測優先度別リスト７００は、時間予測優先度別リスト１１００に遷移する。このように本実施形態では、留め置き制御部１３７は、優先度変更手段として機能する。
【００７７】
ステップＳ８１０において、管理部１３３は、優先度別のリストにある印刷ジョブについて、優先度が高いリストにある印刷ジョブから順に、予測待ちジョブリストに追加していく。これにより、時間予測を行う印刷ジョブの処理順序を変更する。優先度が高いリストにある印刷ジョブから順に予測待ちジョブリストに追加していく際、予測キャンセルを行った上で再度追加し直す必要があるかを、時間予測優先度別リスト１１００と、書誌情報の予測時間の値とに基づき判定する。
【００７８】
本例では、印刷ジョブＡ１は時間予測中であり、また、印刷ジョブＡ１に優先して時間予測を行うべき印刷ジョブが存在しない。従って、印刷ジョブＡ１の時間予測をキャンセルする必要はなく、継続して行う。しかし２番目以降の印刷ジョブについては、時間予測の順番が変更される可能性があるため、各印刷ジョブの書誌情報の予測キャンセル値に「ＴＲＵＥ」を設定することで、予測待ちジョブリストにある印刷ジョブを一旦キャンセルする。そして、優先度が高いリストにある印刷ジョブから順に、印刷ジョブを印刷ジョブリスト４００に追加し直す。その結果、予測待ちジョブリストは、図１１の予測待ちジョブリスト１１０１に示す状態となる。
【００７９】
＜印刷指示受信時の予測順序変更処理について＞
図１２は、印刷実行部１３８、設定部１３２、管理部１３３、及び留め置き制御部１３７が実行する、時間予測を行う印刷ジョブの処理順序を、印刷指示受信時に変更する処理のフローチャートである。尚、以下では、処理を開始する前の予測待ちジョブリストが、予測待ちジョブリスト１１０１に示す状態にあるものと仮定して説明する。
【００８０】
ステップＳ１２０１において、設定部１３２は、操作パネル１１３等を介するユーザ操作による印刷ジョブの印刷指示を受信し、印刷実行部１３８に通知する。以下、画像形成装置１０１にログイン中のユーザＡが印刷ジョブＡ２の印刷を指示したケースについて説明する。
【００８１】
ステップＳ１２０２において、留め置き制御部１３７は、印刷指示を出したユーザを識別するためのユーザ情報（本例ではユーザ名「Ａ」）を取得し、ＲＡＭ１２５に記憶する。
【００８２】
ステップＳ１２０３において、留め置き制御部１３７は、予測待ちジョブリスト１１０１を取得する。
【００８３】
ステップＳ１２０４において、留め置き制御部１３７は、予測待ちジョブリスト１１０１にある印刷ジョブの数だけ予測待ちの順にステップＳ１２０５からステップＳ１２０９の処理を繰り返す。尚、ステップＳ１２０５からステップＳ１２０９では、印刷ジョブ毎に処理を行うが、便宜上、処理対象の印刷ジョブを「対象ジョブ」と呼ぶ。
【００８４】
ステップＳ１２０５において、留め置き制御部１３７は、印刷ジョブリスト４００を参照し、予測待ちジョブリスト１１０１で保持される対象ジョブの書誌ＩＤ値を用いて、対象ジョブの書誌情報を取得する。本ステップで取得する書誌情報には、対象ジョブに対応するユーザ名の値が含まれる。
【００８５】
ステップＳ１２０６において、留め置き制御部１３７は、印刷指示を出したユーザと対象ジョブのユーザとが同一か判定する。具体的には、ステップＳ１２０２で取得したユーザ名の値とステップＳ１２０５で取得したユーザ名の値とが同一の場合に、同一と判定する。本ステップの判定結果が真の場合、ステップＳ１２０７に進む。一方、本ステップの判定結果が偽の場合、対象ジョブに対する処理は終了し、次の印刷ジョブに対する処理が実行されることとなる。
【００８６】
ステップＳ１２０７において、留め置き制御部１３７は、優先度設定値を取得する。尚、ここでは、図９に例示した優先度設定値を採用するケースを説明する。
【００８７】
ステップＳ１２０８において、留め置き制御部１３７は、ステップＳ８０７で取得した優先度設定値に対応する優先度決定用テーブルを取得し、該取得した優先度決定用テーブルを用いて対象ジョブの優先度を決定する。尚、ここでは、図１０に例示した優先度決定用テーブルを採用するケースを説明する。
【００８８】
本例では、印刷指示を出したユーザはユーザＡである。また、ユーザＡの印刷ジョブのうち、印刷ジョブＡ２については、印刷状況の値が「印刷中」であり、印刷中の状態である。一方、印刷ジョブＡ１、Ａ３については、印刷状況の値が「未印刷／未印刷指示」であり、未だ印刷されていない状態である。この場合、図１０（ａ）のテーブルを用いると、印刷ジョブＡ２の優先度は「ｈｉｇｈｅｓｔ」になる一方、印刷ジョブＡ１、Ａ３の優先度は「ｈｉｇｈ」となる。これに対し、図１０（ｂ）のテーブルを用いると、印刷ジョブＡ２の優先度は「ｌｏｗｅｓｔ」になる一方、印刷ジョブＡ１、Ａ３の優先度は「ｈｉｇｈ」となる。
【００８９】
ステップＳ１２０９において、留め置き制御部１３７は、ステップＳ１２０８で決定した優先度に対応する優先度別のリストに、対象ジョブを追加（つまり対象ジョブの書誌ＩＤ値を登録）する。これにより、時間予測優先度別リストが更新される。本例では、図１０（ａ）のテーブルを用いる場合、ユーザＡによる印刷ジョブに対する印刷指示の受信をトリガーとして予測順序変更処理が実行される結果、時間予測優先度別リスト１１００は、時間予測優先度別リスト１３００に遷移する。一方、図１０（ｂ）のテーブルを用いる場合、ユーザＡによる印刷ジョブに対する印刷指示の受信をトリガーとして予測順序変更処理が実行される結果、時間予測優先度別リスト１１００は、時間予測優先度別リスト１３０２に遷移する。
【００９０】
ステップＳ１２１０において、管理部１３３は、優先度別のリストにある印刷ジョブについて、優先度が高いリストにある印刷ジョブから順に、予測待ちジョブリストに追加していく。これにより、時間予測を行う印刷ジョブの処理順序を変更する。優先度が高いリストにある印刷ジョブから順に予測待ちジョブリストに追加していく際、予測キャンセルを行った上で再度追加し直す必要があるかを、時間予測優先度別リストと、書誌情報の予測時間の値とに基づき判定する。
【００９１】
例えば、時間予測優先度別リスト１３００の場合、印刷ジョブＡ１が時間予測中だが、印刷ジョブＡ１に優先して時間予測を行うべき印刷ジョブが存在する。従って、各印刷ジョブの書誌情報の予測キャンセル値に「ＴＲＵＥ」を設定することで、予測待ちジョブリストにある印刷ジョブを一旦キャンセルする。そして、優先度が高いリストにある印刷ジョブから順に、印刷ジョブを印刷ジョブリスト４００に追加し直す。その結果、予測待ちジョブリストは、図１３の時間予測待ちジョブリスト１３０１に示す状態となる。
【００９２】
これに対し、時間予測優先度別リスト１３０２の場合、印刷ジョブＡ１は時間予測中であり、また、印刷ジョブＡ１に優先して時間予測を行うべき印刷ジョブが存在しない。従って、印刷ジョブＡ１の時間予測をキャンセルする必要はなく、継続して行う。しかし２番目以降の印刷ジョブについては、時間予測の順番が変更される可能性があるため、各印刷ジョブの書誌情報の予測キャンセル値に「ＴＲＵＥ」を設定することで、予測待ちジョブリストにある印刷ジョブを一旦キャンセルする。そして、優先度が高いリストにある印刷ジョブから順に、印刷ジョブを印刷ジョブリスト４００に追加し直す。その結果、予測待ちジョブリストは、図１３の予測待ちジョブリスト１３０３に示す状態となる。
【００９３】
＜ログアウト時の予測順序変更処理について＞
図１４は、設定部１３２、管理部１３３、及び留め置き制御部１３７が実行する、時間予測を行う印刷ジョブの処理順序を、ユーザログアウト時に変更する処理のフローチャートである。尚、以下では、処理を開始する前の予測待ちジョブリストが、予測待ちジョブリスト１３０１（または予測待ちジョブリスト１３０３）に示す状態にあるものと仮定して説明する。
【００９４】
操作パネル１１３に表示されたＵＩを介するユーザのログアウト指示を設定部１３２が受信すること、又は、タイムアウトをトリガーとして、ログアウト処理が実行される。この場合、ステップＳ１４０１において、留め置き制御部１３７は、ログアウト通知を受信する。以下、ユーザＡが画像形成装置１０１からログアウトしたケースについて説明する。
【００９５】
ステップＳ１４０２において、留め置き制御部１３７は、ログアウトしたユーザを識別するためのユーザ情報（本例ではユーザ名「Ａ」）を取得し、ＲＡＭ１２５に記憶する。
【００９６】
ステップＳ１４０３において、留め置き制御部１３７は、予測待ちジョブリスト１３０１（または予測待ちジョブリスト１３０３）を取得する。
【００９７】
ステップＳ１４０４において、留め置き制御部１３７は、予測待ちジョブリスト１３０１（または予測待ちジョブリスト１３０３）にある印刷ジョブの数だけ予測待ちの順にステップＳ１４０５からステップＳ１４０９の処理を繰り返す。尚、ステップＳ１４０５からステップＳ１４０９では、印刷ジョブ毎に処理を行うが、便宜上、処理対象の印刷ジョブを「対象ジョブ」と呼ぶ。
【００９８】
ステップＳ１４０５において、留め置き制御部１３７は、印刷ジョブリスト４００を参照する。そして、予測待ちジョブリスト１３０１（または予測待ちジョブリスト１３０３）で保持される対象ジョブの書誌ＩＤ値を用いて、対象ジョブの書誌情報を取得する。本ステップで取得する書誌情報には、対象ジョブに対応するユーザ名の値が含まれる。
【００９９】
ステップＳ１４０６において、留め置き制御部１３７は、ログアウトしたユーザと対象ジョブのユーザとが同一か判定する。具体的には、ステップＳ１４０２で取得したユーザ名の値とステップＳ１４０５で取得したユーザ名の値とが同一の場合に、同一と判定する。本ステップの判定結果が真の場合、ステップＳ１４０７に進む。一方、本ステップの判定結果が偽の場合、対象ジョブに対する処理は終了し、次の印刷ジョブに対する処理が実行されることとなる。
【０１００】
ステップＳ１４０７において、留め置き制御部１３７は、優先度設定値を取得する。尚、ここでは、図９に例示した優先度設定値を採用するケースを説明する。
【０１０１】
ステップＳ１４０８において、留め置き制御部１３７は、ステップＳ１４０７で取得した優先度設定値に対応する優先度決定用テーブルを取得し、該取得した優先度決定用テーブルを用いて対象ジョブの優先度を決定する。尚、ここでは、図１０に例示した優先度決定用テーブルを採用するケースを説明する。
【０１０２】
本例では、ログアウトしたユーザはユーザＡである。また、ユーザＡの印刷ジョブのうち、印刷ジョブＡ２については、印刷状況の値が「印刷中」であり、印刷中の状態である。一方、印刷ジョブＡ１、Ａ３については、印刷状況の値が「未印刷／未印刷指示」であり、未だ印刷されていない状態である。この場合、また、図１０（ａ）と図１０（ｂ）との何れのテーブルを用いた場合であっても、ログアウト時のテーブルは同じであるため、印刷ジョブＡ２の優先度は「ｌｏｗｅｓｔ」となり、印刷ジョブＡ１と印刷ジョブＡ３との優先度は「ｌｏｗ」となる。
【０１０３】
ステップＳ１４０９において、留め置き制御部１３７は、ステップＳ１４０８で決定した優先度に対応する優先度別のリストに、対象ジョブを追加（つまり対象ジョブの書誌ＩＤ値を登録）する。これにより、時間予測優先度別リストが更新される。本例では、ユーザＡのログアウトをトリガーとして予測順序変更処理が実行される結果、時間予測優先度別リスト１３００（または時間予測優先度別リスト１３０２）は、時間予測優先度別リスト１５００に遷移する。
【０１０４】
ステップＳ１４１０において、管理部１３３は、優先度別のリストにある印刷ジョブについて、優先度が高いリストにある印刷ジョブから順に、予測待ちジョブリストに追加していく。これにより、時間予測を行う印刷ジョブの処理順序を変更する。優先度が高いリストにある印刷ジョブから順に予測待ちジョブリストに追加していく際、予測キャンセルを行った上で再度追加し直す必要があるかを、時間予測優先度別リスト１５００と、書誌情報の予測時間の値とに基づき判定する。
【０１０５】
本例では、印刷ジョブＡ１（または印刷ジョブＡ２）が時間予測中だが、印刷ジョブＡ１（または印刷ジョブＡ２）に優先して時間予測を行うべき印刷ジョブが存在する。従って、各印刷ジョブの書誌情報の予測キャンセル値に「ＴＲＵＥ」を設定することで、予測待ちジョブリストにある印刷ジョブを一旦キャンセルする。そして、優先度が高いリストにある印刷ジョブから順に、印刷ジョブを印刷ジョブリスト４００に追加し直す。その結果、予測待ちジョブリストは、図１５の時間予測待ちジョブリスト１５０１に示す状態となる。
【０１０６】
＜本実施形態の効果について＞
上述したように、優先度に応じて時間予測の順番を変更して、これから印刷する可能性が高いユーザの印刷ジョブ、または、印刷実行を未だ指示していないユーザの印刷ジョブに対する時間予測を優先的に行うようにする。よって、これらのユーザに時間予測の結果を早く提示できる。
【０１０７】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2019126975.tif 000003
【図２】
2019126975.tif 000004
【図３】
2019126975.tif 000005
【図４】
2019126975.tif 000006
【図５】
2019126975.tif 000007
【図６】
2019126975.tif 000008
【図７】
2019126975.tif 000009
【図８】
2019126975.tif 000010
【図９】
2019126975.tif 000011
【図１０】
2019126975.tif 000012
【図１１】
2019126975.tif 000013
【図１２】
2019126975.tif 000014
【図１３】
2019126975.tif 000015
【図１４】
2019126975.tif 000016
【図１５】
2019126975.tif 000017
【図１６】
2019126975.tif 000018
【図１７】
2019126975.tif 000019
【図１８】
2019126975.tif 000020