(57)【要約】【課題】投入ジョブの自動割当において、各プリンタにジョブの自動割当対象とするか否かを選択可能として、利用者の利便性を高めた印刷制御システムを提供する。【解決手段】この印刷制御システム２０は、以下の処理部以外にも必要とされる処理部は考えられるが、本発明に関連する処理部のみを説明する。印刷制御システム２０は、大きく分けてプリンタグループ部３０とプリンタ部４０により構成される。プリンタグループ部３０は、投入ジョブ制御部３２、代行ジョブ制御部３３、ジョブ待ち行列制御部３４からなるジョブ制御部３１およびイベント受付部３５から構成される。またプリンタ部４０は、印刷処理部４１、機器監視部４２および属性情報管理部４３から構成される。【選択図】      図３
2004227499.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上に印刷ジョブを投入する複数のクライアント、複数のプリンタ及び印刷制御システムを搭載した印刷サーバを備えるネットワークプリンタシステムであって、
前記印刷制御システムは、前記プリンタをグループとして管理するプリンタグループ管理手段と、グループ内の各プリンタの負荷分散を考慮し、負荷が適切なプリンタに自動的に投入ジョブを割り当てる投入ジョブ割当手段と、前記グループ内の各プリンタ毎に印刷順番が来るまでジョブを留める待ち行列手段とを備え、
前記投入ジョブ割当手段は、前記グループ内の各プリンタに対して、投入ジョブの自動割当の対象プリンタとするか否かの設定を選択可能とすることを特徴とするネットワークプリンタシステム。
【請求項２】
ネットワーク上に印刷ジョブを投入する複数のクライアント、複数のプリンタ及び印刷制御システムを搭載した印刷サーバを備えるネットワークプリンタシステムであって、
前記印刷制御システムは、前記プリンタをグループとして管理するプリンタグループ管理手段と、グループ内の各プリンタの負荷分散を考慮し、負荷が適切なプリンタに自動的に投入ジョブを割り当てる投入ジョブ割当手段と、前記グループ内の任意のプリンタが故障した際に、故障プリンタに割り当てられているジョブを、前記グループ内の正常な他のプリンタの負荷分散を考慮し、負荷が適切なプリンタに自動的に代行処理を行わせる自動代行手段と、前記グループ内の各プリンタ毎に印刷順番が来るまでジョブを留める待ち行列手段とを備え、
前記自動代行手段は、前記グループ内の各プリンタに対して、自動代行の対象プリンタとするか否かの設定を選択可能とすることを特徴とするネットワークプリンタシステム。
【請求項３】
グループ内の各プリンタインスタンスの属性情報を取得し、該属性情報によりプリンタの状態が印刷可能であり、且つ自動割当対象である対象プリンタに対して、該対象プリンタの負荷分散を考慮し、各プリンタへのジョブの割り当てを決定すると共に、前記対象プリンタのジョブ待ち行列にジョブを割り当てることを特徴とする印刷制御方法。
【請求項４】
グループ内の各プリンタインスタンスの属性情報を取得し、該属性情報によりプリンタの状態が印刷可能であり、且つ自動代行対象である対象プリンタに対して、故障対象プリンタのジョブ待ち行列からジョブを削除後、前記対象プリンタの負荷分散を考慮し、各プリンタへのジョブの割り当てを決定すると共に、前記対象プリンタのジョブ待ち行列にジョブを割り当てることを特徴とする印刷制御方法。
【請求項５】
請求項３又は４に記載の印刷制御方法を、コンピュータに実現させるためのプログラムとして記録したことを特徴とするコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークプリンタシステムに関し、さらに詳しくは、負荷分散を考慮した印刷ジョブの割り当て方法に関するものである。
【０００２】
【従来の技術】
従来の印刷制御システムは、ネットワーク上のプリンタをグループとして管理する機能を備え、対象グループに印刷ジョブが投入されると、そのジョブを印刷するプリンタを選択して印刷すると共に、グループ内の各プリンタの負荷分散を考慮し、適切なプリンタに印刷ジョブを自動的に割り当てる機能がある。そして割り当てられた印刷ジョブは、印刷順番が来るまで印刷制御システムが持っている対象プリンタの待ち行列（キュー）に留まるものである。
特開２０００−２３１４６５公報には、少ない待ち時間で印刷出力を行うことができ、負荷を管理する装置の故障によりシステム全体が稼働しなくなってしまう問題を解消することができる出力ジョブ分散方法について開示されている。それによると、複数のプリンタサーバと複数の情報処理装置とを備えたネットワークシステムの出力ジョブ分散方法において、一つのプリンタサーバが情報処理装置から出力ジョブを受信したとき、他の複数のプリンタサーバへ出力ジョブ到着通知を送信し、それを受信したプリンタサーバからそのプリンタサーバの管理している出力ジョブ処理時間を受信すると、自らの管理する出力ジョブ処理時間と受信した出力ジョブ処理時間とを比較して最も出力ジョブ処理時間の短いプリンタを選択し、そのプリンタが他のプリンタサーバにより管理されているならば、出力ジョブを上記他のプリンタサーバへ転送するものである。
【特許文献１】特開２０００−２３１４６５公報
【０００３】
【発明が解決しようとする課題】
従来の印刷制御システムは、割り当てられた印刷ジョブは、印刷順番が来るまで印刷制御システムが持っている対象プリンタの待ち行列（キュー）に留まるため、印刷制御システム使用するオペレータが常に自分の管理下で使用することができず、使用者の利便性を損なうといった問題がある。
また特許文献１は、対象プリンタの待ち時間を最小にする方法ではあるが、待たされることには変わりはなく、オペレータが常に自分の管理下で使用することができないといった問題がある。
本発明は、かかる課題に鑑み、投入ジョブの自動割当において、各プリンタにジョブの自動割当対象とするか否かを選択可能として、利用者の利便性を高めた印刷制御システムを提供することを目的する。
【０００４】
【課題を解決するための手段】
本発明はかかる課題を解決するために、請求項１は、ネットワーク上に印刷ジョブを投入する複数のクライアント、複数のプリンタ及び印刷制御システムを搭載した印刷サーバを備えるネットワークプリンタシステムであって、前記印刷制御システムは、前記プリンタをグループとして管理するプリンタグループ管理手段と、グループ内の各プリンタの負荷分散を考慮し、負荷が適切なプリンタに自動的に投入ジョブを割り当てる投入ジョブ割当手段と、前記グループ内の各プリンタ毎に印刷順番が来るまでジョブを留める待ち行列手段とを備え、前記投入ジョブ割当手段は、前記グループ内の各プリンタに対して、投入ジョブの自動割当の対象プリンタとするか否かの設定を選択可能とすることを特徴とする。
従来の印刷制御システムは、ネットワーク上のプリンタをグループとして管理する機能を有し、対象グループにジョブが投入されると、そのジョブを印刷するプリンタを選択して印刷するほかに、グループ内の各プリンタの負荷分散を考慮し、適切なプリンタに割り当てを自動で行う機能を有している。そして割り当てられたジョブは、印刷順番が来るまで、印刷制御システムが持っている対象プリンタの待ち行列（キュー）に留まる。このため、印刷制御システム使用するオペレータが常に自分の管理下で使用することができず不便であった。そこで本発明は、上記のような投入ジョブの自動割当において、各プリンタにジョブの自動割当対象とするか否かを設定できるようにしたものである。
かかる発明によれば、投入ジョブの自動割当時、自動割当の対象プリンタとしないの設定にすることにより、投入ジョブがそのプリンタに自動で割り当てられないので、印刷システムを使用するオペレタが常に自分の管理下で使用したい（例えば、自分の判断で特別な場合にのみ投入ジョブを割り当て、他の場合は印刷で使用しない）プリンタを設置することが可能となる。
【０００５】
請求項２は、ネットワーク上に印刷ジョブを投入する複数のクライアント、複数のプリンタ及び印刷制御システムを搭載した印刷サーバを備えるネットワークプリンタシステムであって、前記印刷制御システムは、前記プリンタをグループとして管理するプリンタグループ管理手段と、グループ内の各プリンタの負荷分散を考慮し、負荷が適切なプリンタに自動的に投入ジョブを割り当てる投入ジョブ割当手段と、前記グループ内の任意のプリンタが故障した際に、故障プリンタに割り当てられているジョブを、前記グループ内の正常な他のプリンタの負荷分散を考慮し、負荷が適切なプリンタに自動的に代行処理を行わせる自動代行手段と、前記グループ内の各プリンタ毎に印刷順番が来るまでジョブを留める待ち行列手段とを備え、前記自動代行手段は、前記グループ内の各プリンタに対して、自動代行の対象プリンタとするか否かの設定を選択可能とすることを特徴とする。
請求項１に加え、従来の印刷制御システムは、グループ内の任意のプリンタが印刷不可となった場合、印刷制御システムが持っている故障プリンタの待ち行列（キュー）に留まっているジョブを、グループ内の正常な他のプリンタの負荷分散を考慮し、適切なプリンタに自動で代行処理する機能があった。しかし、この場合も、印刷制御システム使用するオペレータが常に自分の管理下で使用することができず不便であった。そこで本発明は、上記のような投入ジョブの自動代行において、各プリンタにジョブの自動代行対象とするか否かを設定できるようにしたものである。
かかる発明によれば、請求項１の発明と組み合わせて、例えば、あるプリンタを自動割当の対象プリンタとしないで、且つ自動代行の対象プリンタとする設定にすることにより、そのプリンタを故障時のバックアッププリンタとして位置付けるような設定が可能となる。
【０００６】
請求項３は、グループ内の各プリンタインスタンスの属性情報を取得し、該属性情報によりプリンタの状態が印刷可能であり、且つ自動割当対象である対象プリンタに対して、該対象プリンタの負荷分散を考慮し、各プリンタへのジョブの割り当てを決定すると共に、前記対象プリンタのジョブ待ち行列にジョブを割り当てることを特徴とする。
かかる発明によれば、請求項１と同様の作用効果を奏する。
請求項４は、グループ内の各プリンタインスタンスの属性情報を取得し、該属性情報によりプリンタの状態が印刷可能であり、且つ自動代行対象である対象プリンタに対して、故障対象プリンタのジョブ待ち行列からジョブを削除後、前記対象プリンタの負荷分散を考慮し、各プリンタへのジョブの割り当てを決定すると共に、前記対象プリンタのジョブ待ち行列にジョブを割り当てることを特徴とする。
かかる発明によれば、請求項２と同様の作用効果を奏する。
請求項５は、請求項３又は４に記載の印刷制御方法を、コンピュータに実現させるためのプログラムとして記録したことを特徴とする。
本発明の目的はソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
かかる発明によれば、記憶媒体から読出されたプログラムコード自体が実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することができる。
【０００７】
【発明の実施の形態】
以下、本発明を図に示した実施形態を用いて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
図１は、本発明のシステム構成の例を示す図である。このシステムはネットワーク（ＬＡＮ４）上に、印刷ジョブを投入する複数のクライアント１と、複数のプリンタ３、本発明の印刷制御システムを搭載している印刷サーバー２が存在する。
図２は、図３に示す印刷制御システム２０が動作するハードウェア５０の詳細を示す図である。このハードウェア５０は、ＣＰＵ１０、メモリ１１、入力装置１２、表示装置１３、ハードディスク１４及びバス１５により構成され、ＣＰＵ１０は印刷制御システムの全体を制御するもので、図３に示す印刷制御システム２０の各種処理を実行する。メモリ１１は主として、ＣＰＵ１０の作業領域として機能する。入力装置１２は、キーボード、マウス等である。表示装置１３は、ＣＲＴや液晶表示装置等である。ハードディスク１４は磁気ディスク等で構成され、インストールされた図３の印刷制御システム２０やその他のアプリケーション（ソフトウェア）等を格納する。バス１５は、上記各部を接続する。
図３は、本発明の一実施形態による印刷制御システム（ソフトウエア）の構成を示す図である。この印刷制御システム２０は、以下の処理部以外にも必要とされる処理部は考えられるが、本発明に関連する処理部のみを説明する。印刷制御システム２０は、大きく分けてプリンタグループ部３０とプリンタ部４０により構成される。プリンタグループ部３０は、投入ジョブ制御部３２、代行ジョブ制御部３３、ジョブ待ち行列制御部３４からなるジョブ制御部３１およびイベント受付部３５から構成される。またプリンタ部４０は、印刷処理部４１、機器監視部４２および属性情報管理部４３から構成される。
図４は本発明のソフトウェアの概念を表す図である。図４のようにプリンタ部４０は印刷制御システムが管理しているプリンタの数分インスタンスが生成される。プリンタグループ部３０も複数グループ作成されていれば、その数分インスタンスが生成される。各プリンタ部は、自分の識別子（ユニークなＩＤ）、プリンタ名、プリンタの状態、実際の機器情報等の必要情報を属性として保持している。本実施形態では、この属性情報に自動割当対象および自動代行対象とするか否かの情報を付加する。プリンタグループも同様に自分の識別子（ユニークなＩＤ）、プリンタグループ名等の必要情報を属性として保持している。これらの属性情報はハードディスク５０に永続化情報として保存される。また、プリンタ部４０は、機器の情報（印刷可能になったとかプリンタが故障した等の情報）をプリンタグループ部３０に伝達するために、プリンタグループ部の識別子とプリンタグループインスタンスポインタを保持している。プリンタグループ部３０も同様に、プリンタ部４０に印刷指示する等のために、グループ内のプリンタの識別子とプリンタインスタンスポインタを保持している。
【０００８】
図３に戻り各部の説明をする。ジョブ制御部３１は、投入ジョブ制御部３２、代行ジョブ制御部３３、ジョブ待ち行列制御部３４からなり、グループ内の各プリンタの待ち行列（キュー）を保持し、制御を行う。投入ジョブ制御部３２は、投入ジョブを受け取ると、プリンタグループ内の各プリンタの負荷分散を考慮し、各プリンタへのジョブの割り当てを決め、ジョブ待ち行列制御部３４を呼び出し、割り当てプリンタの待ち行列（キュー）にジョブを割り当てるよう指示する。各プリンタへの割り当てを決める際、各プリンタの属性情報管理部４３を呼び出し、プリンタの状態／自動割当不可プリンタかを確認し、投入ジョブが割り当て可能か判断する。
代行ジョブ制御部３３は、イベント受付部３５を通してプリンタが印刷不可状態を通知してきた場合に呼び出される。つまりジョブ待ち行列制御部３４を呼び出し、故障対象のプリンタの待ち行列（キュー）からジョブを削除し、各代行ジョブをプリンタグループ内の負荷分散を考慮し、各プリンタへの割り当てを決め、ジョブ待ち行列制御部３４を呼び出し、割り当てプリンタの待ち行列（キュー）にジョブを割り当てるよう指示する。そして各プリンタへの割り当てを決める際、各プリンタ部４０の属性情報管理部４３を呼び出し、プリンタの状態／自動代行不可プリンタかを確認し、代行ジョブが割り当て可能か判断する。
ジョブ待ち行列制御部３４は、各プリンタ毎の待ち行列（キュー）に、提供される割り当て情報を基にジョブの割り当て、あるいは、対象のプリンタの待ち行列（キュー）からジョブを削除する等の処理を行う。
イベント受付部３５は、プリンタからの各種通知（故障プリンタの通知等）に対して処理を行う。
印刷処理部４１は、ジョブを受け取り機器に印刷指示する。
機器監視部４２は、機器の状態を監視し、機器が故障した際等にプリンタグループ部３０に通知する。
属性情報管理部４３は、プリンタが保持している属性に対して取得／設定を可能とする。
また、印刷制御システム２０は、ハードウェア５０とのインタフェースを構成するオペレーティングシステム６０上で動作する。なお、図３に示すオペレーティングシステム６０は、例えばＷｉｎｄｏｗｓ（登録商標）系であり、これに付随する各種ソフトウエアを含むものである。
【０００９】
図５は本発明の投入ジョブ制御部３２の処理手順を示すフローチャートである。まず、投入ジョブ制御部３２は、プリンタインスタンスの属性情報管理部４３を呼び出し、属性情報を取得する（Ｓ１）。その結果、プリンタが印刷不可状態か否かをチェックし（Ｓ２）、印刷不可であれば（Ｓ２でＹＥＳのルート）ステップＳ５に進んで繰り返す。ステップＳ２で印刷可であれば（Ｓ２でＮＯのルート）、自動割当不可プリンタか否かをチェックし（Ｓ３）、自動割当不可であれば（Ｓ３でＹＥＳのルート）ステップＳ５に進んで繰り返す。ステップＳ３で自動割当可であれば（Ｓ３でＮＯのルート）、対象プリンタはジョブ割り当て可能と判断し（Ｓ４）、プリンタの数分繰り返し（Ｓ５）、全てのプリンタの数分終了すると（Ｓ５でＹＥＳのルート）、ジョブ割り当て可能なプリンタに対して負荷分散を考慮して各プリンタへのジョブの割り当てを決定し（Ｓ６）、対象プリンタのジョブ待ち行列にジョブを割り当てる（Ｓ７）。
【００１０】
図６は本発明の代行ジョブ制御部３３の処理手順を示すフローチャートである。まず、代行ジョブ制御部３３は、プリンタインスタンスの属性情報管理部４３を呼び出し、属性情報を取得する（Ｓ１１）。その結果、プリンタが印刷不可状態か否かをチェックし（Ｓ１２）、印刷不可であれば（Ｓ１２でＹＥＳのルート）ステップＳ１５に進んで繰り返す。ステップＳ１２で印刷可であれば（Ｓ１２でＮＯのルート）、自動代行不可プリンタか否かをチェックし（Ｓ１３）、自動代行不可であれば（Ｓ１３でＹＥＳのルート）ステップＳ１５に進んで繰り返す。ステップＳ１３で自動代行可であれば（Ｓ１３でＮＯのルート）、対象プリンタはジョブ代行可能と判断し（Ｓ１４）、プリンタの数分繰り返し（Ｓ１５）、全てのプリンタの数分終了すると（Ｓ１５でＹＥＳのルート）、故障対象プリンタのジョブ待ち行列からジョブを削除する（Ｓ１６）。ジョブ代行可能なプリンタに対して負荷分散を考慮して各プリンタへのジョブの割り当てを決定し（Ｓ１７）、対象プリンタのジョブ待ち行列にジョブを割り当て（Ｓ１８）、ジョブ数分繰り返す（Ｓ１９）。
【００１１】
【発明の効果】
以上記載のごとく請求項１、３の発明によれば、投入ジョブの自動割当時、自動割当の対象プリンタとしないの設定にすることにより、投入ジョブがそのプリンタに自動で割り当てられないので、印刷システムを使用するオペレタが常に自分の管理下で使用したい（例えば、自分の判断で特別な場合にのみ投入ジョブを割り当て、他の場合は印刷で使用しない）プリンタを設置することが可能となる。
また請求項２、４では、請求項１の発明と組み合わせて、例えば、あるプリンタを自動割当の対象プリンタとしないで、且つ自動代行の対象プリンタとする設定にすることにより、そのプリンタを故障時のバックアッププリンタとして位置付けるような設定が可能となる。
また請求項５では、記憶媒体から読出されたプログラムコード自体が実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することができる。
【図面の簡単な説明】
【図１】本発明のシステム構成の例を示す図である。
【図２】本発明の図３に示す印刷制御システム２０が動作するハードウェア５０の詳細を示す図である。
【図３】本発明の一実施形態による印刷制御システム（ソフトウエア）の構成を示す図である。
【図４】本発明のソフトウェアの概念を表す図である。
【図５】本発明の投入ジョブ制御部３２の処理手順を示すフローチャートである。
【図６】本発明の代行ジョブ制御部３３の処理手順を示すフローチャートである。
【符号の説明】
２０  印刷制御システム、３０  プリンタグループ部、３１  ジョブ制御部、３２  投入ジョブ制御部、３３  代行ジョブ制御部、３４  ジョブ待ち行列制御部、３５  イベント受付部、４０  プリンタ部、４１  印刷処理部、４２  機器監視部、４３  属性情報管理部
【図１】
2004227499.tif 000003
【図２】
2004227499.tif 000004
【図３】
2004227499.tif 000005
【図４】
2004227499.tif 000006
【図５】
2004227499.tif 000007
【図６】
2004227499.tif 000008