説明

プリントシステム、クラインアントPC及びその制御方法、プリントサーバ及びその制御方法

【課題】PCスプール方式とサーバスプール方式を組み合わせて、両スプール方式のメリットを生かしたプリントシステムを提供する。
【解決手段】ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCが、印刷指示に基づいて秘匿レベル情報及び印刷設定情報を付加する付加手段と、印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、印刷ジョブのスプール先を判定するスプール先判定手段と、スプール先判定手段により印刷ジョブのスプール先がプリントサーバであると判定された場合、ネットワーク上のプリントサーバにスプール要求を送信する送信手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プリントシステム、クラインアントPC及びその制御方法、プリントサーバ及びその制御方法に関し、特に、印刷ジョブのスプールをプリントサーバとクライアントPCで分散して行うプリントシステム、クラインアントPC及びその制御方法、プリントサーバ及びその制御方法に関する。
【背景技術】
【0002】
従来、クライアントPCまたはプリントサーバ(印刷ジョブサーバ)にプリンタに依存しない中間ファイル形式の印刷ジョブをスプールし、その印刷ジョブを、複数あるプリンタのうち出力先として選択されたプリンタに適した印刷データに変換して、ネットワークを介して印刷することができるプリントシステムがある(例えば、特許文献1、特許文献2参照)。
【0003】
特許文献1は、クライアントPCに印刷ジョブをスプールする方式(以下、「PCスプール方式」と呼ぶ)であり、特許文献2は、プリントサーバに印刷ジョブをスプールする方式(以下、「サーバスプール方式」と呼ぶ)である。PCスプール方式のメリットには、例えば、秘匿性の高い印刷データを印刷出力までクライアントPCで保持することからセキュリティ性が高い点が挙げられる。一方、サーバスプール方式のメリットには、例えば、プリントサーバにシステムで利用できるプリンタの機種に応じたプリンタドライバをインストールしておくことで、個々のクライアントPCにはプリンタの種類に応じた多数のプリンタドライバをインストールする必要がない点が挙げられる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特願2010−8559
【特許文献2】特開2009−193091号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
PCスプール方式では、システムを利用するクライアントPC1台1台に、システムで利用できるプリンタの機種に応じたプリンタドライバがインストールされていなければならず、クライアントPCの使用者やシステム管理者がプリンタドライバをインストールする負担が大きい。
【0006】
一方、サーバスプール方式では、大量の印刷ジョブがサーバにスプールされるとサーバの負荷が増大し、処理効率が低下するおそれがあり、また、秘匿性が高い印刷データの場合、サーバにスプールされることにはセキュリティ面に不安がある。
【0007】
本発明は、上記問題に鑑みて成されたものであり、PCスプール方式とサーバスプール方式を組み合わせて、両スプール方式のメリットを生かしたプリントシステムを構成することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するために、請求項1記載のクライアントPCは、ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCにおいて、前記印刷指示に基づいて、前記印刷ジョブに秘匿性の度合を示す秘匿レベル情報及び印刷出力形式に関する印刷設定情報を付加する付加手段と、前記印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定手段と、前記スプール先判定手段により前記印刷ジョブのスプール先が自クライアントPCであると判定された場合、前記印刷ジョブを作成したユーザを特定するためのユーザ情報と前記印刷ジョブとを対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と、前記スプール先判定手段により前記印刷ジョブのスプール先がプリントサーバであると判定された場合、前記ネットワーク上のプリントサーバにスプール要求を送信するスプール要求手段と、前記プリントサーバから受信した前記スプール要求に対する応答情報に基づいて前記プリントサーバで前記印刷ジョブのスプールが可能か否かを判定するスプール可否判定手段と、前記スプール可否判定手段により前記プリントサーバでのスプールが可能であると判定された場合、当該プリントサーバに前記印刷ジョブを送信する印刷ジョブ送信手段とを備えることを特徴とする。
【0009】
上記目的を達成するために、請求項5記載のプリントサーバは、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCにネットワークを介して接続されたプリントサーバにおいて、前記クライアントPCからスプール要求を受信するスプール要求受信手段と、前記受信したスプール要求に応じてスプールの可否を判定するスプール可否判定手段と、前記スプール可否判定手段により前記印刷ジョブのスプールが可能であると判定された場合、前記クライアントPCに印刷ジョブ要求を送信する印刷ジョブ要求送信手段と、前記クライアントPCから受信した前記印刷ジョブを、当該印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と備えることを特徴とする。
【発明の効果】
【0010】
本発明によれば、クライアントPCが印刷ジョブの内容(秘匿性、印刷設定)とプリントサーバの状態(プリンタドライバの有無/負荷状況)に応じて、PCスプール方式またはサーバスプール方式のいずれか一方を選択するので、ユーザがスプール先の選択、システムの稼働状況を意識することなく、個々の印刷ジョブに適ったスプール先に印刷ジョブがスプールされる。
【図面の簡単な説明】
【0011】
【図1】本発明の第1の実施形態に係るプリントシステムの概略構成を示す図である。
【図2】図1のクライアントPC100にて実行されるスプール先判定処理の流れを示すフローチャートである。
【図3】図1のプリントサーバ200にて実行されるスプール可否判定処理の流れを示すフローチャートである。
【図4】プリントサーバ200にて実行されるスプール先判定処理の流れを示すフローチャートである。
【図5】プリントサーバから印刷要求を転送する場合の条件の一例を示す図である。
【図6】印刷ジョブリストの一例を示す図である。
【図7】本発明の第2の実施形態に係るプリントシステムの概略構成を示す図である。
【図8A】第2の実施形態における複数の印刷ジョブのスプール処理の流れを示すシーケンスである。
【図8B】第2の実施形態における複数の印刷ジョブのスプール処理の流れを示すシーケンスである。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【0013】
[第1の実施形態]
図1は、本発明の第1の実施形態に係るプリントシステムの概略構成を示す図である。
【0014】
図1のプリントシステムでは、複数のクライアントPC100,110と、プリントサーバ200と、複数の認証BOX300,310とが、有線又は無線のネットワーク600で互いに接続されている。
【0015】
クライアントPC100,110は、パーソナルコンピュータ等の情報処理装置であり、ネットワーク600を介して、プリントサーバ200や認証BOX300,310と通信する機能を備える。例えば、クライアントPC100,110は、ネットワーク600上の複数のプリンタの中から出力先として指定されたプリンタに接続された認証BOXに対して印刷ジョブを送信する。なお、クライアントPC100,110は、パーソナルコンピュータに限定されるものではなく、携帯電話やモバイル端末であってもよい。また、ネットワーク600上のクライアントPCの台数も図示例に限定されるものではない。
【0016】
プリントサーバ200は、サーバ機能を備える情報処理装置であり、ネットワーク600を介して、クライアントPC100,100や認証BOX300,310と通信する機能を備える。例えば、プリントサーバ200は、クライアントPC100から受信した印刷ジョブをスプールし、出力先に設定されたプリンタに対応したプリンタドライバを選択してレンダリング処理を行って印刷データに変換して、認証BOX300に送信する。
【0017】
認証BOX300,310は、ICカード等の記録媒体からデータを読み取ることができるカードリーダを備える。この認証BOX300,310は、読み取ったユーザ情報(例えば、カードID)に基づいてユーザ認証を行い、認証された場合にプリントサーバ200に印刷要求を送信する。また、認証BOX300,310は、印刷データをプリントサーバ200やクライアントPCから受信すると、ケーブル500を介して、プリンタに印刷データを送信する機能を備える。ケーブル500は、USB(Universal Serial Bus)やIEEE1394などに準拠したインターフェースケーブルである。
【0018】
プリンタ400,410は、印刷データを出力する印刷装置であり、プリント機能を備えた単機能周辺装置(SFP:Single Function Peripheral)、あるいは、プリント機能の他にスキャン機能やコピー機能、ストレージ機能などを兼ね備えた多機能周辺装置(MFP:Multi Function Peripheral)である。なお、プリンタ400,410は、これらに限定されるものでなく、印刷機能を備えた別のデバイスであってもよい。また、ネットワーク600上のプリンタの台数も図示例に限定されるものではない。
【0019】
次に、クライアントPC100,110について説明する。なお、本実施形態では、クライアントPC100,110は同一の構成を有することから、クライアントPC100について説明する。
【0020】
クライアントPC100は、一般的なパーソナルコンピュータが備えるハードウェア構成として、不図示のCPU、入力部、表示部、メモリ、通信部、記憶部などを備え、これらが内部バスで接続されている。CPUはクライアントPC100内の各部を制御する中央処理装置である。入力部はキーボードやマウス等の操作装置である。表示部は液晶モニタ等の表示装置である。メモリは、RAM、ROM等の記憶装置である。通信部は、ネットワーク600に接続するためのインターフェースであり、プリントサーバ200、認証BOX300とデータ通信を行うことで、クライアントPC100から印刷ジョブや印刷データを送受信することが可能となる。記憶部は、ハードディスク等の記憶装置である。
【0021】
記憶部には、ソフトウェアとして、印刷ジョブ作成機能部101、スプール分散機能部102、印刷ジョブ記憶部103、印刷データ作成機能部105、及び通信制御部107が記憶されている。なお、記憶部には、他の機能に関するソフトウェアも記憶されているが、本発明に関わるもののみを説明する。
【0022】
印刷ジョブ作成機能部101は、クライアントPC上で起動中のアプリケーションソフトウェアから印刷指示を受けると、プリンタメーカーや機種に依存しない形式の印刷ジョブ(中間データ)を作成し、当該中間データに秘匿レベル(機密レベル)情報や印刷設定情報を付加して、印刷ジョブ記憶部103へ送信する機能を有する。ここで、メーカーや機種に依存しない印刷ジョブ(中間データ)には、例えば、EMF(Enhanced Meta File)形式のデータがある。秘匿レベル情報とは、印刷データの秘匿性の度合を示す情報であり、例えば、「関係者外秘」、「社外秘」、「その他」等が挙げられる。
【0023】
印刷設定情報は、印刷出力形式に関する設定であり、印刷部数や印刷の向きなど、設定の適用可否がプリンタの種類によって左右されない基本的な設定情報と、両面印刷や製本印刷、Nアップ印刷(複数ページを1枚の用紙に印刷)、特殊用紙印刷(サイズや紙質が特殊な用紙での印刷)など、設定の適用可否がプリンタの種類によって左右される設定情報(以下、詳細設定情報)とがある。
【0024】
スプール分散機能部102は、印刷ジョブに付加された秘匿レベル情報、印刷設定情報の内容に基づき、自クライアントPCにスプールすべきか否かの判定(スプール先の判定)を行う機能を有する。スプール分散機能部102により自クライアントPCでスプールすべきと判定しなかった場合には、サーバスプール方式が選択され、プリントサーバ200に対してクライアントPCから「スプール要求」が送信される。一方、自クライアントPCでスプールすべきと判定した場合には、PCスプール方式が選択される。なお、プリントサーバ200に対して、クライアントPCから印刷ジョブをスプールしたことを示すスプール先情報を送信する機能も有する。スプール先情報には、ユーザ情報、クライアントPCの識別情報(IPアドレスやクライアントPC名)等が含まれる。
【0025】
印刷ジョブ記憶部103は、スプール先が自クライアントPCであるPCスプール方式が選択された場合に、スプール分散機能部102の指示に従い、印刷ジョブ作成機能部101で生成された印刷ジョブを受信し、データを作成した(アプリケーションソフトウェアから印刷指示した)ユーザを特定するためのユーザ情報と対応付けて印刷ジョブを記憶(スプール)し、印刷ジョブリスト104に登録して管理する機能を有する。印刷ジョブリスト104は、印刷ジョブ名とユーザ情報が対応付けて登録されたリスト情報であり、自クライアントPCでスプールしている印刷ジョブのみを登録する。サーバスプール方式が選択された場合は、印刷ジョブ作成機能部101で生成された印刷ジョブを印刷ジョブ記憶部103に記憶することなく、プリントサーバ200に送信する。
【0026】
印刷データ作成機能部105は、プリンタドライバ106を少なくとも1つ備え、プリントサーバ200からの印刷要求に基づき、印刷ジョブリスト104を参照し、該当する印刷ジョブ(中間データ)をプリンタドライバ106を選択してレンダリング処理を行い、出力先のプリンタ400,410に適合した形式の印刷データを作成する機能を有する。
【0027】
通信制御部107は、プリントサーバ200や認証BOX300,310との間の通信を制御する。
【0028】
次に、プリントサーバ200について説明する。
【0029】
プリントサーバ200は、クライアントPCと同様に、CPU、入力部、表示部、メモリ、通信部、記憶部などから構成されており、これらが内部バスで接続されている。これらの説明については省略する。
【0030】
記憶部には、ソフトウェアとして、通信制御部201、スプール判定機能部202、印刷ジョブ記憶部203、及び印刷データ作成機能部205が記憶されている。
【0031】
通信制御部201は、通信部を介してクライアントPC100,110や認証BOX300,310との間の通信を制御する機能を有する。
【0032】
スプール判定機能部202は、2つの機能を持つ。まず、第1の機能として、クライアントPCからのスプール要求に応じて、プリントサーバのプリンタドライバ保持状況/負荷状況を確認し、プリントサーバ自身に印刷ジョブのスプールが可能であるか否かを判定する機能を備える。例えば、プリントサーバ200自身の処理負荷がシステム管理者などによって予め定められた値(以下、規定値)以下と判定した場合、印刷ジョブのスプールが実施可能と判定し、クライアントPCに対して「印刷ジョブ要求」を送る。一方、プリントサーバ200自身の処理負荷が規定値より高いと判定した場合、印刷ジョブのスプールが不可能であると判定し、スプール要求の送信元のクライアントPCに対して、スプールができない旨の応答(以下、「スプールNG応答」とする)を返す。
【0033】
また、スプール判定機能部202は、第2の機能として、認証BOX300,310から受信したユーザ情報に基づいて、印刷ジョブのスプール先がプリントサーバ自身か、クライアントPCかを判定する機能を備える。印刷ジョブのスプール先がプリントサーバ自身であると判定した場合は、印刷データ作成機能部205に印刷要求を送り、レンダリング処理を指示する。一方、印刷ジョブのスプール先がクライアントPCであると判定した場合、プリントサーバから該当するクライアントPCに印刷要求を送信する。なお、印刷要求の送り先であるクライアントPCは、ユーザリスト、スプール先情報の有無により異なる。ユーザリストは、ユーザ情報とクライアントPCの情報とを対応付けたリストである。
【0034】
印刷ジョブ記憶部203は、プリントサーバ200にスプールする印刷ジョブをユーザ情報と対応付けて記憶(スプール)し、スプールした印刷ジョブを印刷ジョブリスト204に登録して管理する機能を有する。印刷ジョブリスト204は、図6に示すように、印刷ジョブ名と、ユーザ情報と、スプール先とが対応付けて登録されたリスト情報である。なお、印刷ジョブリスト204は、プリントサーバ自身にスプールされている印刷ジョブとクライアントPCにスプールされている印刷ジョブを登録する。
【0035】
印刷データ作成機能部205は、プリンタドライバ206を少なくとも1つ備え、プリンタドライバ206を選択して印刷ジョブのレンダリング処理を行い、出力先のプリンタに適合した形式の印刷データを作成する。
【0036】
次に、図1のクライアントPC100,110における印刷ジョブのスプール先判定処理について説明する。本実施形態では、クライアントPC100にてスプール先判定処理が行われる場合について説明するが、クライアントPC110でも実行可能であることは云うまでもない。
【0037】
図2は、図1のクライアントPC100にて実行されるスプール先判定処理の流れを示すフローチャートである。
【0038】
クライアントPC100では、印刷ジョブ作成機能部101が、アプリケーションソフトウェアからの印刷指示に応じて、指定された秘匿レベル情報、印刷設定情報などを付加して印刷ジョブ(中間データ)を作成する(ステップS201)。
【0039】
次に、スプール分散機能部102は、印刷ジョブに付加された秘匿レベル情報、印刷設定情報を確認し(ステップS202)、これらの情報に基づいてスプール先を判定する(ステップS203)。ここで、スプール先の判定方法について具体的に説明する。
【0040】
スプール分散機能部102は、印刷ジョブに付加された秘匿レベル情報に基づいて、印刷ジョブのスプール先の判定を行う。例えば、セキュリティレベルが高い(社外秘)設定の印刷ジョブならば、自クライアントPCにスプールし、セキュリティレベルが低い(設定なし、通常時)設定の印刷ジョブならば、プリントサーバ200にスプールする。秘匿レベル情報は、印刷指示時のユーザによる設定も可能だが、印刷ジョブの内容から自動的に判定することも可能とする。
【0041】
また、スプール分散機能部102は、印刷ジョブに付加された印刷設定情報に基づいて、印刷ジョブのスプール先の判定を行う。例えば、詳細設定情報を含む印刷設定がなされ、出力先として特定のプリンタが予め選択された印刷ジョブの場合には、自クライアントPCにスプールする。印刷設定情報は、印刷指示時のユーザによる設定も可能だが、印刷内容から自動的に判定することも可能とする。なお、出力先となるプリンタを予め選択するか、認証BOXから選択するかは、ユーザがアプリケーションソフトウェアで任意に設定できるようにすればよい。
【0042】
ステップS203の判定の結果、スプール先が自クライアントPCと判定された場合、印刷ジョブ記憶部103は、スプール分散機能部102の指示に従い、印刷ジョブ作成機能部101で生成された印刷ジョブを受信し、印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブを記憶(スプール)し、印刷ジョブリスト104に登録する(ステップS204)。
【0043】
一方、ステップS203の判定の結果、スプール先がプリントサーバと判定された場合、スプール分散機能部102は、プリントサーバ200にスプール要求を送信し(ステップS205)、プリントサーバ200からの応答情報を受信し(ステップS206)、プリントサーバ200で印刷ジョブのスプールが可能か否かを判定する(ステップS207)。この判定の結果、プリントサーバ200でのスプールが不可能であると判定した場合、ステップS204へ進む一方、プリントサーバ200でのスプールが可能であると判定した場合、印刷ジョブのスプール先をプリントサーバとして、プリントサーバ200に印刷ジョブを送信する(ステップS208)。
【0044】
次に、ステップS209において、スプール分散機能部102は、プリントサーバ200に印刷ジョブのスプール先を示すスプール先情報を送信して、本処理を終了する。
【0045】
次に、図1のプリントサーバ200がクライアントPC100からスプール要求を受信した場合に実行されるスプール可否判定処理について説明する。
【0046】
図3は、図1のプリントサーバ200にて実行されるスプール可否判定処理の流れを示すフローチャートである。
【0047】
プリントサーバ200は、クライアントPC100からスプール要求を受信すると(ステップS301でYES)、スプール判定機能部202が、当該スプール要求に応じて、プリントサーバ自身のプリンタドライバの保持状況及び負荷状況を確認し(ステップS302)、プリントサーバ自身に印刷ジョブのスプールが可能か否かを判定する(ステップS303)。ここで、スプールの可否の判定方法について具体的に説明する。
【0048】
まず、スプール判定機能部202は、印刷データ作成機能部205にて管理されているプリンタドライバを参照し、受信したスプール要求が、プリントサーバ自身にプリンタドライバが保持されていないプリンタに対する印刷ジョブに基づくものであるか否かを判定する。プリントサーバ自身にプリンタドライバが保持されていないプリンタに対する印刷ジョブに基づくものである場合には、スプールが不可能と判定される。
【0049】
また、スプール判定機能部202は、プリントサーバ自身の負荷状況が規定値より高いか否かを判定する。プリントサーバ自身の負荷状況が規定値より高いと判定した場合には、スプールが不可能と判定される。
【0050】
ステップS303の判定の結果、スプールが不可能と判定した場合、通信制御部201は、スプール要求を送信したクライアントPC100に対してスプールNG応答を応答して(ステップS307)、本処理を終了する。一方、スプールが可能と判定した場合、通信制御部201は、スプール要求を送信したクライアントPC100に対して印刷ジョブ要求を送信する(ステップS304)。
【0051】
次に、ステップS304で印刷ジョブ要求を送信したクライアントPC100から印刷ジョブを受信(ステップS305)すると、印刷ジョブ記憶部203は、当該印刷ジョブをユーザ情報と対応付けてスプールし、スプールした印刷ジョブを印刷ジョブリスト204に登録し(ステップS306)、本処理を終了する。
【0052】
次に、認証BOX300,310から受信した印刷要求に対するプリントサーバ200のスプール先判定処理について説明する。
【0053】
図4は、プリントサーバ200にて実行されるスプール先判定処理の流れを示すフローチャートである。
【0054】
プリントサーバ200は、例えば、認証BOX300から印刷要求を受信すると(ステップS401)、スプール判定機能部202が、当該印刷要求に含まれる、認証済みのユーザ情報(ユーザID等)に基づいて、印刷ジョブのスプール先の判定を行う(ステップS402)。クライアントPC及びプリントサーバにスプールされた印刷ジョブは、ユーザ情報に対応付けて印刷ジョブリスト204に登録されていることから、印刷ジョブリスト204に印刷ジョブが登録されているか否かが判定される。なお、ステップS401で受信するプリンタ情報には、ユーザ情報の他に、出力先に設定されたプリンタの機種名、プリンタドライバの種類等の情報が含まれる。
【0055】
ステップS402の判定の結果、印刷ジョブのスプール先がプリントサーバ200でないと判定した場合、ステップS405へ進む。一方、印刷ジョブのスプール先がプリントサーバ200であると判定した場合、印刷データ作成機能部205は、印刷要求に含まれているプリンタ情報に対応するプリンタドライバ206を選択して当該印刷ジョブのレンダリング処理を行い、例えば、出力先のプリンタに適合した形式の印刷データを作成する(ステップS403)。そして、通信制御部201は、作成された印刷データを認証BOX300に送信して(ステップS404)、ステップS405へ移行する。
【0056】
ステップS405において、スプール判定機能部202は、印刷ジョブのスプール先のクライアントPCの確認を行い、図5に示すような条件に当てはまるクライアントPCに対して、印刷要求の転送を行う(ステップS406)。例えば、プリントサーバ200にユーザリストが保持され、且つクライアントPCからスプール先情報の通知があった場合には、当該ユーザリストに登録済みのクライアントPCに対してプリントサーバ200から印刷要求を転送する。一方、プリントサーバ200にユーザリストが保持されておらず、且つクライアントPCからスプール先情報の通知があった場合には、当該通知があったクライアントPCに対してプリントサーバ200から印刷要求を転送する。
【0057】
また、プリントサーバにユーザリストが保持され、且つクライアントPCからスプール先情報の通知がなかった場合には、当該ユーザリストに登録された全クライアントPCに対してプリントサーバ200から印刷要求を転送する。一方、プリントサーバ200にユーザリストが保持されておらず、且つクライアントPCからスプール先情報の通知がなかった場合には、ブロードキャスト送信により印刷要求の転送を行う。
【0058】
上記実施形態によれば、クライアントPCが印刷ジョブの内容(秘匿性、印刷設定)とプリントサーバの状態(プリンタドライバの有無/負荷状況)に応じて、PCスプール方式またはサーバスプール方式のいずれか一方を選択するので、ユーザがスプール先の選択、システムの稼働状況を意識することなく、個々の印刷ジョブに適ったスプール先に印刷ジョブがスプールされる。
【0059】
[第2の実施形態]
本発明の第2の実施の形態では、印刷ジョブを複数のプリントサーバにスプール(多重化)し、さらに、印刷ジョブの出力予約(スプール予約)を行うことが特徴である。
【0060】
複数のプリントサーバに印刷ジョブをスプールすることで、印刷ジョブをスプールした一方のプリントサーバにトラブルが生じても、他方のプリントサーバにスプールされた印刷ジョブから印刷出力が可能となる。また、出力予約(スプール予約)して、出力予約時間まで印刷ジョブをクライアントPCで保留(記憶)することで、所望の印刷結果を指定した時間に得ることが可能となる。
【0061】
本発明の第2の実施の形態に係るプリントシステムは、その構成が、図1のプリントシステムに対して、プリントサーバ210を備える点、複数のプリントサーバ200,210がそれぞれプリンタ400,410を管理する点、及びインターネット等の外部ネットワーク700を介してネットワーク接続されている点が異なる。上記第1の実施形態と同様の部分については同一の符号を付してその説明を省略する。
【0062】
図7は、本発明の第2の実施形態に係るプリントシステムの概略構成を示す図である。
【0063】
図7のプリントシステムにおいて、拠点Aでは、クライアントPC100と、プリントサーバ200と、認証BOX300とが有線又は無線のネットワーク600で互いに接続されている。認証BOX300とプリンタ400とは、ケーブル500を介して接続されている。一方、拠点Bでは、プリントサーバ210と、認証BOX310とが有線又は無線のネットワーク610で互いに接続されている。認証BOX310とプリンタ410とは、ケーブル500を介して接続されている。
【0064】
拠点Aと拠点Bとは離れた位置に設置されており、拠点Aのネットワーク600と拠点Bのネットワーク610は、インターネット等の外部ネットワーク700を介して接続されている。なお、認証BOXは同一の拠点内のプリントサーバにのみ印刷要求を送信する。例えば、拠点B内に存在する認証BOX310は、印刷要求を同一拠点内のプリントサーバ210に送信する。また、拠点内に存在するクライアントPC、プリントサーバ、認証BOX、プリンタの台数は図示例に限定されるものではない。
【0065】
次に、拠点AのクライアントPC100で作成した複数の文書をプリンタで印刷出力する場合の実施形態について説明する。
【0066】
図8A、図8Bは、図7のプリントシステムにおける印刷処理の流れを示すシーケンス図である。
【0067】
拠点AのクライアントPC100において、10時に文書1,2が作成され、文書1は、出力予約なしでプリントサーバへ送信され、文書2は、16時に出力予約(スプール予約)がなされたものとして説明する。
【0068】
図8Aにおいて、クライアントPC100では、印刷ジョブ作成機能部101が、アプリケーションソフトウェアから順になされた文書1,2の印刷指示1,2に応じて、文書1,2に対応する印刷ジョブ1,2を作成する(シーケンスS801)。
【0069】
次に、スプール分散機能部102は、印刷ジョブ1,2のスプール先判定を行う(シーケンスS802)。
【0070】
印刷ジョブ1は、スプール先がプリントサーバ(サーバスプール方式)と判定されるので、次に、シーケンスS803でクライアントPC100は、プリントサーバ200,210に対してそれぞれスプール要求を送信する。
【0071】
印刷ジョブ2は、スプール先がプリントサーバ(サーバスプール方式)と判定されるが、出力予約が設定されているため、印刷ジョブ記憶部103に記憶(保留)され、スプール分散機能部102により印刷ジョブリスト104に登録される。なお、スプール分散機能部102は、印刷ジョブリスト104に出力予約が設定されている印刷ジョブを登録する場合は、印刷ジョブ名、ユーザ情報に加えて、予約時間、スプール先判定結果の情報を登録する。
【0072】
プリントサーバ200,210は、印刷ジョブ1のスプール要求を受信すると、自プリントサーバのプリンタドライバの保持状況及び負荷状況を確認して、スプールが可能か否かを判定し(シーケンスS804)、それぞれの判定結果をクライアントPC100に返す(シーケンスS805)。本実施形態では、スプール要求を行った2つのプリントサーバ200,210でスプールが可能であるものとし、プリントサーバ200,210からクライアントPC100に対して、それぞれ印刷ジョブ要求が送信されるものとして説明するが、スプール要求を行った2つのプリントサーバ200,210のいずれか一方のみスプール可能である場合や両方のプリントサーバがスプール不可能である場合もあることは、云うまでもない。
【0073】
クライアントPC100は、プリントサーバ200,210から受信した印刷ジョブ要求に応じて、プリントサーバ200,210に対して印刷ジョブ1を送信する(シーケンスS805)。その結果、プリントサーバ200,210の両方に印刷ジョブ1がスプールされる。
【0074】
次に、認証BOX300では、例えば11時に、ICカードから取得したユーザ情報(カードID等)の認証が成功すると、プリントサーバ200に対して、認証済みのユーザ情報を含む印刷要求を送信する(シーケンスS810)。
【0075】
プリントサーバ200は、認証BOX300から受信した印刷要求に含まれるユーザ情報と印刷ジョブリスト204を参照して、印刷ジョブ1のスプール先の確認を行う(シーケンスS811)。ここでは、図4のステップS405で説明した処理が実行される。スプール判定機能部202は、印刷ジョブリスト204の登録情報からプリントサーバ200に印刷ジョブ1がスプールされていることを確認する。次に、印刷データ作成機能部205が、出力先に指定されたプリンタ400に対応するプリンタドライバを選択してレンダリング処理を行い、出力先のプリンタ400に適合した形式の印刷データ1を作成する(シーケンスS811)。そして、認証BOX300を介してプリンタ400に印刷データ1が送信され(シーケンスS812)、プリンタ400で印刷データ1が印刷出力される。
【0076】
プリントサーバ200は、認証BOX300に印刷データ1を送信すると、プリンタ400にて印刷データ1の印刷出力が実行されたとみなして、印刷ジョブ1がスプールされているプリントサーバ210に対して、印刷ジョブ1の削除要求を送信する(シーケンスS813)。
【0077】
プリントサーバ210は、印刷ジョブ1の削除要求を受信すると、スプールしている印刷ジョブ1を削除する。
【0078】
図8Bにおいて、出力予約が設定された印刷ジョブ2の予約時間になると(シーケンスS901)、クライアントPC100は、印刷ジョブリスト104を参照して、シーケンスS802で判定した印刷ジョブ2のスプール先判定結果(プリントサーバ)に基づいて、プリントサーバ200,210にスプール要求を送信する(シーケンスS902)。
【0079】
プリントサーバ200,210は、印刷ジョブ2のスプール要求を受信すると、自プリントサーバのプリンタドライバの保持状況及び負荷状況を確認して、スプールが可能か否かを判定し(シーケンスS903)、それぞれの判定結果をクライアントPC100に返す(シーケンスS904)。本実施形態では、スプール要求を行った2つのプリントサーバ200,210でスプールが可能であるものとし、プリントサーバ200,210からクライアントPC100に対して、それぞれ印刷ジョブ要求をクライアントPC100に返すものとする。
【0080】
クライアントPC100は、プリントサーバ200,210から受信した印刷ジョブ要求に応じて、プリントサーバ200,210に対して印刷ジョブ2を送信する(シーケンスS905)。その結果、プリントサーバ200,210の両方に印刷ジョブ2がスプールされる。
【0081】
次に、認証BOX310では、ICカードから取得したユーザ情報の認証が成功すると、プリントサーバ210に対して、認証済みのユーザ情報を含む印刷要求を送信する(シーケンスS910)。
【0082】
プリントサーバ210は、認証BOX310から受信した印刷要求に含まれるユーザ情報に基づいて、印刷ジョブリスト204を参照し、印刷ジョブ2のスプール先の確認を行う(シーケンスS911)。ここでは、図4のステップS405で説明した処理が実行される。スプール判定機能部202は、印刷ジョブリスト204の登録情報からプリントサーバ200,210に印刷ジョブ2がスプールされていることを確認する。次に、印刷データ作成機能部205が、出力先のプリンタ400に対応するプリンタドライバを選択してレンダリング処理を行い、出力先のプリンタ410に適合した形式の印刷データ2を作成する(シーケンスS911)。そして、プリントサーバ210は、プリンタ410に接続された認証BOX310に印刷データを送信し(シーケンスS912)、プリンタ410で印刷データ2が印刷出力される。
【0083】
プリントサーバ210は、認証BOX310に印刷データ2を送信すると、プリンタ410にて印刷データ2の印刷出力が実行されたとみなして、通信制御部201が、印刷ジョブ2がスプールされているプリントサーバ200に対して、印刷ジョブ2の削除要求を送信する(シーケンスS913)。
【0084】
プリントサーバ200は、印刷ジョブ2の削除要求を受信すると、スプールしている印刷ジョブ2を削除する。
【0085】
本実施形態では、他のプリントサーバにスプールされている印刷ジョブの削除方法として、印刷データを出力(送信)したプリントサーバから直接他のプリントサーバに削除要求を送信しているが、これに限定されるものではなく、例えば、印刷データを出力したプリントサーバから該当するクライアントPCへ出力完了通知を行い、当該クライアントPCから全プリントサーバへ削除要求を行うように構成してもよい。また、印刷ジョブがスプールされたときから所定時間経過後に自動的に削除するように構成してもよい。
【0086】
本実施形態では、出力予約が設定された印刷ジョブを予約時間までクライアントPCで保持するように構成しているが、プリントサーバにスプールして、予約時間まで印刷出力させないように構成してもよい。これにより、予約時間にクライアントPCが電源オフの状態であったり、ネットワークから切り離されている状態であっても、時間通りに印刷ジョブの印刷出力が可能となる。
【0087】
また、予めクライアントPCからプリントサーバに予約時間情報を送信し、プリントサーバが予約時間になっても印刷ジョブを受信していなかった場合には、プリントサーバからクライアントPCに印刷ジョブ要求を送信するように構成してもよい。
【0088】
さらに、予約時間になると、クライアントPCを起動させて印刷ジョブをプリントサーバに送信するように構成してもよい。この場合、クライアントPCの起動制御は、クライアントPC自身が行うように構成しても、プリントサーバ側から行うように構成してもよい。
【0089】
上記第1及び第2の実施形態では、認証BOXとプリンタがそれぞれ別体の装置で構成されているが、認証BOXをプリンタのケーシング内に収まるように一体構造としてもよい。また、プリンタ400,410は、認証BOX300,310を介してネットワーク600に接続されているが、直接ネットワーク600に接続されている構成であってもよい。この場合、プリントサーバからプリンタに直接印刷データが送信されるものとする。
【0090】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0091】
100,110 クライアントPC
101 印刷ジョブ作成機能部
102 スプール分散機能部
103 印刷ジョブ記憶部
105 印刷データ作成機能部
106 プリンタドライバ
200 プリントサーバ
300,310 認証BOX
400,410 プリンタ
600 ネットワーク

