(57)【要約】【課題】複数のプリンタで構成される印刷システムにおいて、好適な自動分配とユーザの利便性の向上との両立を図ることが可能な、印刷ジョブの分配技術を提供すること。【解決手段】ＰＣ１は、ＰＣ１に接続するプリンタ２ごとの印刷可能残枚数を取得する。そして、印刷可能残枚数が第１閾値以上のプリンタである第１種プリンタと、印刷可能残枚数が、第１閾値よりも小さく、かつ第１閾値よりも小さい第２閾値以上のプリンタである第２種プリンタと、をそれぞれ抽出する。さらに、ＰＣ１は、第１種プリンタが所定台数以上有る場合、複数の第１種プリンタの１つの選択を受け付け、選択された第１種プリンタに印刷ジョブの送信し、第１種プリンタが所定台数以上無い場合、第１種プリンタおよび第２種プリンタの中から１つのプリンタを送信先に自動的に決定し、決定したプリンタに印刷ジョブを送信する。【選択図】            図４
2019175152.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置の制御部によって実行可能なプログラムであって、
前記制御部に、
前記情報処理装置に接続するプリンタごとの印刷可能残枚数を取得する取得処理と、
前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記取得処理にて取得した前記印刷可能残枚数が第１閾値以上のプリンタである第１種プリンタを抽出する第１抽出処理と、
前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記取得処理にて取得した前記印刷可能残枚数が、前記第１閾値よりも小さく、かつ前記第１閾値よりも小さい第２閾値以上のプリンタである第２種プリンタを抽出する第２抽出処理と、
前記情報処理装置が印刷ジョブを受け付けた場合に、前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記印刷ジョブを送信するプリンタを決定する決定処理と、
前記決定処理にて決定したプリンタに、前記情報処理装置の通信インターフェースを介して前記印刷ジョブを送信する送信処理と、
を実行させ、
前記決定処理では、
前記第１種プリンタが所定台数以上有る場合、前記情報処理装置のユーザインターフェースを介して前記複数の第１種プリンタの１つの選択を受け付け、選択された第１種プリンタを、前記印刷ジョブの送信先のプリンタに決定し、
前記第１種プリンタが前記所定台数以上無い場合、前記第１種プリンタおよび前記第２種プリンタの中から１つのプリンタを、前記印刷ジョブの送信先のプリンタに決定する、
ことを特徴とするプログラム。
【請求項２】
請求項１に記載するプログラムにおいて、
前記決定処理では、
前記第１種プリンタが前記所定台数以上無い場合、前記第１種プリンタおよび前記第２種プリンタの中から、前記印刷ジョブの完了時間が最も早いプリンタを、前記印刷ジョブの送信先のプリンタに決定する、
ことを特徴とするプログラム。
【請求項３】
請求項１に記載するプログラムにおいて、
前記決定処理では、
前記第１種プリンタが無い場合、前記第２種プリンタの中から前記印刷可能残枚数が最も多いプリンタを、前記印刷ジョブの送信先のプリンタに決定する、
ことを特徴とするプログラム。
【請求項４】
請求項１から請求項３のいずれか１つに記載するプログラムにおいて、
前記決定処理では、
前記第１種プリンタが前記所定台数以上有る場合であって前記複数の第１種プリンタの１つが選択された場合、選択された第１種プリンタに印刷ジョブが有るか否かを判断し、
選択された第１種プリンタに印刷ジョブが有ると判断した場合、選択された第１種プリンタ以外の第１種プリンタであって、前記印刷ジョブの完了時間が最も早いプリンタである代替プリンタを抽出し、
前記代替プリンタが抽出された場合、前記ユーザインターフェースを介して前記代替プリンタを前記印刷ジョブの送信先のプリンタにするか否かの選択を受け付け、
前記代替プリンタを前記印刷ジョブの送信先のプリンタにすることが選択された場合、前記代替プリンタを、前記印刷ジョブの送信先のプリンタに決定し、
前記代替プリンタを前記印刷ジョブの送信先のプリンタにすることが選択されなかった場合、選択された第１種プリンタを、前記印刷ジョブの送信先のプリンタに決定する、
ことを特徴とするプログラム。
【請求項５】
請求項４に記載するプログラムにおいて、
前記決定処理では、
複数の前記代替プリンタが抽出された場合、前記印刷可能残枚数が最も多いプリンタを前記代替プリンタとする、
ことを特徴とするプログラム。
【請求項６】
請求項１から請求項５のいずれか１つに記載するプログラムにおいて、
前記決定処理では、
前記第１種プリンタが前記所定数台以上無い場合、前記印刷ジョブの実行によって前記印刷可能残枚数が０になるプリンタを、前記印刷ジョブの送信先のプリンタとしない、
ことを特徴とするプログラム。
【請求項７】
請求項１から請求項６のいずれか１つに記載するプログラムにおいて、
前記制御部に、
前記送信処理の後、前記印刷ジョブの情報をファイルに記憶する記憶処理と、
前記ファイルを読み出し、前記第１閾値および前記第２閾値を設定する設定処理と、
を実行させ、
前記設定処理では、
前記ファイルを用いて１回の印刷ジョブでの印刷枚数を特定し、
特定された印刷枚数が所定枚数以下の場合、特定された印刷枚数が前記所定枚数よりも大きい場合と比較して、前記第１閾値および前記第２閾値がともに小さい、
ことを特徴とするプログラム。
【請求項８】
請求項１から請求項７のいずれか１つに記載するプログラムにおいて、
前記決定処理では、
前記第１種プリンタが前記所定台数以上有る場合、前記情報処理装置の表示部に前記第１種プリンタを前記印刷可能残枚数が多い順に並べて表示させる、
ことを特徴とするプログラム。
【請求項９】
制御部と、
通信インターフェースと、
ユーザインターフェースと、
を備える情報処理装置であって、
前記制御部は、
前記情報処理装置に接続するプリンタごとの印刷可能残枚数を取得する取得処理と、
前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記取得処理にて取得した前記印刷可能残枚数が第１閾値以上のプリンタである第１種プリンタを抽出する第１抽出処理と、
前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記取得処理にて取得した前記印刷可能残枚数が、前記第１閾値よりも小さく、かつ前記第１閾値よりも小さい第２閾値以上のプリンタである第２種プリンタを抽出する第２抽出処理と、
印刷ジョブを受け付けた場合に、前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記印刷ジョブを送信するプリンタを決定する決定処理と、
前記決定処理にて決定したプリンタに、前記通信インターフェースを介して前記印刷ジョブを送信する送信処理と、
を実行させ、
前記決定処理では、
前記第１種プリンタが所定台数以上有る場合、前記ユーザインターフェースを介して前記複数の第１種プリンタの１つの選択を受け付け、選択された第１種プリンタを、前記印刷ジョブの送信先のプリンタに決定し、
前記第１種プリンタが前記所定台数以上無い場合、前記第１種プリンタおよび前記第２種プリンタの中から１つのプリンタを、前記印刷ジョブの送信先のプリンタに決定する、
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に開示される技術分野は、プリンタの選択が可能なプログラムおよび情報処理装置に関する。さらに詳細には、複数のプリンタで構成される印刷システムにおける印刷ジョブの分配に関するものである。
【背景技術】
【０００２】
複数のプリンタで構成される印刷システムにおいて、プリンタの保守コストを削減するため、部品交換等の保守作業のタイミングを揃えるように印刷ジョブを自動分配する技術が提案されている。例えば、特許文献１には、各機器の処理可能なジョブ量と、次の保守作業までに各機器に入力可能なジョブ量と、を予測し、その予測結果に基づいて保守コストにかかる評価値を算出し、評価値に基づいてジョブを分配する方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２１８５２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されている技術では、ジョブの量に基づく保守コストを評価値として、ジョブを自動的に分配している。そのため、保守コストの評価値が低い特定のプリンタにジョブが集中する場合も考えられ、その場合、ジョブの完了までに時間がかかり、ユーザに不満が生じ得る。
【０００５】
本明細書に開示される技術は、前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは、複数のプリンタで構成される印刷システムにおいて、好適な自動分配とユーザの利便性の向上との両立を図ることが可能な、印刷ジョブの分配技術を提供することにある。
【課題を解決するための手段】
【０００６】
この課題の解決を目的としてなされたプログラムは、情報処理装置の制御部によって実行可能なプログラムであって、前記制御部に、前記情報処理装置に接続するプリンタごとの印刷可能残枚数を取得する取得処理と、前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記取得処理にて取得した前記印刷可能残枚数が第１閾値以上のプリンタである第１種プリンタを抽出する第１抽出処理と、前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記取得処理にて取得した前記印刷可能残枚数が、前記第１閾値よりも小さく、かつ前記第１閾値よりも小さい第２閾値以上のプリンタである第２種プリンタを抽出する第２抽出処理と、前記情報処理装置が印刷ジョブを受け付けた場合に、前記取得処理によって前記印刷可能残枚数が取得されたプリンタのうち、前記印刷ジョブを送信するプリンタを決定する決定処理と、前記決定処理にて決定したプリンタに、前記情報処理装置の通信インターフェースを介して前記印刷ジョブを送信する送信処理と、を実行させ、前記決定処理では、前記第１種プリンタが所定台数以上有る場合、前記情報処理装置のユーザインターフェースを介して前記複数の第１種プリンタの１つの選択を受け付け、選択された第１種プリンタを、前記印刷ジョブの送信先のプリンタに決定し、前記第１種プリンタが前記所定台数以上無い場合、前記第１種プリンタおよび前記第２種プリンタの中から１つのプリンタを、前記印刷ジョブの送信先のプリンタに決定する、ことを特徴としている。
【０００７】
情報処理装置が分配先を自動的に決定すると、特定のプリンタに印刷ジョブが集中する傾向にあり、印刷完了までに時間がかかる問題や、特定のプリンタがユーザにとって不便な場所にある場合に、印刷物を取りに行く時間が増える問題が生じ得る。そこで、本明細書に開示されるプログラムでは、情報処理装置に接続されるプリンタを印刷可能残枚数に応じて区別し、印刷可能残枚数に余裕がある第１種プリンタが所定台数以上有る場合には、それら第１種プリンタの中からユーザに出力先を選択させることで、上記の問題が生じ難くなる。一方で、第１種プリンタが所定台数以上ない場合には、印刷可能残枚数が第１種プリンタよりも少ない第２種プリンタを含めて分配先を自動的に決定することで、例えば保守コストの上昇や印刷ジョブが完了するまでの時間の遅延を抑える運用を図ることができる。
【０００８】
上記装置の機能を実現するための制御方法、情報処理装置、および当該プログラムを格納する、コンピュータにて読取可能な記憶媒体も、新規で有用である。
【発明の効果】
【０００９】
本明細書に開示される技術によれば、複数のプリンタで構成されるプリントシステムにおいて、好適な自動分配とユーザの利便性の向上との両立を図ることが可能な、印刷ジョブの分配技術が実現される。
【図面の簡単な説明】
【００１０】
【図１】実施の形態にかかる印刷システムの概略構成図である。
【図２】プリンタデータベースの構成を示す図である。
【図３】印刷履歴データベースの構成を示す図である。
【図４】実施の形態にかかる印刷システムの印刷ジョブの分配手順を示す図である。
【図５】各プリンタの印刷可能残枚数の状態を示す図である。
【図６】ＰＣによって実行されるプリンタ分配処理の手順を示すフローチャートである。
【図７】ＰＣによって実行される印刷ジョブ送信処理の手順を示すフローチャートである。
【図８】印刷アプリが有する印刷指示画面を示す図である。
【図９】ＰＣによって実行される第１推奨表示処理の手順を示すフローチャートである。
【図１０】プリンタの推奨画面を示す図である。
【図１１】ＰＣによって実行される分配印刷処理の手順を示すフローチャートである。
【図１２】ＰＣによって実行されるプリンタ選択処理の手順を示すフローチャートである。
【図１３】ＰＣによって実行される第２推奨表示処理の手順を示すフローチャートである。
【図１４】応用形態にかかる分配印刷処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、上述のプログラムを具体化した実施の形態について、添付図面を参照しつつ詳細に説明する。本形態は、複数のパーソナルコンピュータ（ＰＣ）と、複数のプリンタとを含む印刷システムに上述のプログラムを適用したものである。
【００１２】
［印刷システムの構成］
本形態の印刷システム１００は、図１に示すように、ＰＣ１Ａ、１Ｂ、１Ｃと、プリンタ２Ａ、２Ｂ、２Ｃ、２Ｄとを有し、各プリンタがネットワークを介して各ＰＣと接続されている。ＰＣ１Ａ、１Ｂ、１Ｃと接続するプリンタは、プリンタ２Ａ、２Ｂ、２Ｃ、２Ｄに限るものではなく、何台接続されていてもよい。なお、本明細書では、プリンタ２Ａ、２Ｂ、２Ｃ、２Ｄを個別に区別しない場合、「プリンタ２」と記載する。また、プリンタ２と接続するＰＣは、ＰＣ１Ａ、１Ｂ、１Ｃに限るものではなく、何台接続されていてもよい。なお、本明細書では、ＰＣ１Ａ、１Ｂ、１Ｃを個別に区別しない場合、「ＰＣ１」と記載する。ＰＣ１は、情報処理装置の一例である。
【００１３】
ＰＣ１は、印刷ジョブを生成し、複数のプリンタ２の中から印刷ジョブを実行するプリンタを決定し、決定したプリンタに印刷ジョブを送信する。すなわち、ＰＣ１は、印刷ジョブの分配機能を有する。
【００１４】
具体的に、ＰＣ１は、図１に示すように、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、不揮発性メモリ１４と、を含むコントローラ１０を備えている。そして、ＰＣ１は、さらに、入力手段１５と、通信インターフェース（通信ＩＦ）１６と、表示手段１７とを備え、これらがコントローラ１０に電気的に接続されている。コントローラ１０は、ＰＣ１の各構成要素を制御する。なお、図１中のコントローラ１０は、ＰＣ１の制御に利用されるハードウェアを纏めた総称であって、実際に存在する単一のハードウェアを表すとは限らない。
【００１５】
ＲＯＭ１２には、ＰＣ１を起動するための起動プログラム等が記憶されている。ＲＡＭ１３は、各種処理が実行される際に作業領域として、あるいは、データを一時的に記憶する記憶領域として利用される。不揮発性メモリ１４は、例えば、ＨＤＤ、フラッシュメモリであり、各種のプログラムやデータを記憶する。印刷ジョブを分配するためのプログラムも不揮発性メモリ１４に記憶される。ＣＰＵ１１は、ＲＯＭ１２や不揮発性メモリ１４から読み出したプログラムに従って、各種の処理を実行する。ＣＰＵ１１は、制御部の一例である。なお、コントローラ１０が制御部の一例であってもよい。
【００１６】
また、不揮発性メモリ１４には、印刷指示を受け付ける機能を有するアプリケーションプログラム（印刷アプリ）１４０と、ＰＣ１と接続する各プリンタ２の情報を記憶するプリンタデータベース（プリンタＤＢ）１４１と、印刷ジョブの実行履歴を記憶する印刷履歴データベース（印刷履歴ＤＢ）１４５と、が記憶されている。
【００１７】
具体的に、プリンタＤＢ１４１は、図２に示すように、プリンタ２ごとに、プリンタを識別するＩＤと、プリンタ名と、プリンタ種と、プリンタの現在の状態を示すステータスと、現在蓄積されている全ての印刷ジョブの実行が完了するまでの残りの印刷枚数である印刷残枚数と、保守タイミングとなるまでの残りの印刷可能枚数である印刷可能残枚数と、の各情報を１つのレコードとして関連付けて記憶している。プリンタ名は、プリンタ２にアクセスするための情報であればよく、例えばノード名や、ＩＰアドレスが該当する。プリンタ種は、プリンタ２の能力を判断するための情報であればよく、例えば製品名が該当する。ステータスには、例えば印刷中、待機中、エラー停止中、が該当する。
【００１８】
プリンタＤＢ１４１のレコードは、プリンタ２の新規の検出時に作成され、少なくともＩＤ、プリンタ名、プリンタ種の情報が登録時に記憶される。ステータスおよび印刷残枚数は、プリンタサーバ１が定期的にプリンタにアクセスすることによって更新される。印刷可能残枚数は印刷ジョブが完了する度に更新される。
【００１９】
なお、印刷可能残枚数は、プリンタから直接その数値を取得してもよいし、例えば、感光ドラムの回転数、現像ローラの回転数等の消耗品の使用度合に関する数値を取得し、その数値に基づいて算出してもよい。また、例えば印刷時の振動が大きいほど故障のリスクが高まっていることから、プリンタ２に設けられた振動センサの出力値を取得し、その出力値に基づいて印刷可能残枚数を算出してもよい。また、例えばジャム等のエラー停止回数が多いほど故障のリスクが高まっていることから、エラー回数をカウントし、そのカウント値に基づいて印刷可能残枚数を算出してもよい。また、経時劣化によっても故障のリスクが高まることから、初回起動時あるいは前回の保守時からの経過時間に基づいて印刷可能残枚数を算出してもよい。また、１つのパラメータのみではなく、これらの複数のパラメータによって、印刷可能残枚数を算出してもよい。
【００２０】
印刷履歴ＤＢ１４５は、図３に示すように、印刷ジョブごとに、印刷ジョブを識別するＩＤと、印刷ジョブの内容と、印刷が完了した時刻である印刷日時と、の各情報を１つのレコードとして関連付けて記憶している。印刷ジョブの内容には、例えば印刷ページ数、カラー設定、解像度設定、が含まれる。印刷履歴ＤＢ１４５のレコードは、印刷ジョブが完了する度に作成され、全ての項目が登録時に記憶される。
【００２１】
図１の説明に戻り、入力手段１５は、例えば、キーボードやマウスであり、ユーザによる入力を受け付ける。通信ＩＦ１６は、プリンタ２と通信を行うためのハードウェアを含む。通信方式は、ＵＳＢ、イーサネット（登録商標）、ＷｉＦｉ（登録商標）等、どのような規格の方式でもよいし、無線でも有線でもよい。表示手段１７は、例えば、液晶ディスプレイであり、各種の情報の表示を行う。ＰＣ１は、タッチパネル等の、入力手段１５と表示手段１７とを兼ねるハードウェアを備えていてもよい。入力手段１５および表示手段１７は、ユーザインターフェースの一例である。
【００２２】
本形態のプリンタ２は、プリンタサーバ１から印刷ジョブを受信した場合に、その印刷ジョブに含まれる画像データに基づいてシートに画像を印刷する。印刷方式は、電子写真方式であってもインクジェット方式であってもよい。
【００２３】
［印刷ジョブの分配手順］
続いて、本形態の印刷システム１００における印刷ジョブの分配手順について、図４を参照しつつ説明する。以下の手順では、ＰＣ１によって印刷ジョブが生成されたものとする。
【００２４】
なお、本明細書における処理、手順、ないしステップは、基本的に、プログラムに記述された命令に従ったＣＰＵ１１の処理を示す。ＣＰＵ１１による処理は、プリンタサーバ１のオペレーティングシステム（ＯＳ）の他のモジュールとデータ交換するためのＩＦ（ＡＰＩとも呼ばれる）を用いたハードウェア制御も含む。本明細書では、ＯＳの記載を省略して各プログラムの動作を説明する。また、本明細書中の「データ」とは、ＣＰＵ１１が読取可能なビット列で表される。本明細書中の「情報」についても同様である。
【００２５】
ＰＣ１は、先ず、印刷アプリ１４０を介して印刷指示を受け付け、印刷ジョブを生成する（図４中の（１））。印刷ジョブには、出力先となるプリンタが指定されているものと、指定されていないものとがあり、出力先となるプリンタが指定されていない場合、ＰＣ１は出力先の自動分配を行い、出力先となるプリンタが指定されている場合、ＰＣ１は自動分配を行わず、指定されているプリンタを出力先に決定する。以下の説明では、出力先が指定されていない未指定印刷ジョブを受け付けたものとする。なお、出力先の指定として、自動分配が指定されている場合も、未指定印刷ジョブに含まれる。
【００２６】
未指定印刷ジョブを受け付けると、ＰＣ１は、予めプリンタ２が振り分けられたプリンタリストに基づいて、プリンタを自動分配するか否かを判断する（図４中の（２））。具体的に、ＰＣ１は、各プリンタ２を、印刷可能残枚数に基づいて、第１種プリンタ、第２種プリンタ、第３種プリンタ、の３つのタイプに振り分けている。第１種プリンタは、印刷可能残枚数が第１閾値以上のプリンタである。第２種プリンタは、印刷可能残枚数が第１閾値よりも小さく、かつ第１閾値よりも小さい第２閾値以上のプリンタである。第３種プリンタは、印刷可能残枚数が第２閾値よりも小さいプリンタである。そして、ＰＣ１は、第１種プリンタ用の第１種プリンタリスト１４２、第２種プリンタ用の第２種プリンタリスト１４３、第３種プリンタ用の第３種プリンタリスト１４４、をそれぞれ作成し、ＲＡＭ１３あるいは不揮発性メモリ１４に記憶している。
【００２７】
例えば、各プリンタ２の印刷可能残枚数が図５に示すような状態であった場合、プリンタ２Ａおよびプリンタ２Ｄは、印刷可能残枚数が第１閾値以上となるため、第１種プリンタに分類され、第１種プリンタリスト１４２に登録される。また、プリンタ２Ｃは、印刷可能残枚数が第１閾値よりも小さくかつ第２閾値以上となるため、第２種プリンタに分類され、第２種プリンタリスト１４３に登録される。また、プリンタ２Ｂは、印刷可能残枚数が第２閾値よりも小さいため、第３種プリンタに分類され、第３種プリンタリスト１４４に登録される。
【００２８】
ＰＣ１は、第１種プリンタが２台以上の場合、第１種プリンタの中から１つのプリンタを選択させる選択画面１７１を表示手段１７に表示させ、出力先を第１種プリンタの中からユーザに選択させる（図４中の（３））。第１種プリンタは、保守コストの評価値が小さく、どのプリンタが選択されたとしても早急にメンテナンスが必要になるリスクは低い。一方で、ＰＣ１が最適なプリンタを自動抽出すると、１台の最適なプリンタに印刷ジョブが集中して生産性が低下することがあり得る。そこで、ユーザ自身に出力先を選択させることで、１台のプリンタに印刷ジョブが集中するリスクを低減できる。また、ユーザ自身で出力先を選択することで、プリンタを利用する自由度が高くなり、ユーザが出力先を認識し易い。なお、選択画面１７１では、保守コストの評価値が小さいプリンタほど選び易くするため、印刷可能残枚数が多い順にプリンタを列記する。
【００２９】
一方、ＰＣ１は、第１種プリンタが１台以下の場合、第１種プリンタおよび第２種プリンタの中から、プリンタの自動分配を行う（図４中の（４））。この場合、分配先に決定したプリンタ名を通知する通知画面１７２を表示手段１７に表示させる。第１種プリンタの選択肢が少ない場合は、印刷システム１００全体として保守コストが高い状況にあり、保守コストに係る評価値や印刷ジョブの完了時間に係る評価値に基づいて、最適なプリンタを分配先に決定する。
【００３０】
また、ＰＣ１は、第１種プリンタも第２種プリンタも無い場合、保守点検が必要になったことを示すメッセージを含む報知画面１７３を表示手段１７に表示させ、保守点検タイミングに達した旨をユーザに報知する（図４中の（５））。
【００３１】
［ＰＣの動作］
［プリンタ分配処理］
続いて、前述した印刷ジョブの分配手順を実現するための、ＰＣ１の処理の詳細について説明する。始めに、プリンタ分配処理について、図６のフローチャートを参照しつつ説明する。プリンタ分配処理は、印刷アプリ１４０が起動されたことを契機に、ＣＰＵ１１によって実行される。
【００３２】
プリンタ分配処理では、ＣＰＵ１１は先ず、印刷履歴ＤＢ１４５から過去の印刷ジョブのレコードを読み出し（Ｓ１０１）、一回の印刷ジョブ当たりの平均印刷枚数を算出する（Ｓ１０２）。読み出すレコードの数は、印刷履歴ＤＢ１４５に登録されている全てのレコードでもよいし、直近から数回分のレコードとしてもよいし、所定日数分のレコードとしてもよい。
【００３３】
Ｓ１０２の後、ＣＰＵ１１は、Ｓ１０２にて算出された平均印刷枚数が所定枚数よりも大きいか否かを判断する（Ｓ１０３）。平均印刷枚数が所定枚数よりも大きい場合（Ｓ１０３：ＹＥＳ）、ＣＰＵ１１は、プリンタのタイプを振り分ける第１閾値および第２閾値（図５参照）を、高閾値に設定する（Ｓ１０４）。一方、平均印刷枚数が所定枚数よりも大きくない場合（Ｓ１０３：ＮＯ）、ＣＰＵ１１は、第１閾値および第２閾値を、低閾値に設定する（Ｓ１０５）。すなわち、ＰＣ１は、第１閾値および第２閾値として、それぞれ高閾値と、高閾値よりも小さい低閾値と、の２種類の設定が可能であり、平均印刷枚数によっていずれか一方に決定する。
【００３４】
平均印刷枚数が少ないユーザは、大量ページの印刷ジョブを投入する可能性は低い。そのため、第１閾値および第２閾値を共に小さい値とし、プリンタを選択する機会（図４（３）となる機会）を増やすことで、ユーザの利便性が高まり易い。一方で、平均印刷枚数が多いユーザは、大量ページの印刷ジョブを投入する可能性があり、印刷可能残枚数が０になるプリンタが生じるリスク、すなわち他のプリンタで印刷可能枚数が多く残っているにもかかわらず保守タイミングとなってしまうリスクが高い。そのため、第１閾値および第２閾値を共に大きい値とし、プリンタを自動分配する機会（図４（４）となる機会）を増やすことで、保守コストの増大を抑制する。Ｓ１０１〜Ｓ１０５は、設定処理の一例である。
【００３５】
Ｓ１０４あるいはＳ１０５の後、ＣＰＵ１１は、第１種プリンタリスト１４２、第２種プリンタリスト１４３、第３種プリンタリスト１４４、の各プリンタリストを初期化する（Ｓ１１０）。その後、ＣＰＵ１１は、プリンタＤＢ１４１から１つのレコードを抽出する。すなわち、ＰＣ１に接続されるプリンタ２の１つを抽出する（Ｓ１１１）。プリンタＤＢ１４１のレコードにはプリンタの印刷可能残枚数が含まれる。そのため、Ｓ１１１は、取得処理の一例である。
【００３６】
Ｓ１１１の後、ＣＰＵ１１は、抽出されたプリンタの印刷可能残枚数に基づいて、そのプリンタをプリンタリストに振り分ける。具体的にＣＰＵ１１は、抽出されたプリンタの印刷可能残枚数が第１閾値以上か否かを判断する（Ｓ１１２）。印刷可能残枚数が第１閾値以上の場合（Ｓ１１２：ＹＥＳ）、ＣＰＵ１１は、抽出されたプリンタを、第１種プリンタとして、第１種プリンタリスト１４２に登録する（Ｓ１１３）。Ｓ１１２およびＳ１１３は、第１抽出処理の一例である。一方、印刷可能残枚数が第１閾値以上でない場合（Ｓ１１２：ＮＯ）、ＣＰＵ１１は、抽出されたプリンタの印刷可能残枚数が第２閾値以上か否かを判断する（Ｓ１２１）。印刷可能残枚数が第２閾値以上の場合（Ｓ１２１：ＹＥＳ）、ＣＰＵ１１は、抽出されたプリンタを、第２種プリンタとして、第２種プリンタリスト１４３に登録する（Ｓ１２２）。Ｓ１２１およびＳ１２２は、第２抽出処理の一例である。一方、印刷可能残枚数が第２閾値以上でない場合（Ｓ１２１：ＮＯ）、ＣＰＵ１１は、抽出されたプリンタを、第３種プリンタとして、第３種プリンタリスト１４４に登録する（Ｓ１３１）。
【００３７】
Ｓ１１３、あるいはＳ１２２、あるいはＳ１３１の後、ＣＰＵ１１は、プリンタＤＢ１４１に記憶されている全てのプリンタについて抽出したか否かを判断する（Ｓ１４１）。抽出されていないプリンタがある場合（Ｓ１４１：ＮＯ）、ＣＰＵ１１は、Ｓ１１１に移行して抽出されていないプリンタの１つを新たに抽出し、そのプリンタをプリンタリストに振り分ける。これらの処理を繰り返すことで、プリンタＤＢ１４１に記憶されている全てのプリンタについて、プリンタリストへの振り分けを行う。
【００３８】
プリンタＤＢ１４１に記憶されている全てのプリンタについて抽出した場合（Ｓ１４１：ＹＥＳ）、ＣＰＵ１１は、各プリンタリストについて、印刷可能残枚数が多い順に並べ替える（Ｓ１５１）。Ｓ１５１の後、プリンタ分配処理を終了する。
【００３９】
［印刷ジョブ送信処理］
次に、印刷ジョブ送信処理について、図７のフローチャートを参照しつつ説明する。印刷ジョブ送信処理は、印刷アプリ１４０がユーザからの印刷指示を受け付けたことを契機に、ＣＰＵ１１によって実行される。印刷ジョブ送信処理は、決定処理および送信処理の一例である。
【００４０】
具体的に印刷アプリ１４０は、図８に示すように、印刷指示を受け付ける印刷指示画面１７０を表示手段１７に表示させることが可能である。印刷指示画面１７０では、プリンタの選択を受け付けるプリンタ一覧リスト１７６と、印刷指示を入力する実行ボタン１７７と、印刷指示画面１７０を終了させるキャンセルボタン１７８と、が含まれる。このうちプリンタ一覧リスト１７６は、ユーザ操作によって出力先のプリンタを指定することが可能であり、ＰＣ１に接続するプリンタ２が一覧表示される。また、プリンタ一覧リスト１７６には、自動分配によって決定されたプリンタを出力先として指定することも可能であり、「分配プリンタ」を選択すると、出力先がＰＣ１によって自動分配されたプリンタとすることを示すパラメータが印刷ジョブに指定される。なお、プリンタ一覧リスト１７６に表示されるプリンタの順序は、「分配プリンタ」が先頭であり、最も選択し易く、以下は印刷可能残枚数順に並べられる。すなわち、印刷アプリ１４０は、印刷指示画面１７０を表示する際、前述したプリンタ分配処理にて生成された各プリンタリストに従って、プリンタ一覧リスト１７６にプリンタを登録する。
【００４１】
印刷ジョブ送信処理では、ＣＰＵ１１は先ず、受信した印刷ジョブに、出力先のプリンタが指定されているか否かを判断する（Ｓ２０１）。出力先のプリンタが指定されていない場合（Ｓ２０１：ＮＯ）、すなわち未指定印刷ジョブであった場合、ＣＰＵ１１は、出力先を決定して印刷ジョブを送信する分配印刷処理を実行する（Ｓ２０２）。分配印刷処理の詳細は後述する。
【００４２】
出力先のプリンタが指定されている場合（Ｓ２０１：ＹＥＳ）、ＣＰＵ１１は、出力先として指定されているプリンタである指定プリンタのステータスをプリンタＤＢ１４１から読み出し、先にそのプリンタに登録されていて完了していない印刷ジョブである先行印刷ジョブが有るか否かを判断する（Ｓ２１１）。先行印刷ジョブが無い場合（Ｓ２１１：ＮＯ）、ＣＰＵ１１は、通信ＩＦ１６を介して、指定プリンタに印刷ジョブを送信する（Ｓ２１２）。
【００４３】
先行印刷ジョブが有る場合（Ｓ２１１：ＹＥＳ）、指定印刷ジョブでは、先行印刷ジョブが完了しないと新たな印刷ジョブを開始しない。そこで、ＣＰＵ１１は、指定プリンタよりも早期に印刷ジョブの実行を開始できる他のプリンタを、ユーザに推奨する第１推奨表示処理を実行する（Ｓ２２１）。第１推奨表示処理の詳細な手順を、図９のフローチャートに示す。
【００４４】
第１推奨表示処理では、ＣＰＵ１１は先ず、指定プリンタでの印刷開始までの待ち時間を算出する（Ｓ３００）。待ち時間の算出は、プリンタＤＢ１４１を参照し、プリンタ種のスペックに基づく１枚当たりの印刷時間と、印刷残枚数に基づく先行印刷ジョブの残りの印刷枚数と、から算出できる。
【００４５】
Ｓ３００の後、ＣＰＵ１１は、プリンタＤＢ１４１を参照し、第１種プリンタリスト１４２から先行印刷ジョブが無いプリンタである先行ジョブ無プリンタを抽出する（Ｓ３０１）。そして、先行ジョブ無プリンタが抽出されたか否かを判断する（Ｓ３０２）。なお、第１種プリンタリスト１４２からプリンタを抽出するため、抽出されるプリンタは、第１種プリンタになる。
【００４６】
先行ジョブ無プリンタが抽出された場合（Ｓ３０２：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタが複数か否かを判断する（Ｓ３０３）。複数であった場合（Ｓ３０３：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタのうち、印刷可能残枚数が最大のプリンタを抽出する（Ｓ３０４）。代替プリンタの候補が複数あれば、印刷可能残枚数が最も多いプリンタを代替プリンタに決定することで、保守コストの低減が図られる。
【００４７】
Ｓ３０４の後、あるいは抽出された先行ジョブ無プリンタが１つであった場合（Ｓ３０３：ＮＯ）、ＣＰＵ１１は、図１０に示すような、抽出した第１種プリンタが、指定プリンタよりも先に印刷可能であることを示す推奨画面１７５を表示手段１７に表示させ、抽出した第１種プリンタでの印刷をユーザに推奨する（Ｓ３０５）。推奨画面１７５には、指定プリンタでの待ち時間と、推奨するプリンタである推奨プリンタでの待ち時間と、を表示する。Ｓ３０５では、推奨プリンタに先行印刷ジョブが無いため、待ち時間は０分になる。
【００４８】
先行ジョブ無プリンタが抽出されなかった場合（Ｓ３０２：ＮＯ）、ＣＰＵ１１は、プリンタＤＢ１４１を参照し、第２種プリンタリスト１４３から、先行ジョブ無プリンタかつ印刷可能なプリンタを抽出する（Ｓ３１１）。印刷不可能なプリンタとしては、受信した印刷ジョブを実行した場合に印刷ジョブが完了せずに印刷可能残枚数が０になるプリンタ、すなわち印刷ジョブを完了できないプリンタが該当する。そして、先行ジョブ無プリンタかつ印刷可能なプリンタが抽出されたか否かを判断する（Ｓ３１２）。なお、第２種プリンタリスト１４３からプリンタを抽出するため、抽出されるプリンタは、第２種プリンタになる。
【００４９】
先行ジョブ無プリンタかつ印刷可能なプリンタが抽出された場合（Ｓ３１２：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタが複数か否かを判断する（Ｓ３１３）。複数であった場合（Ｓ３１３：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタのうち、印刷可能残枚数が最大のプリンタを抽出する（Ｓ３１４）。
【００５０】
Ｓ３１４の後、あるいは抽出された先行ジョブ無プリンタが１つであった場合（Ｓ３１３：ＮＯ）、ＣＰＵ１１は、Ｓ３０５と同様に、抽出した第２種プリンタが、指定プリンタよりも先に印刷可能であることを示す推奨画面１７５を表示手段１７に表示させ、抽出した第２種プリンタでの印刷をユーザに推奨する（Ｓ３１５）。Ｓ３１５でも、推奨プリンタに先行印刷ジョブが無いため、待ち時間は０分になる。
【００５１】
先行ジョブ無プリンタかつ印刷可能なプリンタが抽出されなかった場合（Ｓ３１２：ＮＯ）、ＣＰＵ１１は、第１種プリンタリスト１４２から、各第１種プリンタでの待ち時間を算出する（Ｓ３２１）。そして、その中で最小の待ち時間となる第１種プリンタを抽出する（Ｓ３２２）。
【００５２】
Ｓ３２２の後、Ｓ３２２で抽出されたプリンタが指定プリンタと同じであった、もしくは第１種プリンタが無く抽出されなかったか、否かを判断する（Ｓ３２３）。Ｓ３２３の条件を満たさない場合（Ｓ３２３：ＮＯ）、ＣＰＵ１１は、Ｓ３２２で抽出された第１種プリンタが、指定プリンタよりも先に印刷可能であることを示す推奨画面１７５を表示手段１７に表示させ、抽出した第１種プリンタでの印刷をユーザに推奨する（Ｓ３２４）。Ｓ３２４では、抽出された第１種プリンタでの待ち時間を表示する。
【００５３】
Ｓ３２３の条件を満たす場合（Ｓ３２３：ＹＥＳ）、ＣＰＵ１１は、推奨するプリンタが無いことを決定する（Ｓ３２５）。この場合、推奨画面１７５は表示されない。Ｓ３０５、Ｓ３１５、Ｓ３２４、あるいはＳ３２５の後、第１推奨表示処理を終了する。
【００５４】
図７の説明に戻り、Ｓ２２１の後、ＣＰＵ１１は、代替するプリンタの推奨があったか否かを判断する（Ｓ２３１）。推奨が無かった場合（Ｓ２３１：ＮＯ）、すなわちＳ３２５にて推奨無しが決定された場合、ＣＰＵ１１は、通信ＩＦ１６を介して、指定プリンタに印刷ジョブを送信する（Ｓ２１２）。
【００５５】
推奨が有った場合（Ｓ２３１：ＹＥＳ）、すなわち推奨画面１７５を表示手段１７に表示させた場合、ＣＰＵ１１は、推奨プリンタでの印刷が選択されたか否かを判断する（Ｓ２３２）。推奨プリンタでの印刷が選択された場合（Ｓ２３２：ＹＥＳ）、ＣＰＵ１１は、通信ＩＦ１６を介して、推奨プリンタに印刷ジョブを送信する（Ｓ２３３）。完了時間が早いプリンタへの代替を選択可能にすることで、より早期に印刷ジョブを完了できる。一方、推奨プリンタでの印刷が選択されなかった場合（Ｓ２３２：ＮＯ）、ＣＰＵ１１は、通信ＩＦ１６を介して、指定プリンタに印刷ジョブを送信する（Ｓ２１２）。
【００５６】
Ｓ２０２、Ｓ２１２、あるいはＳ２３３の後、ＣＰＵ１１は、通信ＩＦ１６を介して、印刷ジョブの送信先のプリンタから印刷ジョブの完了通知を受信した、あるいは受信する前にタイムアウトになったことを契機に、印刷履歴ＤＢ１４５に、その印刷ジョブの情報を記憶する（Ｓ２４１）。Ｓ２４１は、記憶処理の一例である。Ｓ２４１の後、印刷ジョブ送信処理を終了する。
【００５７】
［分配印刷処理］
次に、Ｓ２０２の分配印刷処理について、図１１のフローチャートを参照しつつ説明する。
【００５８】
分配印刷処理では、ＣＰＵは先ず、第１種プリンタリストを参照し、第１種プリンタが所定数以上有るか否かを判断する（Ｓ４０１）。本形態では、所定数を２とする。なお、所定数は２に限るものではなく、１であってもよいし、３以上であってもよい。
【００５９】
第１種プリンタが所定数以上有る場合（Ｓ４０１：ＹＥＳ）、ＣＰＵ１１は、出力先のプリンタをユーザに選択させるプリンタ選択処理を実行する（Ｓ４０２）。プリンタ選択処理の詳細は後述する。
【００６０】
第１種プリンタが所定数以上無い場合（Ｓ４０１：ＮＯ）、ＣＰＵ１１は、第１種プリンタリスト１４２および第２種プリンタリスト１４３から、印刷可能なプリンタである印刷可能プリンタを抽出する（Ｓ４１１）。すなわち、受信した印刷ジョブを実行したとしても、実行途中で印刷可能残枚数が０にならずに印刷ジョブを完了できるプリンタを抽出する。
【００６１】
Ｓ４１１の後、ＣＰＵ１１は、印刷可能プリンタが抽出されたか否かを判断する（Ｓ４１２）。印刷可能プリンタが抽出されなかった場合（Ｓ４１２：ＮＯ）、保守タイミングに到達しており、ＣＰＵ１１は、保守点検タイミングに達した旨をユーザに報知する（Ｓ４１３）。
【００６２】
印刷可能プリンタが抽出された場合（Ｓ４１２：ＹＥＳ）、ＣＰＵ１１は、抽出された印刷可能プリンタの中からさらに、先行ジョブ無プリンタを抽出する（Ｓ４２１）。そして、先行ジョブ無プリンタが抽出されたか否かを判断する（Ｓ４２２）。
【００６３】
先行ジョブ無プリンタが抽出された場合（Ｓ４２２：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタが複数か否かを判断する（Ｓ４２３）。複数であった場合（Ｓ４２３：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタのうち、印刷可能残枚数が最大のプリンタを抽出する（Ｓ４２４）。
【００６４】
先行ジョブ無プリンタが抽出されなかった場合（Ｓ４２２：ＮＯ）、ＣＰＵ１１は、抽出された各印刷可能プリンタでの待ち時間を算出する（Ｓ４３１）。そして、その中で最小の待ち時間となる印刷可能プリンタを抽出する（Ｓ４３２）。
【００６５】
Ｓ４３２の後、Ｓ４２４の後、あるいは抽出された先行ジョブ無プリンタが１つであった場合（Ｓ４２３：ＮＯ）、ＣＰＵ１１は、通信ＩＦ１６を介して、最終的に抽出されているプリンタに印刷ジョブを送信する（Ｓ４３３）。すなわち、ＰＣ１は、待ち時間が０分のプリンタに優先して印刷ジョブを送信し、待ち時間が０分のプリンタが無ければ、待ち時間が最小のプリンタに印刷ジョブを送信する。印刷ジョブの完了時間が最も早いプリンタを選択することで、ユーザの不満が生じ難い。また、待ち時間が０分のプリンタが複数有れば、印刷可能残枚数が最大のプリンタに印刷ジョブが送信される。そのため、保守コストの低減も図られる。Ｓ４３３の後、Ｓ４１３の後、あるいはＳ４０２の後、分配印刷処理を終了する。
【００６６】
［プリンタ選択処理］
次に、Ｓ４０２のプリンタ選択処理について、図１２のフローチャートを参照しつつ説明する。
【００６７】
プリンタ選択処理では、ＣＰＵ１１は先ず、所定数以上有る第１種プリンタの中から出力先となるプリンタをユーザに選択させる選択画面１７１を表示手段１７に表示させ、入力手段１５を介してプリンタの選択を受け付ける（Ｓ５０１）。選択画面１７１では、第１種プリンタリスト１４２に登録されている順、すなわち印刷可能残枚数が多い順にプリンタを列記する。
【００６８】
Ｓ５０１にてプリンタの選択を受け付けた後、ＣＰＵ１１は、選択されたプリンタである選択プリンタに先行印刷ジョブが有るか否かを判断する（Ｓ５０２）。先行印刷ジョブが無い場合（Ｓ５０２：ＮＯ）、ＣＰＵ１１は、通信ＩＦ１６を介して、選択プリンタに印刷ジョブを送信する（Ｓ５０３）。
【００６９】
先行印刷ジョブが有る場合（Ｓ５０２：ＹＥＳ）、ＣＰＵ１１は、選択プリンタよりも早期に印刷ジョブの実行を開始できる他のプリンタを、ユーザに推奨する第２推奨表示処理を実行する（Ｓ５１１）。第２推奨表示処理の詳細な手順を、図１３のフローチャートに示す。
【００７０】
第２推奨表示処理では、ＣＰＵ１１は先ず、選択プリンタでの印刷開始までの待ち時間を算出する（Ｓ６００）。その後、ＣＰＵ１１は、プリンタＤＢ１４１を参照し、第１種プリンタリスト１４２から先行ジョブ無プリンタを抽出する（Ｓ６０１）。そして、先行ジョブ無プリンタが抽出されたか否かを判断する（Ｓ６０２）。
【００７１】
先行ジョブ無プリンタが抽出された場合（Ｓ６０２：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタが複数か否かを判断する（Ｓ６０３）。複数であった場合（Ｓ６０３：ＹＥＳ）、ＣＰＵ１１は、抽出された先行ジョブ無プリンタのうち、印刷可能残枚数が最大のプリンタを抽出する（Ｓ６０４）。代替プリンタの候補が複数あれば、印刷可能残枚数が最も多いプリンタを代替プリンタに決定することで、保守コストの低減が図られる。
【００７２】
Ｓ６０４の後、あるいは抽出された先行ジョブ無プリンタが１つであった場合（Ｓ６０３：ＮＯ）、ＣＰＵ１１は、Ｓ３０５と同様に、抽出した第１種プリンタが、選択プリンタよりも先に印刷可能であることを示す推奨画面１７５を表示手段１７に表示させ、抽出した第１種プリンタでの印刷をユーザに推奨する（Ｓ６０５）。推奨画面１７５には、選択プリンタでの待ち時間と、推奨するプリンタである推奨プリンタでの待ち時間と、を表示する。Ｓ６０５では、推奨プリンタに先行印刷ジョブが無いため、待ち時間は０分になる。
【００７３】
先行ジョブ無プリンタが抽出されなかった場合（Ｓ６０２：ＮＯ）、ＣＰＵ１１は、第１種プリンタリスト１４２から、各第１種プリンタでの待ち時間を算出する（Ｓ６１１）。そして、その中で最小の待ち時間となる第１種プリンタを抽出する（Ｓ６１２）。
【００７４】
Ｓ６１２の後、Ｓ６１２で抽出されたプリンタが選択プリンタと同じであったか否かを判断する（Ｓ６１３）。Ｓ６１２で抽出されたプリンタが選択プリンタと同じでなかった場合（Ｓ６１３：ＮＯ）、ＣＰＵ１１は、Ｓ６１２で抽出された第１種プリンタが、選択プリンタよりも先に印刷可能であることを示す推奨画面１７５を表示手段１７に表示させ、抽出した第１種プリンタでの印刷をユーザに推奨する（Ｓ６１４）。Ｓ６１４では、抽出された第１種プリンタでの待ち時間を表示する。
【００７５】
Ｓ６１２で抽出されたプリンタが選択プリンタと同じであった場合（Ｓ６１３：ＹＥＳ）、ＣＰＵ１１は、推奨するプリンタが無いことを決定する（Ｓ６１５）。この場合、推奨画面１７５は表示されない。Ｓ６０５、Ｓ６１４、あるいはＳ６１５の後、第２推奨表示処理を終了する。
【００７６】
図１２の説明に戻り、Ｓ５１１の後、ＣＰＵ１１は、代替するプリンタの推奨があったか否かを判断する（Ｓ５１２）。推奨が無かった場合（Ｓ５１２：ＮＯ）、すなわちＳ６１５にて推奨無しが決定された場合、ＣＰＵ１１は、通信ＩＦ１６を介して、選択プリンタに印刷ジョブを送信する（Ｓ５０３）。
【００７７】
推奨が有った場合（Ｓ５１２：ＹＥＳ）、すなわち推奨画面１７５を表示手段１７に表示させた場合、ＣＰＵ１１は、推奨プリンタでの印刷が選択されたか否かを判断する（Ｓ５１３）。推奨プリンタでの印刷が選択された場合（Ｓ５１３：ＹＥＳ）、ＣＰＵ１１は、通信ＩＦ１６を介して、推奨プリンタに印刷ジョブを送信する（Ｓ５１４）。完了時間が早いプリンタへの代替を選択可能にすることで、より早期に印刷ジョブを完了できる。一方、推奨プリンタでの印刷が選択されなかった場合（Ｓ５１３：ＮＯ）、ＣＰＵ１１は、通信ＩＦ１６を介して、選択プリンタに印刷ジョブを送信する（Ｓ５０３）。Ｓ５０３あるいはＳ５１４の後、プリンタ選択処理を終了する。
【００７８】
なお、図１１に示した分配印刷処理では、第１種プリンタが所定数以上無く（Ｓ４０１：ＮＯ）、かつ印刷可能プリンタが抽出された場合（Ｓ４１２：ＹＥＳ）、ＣＰＵ１１は、待ち時間が短いプリンタを優先して分配しているが、印刷可能残枚数が最も多いプリンタを優先してもよい。この場合、分配印刷処理では、図１４に示すように、第１種プリンタが所定数以上無く（Ｓ４０１：ＮＯ）、かつ印刷可能プリンタが抽出された場合（Ｓ４１２：ＹＥＳ）、ＣＰＵ１１は、抽出された印刷可能プリンタの中から印刷可能残枚数が最大のプリンタを抽出し（Ｓ４９１）、通信ＩＦ１６を介して、抽出したプリンタに印刷ジョブを送信する（Ｓ４３３）。これにより、印刷システム１００を構成する各プリンタ２について、印刷可能残枚数が均一化され、保守コストの低減が図られる。
【００７９】
本形態の印刷システム１００によれば、次のような効果が生じる。すなわち、ＰＣ１が全て分配先を自動的に決定すると、例えば極端に印刷可能残枚数が多いプリンタがある場合に、その特定のプリンタに印刷ジョブが集中する傾向にある。そのため、印刷完了までに時間がかかる問題や、特定のプリンタがユーザにとって不便な場所にある場合に、印刷物を取りに行く時間が増える問題が生じ得る。本形態によれば、ＰＣ１に接続されるプリンタ２を印刷可能残枚数に応じて区別し、印刷可能残枚数に余裕がある第１種プリンタが所定台数以上有る場合には、それら第１種プリンタの中からユーザに出力先を選択させることで、上記の問題が生じ難くなる。一方で、第１種プリンタが所定台数以上ない場合には、印刷可能残枚数が第１種プリンタよりも少ない第２種プリンタを含めて分配先を自動的に決定することで、保守コストの上昇や印刷ジョブが完了するまでの時間の遅延を抑える運用を図ることができる。
【００８０】
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、プリンタ２と接続する情報処理装置は、印刷ジョブを出力する機能を備えるデバイスであればよく、ＰＣに限らず、スマートフォン、モバイル装置であってもよい。また、ＰＣ１と接続されるプリンタ２は、印刷機能を備えるデバイスであればよく、コピー機、複合機、ファクシミリ装置であってもよい。
【００８１】
また、ＰＣ１とプリンタ２との間にプリンタサーバを配置し、プリンタサーバがＰＣ１から印刷ジョブを受け付け、プリンタサーバに組み込まれるプログラムが、受け付けた印刷ジョブの分配先を決定してもよい。
【００８２】
また、実施の形態では、第１閾値および第２閾値を、平均印刷枚数に基づく可変値としているが、例えば、入力手段１５を介して、ユーザによって設定されるものであってもよい。また、第１閾値および第２閾値を固定値としてもよい。
【００８３】
また、第１種プリンタが所定数以上あった場合のユーザによるプリンタの選択の際、選択画面１７１に印刷可能残枚数が多い順にプリンタを列記しているが、待ち時間が少ない順にプリンタを列記してもよい。
【００８４】
また、第１種プリンタが所定数以上あった場合のユーザによるプリンタの選択の際、先行印刷ジョブに、受け付けた印刷ジョブと同じユーザのものが有るプリンタが有る場合には、そのプリンタがある旨を選択画面１７１に表示してもよい。同じユーザの印刷ジョブをそれぞれ別のプリンタに出力してしまうと、印刷物を取りに行くユーザの手間が増える。そのため、先行印刷ジョブが有る場合にはその旨を報知することでユーザの手間を軽減できる。
【００８５】
また、第１種プリンタが所定数以上なかった場合のプリンタの自動分配の際、待ち時間ないし印刷可能枚数に基づいて分配先を自動的に決定しているが、例えば、待ち時間が最小のプリンタと、印刷可能残枚数が最大のプリンタと、を両方表示して、最終的にユーザに選択させてもよい。また、プリンタの自動分配の際のパラメータは、待ち時間や印刷可能枚数に限るものではなく、例えば各プリンタのＰＣ１との距離を用いてもよい。この場合、距離が短いプリンタほど優先的に分配先に選択する。
【００８６】
また、第１種プリンタが所定数以上なかった場合のプリンタの自動分配の際、先行印刷ジョブに、受け付けた印刷ジョブと同じユーザのものが有るプリンタが有る場合には、そのプリンタを分配先に決定してもよい。また、そのプリンタと、待ち時間ないし印刷可能枚数に基づく最適なプリンタと、どちらを送信先とするかをユーザに選択させてもよい。
【００８７】
また、実施の形態では、印刷ジョブにプリンタが指定されている場合や、第１種プリンタが所定数以上あった場合のユーザによるプリンタの選択があった場合に、第１推奨表示処理や第２推奨表示処理によって、より好適なプリンタの推奨を行っているが、これらの処理は行わなくてもよい。推奨を行わないことで、ユーザの操作の手間を軽減できる。
【００８８】
また、実施の形態に開示されている処理は、単一のＣＰＵ、複数のＣＰＵ、ＡＳＩＣなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【００８９】
１      ＰＣ
２      プリンタ
１６    通信ＩＦ
１００  印刷システム
１４１  プリンタＤＢ
１４５  印刷履歴ＤＢ
【図１】
2019175152.tif 000003
【図２】
2019175152.tif 000004
【図３】
2019175152.tif 000005
【図４】
2019175152.tif 000006
【図５】
2019175152.tif 000007
【図６】
2019175152.tif 000008
【図７】
2019175152.tif 000009
【図８】
2019175152.tif 000010
【図９】
2019175152.tif 000011
【図１０】
2019175152.tif 000012
【図１１】
2019175152.tif 000013
【図１２】
2019175152.tif 000014
【図１３】
2019175152.tif 000015
【図１４】
2019175152.tif 000016