(57)【要約】【課題】  クライアント、サーバ共に印刷装置の管理が必要のない簡易な構成で確実に早く印刷を遂行することのできる印刷システムを提供すること。【解決手段】  印刷装置を特定しない印刷ジョブをサーバに投入するクライアントコンピュータと、該サーバへ自身で利用可能な属性を通知することによってジョブを取得し印刷する印刷装置と、クライアントからの印刷ジョブをスプールし、印刷装置からのジョブ取得要求に際し属性に応じてジョブを選択し応答するサーバからなる構成とする。【選択図】        図１
2006209308.tif 000002
【特許請求の範囲】
【請求項１】
印刷処理を実行する１つ以上のクライアントコンピュータと、前記クライアントコンピュータからの印刷ジョブを受け付けスプールするＷｅｂＳｅｒｖｉｃｅと、前記ＷｅｂＳｅｒｖｉｃｅに印刷ジョブ取得要求を発行し印刷ジョブを受け取る機能を有する１つ以上の印刷装置からなることを特徴とする印刷システム。
【請求項２】
前記印刷装置は、前記ＷｅｂＳｅｒｖｉｃｅへの印刷ジョブ取得要求に際し、前記印刷装置が現在保持している属性を通知し、前記ＷｅｂＳｅｒｖｉｃｅは前記印刷装置から与えられた印刷装置の属性に応じた印刷ジョブを返却することを特徴とする印刷システム。
【請求項３】
前記クライアントコンピュータは印刷ジョブを前記ＷｅｂＳｅｒｖｉｃｅに投入する際、印刷する印刷装置を指示するか、或いは、印刷する印刷装置を指示しないか、或いは、印刷したくない印刷装置を指示することを特徴とする請求項１または２記載の印刷システム。
【請求項４】
前記印刷装置は、一定の間隔で前記ＷｅｂＳｅｒｖｉｃｅにジョブ取得要求を発行することを特徴とする請求項１ないし３のいずれかに記載の印刷システム。
【請求項５】
前記印刷装置は、前記ＷｅｂＳｅｒｖｉｃｅがクライアントからのジョブを受け付けた事を検知するためのジョブ検知手段を備え、前記ジョブ検知手段がジョブの受付を検知した際に、前記ＷｅｂＳｅｒｖｉｃｅにジョブ取得要求を発行することを特徴とする請求項１ないし３のいずれかに記載の印刷システム。
【請求項６】
前記印刷装置は、前記印刷装置がジョブを処理できる状態になった際に、前記ＷｅｂＳｅｒｖｉｃｅにジョブ取得要求を発行することを特徴とする請求項１ないし３のいずれかに印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワークに接続された１つ以上の印刷装置と複数のコンピュータからなるネットワークプリントシステム及びその制御方法、即ち、印刷システムに関する。
【背景技術】
【０００２】
現在のネットワークプリントシステムでは、ネットワーク上に複数の印刷装置と複数の印刷クライアントが存在し、１台のクライアントでは、多くの印刷装置から１台の印刷装置を選択して印刷することが可能となっている。このような場合、ユーザが複数の印刷装置からいち早く印刷してくれるであろう印刷装置を予測して印刷する場合がある。
【０００３】
また、印刷プログラムによっていち早く印刷してくれるであろう印刷装置を自動的に選択するようなシステムも存在する。この場合、いち早く印刷処理をしてくれるであろう印刷装置を選択するには、印刷装置にどれくらいのサイズの印刷ジョブがいくつスケジュールされているかが判断基準となっている（例えば特許文献１）。
【０００４】
またジョブを解析し個々のジョブの終了時間を予測するシステムや、印刷装置に残されている用紙残量やステイプルのピン等の消耗品と個々のジョブで消費する消耗品量を元に印刷装置で発生するエラーを予測し、最適であろう印刷装置を選択するシステムが存在している。
【特許文献１】特開平０６−２５９２０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の例で示したように、いち早く印刷してくれるであろう印刷装置を選択し、印刷装置に印刷要求を行ったとしても、該印刷装置に印刷要求が投入されるタイミングと実際の予測タイミングには誤差があり、該印刷装置が他コンピュータからの印刷要求を受け付けてしまうと予測に誤差が生じる結果となっていた。また、消耗品予測の精度も厳密には不確かなものであった。このため実際には紙無しやトナー無しなどの印刷装置のエラーが発生し、いち早く印刷処理を開始してくれると予想した場合でも、実際には他の印刷装置に要求したほうが早かったといことが間々あり得た。つまり、いち早く印刷処理を開始してくれる印刷装置を選択するということが、現在のネットワークプリントシステムにおいて非常に困難な機能であるという課題があった。
【０００６】
一方、印刷装置のインターネット・プリンティングのプロトコルとしてＲＦＣで規定されているＩｎｔｅｒｎｅｔ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｔｏｃｏｌ（ＩＰＰ）を搭載した印刷装置が市場に投入されている。このＩＰＰでは“Ｐｒｉｎｔ−ＵＲＩリクエスト”という機能が規定されており、クライアントから印刷装置にＵＲＬを指定した“Ｐｒｉｎｔ−ＵＲＩリクエスト”を送ることによって、そのＵＲＬ指定先のＷｅｂサーバ上のデータを印刷装置が取得して印刷する機能が規定されている。但し、Ｐｒｉｎｔ−ＵＲＩリクエストであっても、Ｗｅｂへのアクセス等でＵＲＬで指定されている場合は、Ｐｒｉｎｔ−ＵＲＬリクエストと呼ぶ場合がある。
【０００７】
この機能により、ＩＰＰ対応印刷装置では、世界中にあるＷｅｂページを印刷する事を可能としている。ＩＰＰ対応印刷装置は、各クライアントからの“Ｐｒｉｎｔ−ＵＲＩリクエスト”を受け付け、プリントスケジュールを管理しており、印刷装置が実際に印刷を行う前に“Ｐｒｉｎｔ−ＵＲＩリクエスト”で指定されたＵＲＩからデータを取得し、印刷している。このような技術を利用して前述の課題を解決するための印刷システムとして例えば、特開２００２−２０２８７４号公報が提案されている。
【０００８】
該発明によれば、１回の印刷ジョブに対する“Ｐｒｉｎｔ−ＵＲＩ”リクエストを複数の印刷装置に同時に送信し、最初に該ジョブを取得した印刷装置にのみデータを送信するというシステムが考案されている。しかし、該発明においても、該印刷装置で該ジョブを印刷可能になったタイミングにおける使用可能なリソースは不確かなものであった。また、複数の印刷装置をクライアントで管理する必要がありその運用は煩雑なものとなっていた。
【０００９】
本発明は上記問題点を解決するためになされたもので、各クライアントが実際に出力される印刷装置を意識せずにＷｅｂＳｅｒｖｉｃｅに印刷ジョブを投入し、印刷装置が印刷可能なタイミングに自装置で利用可能なリソース情報を該ＷｅｂＳｅｒｖｉｃｅに通知して前記印刷ジョブを取得する事により、簡易な構成で確実に早く印刷を遂行することのできる印刷システムを提供することを目的としている。
【課題を解決するための手段】
【００１０】
本発明は上記目的を達成するために、印刷処理を実行する１つ以上のクライアントコンピュータと、前記クライアントコンピュータからの印刷ジョブを受け付けスプールするＷｅｂＳｅｒｖｉｃｅと、前記ＷｅｂＳｅｒｖｉｃｅに印刷ジョブ取得要求を発行し印刷ジョブを受け取る機能を有する１つ以上の印刷装置からなる構成とする。
【００１１】
以上の構成によれば、クライアントコンピュータもサーバコンピュータも印刷の遂行に関して、印刷装置のＩＰアドレス、エラー等の発生状況、用紙残量やトナー等のリソース、両面やステイプル等のオプション情報をなんら管理する必要がなく、かつサーバコンピュータでは現時点で利用可能な印刷装置からのリクエストに答えて印刷装置の属性に一致する印刷ジョブを返却するだけで良い為、非常に簡単な構成で確実に早く印刷を遂行することの可能な印刷システムを提供することが可能となる。
【発明の効果】
【００１２】
本発明によれば、印刷処理を実行する１つ以上のクライアントコンピュータと、前記クライアントコンピュータからの印刷ジョブを受け付けスプールするＷｅｂＳｅｒｖｉｃｅと、前記ＷｅｂＳｅｒｖｉｃｅに印刷ジョブ取得要求を発行し印刷ジョブを受け取る機能を有する１つ以上の印刷装置からなる構成から印刷システムにより、クライアントコンピュータもサーバコンピュータも印刷の遂行に関して、印刷装置のＩＰアドレス、エラー等の発生状況、用紙残量やトナー等のリソース、両面やステイプル等のオプション情報をなんら管理する必要がなく、かつサーバコンピュータでは現時点で利用可能な印刷装置からのリクエストに答えて印刷装置の属性に一致する印刷ジョブを返却するだけで良い為、非常に簡単な構成で確実に早く印刷を遂行することの可能な印刷システムを提供することが可能となった。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明の好適な実施例を説明する。
【実施例】
【００１４】
＜印刷処理システムの構成例＞
図１は、実施形態に係る印刷処理システムの構成を示す図である。
【００１５】
同図において、１０１、１０２、１０３、１０４は、ネットワーク１０６に接続され、相互に通信可能なネットワークコンピュータであり、典型的にはパーソナルコンピュータ（ＰＣ）である。
【００１６】
これらのうち、１０２，１０３，１０４はクライアントコンピュータ（以下、クライアント）であり、それぞれイーサネット（登録商標）などのネットワークケーブルによってネットワーク１０６に接続され、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データを印刷装置に対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。ここで、各クライアント１０２，１０３，１０４は複数の印刷装置ドライバをサポートするものとする。
【００１７】
これに対し１０１はサーバコンピュータ（以下、サーバ）であり、ネットワークケーブルによってネットワーク１０６に接続され、Ｗｅｂサーバとして機能しており、ＩＰＰのゲートウェイとしても機能する。具体的には、プリントサーバ１０１は、クライアントコンピュータ１０２，１０３，１０４からＩＰＰ印刷要求が出されたプリントデータを含む印刷ジョブを格納して印刷する機能や、クライアントコンピュータ１０２，１０３，１０４から印字データを含まないジョブ情報を受け取って印刷順序を管理している。また印刷制御装置からのジョブ取得リクエストに応答して印刷ジョブを返却する機能を有している。サーバコンピュータ１０１は本発明の印刷システムにおいて機能を提供するための論理的な存在である。図１で示されるように専用のサーバコンピュータ１０１を設けることもできるし、また、クライアントコンピュータ１０２〜１０４或いは任意の印刷装置１０５にサーバコンピュータの機能を代替させる事も可能である。また、本実施例ではＷｅｂサーバを用いた例を説明するが、サーバはクライアントからのジョブを受け付け、印刷装置からのジョブ取得要求に応答する機能を有する別のプログラムであっても良い。例えばクライアントからのジョブ受け付け対してはＬＰＲプロトコルが使用できる。また印刷装置からのデータ取得要求はＨＴＴＰに限ったものではなく、ＦＴＰ等他のプロトコルであっても適用可能な事はいうまでもない。
【００１８】
１０５は、印刷制御装置としてのプリンタデバイスであり、図示しないネットワークインタフェースを介してネットワーク１０６と接続されており、クライアントコンピュータから送信されてくる印字データを含む印刷ジョブを解析し、１ページずつドットイメージに変換して印刷する。なお、同図に印刷装置１０５は１台しか示されていないが、他の印刷装置が複数接続されていても良い。各印刷装置の種類や機能は相違するものであってもよい。
【００１９】
１０６はネットワークであり、クライアントコンピュータ１０２〜１０４、プリントサーバ１０１、印刷装置１０５等と接続している。
【００２０】
＜ネットワークコンピュータのハードウエア構成例＞
図２は、クライアント１０２〜１０４とプリントサーバ１０１として使用されるコンピュータの構成を説明するブロック図である。なお、本実施形態においてはこのように、クライアントコンピュータ１０２〜１０４もプリントサーバ１０１も同様あるいは同等のハードウエア構成とするが、それぞれ専用のハードウエア構成であっても構わない。
【００２１】
図２において、２００は装置全体の制御を行うＣＰＵであり、ハードディスク（ＨＤ）２０５に格納されているアプリケーションプログラム、プリンタドライバプログラム、ＯＳや、本実施形態の印刷装置制御プログラム等を実行し、ＲＡＭ２０２にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【００２２】
２０１は記憶手段としてのＲＯＭであり、内部には、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。２０２は一時記憶手段としてのＲＡＭであり、ＣＰＵ２００の主メモリ、ワークエリア等として機能する。
【００２３】
２０３は記憶媒体読み込み手段としてのフロッピディスクドライブ（ＦＤドライブ）であり、後述する図５に示すようにＦＤドライブ２０３を通じて、記憶媒体としてのＦＤ２０４に記憶されたプログラム等を本コンピュータにロードすることができる。２０４は記憶媒体であるフロッピディスク（ＦＤ）であり、コンピュータが読み取り可能にプログラムが格納された記憶媒体である。なお、記憶媒体はＦＤに限らず、ＣＤ−ＲＯＭ、ＣＤＲ、ＣＤＲＷ、ＰＣカード、ＤＶＤ、ＩＣメモリカード、ＭＯ、メモリスティック等、任意である。
【００２４】
２０５は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク（ＨＤ）であり、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、印刷装置制御プログラム、関連プログラム等を格納している。さらに、スプール手段であるスプーラはここに確保される。スプール手段は、クライアントではクライアントスプーラのことであり、プリントサーバではサーバスプーラのことである。また、プリントサーバでは、クライアントから受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶手段に生成されて格納される。
【００２５】
２０６は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータに対して、また、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示するものである。２０７は表示手段であるディスプレイであり、キーボード２０６から入力したコマンドや、印刷装置の状態等を表示したりするものである。
【００２６】
２０８はシステムバスであり、クライアントやプリントサーバであるコンピュータ内のデータの流れを司るものである。２０９は入出力手段であるインタフェースであり、該インタフェース２０９を介して情報処理装置は外部装置とのデータのやり取りを行う。
【００２７】
なお、上記コンピュータの構成はその一例であり、図２の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてＲＯＭ、ＲＡＭ、ＨＤなどで変更することも可能である。
【００２８】
図３は、図２に示したＲＡＭ２０２のメモリマップの一例を示す図であり、ＦＤ２０４からロードされる上記印刷装置制御プログラムが、ＲＡＭ２０２にロードされ実行可能となった状態のメモリマップである。
【００２９】
なお、本実施形態では、印刷装置制御プログラムおよび関連データをＦＤ２０４から直接ＲＡＭ２０２にロードして実行させる例を示すが、これ以外にも、印刷装置制御プログラムを動作させる度に、既に印刷装置制御プログラムがＦＤ２０４からインストールされているＨＤ２０５から、ＲＡＭ２０２にロードするようにしてもよい。また、本印刷装置制御プログラムを記憶する媒体は、ＦＤ以外にＣＤ−ＲＯＭ、ＣＤＲ、ＰＣカード、ＤＶＤ、ＩＣメモリカードであってもよい。さらに、本印刷装置制御プログラムをＲＯＭ２０１に記憶しておき、これをメモリマップの一部となすように構成し、直接ＣＰＵ２００で実行することも可能である。また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウエア装置の代替として構成することもできる。
【００３０】
３０１は基本Ｉ／Ｏプログラムであり、コンピュータの電源がＯＮされたときに、ＨＤ２０５からＯＳがＲＡＭ２０２に読み込まれ、ＯＳの動作を開始させるＩＰＬ（イニシャルプログラムローデイング）機能などを有しているプログラムが入っている領域である。３０２はオペレーティングシステム（ＯＳ）であり、３０３は印刷装置制御プログラムで、ＲＡＭ２０２上に確保される領域に記憶される。３０４は関連データで、ＲＡＭ２０２上に確保される領域に記憶される。３０５はワークエリアで、ＣＰＵ２００が本印刷装置制御プログラムを実行する領域が確保されている。
【００３１】
図４は、図２に示したＦＤ２０４のメモリマップの一例を示す図である。図４において、４０１はデータの情報を示すボリューム情報であり、４０２はディレクトリ情報、４０３は本実施形態で説明する印刷システムプログラム（印刷装置制御プログラム）、４０４はその関連データである。印刷装置制御プログラム４０３は、本実施形態で説明するフローチャートに基づいてプログラム化したものである。
【００３２】
図５は、図２に示したＦＤドライブ２０３に対して挿入されるＦＤ２０４との関係を示す図であり、図２と同一のものには同一の符号を付してある。図５において、ＦＤ２０４には、本実施形態で説明する印刷装置制御プログラムおよび関連データが格納されている。
【００３３】
＜印刷システムにおけるジョブ制御の概要＞
図６は、本発明の印刷システムにおける処理の概要を示す図である。サーバ１０１が複数クライアントからの印刷ジョブを受け付け、該ジョブを管理し、複数の印刷装置１０５からのジョブ取得要求に応答してジョブを返却する様子を図示している。
【００３４】
まず始めにクライアントコンピュータ１０２でジョブが生成されると、該ジョブのデータと属性をサーバ１０１に登録する。この時クライアントコンピュータ１０２は印刷装置１０５にジョブ発生を検知させるためのブロードキャストメッセージを発しても良い。クライアントコンピュータ１０２からジョブデータ及び属性データを受け取ったサーバコンピュータ１０１では、該データを記憶装置２０５に登録し印刷装置１０５からのデータ取得要求に備える。サーバ１０１で管理するジョブデータ１４００については後述する。記憶装置はサーバコンピュータ１０１上に備えられていても良いし、ＮＡＳ（Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）といったネットワーク１０６に接続された外部システム或いは、別のサーバが管理するデータベースやディレクトリといった物を利用できる。またサーバコンピュータ１０１ではジョブが登録された際に、ジョブの発生を印刷装置に検知させるためのブロードキャストメッセージや或いはＵＮＩキャストメッセージ等を発しても良い。印刷装置１０５はクライアントからのブロードキャスト、サーバからのブロードキャスト、ＵＮＩキャスト或いはＤＢやディレクトリの監視や監視手段からの通知によってジョブの発生を検知するか、内部的なタイマーイベントが発生すると、サーバコンピュータ１０１に自身で利用可能な属性を通知しジョブ取得要求１５００を発する。なお、印刷装置１０５はサーバコンピュータ１０１のアドレスを予め内部の不揮発性記憶装置に保持していても良いし、ネットワーク探索、ＬＤＡＰやＡｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙ等のディレクトリ、サーバコンピュータからのブロードキャスト通知或いはクライアントコンピュータからのブロードキャスト通知等によって知ることができる。
【００３５】
クライアントコンピュータ１０２、サーバコンピュータ１０１、印刷装置１０５におけるそれぞれの処理と管理するデータについては以下に詳細を説明する。
【００３６】
＜クライアントコンピュータにおける処理＞
図７は本発明の実施例におけるクライアントコンピュータ１０２〜１０４における印刷処理の機能ブロック図であり、クライアントとサーバ間の通信にＩＰＰを使う場合の例である。図７において７０１はＭｉｃｒｏｓｏｆｔ  Ｗｏｒｄ（登録商標）などの印刷機能を持ったアプリケーションプログラム或いは特定業務用にカスタマイズされた印刷システムが相当する。７０２はプリンタドライバであり、アプリケーション７０１が発行したＧＤＩ呼び出しがＯＳを経由して通知され印刷装置に応じたＰＤＬデータを生成する。なおプリンタドライバは各クライアントコンピュータ１０２〜１０４からアクセス可能な印刷装置に応じたものが登録されているものとする。７０３はスプーラであり、ジョブデータをスプールし順次デスプール処理を行う。７０４はＩＰＰに対応したポートモニタであり、スプーラ７０３からデスプールされたジョブデータをサーバコンピュータ１０１に転送する。なお、サーバコンピュータのアドレスは予めポートモニタ７０４の属性として登録されていても良いし、ディレクトリ、ブロードキャストによる探索、印刷実行時のユーザからの指示等によって知ることができる。本発明のポートモニタ７０４はジョブ解析機能を有し、スプーラから受け取ったデータから、ジョブ属性ファイル１２００、ジョブデータファイル１３００を作成する。なお、ジョブ解析機能はポートモニタ７０４ではなく、サーバコンピュータ１０１上にあっても良いし、ジョブチケットとジョブデータのように外部のアプリケーション７０１やプリンタドライバ７０２から供給されても良い。
【００３７】
図１２は、クライアントコンピュータ１０２〜１０４で作成するジョブ属性ファイルの一例である。このファイルには、データを作成する際に使用したプリンタドライバのモデル情報（Ｍｏｄｅｌ）や、ジョブデータファイル名、使用する用紙サイズ、ジョブを投入したユーザ名等、ジョブデータを解析して得られる情報及びスプーラから得られる管理情報が記載されている。なお属性としては図示されているものに限定されるわけではなく、ジョブデータ及び管理データに含まれる全てのデータ及び外部からジョブチケット等の形で供給される任意の属性を含ませても良い。
【００３８】
また、図には示していないが、特定アドレスの印刷装置に印刷をしたい或いはしたくないといった要望がある場合には、印刷先候補デバイスのアドレスリスト或いは印刷拒否デバイスのアドレスリスト等をジョブの属性として保持することも可能である。
【００３９】
図１３は、クライアントコンピュータ１０２〜１０４で作成するジョブデータファイルの一例である。ジョブデータファイルはヘッダ１３００、ジョブ属性部１３０１、１３０４、ＰＤＬデータ部１３０２からなる。１３０３はジョブ属性データ及びＰＤＬデータの繰り返しを意味している。
【００４０】
図８は、ＩＰＰクライアントポート７０４における印刷処理の概要を示すフローチャートである。ステップＳ８００のジョブ入力待ち処理はスプーラからジョブが到達すると終了する。続いてステップＳ８０１でデータファイルを作成する。ステップＳ８０２でデータの入力が認められると、ステップＳ８０３においてデータの解析処理が行われ属性の抜き取り処理が行われる。続いてステップＳ８０４でデータファイルに書き出し、ステップＳ８０２へ戻りデータの終了まで繰り返される。ステップＳ８０２でＮＯの場合にはジョブ終了か否かが判定される。ＮＯの場合にはＳ８０２へ戻ってデータ入力待ちとなる。ＹＥＳの場合には、ステップＳ８０６でジョブがキャンセルされたか否かが判定される。ＹＥＳの場合にはステップＳ８０９でデータファイルを削除し印刷処理が終了する。ステップＳ８０６の判定でＮＯと判定された場合、ステップＳ８０７でスプーラからジョブ属性を取得し、ジョブデータから抜き取ったジョブ属性とマージする。続いてステップＳ８０８でＷｅｂサーバ１０１へジョブデータと属性を転送する。転送が終了するとステップＳ８０９でデータを削除してクライアント側の印刷処理は終了する。
【００４１】
＜サーバコンピュータにおける処理＞
図９はサーバコンピュータ１０１における印刷処理の概要を示すフローチャートである。サーバは起動するとステップＳ９００においてリクエスト待ちの無限ループに入る。リクエストが到達するとステップＳ９０１で停止要求か判定されＹＥＳの場合はサーバの処理は終了する。ＮＯの場合はステップＳ９０２でクライアントコンピュータ１０２〜１０４からのジョブ登録要求か否か判定される。ＹＥＳの場合、ステップＳ９０３でジョブの登録処理が行われる。前述の通りジョブデータは記憶装置２０５に保存され、その管理データがＲＡＭ２０２中に保持される。サーバに保持されるデータの詳細は後述する。ジョブ登録処理が終了するとサーバはリクエスト待ちに戻る。ステップＳ９０２でＮＯと判定された場合にはステップＳ９０４で該リクエストがジョブ取得要求か否かが判定される。ＹＥＳの場合ステップＳ９０５で後述するジョブ選択処理が行われる。続いて、ステップＳ９０６でジョブ選択が成功したか否かが判定される。ＮＯの場合はステップＳ９０７で失敗が応答されステップＳ９００のリクエスト待ちに戻る。ステップＳ９０６の判定で成功と判定される場合には、ステップＳ９０８で成功のステータス及び印刷データが応答される。続いてステップＳ９００で印刷データ及びその管理データを削除しジョブ応答処理を終了し、リステップＳ９００のクエスト待ちへ戻る。一方ステップＳ９０４でＮＯと判定された場合にはステップＳ９１０でその他の要求か判定される。ＹＥＳと判定された場合にはステップＳ９１１でその他の要求についての処理が行われる。その他の処理については本発明とは関係が無いためここでは説明しない。ステップＳ９１０でＮＯと判定されるかステップＳ９１１が終了するとサーバはステップＳ９００のリクエスト待ちの無限ループへ戻る。
【００４２】
図１４はサーバ１０１で管理している印刷データ、属性、及び管理データの一部を示す図である。図において１４０１はサーバが現在管理しているジョブの総数でありＲＡＭ２０２上に置かれる。またこの情報はジョブリスト１４０２の増減に伴って変化する。ジョブリスト１４０２はＲＡＭ２０２或いは記憶装置２０５上あるいはその両方に存在する。ここではジョブの属性をＩＤで管理している。リストにはデータファイルの位置やユーザの情報、ジョブデータを作成したドライバのモデル、Ａ４，両面、ステイプル等のジョブ属性などが含まれる。１４０３はジョブファイルであり記憶装置２０５上に存在している。１つのジョブで１つのファイルを構成する。ジョブがリファレンスで管理されるとき、ジョブ属性ファイルにそのＵＲＩが指定され、ジョブファイルはサーバ上に存在しないといった構成も可能である。
【００４３】
図１０はサーバ上で行われるジョブの選択処理ステップＳ９０５の詳細を示したフローチャートである。ここでは後述の印刷装置１０５からのリクエスト１５００を元に前述のジョブリストから適切なジョブ属性を持つジョブを１つ選択する。ステップＳ１０００でリクエスト１５００から判定に利用する属性を初期化する。ここではモデル、用紙サイズ、用紙残量、両面、フィニッシング指定が判定の材料として使われる事が想定されているが、勿論他の任意の属性を判定に利用しても良いし、印刷装置の属性とジョブの属性を全て比較しても良い。ステップＳ１００１において前述のジョブリスト１４０２から印刷装置１０５のモデルとを比較し、一致しているジョブを検索する。検索されたジョブの数が０個、つまり一致しているジョブが存在しない場合にはステップＳ１００９で失敗応答を返し本処理は終了する。ステップＳ１００２でＮＯと判定された場合には、ステップＳ１００３でジョブの属性と印刷装置から与えられた印刷装置の属性を比較し、与えられた印刷装置のジョブの属性で処理することが可能な属性を持つジョブを検索する。ステップＳ１００４で検索されたジョブの数が０個、つまり一致しているジョブが存在しないと判定された場合には、ステップＳ１００９において失敗応答が返却され本処理は終了する。一方ステップＳ１００４でＮＯと判定された場合ステップＳ１００５で検索されたジョブの数が１個か否かが判定される。１個の場合はステップＳ１００６該ジョブが選択される。ＮＯ、つまり複数個のジョブが存在した場合には、受付時間或いは優先順位と言った別のファクターによりジョブを１つ選択する。複数のジョブから１つのジョブを選択する方法は複数存在するが本発明においては重要ではないためここでは説明しない。続いてステップＳ１００８で成功を応答してジョブ選択処理を終了する。
【００４４】
＜印刷装置における処理＞
続いて、図１１を用いて、印刷装置１０５における印刷処理の概要について説明する。印刷処理はステップＳ１１００で印刷装置がジョブ受付可能と判定された時に開始される。ジョブ受付可能の条件として本発明では印刷装置にエラーが発生していなく、受信バッファに空きが存在する場合を想定するが、その他の条件があっても良い。ステップＳ１１００でジョブ受付可能と判定された場合ステップＳ１１０１でジョブがあるか否か判定される。この処理はオプションであり、無くても本発明には全く影響が無いが、このオプションによりより効率的に印刷要求を行うことが可能になる。ジョブ検知手段としては、クライアントコンピュータからのブロードキャスト、サーバコンピュータからのブロードキャスト、ＵＮＩキャスト、ディレクト或いはファイルシステムの変更、ＤＢの変更監視或いはこれらを監視しているコンポーネントからの通知等任意である。ステップＳ１１０１でＮＯと判定された場合には、ステップＳ１１００へ戻る。ステップＳ１１０１でＹＥＳと判定された場合には、ステップＳ１１０２でサーバに対してＰＵＬＬ要求を発する。ステップＳ１１０３でＰＵＬＬ要求が成功し、サーバからの受信が開始した時点で印刷装置は印刷ＴＡＳＫ（ステップＳ１１０４からステップＳ１１０７）を起動し、ステップＳ１１００へ戻る。ステップＳ１１０４ではステップＳ１１０５で印刷完了と判定されるまで印刷処理が継続される。印刷処理とは受信バッファからデータを読み込み、解析、イメージデータ作成、転写、排紙、フィニッシング等の一連の作業を差すが、ここでは特に説明しない。ステップＳ１１０５で印刷処理が完了したと判定されるとステップＳ１１０６で印刷装置内１０５内のバッファに存在する印刷データを削除し、続いてステップＳ１１０７でジョブ管理テーブルを更新し印刷処理を終了する。
図１５は印刷装置が発行するＰＵＬＬ要求の一例を示した概念図である。本発明におけるＰＵＬＬ要求はヘッダ部及びジョブ取得を表すコマンド（ＧｅｔＪｏｂ）、及びそのパラメータ（該印刷装置で利用可能な属性）を含む物とする。
【図面の簡単な説明】
【００４５】
【図１】本発明の実施形態に係る印刷処理システムの構成概略を示す図
【図２】本発明の実施例におけるコンピュータの構成を概要ブロック図
【図３】図２に示したＲＡＭ２０２のメモリマップの一例を示す図
【図４】図２に示したＦＤ２０４のメモリマップの一例を示す図
【図５】図２に示したＦＤドライブ２０３とＦＤ２０４との関係を示す図
【図６】本発明を適用する印刷システムの処理概要図
【図７】本発明を適用する印刷システムにおけるクライアントの機能ブロック図
【図８】印刷ジョブを生成するクライアントにおける処理の概略を示すフローチャート
【図９】サーバにおける処理の概要を示すフローチャート
【図１０】サーバにおけるジョブ選択処理の概要を示すフローチャート
【図１１】プリンタにおける印刷処理の概要を示すフローチャート
【図１２】クライアントが作成するジョブ属性ファイルの例を示す図
【図１３】クライアントが作成するジョブデータファイルの例を示す図
【図１４】サーバで管理するジョブデータの構成の一例を示す図
【図１５】プリンタが発するジョブ取得要求の例を示す図
【符号の説明】
【００４６】
１０１  プリントサーバ、Ｗｅｂサーバ（サーバコンピュータ）
１０２〜１０４  クライアントコンピュータ、クライアント
１０５  印刷装置
１０６  ネットワーク
１４００  サーバで管理するジョブデータ
１５００  印刷装置からサーバへのジョブ取得要求
【図１】
2006209308.tif 000003
【図２】
2006209308.tif 000004
【図３】
2006209308.tif 000005
【図４】
2006209308.tif 000006
【図５】
2006209308.tif 000007
【図６】
2006209308.tif 000008
【図７】
2006209308.tif 000009
【図８】
2006209308.tif 000010
【図９】
2006209308.tif 000011
【図１０】
2006209308.tif 000012
【図１１】
2006209308.tif 000013
【図１２】
2006209308.tif 000014
【図１３】
2006209308.tif 000015
【図１４】
2006209308.tif 000016
【図１５】
2006209308.tif 000017