【特許請求の範囲】
【請求項1】
ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCにおいて、
前記印刷指示に基づいて、前記印刷ジョブに秘匿性の度合を示す秘匿レベル情報及び印刷出力形式に関する印刷設定情報を付加する付加手段と、
前記印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定手段と、
前記スプール先判定手段により前記印刷ジョブのスプール先が自クライアントPCであると判定された場合、前記印刷ジョブを作成したユーザを特定するためのユーザ情報と前記印刷ジョブとを対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と、
前記スプール先判定手段により前記印刷ジョブのスプール先がプリントサーバであると判定された場合、前記ネットワーク上のプリントサーバにスプール要求を送信するスプール要求手段と、
前記プリントサーバから受信した前記スプール要求に対する応答情報に基づいて前記プリントサーバで前記印刷ジョブのスプールが可能か否かを判定するスプール可否判定手段と、
前記スプール可否判定手段により前記プリントサーバでのスプールが可能であると判定された場合、当該プリントサーバに前記印刷ジョブを送信する印刷ジョブ送信手段とを備えることを特徴とするクライアントPC。
【請求項2】
前記プリントサーバに前記印刷ジョブのスプール先を示すスプール先情報を送信するスプール先情報送信手段をさらに備えることを特徴とする請求項1に記載のクライアントPC。
【請求項3】
前記スプール要求手段は、前記ネットワークに接続されたプリントサーバのすべてに前記スプール要求を送信し、
前記印刷ジョブ送信手段は、前記スプール可否判定手段により前記印刷ジョブのスプールが可能であると判定されたプリントサーバに対して前記印刷ジョブを送信することを特徴とする請求項1に記載のクライアントPC。
【請求項4】
前記印刷指示に基づいて前記印刷ジョブに出力予約を設定する設定手段をさらに備え、
前記出力予約に設定された予約時間の経過後に、前記スプール要求手段が前記スプール要求を送信することを特徴とする請求項1乃至3のいずれか1項に記載のクライアントPC。
【請求項5】
印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCにネットワークを介して接続されたプリントサーバにおいて、
前記クライアントPCからスプール要求を受信するスプール要求受信手段と、
前記受信したスプール要求に応じてスプールの可否を判定するスプール可否判定手段と、
前記スプール可否判定手段により前記印刷ジョブのスプールが可能であると判定された場合、前記クライアントPCに印刷ジョブ要求を送信する印刷ジョブ要求送信手段と、
前記クライアントPCから受信した前記印刷ジョブを、当該印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と備えることを特徴とするプリントサーバ。
【請求項6】
前記スプール可否判定手段により前記印刷ジョブのスプールが不可能であると判定された場合、前記クライアントPCに対して、スプールができない旨の応答を行う応答手段をさらに備えることを特徴とする請求項5に記載のプリントサーバ。
【請求項7】
認証済みのユーザ情報と出力先のプリンタを示すプリンタ情報を含む印刷要求を受信する印刷要求受信手段と、
前記ユーザ情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定手段と、
前記スプール先判定手段により前記印刷ジョブのスプール先が自プリントサーバであると判定された場合、前記プリンタ情報に基づいてプリンタドライバを選択してレンダリング処理を行い、出力先のプリンタに適合する印刷データを作成する印刷データ作成手段と、
前記印刷要求の送信元に、前記作成した印刷データを送信する印刷データ送信手段とを備えることを特徴とする請求項5または6に記載のプリントサーバ。
【請求項8】
前記スプール先判定手段により前記印刷ジョブのスプール先が自プリントサーバでないと判定された場合、前記ユーザ情報が登録されているユーザリスト及び前記クライアントPCから通知されるスプール先情報の有無に基づいて、前記を転送するクライアントPCを選択し、当該選択したクライアントPCに対して当該印刷要求を転送する印刷要求転送手段をさらに備えることを特徴とする請求項5乃至7のいずれか1項に記載のプリントサーバ。
【請求項9】
前記印刷データ作成手段により印刷データが作成された後、自プリントサーバ以外に前記印刷ジョブをスプールしているプリントサーバに対して前記印刷ジョブの削除要求を送信する削除要求送信手段と、
前記印刷ジョブの削除要求を受信した場合、前記スプール手段にスプールしている該当の印刷ジョブを削除する印刷ジョブ削除手段とをさらに備えることを特徴とする請求項7記載のプリントサーバ。
【請求項10】
請求項1乃至4のいずれか1項に記載のクライアントPCと、請求項5乃至9のいずれか1項に記載のプリントサーバと、前記クライアントPCまたは前記プリントサーバから受信した印刷データを印刷出力するプリンタとが、ネットワークを介して接続されているプリントシステム。
【請求項11】
ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCの制御方法において、
前記印刷指示に基づいて、前記印刷ジョブに秘匿性の度合を示す秘匿レベル情報及び印刷出力形式に関する印刷設定情報を付加する付加工程と、
前記印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定工程と、
前記スプール先判定工程により前記印刷ジョブのスプール先が自クライアントPCであると判定された場合、前記印刷ジョブを作成したユーザを特定するためのユーザ情報と前記印刷ジョブとを対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール工程と、
前記スプール先判定工程により前記印刷ジョブのスプール先がプリントサーバであると判定された場合、前記ネットワーク上のプリントサーバにスプール要求を送信するスプール要求工程と、
前記プリントサーバから受信した前記スプール要求に対する応答情報に基づいて前記プリントサーバで前記印刷ジョブのスプールが可能か否かを判定するスプール可否判定工程と、
前記スプール可否判定工程により前記プリントサーバでのスプールが可能であると判定された場合、当該プリントサーバに前記印刷ジョブを送信する印刷ジョブ送信工程とを備えることを特徴とする制御方法。
【請求項12】
印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントPCにネットワークを介して接続されたプリントサーバの制御方法において、
前記クライアントPCからスプール要求を受信するスプール要求受信工程と、
前記受信したスプール要求に応じてスプールの可否を判定するスプール可否判定工程と、
前記スプール可否判定工程により前記印刷ジョブのスプールが可能であると判定された場合、前記クライアントPCに印刷ジョブ要求を送信する印刷ジョブ要求送信工程と、
前記クライアントPCから受信した前記印刷ジョブを、当該印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール工程とを備えることを特徴とする制御方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8A】
image rotate

【図8B】
image rotate


【公開番号】特開2012−133590(P2012−133590A)
【公開日】平成24年7月12日(2012.7.12)
【国際特許分類】
【出願番号】特願2010−285128(P2010−285128)
【出願日】平成22年12月21日(2010.12.21)
【出願人】(500232640)キヤノンイメージングシステムズ株式会社 (27)