(57)【特許請求の範囲】
【請求項１】
ネットワークで接続されたクライアント端末とサーバと画像形成装置とを有し、前記クライアント端末からの印刷実行依頼に従い、前記サーバに格納されたデータに基づいて、前記画像形成装置において印刷を行う印刷システムにおいて、
前記クライアント端末に設けられ、前記サーバに格納されたデータを指定して前記サーバに印刷実行依頼を送信する印刷実行依頼手段と、
前記サーバに設けられ、前記印刷実行依頼手段によって送信された印刷実行依頼を受信して、前記指定されたデータに係る印刷情報を作成する印刷情報作成手段と、
前記サーバに設けられ、前記作成された印刷情報を前記クライアント端末に送信する印刷情報送信手段と、
前記クライアント端末に設けられ、前記印刷情報送信手段によって送信された印刷情報を受信する印刷情報受信手段と、
前記クライアント端末に設けられ、該印刷情報に基づいて、前記指定されたデータに対する印刷データ生成処理を前記クライアント端末において行うべきか否かを判定する判定手段と、
前記クライアント端末に設けられ、前記判定手段によって得られた判定結果を前記サーバに送信する判定結果送信手段と、
前記サーバに設けられ、前記判定結果送信手段によって送信された判定結果に基づいて、前記印刷データ生成処理を前記サーバで行うべきと判断した場合は、前記指定されたデータに対する印刷データ生成処理を行う印刷データ生成手段と、
前記サーバに設けられ、前記印刷データ生成処理を前記クライアント端末で行うべきと判断した場合は、前記クライアント端末にデータを送付し、前記クライアント端末に前記指定されたデータに対する印刷データ生成処理を行わせる他の印刷データ生成処理手段と
を有し、
前記画像形成装置は、前記サーバ及び前記クライアント端末より印刷データが送信されたとき、当該印刷データの印刷を行うことを特徴とする印刷システム。
【請求項２】
前記印刷情報は、印刷設定情報、データ作成を行ったアプリケーションプログラムの識別情報、及びデータ量のうちの少なくとも１つを含むことを特徴とする請求項１記載の印刷システム。
【請求項３】
前記判定手段は、前記印刷情報送信手段によって送信された印刷情報に基づいて、イメージ展開モードが指定されているか否かの判定、印刷データ生成処理が可能なアプリケーションプログラムであるか否かの判定、および前記クライアント端末が印刷データ生成処理を行うことの可能なデータ量であるか否かの判定のうちの少なくとも１つを実行することを特徴とする請求項１または２記載の印刷システム。
【請求項４】
前記サーバに設けられ、前記判定結果送信手段によって送信された判定結果に基づいて、前記指定されたデータに対する印刷データ生成処理を前記クライアント端末で行うべきと判断した場合に、前記クライアント端末に、前記指定されたデータと該指定されたデータに係る印刷設定情報とを送信するデータ送信手段と、
前記クライアント端末に設けられ、前記データ送信手段により送信された前記指定されたデータと前記印刷設定情報とに基づいて印刷データを生成する印刷データ生成手段と、
前記クライアント端末に設けられ、前記印刷データ生成手段によって生成された印刷データを前記画像形成装置に送信する印刷データ送信手段と
を更に有することを特徴とする請求項１記載の印刷システム。
【請求項５】
ネットワークで接続されたクライアント端末とサーバと画像形成装置とを有し、前記クライアント端末からの印刷実行依頼に従い、前記サーバに格納されたデータに基づいて、前記画像形成装置において印刷を行う印刷システムに適用される印刷処理方法において、
前記クライアント端末が、前記サーバに格納されたデータを指定して前記サーバに印刷実行依頼を送信する印刷実行依頼ステップと、
前記サーバが、前記印刷実行依頼ステップにおいて送信された印刷実行依頼を受信して、前記指定されたデータに係る印刷情報を作成する印刷情報作成ステップと、
前記サーバが、前記作成された印刷情報を前記クライアント端末に送信する印刷情報送信ステップと、
前記クライアント端末が、前記印刷情報送信ステップにおいて送信された印刷情報を受信する印刷情報受信ステップと、
前記クライアント端末が、該印刷情報に基づいて、前記指定されたデータに対する印刷データ生成処理を前記クライアント端末において行うべきか否かを判定する判定ステップと、
前記クライアント端末が、前記判定ステップにおいて得られた判定結果を前記サーバに送信する判定結果送信ステップと、
前記サーバが、前記判定結果送信ステップにおいて送信された判定結果に基づいて、前記印刷データ生成処理を前記サーバで行うべきと判断した場合は、前記指定されたデータに対する印刷データ生成処理を行う印刷データ生成処理ステップと、
前記サーバが、前記印刷データ生成処理を前記クライアント端末で行うべきと判断した場合は、前記クライアント端末にデータを送付し、前記クライアント端末に前記指定されたデータに対する印刷データ生成処理を行わせる他の印刷データ生成処理ステップと、
前記画像形成装置が、前記サーバ及び前記クライアント端末より印刷データが送信されたとき、当該印刷データの印刷を行う印刷ステップと
を有することを特徴とする印刷処理方法。
【請求項６】
前記サーバが、前記判定結果送信ステップにおいて送信された判定結果に基づいて、前記指定されたデータに対する印刷データ生成処理を前記クライアント端末で行うべきと判断した場合に、前記クライアント端末に、前記指定されたデータと該指定されたデータに係る印刷設定情報とを送信するデータ送信ステップと、
前記クライアント端末が、前記データ送信ステップにおいて送信された前記指定されたデータと前記印刷設定情報とに基づいて印刷データを生成する印刷データ生成ステップと、
前記クライアント端末が、前記印刷データ生成ステップにおいて生成された印刷データを前記画像形成装置に送信する印刷データ送信ステップと
を更に有することを特徴とする請求項５記載の印刷処理方法。
【請求項７】
ネットワークで接続されたクライアント端末とサーバと画像形成装置とを有し、前記クライアント端末からの印刷実行依頼に従い、前記サーバに格納されたデータに基づいて、前記画像形成装置において印刷を行う印刷システムに適用される印刷処理方法を、コンピュータに実行させるためのプログラムにおいて、
前記クライアント端末が、前記サーバに格納されたデータを指定して前記サーバに印刷実行依頼を送信する印刷実行依頼ステップと、
前記サーバが、前記印刷実行依頼ステップにおいて送信された印刷実行依頼を受信して、前記指定されたデータに係る印刷情報を作成する印刷情報作成ステップと、
前記サーバが、前記作成された印刷情報を前記クライアント端末に送信する印刷情報送信ステップと、
前記クライアント端末が、前記印刷情報送信ステップにおいて送信された印刷情報を受信する印刷情報受信ステップと、
前記クライアント端末が、該印刷情報に基づいて、前記指定されたデータに対する印刷データ生成処理を前記クライアント端末において行うべきか否かを判定する判定ステップと、
前記クライアント端末が、前記判定ステップにおいて得られた判定結果を前記サーバに送信する判定結果送信ステップと、
前記サーバが、前記判定結果送信ステップにおいて送信された判定結果に基づいて、前記印刷データ生成処理を前記サーバで行うべきと判断した場合は、前記指定されたデータに対する印刷データ生成処理を行う印刷データ生成処理ステップと、
前記サーバが、前記印刷データ生成処理を前記クライアント端末で行うべきと判断した場合は、前記クライアント端末にデータを送付し、前記クライアント端末に前記指定されたデータに対する印刷データ生成処理を行わせる他の印刷データ生成処理ステップと、
前記画像形成装置が、前記サーバ及び前記クライアント端末より印刷データが送信されたとき、当該印刷データの印刷を行う印刷ステップと
を有することを特徴とするプログラム。
【請求項８】
クライアント端末及び画像形成装置と接続され、データを格納するサーバであって、
前記サーバに格納されたデータを指定した印刷実行依頼を、前記クライアント端末から受信する第１の受信手段と、
前記受信した印刷実行依頼によって指定されたデータに係る印刷情報を作成する印刷情報作成手段と、
前記作成された印刷情報を前記クライアント端末に送信する送信手段と、
前記指定されたデータに対する印刷データ生成処理を前記クライアント端末で行うべきか否かを示す情報を、前記クライアント端末から受信する第２の受信手段と、
前記第２の受信手段によって受信された情報に基づいて、前記印刷データ生成処理を前記サーバで行うべきと判断した場合は、前記指定されたデータに対する印刷データ生成処理を行う印刷データ生成処理手段と、
前記第２の受信手段によって受信された情報に基づいて、前記印刷データ生成処理を前記クライアント端末で行うべきと判断した場合は、前記クライアント端末にデータを送付し、前記クライアント端末に前記指定されたデータに対する印刷データ生成処理を行わせる他の印刷データ生成処理手段と
を有することを特徴とするサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷システム、印刷処理方法、及びプログラム、並びにサーバに関し、特に、ネットワークで接続されたクライアント端末とサーバと画像形成装置とを有し、クライアント端末からの印刷実行依頼に従い、サーバに格納されたデータに基づいて、画像形成装置において印刷を行う印刷システム、該印刷システムに適用される印刷処理方法、及び該印刷処理方法をコンピュータに実行させるためのプログラム、並びにサーバに関する。
【背景技術】
【０００２】
従来、ネットワークに接続される情報処理装置と画像形成装置とで構成された印刷システムにおいて、情報処理装置上に格納されたドキュメントや画像データなどを画像形成装置に送信して、そこで印刷処理することが行われている。情報処理装置では、ドキュメントや画像データなどを、内蔵のプリンタドライバによってプリンタ記述言語に変換して、印刷データを作成し、これを、ネットワークを介して画像形成装置に送信する。
【０００３】
近年、情報セキュリティの強化と導入コストの軽減を図るため、サーバを基盤としたコンピュータシステム（以後「ＳＢＣシステム」（Server Based Computing System）という）を印刷システムに採用する傾向にある。
【０００４】
このＳＢＣシステムを採用した印刷システムでは、ドキュメントや画像データの管理と、アプリケーションプログラムのインストールや実行とをサーバ側に集中させる。そして、クライアント（情報処理装置）側は記憶容量が最小限のメモリ、ハードディスク等のリソースしか持たないシンクライアントとする。クライアント端末は、サーバでの処理実行により得られた情報のうち、既に送信済みの情報との差分のみをサーバから送信する。
【０００５】
なお、この印刷システムで使用されるサーバは、例えば、メタフレーム等を搭載したプラットフォームから構成される。
【０００６】
図２５は、ＳＢＣシステムの従来の第１の構成例を示す図である。
【０００７】
このＳＢＣシステムでは、クライアント端末１００１とサーバ１００３とが、ネットワーク１００４を介して接続される。
【０００８】
図２６は、ＳＢＣシステムにおけるクライアント端末１００１で実行され基本的な処理の手順を示すフローチャートである。
【０００９】
クライアント端末１００１では、ユーザが、クライアント端末１００１に接続されたディスプレイを参照しながら、キーボード、マウス等の入力デバイスに対して入力操作を行うまで待機する（Ｓ２００１でＮＯ）。入力操作が行われると（Ｓ２００１でＹＥＳ）、クライアント端末１００１は、ネットワーク１００４を経由して操作内容をサーバ１００３に送信し（Ｓ２００２、図２５の通信１）、サーバ１００３から送られる表示イメージの受信を待つ（Ｓ２００３でＮＯ）。表示イメージを受信すると（Ｓ２００３でＹＥＳ、図２５の通信２）、表示イメージをディスプレイに表示する（Ｓ２００４）。そしてステップＳ２００１へ戻る。
【００１０】
図２７は、ＳＢＣシステムにおけるサーバ１００３で実行される基本的な処理の手順を示すフローチャートである。
【００１１】
サーバ１００３では、クライアント端末１００１からネットワーク１００４を介して送られた操作内容の受信を待つ（Ｓ２１０１でＮＯ）。操作内容が受信されると（Ｓ２１０１でＹＥＳ、図２５の通信１）、サーバ１００３は、操作内容に従って処理を実行し（Ｓ２１０２）、表示イメージを生成する（Ｓ２１０３）。生成された表示イメージは、ネットワーク１００４を介してクライアント端末１００１へ送信される（Ｓ２１０４、図２５の通信２）。そしてステップＳ２１０１へ戻る。
【００１２】
また、ＳＢＣシステムを用いた印刷システムとして以下のようなものが既に提案されている。図２８は、ＳＢＣシステムの従来の第２の構成例を示す図である。該第２の構成は、例えば特許文献１に開示されている。
【００１３】
このＳＢＣシステムでは、クライアント端末１１０１と画像形成装置１１０２とサーバ１１０３とが、ネットワーク１１０４を介して接続される。
【００１４】
サーバ１１０３は、ドキュメントや画像データをアプリケーションプログラムにより展開する。クライアント端末１１０１は、サーバ１１０３でアプリケーションプログラムにより展開されたドキュメントや画像データに含まれる表示イメージのみを受け取り、ディスプレイ上に出力する。
【００１５】
クライアント端末１１０１が画像形成装置１０３に印刷処理を行わせる場合、予めプリンタドライバをサーバ１１０３にインストールしておく。そして、クライアント端末１１０１からサーバ１１０３へログインすると、クライアント端末１１０１が使用する画像形成装置１１０２の論理プリンタがサーバ１１０３で自動作成され、印刷可能状態となる。ここでクライアント端末１１０１が印刷実行を指示すると（通信１）、サーバ１１０３上でプリンタドライバによりプリンタ記述言語に変換された印刷データが作成され、該印刷データが、クライアント端末１１０１を経由して画像形成装置１１０２に送信され（通信２、通信３）、印刷される。
【特許文献１】特開２００２−２９７３４６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、上述した従来の第２の構成例の印刷システムによれば、サーバ１１０３に負荷が集中する。すなわち、サーバ１１０３が、アプリケーションプログラムの稼動、選択されたドキュメントや画像データの展開、画面表示用のイメージデータの作成、イメージデータのクライアント端末１１０１への送信を行う。さらにサーバ１１０３が、印刷実行時のプリンタ記述言語への変換と印刷データの作成、作成した印刷データの画像形成装置１１０２への送信も行う。このため、印刷がスムーズに行われないという問題があった。
【００１７】
本発明はこのような問題点に鑑みてなされたものであって、ＳＢＣシステムを採用した印刷システムにおいて、印刷実行時にサーバの負荷を軽減し、印刷をスムーズに行うことを可能にした印刷システム、印刷処理方法、及びプログラム、並びにサーバを提供することを目的とする。
【課題を解決するための手段】
【００１８】
上記目的を達成するために、請求項１記載の印刷システムは、ネットワークで接続されたクライアント端末とサーバと画像形成装置とを有し、前記クライアント端末からの印刷実行依頼に従い、前記サーバに格納されたデータに基づいて、前記画像形成装置において印刷を行う印刷システムにおいて、前記クライアント端末に設けられ、前記サーバに格納されたデータを指定して前記サーバに印刷実行依頼を送信する印刷実行依頼手段と、前記サーバに設けられ、前記印刷実行依頼手段によって送信された印刷実行依頼を受信して、前記指定されたデータに係る印刷情報を作成する印刷情報作成手段と、前記サーバに設けられ、前記作成された印刷情報を前記クライアント端末に送信する印刷情報送信手段と、前記クライアント端末に設けられ、前記印刷情報送信手段によって送信された印刷情報を受信する印刷情報受信手段と、前記クライアント端末に設けられ、該印刷情報に基づいて、前記指定されたデータに対する印刷データ生成処理を前記クライアント端末において行うべきか否かを判定する判定手段と、前記クライアント端末に設けられ、前記判定手段によって得られた判定結果を前記サーバに送信する判定結果送信手段と、前記サーバに設けられ、前記判定結果送信手段によって送信された判定結果に基づいて、前記印刷データ生成処理を前記サーバで行うべきと判断した場合は、前記指定されたデータに対する印刷データ生成処理を行う印刷データ生成処理手段と、前記サーバに設けられ、前記印刷データ生成処理を前記クライアント端末で行うべきと判断した場合は、前記クライアント端末にデータを送付し、前記クライアント端末に前記指定されたデータに対する印刷データ生成処理を行わせる他の印刷データ生成処理手段とを有し、前記画像形成装置は、前記サーバ及び前記クライアント端末より印刷データが送信されたとき、当該印刷データの印刷を行うことを特徴とする。
【発明の効果】
【００２５】
本発明によれば、ＳＢＣシステムを採用した印刷システムにおいて、印刷データ生成処理をサーバだけでなく、クライアント端末でも行い得るので、印刷実行時にサーバの負荷を軽減し、印刷をスムーズに行うことが可能となる。
【００２６】
また、複数種類からなるデータの印刷データ生成処理を行う場合、印刷データの作成を、サーバとクライアント端末とで分散して処理するようにする。これにより、サーバでの負荷を軽減できるとともに、印刷処理を効率よく行うことが可能となる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明を実施するための最良の形態について、図面を参照して説明する。
【００２８】
〔第１の実施の形態〕
本発明の第１の実施の形態に係る印刷システムは、ＳＢＣシステムで構成され、クライアント端末と画像形成装置とサーバとが、ネットワークを介して接続された構成となっている。
【００２９】
図１は、第１の実施の形態に係る印刷システムに含まれるサーバ１０３の構成を示すブロック図である。
【００３０】
サーバ１０３はネットワーク１０４に接続されるとともに、ＣＰＵ５０２、ＲＡＭ５０３、プログラム用ＲＯＭ５０４、ネットワークインターフェイス（Ｉ／Ｆ）５０５、ハードディスクドライバ（ＨＤＤ）５０６、システムバス５０９を備えている。
【００３１】
プログラム用ＲＯＭ５０４は、アプリケーションプログラムや、ユーザ認証処理プログラム５０７等を記憶する。このユーザ認証処理プログラム５０７は、サーバ１０３へのアクセス要求に対しての可否を判断するプログラムである。ＲＡＭ５０３は、ＣＰＵ５０２の主メモリ、ワークエリア等として機能する。ＨＤＤ５０６は、サーバ１０３へのアクセス可能なユーザが登録されたユーザ認証データ５０８を記憶する。
【００３２】
ＣＰＵ５０２は、プログラム用ＲＯＭ５０４に記憶されたユーザ認証処理プログラム５０７やアプリケーションプログラム等に基づいて、ユーザ認証処理や、ドキュメントや画像データ等に対する各種処理を行う。このドキュメントは、図形、イメージ、文字、表（表計算等を含む）等が混在したデータである。また、ＣＰＵ５０２は、システムバス５０９に接続される各デバイスの制御を総括する。
【００３３】
なお、プログラム用ＲＯＭ５０４またはＨＤＤ５０６には、ＣＰＵ５０２の制御プログラムであるオペレーティングシステムプログラム（以下「ＯＳ」という）が記憶される。
【００３４】
ネットワークＩ／Ｆ５０５は、ネットワーク１０４を介して画像形成装置１０２、クライアント端末１０１（図６参照）に接続され、通信制御処理を実行する。
【００３５】
図２は、図１に示したサーバ１０３が印刷処理を実行する際に使用するソフトウェアの構成を示す図である。
【００３６】
アプリケーション６０２、グラフィックエンジン６０３、プリンタドライバ６０４、およびシステムスプーラ６０５は、ＨＤＤ５０６にファイルとして保存される。そして、これらは、ＯＳ６０１によってＲＡＭ５０３にロードされて実行されるプログラムモジュールである。
【００３７】
また、アプリケーション６０２およびプリンタドライバ６０４は、ＨＤＤ５０６に追加することが可能となっている。ＨＤＤ５０６に保存されているアプリケーション６０２はＲＡＭ５０３にロードされて実行される。このアプリケーション６０２から画像形成装置１０２に対して印刷を行う際には、同様にＲＡＭ５０３にロードされ実行可能となっているグラフィックエンジン６０３を利用して出力（描画）を行う。
【００３８】
グラフィックエンジン６０３は、画像形成装置ごとに用意されたプリンタドライバ６０４をＨＤＤ５０６からＲＡＭ５０３にロードし、アプリケーション６０２の出力をプリンタドライバ６０４に設定する。また、グラフィックエンジン６０３は、アプリケーション６０２から受け取るＧＤＩ（Graphic Device Interface）関数をＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ６０４へ出力する。プリンタドライバ６０４は、グラフィックエンジン６０３から受け取ったＤＤＩ関数を、画像形成装置１０２が認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）制御コマンドに変換する。変換されたＰＤＬ制御コマンドは、ＯＳ６０１によってＲＡＭ５０３にロードされたシステムスプーラ６０５からネットワークＩ／Ｆ５０５を介し、ネットワーク１０４経由で画像形成装置１０２へ印刷データとして出力される。
【００３９】
図３は、第１の実施の形態に係る印刷システムに含まれるクライアント端末１０１の構成を示すブロック図である。
【００４０】
クライアント端末１０１はネットワーク１０４に接続されるとともに、ＣＰＵ３０２、ＲＡＭ３０３、プログラム用ＲＯＭ３０４、ネットワークＩ／Ｆ３０５、システムバス３１１を備えている。さらにクライアント端末１０１は、キーボードコントローラ（ＫＢＣ）３０６、ＣＲＴコントローラ（ＣＲＴＣ）３０７、ハードディスクドライバ（ＨＤＤ）３０８、ＵＳＢインターフェイス（Ｉ／Ｆ）３０９を備えている。
【００４１】
プログラム用ＲＯＭ３０４は、アプリケーションプログラムや、ユーザ認証処理プログラム３１０等を記憶する。このユーザ認証処理プログラム３１０は、サーバ１０３へのアクセス許可を依頼するプログラムである。ＲＡＭ３０３は、ＣＰＵ３０２の主メモリ、ワークエリア等として機能する。
【００４２】
ＣＰＵ３０２は、プログラム用ＲＯＭ３０４に記憶されたユーザ認証処理プログラム３１０やアプリケーションプログラム等に基づいて、ユーザ認証処理や、ドキュメントや画像データ等に対する各種処理を行う。このドキュメントは、図形、イメージ、文字、表（表計算等を含む）等が混在したデータである。また、ＣＰＵ３０２は、システムバス３１１に接続される各デバイスの制御を総括する。
【００４３】
なお、プログラム用ＲＯＭ３０４またはＨＤＤ３０８には、ＣＰＵ３０２の制御プログラムであるオペレーティングシステムプログラム（以下「ＯＳ」という）が記憶される。
【００４４】
ネットワークＩ／Ｆ３０５は、ネットワーク１０４を介して画像形成装置１０２、クライアント端末１０１（図６参照）に接続され、通信制御処理を実行する。
【００４５】
ＫＢＣ３０６は、キーボード３１３やマウス等のポインティングデバイス３１２からのキー入力を制御する。ＣＲＴＣ３０７は、サーバ１０３から送信されるイメージをＣＲＴディスプレイ３１４で表示する際の制御を行う。
【００４６】
ＵＳＢＩ／Ｆ３０９は、画像形成装置１０２との間の通信制御処理や、サーバ１０３へのアクセスを行う際に必要となるユーザ認証データを格納したデバイスへのアクセス制御を行う。
【００４７】
なお、ＣＰＵ３０２は、ＣＲＴディスプレイ３１４上に表示されるマウスカーソル等で指示されたコマンドに基づいて、予め登録された種々のウィンドウをＣＲＴディスプレイ３１４上に開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウィンドウを開き、画像形成装置１０２の設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【００４８】
図４は、図１に示したクライアント端末１０１が印刷処理を実行する際に使用するソフトウェアの構成を示す図である。
【００４９】
アプリケーション４０２、グラフィックエンジン４０３、プリンタドライバ４０４、およびシステムスプーラ４０５は、ＨＤＤ３０８にファイルとして保存される。そして、これらは、ＯＳ４０１によってＲＡＭ３０３にロードされて実行されるプログラムモジュールである。
【００５０】
また、アプリケーション４０２およびプリンタドライバ４０４は、ＨＤＤ３０８に追加することが可能となっている。ＨＤＤ３０８に保存されているアプリケーション４０２はＲＡＭ３０３にロードされて実行される。このアプリケーション４０２から画像形成装置１０２に対して印刷を行う際には、同様にＲＡＭ３０３にロードされ実行可能となっているグラフィックエンジン４０３を利用して出力（描画）を行う。
【００５１】
グラフィックエンジン４０３は、画像形成装置ごとに用意されたプリンタドライバ４０４をＨＤＤ３０８からＲＡＭ３０３にロードし、アプリケーション４０２の出力をプリンタドライバ４０４に設定する。また、グラフィックエンジン４０３は、アプリケーション４０２から受け取るＧＤＩ（Graphic Device Interface）関数をＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ４０４へ出力する。プリンタドライバ４０４は、グラフィックエンジン４０３から受け取ったＤＤＩ関数を、画像形成装置１０２が認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）制御コマンドに変換する。変換されたＰＤＬ制御コマンドは、ＯＳ４０１によってＲＡＭ３０３にロードされたシステムスプーラ４０５からネットワークＩ／Ｆ３０５を介し、ネットワーク１０４経由で画像形成装置１０２へ印刷データとして出力される。
【００５２】
図５は、第１の実施の形態に係る印刷システムに含まれる画像形成装置１０２の構成を示すブロック図である。
【００５３】
画像形成装置１０２はネットワーク１０４に接続されるとともに、中央演算処理装置（ＣＰＵ）２１１、ＲＡＭ２０３、ＲＯＭ２０８、ネットワークＩ／Ｆ２０２、システムバス２１９を備えている。さらに画像形成装置１０２は、エンジンＩ／Ｆ２１２、ハードディスクドライバ（ＨＤＤ）２１７、ＵＳＢインターフェイス（Ｉ／Ｆ）２１８、プリンタエンジン２１３を備えている。
【００５４】
ネットワークＩ／Ｆ２０２は、ネットワーク１０４に接続されるサーバ１０３、クライアント端末１０１などのデバイスとの間で情報の入出力を行う。画像形成装置１０２は、ネットワークＩ／Ｆ２０２を介して、サーバ１０３、クライアント端末１０１から印刷データを受信する。
【００５５】
ＲＡＭ２０３は、様々な情報を一時格納するものであり、受信バッファ２０４、ワークメモリ２０５、フレームバッファ２０６、ラスタメモリ２０７からなる。受信バッファ２０４は、サーバ１０３、クライアント端末１０１から送信された印刷データまたはイメージデータを格納する。ワークメモリ２０５は、入力されたデータを中間コードに変換するときに一時的に使用する。フレームバッファ２０６は、画像形成装置１０２内部で発生する中間コードなどを格納する。ラスタメモリ２０７は、中間コードを展開して得られたデータを格納する。
【００５６】
ＲＯＭ２０８は、ＣＰＵ２１１が実行する制御プログラムを格納する。該制御プログラムを実行することによって実現される機能として、解析処理部２１４、中間コード生成部２１５、展開処理部２１６、データ獲得制御部２０９、エラー検知部２１０がある。解析処理部２１４は、受信バッファ２０４から読み出したデータを解析し、対応の処理に振り分ける。中間コード生成部２１５は、解析処理部２１４において解析したデータから中間データを生成し、フレームバッファ２０６に格納する。展開処理部２１６は、フレームバッファ２０６に格納された中間コードを展開してラスタメモリ２０７に格納する。データ獲得制御部２０９は、ネットワークＩ／Ｆ２０２を介してサーバ１０３等の外部機器からデータを獲得する。エラー検知部２１０は、画像形成装置１０２において発生したエラーを検知し、ネットワークＩ／Ｆ２０２またはＵＳＢＩ／Ｆ２１８を介してサーバ１０３またはクライアント端末１０１に通知する。
【００５７】
ＣＰＵ２１１は、画像形成装置１０２における演算処理や制御を行う。エンジンＩ／Ｆ２１２は、プリンタエンジン２１３との間で信号の入出力を行う。プリンタエンジン２１３は、イメージデータに基づいて、感光ドラム上への潜像の形成、用紙への転写、定着などの電子写真プロセスの一連の処理を行う。
【００５８】
図６は、第１の実施の形態に係る印刷システムの全体構成を示す図である。
【００５９】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１、画像形成装置１０２が接続される。サーバ１０３からクライアント端末１０１へは、印刷情報、データ、印刷設定情報などがネットワーク１０４を介して送信される。クライアント端末１０１からサーバ１０３へは、操作、印刷処理の可否などの情報がネットワーク１０４を介して送信される。サーバ１０３、クライアント端末１０１から画像形成装置１０２へは、印刷データがネットワーク１０４を介して送信される。
【００６０】
なお、第１の実施の形態に係る印刷システムは、図６に示すネットワーク構成とは別のネットワーク構成であってもよく、これを図７に示す。
【００６１】
図７は、図６に示すネットワーク構成とは別のネットワーク構成をもつ印刷システムの構成を示す図である。
【００６２】
図７の印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１が接続され、画像形成装置１０２は、ＵＳＢ、セントロなどのローカルＩ／Ｆ１０５を介してクライアント端末１０１に接続される。サーバ１０３からクライアント端末１０１へは、印刷情報、データ、印刷設定情報、印刷データなどがネットワーク１０４を介して送信される。クライアント端末１０１からサーバ１０３へは、操作、印刷処理の可否などの情報がネットワーク１０４を介して送信される。また、サーバ１０３から画像形成装置１０２へは、印刷データがクライアント端末１０１およびローカルＩ／Ｆ１０５を介して送信される。
【００６３】
図８は、図６及び図７に示すサーバ１０３において実行される印刷処理の手順を示すフローチャートである。
【００６４】
まず、図２６および図２７に示す処理に従って、クライアント端末１０１でのユーザの操作により、ドキュメントや画像データなどが選択される。その後、クライアント端末１０１のユーザによって、アプリケーション６０２が起動され（Ｓ１００１）、印刷設定が選択され（Ｓ１００２）、印刷実行を指示される（Ｓ１００３、図６の通信１、図７の通信１）。これに伴い、サーバ１０３がクライアント端末１０１にアプリケーション識別情報、印刷設定情報、ドキュメントや画像データのデータ量等の印刷情報を送信する（Ｓ１００４、図６の通信２、図７の通信２）。
【００６５】
そしてサーバ１０３は、このクライアント端末１０１で印刷処理が可能であるか否かを問い合わせる。サーバ１０３は、この問い合わせに対するクライアント端末１０１からの回答を待つ（Ｓ１００５でＮＯ）。クライアント端末１０１からの回答を受信すると（Ｓ１００５でＹＥＳ、図６の通信３、図７の通信３）、サーバ１０３は、クライアント端末１０１で印刷処理可能であるという回答であるか否かを判別する（Ｓ１００６）。印刷処理可能の回答の場合（Ｓ１００６でＹＥＳ）、クライアント端末１０１に印刷設定情報とデータとを送信する（Ｓ１０１１、図６の通信４ｂ、図７の通信４ｂ）。一方、印刷処理不可能の回答の場合（Ｓ１００６でＮＯ）、サーバ１０３は、印刷設定に従い、印刷データを作成する（Ｓ１０２１）。
【００６６】
次に、サーバ１０３は、印刷を行うべき画像形成装置がネットワーク１０４上にあるか否かを判別し（Ｓ１０２２）、ネットワーク１０４上にある場合（図６の場合）、印刷データを画像形成装置１０２に送信する（Ｓ１０２３、図６の通信４ａ）。一方、画像形成装置がネットワーク１０４上に接続されておらず、クライアント端末１０１にローカルＩ／Ｆ１０５を介して接続されている場合（図７の場合）、印刷データをクライアント端末１０１に送信する（Ｓ１０２４、図７の通信４ａ）。
【００６７】
図９は、クライアント端末１０１において行われる「自装置が印刷処理を行うべきか否か」の判断処理の手順を示すフローチャートである。
【００６８】
サーバ１０３からネットワーク１０４を介して送信された印刷情報をクライアント端末１０１のネットワークＩ／Ｆ３０５が受信する（Ｓ１１０１）と、クライアント端末１０１は、印刷情報の内容を解析する（Ｓ１１０２）。その結果、イメージ展開モードが指定されているか否かを判別する（Ｓ１１０３）。また、印刷処理可能なアプリケーションであるか否かを判別する（Ｓ１１０５）。また、印刷処理可能なデータ量であるか否かを判別する（Ｓ１１０６）。
【００６９】
ステップＳ１１０３の判別が否定（ＮＯ）、かつステップＳ１１０５およびステップＳ１１０６の判別が肯定（ＹＥＳ）であるならばステップＳ１１０７へ進む。一方、ステップＳ１１０３の判別が肯定（ＹＥＳ）、またはステップＳ１１０５の判別が否定（ＮＯ）、またはステップＳ１１０６の判別が否定（ＮＯ）であるならば、ステップＳ１１０８へ進む。
【００７０】
ステップＳ１１０７では、クライアント端末１０１が、ネットワークＩ／Ｆ３０５、ネットワーク１０４を介してサーバ１０３に、印刷処理可能であることを回答する。
【００７１】
一方、ステップＳ１１０８では、クライアント端末１０１が、ネットワークＩ／Ｆ３０５、ネットワーク１０４を介してサーバ１０３に、印刷処理不可能であることを回答する。
【００７２】
図１０は、図６および図７に示すクライアント端末１０１において行われる印刷データ作成処理の手順を示すフローチャートである。
【００７３】
クライアント端末１０１のネットワークＩ／Ｆ３０５で、サーバ１０３から送信されたデータを受信する（Ｓ１２０１）と、その受信したデータが印刷データであるか否かを判別する（Ｓ１２０２）。その結果、受信したデータが印刷データであるならば（図７の場合であり、通信４ａ）ステップＳ１２０７へ進み、印刷データでないならば（図６の場合）ステップＳ１２０３へ進む。
【００７４】
ステップＳ１２０７では、図７に示すように、クライアント端末１０１が、ローカルＩ／Ｆ１０５を介して画像形成装置１０２に印刷データを送信する（図７の通信５）。
【００７５】
一方、ステップＳ１２０３では、クライアント端末１０１が、データに対するアプリケーションを起動し（Ｓ１２０３）、データに添付された印刷設定情報に従ってプリンタドライバを設定する（Ｓ１２０４）。そして、印刷処理を実行して（Ｓ１２０５）、印刷データを作成する（Ｓ１２０６）。その後、クライアント端末１０１は、図６に示すように、作成された印刷データを、ネットワーク１０４経由で画像形成装置１０２へ送信する（Ｓ１２０７、図６の通信５ｂ）。
【００７６】
図１１は、図６および図７に示す画像形成装置１０２において行われる印刷処理の手順を示すフローチャートである。
【００７７】
画像形成装置１０２は、ネットワークＩ／Ｆ２０２またはＵＳＢＩ／Ｆ２１８から印刷データを受信する（Ｓ１３０１）と、受信した印刷データを受信バッファ２０４に格納する。印刷データの受信と並行して、受信バッファ２０４に格納された印刷データを読み出し、印刷データを解析する（Ｓ１３０２）。印刷データを解析して得られたコマンドが、排紙コマンドであるか否かを判別する（Ｓ１３０３）。その結果、排紙コマンドであるならばステップＳ１３１０へ進み、排紙コマンドでなければステップＳ１３０５へ進む。
【００７８】
ステップＳ１３０５では、ジョブ終了であるか否かを判別し（Ｓ１３０５）、ジョブ終了であるならば本印刷処理を終了し、ジョブ終了でなければステップＳ１３０６へ進む。
【００７９】
ステップＳ１３０６では、画像形成装置１０２は中間コードを作成し、フレームバッファ２０６に格納し、ステップＳ１３０２へ戻る。
【００８０】
一方、ステップＳ１３１０では、画像形成装置１０２が、フレームバッファ２０６に格納された中間コードに対してレンダリングを行い、得られた展開イメージをラスタメモリ２０７に格納する。次のステップＳ１３１１では、画像形成装置１０２が、ラスタメモリ２０７に格納された展開イメージを、エンジンＩ／Ｆ２１２を介してプリンタエンジン２１３に転送し、プリンタエンジン２１３に印刷を行わせる。そしてステップＳ１３０２へ戻る。
【００８１】
以上のようにして、第１の実施の形態では、印刷実行時にサーバ１０３の負荷を軽減し、印刷をスムーズに行うことが可能となる。
【００８２】
なお、以上の説明では、自装置が印刷処理を行うことが可能であるか否かをクライアント端末１０１が判断するものとしたが、クライアント端末で印刷処理すべきか否かをサーバ１０３が判断するようにしてもよい。また、クライアント端末で印刷処理すべきか否かをデータ量に基づき判別するようにしたが、これに限ることなく、印刷データに複雑な処理を伴うデータ（画像など）を含むか否かなど種々の条件で判別するようにしてもよい。
【００８３】
〔第２の実施の形態〕
次に、本発明の第２の実施の形態を説明する。
【００８４】
第２の実施の形態のシステム構成は、基本的に第１の実施の形態の構成と同じであるので、第２の実施の形態の説明においては、第１の実施の形態の構成と同一部分には同一の参照符号を付して、第１の実施の形態の説明を流用し、異なる部分だけを説明する。
【００８５】
第１の実施の形態では、サーバ１０３及びクライアント端末１０１のうち一方で印刷処理を行うが、第２の実施の形態においては、サーバ１０３とクライアント端末１０１との両方で連携して印刷処理を行う。
【００８６】
図１２は、第２の実施の形態に係る印刷システムの第１の構成を示す図である。この第１の構成は、図６に示す第１の実施の形態におけるネットワーク構成に対応する。
【００８７】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１、画像形成装置１０２が接続される。
【００８８】
サーバ１０３からクライアント端末１０１へは、帳票印刷データ（帳票印刷のための枠線などのデータ）格納先情報、通常データ（帳票に埋め込まれる数字などの実データ）がネットワーク１０４を介して送信される。帳票印刷データ格納先情報には帳票印刷データが格納されている場所を示す情報と帳票印刷データを特定する情報とが含まれ、例えばＵＲＬ（Uniform Resource Locator）等によって表される。また、クライアント端末１０１からサーバ１０３へは、操作通知などがネットワーク１０４を介して送信される。また、クライアント端末１０１から画像形成装置１０２へは、印刷データがネットワーク１０４を介して送信される。また、画像形成装置１０２からサーバ１０３へは、帳票印刷データ獲得依頼がネットワーク１０４を介して送信される。
【００８９】
図１３は、第２の実施の形態に係る印刷システムの第２の構成を示す図である。この第２の構成は、図７に示す第１の実施の形態におけるネットワーク構成に対応する。
【００９０】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１が接続され、画像形成装置１０２は、ローカルＩ／Ｆ１０５を介してクライアント端末１０１に接続される。
【００９１】
サーバ１０３からクライアント端末１０１へは、帳票印刷データ格納先情報、通常データなどがネットワーク１０４を介して送信される。また、クライアント端末１０１からサーバ１０３へは、操作通知、帳票印刷データ獲得依頼などがネットワーク１０４を介して送信される。また、クライアント端末１０１から画像形成装置１０２へは、印刷データがローカルＩ／Ｆ１０５を介して送信される。
【００９２】
図１４は、図１２及び図１３に示す第２の実施の形態におけるサーバ１０３において実行される印刷処理の手順を示すフローチャートである。
【００９３】
まず、図２６および図２７に示す処理に従って、クライアント端末１０１でのユーザの操作により、ドキュメントや画像データなどが選択される。その後、クライアント端末１０１のユーザによって、アプリケーションが起動され（Ｓ１５０１）、印刷設定が選択され（Ｓ１５０２）、印刷実行を指示される（Ｓ１５０３、図１２の通信１、図１３の通信１）。
【００９４】
サーバ１０３は、設定された印刷設定において帳票が選択されているか否かを判別する（Ｓ１５０４）。帳票が選択されているならばステップＳ１５０５へ進み、帳票が選択されていないならばステップＳ１５０８へ進む。
【００９５】
ステップＳ１５０５では、後刻作成される帳票ファイルの印刷データを格納すべきサーバ１０３内の場所を指定する。そしてサーバ１０３は、帳票の印刷データの格納場所情報と通常データとを、ネットワーク１０４を介してクライアント端末１０１に送信する（Ｓ１５０６、図１２の通信２、図１３の通信２）。次にサーバ１０３は、帳票ファイルの印刷データを作成し、クライアント端末１０１に通知した格納場所に印刷データを格納する（Ｓ１５０７）。
【００９６】
一方、ステップＳ１５０８では、サーバ１０３が、データをネットワーク１０４を介してクライアント端末１０１に送信する（Ｓ１５０８）。
【００９７】
次に、画像形成装置１０２またはクライアント端末１０１からサーバ１０３に対して、サーバ１０３の保持している印刷データを送信するように求める印刷データ獲得依頼が送信された場合にサーバ１０３で行われる印刷データ送信処理を説明する。この印刷データは、ステップＳ１５０７でサーバ１０３に格納されたものである。
【００９８】
図１５は、図１２及び図１３に示す第２の実施の形態におけるサーバ１０３が印刷データ獲得依頼を受信したときに行う印刷データ送信処理の手順を示すフローチャートである。
【００９９】
この印刷データ獲得依頼をサーバ１０３が受信する（Ｓ１６０１）と、該依頼で指定された格納場所を検索する（Ｓ１６０２）。そして、サーバ１０３は、依頼元である画像形成装置１０２またはクライアント端末１０１へ、ネットワーク１０４を介して印刷データを送信する（Ｓ１６０３）。
【０１００】
図１６は、図１２及び図１３に示す第２の実施の形態におけるクライアント端末１０１において実行される印刷データ作成処理の手順を示すフローチャートである。
【０１０１】
クライアント端末１０１は、ネットワーク１０４を介してサーバ１０３から送信されたデータを受信する（Ｓ１７０１）と、データに対するアプリケーションを起動する（Ｓ１７０２）。そしてクライアント端末１０１は、データに添付された印刷設定に従ってプリンタドライバを設定し（Ｓ１７０３）、印刷処理を実行する（Ｓ１７０４）。これによって印刷データが作成される（Ｓ１７０５）。
【０１０２】
また、クライアント端末１０１は、帳票指定があるか否かを判別する（Ｓ１７０６）。その結果、帳票指定があるならばステップＳ１７０７へ進み、帳票指定がないならばステップＳ１７０９へ進む。
【０１０３】
ステップＳ１７０７では、画像形成装置がネットワーク１０４に接続されているか否かを判別する。その結果、画像形成装置がネットワーク１０４に接続されているならば（図１２の場合）ステップＳ１７０８へ進み、画像形成装置がネットワーク１０４に接続されていないならば（図１３の場合）ステップＳ１７１０へ進む。
【０１０４】
ステップＳ１７０８では、クライアント端末１０１が、印刷データに帳票の格納場所情報を添付し、次のステップＳ１７０９で、印刷データを、ネットワーク１０４を介して画像形成装置１０２に送信する（図１２の通信３）。
【０１０５】
一方、ステップＳ１７１０では、クライアント端末１０１が、帳票の格納先を指定し、帳票の印刷データ獲得依頼を、ネットワーク１０４を介してサーバ１０３に送信する（図１３の通信３）。そして、印刷データがサーバ１０３から送信され、クライアント端末１０１がそれの獲得を完了するまで待つ（Ｓ１７１１でＮＯ）。印刷データの獲得を完了する（Ｓ１７１１でＹＥＳ）と、クライアント端末１０１は、印刷データに帳票の印刷データを添付し（Ｓ１７１２）、ローカルＩ／Ｆ１０５を介して画像形成装置１０２に送信する（Ｓ１７０９、図１３の通信４）。
【０１０６】
図１７は、図１２及び図１３に示す第２の実施の形態における画像形成装置１０２において実行される印刷処理の手順を示すフローチャートである。
【０１０７】
画像形成装置１０２は、ネットワーク１０４またはローカルＩ／Ｆ１０５を介して印刷データを受信し（Ｓ１８０１、図１２の通信３、図１３の通信４）、受信した印刷データを受信バッファに格納する。画像形成装置１０２は、印刷データの受信と並行して、受信バッファに格納された印刷データを読み出し、印刷データを解析する（Ｓ１８０２）。その解析によって得られたコマンドが、排紙コマンドであるか否かを判別し（Ｓ１８０３）、排紙コマンドであるならばステップＳ１８２０へ進み、排紙コマンドでないならばステップＳ１８０４へ進む。
【０１０８】
ステップＳ１８０４では、画像形成装置１０２は、解析によって得られたコマンドがジョブ終了であるか否かを判別し（Ｓ１８０４）、ジョブ終了であるならば本印刷処理を終了し、ジョブ終了でなければステップＳ１８０５へ進む。
【０１０９】
ステップＳ１８０５では、画像形成装置１０２は、解析によって得られたコマンドが帳票ファイル指定であるか否かを判別し、帳票ファイル指定であるならばステップＳ１８１０へ進み、帳票ファイル指定でないならばステップＳ１８０６へ進む。
【０１１０】
ステップＳ１８１０では、画像形成装置１０２は、帳票の格納先を指定し、図１２に示すように、ネットワーク１０４を介して帳票印刷データ獲得依頼をサーバ１０３へ送信し（図１２の通信４）、ステップＳ１８０１へ戻る。
【０１１１】
一方、ステップＳ１８０６では、画像形成装置１０２は、中間コードを作成し、フレームバッファに格納する。そしてステップＳ１８０２へ戻る。
【０１１２】
解析で得られたコマンドが排紙コマンドである場合、ステップＳ１８２０に進んで、画像形成装置１０２は、フレームバッファに格納された中間コードに対してレンダリングを行い、得られた展開イメージをラスタメモリに格納する。次のステップＳ１８２１で、画像形成装置１０２は、ラスタメモリに格納された展開イメージを、図５に示すように、エンジンＩ／Ｆ２１２を介してプリンタエンジン２１３に転送し、印刷する。そしてステップＳ１８０２へ戻る。
【０１１３】
以上のようにして、第２の実施の形態では、クライアント端末１０１とサーバ１０３とで印刷のための処理を分担させることによって、処理負荷の分散を行うことができる。
【０１１４】
なお、上記の第２の実施の形態では、帳票データを含んだ印刷データを印刷するようにしているが、これに代わって、帳票以外の情報をテンプレートとした印刷データを印刷するようにしてもよい。また、印刷データ内でイメージ等のデータ量が多い部分は転送に時間がかかるため、サーバで処理し、その他の部分をクライアント端末で処理するようにしてもよい。
【０１１５】
〔第３の実施の形態〕
次に、本発明の第３の実施の形態を説明する。
【０１１６】
第３の実施の形態のシステム構成は、基本的に第１の実施の形態の構成と同じであるので、第３の実施の形態の説明においては、第１の実施の形態の構成と同一部分には同一の参照符号を付して、第１の実施の形態の説明を流用し、異なる部分だけを説明する。
【０１１７】
第３の実施の形態においては、画像形成装置１０２で印刷途中に動作エラーが発生したときにサーバ１０３およびクライアント端末１０１が行う処理について説明する。
【０１１８】
図１８は、第３の実施の形態に係る印刷システムの第１の構成を示す図である。この第１の構成は、図６に示す第１の実施の形態におけるネットワーク構成に対応する。
【０１１９】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１、画像形成装置１０２が接続される。
【０１２０】
クライアント端末１０１は画像形成装置１０２に印刷データを送信して印刷処理させる際、印刷データ送信後、予め決められた期間内は当該印刷データを保持しておくものとする。サーバ１０３からクライアント端末１０１へは、エラー発生時、印刷データの有無確認依頼などがネットワーク１０４を介して送信される。また、クライアント端末１０１からサーバ１０３へは、印刷データ有無の回答通知、再送完了通知などがネットワーク１０４を介して送信される。また、サーバ１０３、クライアント端末１０１から画像形成装置１０２へは、印刷データがネットワーク１０４を介して送信される。また、画像形成装置１０２からサーバ１０３へは、エラー通知がネットワーク１０４を介して送信される。
【０１２１】
図１９は、第３の実施の形態に係る印刷システムの第２の構成を示す図である。この第２の構成は、図７に示す第１の実施の形態におけるネットワーク構成に対応する。
【０１２２】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１が接続され、画像形成装置１０２は、ローカルＩ／Ｆ１０５を介してクライアント端末１０１に接続される。
【０１２３】
サーバ１０３からクライアント端末１０１へは、印刷データの有無確認依頼、印刷データなどがネットワーク１０４を介して送信される。クライアント端末１０１からサーバ１０３へは、エラー通知、印刷データ有無の回答通知、再送完了通知などがネットワーク１０４を介して送信される。また、クライアント端末１０１から画像形成装置１０２へは、印刷データがローカルＩ／Ｆ１０５を介して送信される。画像形成装置１０２からクライアント端末１０１へは、エラー通知などがローカルＩ／Ｆ１０５を介して送信される。
【０１２４】
図２０は、図１８及び図１９に示すサーバ１０３において行われるエラー処理の手順を示すフローチャートである。
【０１２５】
画像形成装置１０２において印刷途中に動作エラーが発生すると、サーバ１０３が、ネットワーク１０４を介してエラー通知を、画像形成装置１０２から（図１８の通信１）またはクライアント端末１０１から（図１９の通信２）受信する（Ｓ３００１でＹＥＳ）。図１９の場合には、画像形成装置１０２からクライアント端末１０１へ予めエラー通知が送信される（通信１）。本実施の形態においては、画像形成装置１０２が印刷を行う際、印刷依頼の受け付け毎にジョブＩＤを発行しており、エラー通知の際にはそのジョブＩＤを同時に通知することにより、対象となる印刷データの特定が可能である。エラー通知の際はさらに、再送すべきページを特定可能な情報も含めてもよい。
【０１２６】
サーバ１０３は、エラー通知が対象としている印刷データがクライアント端末１０１に保存されているか否かの確認依頼を、ネットワーク１０４を介してクライアント端末１０１に送信する（Ｓ３００２、図１８の通信２、図１９の通信３）。サーバ１０３は、クライアント端末１０１からの回答を待つ（Ｓ３００３でＮＯ）。クライアント端末１０１からの回答を受信すると（Ｓ３００３でＹＥＳ、図１８の通信３ｂ、図１９の通信３ｂ）、サーバ１０３は、その回答から、クライアント端末１０１に当該印刷データが保存されているか否かを判別する（Ｓ３００４）。その結果、クライアント端末１０１に、当該印刷データが保存されているならばステップＳ３０２０へ進み、保存されていないならば（図１８の通信３ｂ、図１９の通信３ｂ）ステップＳ３００５へ進む。
【０１２７】
ステップＳ３０２０では、サーバ１０３がクライアント端末１０１に、ネットワーク１０４を介して当該印刷データの再送依頼を行う（Ｓ３０２０、図１９の通信４ｂ）。そして本エラー処理を終了する。
【０１２８】
一方、ステップＳ３００５では、サーバ１０３は、サーバ１０３に当該印刷データがあるか否かを調べ、その結果、当該印刷データがあるならば（Ｓ３００６でＹＥＳ）ステップＳ３００８へ進み、ないならば（Ｓ３００６でＮＯ）ステップＳ３００７へ進む。
【０１２９】
ステップＳ３００７では、サーバ１０３が印刷データを再生成する。
【０１３０】
ステップＳ３００８では、サーバ１０３が、エラー通知元のクライアント端末１０１（図１９の場合）または画像形成装置１０２（図１８の場合）へ、ネットワーク１０４を介して印刷データを再送する（Ｓ３００８、図１８の通信４ｂ、図１９の通信４ｂ）。そして本エラー処理を終了する。
【０１３１】
図２１は、図１８及び図１９に示すクライアント端末１０１において行われる印刷データ確認および印刷データ再送の処理の手順を示すフローチャートである。
【０１３２】
クライアント端末１０１は、ネットワーク１０４を介して受信があると、該受信が印刷データ確認依頼の受信であるか否かを判別する（Ｓ３１０１）。その結果、印刷データ確認依頼の受信であるならばステップＳ３１０２へ進み、印刷データ確認依頼の受信でないならばステップＳ３１１０へ進む。
【０１３３】
ステップＳ３１０２では、クライアント端末１０１が、クライアント端末１０１に当該印刷データがあるか否かを調べ、当該印刷データがあったならばステップＳ３１０４へ進み、当該印刷データがないならばステップＳ３１０５へ進む。
【０１３４】
ステップＳ３１０４では、クライアント端末１０１がサーバ１０３に、ネットワーク１０４を介して、当該印刷データがあったことを通知する。
【０１３５】
ステップＳ３１０５では、クライアント端末１０１がサーバ１０３に、ネットワーク１０４を介して、当該印刷データがなかったことを通知する。
【０１３６】
また、ステップＳ３１１０では、クライアント端末１０１が、ネットワーク１０４を介しての受信が印刷データ再送依頼の受信であるか否かを判別する。その結果、印刷データ再送依頼の受信であるならばステップＳ３１１１へ進み、印刷データ再送依頼の受信でないならば本処理を終了する。
【０１３７】
ステップＳ３１１１では、クライアント端末１０１が画像形成装置１０２に、ネットワーク１０４を介して（図１８の通信３ａ）、またはローカルＩ／Ｆ１０５を介して（図１９の通信５ｂ）、当該印刷データを送信する。そして本処理を終了する。
【０１３８】
図２２は、図１９に示すクライアント端末１０１において行われるエラー通知処理の手順を示すフローチャートである。
【０１３９】
クライアント端末１０１は、ローカルＩ／Ｆ１０５を介して画像形成装置１０２からの受信があると、該受信がエラー通知の受信であるか否かを判別する（Ｓ３２０１）。その結果、エラー通知の受信であるならば（図１９の通信１）ステップＳ３２０２へ進み、エラー通知の受信でないならばステップＳ３２０３へ進む。
【０１４０】
ステップＳ３２０２では、クライアント端末１０１がサーバ１０３に、ネットワーク１０４を介して、受信したエラー通知を送信する（Ｓ３２０２、通信２）。
【０１４１】
ステップＳ３２０３では、クライアント端末１０１が受信通信内容に従って処理を行う。そして、本エラー通知処理を終了する。
【０１４２】
以上のようにして、第３の実施の形態では、印刷エラー発生の際、クライアント端末１０１に印刷データが残っていた場合、クライアント端末１０１から再送させる。これにより、サーバ１０３が印刷データの再生成を省略でき、ＳＢＣシステムにおけるサーバの処理負荷を軽減させることができる。
【０１４３】
〔第４の実施の形態〕
次に、本発明の第４の実施の形態を説明する。
【０１４４】
第４の実施の形態のシステム構成は、基本的に第１の実施の形態の構成と同じであるので、第４の実施の形態の説明においては、第１の実施の形態の構成と同一部分には同一の参照符号を付して、第１の実施の形態の説明を流用し、異なる部分だけを説明する。
【０１４５】
第４の実施の形態においては、サーバ１０３が、一部処理を施して中間データ等を作成し、作成した中間コードをクライアント端末１０１に転送する。クライアント端末１０１は、転送された中間コードを印刷データに変換して、画像形成装置１０２に転送する。
【０１４６】
図２３は、第４の実施の形態に係る印刷システムの第１の構成を示す図である。この第１の構成は、図６に示す第１の実施の形態におけるネットワーク構成に対応する。
【０１４７】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１、画像形成装置１０２が接続される。
【０１４８】
サーバ１０３からクライアント端末１０１へは、中間データがネットワーク１０４を介して送信される（通信２）。また、クライアント端末１０１からサーバへは、操作通知がネットワーク１０４を介して送信される（通信１）。また、クライアント端末１０１から画像形成装置１０２へは、印刷データがネットワーク１０４を介して送信される（通信３）。
【０１４９】
図２４は、第４の実施の形態に係る印刷システムの第２の構成を示す図である。この第２の構成は、図７に示す第１の実施の形態におけるネットワーク構成に対応する。
【０１５０】
この印刷システムにおいては、ネットワーク１０４上に、サーバ１０３、クライアント端末１０１が接続され、画像形成装置１０２は、ローカルＩ／Ｆ１０５を介してクライアント端末１０１に接続される。
【０１５１】
サーバ１０３からクライアント端末１０１へは、中間データがネットワーク１０４を介して送信される（通信２）。また、クライアント端末１０１からサーバへは、操作通知がネットワーク１０４を介して送信される（通信１）。また、クライアント端末１０１から画像形成装置１０２へは、印刷データがローカルＩ／Ｆ１０５を介して送信される（通信３）。
【０１５２】
これによって、サーバ１０３での処理負荷を軽減することができる。
【０１５３】
〔他の実施の形態〕
また、本発明の目的は、前述した各実施の形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。
【０１５４】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した各実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１５５】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ等の光ディスク、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１５６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含まれる。
【０１５７】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含まれる。
【０１５８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も、本発明に含まれることは言うまでもない。
【０１５９】
この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、又はインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【図面の簡単な説明】
【０１６０】
【図１】第１の実施の形態に係る印刷システムに含まれるサーバ１０３の構成を示すブロック図である。
【図２】図１に示したサーバが印刷処理を実行する際に使用するソフトウェアの構成を示す図である。
【図３】第１の実施の形態に係る印刷システムに含まれるクライアント端末の構成を示すブロック図である。
【図４】図１に示したクライアント端末が印刷処理を実行する際に使用するソフトウェアの構成を示す図である。
【図５】第１の実施の形態に係る印刷システムに含まれる画像形成装置の構成を示すブロック図である。
【図６】第１の実施の形態に係る印刷システムの全体構成を示す図である。
【図７】図６に示すネットワーク構成とは別のネットワーク構成をもつ印刷システムの構成を示す図である。
【図８】図６及び図７に示すサーバにおいて実行される印刷処理の手順を示すフローチャートである。
【図９】クライアント端末において行われる「自装置が印刷処理を行うことが可能であるか否か」の判断処理の手順を示すフローチャートである。
【図１０】図６および図７に示すクライアント端末において行われる印刷データ作成処理の手順を示すフローチャートである。
【図１１】図６および図７に示す画像形成装置１０２において行われる印刷処理の手順を示すフローチャートである。
【図１２】第２の実施の形態に係る印刷システムの第１の構成を示す図である。
【図１３】第２の実施の形態に係る印刷システムの第２の構成を示す図である。
【図１４】図１２及び図１３に示す第２の実施の形態におけるサーバにおいて実行される印刷処理の手順を示すフローチャートである。
【図１５】図１２及び図１３に示す第２の実施の形態におけるサーバが印刷データ獲得依頼を受信したときに行う印刷データ送信処理の手順を示すフローチャートである。
【図１６】図１２及び図１３に示す第２の実施の形態におけるクライアント端末において実行される印刷データ作成処理の手順を示すフローチャートである。
【図１７】図１２及び図１３に示す第２の実施の形態における画像形成装置において実行される印刷処理の手順を示すフローチャートである。
【図１８】第３の実施の形態に係る印刷システムの第１の構成を示す図である。
【図１９】第３の実施の形態に係る印刷システムの第２の構成を示す図である。
【図２０】図１８及び図１９に示すサーバにおいて行われるエラー処理の手順を示すフローチャートである。
【図２１】図１８及び図１９に示すクライアント端末において行われる印刷データ確認および印刷データ再送の処理の手順を示すフローチャートである。
【図２２】図１９に示すクライアント端末において行われるエラー通知処理の手順を示すフローチャートである。
【図２３】第４の実施の形態に係る印刷システムの第１の構成を示す図である。
【図２４】第４の実施の形態に係る印刷システムの第２の構成を示す図である。
【図２５】ＳＢＣシステムの従来の第１の構成例を示す図である。
【図２６】ＳＢＣシステムにおけるクライアント端末で実行され基本的な処理の手順を示すフローチャートである。
【図２７】ＳＢＣシステムにおけるサーバで実行される基本的な処理の手順を示すフローチャートである。
【図２８】ＳＢＣシステムの従来の第２の構成例を示す図である。
【符号の説明】
【０１６１】
１０１  クライアント端末
１０２  画像形成装置
１０３  サーバ
１０４  ネットワーク
１０５  ローカルＩ／Ｆ
【図１】
0004804232.tif 000002
【図２】
0004804232.tif 000003
【図３】
0004804232.tif 000004
【図４】
0004804232.tif 000005
【図５】
0004804232.tif 000006
【図６】
0004804232.tif 000007
【図７】
0004804232.tif 000008
【図８】
0004804232.tif 000009
【図９】
0004804232.tif 000010
【図１０】
0004804232.tif 000011
【図１１】
0004804232.tif 000012
【図１２】
0004804232.tif 000013
【図１３】
0004804232.tif 000014
【図１４】
0004804232.tif 000015
【図１５】
0004804232.tif 000016
【図１６】
0004804232.tif 000017
【図１７】
0004804232.tif 000018
【図１８】
0004804232.tif 000019
【図１９】
0004804232.tif 000020
【図２０】
0004804232.tif 000021
【図２１】
0004804232.tif 000022
【図２２】
0004804232.tif 000023
【図２３】
0004804232.tif 000024
【図２４】
0004804232.tif 000025
【図２５】
0004804232.tif 000026
【図２６】
0004804232.tif 000027
【図２７】
0004804232.tif 000028
【図２８】
0004804232.tif 000029