(57)【特許請求の範囲】
【請求項１】
アプリケーションを保持するサーバと、クライアントコンピュータとプリンタとがネットワークを介して接続されているシステムにおいて、
前記サーバは、アプリケーションデータからプリントデータを生成するソフトウェア部分を有し、
前記クライアントコンピュータが、
前記サーバで保持されるアプリケーションで作成したアプリケーションデータのプリント要求を受理する受理手段と、
前記プリント要求を前記サーバへ送信することに応じて前記サーバにて生成される前記プリント要求に対応する識別子を受信する手段と、
前記プリント要求と、前記プリント要求に対応する識別子と、アプリケーションに依存しない制御情報とを、プリンタへ送信する送信手段とを備え、
前記プリンタが、
前記クライアントコンピュータから、前記プリント要求と、前記プリント要求に対応する識別子と、前記アプリケーションに依存しない制御情報とを受信するとともに、前記サーバから、プリント要求に対応する識別子とプリントデータとを、サーバから受信する受信手段と、
前記クライアントコンピュータから受信したプリント要求に対応する識別子と前記サーバから受信したプリント要求に対応する識別子とを比較する比較手段と、
両識別子が等しいとき、前記クライアントコンピュータから受信した、前記アプリケーションに依存しない制御情報に応じて、前記サーバから受信した前記のプリントデータをプリントする画像形成手段とを備える
システム。
【請求項２】
ネットワークを介してサーバとプリンタとに接続可能であり、
前記サーバで保持されるアプリケーションで作成したアプリケーションデータのプリント要求を受理する受理手段と、
前記プリント要求を前記サーバへ送信することに応じて前記サーバにて生成される前記プリント要求に対応する識別子を受信する手段と、
前記プリント要求と、前記プリント要求に対応する識別子と、アプリケーションに依存しない制御情報とを、プリンタへ送信する送信手段と
を備えるクライアントコンピュータ。
【請求項３】
ネットワークを介してサーバとプリンタとに接続可能なクライアントコンピュータにより実行され、
前記サーバで保持されるアプリケーションで作成したアプリケーションデータのプリント要求を受理する第１のステップと、
前記プリント要求を前記サーバへ送信することに応じて前記サーバにて生成される前記プリント要求に対応する識別子を受信する第２のステップと、
前記プリント要求と、前記プリント要求に対応する識別子と、アプリケーションに依存しない制御情報とを、プリンタへ送信する第３のステップと
からなるプログラム。
【請求項４】
ネットワークを介してサーバとクライアントコンピュータとに接続可能であり、
前記クライアントコンピュータから、プリント要求と、前記プリント要求に対応する識別子と、前記アプリケーションに依存しない制御情報とを受信する第１受信手段と、
前記サーバから、プリント要求に対応する識別子とプリントデータとを受信する受信手段と、
前記クライアントコンピュータから受信した識別子と前記サーバから受信した識別子とを比較する比較手段と、
前記のクライアントコンピュータと前記のサーバとから受信した両識別子が同じであるとき、前記クライアントコンピュータから受信した、前記アプリケーションに依存しない制御情報に応じて、前記サーバから受信した前記のプリントデータをプリントするプリント手段と
を備えるプリンタ。
【請求項５】
ネットワークを介してサーバとクライアントコンピュータとに接続可能なプリンタにより実行され、
前記クライアントコンピュータから、プリント要求と、前記プリント要求に対応する識別子と、前記アプリケーションに依存しない制御情報とを受信する第１のステップと、
前記サーバから、プリント要求に対応する識別子とプリントデータとを受信する第２のステップと、
前記クライアントコンピュータから受信した識別子と前記サーバから受信した識別子とを比較する第３のステップと、
前記クライアントコンピュータと前記のサーバとから受信した両識別子が同じであるとき、前記クライアントコンピュータから受信した、前記アプリケーションに依存しない制御情報に応じて、前記サーバから受信した前記のプリントデータをプリントする第４のステップと
からなるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アプリケーションサービスプロバイダを用いたプリントシステムに関するものである。
【０００２】
【従来の技術】
近年、アプリケーションサービスプロバイダ（ＡＳＰ）といったサービスモデルが普及している。アプリケーションサービスプロバイダを用いたプリントシステムでは、インターネットからアクセス可能なアプリケーションサーバにアプリケーションを保持しておく。アプリケーションの取得、制御が必要なときに、クライアントコンピュータは、アプリケーションサーバからアプリケーションを取得して、アプリケーションを実行する。そして、得られたデータをプリンタに送り印刷する。
【０００３】
アプリケーションサーバが保持するアプリケーションで生成したデータをプリントする場合、一般に、クライアント側のブラウザで表示可能なＨＴＭＬなどの汎用形式に変換されたものを、クライアント側のプリンタドライバがプリンタ記述言語に変換して、クライアント側のプリンタに送る。しかし、この場合、ブラウザで表示ができない情報をプリントできない。たとえば、プリント用の解像度の高い画像データは、高解像度で出力できない。したがって、アプリケーションがそのままプリントデータを生成するほうがよい。
【０００４】
アプリケーションサーバが保持するアプリケーションがそのままプリントデータを生成するほうがよいとしても、アプリケーションが起動していないとアプリケーションのプリントデータをそもそも生成できない。従って、アプリケーションで作成したデータをプリントアウトする場合、従来は、クライアントコンピュータは、アプリケーションサーバからアプリケーションを取得し、アプリケーションを起動してアプリケーションのプリントデータを生成する。次にプリンタドライバでプリントデータを生成し、プリントデータをプリンタに送信する。
【０００５】
【発明が解決しようとする問題点】
しかし、アプリケーションサーバで保持するアプリケーションは、ビジネスユーザーにとっては、ワープロ、表計算ソフトといった頻繁に利用しデータサイズの小さいソフトウェアよりも、頻繁には利用しない管理ソフト（人事管理、財務管理ソフト、データウェアハウス等のデータ管理ソフトといったグループウェア）も多く、これらのソフトウェアはデータサイズも大きい傾向にある。よって、これらのデータをプリントするだけのためにデータサイズの大きいアプリケーションをクライアントコンピュータが取得するのは、処理としては長時間かかり、よって、プリントアウトまでの時間が長くなる傾向にある。さらには、アプリケーションの取得とプリントデータのプリンタへの送信といった長い期間においては、クライアントコンピュータが解放されないという問題も発生する。また、印刷するたびにアプリケーションソフトをクライアントに送信しプリントデータ生成後にすぐ返却するといった送受信回数の増加によって、アプリケーションサーバでの処理負荷も増加する。
【０００６】
これを解決するため、アプリケーションサーバでプリントデータを生成して、プリンタに送信することも考えられる。プリンタは、優先給紙口の設定、給紙可能な用紙サイズ、排紙オプションの有無といった設置先によっての固有の構成情報をもつ。しかし、アプリケーションサーバとプリンタがインターネットを介した通信を行うネットワーク環境においては、アプリケーションサーバにおいてはクライアント側のプリンタの構成情報（優先給紙口、排紙オプションの有無）が不明であるため、設置先のプリンタ構成情報に応じた（アプリケーションに依存しない）制御情報の生成は困難となる。また、プリンタ構成情報に応じたプリント制御情報もクライアント毎に個別に設定していることも多い。例えば１２００ＤＰＩのプリントが可能なプリンタにおいても、６００ＤＰＩでのプリントモードをデフォルトモードとして設定しているクライアント、４００ＤＰＩでのプリントモードをデフォルトモードとして設定しているクライアントとまちまちである。アプリケーションデータからプリントデータを生成するときにおいて、出力解像度のようなプリント制御情報が異なると、クライアントが要求しているプリント制御情報どおりのプリントデータが生成されないという問題が発生する。
【０００７】
このため、アプリケーションサーバにプリンタドライバをアップロードし、アプリケーションサーバでアプリケーションのデータをページ記述言語でプリントデータに変換することが考えられる。しかし、この場合、プリントを指示してからプリント開始までの時間が長いという課題があった。また、アプリケーションに依存しない情報の設定もサーバで行うため、プリンタドライバのアップロードに時間がかかるという課題があった。
【０００８】
この発明の目的は、アプリケーションサービスプロバイダを用いたネットワーク環境において、プリントを効率的に行えるようにすることである。
【０００９】
【課題を解決するための手段】
本発明に係るシステムは、アプリケーションを保持するサーバと、クライアントコンピュータとプリンタとがネットワークを介して接続されているシステムにおいて、前記サーバは、アプリケーションデータからプリントデータを生成するソフトウェア部分を有する。前記クライアントコンピュータが、前記サーバで保持されるアプリケーションで作成したアプリケーションデータのプリント要求を受理する受理手段と、前記プリント要求を前記サーバへ送信することに応じて前記サーバにて生成される前記プリント要求に対応する識別子を受信する手段と、前記プリント要求と、前記プリント要求に対応する識別子と、アプリケーションに依存しない制御情報とを、プリンタへ送信する送信手段とを備える。前記プリンタが、前記クライアントコンピュータから、前記プリント要求と、前記プリント要求に対応する識別子と、前記アプリケーションに依存しない制御情報とを受信するとともに、前記サーバから、プリント要求に対応する識別子とプリントデータとを、サーバから受信する受信手段と、前記クライアントコンピュータから受信したプリント要求に対応する識別子と前記サーバから受信したプリント要求に対応する識別子とを比較する比較手段と、両識別子が等しいとき、前記クライアントコンピュータから受信した、前記アプリケーションに依存しない制御情報に応じて、前記サーバから受信した前記のプリントデータをプリントする画像形成手段とを備える。
【００１０】
このシステムでは、サーバにプリンタドライバをアップロードしている。サーバはアプリケーションのデータをプリンタドライバを用いてプリントデータに変換して送信する。このシステムでは、１つのジョブについて、アプリケーションに依存する制御情報はアプリケーションサーバからプリンタに指示し、アプリケーションに依存しない制御情報は、クライアントコンピュータからプリンタに指示する。プリンタは、アプリケーションに依存しない制御情報とアプリケーションに依存する制御情報（画像データなど）を別々に受けて、内部でマージし、一つのジョブとして出力できる。
【００１１】
このシステムにおいて、たとえば、前記のクライアントコンピュータの送信手段が、アプリケーションに依存する制御情報と、その制御情報に応じたプリントデータ生成の要求をサーバに送信する。
【００１２】
また、前記のシステムにおいて、たとえば、前記のサーバは、前記のクライアントコンピュータからプリント要求を受けたら、そのクライアントコンピュータに対してアプリケーションに依存しない情報をプリンタに送るように指示する。ここで、前記のサーバは、好ましくは、アプリケーションに依存するプリントデータの生成制御を実行し、アプリケーションデータに依存しないプリンタ構成情報にもとづく制御情報の生成を実行しない。
【００１４】
本発明に係るクライアントコンピュータは、ネットワークを介してサーバとプリンタとに接続可能であり、前記サーバで保持されるアプリケーションで作成したアプリケーションデータのプリント要求を受理する受理手段と、前記プリント要求を前記サーバへ送信することに応じて前記サーバにて生成される前記プリント要求に対応する識別子を受信する手段と、前記プリント要求と、前記プリント要求に対応する識別子と、アプリケーションに依存しない制御情報とを、プリンタへ送信する送信手段とを備える。
【００１６】
本発明に係る、ネットワークを介してサーバとプリンタとに接続可能なクライアントコンピュータにより実行されるプログラムは、前記サーバで保持されるアプリケーションで作成したアプリケーションデータのプリント要求を受理する第１のステップと、前記プリント要求を前記サーバへ送信することに応じて前記サーバにて生成される前記プリント要求に対応する識別子を受信する第２のステップと、前記プリント要求と、前記プリント要求に対応する識別子と、アプリケーションに依存しない制御情報とを、プリンタへ送信する第３のステップとからなる。
【００１７】
このプログラムにおいて、たとえば、前記第２のステップにおいて、サーバへの送信において、アプリケーションデータからプリントデータの生成をするソフトウェア部分のみを有するプリンタドライバを送信する。これにより、サーバにおいてプリンタのプリンタドライバがインストールされていない場合においても、プリントが可能である。また、サーバにおいては、アプリケーションに依存するプリントデータの生成制御を実行するソフトウェアのみ有し、アプリケーションデータに依存しない（プリンタ構成情報にもとづく）制御情報の生成を実行するソフトウェアを有さなくもよいため、サーバのリソースを多く必要としない。サーバにおけるアプリケーションに依存しない制御情報の生成を省ける。アプリケーションに依存しない制御をする構成を省いてもよい。プリンタ構成情報にもとづく制御情報の生成をするソフトウェア部分をもたなくていいため、インストールする容量を低減できる。
【００１８】
本発明に係るコンピュータ読み出し可能な記録媒体は、前述のプログラムを記録する。
【００１９】
本発明に係るプリンタは、ネットワークを介してサーバとクライアントコンピュータとに接続可能であり、前記クライアントコンピュータから、プリント要求と、前記プリント要求に対応する識別子と、前記アプリケーションに依存しない制御情報とを受信する第１受信手段と、前記サーバから、プリント要求に対応する識別子とプリントデータとを受信する受信手段と、前記クライアントコンピュータから受信した識別子と前記サーバから受信した識別子とを比較する比較手段と、前記クライアントコンピュータと前記のサーバとから受信した両識別子が同じであるとき、前記クライアントコンピュータから受信した、前記アプリケーションに依存しない制御情報に応じて、前記サーバから受信した前記のプリントデータをプリントするプリント手段とを備える。
【００２０】
好ましくは、前記のプリンタは前記のコンピュータと同一のローカルエリアネットワークにあり、プリンタはファイアウォールとインターネットを介して前記のサーバと通信する。プリンタがクライアントと同一のローカルエリアネットワークにあり、サーバとプリンタがインターネットを介した通信をおこなうネットワーク環境においては、サーバにおいてはプリンタの構成情報（優先給紙口、排紙オプションの有無など）が不明であるため、アプリケーションに依存しない制御情報の生成は困難となるが、こういったネットワークにおいてもプリンタの構成情報にもとづく制御情報に応じたプリントが可能となる。
【００２２】
本発明に係る、ネットワークを介してサーバとクライアントコンピュータとに接続可能なプリンタにより実行されるプログラムは、前記クライアントコンピュータから、プリント要求と、前記プリント要求に対応する識別子と、前記アプリケーションに依存しない制御情報とを受信する第１のステップと、前記サーバから、プリント要求に対応する識別子とプリントデータとを受信する第２のステップと、前記クライアントコンピュータから受信した識別子と前記サーバから受信した識別子とを比較する第３のステップと、前記クライアントコンピュータと前記のサーバとから受信した両識別子が同じであるとき、前記クライアントコンピュータから受信した、前記アプリケーションに依存しない制御情報に応じて、前記サーバから受信した前記のプリントデータをプリントする第４のステップとからなる。
【００２３】
前記のプログラムにおいて、前記第４のステップは、さらに、同じ識別子を持つ情報があった場合に、いずれのアプリケーションに依存しない制御情報が優先か判定するステップを備え、前記第２のステップにおいてサーバからもアプリケーションに依存しない制御情報を受信したとき、第４のステップにおいて、優先と判定した、アプリケーションに依存しない制御情報に応じて、プリントする。したがって、サーバとクライアントコンピュータの双方からアプリケーションに依存しない制御情報を受信しても、一方を優先するため、優先した制御情報に応じたプリントアウトが可能となる。
【００２４】
前記のプログラムにおいて、好ましくは、アプリケーションに依存しない制御情報を受信しないときは、前記第４のステップにおいてデフォルトのアプリケーションに依存しない制御情報に応じてプリントする。
【００２５】
本発明に係るコンピュータ読み出し可能な記録媒体は、前記のプログラムを記録する。
【００２６】
なお、上述の「アプリケーションに依存しない制御情報」とは、「アプリケーションデータからプリントデータを生成するときに、プリントデータの出力に影響をあたえない制御情報」である。「アプリケーションに依存しない制御情報」とは、たとえば、プリンタ設置先によって異なるプリンタ構成に基く制御情報である（たとえば色、フォントサイズ、出力解像度、印刷物の排出口など）。「アプリケーションに依存しない情報」は、また、サーバのアプリケーションがプリントデータの作成や変換に使わない制御データを含む。たとえば、プリントの部数や、画像データに追加される電子透かしなどである。
【００２７】
なお、前述の発明において、前述の構成要素は可能な限り組み合わせることができる。
【００２８】
なお、特開２０００−３５３０５９号公報に記載されたプリント方式では、受信したプリントデータを画像と、それ以外に分離する。画像は所定のフォルダに保存し、そのフォルダヘのリンク情報と画像以外のデータをプリンタに送る。プリンタは、受信したデータに含まれる画像データの格納場所から画像データを吸い上げて、プリントする。この先行技術では元々１つだったデータを途中で画像データとそれ以外に分けている。この方式は、アプリケーションサービスプロバイダを含むシステムに関するものではないが、画像データとそれ以外のデータに分けて扱われる点は、本発明と似ている（本発明ではアプリケーションに依存するデータと依存しないデータ）。しかし、本発明では、アプリケーション依存データとアプリケーション非依存データは、異なるコンピュータで生成される。
【００２９】
【発明の実施の形態】
以下、添付の図面を参照して本発明の実施の形態を説明する。なお、図面において、同じ参照記号は同一または同等のものを示す。
【００３０】
図１は、アプリケーションサービスプロバイダ（ＡＳＰ）１００を含むシステムを示す。アプリケーションサービスプロバイダ１００は、インターネット１０を介して、クライアントコンピュータ２００に接続される。アプリケーションサーバ１００は、アプリケーションを保持している。クライアントコンピュータ２００は、アプリケーションサーバ１００に対してアプリケーションを実行しプリントデータを生成することを要求できる。得られたプリントデータはローカルプリンタ２０４で印刷する。なお、多数のクライアントコンピュータ２００が１つのアプリケーションサービスプロバイダ１００に接続可能であるが、説明を簡略化するため、ここでは２つの装置だけを示す。
【００３１】
さらに詳しく説明すると、アプリケーションサービスプロバイダ１００側では、アプリケーションサーバ１０２であるコンピュータが設置されている。サーバ１０２は、ユーザー側のクライアントコンピュータ２００とプリントコントローラ２０６と通信するために、ＬＡＮ１０４を経由して、ファイアウォール１０６およびルータ１１０を介してインターネット１０と接続されている。さらに、アプリケーションサービスプロバイダ側のウェブサーバ１０８は、クライアントコンピュータ２００からアプリケーションサーバ１０２へのアクセス要求を受け付け、アプリケーションサーバ１０２は後述するサービスを実行する。
【００３２】
アプリケーションサーバ１０２は、アプリケーションのデータをプリンタ言語に変換して、直接またはクライアントコンピュータ２００を経由して、クライアント側のプリントコントローラ２０６に送付する。このプリント形態において、プリンタのモード設定に関するプログラムやユーザインタフェースを、使用者またはクライアントコンピュータごとに切り換える。
【００３３】
一方、クライアント側では、１以上のクライアントコンピュータ２００が、ＬＡＮ２０２を介してプリントコントローラ２０６に接続され、プリントコントローラ２０６は、さらにプリンタ２０４が接続されている。プリントコントローラ２０６は、クライアントコンピュータ２００からプリント要求を受信する。また、アプリケーションサーバ２００からのプリントデータを受信し、受信したプリントデータを、プリンタ２０４に転送して印刷処理を行わせる。プリンタ２０４は、プリントエンジンとその制御系を備え、プリントコントローラ２０６から受け取ったプリントデータを印刷する。なお、プリンタ２０４は、プリントコントローラと一体化したプリンタであってもよい。
【００３４】
クライアントコンピュータ２００とプリントコントローラ２０６は、ＬＡＮ２０２を経由して、ファイアウォール２０８、ウェブサーバ２１０およびルーター２１２を介して、インターネット１０に接続されている。ファイアウォール２０８は、パケットフィルタリング、プロキシ等の機能を備えており、送信元ＩＰアドレス（ホスト名）、宛先ＩＰアドレス（ホスト名）、送信元ポート番号、宛先ポート番号、データが所定の条件を満たすパケットのみファイアウォール２０８の通過を許可し、所定のパケットのみインターネット１０からプリントコントローラ２０６へ送信可能となる。また、イントラネットからインターネットに送信した場合（イントラネットのプリンタからアプリケーションサーバへアクセスした場合）、その送信に対する返信（返信元がアプリケーションサーバであり、返信先がプリンタであるときは）は通過を許可している。ルータ２１２は、経路制御を実行する。
【００３５】
図１に示したシステムにおいて、アプリケーションサーバは、複数のクライアントコンピュータ２００からの要求に応じて、ネットワークを通じて各クライアントコンピュータ２００にアプリケーションを並列に提供する。さらに、複数のユーザまたは複数のクライアントコンピュータ２００毎に、提供しているアプリケーション用のデータを保管している。また、アプリケーションで生成したデータを印字データに変換するプリンタドライバを複数のユーザまたは複数のクライアントコンピュータ２００毎に有する。
【００３６】
アプリケーションサーバ１００でアプリケーションのデータをページ記述言語（ＰＤＬ）に変換し、そのプリントデータを受け取ってプリンタでプリントする。ここで、本実施形態では、アプリケーションに依存する制御情報はアプリケーションサーバから指示し、アプリケーションに依存しない制御情報は、クライアントコンピュータから指示する。プリンタは、アプリケーションに依存しない制御情報とアプリケーションに依存する制御情報（画像データなど）を別々の装置から別々に受けて、内部でマージし、一つのジョブとして出力する。
【００３７】
ここで、「アプリケーションに依存しない制御情報」とは、「アプリケーションデータからプリントデータを生成するときに、プリントデータの出力に影響をあたえない制御情報」である。したがって、アプリケーションサーバでプリントデータの作成や変換に使わない制御データを含む。たとえば、色、フォントサイズ、解像度、部数、排出口、電子透かしなどである。
【００３８】
また、サーバへ送信するプリンタドライバは、アプリケーションデータからプリントデータの生成をするソフトウェア部分のみを有する。設置先でのプリンタ構成情報をアプリケーションサーバに送信し、アプリケーションサーバからプリンタ構成情報に応じた制御情報をプリンタに送信することも考えられる。しかし、この方式は、プリンタはクライアントと同一のローカルエリアネットワークにあることも多いため通信効率がわるい。従って、アプリケーションデータからプリントデータを生成するのに必要な制御情報のみをアプリケーションサーバに送信すべきであり、他の情報は送信する必要がない。また、プリンタ構成情報に応じて生成した制御情報はアプリケーションに依存しない制御情報であるため、アプリケーションサーバで保持しておいてもアプリケーションサーバ側での使用頻度は少なく、かえってリソースの圧迫をまねく。また、プリンタドライバは、プリンタ構成情報に応じた制御情報を生成するソフトウェア部分と、ＰＤＬデータ等のプリンタが解釈可能なプリントデータを生成するソフトウェア部分とがあるが、前者のデータサイズは大きいため、これをアプリケーションサーバにインストールすると同様にアプリケーションサーバのリソースの圧迫を招くこともある。従って、アプリケーションデータからプリントデータを生成するのに必要な制御情報のみをアプリケーションサーバに送信すべきであり、他の情報は送信する必要がない。
【００３９】
通常の場合は、プリンタドライバは、画像情報などの生成の他に、さらに、プリンタ制御情報とページ制御情報を生成するが、本実施形態では、クライアントコンピュータは、アプリケーションに依存しない制御情報をサーバに送信しない。したがって、プリンタドライバは、プリンタ制御情報とページ制御情報を生成せず、これらは、プリンタにおいて生成される。したがって、プリンタドライバの機能が通常の場合より削減されており、プリンタドライバのアップロードの時間が短くなる。プリンタは、受信したプリントデータを、生成したジョブ制御情報とページ制御情報に従って印刷する。なお、ジョブ制御情報は、ジョブ識別子、ジョブ名（アプリケーションファイル名）、ジョブ送信者名、ジョブのコピー部数、ジョブ処理モード（優先ジョブ、非優先ジョブ、ジョブ合成、ジョブ分割等のジョブモードを設定するもの）等のジョブ単位での印刷装置の制御情報である。また、ページ制御情報は、ドキュメント識別子、ドキュメント名、両面印刷、用紙サイズ、選択する給紙口、排紙モード、解像度、階調数等の印刷データを用紙に印字するときの制御情報である。
【００４０】
サーバでアプリケーションを保持しているシステムでこのアプリケーションデータをプリントする場合に、クライアントでアプリケーションを受信したのちにクライアントからプリンタへプリントデータを送信する構成と比較すると、アプリケーションをクライアントに送信する処理を省くことができ、プリントアウトまでの時間を短縮できる。また、クライアントからプリンタにアプリケーションに依存しない制御情報を送信し、これに応じたプリントアウトを実行するため、コンピュータからサーバへの制御情報のアップロード等も省くことができる。
【００４１】
以下、このシステムを構成するそれぞれの装置について詳しく説明する。図２は、アプリケーションサービスプロバイダ側に設置されたアプリケーションサーバ１０２であるコンピュータの回路構成を示す。アプリケーションサーバ１０２には、ＣＰＵ１１０、ＲＯＭ１１２、ＲＡＭ１１４、固定記憶装置１１６が搭載されているとともに、ディスプレイ１１８が表示制御部１２０を介して、キーボード１２２およびマウス１２４が入力制御部１２６を介してそれぞれ接続されている。また、ＬＡＮ１０４を介して各種のデータを送受信するためのネットワークインタフェースカード１２８を内蔵している。固定記憶装置１１６は、クライアントコンピュータ２００がアプリケーションサーバ１００とアクセスするための認証データやクライアントコンピュータ２００の電子メールアドレス、アプリケーション名やアプリケーションデータのファイル名、クライアントが利用するプリンタのアドレス、プリンタの機種名、そのプリンタドライバ名等のクライアントコンピュータ２００の登録情報を記憶している。また、アプリケーション及びアプリケーションデータ並びにクライアント装置からのプリント要求において起動するクライアント毎に異なるプリンタドライバを記憶している。クライアントコンピュータ２００の登録情報は、容易に書き換え登録可能なように、固定記憶装置１１６内の別々のフォルダ（ディレクトリ）に格納しておく。
【００４２】
アプリケーションサーバ１０２において、プリンタドライバは、アプリケーションデータからプリントジョブデータを作成する。クライアントコンピュータ２００からインターネット１０を介したプリント要求があると、プリンタドライバを起動し、アプリケーションデータからページ記述言語で記述された印刷画像データからなるプリントデータを作成する。そして、プリントデータを、クライアントコンピュータ２００の指定したプリンタに送信する。なお、ページ記述言語として一般に複数の言語が使用されているが、プリントコントローラ２０６が解釈可能なものを用いる。
【００４３】
プリンタドライバは、プリントコントローラが解釈可能なプリントデータの生成を行う。プリンタドライバ起動中においては、ディスプレイ１１８に所定の操作画面の表示するとともに、クライアントコンピュータ２００からのインターネットを介した要求を受け付け、これに応じて、アプリケーションデータからページ記述言語からなる印刷画像データへの変換を実行する。ページ記述言語で記述された印刷画像データは、アプリケーションプログラムで格納されたアプリケーションデータをプリントコントローラ２０６で解釈処理可能なデータに変換したものである。プリンタドライバは、さらに、クライアントコンピュータ２００で指定のあったプリンタへのプリントジョブの要求の発行とプリントデータの送信を実行する。
【００４４】
図３は、クライアントコンピュータ２００の回路構成を示す。クライアントコンピュータ２００は、ＣＰＵ２２０、ＲＯＭ２２２、ＲＡＭ２２４、固定記憶装置２２６が搭載されているとともに、ディスプレイ２２８が表示制御部２３０を介して、キーボード２３２およびマウス２３４が入力制御部２３６を介してそれぞれ接続されている。また、ＬＡＮ２０２を介して各種のデータを送受信するためのネットワークインタフェースカード２３８を内蔵している。ＲＯＭ２２２、固定記憶装置２２６には、アプリケーションサーバとアクセスするプログラム、アプリケーションサーバからアプリケーションとそのアプリケーションデータを取得するプログラム、アプリケーションサーバへのプリントデータ生成の要求を実行するプログラムおよびプリンタドライバを格納し、ＣＰＵ２２０で実行する。また、ＲＯＭ２２２や固定記憶装置２２４ には、アプリケーションサーバのメールアドレス（ＵＲＬ）や、アプリケーションサーバへアクセスするための認証データを記憶している。
【００４５】
図４は、プリントコントローラ２０６の回路構成を示す。プリントコントローラ２０６において、ＣＰＵ２５０は、後述するクライアントコンピュータ２００からのプリントジョブの受信、ジョブの管理、ファームウェアの管理、印刷画像の画像処理の制御、電子メールで受信した画像情報のデータ変換や電子メールで送信する画像情報のデータ変換や画像情報添付の電子メールの送受信制御、ファームウェア書き換えの制御を実行する。ＥＰ−ＲＯＭ（不揮発性メモリ）２５２は、これら処理を実行するための制御プログラムを格納する。ネットワーク・インターフェース・カード（ＮＩＣ）２５４は、クライアントコンピュータ２００からのプリントジョブの受信や他のプリンタへの画像情報の送信等各種のデータをＬＡＮと送受信する。ハードディスク等の固定記憶装置（不揮発性メモリ）２５６は、クライアントコンピュータ２００から受信したプリントジョブや画像情報送信ジョブを記憶する。画像展開部２５８において、インタープリタは、受信プリントジョブのページ記述言語で記述された印刷データを中間コードに変換し、フォント記憶部は、中間コードを解析するためのフォント情報とフォントデータを記憶し、ＲＡＭは、ビットマップデータを記憶し、描画処理部は、中間コードから展開したビットマップデータをＲＡＭに展開する。Ｓ−ＲＡＭ２６０は、ワークエリアとして使用される。バッテリでバックアップされたＮＶ−ＲＡＭ２６２は、各種設定値や管理情報を記憶する。ＮＶ−ＲＡＭ２６２には、自装置のＩＰアドレス以外に、アプリケーションサーバ１０２のメールアドレス（ＵＲＬ）、パスワード等が格納されている。また、プリントコントローラ２０６は、シリアルＩ／Ｆ２６４及びビデオＩ／Ｆ２６６を介して、プリンタのシリアルＩ／Ｆ及びビデオＩ／Ｆとそれぞれ接続されている。さらに、プリントコントローラ２０６には、各種操作設定を行う操作パネル２６８が設けられている。
【００４６】
図５は、アプリケーションサーバからアプリケーションサービスを提供されているクライアントコンピュータからアプリケーションのデータをプリント要求する場合のデータの送受信を示す。クライアントコンピュータは、アプリケーションサーバにプリントを要求する（Ｓ１０）。アプリケーションサーバは、クライアントコンピュータに、アプリケーションに依存しないデータをローカルプリンタに送るように要求する（Ｓ１２）。アプリケーションサーバは、その内部で、アプリケーションに依存するデータを作成した後に、ローカルプリンタへ送信する（Ｓ１４）。一方、クライアントコンピュータは、アプリケーションに依存しないデータをローカルプリンタに送信する（Ｓ１６）。ローカルプリンタは、そのデータを受信し、印刷する。
【００４７】
図６は、アプリケーションサーバ１０２側の処理のフローを示す。まず、クライアントコンピュータから操作情報を受信する（Ｓ１００）。操作情報が所定のネットワークプリンタへの印刷要求であると（Ｓ１０２でＹＥＳ)、クライアントコンピュータにジョプ識別子を送信し、印刷ジョブ情報のうちアプリケーションに依存しない情報をプリンタに送信するよう指示する（Ｓ１０４）。これに対応して、クライアントコンピュータは、印刷ジョブ情報のうちアプリケーションに依存しない情報をサーバから送られてきたジョブ識別子と共にネットワークプリンタに送信する。次に、受信したアプリケーションのデータをプリンタドライバを用いて該当のネットワークプリンタ用のデータに変換し（Ｓ１０６）、クライアントコンピュータに送信したジョブ識別子と同じ識別子を付加してネットワークプリンタに送信する（Ｓ１０８）。
【００４８】
図７は、クライアントコンピユータ２００の処理のフローを示す。まず、ユーザの操作に応じて、操作情報を送信する（Ｓ２００）。操作情報は、アプリケーションサーバ１０２に所定のネットワークプリンタへの印刷の要求を含む。印刷要求を送信した場合、サーバからジョブ識別子を受信する（Ｓ２０２）。次に、サーバから印刷ジョブ情報のうちアプリケーションに依存しない情報をプリンタに送信するよう指示を受けると（Ｓ２０４）、ジョブ識別子と共に印刷ジョブ情報のうちアプリケーションに依存しない情報を作成し（Ｓ２０６）、プリンタに送信する（Ｓ２０８）。ここでアプリケーションに依存しない情報は、ユーザ操作によって入力された情報であっても良い。
【００４９】
図８は、ネットワークプリンタの処理のフローを示す。まず、印刷すべき情報を含んだデータを受信すると（Ｓ３００でＹＥＳ）、受信データを記憶する（Ｓ３０２）。次に、記憶した情報に含まれているジョブＩＤを識別し（Ｓ３０４）、既に受信し記憶されている情報の中に、同じジョブＩＤをもつ情報を探す（Ｓ３０６）。同じジョブＩＤを持つ情報があった場合は、既に記憶されている情報に新たに受信し記憶した情報を付加する（Ｓ３０８）。ここで、記憶済みの情報と同じ属性の情報で違うパラメータの情報があった場合は、置換する。次に、記憶した情報に印刷に必要な情報が全てそろっているかを判別し（Ｓ３１０）、そろっている場合は、プリントを開始する（Ｓ３１２）。そろっていない場合は、Ｓ３００に戻り、データを待つ。
【００５０】
図９は、ジョブ情報併合処理（図７、ステップＳ３０８）のフローを示す。印刷すべき情報を含んだデータを受信し記憶している。ここで、記憶した情報に含まれている設定項目（ジョブＩＤを含む）を識別する（Ｓ３２０）。次に、既に受信し記憶されている情報の中に、同じジョブＩＤを持つ情報を探す（Ｓ３２２）。同じジョブＩＤを持つ情報があった場合は、既に記憶されている情報に新たに受信し記憶した情報を付加する。ここで、優先度を判定し（Ｓ３２４）、優先度の高い方の設定値を採用する（Ｓ３２６）。たとえば、記憶済みの情報と同じ属性の情報で違うパラメータの情報があった場合は、置換する。次に、記憶した情報に印刷に必要な情報が全て揃っているかを判別する（Ｓ３２８）。揃っていない場合は、記憶した情報に含まれる、足りない情報の送信元となるべきコンピュータの識別子を読み取り（Ｓ３３０）、そのコンピュータに対して、足りない情報を送信するように要求する（Ｓ３３２）。そして、ステップＳ３２０に戻る。
【００５１】
【発明の効果】
サーバでアプリケーションを保持しているシステムでこのアプリケーションデータをプリントする場合に、クライアントコンピュータでアプリケーションを受信したのちにクライアントコンピュータからプリンタへプリントデータを送信する構成と比較すると、（１）アプリケーションをクライアントコンピュータに送信する処理を省くことができ、プリントアウトまでの時間を短縮できる。また、（２）クライアントコンピュータからプリンタに、アプリケーションに依存しない制御情報を送信し、これに応じたプリントアウトを実行するため、クライアントコンピュータからサーバへの制御情報のアップロード等も省くことができる。
【００５２】
アプリケーションに依存しない情報の設定は、クライアントコンピュータで行うため、プリンタドライバの機能が削減され、プリンタドライバのアップロードの時間が短くなる。
【００５３】
プリンタがクライアントコンピュータと同一のローカルエリアネットワークにあり、サーバとプリンタがインターネットを介した通信をおこなうネットワーク環境においては、サーバにおいてはプリンタの構成情報（優先給紙口、排紙オプションの有無など）が不明であるため、アプリケーションに依存しない制御情報の生成は困難となるが、本発明では、このようなネットワーク環境においても、プリンタの構成情報に基く制御情報に応じたプリントが可能となる。
【図面の簡単な説明】
【図１】  アプリケーションサービスプロバイダを含むシステムの構成を示す図
【図２】  アプリケーションサーバの回路構成を示すブロック図
【図３】  クライアントコンピュータの回路構成を示すブロック図
【図４】  プリントコントローラの回路構成を示すブロック図
【図５】  このシステムにおけるシーケンスを示す図
【図６】  アプリケーションサーバの処理のフローチャート
【図７】  クライアントコンピユータの処理のフローチャート
【図８】  ネットワークプリンタの処理のフローチャート
【図９】  ジョブ情報併合処理のフローチャート
【符号の説明】
１０  インターネット、    １０２  アプリケーションサーバ、    ２００  クライアントコンピュータ、    ２０４、２０６  プリンタ、    ２１２  ファイアウォール。
【図１】
0004045800.tif 000002
【図２】
0004045800.tif 000003
【図３】
0004045800.tif 000004
【図４】
0004045800.tif 000005
【図５】
0004045800.tif 000006
【図６】
0004045800.tif 000007
【図７】
0004045800.tif 000008
【図８】
0004045800.tif 000009
【図９】
0004045800.tif 000010