(57)【要約】【課題】１つの印刷ジョブを複数のプリンタに分けて印刷する際に各プリンタでの印刷終了のタイミングを略一致させる。【解決手段】ネットワークプリンタシステムは、各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とに基づいて、印刷要求のあったドキュメントの総印刷枚数を複数のプリンタを使用して最短で印刷し終えるようにプリンタ毎に割り当てる割当印刷枚数を算出する。そして、プリンタ毎に算出された割当印刷枚数に従い、印刷要求のあったドキュメントを分割し、分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行する。【選択図】      図５
2010176635.tif 000002
【特許請求の範囲】
【請求項１】
ドキュメントの印刷要求に応じて印刷ジョブを発行する情報処理装置に、ネットワークを介して複数のプリンタを接続してなるネットワークプリンタシステムにおいて、
前記各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得する取得手段と、
印刷要求のあったドキュメントの総印刷枚数を複数のプリンタを使用して最短で印刷し終えるようにプリンタ毎に割り当てる割当印刷枚数を、前記取得手段により取得したプリンタ毎の印刷速度と印刷待ち時間とに基づいて算出する演算手段と、
前記演算手段によりプリンタ毎に算出された割当印刷枚数に従い、前記印刷要求のあったドキュメントを分割する分割手段とを具備し、
前記情報処理装置は、前記分割手段により割当印刷枚数に従い分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行することを特徴とするネットワークプリンタシステム。
【請求項２】
前記情報処理装置は、前記各プリンタの、少なくとも設置場所と個々の属性に関する情報とを表示する表示手段と、前記表示手段により少なくとも設置場所と個々の属性に関する情報とが表示される各プリンタの中から使用する複数のプリンタの選択入力を受付ける選択受付手段とを具備し、
前記取得手段は、前記選択受付手段により選択された複数のプリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得することを特徴とする請求項１記載のネットワークプリンタシステム。
【請求項３】
前記ネットワークに接続され、前記各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを管理するプリンタ管理サーバ、をさらに備え、
前記取得手段は、前記プリンタ管理サーバから、前記各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得することを特徴とする請求項１または２記載のネットワークプリンタシステム。
【請求項４】
前記分割手段により分割されたドキュメントを印刷するプリンタにおいて、少なくともそのプリンタで印刷するドキュメントの識別名と印刷ページ数とを報知する報知手段、
をさらに具備したことを特徴とする請求項１乃至３のうちいずれか１記載のネットワークプリンタシステム。
【請求項５】
ネットワークを介して複数のプリンタを接続してなり、ドキュメントの印刷要求に応じて印刷ジョブを発行する情報処理装置において、
前記各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得する取得手段と、
印刷要求のあったドキュメントの総印刷枚数を複数のプリンタを使用して最短で印刷し終えるようにプリンタ毎に割り当てる割当印刷枚数を、前記取得手段により取得したプリンタ毎の印刷速度と印刷待ち時間とに基づいて算出する演算手段と、
前記演算手段によりプリンタ毎に算出された割当印刷枚数に従い、前記印刷要求のあったドキュメントを分割する分割手段とを具備し、
前記分割手段により割当印刷枚数に従い分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行することを特徴とする情報処理装置。
【請求項６】
前記各プリンタの、少なくとも設置場所と個々の属性に関する情報とを表示する表示手段と、
前記表示手段により少なくとも設置場所と個々の属性に関する情報とが表示される各プリンタの中から使用する複数のプリンタの選択入力を受付ける選択受付手段と、をさらに具備し、
前記取得手段は、前記選択受付手段により選択入力を受付けた複数のプリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得することを特徴とする請求項５記載の情報処理装置。
【請求項７】
前記分割手段により分割されたドキュメントを印刷するプリンタ毎に、少なくともそのプリンタで印刷するドキュメントの識別名と印刷ページ数とが表記されるシートの印刷ジョブを編集する編集手段、をさらに具備し、
前記分割手段により割当印刷枚数に従い分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行した後、前記編集手段によりプリンタ毎に編集した印刷ジョブを、それぞれ該当するプリンタに発行することを特徴とする請求項５または６記載の情報処理装置。
【請求項８】
ネットワークを介して複数のプリンタを接続してなり、ドキュメントの印刷要求に応じて印刷ジョブを発行するコンピュータを、
前記各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得する取得手段と、
印刷要求のあったドキュメントの総印刷枚数を複数のプリンタを使用して最短で印刷し終えるようにプリンタ毎に割り当てる割当印刷枚数を、前記取得手段により取得したプリンタ毎の印刷速度と印刷待ち時間とに基づいて算出する演算手段と、
前記演算手段によりプリンタ毎に算出された割当印刷枚数に従い、前記印刷要求のあったドキュメントを分割する分割手段と、
前記分割手段により割当印刷枚数に従い分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行する手段、
として機能させるための印刷プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプリンタをネットワークで接続してなるネットワークプリンタシステム、及びプリンタに印刷ジョブを発行するパソコン等の情報処理装置、並びに、この情報処理装置に実装される印刷プログラムに関する。
【背景技術】
【０００２】
複数のプリンタをネットワークで接続してなるネットワークプリンタシステムは、企業体、学校等の施設で既に実用化されている。このシステムでは、ユーザがパソコン等の情報処理装置を用いて作成したドキュメント（文書ファイル・イメージファイル等）を印刷する際に、プリンタを選択可能である。情報処理装置は、選択されたプリンタに対してドキュメントの印刷ジョブを発行する。
【０００３】
ところで、例えば数百ページに及ぶ大量の印刷枚数を有するドキュメントを印刷する場合、１台のプリンタで印刷したのでは印刷完了までに長い時間を要する。また、そのプリンタを一人のユーザが占有してしまうという不具合がある。そこで、１つのドキュメントを、ネットワークで接続された複数のプリンタで分散して印刷することが考えられている。
【０００４】
特許文献１は、１つの印刷ジョブを複数台のプリンタに自動的に割り振る通信システムを開示する。この通信システムは、ページ毎に印刷データをキューイングする。そして、キューイングされた印刷データを、同一のデバイスＩＤを有する複数のプリンタに順番に配送する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−３２７８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１記載の技術では、１つの印刷ジョブが分けられる複数のプリンタの印刷待ち時間を考慮していない。このため、プリンタ間で印刷終了のタイミングが大きくずれる可能性がある。
【０００７】
本発明はこのような事情に基づいてなされたもので、その目的とするところは、１つの印刷ジョブを複数のプリンタに分けて印刷する際に各プリンタでの印刷終了のタイミングを略一致させることができ、ユーザが要求した印刷ジョブを効率的に印刷処理できるネットワークプリンタシステム及びこのシステムの情報処理装置並びにこの情報処理装置に実装される印刷プログラムを提供しようとするものである。
【課題を解決するための手段】
【０００８】
本発明は、ドキュメントの印刷要求に応じて印刷ジョブを発行する情報処理装置に、ネットワークを介して複数のプリンタを接続してなるネットワークプリンタシステムにおいて、各プリンタの、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得する取得手段と、印刷要求のあったドキュメントの総印刷枚数を複数のプリンタを使用して最短で印刷し終えるようにプリンタ毎に割り当てる割当印刷枚数を、取得手段により取得したプリンタ毎の印刷速度と印刷待ち時間とに基づいて算出する演算手段と、演算手段によりプリンタ毎に算出された割当印刷枚数に従い、印刷要求のあったドキュメントを分割する分割手段とを備える。情報処理装置は、分割手段により割当印刷枚数に従い分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行する。
【発明の効果】
【０００９】
かかる手段を講じた本発明によれば、１つの印刷ジョブを複数のプリンタに分けて印刷する際に各プリンタでの印刷終了のタイミングを略一致させることができ、ユーザが要求した印刷ジョブを効率的に印刷処理できる効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】本発明に係る第１の実施形態のネットワークプリンタシステムを示す概略構成図。
【図２】第１の実施形態に係るプリンタの基本構成を示すブロック図。
【図３】第１の実施形態において、第１〜第３プリンタのプリンタ情報領域にそれぞれ記憶されるプリンタ情報の一例を示す図。
【図４】第１の実施形態に係るパソコンの基本構成を示すブロック図。
【図５】第１の実施形態において、パソコンが有するプログラム実行手段の処理手順を示す流れ図。
【図６】図５における割当ページ数演算処理の手順を具体的に示す流れ図。
【図７】第１の実施形態において、プリンタが有する待ち時間計算手段の処理手順を示す流れ図。
【図８】第１の実施形態において表示される割当ページ数表示画面の一例を示す図。
【図９】第１の実施形態において印刷されるしおりページの一例を示す図。
【図１０】本発明に係る第２の実施形態のネットワークプリンタシステムを示す概略構成図。
【図１１】第２の実施形態に係るプリンタ管理サーバの基本構成を示すブロック図。
【図１２】第２の実施形態において、プリンタ管理サーバが有する待ち時間計算手段の処理手順を示す流れ図。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
本発明に係る第１の実施形態のネットワークプリンタシステムを図１に示す。本システムは、該システムが構築される施設（企業体、公共施設、学校等）内の各所に設置された複数台（図では３台）のプリンタ１０（第１プリンタ１０-1，第２プリンタ１０-2，第３プリンタ１０-3，…）を、ＬＡＮ（Local Area Network）等のネットワーク２０で接続する。また、このネットワーク２０に、情報処理装置の一態様であるパソコン３０を接続する。
【００１２】
本システムは、ユーザがパソコン３０を用いて作成した１つのドキュメント（文書ファイル・イメージファイル等）を、複数のプリンタ１０で分散して印刷することができる。
【００１３】
各プリンタ１０は、印刷機能のみを有する機器であっても、複合機等のように複数の機能を有する機器であってもよい。そして、各プリンタ１０は、印刷方式（例えばモノクロ印刷、カラー印刷等）や解像度等の機能はプリンタ毎に異なるものの、基本構成は共通である。そこで、第１プリンタ１０-1を代表とし、その基本構成を図２のブロック図で示す。
【００１４】
第１プリンタ１０-1は、印刷機構を駆動するプリンタエンジン部１１の他、通信部１２、記憶部１３及びこれらを制御する制御部１４を有する。第１プリンタ１０-1は、通信部１２を介してネットワーク２０に接続される。通信部１２は、ネットワーク２０を介して接続されるパソコン３０等とデータの送受信を行う。
【００１５】
記憶部１３は、印刷ジョブに関する情報を記憶するためのジョブ情報領域１３１と、プリンタに関する情報を記憶するためのプリンタ情報領域１３２とを有する。印刷ジョブに関する情報は、ジョブ識別名、ページ数、印刷データ等である。プリンタに関する情報は、プリンタ識別名やそのプリンタの設置場所を示す場所情報の他、印刷速度、解像度（dpi）、印刷方式、用紙種類等の個々の属性に関する情報を含む。印刷速度は、１分間で印刷可能な印刷枚数（枚／分）によって示される。記憶部１３は、例えばハードディスク装置で構成される。
【００１６】
なお、１台のプリンタが記憶するプリンタ情報は１種類に限定されるものではない。例えば印刷速度や解像度などは印刷の設定によっても異なる。このため、有効な設定に対応した複数のプリンタ情報を１台のプリンタが記憶してもよい。
【００１７】
制御部１４は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を主体に構成され、通信部１２を介して外部から入力される印刷ジョブ情報をジョブ情報領域１３１に入力順に書き込む機能と、ジョブ情報領域１３１に記憶した印刷ジョブ情報を入力順に呼出し、そのジョブ情報にしたがってプリンタエンジン部１１を駆動させる機能とを有する。また制御部１４は、印刷待ち時間計算手段１４１としての機能を有する。印刷待ち時間計算手段１４１については後述する。
【００１８】
第１プリンタ１０-1、第２プリンタ１０-2及び第３プリンタ１０-3のプリンタ情報領域１３２にそれぞれ記憶されるプリンタ情報の一例を図３に示す。図３において、データＤ１は第１プリンタ１０-1のプリンタ情報であり、データＤ２は第２プリンタ１０-2のプリンタ情報であり、データＤ３は第３プリンタ１０-3のプリンタ情報である。
【００１９】
パソコン３０の基本構成を、図４のブロック図で示す。パソコン３０は、ドキュメントの印刷要求に応じて印刷ジョブを発行する情報処理装置として機能する。  
図４に示すように、パソコン３０は、入力部３１、表示部３２、通信部３３、記憶部３４及びこれらを制御する制御部３５を備える。キーボード、ポインティングデバイス等が入力部３１として機能する。液晶ディスプレイ等が表示部３２として機能する。パソコン３０は、通信部３３を介してネットワーク２０に接続される。通信部３３は、ネットワーク２０を介して接続される各プリンタ１０等とデータの送受信を行う。
【００２０】
記憶部３４は、例えばハードディスク装置であり、印刷プログラム３４１を記憶する。制御部３５は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を主体に構成され、前記印刷プログラム３４１を実行するプログラム実行手段３５１としての機能を有する。
【００２１】
入力部３１を介してドキュメントの印刷要求が指令されると、制御部３５は、プログラム実行手段３５１により印刷プログラム３４１を起動する。印刷プログラム３４１が起動すると、制御部３５は、図５の流れ図に示す手順で各部を制御する。
【００２２】
先ず、制御部３５は、ＳＴ（ステップ）１としてネットワーク２０を介して接続される各プリンタ１０に、プリンタ情報の要求コマンドを送信する。このコマンドを受信したプリンタ１０の制御部１４は、プリンタ情報領域１３２で記憶しているプリンタ情報を呼出し、ネットワーク２０を介してコマンド送信元のパソコン３０に送信する。制御部３５は、各プリンタ１０から受信したプリンタ情報をプリンタ別に記憶部３４で記憶する。
【００２３】
制御部３５は、ＳＴ２としてプリンタ情報を取得し終えたか否かを判断する。ネットワーク２０に接続されたプリンタの中には、主電源が投入されていないプリンタが存在し得る。主電源が投入されていないプリンタに対して要求コマンドが送信されても、このプリンタは、プリンタ情報を応答しない。このため、制御部３５は、全てのプリンタからプリンタ情報を取得できなくても、要求コマンドを送信してから一定時間が経過すると、取得完了とみなす。取得完了を確認すると（ＳＴ２のＹＥＳ）、制御部３５は、ＳＴ３として各プリンタ１０から取得したプリンタ情報を表示部３２に表示させる（表示手段）。なお、プリンタに紙詰まり、用紙切れ、トナー切れ等のエラーが発生している場合には、このエラー情報をプリンタ情報の一部として表示させてもよい。
【００２４】
ＳＴ１〜ＳＴ３の処理により、ネットワーク２０に接続された各プリンタ１０のうち、印刷動作が可能なプリンタ１０のプリンタ情報が、パソコン３０の表示部３２に表示される。したがって、パソコン３０のユーザは、表示内容から、印刷可能なプリンタの設置場所や、印刷速度、解像度、印刷形式、使用可能な用紙の種類等の属性に関する情報を確認できる。そこでユーザは、入力部３１を操作して、ドキュメントの印刷に適したプリンタを選択する。このときユーザは、複数台のプリンタを同時に選択することができる。
【００２５】
制御部３５は、ＳＴ４としてプリンタ１０が選択されるのを待機する（選択受付手段）。入力部３１を介してプリンタ１０が選択されたならば（ＳＴ４のＹＥＳ）、制御部３５は、ＳＴ５として選択台数は１台であるか複数台であるかを判断する。選択台数が１台であった場合には（ＳＴ５のＮＯ）、制御部３５は、ＳＴ６としてその選択されたプリンタ１０に、印刷要求があったドキュメントの印刷ジョブを発行する。以上で、制御部３５は、今回の処理を終了する。
【００２６】
ドキュメントを印刷するプリンタとして複数台が選択された場合には（ＳＴ５のＹＥＳ）、制御部３５は、ＳＴ７としてその選択された各プリンタ１０に、印刷待ち時間の要求コマンドを送信する。このコマンドを受信した各プリンタ１０の制御部１４は、待ち時間計算手段１４１を起動する。
【００２７】
待ち時間計算手段１４１が起動したプリンタ１０の制御部１４は、図７の流れ図に示す手順の処理を実行する。先ず、ＳＴ４１としてプリンタ情報領域１３２からプリンタ情報として設定されている印刷速度を取得する。また、ＳＴ４２としてジョブ情報領域１３１に記憶されている印刷ジョブ情報から残りの印刷枚数を取得する。なお、先に印刷枚数を取得し、後から印刷速度を取得してもよい。
【００２８】
印刷枚数と印刷速度とを取得すると、制御部１４は、ＳＴ４３としてその印刷枚数に印刷速度を乗算して印刷待ち時間を算出する。この印刷待ち時間は、ジョブ情報領域１３１に既に記憶されている印刷ジョブ情報の印刷が完了するまでに要する時間である。印刷待ち時間を算出したならば、制御部１４は、ＳＴ４４としてこの印刷待ち時間の情報を、ネットワーク２０を介して要求コマンド送信元のパソコン３０に送信する。以上で、制御部１４は、今回の処理を終了する。
【００２９】
制御部３５は、各プリンタ１０から印刷待ち時間情報を受信する毎に、この印刷待ち時間情報をプリンタ別に記憶部３４で記憶する。制御部３５は、ＳＴ８として印刷待ち時間情報を取得し終えたか否かを判断する。要求コマンドの送信先である全てのプリンタ１０の印刷待ち時間情報を記憶したならば、制御部３５は、取得完了とみなす。
【００３０】
ここに、制御部３５は、ＳＴ１〜ＳＴ８の処理により、各プリンタ１０の、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得する取得手段を構成する。取得手段は、選択受付手段（ＳＴ４）により選択された複数のプリンタ１０の、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得する。
【００３１】
印刷待ち時間情報を取得し終えると（ＳＴ８のＹＥＳ）、制御部３５は、ＳＴ９として割当ページ数演算処理を実行する。この処理は、印刷要求のあったドキュメントの総印刷枚数を、選択された複数のプリンタ１０を使用して最短で印刷し終えるようにプリンタ１０毎に割り当てる割当印刷枚数を算出する処理である。
【００３２】
具体的には、選択された複数のプリンタ１０のなかで、印刷待ち時間が一番短いプリンタと２番目に短いプリンタとの印刷待ち時間の時間差を求め、この時間差の間に、印刷待ち時間が一番短いプリンタで印刷できる枚数を計算する。次に、印刷待ち時間が２番目に短いプリンタと３番目に短いプリンタとの印刷待ち時間の時間差を求め、この時間差の間に、印刷待ち時間が一番短いプリンタ及び２番目に短いプリンタでそれぞれ印刷できる枚数を計算する。以後、各プリンタへの割当印刷枚数の総和がドキュメントの総印刷枚数に達するまで、印刷待ち時間の短い順にプリンタを選択して、同様の処理を行う。そして、印刷待ち時間が最も長いプリンタと次に長いプリンタとの印刷待ち時間の時間差の間に、印刷待ち時間が一番短いプリンタから最も長いプリンタの次に長いプリンタまでの各プリンタでそれぞれ印刷できる枚数を計算しても、各プリンタへの割当印刷枚数の総和がドキュメントの総印刷枚数に達しない場合には、その残りの印刷枚数を、印刷速度に比例して各プリンタに配分する。さらに、残りがある場合は、印刷速度が高速なプリンタから１枚ずつ順に割り当てる。
【００３３】
以上の手順により、印刷要求のあったドキュメントの総印刷枚数を、選択された複数のプリンタを使用して最短で印刷し終えるように、プリンタ毎に割当印刷枚数が算出される。このような割当印刷枚数演算処理は、図６の流れ図によって示される。
【００３４】
はじめに、ユーザが選択したプリンタ１０の集合をＰとし、集合Ｐの要素数（プリンタ数）をｅとする。また、集合Ｐの任意の要素（プリンタ）をｐｈと表わし、要素（プリンタ）ｐｈの印刷速度をＳｈと表わす。要素（プリンタ）ｐｈ毎に、初期値が“０”である変数Ｃｈを割り当てる。変数Ｃｈは、その要素（プリンタ）ｐｈに割り当てられる印刷枚数を示す。変数Ｃｈは、整数部をＣαｈ、小数部をＣβｈとしたとき、Ｃαｈ＋Ｃβｈで表わされる。さらに、ユーザが選択したプリンタ１０において、印刷待ち時間がｉ番目に短いプリンタの集合をＰｉとし、集合Ｐｉの任意の要素（プリンタ）をｐｈｉと表わす。また、要素（プリンタ）Ｐｈｊの印刷待ち時間をｔｉｊと表わし、印刷速度をＳｉｊと表わす。この他、印刷待ち時間が１番目からｉ番目までに含まれるプリンタ１０の台数をｍｉとし、Ｓｉ→Ｓの写像をｆとし、印刷要求のあったドキュメントの総印刷枚数をＸtotalとする。
【００３５】
制御部３５は、先ず、ＳＴ２１として変数Ｘｓｕｍに“０”を代入する。また、制御部３５は、ＳＴ２２として変数ｉに“１”を代入する。変数Ｘｓｕｍは、要素（プリンタ）ｐｈに割り当てた印刷枚数の総和である。変数ｉは、順番を示す。
【００３６】
制御部３５は、次に、ＳＴ２３として［ｔｉ＋１＞ｔｉ］となる印刷待ち時間ｔｉ＋１が存在するか否かをチェックする。すなわち、印刷待ち時間が最も長いプリンタに対する処理であるか否かを判断する。存在する場合、すなわち、印刷待ち時間が最も長いプリンタに対する処理でない場合には、制御部３５は、ＳＴ２４として次の（１）式を演算して、その解Ａを求める。この解Ａは、印刷待ち時間が短いプリンタとその次に短いプリンタとの印刷待ち時間の時間差の間に、印刷待ち時間が短いプリンタで印刷できる枚数である。
【００３７】
【数１】
2010176635.tif 000003
【００３８】
次に、制御部３５は、ＳＴ２５として解Ａが総印刷枚数Ｘｔｏｔａｌから変数Ｘｓｕｍを減算した値、すなわち残りの印刷枚数より小さいか否かを判断する。小さい場合、制御部３５は、ＳＴ２６として変数Ｌに“１”を代入する。
【００３９】
次に、制御部３５は、ＳＴ２７として変数Ｌが集合Ｐの要素数ｅに達したか否かを判断する。達していない場合、制御部３５は、ＳＴ２８として変数ＣＬに［（ｔｉ＋１−ｔｉ）ｆ（ＳｉＬ）＋ＣＬ］を代入する。
【００４０】
しかる後、制御部３５は、ＳＴ２９として変数Ｌに“１”を加算する。そして、ＳＴ２７に戻り、変数Ｌが要素数ｅに達したか否かを判断する。このＳＴ２６〜ＳＴ２９の処理ステップにより、制御部３５は、変数Ｌが要素数ｅに達するまで、変数ＣＬに［（ｔｉ＋１−ｔｉ）ｆ（ＳｉＬ）＋ＣＬ］を代入する処理を繰り返す。変数ＣＬは、印刷待ち時間がＬ番目に短いプリンタに対する現時点の割当印刷枚数である。
【００４１】
変数Ｌが要素数ｅに達したならば（ＳＴ２７のＹＥＳ）、制御部３５は、ＳＴ３０として変数ｉを“１”だけ加算する。また、ＳＴ３１として変数Ｘｓｕｍに、変数Ｃ１〜Ｃｅの総和を代入する。
【００４２】
制御部３５は、ＳＴ２３に戻り、再度、［ｔｉ＋１＞ｔｉ］となる印刷待ち時間ｔｉ＋１が存在するか否かをチェックする。存在する場合、制御部３５は、ＳＴ２４〜ＳＴ３１の処理を再度実行する。
【００４３】
［ｔｉ＋１＞ｔｉ］となる印刷待ち時間ｔｉ＋１が存在しない場合（ＳＴ２３のＮＯ）、あるいは、解Ａが総印刷枚数Ｘｔｏｔａｌから変数Ｘｓｕｍを減算した値以上となった場合（ＳＴ２５のＮＯ）、制御部３５は、ＳＴ３２として変数Ｌに“１”を代入する。
【００４４】
次に、制御部３５は、ＳＴ３３として変数Ｌが集合Ｐの要素数ｅに達したか否かを判断する。達していない場合、制御部３５は、ＳＴ３４として次の（２）式を演算して解Ｂを求める。この解Ｂは、印刷待ち時間がＬ番目のプリンタにおける印刷速度と、選択された全てのプリンタの印刷速度の総和との比である。
【００４５】
【数２】
2010176635.tif 000004
【００４６】
制御部３５は、ＳＴ３５として、この解Ｂに、総印刷枚数Ｘｔｏｔａｌから変数Ｘｓｕｍを減じた数（残りの印刷枚数）を掛け合わした数を、現状の変数ＣＬに加算する。
【００４７】
しかる後、制御部３５は、ＳＴ３６として変数Ｌに“１”を加算する。そして、ＳＴ３３に戻り、変数Ｌが要素数ｅに達したか否かを判断する。このＳＴ３２〜ＳＴ３６の処理ステップにより、制御部３５は、変数Ｌが要素数ｅに達するまで、変数ＣＬにＢ（Ｘｔｏｔａｌ−Ｘｓｕｍ）＋ＣＬを代入する処理を繰り返す。
【００４８】
変数Ｌが要素数ｅに達したならば（ＳＴ３３のＹＥＳ）、制御部３５は、ＳＴ３７として変数Ｃ１〜Ｃｅの小数部である変数Ｃβ１〜Ｃβｅの総和を算出し、この総和を、集合Ｐの任意の要素Ｐｈの中で印刷速度が最も高速のプリンタから順に１つずつ割り当てる。
【００４９】
以上の演算処理により、選択したプリンタである要素Ｐｈ毎に割り当てられた変数Ｃｈの整数部Ｃａｈに、ＳＴ３７の処理で割り当てた枚数を加えた数が、要素Ｐｈの割当印刷枚数として算出される（演算手段）。
【００５０】
こうして、各プリンタへの割当印刷枚数を算出したならば、制御部３５は、ＳＴ１０としてその各プリンタへの割当印刷枚数に応じて、印刷要求があったドキュメントを分割する。このとき、各プリンタでそれぞれ印刷されるドキュメントは、ページが必ず連続するように分割する（分割手段）。
【００５１】
制御部３５は、ＳＴ１１として各プリンタへの割当印刷枚数を表示部３２に表示させる。このとき、図８に示すように、各プリンタへの割当印刷枚数をそのプリンタで印刷されるドキュメントのページ数として表示させてもよい。制御部３５は、ＳＴ１２として確認入力がなされるのを待機する。入力部３１を介して確認入力が行われたことを検知すると（ＳＴ１３のＹＥＳ）、制御部３５は、ＳＴ１３として割当印刷枚数に従い分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタ１０に発行する。
【００５２】
しかる後、制御部３５は、ＳＴ１４として分割されたドキュメントを印刷するプリンタ１０毎に、少なくともそのプリンタ１０で印刷するドキュメントの識別名と印刷ページ数とが表記されたシート（「しおりページ」と称する）の印刷ジョブを編集する（編集手段）。そして制御部３５は、ＳＴ１５としてプリンタ毎に編集した「しおりページ」の印刷ジョブを、それぞれ該当するプリンタ１０に発行する。以上で、制御部３５は、今回の処理を終了する。
【００５３】
今、パソコン３０のユーザが、総印刷枚数５００枚のドキュメント［帳票１］を、第１〜第３プリンタ１０-1〜１０-３で印刷する場合を想定する。なお、第１プリンタ１０-1の印刷待ち時間を０［分］、印刷速度を１０［枚／分］とし、第２プリンタ１０-2の印刷待ち時間を０．５［分］、印刷速度を５０［枚／分］とし、第３プリンタ１０-3の印刷待ち時間を１［分］、印刷速度を１００［枚／分］とする。
【００５４】
この場合、図６に示す割当ページ数演算処理において、ｉ＝１のとき、ＳＴ２３で“ＹＥＳ”と判定されるので、ＳＴ２４として、解Ａ＝５が算出される。この解Ａ＝５は、［Ｘｔｏｔａｌ−Ｘｓｕｍ］＝５００より小さいので、ＳＴ２６〜ＳＴ２９の処理により、印刷待ち時間が最も短い第１プリンタ１０-1に対する割当印刷枚数Ｃ１として“５”が代入される。このとき、変数Ｘｓｕｍは“５”となる。
【００５５】
次に、ｉ＝２のとき、ＳＴ２３で“ＹＥＳ”と判定されるので、ＳＴ２４として、解Ａ＝３０が算出される。この解Ａ＝３０は、［Ｘｔｏｔａｌ−Ｘｓｕｍ］＝４９５より小さいので、ＳＴ２６〜ＳＴ２９の処理により、印刷待ち時間が最も短い第１プリンタ１０-1に対する割当印刷枚数Ｃ１として“５”が加算され、印刷待ち時間が２番目に短い第２プリンタ１０-2に対する割当印刷枚数Ｃ２として“２５”が代入される。このとき、変数Ｘｓｕｍは“３５”となる。
【００５６】
次に、ｉ＝３のとき、ＳＴ２３で“ＮＯ”と判定されるので、ＳＴ３２〜ＳＴ３６の処理により、印刷待ち時間が最も短い第１プリンタ１０-1に対する割当印刷枚数Ｃ１が、下記（３）式により“39.0625”と算出され、印刷待ち時間が２番目に短い第２プリンタ１０-2に対する割当印刷枚数Ｃ２が、下記（４）式により“170.3125”と算出され、印刷待ち時間が最も長い第３プリンタ１０-3に対する割当印刷枚数Ｃ３が、下記（５）式により“290.625”と算出される。
【００５７】
Ｃ１＝［｛ 10/(10+50+100)｝×465］＋10          …（３）
Ｃ２＝［｛ 50/(10+50+100)｝×465］＋25          …（４）
Ｃ３＝［｛100/(10+50+100)｝×465］＋ 0          …（５）
さらに、ＳＴ３７の処理により、［0.0625+0.3125+0.625］＝１が、印刷速度が最も高速の第３プリンタ１０-3に割り当てられる。かくして、総印刷枚数５００枚は、第１プリンタ１０-1に対して３９枚が割り当てられ、第２プリンタ１０-2に対して１７０枚が割り当てられ、第３プリンタ１０-2に対して２９１枚が割り当てられる。
【００５８】
その結果、印刷要求があった１〜５００ページまでのドキュメント［帳票１］は、第１プリンタ１０-1で印刷される１〜３９ページまでの３９枚のドキュメントと、第２プリンタ１０-2で印刷される４０〜２０９ページまでの１７０枚のドキュメントと、第３プリンタ１０-3で印刷される２１０〜５００ページまでの２９１枚のドキュメントとに分割される。そして表示部３２に、図８に示す画面５０が表示される。
【００５９】
ユーザは、画面５０の内容から、ドキュメント［帳票１］は、３０１会議室のプリンタｐｒ１で１〜３９ページまでが印刷され、３０２会議室のプリンタｐｒ２で４０〜２０９ページまでが印刷され、３０３会議室のプリンタｐｒ３で２１０〜５００ページまでが印刷されることを確認できる。
【００６０】
確認した後、ユーザは、入力部３１を操作して、画面上の確認ボタン５１を入力する。そうすると、第１プリンタ１０-1では、ドキュメント［帳票１］の１頁目〜３９頁目までが、待ち時間無しに印刷速度１０［枚／分］で印刷され、第２プリンタ１０-2では、ドキュメント［帳票１］の４０頁目〜２０９頁目までが、０．５分の待ち時間の経過後に印刷速度５０［枚／分］で印刷され、第３プリンタ１０-3では、ドキュメント［帳票１］の２１０頁目〜５００頁目までが、１分の待ち時間の経過後に印刷速度１００［枚／分］で印刷される。
【００６１】
その結果、第１のプリンタ１０-1と第２のプリンタ１０-2は、３．９分で印刷が完了し、第３のプリンタ１０-2は、３．９１分で印刷が完了する。すなわち、総印刷枚数５００頁のドキュメント［帳票１］は、３台のプリンタにより略３．９分後に同時に印刷が完了する。
【００６２】
このように、１つの印刷ジョブを複数のプリンタに振り分けて印刷する際には、プリンタの占有時間を最短にするとともに印刷終了のタイミングを略一致させることができる。したがって、ユーザが要求した印刷ジョブが大量のドキュメントであっても、短時間で効率的に印刷処理することができる。
【００６３】
また、１つのプリンタから印刷されるドキュメントのページは連続している。このため、ユーザは、各プリンタから印刷された印刷物を順番に集めるだけで、ページが揃えられるので、ページを揃えなおす手間がない。
【００６４】
また、ドキュメントの印刷終了後、第１プリンタ１０-1では、図９（ａ）で示すようなしおりページ６１が印刷され、第２プリンタ１０-2では、図９（ｂ）で示すようなしおりページ６２が印刷され、第３のプリンタ１０-3では、図９（ｃ）で示すようなしおりページ６３が印刷される（報知手段）。したがって、ユーザは、これらのしおりページ６１，６２，６３を見るだけで、ドキュメントの何頁目が印刷されたのかを容易に確認できるメリットもある。
【００６５】
（第２の実施形態）
本発明に係る第２の実施形態のネットワークプリンタシステムを図１０に示す。なお、図１と共通する構成要素には同一符号を付し、その詳しい説明は省略する。
【００６６】
第２の実施形態では、ネットワーク２０に、プリンタ管理サーバ７０を接続する。プリンタ管理サーバ７０は、各プリンタ１０を統轄管理するコンピュータであり、その基本構成を、図１１のブロック図で示す。
【００６７】
図１１に示すように、プリンタ管理サーバ７０は、通信部７１、記憶部７２及びこれらを制御する制御部７３を備える。プリンタ管理サーバ７０は、通信部７１を介してネットワーク２０に接続される。通信部７１は、ネットワーク２０を介して接続されるパソコン３０や各プリンタ１０等とデータの送受信を行う。
【００６８】
記憶部７２は、第１の実施の形態では各プリンタ１０がそれぞれ記憶部１３で記憶していた印刷ジョブ情報及びプリンタ情報を、まとめてプリンタ別に記憶するプリンタ別情報ファイル７２１，７２２，７２３，…を有する。
【００６９】
制御部７３１は、通信部７１を介して外部から入力されるプリンタ毎の印刷ジョブ情報をそのプリンタに該当するプリンタ別情報ファイル７２１，７２２，７２３，…に入力順に書き込む機能と、プリンタ別情報ファイル７２１，７２２，７２３，…に記憶した印刷ジョブ情報を入力順に呼出し、該当するプリンタ１０に転送する機能とを有する。また、制御部７３１は、後述する印刷待ち時間計算手段７３１としての機能を有する。
【００７０】
かかる構成の第２の実施の形態において、パソコン３０の制御部３５は、プログラム実行手段３５１により、第１の実施の形態で説明した図５の流れ図と略同様の処理手順を実行する。
【００７１】
ただし、ＳＴ１において、第１の実施の形態では、各プリンタ１０にプリンタ情報を要求していたが、第２の実施の形態では、プリンタ管理サーバ７０に各プリンタ１０のプリンタ情報を要求する。また、ＳＴ７において、第１の実施の形態では、選択された複数のプリンタ１０に印刷待ち時間を要求していたが、第２の実施の形態では、プリンタ管理サーバ７０に選択された複数のプリンタの識別情報とともに印刷待ち時間を要求する。さらに、ＳＴ１３及びＳＴ１５において、第１の実施の形態では、選択された複数のプリンタ１０に印刷所部情報を発行していたが、第２の実施の形態では、プリンタ管理サーバ７０を経由して選択された複数のプリンタに印刷ジョブ情報を発行する。
【００７２】
一方、印刷待ち時間の要求コマンドを受信したプリンタ管理サーバ７０の制御部７３は、待ち時間計算手段７３１を起動する。待ち時間計算手段７３１が起動したプリンタ管理サーバ７０の制御部７３は、図１２の流れ図に示す手順の処理を実行する。
【００７３】
先ず、制御部７３は、ＳＴ５１としてコマンド送信元のパソコン３０にて選択されたプリンタ数を変数Ｎに代入する。また、制御部７３は、ＳＴ５２として変数ｎに“０”を代入する。
【００７４】
次に、制御部７３は、ＳＴ５３として変数ｎに“１”を加算する。そして、ＳＴ５４として変数ｎが変数Ｎを超えたか否かを判断する。変数ｎが変数Ｎを超えていない場合（ＳＴ５４のＮＯ）、制御部７３は、ＳＴ５５として変数ｎ番目のプリンタ識別情報で特定されるプリンタのプリンタ別情報ファイル７２１，７２２，７２３，…を検索する。そして、ＳＴ５６としてそのプリンタ別情報ファイル７２１，７２２，７２３，…に記憶されているプリンタ情報から印刷速度を取得する。また、ＳＴ５７としてそのプリンタ別情報ファイル７２１，７２２，７２３，…に記憶されている印刷ジョブ情報から残りの印刷枚数を取得する。なお、先に印刷枚数を取得し、後から印刷速度を取得してもよい。
【００７５】
印刷枚数と印刷速度とを取得すると、制御部３５は、ＳＴ５８としてその印刷枚数に印刷速度を乗算して印刷待ち時間を算出する。制御部３５は、算出した印刷待ち時間を変数ｎ番目のプリンタ識別情報と関連付けて、記憶部７２で記憶する。
【００７６】
制御部３５は、ＳＴ５３に戻り、変数ｎに“１”を加算する。以後、制御部３５は、変数ｎが変数Ｎを超えるまで、ＳＴ５５〜ＳＴ５８の処理を繰返し実行する。変数ｎが変数Ｎを超えたならば、制御部３５は、ＳＴ５９としてＮ個のプリンタ識別情報とそれぞれに関連付けて記憶している印刷待ち時間の情報とを、ネットワーク２０を介して要求コマンド送信元のパソコン３０に送信する。以上で、制御部３５は、今回の処理を終了する。
【００７７】
このように、第２の実施の形態では、パソコン３０は、プリンタ管理サーバ７０から、各プリンタ１０の、個々に設定されている印刷速度と現時点の印刷待ち時間とを取得するようにしている。このため、第１の実施の形態では、各プリンタ１０がそれぞれ待ち時間計算手段１４１を実装したが、第２の実施の形態では、プリンタ管理サーバ７０のみが待ち時間計算手段７３１を実装すればよい。したがって、各プリンタ１０の処理負荷を軽減することができる。また、待ち時間計算手段７３１のメンテナンスも容易となる。
【００７８】
なお、この発明は前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。
【００７９】
前記実施の形態では、印刷速度と残りの印刷枚数とからプリンタの印刷待ち時間を算出したが、待ち時間の計算方法はこれに限定されるものではない。例えばプリンタには、プリンタ情報として、ステイプルやホールパンチなどのフィニッシング情報やフィニッシング処理時間を記憶しているものがある。そこで、これらのフィニッシング情報やフィニッシング処理時間からフィニッシングにかかる時間を算出し、この時間を、印刷速度と残りの印刷枚数とから算出される印刷待ち時間に加算してもよい。
【００８０】
また、前記実施の形態では、報知手段として「しおりページ」を印刷する場合を示したが、報知手段はこれに限定されるものではない。例えば、「しおりページ」に印刷される情報を、プリンタが備える表示部に表示させて、ユーザに報知してもよい。
【００８１】
また、前記実施の形態では、ユーザがドキュメント印刷先のプリンタを選択するようにしたが、必ずしもユーザに選択させる必要はない。すなわち、常にネットワーク２０に接続される全てのプリンタ１０で１つのドキュメントを分割印刷するシステムにも、本発明は同様に適用できるものである。
【００８２】
また、前記実施の形態では、取得手段、割当演算手段及び分割手段を、情報処理装置でるパソコン３０が具備するものとして説明をしたが、例えば第２の実施の形態の場合、取得手段及び割当演算手段をプリンタ管理サーバ７０が具備し、パソコン３０は、プリンタ管理サーバから通知を受けた割当印刷枚数に従い、分割手段によってドキュメントを分割し、その分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行するようにしてもよい。また、分割手段もプリンタ管理サーバ７０が具備し、パソコン３０は、分割手段によって分割されたドキュメント毎の印刷ジョブを、それぞれその割当印刷枚数が割り当てられた各プリンタに発行するだけであってもよい。
【００８３】
また、前記実施の形態では、パソコン３０の内部に印刷プログラム３４１が予め記録されている場合で説明をしたが、これに限らず印刷プログラム３４１をネットワークからパソコン３０にダウンロードしても良いし、印刷プログラム３４１を記録媒体に記憶させたものをパソコン３０にインストールしてもよい。記録媒体としては、ＣＤ−ＲＯＭ等プログラムを記憶でき、かつパソコン３０が読み取り可能な記録媒体であれば、その形態は何れの形態であっても良い。またこのように予めインストールやダウンロードにより得る機能はパソコン３０内部のＯＳ（オペレーティング・システム）等と協働してその機能を実現させるものであってもよい。
【００８４】
この他、前記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を組合わせてもよい。
【符号の説明】
【００８５】
１０（１０-1、１０-2、１０-3、…）…プリンタ、２０…ネットラーク、３０…パソコン（情報処理装置）、７０…プリンタ管理サーバ、１４１…待ち時間計算手段、３４１…印刷プログラム、３５１…プログラム実行手段。
【図１】
2010176635.tif 000005
【図２】
2010176635.tif 000006
【図３】
2010176635.tif 000007
【図４】
2010176635.tif 000008
【図５】
2010176635.tif 000009
【図６】
2010176635.tif 000010
【図７】
2010176635.tif 000011
【図８】
2010176635.tif 000012
【図９】
2010176635.tif 000013
【図１０】
2010176635.tif 000014
【図１１】
2010176635.tif 000015
【図１２】
2010176635.tif 000016