(57)【要約】【課題】ＰＣスプール方式とサーバスプール方式を組み合わせて、両スプール方式のメリットを生かしたプリントシステムを提供する。【解決手段】ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣが、印刷指示に基づいて秘匿レベル情報及び印刷設定情報を付加する付加手段と、印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、印刷ジョブのスプール先を判定するスプール先判定手段と、スプール先判定手段により印刷ジョブのスプール先がプリントサーバであると判定された場合、ネットワーク上のプリントサーバにスプール要求を送信する送信手段とを備える。【選択図】図２
2012133590.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣにおいて、
前記印刷指示に基づいて、前記印刷ジョブに秘匿性の度合を示す秘匿レベル情報及び印刷出力形式に関する印刷設定情報を付加する付加手段と、
前記印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定手段と、
前記スプール先判定手段により前記印刷ジョブのスプール先が自クライアントＰＣであると判定された場合、前記印刷ジョブを作成したユーザを特定するためのユーザ情報と前記印刷ジョブとを対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と、
前記スプール先判定手段により前記印刷ジョブのスプール先がプリントサーバであると判定された場合、前記ネットワーク上のプリントサーバにスプール要求を送信するスプール要求手段と、
前記プリントサーバから受信した前記スプール要求に対する応答情報に基づいて前記プリントサーバで前記印刷ジョブのスプールが可能か否かを判定するスプール可否判定手段と、
前記スプール可否判定手段により前記プリントサーバでのスプールが可能であると判定された場合、当該プリントサーバに前記印刷ジョブを送信する印刷ジョブ送信手段とを備えることを特徴とするクライアントＰＣ。
【請求項２】
前記プリントサーバに前記印刷ジョブのスプール先を示すスプール先情報を送信するスプール先情報送信手段をさらに備えることを特徴とする請求項１に記載のクライアントＰＣ。
【請求項３】
前記スプール要求手段は、前記ネットワークに接続されたプリントサーバのすべてに前記スプール要求を送信し、
前記印刷ジョブ送信手段は、前記スプール可否判定手段により前記印刷ジョブのスプールが可能であると判定されたプリントサーバに対して前記印刷ジョブを送信することを特徴とする請求項１に記載のクライアントＰＣ。
【請求項４】
前記印刷指示に基づいて前記印刷ジョブに出力予約を設定する設定手段をさらに備え、
前記出力予約に設定された予約時間の経過後に、前記スプール要求手段が前記スプール要求を送信することを特徴とする請求項１乃至３のいずれか１項に記載のクライアントＰＣ。
【請求項５】
印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣにネットワークを介して接続されたプリントサーバにおいて、
前記クライアントＰＣからスプール要求を受信するスプール要求受信手段と、
前記受信したスプール要求に応じてスプールの可否を判定するスプール可否判定手段と、
前記スプール可否判定手段により前記印刷ジョブのスプールが可能であると判定された場合、前記クライアントＰＣに印刷ジョブ要求を送信する印刷ジョブ要求送信手段と、
前記クライアントＰＣから受信した前記印刷ジョブを、当該印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と備えることを特徴とするプリントサーバ。
【請求項６】
前記スプール可否判定手段により前記印刷ジョブのスプールが不可能であると判定された場合、前記クライアントＰＣに対して、スプールができない旨の応答を行う応答手段をさらに備えることを特徴とする請求項５に記載のプリントサーバ。
【請求項７】
認証済みのユーザ情報と出力先のプリンタを示すプリンタ情報を含む印刷要求を受信する印刷要求受信手段と、
前記ユーザ情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定手段と、
前記スプール先判定手段により前記印刷ジョブのスプール先が自プリントサーバであると判定された場合、前記プリンタ情報に基づいてプリンタドライバを選択してレンダリング処理を行い、出力先のプリンタに適合する印刷データを作成する印刷データ作成手段と、
前記印刷要求の送信元に、前記作成した印刷データを送信する印刷データ送信手段とを備えることを特徴とする請求項５または６に記載のプリントサーバ。
【請求項８】
前記スプール先判定手段により前記印刷ジョブのスプール先が自プリントサーバでないと判定された場合、前記ユーザ情報が登録されているユーザリスト及び前記クライアントＰＣから通知されるスプール先情報の有無に基づいて、前記を転送するクライアントＰＣを選択し、当該選択したクライアントＰＣに対して当該印刷要求を転送する印刷要求転送手段をさらに備えることを特徴とする請求項５乃至７のいずれか１項に記載のプリントサーバ。
【請求項９】
前記印刷データ作成手段により印刷データが作成された後、自プリントサーバ以外に前記印刷ジョブをスプールしているプリントサーバに対して前記印刷ジョブの削除要求を送信する削除要求送信手段と、
前記印刷ジョブの削除要求を受信した場合、前記スプール手段にスプールしている該当の印刷ジョブを削除する印刷ジョブ削除手段とをさらに備えることを特徴とする請求項７記載のプリントサーバ。
【請求項１０】
請求項１乃至４のいずれか１項に記載のクライアントＰＣと、請求項５乃至９のいずれか１項に記載のプリントサーバと、前記クライアントＰＣまたは前記プリントサーバから受信した印刷データを印刷出力するプリンタとが、ネットワークを介して接続されているプリントシステム。
【請求項１１】
ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣの制御方法において、
前記印刷指示に基づいて、前記印刷ジョブに秘匿性の度合を示す秘匿レベル情報及び印刷出力形式に関する印刷設定情報を付加する付加工程と、
前記印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定工程と、
前記スプール先判定工程により前記印刷ジョブのスプール先が自クライアントＰＣであると判定された場合、前記印刷ジョブを作成したユーザを特定するためのユーザ情報と前記印刷ジョブとを対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール工程と、
前記スプール先判定工程により前記印刷ジョブのスプール先がプリントサーバであると判定された場合、前記ネットワーク上のプリントサーバにスプール要求を送信するスプール要求工程と、
前記プリントサーバから受信した前記スプール要求に対する応答情報に基づいて前記プリントサーバで前記印刷ジョブのスプールが可能か否かを判定するスプール可否判定工程と、
前記スプール可否判定工程により前記プリントサーバでのスプールが可能であると判定された場合、当該プリントサーバに前記印刷ジョブを送信する印刷ジョブ送信工程とを備えることを特徴とする制御方法。
【請求項１２】
印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣにネットワークを介して接続されたプリントサーバの制御方法において、
前記クライアントＰＣからスプール要求を受信するスプール要求受信工程と、
前記受信したスプール要求に応じてスプールの可否を判定するスプール可否判定工程と、
前記スプール可否判定工程により前記印刷ジョブのスプールが可能であると判定された場合、前記クライアントＰＣに印刷ジョブ要求を送信する印刷ジョブ要求送信工程と、
前記クライアントＰＣから受信した前記印刷ジョブを、当該印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール工程とを備えることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリントシステム、クラインアントＰＣ及びその制御方法、プリントサーバ及びその制御方法に関し、特に、印刷ジョブのスプールをプリントサーバとクライアントＰＣで分散して行うプリントシステム、クラインアントＰＣ及びその制御方法、プリントサーバ及びその制御方法に関する。
【背景技術】
【０００２】
従来、クライアントＰＣまたはプリントサーバ（印刷ジョブサーバ）にプリンタに依存しない中間ファイル形式の印刷ジョブをスプールし、その印刷ジョブを、複数あるプリンタのうち出力先として選択されたプリンタに適した印刷データに変換して、ネットワークを介して印刷することができるプリントシステムがある（例えば、特許文献１、特許文献２参照）。
【０００３】
特許文献１は、クライアントＰＣに印刷ジョブをスプールする方式（以下、「ＰＣスプール方式」と呼ぶ）であり、特許文献２は、プリントサーバに印刷ジョブをスプールする方式（以下、「サーバスプール方式」と呼ぶ）である。ＰＣスプール方式のメリットには、例えば、秘匿性の高い印刷データを印刷出力までクライアントＰＣで保持することからセキュリティ性が高い点が挙げられる。一方、サーバスプール方式のメリットには、例えば、プリントサーバにシステムで利用できるプリンタの機種に応じたプリンタドライバをインストールしておくことで、個々のクライアントＰＣにはプリンタの種類に応じた多数のプリンタドライバをインストールする必要がない点が挙げられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特願２０１０−８５５９
【特許文献２】特開２００９−１９３０９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＰＣスプール方式では、システムを利用するクライアントＰＣ１台１台に、システムで利用できるプリンタの機種に応じたプリンタドライバがインストールされていなければならず、クライアントＰＣの使用者やシステム管理者がプリンタドライバをインストールする負担が大きい。
【０００６】
一方、サーバスプール方式では、大量の印刷ジョブがサーバにスプールされるとサーバの負荷が増大し、処理効率が低下するおそれがあり、また、秘匿性が高い印刷データの場合、サーバにスプールされることにはセキュリティ面に不安がある。
【０００７】
本発明は、上記問題に鑑みて成されたものであり、ＰＣスプール方式とサーバスプール方式を組み合わせて、両スプール方式のメリットを生かしたプリントシステムを構成することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１記載のクライアントＰＣは、ネットワークを介してプリントサーバに接続され、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣにおいて、前記印刷指示に基づいて、前記印刷ジョブに秘匿性の度合を示す秘匿レベル情報及び印刷出力形式に関する印刷設定情報を付加する付加手段と、前記印刷ジョブに付加された秘匿レベル情報及び印刷設定情報に基づいて、前記印刷ジョブのスプール先を判定するスプール先判定手段と、前記スプール先判定手段により前記印刷ジョブのスプール先が自クライアントＰＣであると判定された場合、前記印刷ジョブを作成したユーザを特定するためのユーザ情報と前記印刷ジョブとを対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と、前記スプール先判定手段により前記印刷ジョブのスプール先がプリントサーバであると判定された場合、前記ネットワーク上のプリントサーバにスプール要求を送信するスプール要求手段と、前記プリントサーバから受信した前記スプール要求に対する応答情報に基づいて前記プリントサーバで前記印刷ジョブのスプールが可能か否かを判定するスプール可否判定手段と、前記スプール可否判定手段により前記プリントサーバでのスプールが可能であると判定された場合、当該プリントサーバに前記印刷ジョブを送信する印刷ジョブ送信手段とを備えることを特徴とする。
【０００９】
上記目的を達成するために、請求項５記載のプリントサーバは、印刷指示に基づいて印刷ジョブを作成し、当該印刷ジョブをスプールすることが可能なクライアントＰＣにネットワークを介して接続されたプリントサーバにおいて、前記クライアントＰＣからスプール要求を受信するスプール要求受信手段と、前記受信したスプール要求に応じてスプールの可否を判定するスプール可否判定手段と、前記スプール可否判定手段により前記印刷ジョブのスプールが可能であると判定された場合、前記クライアントＰＣに印刷ジョブ要求を送信する印刷ジョブ要求送信手段と、前記クライアントＰＣから受信した前記印刷ジョブを、当該印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブリストに登録し、当該印刷ジョブをスプールするスプール手段と備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、クライアントＰＣが印刷ジョブの内容（秘匿性、印刷設定）とプリントサーバの状態（プリンタドライバの有無／負荷状況）に応じて、ＰＣスプール方式またはサーバスプール方式のいずれか一方を選択するので、ユーザがスプール先の選択、システムの稼働状況を意識することなく、個々の印刷ジョブに適ったスプール先に印刷ジョブがスプールされる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態に係るプリントシステムの概略構成を示す図である。
【図２】図１のクライアントＰＣ１００にて実行されるスプール先判定処理の流れを示すフローチャートである。
【図３】図１のプリントサーバ２００にて実行されるスプール可否判定処理の流れを示すフローチャートである。
【図４】プリントサーバ２００にて実行されるスプール先判定処理の流れを示すフローチャートである。
【図５】プリントサーバから印刷要求を転送する場合の条件の一例を示す図である。
【図６】印刷ジョブリストの一例を示す図である。
【図７】本発明の第２の実施形態に係るプリントシステムの概略構成を示す図である。
【図８Ａ】第２の実施形態における複数の印刷ジョブのスプール処理の流れを示すシーケンスである。
【図８Ｂ】第２の実施形態における複数の印刷ジョブのスプール処理の流れを示すシーケンスである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１３】
［第１の実施形態］
図１は、本発明の第１の実施形態に係るプリントシステムの概略構成を示す図である。
【００１４】
図１のプリントシステムでは、複数のクライアントＰＣ１００，１１０と、プリントサーバ２００と、複数の認証ＢＯＸ３００，３１０とが、有線又は無線のネットワーク６００で互いに接続されている。
【００１５】
クライアントＰＣ１００，１１０は、パーソナルコンピュータ等の情報処理装置であり、ネットワーク６００を介して、プリントサーバ２００や認証ＢＯＸ３００，３１０と通信する機能を備える。例えば、クライアントＰＣ１００，１１０は、ネットワーク６００上の複数のプリンタの中から出力先として指定されたプリンタに接続された認証ＢＯＸに対して印刷ジョブを送信する。なお、クライアントＰＣ１００，１１０は、パーソナルコンピュータに限定されるものではなく、携帯電話やモバイル端末であってもよい。また、ネットワーク６００上のクライアントＰＣの台数も図示例に限定されるものではない。
【００１６】
プリントサーバ２００は、サーバ機能を備える情報処理装置であり、ネットワーク６００を介して、クライアントＰＣ１００，１００や認証ＢＯＸ３００，３１０と通信する機能を備える。例えば、プリントサーバ２００は、クライアントＰＣ１００から受信した印刷ジョブをスプールし、出力先に設定されたプリンタに対応したプリンタドライバを選択してレンダリング処理を行って印刷データに変換して、認証ＢＯＸ３００に送信する。
【００１７】
認証ＢＯＸ３００，３１０は、ＩＣカード等の記録媒体からデータを読み取ることができるカードリーダを備える。この認証ＢＯＸ３００，３１０は、読み取ったユーザ情報(例えば、カードＩＤ)に基づいてユーザ認証を行い、認証された場合にプリントサーバ２００に印刷要求を送信する。また、認証ＢＯＸ３００，３１０は、印刷データをプリントサーバ２００やクライアントＰＣから受信すると、ケーブル５００を介して、プリンタに印刷データを送信する機能を備える。ケーブル５００は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）やＩＥＥＥ１３９４などに準拠したインターフェースケーブルである。
【００１８】
プリンタ４００，４１０は、印刷データを出力する印刷装置であり、プリント機能を備えた単機能周辺装置（ＳＦＰ：Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）、あるいは、プリント機能の他にスキャン機能やコピー機能、ストレージ機能などを兼ね備えた多機能周辺装置（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）である。なお、プリンタ４００，４１０は、これらに限定されるものでなく、印刷機能を備えた別のデバイスであってもよい。また、ネットワーク６００上のプリンタの台数も図示例に限定されるものではない。
【００１９】
次に、クライアントＰＣ１００，１１０について説明する。なお、本実施形態では、クライアントＰＣ１００，１１０は同一の構成を有することから、クライアントＰＣ１００について説明する。
【００２０】
クライアントＰＣ１００は、一般的なパーソナルコンピュータが備えるハードウェア構成として、不図示のＣＰＵ、入力部、表示部、メモリ、通信部、記憶部などを備え、これらが内部バスで接続されている。ＣＰＵはクライアントＰＣ１００内の各部を制御する中央処理装置である。入力部はキーボードやマウス等の操作装置である。表示部は液晶モニタ等の表示装置である。メモリは、ＲＡＭ、ＲＯＭ等の記憶装置である。通信部は、ネットワーク６００に接続するためのインターフェースであり、プリントサーバ２００、認証ＢＯＸ３００とデータ通信を行うことで、クライアントＰＣ１００から印刷ジョブや印刷データを送受信することが可能となる。記憶部は、ハードディスク等の記憶装置である。
【００２１】
記憶部には、ソフトウェアとして、印刷ジョブ作成機能部１０１、スプール分散機能部１０２、印刷ジョブ記憶部１０３、印刷データ作成機能部１０５、及び通信制御部１０７が記憶されている。なお、記憶部には、他の機能に関するソフトウェアも記憶されているが、本発明に関わるもののみを説明する。
【００２２】
印刷ジョブ作成機能部１０１は、クライアントＰＣ上で起動中のアプリケーションソフトウェアから印刷指示を受けると、プリンタメーカーや機種に依存しない形式の印刷ジョブ（中間データ）を作成し、当該中間データに秘匿レベル（機密レベル）情報や印刷設定情報を付加して、印刷ジョブ記憶部１０３へ送信する機能を有する。ここで、メーカーや機種に依存しない印刷ジョブ（中間データ）には、例えば、ＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａ  Ｆｉｌｅ）形式のデータがある。秘匿レベル情報とは、印刷データの秘匿性の度合を示す情報であり、例えば、「関係者外秘」、「社外秘」、「その他」等が挙げられる。
【００２３】
印刷設定情報は、印刷出力形式に関する設定であり、印刷部数や印刷の向きなど、設定の適用可否がプリンタの種類によって左右されない基本的な設定情報と、両面印刷や製本印刷、Ｎアップ印刷（複数ページを１枚の用紙に印刷）、特殊用紙印刷（サイズや紙質が特殊な用紙での印刷）など、設定の適用可否がプリンタの種類によって左右される設定情報（以下、詳細設定情報）とがある。
【００２４】
スプール分散機能部１０２は、印刷ジョブに付加された秘匿レベル情報、印刷設定情報の内容に基づき、自クライアントＰＣにスプールすべきか否かの判定（スプール先の判定）を行う機能を有する。スプール分散機能部１０２により自クライアントＰＣでスプールすべきと判定しなかった場合には、サーバスプール方式が選択され、プリントサーバ２００に対してクライアントＰＣから「スプール要求」が送信される。一方、自クライアントＰＣでスプールすべきと判定した場合には、ＰＣスプール方式が選択される。なお、プリントサーバ２００に対して、クライアントＰＣから印刷ジョブをスプールしたことを示すスプール先情報を送信する機能も有する。スプール先情報には、ユーザ情報、クライアントＰＣの識別情報（ＩＰアドレスやクライアントＰＣ名）等が含まれる。
【００２５】
印刷ジョブ記憶部１０３は、スプール先が自クライアントＰＣであるＰＣスプール方式が選択された場合に、スプール分散機能部１０２の指示に従い、印刷ジョブ作成機能部１０１で生成された印刷ジョブを受信し、データを作成した（アプリケーションソフトウェアから印刷指示した）ユーザを特定するためのユーザ情報と対応付けて印刷ジョブを記憶（スプール）し、印刷ジョブリスト１０４に登録して管理する機能を有する。印刷ジョブリスト１０４は、印刷ジョブ名とユーザ情報が対応付けて登録されたリスト情報であり、自クライアントＰＣでスプールしている印刷ジョブのみを登録する。サーバスプール方式が選択された場合は、印刷ジョブ作成機能部１０１で生成された印刷ジョブを印刷ジョブ記憶部１０３に記憶することなく、プリントサーバ２００に送信する。
【００２６】
印刷データ作成機能部１０５は、プリンタドライバ１０６を少なくとも１つ備え、プリントサーバ２００からの印刷要求に基づき、印刷ジョブリスト１０４を参照し、該当する印刷ジョブ（中間データ）をプリンタドライバ１０６を選択してレンダリング処理を行い、出力先のプリンタ４００，４１０に適合した形式の印刷データを作成する機能を有する。
【００２７】
通信制御部１０７は、プリントサーバ２００や認証ＢＯＸ３００，３１０との間の通信を制御する。
【００２８】
次に、プリントサーバ２００について説明する。
【００２９】
プリントサーバ２００は、クライアントＰＣと同様に、ＣＰＵ、入力部、表示部、メモリ、通信部、記憶部などから構成されており、これらが内部バスで接続されている。これらの説明については省略する。
【００３０】
記憶部には、ソフトウェアとして、通信制御部２０１、スプール判定機能部２０２、印刷ジョブ記憶部２０３、及び印刷データ作成機能部２０５が記憶されている。
【００３１】
通信制御部２０１は、通信部を介してクライアントＰＣ１００，１１０や認証ＢＯＸ３００，３１０との間の通信を制御する機能を有する。
【００３２】
スプール判定機能部２０２は、２つの機能を持つ。まず、第１の機能として、クライアントＰＣからのスプール要求に応じて、プリントサーバのプリンタドライバ保持状況／負荷状況を確認し、プリントサーバ自身に印刷ジョブのスプールが可能であるか否かを判定する機能を備える。例えば、プリントサーバ２００自身の処理負荷がシステム管理者などによって予め定められた値（以下、規定値）以下と判定した場合、印刷ジョブのスプールが実施可能と判定し、クライアントＰＣに対して「印刷ジョブ要求」を送る。一方、プリントサーバ２００自身の処理負荷が規定値より高いと判定した場合、印刷ジョブのスプールが不可能であると判定し、スプール要求の送信元のクライアントＰＣに対して、スプールができない旨の応答（以下、「スプールＮＧ応答」とする）を返す。
【００３３】
また、スプール判定機能部２０２は、第２の機能として、認証ＢＯＸ３００，３１０から受信したユーザ情報に基づいて、印刷ジョブのスプール先がプリントサーバ自身か、クライアントＰＣかを判定する機能を備える。印刷ジョブのスプール先がプリントサーバ自身であると判定した場合は、印刷データ作成機能部２０５に印刷要求を送り、レンダリング処理を指示する。一方、印刷ジョブのスプール先がクライアントＰＣであると判定した場合、プリントサーバから該当するクライアントＰＣに印刷要求を送信する。なお、印刷要求の送り先であるクライアントＰＣは、ユーザリスト、スプール先情報の有無により異なる。ユーザリストは、ユーザ情報とクライアントＰＣの情報とを対応付けたリストである。
【００３４】
印刷ジョブ記憶部２０３は、プリントサーバ２００にスプールする印刷ジョブをユーザ情報と対応付けて記憶（スプール）し、スプールした印刷ジョブを印刷ジョブリスト２０４に登録して管理する機能を有する。印刷ジョブリスト２０４は、図６に示すように、印刷ジョブ名と、ユーザ情報と、スプール先とが対応付けて登録されたリスト情報である。なお、印刷ジョブリスト２０４は、プリントサーバ自身にスプールされている印刷ジョブとクライアントＰＣにスプールされている印刷ジョブを登録する。
【００３５】
印刷データ作成機能部２０５は、プリンタドライバ２０６を少なくとも１つ備え、プリンタドライバ２０６を選択して印刷ジョブのレンダリング処理を行い、出力先のプリンタに適合した形式の印刷データを作成する。
【００３６】
次に、図１のクライアントＰＣ１００，１１０における印刷ジョブのスプール先判定処理について説明する。本実施形態では、クライアントＰＣ１００にてスプール先判定処理が行われる場合について説明するが、クライアントＰＣ１１０でも実行可能であることは云うまでもない。
【００３７】
図２は、図１のクライアントＰＣ１００にて実行されるスプール先判定処理の流れを示すフローチャートである。
【００３８】
クライアントＰＣ１００では、印刷ジョブ作成機能部１０１が、アプリケーションソフトウェアからの印刷指示に応じて、指定された秘匿レベル情報、印刷設定情報などを付加して印刷ジョブ（中間データ）を作成する（ステップＳ２０１）。
【００３９】
次に、スプール分散機能部１０２は、印刷ジョブに付加された秘匿レベル情報、印刷設定情報を確認し（ステップＳ２０２）、これらの情報に基づいてスプール先を判定する（ステップＳ２０３）。ここで、スプール先の判定方法について具体的に説明する。
【００４０】
スプール分散機能部１０２は、印刷ジョブに付加された秘匿レベル情報に基づいて、印刷ジョブのスプール先の判定を行う。例えば、セキュリティレベルが高い（社外秘）設定の印刷ジョブならば、自クライアントＰＣにスプールし、セキュリティレベルが低い（設定なし、通常時）設定の印刷ジョブならば、プリントサーバ２００にスプールする。秘匿レベル情報は、印刷指示時のユーザによる設定も可能だが、印刷ジョブの内容から自動的に判定することも可能とする。
【００４１】
また、スプール分散機能部１０２は、印刷ジョブに付加された印刷設定情報に基づいて、印刷ジョブのスプール先の判定を行う。例えば、詳細設定情報を含む印刷設定がなされ、出力先として特定のプリンタが予め選択された印刷ジョブの場合には、自クライアントＰＣにスプールする。印刷設定情報は、印刷指示時のユーザによる設定も可能だが、印刷内容から自動的に判定することも可能とする。なお、出力先となるプリンタを予め選択するか、認証ＢＯＸから選択するかは、ユーザがアプリケーションソフトウェアで任意に設定できるようにすればよい。
【００４２】
ステップＳ２０３の判定の結果、スプール先が自クライアントＰＣと判定された場合、印刷ジョブ記憶部１０３は、スプール分散機能部１０２の指示に従い、印刷ジョブ作成機能部１０１で生成された印刷ジョブを受信し、印刷ジョブを作成したユーザを特定するためのユーザ情報と対応付けて印刷ジョブを記憶（スプール）し、印刷ジョブリスト１０４に登録する（ステップＳ２０４）。
【００４３】
一方、ステップＳ２０３の判定の結果、スプール先がプリントサーバと判定された場合、スプール分散機能部１０２は、プリントサーバ２００にスプール要求を送信し（ステップＳ２０５）、プリントサーバ２００からの応答情報を受信し（ステップＳ２０６）、プリントサーバ２００で印刷ジョブのスプールが可能か否かを判定する（ステップＳ２０７）。この判定の結果、プリントサーバ２００でのスプールが不可能であると判定した場合、ステップＳ２０４へ進む一方、プリントサーバ２００でのスプールが可能であると判定した場合、印刷ジョブのスプール先をプリントサーバとして、プリントサーバ２００に印刷ジョブを送信する（ステップＳ２０８）。
【００４４】
次に、ステップＳ２０９において、スプール分散機能部１０２は、プリントサーバ２００に印刷ジョブのスプール先を示すスプール先情報を送信して、本処理を終了する。
【００４５】
次に、図１のプリントサーバ２００がクライアントＰＣ１００からスプール要求を受信した場合に実行されるスプール可否判定処理について説明する。
【００４６】
図３は、図１のプリントサーバ２００にて実行されるスプール可否判定処理の流れを示すフローチャートである。
【００４７】
プリントサーバ２００は、クライアントＰＣ１００からスプール要求を受信すると（ステップＳ３０１でＹＥＳ）、スプール判定機能部２０２が、当該スプール要求に応じて、プリントサーバ自身のプリンタドライバの保持状況及び負荷状況を確認し（ステップＳ３０２）、プリントサーバ自身に印刷ジョブのスプールが可能か否かを判定する（ステップＳ３０３）。ここで、スプールの可否の判定方法について具体的に説明する。
【００４８】
まず、スプール判定機能部２０２は、印刷データ作成機能部２０５にて管理されているプリンタドライバを参照し、受信したスプール要求が、プリントサーバ自身にプリンタドライバが保持されていないプリンタに対する印刷ジョブに基づくものであるか否かを判定する。プリントサーバ自身にプリンタドライバが保持されていないプリンタに対する印刷ジョブに基づくものである場合には、スプールが不可能と判定される。
【００４９】
また、スプール判定機能部２０２は、プリントサーバ自身の負荷状況が規定値より高いか否かを判定する。プリントサーバ自身の負荷状況が規定値より高いと判定した場合には、スプールが不可能と判定される。
【００５０】
ステップＳ３０３の判定の結果、スプールが不可能と判定した場合、通信制御部２０１は、スプール要求を送信したクライアントＰＣ１００に対してスプールＮＧ応答を応答して（ステップＳ３０７）、本処理を終了する。一方、スプールが可能と判定した場合、通信制御部２０１は、スプール要求を送信したクライアントＰＣ１００に対して印刷ジョブ要求を送信する（ステップＳ３０４）。
【００５１】
次に、ステップＳ３０４で印刷ジョブ要求を送信したクライアントＰＣ１００から印刷ジョブを受信（ステップＳ３０５）すると、印刷ジョブ記憶部２０３は、当該印刷ジョブをユーザ情報と対応付けてスプールし、スプールした印刷ジョブを印刷ジョブリスト２０４に登録し（ステップＳ３０６）、本処理を終了する。
【００５２】
次に、認証ＢＯＸ３００，３１０から受信した印刷要求に対するプリントサーバ２００のスプール先判定処理について説明する。
【００５３】
図４は、プリントサーバ２００にて実行されるスプール先判定処理の流れを示すフローチャートである。
【００５４】
プリントサーバ２００は、例えば、認証ＢＯＸ３００から印刷要求を受信すると（ステップＳ４０１）、スプール判定機能部２０２が、当該印刷要求に含まれる、認証済みのユーザ情報（ユーザＩＤ等）に基づいて、印刷ジョブのスプール先の判定を行う（ステップＳ４０２）。クライアントＰＣ及びプリントサーバにスプールされた印刷ジョブは、ユーザ情報に対応付けて印刷ジョブリスト２０４に登録されていることから、印刷ジョブリスト２０４に印刷ジョブが登録されているか否かが判定される。なお、ステップＳ４０１で受信するプリンタ情報には、ユーザ情報の他に、出力先に設定されたプリンタの機種名、プリンタドライバの種類等の情報が含まれる。
【００５５】
ステップＳ４０２の判定の結果、印刷ジョブのスプール先がプリントサーバ２００でないと判定した場合、ステップＳ４０５へ進む。一方、印刷ジョブのスプール先がプリントサーバ２００であると判定した場合、印刷データ作成機能部２０５は、印刷要求に含まれているプリンタ情報に対応するプリンタドライバ２０６を選択して当該印刷ジョブのレンダリング処理を行い、例えば、出力先のプリンタに適合した形式の印刷データを作成する（ステップＳ４０３）。そして、通信制御部２０１は、作成された印刷データを認証ＢＯＸ３００に送信して（ステップＳ４０４）、ステップＳ４０５へ移行する。
【００５６】
ステップＳ４０５において、スプール判定機能部２０２は、印刷ジョブのスプール先のクライアントＰＣの確認を行い、図５に示すような条件に当てはまるクライアントＰＣに対して、印刷要求の転送を行う（ステップＳ４０６）。例えば、プリントサーバ２００にユーザリストが保持され、且つクライアントＰＣからスプール先情報の通知があった場合には、当該ユーザリストに登録済みのクライアントＰＣに対してプリントサーバ２００から印刷要求を転送する。一方、プリントサーバ２００にユーザリストが保持されておらず、且つクライアントＰＣからスプール先情報の通知があった場合には、当該通知があったクライアントＰＣに対してプリントサーバ２００から印刷要求を転送する。
【００５７】
また、プリントサーバにユーザリストが保持され、且つクライアントＰＣからスプール先情報の通知がなかった場合には、当該ユーザリストに登録された全クライアントＰＣに対してプリントサーバ２００から印刷要求を転送する。一方、プリントサーバ２００にユーザリストが保持されておらず、且つクライアントＰＣからスプール先情報の通知がなかった場合には、ブロードキャスト送信により印刷要求の転送を行う。
【００５８】
上記実施形態によれば、クライアントＰＣが印刷ジョブの内容（秘匿性、印刷設定）とプリントサーバの状態（プリンタドライバの有無／負荷状況）に応じて、ＰＣスプール方式またはサーバスプール方式のいずれか一方を選択するので、ユーザがスプール先の選択、システムの稼働状況を意識することなく、個々の印刷ジョブに適ったスプール先に印刷ジョブがスプールされる。
【００５９】
［第２の実施形態］
本発明の第２の実施の形態では、印刷ジョブを複数のプリントサーバにスプール（多重化）し、さらに、印刷ジョブの出力予約（スプール予約）を行うことが特徴である。
【００６０】
複数のプリントサーバに印刷ジョブをスプールすることで、印刷ジョブをスプールした一方のプリントサーバにトラブルが生じても、他方のプリントサーバにスプールされた印刷ジョブから印刷出力が可能となる。また、出力予約（スプール予約）して、出力予約時間まで印刷ジョブをクライアントＰＣで保留（記憶）することで、所望の印刷結果を指定した時間に得ることが可能となる。
【００６１】
本発明の第２の実施の形態に係るプリントシステムは、その構成が、図１のプリントシステムに対して、プリントサーバ２１０を備える点、複数のプリントサーバ２００，２１０がそれぞれプリンタ４００，４１０を管理する点、及びインターネット等の外部ネットワーク７００を介してネットワーク接続されている点が異なる。上記第１の実施形態と同様の部分については同一の符号を付してその説明を省略する。
【００６２】
図７は、本発明の第２の実施形態に係るプリントシステムの概略構成を示す図である。
【００６３】
図７のプリントシステムにおいて、拠点Ａでは、クライアントＰＣ１００と、プリントサーバ２００と、認証ＢＯＸ３００とが有線又は無線のネットワーク６００で互いに接続されている。認証ＢＯＸ３００とプリンタ４００とは、ケーブル５００を介して接続されている。一方、拠点Ｂでは、プリントサーバ２１０と、認証ＢＯＸ３１０とが有線又は無線のネットワーク６１０で互いに接続されている。認証ＢＯＸ３１０とプリンタ４１０とは、ケーブル５００を介して接続されている。
【００６４】
拠点Ａと拠点Ｂとは離れた位置に設置されており、拠点Ａのネットワーク６００と拠点Ｂのネットワーク６１０は、インターネット等の外部ネットワーク７００を介して接続されている。なお、認証ＢＯＸは同一の拠点内のプリントサーバにのみ印刷要求を送信する。例えば、拠点Ｂ内に存在する認証ＢＯＸ３１０は、印刷要求を同一拠点内のプリントサーバ２１０に送信する。また、拠点内に存在するクライアントＰＣ、プリントサーバ、認証ＢＯＸ、プリンタの台数は図示例に限定されるものではない。
【００６５】
次に、拠点ＡのクライアントＰＣ１００で作成した複数の文書をプリンタで印刷出力する場合の実施形態について説明する。
【００６６】
図８Ａ、図８Ｂは、図７のプリントシステムにおける印刷処理の流れを示すシーケンス図である。
【００６７】
拠点ＡのクライアントＰＣ１００において、１０時に文書１，２が作成され、文書１は、出力予約なしでプリントサーバへ送信され、文書２は、１６時に出力予約（スプール予約）がなされたものとして説明する。
【００６８】
図８Ａにおいて、クライアントＰＣ１００では、印刷ジョブ作成機能部１０１が、アプリケーションソフトウェアから順になされた文書１，２の印刷指示１，２に応じて、文書１，２に対応する印刷ジョブ１，２を作成する（シーケンスＳ８０１）。
【００６９】
次に、スプール分散機能部１０２は、印刷ジョブ１，２のスプール先判定を行う（シーケンスＳ８０２）。
【００７０】
印刷ジョブ１は、スプール先がプリントサーバ（サーバスプール方式）と判定されるので、次に、シーケンスＳ８０３でクライアントＰＣ１００は、プリントサーバ２００，２１０に対してそれぞれスプール要求を送信する。
【００７１】
印刷ジョブ２は、スプール先がプリントサーバ（サーバスプール方式）と判定されるが、出力予約が設定されているため、印刷ジョブ記憶部１０３に記憶（保留）され、スプール分散機能部１０２により印刷ジョブリスト１０４に登録される。なお、スプール分散機能部１０２は、印刷ジョブリスト１０４に出力予約が設定されている印刷ジョブを登録する場合は、印刷ジョブ名、ユーザ情報に加えて、予約時間、スプール先判定結果の情報を登録する。
【００７２】
プリントサーバ２００，２１０は、印刷ジョブ１のスプール要求を受信すると、自プリントサーバのプリンタドライバの保持状況及び負荷状況を確認して、スプールが可能か否かを判定し（シーケンスＳ８０４）、それぞれの判定結果をクライアントＰＣ１００に返す（シーケンスＳ８０５）。本実施形態では、スプール要求を行った２つのプリントサーバ２００，２１０でスプールが可能であるものとし、プリントサーバ２００，２１０からクライアントＰＣ１００に対して、それぞれ印刷ジョブ要求が送信されるものとして説明するが、スプール要求を行った２つのプリントサーバ２００，２１０のいずれか一方のみスプール可能である場合や両方のプリントサーバがスプール不可能である場合もあることは、云うまでもない。
【００７３】
クライアントＰＣ１００は、プリントサーバ２００，２１０から受信した印刷ジョブ要求に応じて、プリントサーバ２００，２１０に対して印刷ジョブ１を送信する（シーケンスＳ８０５）。その結果、プリントサーバ２００，２１０の両方に印刷ジョブ１がスプールされる。
【００７４】
次に、認証ＢＯＸ３００では、例えば１１時に、ＩＣカードから取得したユーザ情報（カードＩＤ等）の認証が成功すると、プリントサーバ２００に対して、認証済みのユーザ情報を含む印刷要求を送信する（シーケンスＳ８１０）。
【００７５】
プリントサーバ２００は、認証ＢＯＸ３００から受信した印刷要求に含まれるユーザ情報と印刷ジョブリスト２０４を参照して、印刷ジョブ１のスプール先の確認を行う（シーケンスＳ８１１）。ここでは、図４のステップＳ４０５で説明した処理が実行される。スプール判定機能部２０２は、印刷ジョブリスト２０４の登録情報からプリントサーバ２００に印刷ジョブ１がスプールされていることを確認する。次に、印刷データ作成機能部２０５が、出力先に指定されたプリンタ４００に対応するプリンタドライバを選択してレンダリング処理を行い、出力先のプリンタ４００に適合した形式の印刷データ１を作成する（シーケンスＳ８１１）。そして、認証ＢＯＸ３００を介してプリンタ４００に印刷データ１が送信され（シーケンスＳ８１２）、プリンタ４００で印刷データ１が印刷出力される。
【００７６】
プリントサーバ２００は、認証ＢＯＸ３００に印刷データ１を送信すると、プリンタ４００にて印刷データ１の印刷出力が実行されたとみなして、印刷ジョブ１がスプールされているプリントサーバ２１０に対して、印刷ジョブ１の削除要求を送信する（シーケンスＳ８１３）。
【００７７】
プリントサーバ２１０は、印刷ジョブ１の削除要求を受信すると、スプールしている印刷ジョブ１を削除する。
【００７８】
図８Ｂにおいて、出力予約が設定された印刷ジョブ２の予約時間になると（シーケンスＳ９０１）、クライアントＰＣ１００は、印刷ジョブリスト１０４を参照して、シーケンスＳ８０２で判定した印刷ジョブ２のスプール先判定結果（プリントサーバ）に基づいて、プリントサーバ２００，２１０にスプール要求を送信する（シーケンスＳ９０２）。
【００７９】
プリントサーバ２００，２１０は、印刷ジョブ２のスプール要求を受信すると、自プリントサーバのプリンタドライバの保持状況及び負荷状況を確認して、スプールが可能か否かを判定し（シーケンスＳ９０３）、それぞれの判定結果をクライアントＰＣ１００に返す（シーケンスＳ９０４）。本実施形態では、スプール要求を行った２つのプリントサーバ２００，２１０でスプールが可能であるものとし、プリントサーバ２００，２１０からクライアントＰＣ１００に対して、それぞれ印刷ジョブ要求をクライアントＰＣ１００に返すものとする。
【００８０】
クライアントＰＣ１００は、プリントサーバ２００，２１０から受信した印刷ジョブ要求に応じて、プリントサーバ２００，２１０に対して印刷ジョブ２を送信する（シーケンスＳ９０５）。その結果、プリントサーバ２００，２１０の両方に印刷ジョブ２がスプールされる。
【００８１】
次に、認証ＢＯＸ３１０では、ＩＣカードから取得したユーザ情報の認証が成功すると、プリントサーバ２１０に対して、認証済みのユーザ情報を含む印刷要求を送信する（シーケンスＳ９１０）。
【００８２】
プリントサーバ２１０は、認証ＢＯＸ３１０から受信した印刷要求に含まれるユーザ情報に基づいて、印刷ジョブリスト２０４を参照し、印刷ジョブ２のスプール先の確認を行う（シーケンスＳ９１１）。ここでは、図４のステップＳ４０５で説明した処理が実行される。スプール判定機能部２０２は、印刷ジョブリスト２０４の登録情報からプリントサーバ２００，２１０に印刷ジョブ２がスプールされていることを確認する。次に、印刷データ作成機能部２０５が、出力先のプリンタ４００に対応するプリンタドライバを選択してレンダリング処理を行い、出力先のプリンタ４１０に適合した形式の印刷データ２を作成する（シーケンスＳ９１１）。そして、プリントサーバ２１０は、プリンタ４１０に接続された認証ＢＯＸ３１０に印刷データを送信し（シーケンスＳ９１２）、プリンタ４１０で印刷データ２が印刷出力される。
【００８３】
プリントサーバ２１０は、認証ＢＯＸ３１０に印刷データ２を送信すると、プリンタ４１０にて印刷データ２の印刷出力が実行されたとみなして、通信制御部２０１が、印刷ジョブ２がスプールされているプリントサーバ２００に対して、印刷ジョブ２の削除要求を送信する（シーケンスＳ９１３）。
【００８４】
プリントサーバ２００は、印刷ジョブ２の削除要求を受信すると、スプールしている印刷ジョブ２を削除する。
【００８５】
本実施形態では、他のプリントサーバにスプールされている印刷ジョブの削除方法として、印刷データを出力（送信）したプリントサーバから直接他のプリントサーバに削除要求を送信しているが、これに限定されるものではなく、例えば、印刷データを出力したプリントサーバから該当するクライアントＰＣへ出力完了通知を行い、当該クライアントＰＣから全プリントサーバへ削除要求を行うように構成してもよい。また、印刷ジョブがスプールされたときから所定時間経過後に自動的に削除するように構成してもよい。
【００８６】
本実施形態では、出力予約が設定された印刷ジョブを予約時間までクライアントＰＣで保持するように構成しているが、プリントサーバにスプールして、予約時間まで印刷出力させないように構成してもよい。これにより、予約時間にクライアントＰＣが電源オフの状態であったり、ネットワークから切り離されている状態であっても、時間通りに印刷ジョブの印刷出力が可能となる。
【００８７】
また、予めクライアントＰＣからプリントサーバに予約時間情報を送信し、プリントサーバが予約時間になっても印刷ジョブを受信していなかった場合には、プリントサーバからクライアントＰＣに印刷ジョブ要求を送信するように構成してもよい。
【００８８】
さらに、予約時間になると、クライアントＰＣを起動させて印刷ジョブをプリントサーバに送信するように構成してもよい。この場合、クライアントＰＣの起動制御は、クライアントＰＣ自身が行うように構成しても、プリントサーバ側から行うように構成してもよい。
【００８９】
上記第１及び第２の実施形態では、認証ＢＯＸとプリンタがそれぞれ別体の装置で構成されているが、認証ＢＯＸをプリンタのケーシング内に収まるように一体構造としてもよい。また、プリンタ４００，４１０は、認証ＢＯＸ３００，３１０を介してネットワーク６００に接続されているが、直接ネットワーク６００に接続されている構成であってもよい。この場合、プリントサーバからプリンタに直接印刷データが送信されるものとする。
【００９０】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００９１】
１００，１１０  クライアントＰＣ
１０１  印刷ジョブ作成機能部
１０２  スプール分散機能部
１０３  印刷ジョブ記憶部
１０５  印刷データ作成機能部
１０６  プリンタドライバ
２００  プリントサーバ
３００，３１０  認証ＢＯＸ
４００，４１０  プリンタ
６００  ネットワーク
【図１】
2012133590.tif 000003
【図２】
2012133590.tif 000004
【図３】
2012133590.tif 000005
【図４】
2012133590.tif 000006
【図５】
2012133590.tif 000007
【図６】
2012133590.tif 000008
【図７】
2012133590.tif 000009
【図８Ａ】
2012133590.tif 000010
【図８Ｂ】
2012133590.tif 000011