(57)【特許請求の範囲】
【請求項１】
サーバ装置とクライアント装置とがHTTPで通信するネットワークプリントシステムであって、
前記クライアント装置は、
表示用の形式で記述された、可変データを表示するためのデータを前記サーバから受信して、可変データをウェブブラウザを用いて表示するとともに、表示されたデータの印刷要求を、当該印刷要求に対する印刷処理のスケジュールに関するスケジュール情報とともに前記ウェブブラウザを用いて前記サーバ装置に発行する発行手段と、
前記印刷要求を含むメッセージに前記ウェブブラウザを特定するためのセッション識別子を付加する手段と、
前記セッション識別子を含む中断要求を発行する中断要求手段とを備え、
前記サーバ装置は、
テンプレートデータを格納する格納手段と、
前記クライアント装置に送信したデータに対応するテンプレートデータを前記格納手段から読み出す読出し手段と、
前記発行手段により発行された前記印刷要求と前記スケジュール情報に従って、前記読出し手段により読み出されたテンプレートデータと、前記クライアント装置で前記ウェブブラウザを用いて表示されている可変データとを合成して印刷データを生成する生成手段と、
前記クライアント装置から前記中断要求を含むメッセージを受信した場合、該メッセージに含まれる前記ウェブブラウザを特定するためのセッション識別子と、前記ウェブブラウザに対応するジョブIDとを用いて特定された印刷要求に起因する印刷処理を中断する制御手段と、
前記生成手段により生成された印刷データをプリンタ装置に出力して印刷させる出力手段と、
前記印刷処理の中断要求を受信した後、前記制御手段により中断された前記印刷処理の再開ボタンを含むページデータを前記クライアント装置に転送する転送手段とを備え、
前記クライアント装置は、前記サーバ装置から送信されてくる前記ページデータを解析して前記印刷処理の印刷再開を指示するための指示部を表示することを特徴とするネットワークプリントシステム。
【請求項２】
前記スケジュール情報は、優先順位を含むことを特徴とする請求項１に記載のネットワークプリントシステム。
【請求項３】
前記スケジュール情報は、印刷時刻を含むことを特徴とする請求項１に記載のネットワークプリントシステム。
【請求項４】
クライアント装置とＨＴＴＰを用いて通信可能な情報処理装置であって、
テンプレートデータ及びテンプレートデータに合成されるデータとを格納する格納手段と、
前記クライアント装置に表示されているデータに対応するテンプレートデータと当該テンプレートデータに合成されるデータとを前記格納手段から読み出す読出し手段と、
前記クライアント装置からの印刷要求と、当該印刷要求と共に受信した当該印刷要求に対する印刷処理のスケジュールを示すスケジュール情報に従って、前記読出し手段により読み出されたテンプレートデータと、前記クライアント装置に表示されているデータとを合成して印刷データを生成する生成手段と、
前記クライアント装置でウェブブラウザを介して入力された、前記印刷処理の中断要求を含むメッセージを受信した場合、該メッセージに含まれる前記ウェブブラウザを特定するためのセッション識別子と、前記ウェブブラウザに対応するジョブIDとを用いて特定された印刷要求に起因する印刷処理を中断する制御手段と、
前記生成手段により生成された印刷データをプリンタ装置に出力して印刷させる出力手段と、
前記印刷処理の中断要求を受信した後、前記制御手段により中断された前記印刷処理の印刷再開を指示するための指示部を含むページデータを前記クライアント装置に転送する転送手段と、
を備えることを特徴とする情報処理装置。
【請求項５】
前記スケジュール情報は、優先順位を含むことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記スケジュール情報は、印刷時刻を含むことを特徴とする請求項４に記載の情報処理装置。
【請求項７】
クライアント装置とＨＴＴＰを用いて通信可能な情報処理装置における制御方法であって、
前記クライアント装置に表示されているデータに対応するテンプレートデータと、当該テンプレートデータに合成されるデータとを格納手段から読み出す読出し工程と、
前記クライアント装置からの印刷要求と、当該印刷要求と共に受信した当該印刷要求に対する印刷処理のスケジュールを示すスケジュール情報とに従って、前記読出し工程で読み出されたテンプレートデータとデータとを合成して印刷データを生成する生成工程と、
前記クライアント装置でウェブブラウザを介して入力された前記印刷処理の中断要求を含むメッセージを受信した場合、該メッセージに含まれる前記ウェブブラウザを特定するためのセッション識別子と、前記ウェブブラウザに対応するジョブIDとを用いて特定された印刷要求に起因する印刷処理を中断する制御工程と、
前記生成工程で生成された印刷データをプリンタ装置に出力して印刷させる出力工程と
前記印刷処理の中断要求を受信した後、前記制御工程で中断された前記印刷処理の印刷再開を指示するための指示部を含むページデータを前記クライアント装置に転送する転送工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項８】
前記スケジュール情報は、優先順位を含むことを特徴とする請求項７に記載の情報処理装置の制御方法。
【請求項９】
前記スケジュール情報は、印刷時刻を含むことを特徴とする請求項７に記載の情報処理装置の制御方法。
【請求項１０】
クライアント装置とＨＴＴＰを用いて通信可能なコンピュータにより実行させるコンピュータプログラムが格納された、前記コンピュータにより読み取り可能な記録媒体であって、前記コンピュータプログラムは、
前記クライアント装置に表示されているデータに対応するテンプレートデータと、当該テンプレートデータに合成されるデータとを格納手段から読み出す読出し工程と、
前記クライアント装置からの印刷要求と、当該印刷要求と共に受信した当該印刷要求に対する印刷処理のスケジュールを示すスケジュール情報に従って、前記読出し工程で読み出された前記テンプレートデータとデータとを合成して印刷データを生成する生成工程と、
前記クライアント装置でウェブブラウザを介して入力された前記印刷処理の中断要求を含むメッセージを受信した場合、該メッセージに含まれる前記ウェブブラウザを特定するためのセッション識別子と、前記ウェブブラウザに対応するジョブIDとを用いて特定された印刷要求に起因する印刷処理を中断する制御工程と、
前記生成工程で生成された印刷データをプリンタ装置に出力して印刷させる出力工程と、
前記印刷処理の中断要求を受信した後、前記制御工程で中断された前記印刷処理の印刷再開を指示するための指示部を含むページデータを前記クライアント装置に転送する転送工程と、
を前記コンピュータに実行させることを特徴とする記録媒体。
【請求項１１】
前記スケジュール情報は、優先順位を含むことを特徴とする請求項１０に記載の記録媒体。
【請求項１２】
前記スケジュール情報は、印刷時刻を含むことを特徴とする請求項１０に記載の記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば電話網等のネットワークを介して接続されたクライアント及びサーバを含むネットワークシステムにおいて、クライアントからの要求に基づいて帳票などのプリントを行うためのネットワークプリントシステム及び情報処理及びその制御方法に関するものである。
【０００２】
【従来の技術】
インターネットの急速な発展とＷｅｂサーバの林立に伴い、業務処理のＷｅｂ化が推進されている。Ｗｅｂサーバとは、ＨＴＴＰ(Hyper Text Transfer Protocol)やＦＴＰ(File Transfer Protocol)等をサポートする、ネットワークに接続されたコンピュータなどを指し、ＵＲＬ(Uniform Resource Locator)で指定された、ＨＴＭＬ(Hyper text Markup Language)などで記述された文書データファイル等を、要求に応じてネットワーク上のクライアントに送信することができる。一方、パーソナルコンピュータ等のクライアントコンピュータでは、ＨＴＭＬで記述されたデータ（ＨＴＭＬ文書）を表示する機能を持つＷｅｂブラウザと呼ばれるアプリケーションプログラム（単にブラウザとも呼ぶ）を用いて、Ｗｅｂサーバから受信したＨＴＭＬ文書を表示する。ブラウザは、単にＨＴＭＬ文書を表示するのみならず、ＨＴＭＬの記述に従って、画面上でデータを入力させ、それをＷｅｂサーバに返送する機能を持つのが普通である。なお、Ｗｅｂ化とは、クライアントからＵＲＬを指定してサーバとのデータ交換を行えるようにすることを指す。
【０００３】
Ｗｅｂ化された業務システムでは、クライアントコンピュータは情報の表示及び入力が可能なブラウザを搭載し、オペレータはブラウザをユーザインターフェースとして表示及び入力等の業務処理を遂行する。この際には、クライアント上のブラウザから入力された情報をＷｅｂサーバが受け取り、サーバ内で加工して再びブラウザに送信し、そこで表示を行う等の動作を必要なだけ行って結果を得るというような手順で業務が遂行される。
【０００４】
このようなブラウザ経由の業務処理において問題となるのは、通常の業務処理には欠かせないプリント処理に関する部分である。ウエブブラウザは、通常、表示した画像を印刷する機能を備えているものの、たとえば帳票等、フォーマットに従った美しいプリントを行うことはきなかった。このため、ウエブブラウザを利用したプリント方式では、用紙サイズを越えるイメージの印刷や、複数ページの印刷におけるページ区切り等の問題もあり、美しいプリントは得られない。
【０００５】
そこで、クライアントから入力された情報をウエブサーバが受け取り、サーバ内で印刷用の所定のフォームに合わせて画像を形成し、それをサーバによって印刷するか、あるいはクライアントに送信して印刷させることで、クライアントがブラウザを用いてデータを入力し、入力されたデータを帳票等の形式で印刷することのできるネットワークプリントシステムが提案されている。
【０００６】
【発明が解決しようとする課題】
しかしながら、このような業務処理の形態において問題となるのは、データを入力するクライアントは多数存在するのにも関わらず、入力されたデータを処理するサーバの能力が限られているために、入力されたデータを受けてフォーマット処理し、印刷するサーバに処理付加が集中し、サーバに過負荷がかかることで、業務処理の遅滞や停止といった自体を引き起こしかねない、ということである。このような場合、緊急の印刷が求められる文書であっても印刷が遅滞したり、逆に急ぐ必要がないにも関わらず直ちに印刷されたり、といったように、印刷の順序も要求通りにはならない。
【０００７】
また、ＨＴＴＰに従ったウエブクライアントとウエブサーバとの通信は、連続した要求／応答には対応できず、１回の要求／応答で完結する。従って、クライアントよりサーバに対してデータを送信し、プリント要求を発行しても、それに対しては１度の応答があるだけである。このため、プリント要求に対しては、サーバは、要求を受けたなら直ちに応答するか（即時復帰型）、プリント処理を終えてから応答する（完了復帰型）という２つの方法があり得る。即時復帰型では、プリントの結果がクライアントでは知りようがないし、また、完了復帰型では、プリントが終了するまでブラウザが停止してしまう。いずれの方法であっても、サーバ側でいったん開始したプリント動作を中断したり、それを再開したり、といったことは不可能であった。
【０００８】
本発明は上記従来例に鑑みてなされたもので、サーバに対して印刷要求を発行する場合、印刷要求とともに、そのスケジュールに関する情報をもサーバに送信しておくことで、サーバにおける処理要求が輻輳した場合であっても、サーバの過負荷状態を防止するネットワークプリントシステムおよびその制御方法を提供することを目的とする。
【０００９】
さらに、ウエブクライアントにおけるウエブブラウザと、ウエブサーバとの間のセッションを保持することにより、クライアントからの要求に応じて行われているサーバにおける処理をクライアントから中断させたり、あるいは再開させたりすることが可能なネットワークプリントシステムおよびその制御方法を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明は上記問題点に鑑みてなされたもので、次のような構成からなる。すなわち、
サーバ装置とクライアント装置とがHTTPで通信するネットワークプリントシステムであって、
前記クライアント装置は、
表示用の形式で記述された、可変データを表示するためのデータを前記サーバから受信して、可変データをウェブブラウザを用いて表示するとともに、表示されたデータの印刷要求を、当該印刷要求に対する印刷処理のスケジュールに関するスケジュール情報とともに前記ウェブブラウザを用いて前記サーバ装置に発行する発行手段と、
前記印刷要求を含むメッセージに前記ウェブブラウザを特定するためのセッション識別子を付加する手段と、
前記セッション識別子を含む中断要求を発行する中断要求手段とを備え、
前記サーバ装置は、
テンプレートデータを格納する格納手段と、
前記クライアント装置に送信したデータに対応するテンプレートデータを前記格納手段から読み出す読出し手段と、
前記発行手段により発行された前記印刷要求と前記スケジュール情報に従って、前記読出し手段により読み出されたテンプレートデータと、前記クライアント装置で前記ウェブブラウザを用いて表示されている可変データとを合成して印刷データを生成する生成手段と、
前記クライアント装置から前記中断要求を含むメッセージを受信した場合、該メッセージに含まれる前記ウェブブラウザを特定するためのセッション識別子と、前記ウェブブラウザに対応するジョブIDとを用いて特定された印刷要求に起因する印刷処理を中断する制御手段と、
前記生成手段により生成された印刷データをプリンタ装置に出力して印刷させる出力手段と、
前記印刷処理の中断要求を受信した後、前記制御手段により中断された前記印刷処理の再開ボタンを含むページデータを前記クライアント装置に転送する転送手段とを備え、
前記クライアント装置は、前記サーバ装置から送信されてくる前記ページデータを解析して前記印刷処理の印刷再開を指示するための指示部を表示することを特徴とする。
【００１１】
更に好ましくは、前記スケジュール情報は、優先順位を含む。
【００１２】
更に好ましくは、前記スケジュール情報は、印刷時刻を含む。
【００１５】
【発明の実施の形態】
［第１の実施の形態］
図１は、本発明を実施するネットワークプリントシステムのソフトウエアブロック図である。ここでは、サーバ、クライアントともに１台ずつ示している。
【００１６】
＜ネットワークシステムの構成例＞
図１において、クライアント１０１は、パーソナルコンピュータ等の情報処理装置である。クライアント１０１には、データ入出力部１０２、プリント出力部１０３、Ｗｅｂブラウザ１１４、画像表示部１１５等が含まれる。
【００１７】
データ入出力部１０２は、電話回線やＬＡＮ等のネットワーク１０５を介してサーバ１０６とデータを交換するもので、ＨＴＴＰより低いレイヤの処理を行う。プリント出力部１０３は、所定の形式で記述されたプリントデータをプリンタの出力形式に従ったデータ形式に変換してプリンタ１０４から出力するほか、サーバ等から受信したプリンタの出力形式のデータをスプールにいれてプリンタ１０４により印刷させる。Ｗｅｂブラウザ１１４は、データ入出力部１０２を介してサーバから受信したＨＴＭＬ文書を、画像表示部１１５で表示したり、あるいは、操作に応じてプリンタ出力部１０３を介して印刷する。さらに、表示しているデータに、画面上で何らかのデータを入力する旨の記述が含まれれば、ユーザにその記述に相当する欄への入力を行わせる。また、それをサーバに送信する旨の記述があり、その記述に従ってユーザが操作を行えば、入力されたデータをサーバに送信する。なおこれらの記述は、市販されている代表的なＷｅｂブラウザによりサポートされている。また、プリント出力部１０３は、サーバ等から受信したプリントデータを解析し、クライアントに接続されているプリンタで使用可能な形式のデータであるか判定できる。
【００１８】
クライアントとサーバとを接続するネットワーク１０５の形態としては、ＬＡＮ、インターネットあるいは無線等、Ｗｅｂ環境の通信手順に対応するものであれば、その種類は問わない。
【００１９】
サーバ１０６は、ＨＴＴＰをサポートするＷｅｂサーバであり、クライアントと同様、パーソナルコンピュータ等の情報処理装置である。サーバ１０６は、サーバ１０６がＷｅｂサーバである役割を行うためのネットワーク通信制御部１０７を含み、これを介してクライアントにデータを送信し、あるいはクライアントからデータを受信する。
【００２０】
帳票テンプレート格納部１０８は、帳票プリントを行う為の帳票テンプレート等を格納する。なお、テンプレートデータは、クライアントがサーバから読み出したＨＴＭＬ文書に対応して予め設定され、格納されているものとする。従って、サーバが帳票テンプレートに対応づけられるＨＴＭＬ文書をクライアントに送信した場合、その文書に対応する識別子をサーバは記憶しておく。また、帳票テンプレート格納部に格納されるテンプレートも、文書毎にＨＴＭＬ文書と対応する識別子を付して格納する。
【００２１】
データ格納部１０９はデータベース等のデータ格納部であり、各業務用データが格納されている。このデータは予め格納されたものであっても良いし、クライアントからブラウザを介して入力されたものであってもよい。データ処理部１１０には、各業務に従ったアプリケーションプログラムが格納されている。画像生成部１１１は、帳票のイメージデータを、フォーム及びそこにオーバーレイされるデータを組み合わせ、プリント出力部１１２で解釈可能な所定の形式で作成する。プリント出力部１１２は、画像生成部で作成されたデータをプリンタ１１３が出力できる形式に変換し、プリンタから出力させたり、あるいは生成されたデータをデータファイルとして出力することができる。これは一般にはプリンタドライバと呼ばれている。サーバにおいては、その資源の割り当てやプロセスのスケジューリングなどが、サーバＯＳなどを含むシステム管理部１１４により管理される。
【００２２】
図８はクライアント及びサーバの構成を示すハードウエア構成図である。図１の構成は、図８の構成において、メモリ１０１ｂに格納されたプログラムを、ＣＰＵ１０１ａにより実行することで実現される。また、こういったプログラムや、データ格納部１０９あるいは帳票テンプレート格納部１０８は、ハードディスク等の外部メモリ１０１ｃに格納される。外部メモリ１０１ｃは、フロッピディスクやＣＤＲＯＭ等の取り外し可能な記憶媒体を用いるものであっても良い。ディスプレイ１１７には、画像が表示され、Ｉ／Ｏインターフェース１０１ｄを介してネットワーク１０５やプリンタ１０４に接続される。また、キーボードやポインティングデバイス１０１ｅにより、オペレータは必要な入力を行う。
【００２３】
＜帳票の印刷処理＞
次に、本発明の特徴である、ブラウザからのプリント指示及びそれに対するサーバの処理について述べる。
【００２４】
通常クライアントのブラウザ１１４とサーバのデータ処理部１１０の間では、ブラウザからのデータの受付、解析、また場合によっては、受付データに応じてデータ格納部１０９からのデータ検索、結果のブラウザへの返信など処理が行われる。この時、ＨＴＭＬ文書に、ブラウザからボタンによる入力を行わせてその結果をサーバに送信するよう記述しておけば、ブラウザ１１４はボタンを表示し、ブラウザのユーザがボタンを押す等の操作をした時に、サーバへのデータの送信を行う。サーバでは、クライアントに送信したＨＴＭＬ文書に基づいて受信データを解析し、必要があればブラウザへ応答する。
【００２５】
図２は、ブラウザにより表示された業務処理に係るＨＴＭＬ文書の一例である。図２において、ウインドウ２０１は、ＰＣなどのモニタに表示されるブラウザのウインドウである。タイトルエリア２０２には表示される文書に付されたタイトルが表示される。エリア２０３および２０４にはブラウザが持つコマンドが表示されている。ブラウザに表示されている内容を印刷する為のコマンドも通常この位置にある。エリア２０５は、接続するＷｅｂサーバのアドレスや文書のＵＲＬ等を入出力するＵＲＬフィールドである。ＨＴＭＬ文書はここで入力されるＵＲＬにより指定される。
【００２６】
選択欄２０６および２０７は、クライアントユーザが選択する為のフィールドである。ボタン２０８は表示ボタンである。帳票イメージ２０９は、文書アドレス２０５に応じたＨＴＭＬ文書がサーバから読み出されて表示されたものである。また、この文書には、印刷ボタン２１０と、処理優先度指示ボタン２１１が設けられている。
【００２７】
クライアントからサーバの文書を読み出す場合、まずクライアントでブラウザプログラムを起動する。このブラウザ自体は市販品でよい。ブラウザが起動されると、タイトルエリア２０２〜ＵＲＬフィールド２０５迄が表示され、その他の欄は空白あるいは予め設定されたＵＲＬで指定される文書が表示される。ここで、図２のように"http://202.228.102"が指定されると、欄２０６〜２１１を含む文書がサーバから読み出されて表示される。
【００２８】
この画面上で選択欄２０６，２０７から所望の値を選択し、表示ボタン２０８をユーザが押せば、読み出したいデータが確定し、選択された個人及び表種別がサーバに送信される。サーバでは、指定されたＵＲＬにおいて、選択された個人名及び表種類をキーとしてデータベースを検索し、データを獲得する。データには、そのデータを表示すべき形式を指定するための形式識別子が含まれている。サーバではこの識別子に対応する形式で検索したデータを表示するためのＨＴＭＬ文書を作成し、クライアントに送信する。ここで、形式識別子に応じたＨＴＭＬ文書は、予め可変データを除いて残りの部分を記述しておき、可変データの部分に後述するデータのインデックスを、インデックスとして認識できるように挿入しておく。サーバからクライアントに送信する文書は、この形式の文書のインデックスの部分に、検索されたデータをインデックス毎に対応づけて挿入して作成される。
【００２９】
クライアントでは、受信したデータを図２のように表示する。クライアントのユーザがこれらを表示した状態で優先順位指定ボタン２１１として用意された「低い」「通常」「なるべく速く」「緊急」のうちから、いずれかのラジオボタンを指定することで印刷の優先順位を指定し、その後印刷ボタン２１０を押せば、次のような手順で文書がサーバから印刷される。これら優先順位は、複数のクライアントからの印刷要求をサーバが受信しており、処理の競合が発生した場合に、処理に順序を付けることで、処理を円滑化するためのものである。
【００３０】
中止ボタン２１２は印刷を中止させるためのボタンであり、中断ボタン２１３は印刷をいったん中断させるためのボタンである。中断された印刷は、中断ボタンを再度押したり、印刷ボタンを押すことで再開される。
【００３１】
＜印刷を行う際の手順＞
次に、図２の状態で印刷ボタン２１０が押された場合の動作を図３に示す。印刷も、ＨＴＭＬ文書と同様に、形式識別子に対応したテンプレートにデータを挿入して印刷すべき文書を作成する。印刷ボタン２１０が押されると、印刷ボタン２１０が押されたことを示す情報がサーバに送信される。サーバでは、印刷を要求してきたクライアントに送信してあるデータに付された形式識別子を基に、帳票テンプレート格納部１０８に格納されている図形データを各帳票のテンプレートとして検索する。各帳票テンプレートは、形式識別子から検索できるように格納されている。
【００３２】
図９は、印刷される帳票テンプレートの一例である。図９において、帳票テンプレートである図形データを説明する。図形データは固定データと可変データに分類される。帳票タイトルの文字列３０１、枠および日にち等を示す数字３０２、文字列及び枠３０３は固定データである。また、エリア３０４及び３０５のｎｘｘ及びｓｘｘで示される文字列には、データベース等より検索された値がはめ込まれる。一方、図１０は、図９の図形データにはめ込まれるべき可変データのテーブルである。図１０において、列４０１は、図９の可変データｓ１，ｎ１，ｎ２...ｎ５１を示すインデックスである。列４０２は、表示する文字のサイズを示している。列４０３は、実際の数列あるいは文字列である。図９の帳票イメージと図１０のデータを、インデックスを対応づけてマージすることにより、帳票の図形データが作成される。
【００３３】
この手順を、図３のフローチャートを用いて示す。
【００３４】
印刷ボタンがブラウザにより表示されている状況では、ブラウザでも帳票を形どったイメージは表示されており、表示するためのデータは、サーバのデータ格納部１０９から検索され、サーバのメモリ内に存在しているものとする。
【００３５】
図３（ａ），（ｂ）は、印刷ボタン２１１が押されたことを示す情報をサーバが受信したことにより、サーバにおいて実行される手順である。
【００３６】
まず、クライアントにおいて優先度を指定して印刷ボタン２１０が押されると、クライアントの識別子などと、選択された優先度と、印刷ボタン２１０が押された旨がサーバに通知される。このとき、ウエブブラウザは、サーバに対して、自分自身の一意性を通知してサーバに対するアクセスの連続性を保持する。そのために、たとえば、サーバのアドレスを示す文字列（ＵＲＬ）に一意的な数字を埋め込むなどする。また、サーバにおいては複数のアプリケーションプロセスが稼働しており、クライアントからのメッセージに対してそれを処理するアプリケーションを特定するために、アプリケーションを特定するための文字列（アプリケーション識別子）もＵＲＬに組み込む。これらの、ＵＲＬに付加される、ブラウザを特定するための数字及び文字列をここではセッション番号と呼ぶ。クライアントのブラウザは、たとえばひとつの印刷要求については、その完了を受けるまで、セッション番号をサーバに通知しながらその印刷要求にかかるデータや応答を交換できる。
【００３７】
サーバでは、ステップＳ２２０１でボタンが押されたことが優先度とともに通知されると、ステップＳ２２０２において、サーバ内では、印刷すべき帳票のテンプレートの抽出や、テンプレートに合成するべき入力データのデータベースからの抽出、抽出されたテンプレートとデータとのマージなど、印刷のための一連の処理を記したコマンドを生成して優先度とともに処理プールへ格納する。使用される帳票テンプレートは、それに対応する形式識別子がすでにクライアントに送信しているＨＴＭＬ文書データに対応づけて記憶されているため、直ちに特定可能である。また、テンプレートに組み込まれるデータの組もまたクライアントに対応づけて格納されているために、印刷ボタンを通知したクライアントが判別できれば特定可能である。
【００３８】
次に、サーバは図３（ａ）の処理と平行して図３（ｂ）を実行する。図３（ｂ）によって、プールされたコマンドが読み出されて実行される。ステップＳ２２０３では、処理プールから、最大優先度の付されたコマンドを読み出し、読み出したコマンドをステップＳ２２０５において実行する。
【００３９】
図４に図３のステップＳ２２０４の処理の詳細を示す。まず、ステップＳ２７０２において用いられる帳票テンプレートをその形式識別子等から認識する。
【００４０】
ステップＳ２７０３では、帳票テンプレート格納部１０８から検索された帳票テンプレート内に組み込まれるべき可変データの欄の位置を検知する。例えば、可変データの位置を、固定データを記述した部分とは別個に、データごとにインデックスに対応つけて記述してあれば、可変データ部分に含まれるインデックスによって簡単に各可変データの位置を認識できる。そして、図１０に示したデータから、インデックス及びサイズの部分の抽出をする。このデータはクライアントから表示要求が出された時点で読み出され、サーバに保存されている。
【００４１】
次に、ステップＳ２７０４でインデックスデータを作成する。すなわち、すでに保存されているデータを、そのインデックスに応じて、ステップＳ２７０３で抽出した可変データの位置に合わせるようにして記述する。こうして、可変データ部分を記述したインデックスデータができる。
【００４２】
次に、ステップＳ２７０５において、画像生成部１１１により、ステップＳ２７０２で得られた帳票テンプレートの固定データ部分と、ステップＳ２７０４で作成したインデックスデータとをマージさせる。ステップＳ２７０６では、画像生成部１１１により、ステップＳ５０５でマージされたデータから、実際の画像形式、すなわちプリント出力部１１２にて解釈可能な形式で記述されたデータを作成させる。ステップＳ２７０７では、ステップＳ２７０６で作成したデータを、プリンタで出力可能な例えばページ記述言語のプリントイメージに変換し、外部メモリ１０１ｃ等に設けられたプリントスプールに出力する。こうして、帳票テンプレートとデータとが合成されてプリント出力される。
【００４３】
プリント出力においては、プリンタに対して印刷コマンドを発行するが、プリント出力部１１２により、プリントジョブのＩＤ、プリントドキュメント名、プリントジョブのオーナなどを含むプリント情報が、ステップＳ２７０８において得られる。なお、プリント情報は、サーバ全体を管理するシステム管理部１１４を介して得られる。このプリント情報は、印刷処理の元となったアプリケーションに対応して保持される。
【００４４】
ステップＳ２７０８においてプリント情報を受信すると、ステップＳ２７０９で新たなページを作成して、ステップＳ２７１０で制御をウエブブラウザに移す。このあと、新たなページの表示や入力が行われる。
【００４５】
このようにして、サーバはいったん印刷要求をプールし、プールされた印刷要求を優先順位に従って取り出し、処理を行う。このため、多くの印刷要求がサーバに集中しても、指定された順序に応じて印刷されるために、急ぎの文書やそうでない文書を、望ましい順序で印刷できる。
【００４６】
＜中断処理＞
次に、中断ボタン２１３が押された際の処理について図５を参照して説明する。中断ボタンが押された場合には、クライアントは、セッション番号を加えたＵＲＬをもってサーバにアクセスし、印刷が中断された旨を通知する。
【００４７】
中断要求を受信したサーバは、図５の手順で中断処理を行う。
【００４８】
まず、サーバは、ステップＳ２９０２において、ＵＲＬに付加されたセッション番号に含まれているアプリケーション識別子から、その要求を処理すべきアプリケーションを特定する。さらに、ウエブシステムでは、複数の不特定のクライアントから同時アクセスがあり、同一のアプリケーションが同時に複数ユーザに使用されているケースが多い。そこで、ステップＳ２９０３では、セッション番号を用いて、ステップＳ２９０２で特定されたアプリケーションが、中断要求を発行したクライアントからの最後のアクセスまでのデータを保持しているアプリケーションであるか判定する。セッション番号が一致した場合には、そのアプリケーションプロセスが、中断要求を処理すべきプロセスであるものと判定してステップＳ２９０４に進む。
【００４９】
ステップＳ２９０４においては、特定されたアプリケーションプロセスに対応する、図４のステップＳ２７０８で得られたプリント情報に含まれるプリントジョブＩＤを得て、ステップＳ２９０５では得られたプリントジョブＩＤ用いて、プリント中断のコマンドをシステム管理部１１４に対して発行する。
【００５０】
ステップＳ２９０６においては、このプリント中断コマンドがシステム管理部１１４に正常に受け付けられたかを判定する。受け付けられた場合には、ステップＳ２９０７で、プリント出力部１１２においてプリントは中断され、プリントジョブ情報にも中断された旨が登録されるる。
【００５１】
一方、正常に受け付けられない場合には、プリントジョブは既に終了しているので、中断はされない。
【００５２】
最後に、ステップＳ２９０８において新規ページが作成され、クライアントに送られて表示される。この新規ページは、内容的にはそれまでに表示されているページとほとんど変わらないが、中断ボタンや中止ボタンは選択できないようになっている。また、図２の表示に加えて、再開ボタンが表示され、再開ボタンが選択可能となっている。また、プリントが既に終了している場合には、「印刷は既に終了しています」といった主旨のメッセージが印刷ボタン付近に表示される。この場合、「再開」ボタンは表示されない。
【００５３】
再開ボタンがクライアントにおいて押された場合には、その旨がサーバに送られて中断されている印刷が再開される。再開すべきプリントジョブは、中断ボタンが押された場合と同様の方法で特定され、中断コマンドの代わりに再開コマンドがシステム管理部１１４に送信される。
【００５４】
また、「中断」ではなく「中止」ボタンが押された場合には、ステップＳ２９０５において中断コマンドの代わりに中止コマンドが発行される。またこの場合には、ステップＳ２９０８で作成される新規ページには「再開」ボタンは含まれない。
【００５５】
以上のようにして、セッション番号をＵＲＬに付加することで、ＨＴＴＰを用いたウエブシステムにおいても、クライアントとサーバとの間のメッセージ交換を、要求／応答の単発のメッセージ交換としてではなく、一連のセッションとして管理することができる。このために、既に発行されているプリント要求に対しても、その中断や中止、あるいは中断されたプリントジョブの再開を、クライアントからサーバに要求し、サーバでは要求対象のプリントジョブをセッション番号から特定することが可能となった。
【００５６】
［第２の実施の形態］
第２の実施形態では、印刷要求に処理優先順位を付加する代わりに、印刷すべき時間の指定を付加して、印刷要求をクライアントからサーバに対して発行する。本実施形態は、図１及び図８乃至図１０の構成についてはほぼ第１の実施形態と同様であるが、図１において、優先度スケジュール部２０１４に代わり、印刷時間スケジュール部が備えられている。
【００５７】
図６は、本実施形態において、ブラウザにより表示された業務処理に係るＨＴＭＬ文書の一例である。図６において、ウインドウ２０１は、ＰＣなどのモニタに表示されるブラウザのウインドウである。図２と同参照番号が付された項目については、図２と共通の内容であるためにその説明を省略する。
【００５８】
クライアントのユーザが図６の画面を表示した状態で印刷時間指定ボタン２４１１として用意された「指定なし」「６時間後」「１２時間後」「時刻指定」のうちから、いずれかのラジオボタンを指定することで印刷時刻を指定し、その後印刷ボタン２１０を押せば、次のような手順で文書がサーバから印刷される。これら優先順位は、複数のクライアントからの印刷要求をサーバが受信しており、処理の競合が発生した場合に、処理に順序を付けることで、処理を円滑化するためのものである。なお、「指定なし」が選択された場合には、直ちに印刷される。また、「時刻指定」が選択された場合には、別途時刻欄２４１２において印刷時刻を指定する。
【００５９】
中止ボタン２１２は印刷を中止させるためのボタンであり、中断ボタン２１３は印刷をいったん中断させるためのボタンである。中断された印刷は、中断ボタンを再度押したり、印刷ボタンを押すことで再開される。このように、クライアントでは、受信したデータを図６のように表示する。
【００６０】
＜印刷を行う際の手順＞
図７は、図６の印刷ボタン２１１が押された場合のサーバによる処理手順である。
【００６１】
まず、ステップＳ２５０１でボタンが押されたことがサーバに通知されると、スケジュール設定がされているか、すなわち「指定なし」以外のラジオボタンが選択されているかがステップＳ２５０２で判定される。スケジュール設定がされていなければ、ステップＳ２５０７に進んで印刷すべき画像を生成し、ステップＳ２５０８でそれをプリント出力するという通常の印刷動作が行われる。
【００６２】
スケジュールされている場合には、ステップＳ２５０３で、第１実施形態の図３（ａ）のステップＳ２２０２において作成したと同様のコマンドを作成していったん処理を中断し、ステップＳ２５０４において、スリープモードに入る。
【００６３】
ステップＳ２５０５では、サーバ内の時刻スケジュール機能を利用し、ブラウザにおいて設定された時刻に達したか否かを判定する。設定時刻に達した場合には、ステップＳ２５０６において図４に示したと同様の手順でコマンドを実行し、スケジュールされた印刷ジョブをスケジュールされた時刻に実行する。
【００６４】
このようにして、クライアントにおいてプリント要求を実行する時刻等のスケジュールを指定し、サーバにおいてはそのスケジュールに従ってプリントジョブを実行することができる。これにより、サーバにおける処理要求が輻輳した場合であっても、プリント処理が実行される時刻を分散することができるために、サーバの過負荷状態を防止することができる。
【００６５】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００６６】
また、本発明の目的は、前述した実施形態におけるサーバの機能を実現するための、図３乃至図５あるいは図７のプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによってもＷｅｂサーバの機能を実現することができる。
【００６７】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６８】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００６９】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７０】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７１】
【発明の効果】
以上説明した様に、本発明によれば、ウエブクライアントにおけるウエブブラウザと、ウエブサーバとの間のセッションを保持することにより、クライアントからの要求に応じて行われているサーバにおける処理をクライアントから中断させたり、あるいは再開させたりすることが可能となる。
【図面の簡単な説明】
【図１】ネットワークプリントシステムのブロック図である。
【図２】第１実施形態のクライアントのウエブブラウザの表示画面例を示す図である。
【図３】第１実施形態におけるサーバによる帳票印刷の手順を示す流れ図である。
【図４】第１実施形態におけるサーバによる帳票印刷の手順を示す流れ図である。
【図５】サーバによる印刷中断要求の処理手順を示す図である。
【図６】第２実施形態のクライアントのウエブブラウザの表示画面例を示す図である。
【図７】第２実施形態におけるサーバによる帳票印刷の手順を示す流れ図である。
【図８】クライアント及びサーバの構成を示すブロック図である。
【図９】印刷される帳票のテンプレートとなる図形データの一例を示す図である。
【図１０】印刷される帳票と合成されるデータの一例を示す図である。
【図１】
0003745207.tif 000002
【図２】
0003745207.tif 000003
【図３】
0003745207.tif 000004
【図４】
0003745207.tif 000005
【図５】
0003745207.tif 000006
【図６】
0003745207.tif 000007
【図７】
0003745207.tif 000008
【図８】
0003745207.tif 000009
【図９】
0003745207.tif 000010
【図１０】
0003745207.tif 000011