(57)【要約】【課題】各クライアントコンピュータでのプリンタ設定を必要とせずに、サーバコンピュータで印刷ジョブの一元管理を可能とする印刷管理システム、印刷管理システム用プログラム及び記憶媒体を提供する。【解決手段】サーバコンピュータが、クライアントコンピュータとの間で通信を行い、クライアントコンピュータによる印刷ジョブの実行の停止（サーバ上のポートの状態の一時停止）又はクライアントコンピュータによる印刷ジョブの実行時間を設定することにより、クライアントコンピュータによる印刷ジョブの実行を制御する。【選択図】　　　図９
2004005258.tif 000002
【特許請求の範囲】
【請求項１】
サーバコンピュータと、複数のクライアントコンピュータと、プリンタ装置とで構成される印刷管理システムにおいて、
前記サーバコンピュータが、前記クライアントコンピュータとの間で通信を行う通信手段と、前記クライアントコンピュータによる印刷ジョブの実行を停止する停止手段と、前記クライアントコンピュータによる印刷ジョブの実行時間を設定する設定手段と、前記停止手段及び前記設定手段における設定に従って前記クライアントコンピュータによる印刷ジョブの実行を制御する制御手段とを備えることを特徴とする印刷管理システム。
【請求項２】
前記サーバコンピュータはデータを転送するための複数のポートを備え、前記クライアントコンピュータの各々はデータを転送するためのポートを備え、
前記サーバコンピュータは、前記サーバコンピュータが備えるポートと前記クライアントコンピュータの各々が備えるポートとを関連づけて統一的に管理する管理手段を備えることを特徴とする請求項１記載の印刷管理システム。
【請求項３】
前記設定手段は、前記サーバコンピュータが備える複数のポートのそれぞれに対して、印刷可能な時間を設定できることを特徴とする請求項２記載の印刷管理システム。
【請求項４】
サーバコンピュータと、複数のクライアントコンピュータと、プリンタ装置とで構成される印刷管理システムに使用される印刷管理システム用プログラムにおいて、
前記クライアントコンピュータとの間で通信を行う通信ステップと、前記クライアントコンピュータによる印刷ジョブの実行を停止する停止ステップと、前記クライアントコンピュータによる印刷ジョブの実行時間を設定する設定ステップと、前記停止ステップ及び前記設定ステップにおける設定に従って前記クライアントコンピュータによる印刷ジョブの実行を制御する制御ステップとを前記サーバコンピュータに実行させることを特徴とする印刷管理システム用プログラム。
【請求項５】
サーバコンピュータと、複数のクライアントコンピュータと、プリンタ装置とで構成される印刷管理システムにおける前記サーバコンピュータで使用される印刷管理システム用プログラムを格納した、前記サーバコンピュータにより読み取り可能な記録媒体において、
前記クライアントコンピュータとの間で通信を行う通信ステップと、前記クライアントコンピュータによる印刷ジョブの実行を停止する停止ステップと、前記クライアントコンピュータによる印刷ジョブの実行時間を設定する設定ステップと、前記停止ステップ及び前記設定ステップにおける設定に従って前記クライアントコンピュータによる印刷ジョブの実行を制御する制御ステップとを前記サーバコンピュータに実行させることを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、１対Ｎのサーバクライアントコンピュータとプリンタ装置とで構成される印刷システムにおける印刷管理システム、印刷管理システム用プログラム及び記憶媒体に関する。
【０００２】
【従来の技術】
従来、１対Ｎのサーバクライアントコンピュータとプリンタ装置とで構成される印刷システムにおいては、印刷ジョブが処理されるタイミング、即ち印刷ジョブがプリンタ装置に送信され、プリンタ装置で実行されるタイミングはクライアント側で行われるプリンタ設定、例えば一時停止の設定や印刷可能時刻の設定に基づいて決定していた。
【０００３】
【発明が解決しようとする課題】
しかしながら上記従来の印刷システムでは、ジョブの一時停止や印刷可能時刻など、印刷ジョブを処理するタイミングはクライアントで設定する必要があり、サーバ側がクライアントの設定を管理することができないという不具合があった。
【０００４】
本発明は、かかる点に鑑みてなされたものであり、各クライアントコンピュータでのプリンタ設定を必要とせずに、サーバコンピュータで印刷ジョブの一元管理を可能とする印刷管理システム、印刷管理システム用プログラム及び記憶媒体を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の印刷管理システムは、サーバコンピュータと、複数のクライアントコンピュータと、プリンタ装置とで構成される印刷管理システムにおいて、前記サーバコンピュータが、前記クライアントコンピュータとの間で通信を行う通信手段と、前記クライアントコンピュータによる印刷ジョブの実行を停止する停止手段と、前記クライアントコンピュータによる印刷ジョブの実行時間を設定する設定手段と、前記停止手段及び前記設定手段における設定に従って前記クライアントコンピュータによる印刷ジョブの実行を制御する制御手段とを備えることを特徴とする。
【０００６】
請求項２記載の印刷管理システムは、請求項１記載の印刷管理システムにおいて、前記サーバコンピュータはデータを転送するための複数のポートを備え、前記クライアントコンピュータの各々はデータを転送するためのポートを備え、前記サーバコンピュータは、前記サーバコンピュータが備えるポートと前記クライアントコンピュータの各々が備えるポートとを関連づけて統一的に管理する管理手段を備えることを特徴とする。
【０００７】
請求項３記載の印刷管理システムは、請求項２記載の印刷管理システムにおいて、前記設定手段は、前記サーバコンピュータが備える複数のポートのそれぞれに対して、印刷可能な時間を設定できることを特徴とする。
【０００８】
請求項４記載の印刷管理システム用プログラムは、サーバコンピュータと、複数のクライアントコンピュータと、プリンタ装置とで構成される印刷管理システムに使用される印刷管理システム用プログラムにおいて、前記クライアントコンピュータとの間で通信を行う通信ステップと、前記クライアントコンピュータによる印刷ジョブの実行を停止する停止ステップと、前記クライアントコンピュータによる印刷ジョブの実行時間を設定する設定ステップと、前記停止ステップ及び前記設定ステップにおける設定に従って前記クライアントコンピュータによる印刷ジョブの実行を制御する制御ステップとを前記サーバコンピュータに実行させることを特徴とする。
【０００９】
請求項５記載の記録媒体は、サーバコンピュータと、複数のクライアントコンピュータと、プリンタ装置とで構成される印刷管理システムにおける前記サーバコンピュータで使用される印刷管理システム用プログラムを格納した、前記サーバコンピュータにより読み取り可能な記録媒体において、前記クライアントコンピュータとの間で通信を行う通信ステップと、前記クライアントコンピュータによる印刷ジョブの実行を停止する停止ステップと、前記クライアントコンピュータによる印刷ジョブの実行時間を設定する設定ステップと、前記停止ステップ及び前記設定ステップにおける設定に従って前記クライアントコンピュータによる印刷ジョブの実行を制御する制御ステップとを前記サーバコンピュータに実行させることを特徴とする。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
【００１１】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に係る印刷管理システムの構成を示すブロック図である。本システムにおけるクライアントコンピュータは、１台又は複数台接続されていることを仮定している。
【００１２】
図１において、符号１０２〜１０４はクライアントコンピュータ（クライアント）としての情報処理装置であり、１０ＳＡＳＥ−Ｔ等のネットワークケーブルによって、ネットワーク１０６に接続されている。これらのクライアント１０２〜１０４はアプリケーションプログラム等の各種のプログラムを実行でき、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。尚、プリンタドライバは複数のプリンタドライバをサポートするものとする。また、本印刷管理システムで使用するプリンタは、電子写真方式を採用したレーザービームプリンタやインクジェット方式を採用したインクジェットプリンタや熱転写方式を利用したプリンタ等であってもよく、これら以外のプリンタであってもよい。
【００１３】
符号１０１は本実施の形態に係るサーバ（以下、プリントサーバという）としての情報処理装置であり、１０ＳＡＳＥ−Ｔ等のネットワークケーブルによって、ネットワーク１０６に接続され、ネットワークで使用されるファイルの蓄積やネットワーク１０６の使用状態の監視を行う。プリントサーバ１０１は、ネットワーク１０６に接続されている複数のプリンタを管理している。
【００１４】
クライアント１０２〜１０４及びプリントサーバ１０１は、一般的な情報処理装置であり、それぞれ異なる制御を行う印刷制御プログラムが実行可能となるように格納されている。
【００１５】
また、プリントサーバ１０１は、クライアント１０２〜１０４の機能を同時に併せ持つこともできる。
【００１６】
本実施の形態に係るプリントサーバ１０１は、さらにクライアントコンピュータ１０２〜１０４から印刷要求が出された印字データを含む印刷ジョブを格納して印刷する機能、クライアントコンピュータ１０２〜１０４から印字データを含まないジョブ情報のみを受け取り、クライアントコンピュータ１０２〜１０４の印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知する機能、又はネットワークプリンタ１０５のステータスや印刷ジョブの各種情報を取得し、クライアントコンピュータ１０２〜１０４に通知する機能を備えている。
【００１７】
また、符号１０５は印刷制御装置であるネットワークプリンタであり、不図示のネットワークインタフェースを介してネットワーク１０６と接続されており、クライアントコンピュータ１０２〜１０４から送信される印字データを含む印刷ジョブを解析して１ページずつドットイメージに変換し、１ページ毎に印刷する。符号１０６はネットワークであり、クライントコンピュータ１０２〜１０４と、プリントサーバ１０１と、ネットワークプリンタ１０５とをそれぞれ接続している。
【００１８】
図２は、図１におけるクライントコンピュータ１０２〜１０４の構成を示すブロック図であり、プリントサーバ１０１も同様又は同等のハードウエア構成を有する。
【００１９】
図２において、符号２００は制御手段であるＣＰＵであり、ハードディスク（ＨＤ）２０５に格納されているアプリケーションプログラム、プリンタドライバプログラム及びオペレーションシステム（ＯＳ）や本発明に係るネットワークプリンタ制御プログラム等を実行し、ＲＡＭ２０２にプログラムの実行に必要な情報やファイル等を一時的に格納する制御を行う。
【００２０】
符号２０１は、記憶手段であるＲＯＭであり、その内部には、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、及びテンプレート用データ等の各種データを記憶する。符号２０２は、一時記憶手段であるＲＡＭであり、ＣＰＵ２００の主メモリ及びワークエリア等として機能する。
【００２１】
符号２０３は、記憶媒体読み込み手段としてのフレキシブルディスク（ＦＤ）ドライブであり、後述する図５に示すようにＦＤドライブ２０３を通じて記憶媒体としてのＦＤ２０４に記憶されたプログラム等を本コンピュータシステムにロードすることができる。なお、記憶媒体は、ＦＤに限らず、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＰＣカード、ＤＶＤ、ＩＣメモリカード、ＭＯ又はメモリスティック等であってもよい。
【００２２】
符号２０４は記憶媒体であるフレキシブルディスク（ＦＤ）であり、コンピュータが読み取り可能なプログラムを格納する記憶媒体である。
【００２３】
符号２０５は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク（ＨＤ）であり、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、ネットワークプリンタ制御プログラム及び関連プログラム等を格納している。さらにスプール手段であるスプーラはここに確保される。スプール手段は、クライアント１０２〜１０４ではクライアントスプーラのことであり、プリントサーバ１０１ではサーバスプーラのことである。また、プリントサーバ１０１では、クライアント１０２〜１０４から受けたジョブ情報をＨＤ２０５に格納し、生成された順序制御を行うためのテーブルもＨＤ２０５に格納する。
【００２４】
符号２０６は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータ１０２〜１０４に対して、また、オペレータや管理者がプリントサーバ１０１に対して、デバイスの制御コマンドの命令等を入力指示する。
【００２５】
符号２０７は表示手段であるディスプレイであり、キーボード２０６から入力されたコマンドやプリンタの状態等を表示する。
【００２６】
符号２０８はシステムバスであり、クライアント１０２〜１０４やプリントサーバ１０１であるコンピュータ内のデータの流れを司るものである。
【００２７】
符号２０９は入出力手段であるインタフェースであり、該インタフェース２０９を介してクライアント１０２〜１０４及びプリントサーバ１０１は外部装置とのデータの通信を行う。
【００２８】
図３は、図２に示したＲＡＭ２０２のメモリマップの一例を示す図であり、ＦＤ２０４からロードされる上記ネットワークプリンタ制御プログラムが、ＲＡＭ２０２にロードされ実行可能となった状態のメモリマップである。
【００２９】
本実施の形態では、ＦＤ２０４からネットワークプリンタ制御プログラム及び関連データを直接ＲＡＭ２０２にロードして実行させる例を示すが、これ以外にも、ＦＤ２０４からネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがインストールされているＨＤ２０５からＲＡＭ２０２にロードするようにしてもよい。
【００３０】
また、本ネットワークプリンタ制御プログラムを記憶する媒体は、ＦＤ以外にＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＰＣカード、ＤＶＤ又はＩＣメモリカード等であってもよい。さらに、本ネットワークプリンタ制御プログラムをＲＯＭ２０１に記憶しておき、これをメモリマップの一部となすように構成し、直接ＣＰＵ２００で実行することも可能である。
【００３１】
また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
【００３２】
また、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムと呼ぶこともある。印刷制御プログラムは、クライアント１０２〜１０４において印刷ジョブの印刷先の変更を指示したり、印刷順序を変更する指示をするための制御を行うプログラムを含み、また、プリントサーバ１０１において、印刷ジョブの順序制御を行うプログラムや、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。また、このような制御を行う本発明の印刷制御プログラムは、クライアント１０２〜１０４にインストールされるモジュールと、プリントサーバ１０１にインストールされるモジュールとを別々に分けてもよいし、ひとつの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、又はプリントサーバ用として機能するようにしてもよい。さらに、一台のコンピュータに、クライアント用の機能を持つモジュールと、プリントサーバ用として機能するモジュールとをともにインストールし、同時に又は時分割で擬似的に平行動作させる構成も可能である。
【００３３】
図３において、符号３０１は基本Ｉ／Ｏプログラムが格納される領域である。クライント１０２〜１０４又はプリントサーバ１０１の電源がＯＮされたときには、ＨＤ２０５からＯＳがＲＡＭ２０２に読み込まれるが、該領域は、このＯＳの動作を開始させるＩＰＬ（イニシャルプログラムローデイング）機能等を有しているプログラムが入っている領域である。
【００３４】
符号３０２はオペレーティングシステム（ＯＳ）を格納する領域であり、符号３０３はネットワークプリンタ制御プログラムを格納する領域である。符号３０４は、関連データを格納する領域であり、符号３０５はＣＰＵ２００が本プリンタ制御プログラムを実行するためのワークエリアである。
【００３５】
図４は、図２に示したＦＤ２０４のメモリマップの一例を示す図である。
【００３６】
図４において、符号４００は前記ＦＤ２０４のデータ内容であり、符号４０１はデータの情報を示すボリューム情報であり、符号４０２はディレクトリ情報であり、符号４０３は印刷制御プログラムであるネットワークプリンタ制御プログラムであり、符号４０４はその関連データである。ネットワークプリンタ制御プログラム４０３は、後述する図９のフローチャートに基づいてプログラム化したものであり、本実施の形態では、クライアント１０２〜１０４及びプリントサーバ１０１はこのフローチャートを実行できる構成を備えている。
【００３７】
図５は、図２に示したＦＤドライブ２０３と挿入されるＦＤ２０４との関係を示す図であり、図２と同一のものには同一の符号を付してある。
【００３８】
図５において、ＦＤ２０４には、本実施の形態で使用するネットワークプリンタ制御プログラム及び関連データが格納されている。
【００３９】
次に、上記ネットワークプリンタ１０５を複数台使用して、分散、同報又は代行といった印刷処理を行う印刷ジョブ制御システムについて説明する。
【００４０】
なお、本実施の形態では、複数のプリンタデバイスの夫々に対応する個々のプリンタドライバに対して一元的に印刷設定を指示可能で、且つ、デ−スプーラ（Ｄｅ−ｓｐｏｏｌｅｒ（これについては後述する））が各プリンタドライバに描画命令を通知するための汎用印刷ファイルを生成する際の基データ（汎用ドキュメントデータ）を生成するドライバをグループプリンタドライバと呼ぶ。また、プリンタデバイスに依存した個々のプリンタドライバをメンバプリンタドライバと呼ぶ。
【００４１】
図６は本システムのクライアントサーバモデルにおいてＭｉｃｒｏＳｏｆｔＷｏｒｄ（登録商標）などの一般的なアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した図である。
【００４２】
図６において、６００はクライアントマシンで、印刷ジョブ制御システムのクライアントモジュールが動作するマシンを指す。
【００４３】
通常、印刷の指示がされるとアプリケーションプログラムはＯＳのグラフィック機能を介して一連の描画命令を生成し、プリンタドライバを経てＷｉｎｄｏｗｓ（登録商標）Ｓｐｏｏｌｅｒに渡す。Ｗｉｎｄｏｗｓ（登録商標）Ｓｐｏｏｌｅｒは、ユーザが選択したポートモニタに印刷ジョブを渡してプリンタデバイスに送信させる手順をとる。
【００４４】
本実施の形態では、ユーザはあらかじめ印刷ジョブ制御システム用のポートモニタ６２１（以下「ジョブ制御ポートモニタ」という）を指定して印刷を指示する。アプリケーションプログラム６０１は一連のＯＳを介して描画命令を生成する。
【００４５】
描画命令を受け取ったグループプリンタドライバ６０３では、汎用印刷ファイルを生成するための汎用ドキュメントデータを生成し、プリンタデバイスへ印刷ジョブを送信するポートモニタではなく、ジョブ制御ポートモニタ６２１に印刷ジョブとして送信する。
【００４６】
ジョブ制御ポートモニタ６２１は、印刷ジョブをプリンタデバイス６５０に送信するのではなく、印刷ジョブ制御システム用プリントサービス６２２（以下、ジョブ制御プリントサービスという）に送信する。ジョブ制御プリントサービス６２２は、ジョブ制御サーバ６３０の管理するジョブ／デバイスの状態を管理する機能を備える。更に、デバイスとクライアントコンピュータがピアツーピア接続環境で互いに動作するような場合には、ジョブ制御プリントサービス６２２はデバイスから通知されるデバイス状態や印刷ジョブの状態などの情報を管理する機能やデバイスに対して所定の命令をする機能も備える。これは、複数のプリンタデバイス６５０のデバイス情報や印刷ジョブ情報を管理する機能に相当する。
【００４７】
印刷ジョブ制御システム用プリントマネージャ６２３（以下、ジョブ制御プリントマネージャという）は、ユーザがジョブ制御プリントサービス６２２内部で印刷ジョブがどのような状態にあるかを調べたり、印刷ジョブを操作するためのユーザインタフェース（ＵＩ）を提供するプログラムである。
【００４８】
ジョブ制御プリントマネージャ６２３はジョブ制御プリントサービス６２２のソフトウェアのインタフェース（ＡＰＩ）を介して、ジョブ制御プリントサービス６２２と情報の送受信を実行し、主に、ジョブ制御プリントサービス６２２が管理する外部のプリンタデバイスの状態情報をイベントとして取得する機能を備える。イベントの通知の種別としては、トナー残量が少なくなった警告、クライアントとデバイスとの通信障害、メモリ不足及び排紙トレー満載等のエラー／警告情報の通知や、エラー状態から正常状態に復帰した正常情報の通知等がある。
【００４９】
印刷ジョブ制御システム用サーバ６３０（以下、ジョブ制御サーバという）は、個々のクライアント６００上のジョブ制御プリントサービス６２２がプリンタデバイス６５０に印刷ジョブを送信するタイミングを集中制御（スケジューリング）している。
【００５０】
また、ジョブ制御用サーバ６３０はネットワークを介して通信可能な各デバイス（印刷装置）の印刷実行中、電力制御状態及び障害情報（紙ジャム）等のステータスを監視し、ジョブ制御プリントサービス６２２にイベントを通知する機能を備える。ここで、プリンタステータスの状態変化の監視について、ジョブ制御プリントサービス６２２は直接的に状態の変化の通知（イベント）をプリンタデバイスから取得することもできる。
【００５１】
印刷ジョブ制御システム用マネージメントコンソール６３３（以下、ジョブ制御マネージメントコンソールという）は、ジョブ制御サーバ６３０に含まれるソフトウェアがアクセスするためのＡＰＩを介してジョブ制御サーバ６３０と情報及び指示を送受信することで、印刷ジョブ制御システム全体を監視することができる。
【００５２】
また、ジョブ制御サーバ６３０はデバイス情報コントロールモジュール６３１を用いて各プリンタデバイス６５０と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手したり、操作を行う。入手した情報はクライアント６００側のジョブ制御プリントサービス６２２に渡すことができる。
【００５３】
次に、本実施の形態におけるグループプリンタドライバ６０３からの印刷について説明する。
【００５４】
グループプリンタドライバ６０３はアプリケーションプログラム６０１が生成した一連の描画コマンドに基づいて汎用ドキュメントデータを生成する。この汎用ドキュメントデータはジョブ制御プリントサービス６２２によってプリンタデバイスの種類に依存しない中間フォーマットのファイルである汎用印刷ファイルに変換される。この汎用印刷ファイルの構成については後述する。
【００５５】
この汎用印刷ファイルは、上述したようにＷｉｎｄｏｗｓ（登録商標）スプーラ６０４からジョブ制御ポートモニタ６２１を経て（図６（ａ））、ジョブ制御プリントサービス６２２に導かれる（図６（ｂ））。ジョブ制御プリントサービス６２２はこの印刷ジョブに対して行うジョブ制御の種類に応じて、汎用印刷ファイルをもとに描画コマンドを生成し（図６（ｃ））、続いてＰＤＬドライバ６０２がその描画コマンドをプリンタデバイス６５０が解釈可能なＰＤＬファイルにする。図６は、ジョブ制御プリントサービス６２２で、この印刷ジョブに対して印刷ジョブをふたつに分けるジョブ制御が行われる例で、２つのメンバジョブが生成された例を２つの矢印（図６（ｃ））で示している。ＰＤＬドライバ６０２で生成されたＰＤＬファイルはＷｉｎｄｏｗｓ（登録商標）スプーラ６０４及びジョブ制御ポートモニタ６２１を経て（図６（ｄ））、再びジョブ制御プリントサービス６２２に渡される（図６（ｅ））。ジョブ制御プリントサービス６２２は、ジョブ制御サーバ６３０の指示に従ってＰＤＬの印刷ジョブをプリンタデバイス６５０に送信する（図６（ｆ））。
【００５６】
ジョブ制御プリントサービス６２２は、汎用印刷ファイル中の印刷指示書の指示にしたがって、一つの汎用印刷ファイルを複数の印刷ジョブに論理的に分割してそれぞれ別のプリンタデバイスに送信したり、一度送信した印刷ジョブを別のプリンタデバイスに送信し直したりする。図６中の（ｃ）〜（ｆ）はそのような場合の印刷ジョブの経路を示している。
【００５７】
一方、アプリケーションソフトウェアが汎用印刷ファイルを作成し、そのアプリケーションソフトウェアが直接汎用印刷ファイルを印刷ジョブとして投入する場合、一般のアプリケーションとはグループプリンタドライバ６０３への情報の渡し方や、グループプリンタドライバ６０３での処理内容が異なる。前述のように、一般のアプリケーションの場合、アプリケーションはグループプリンタドライバ６０３に描画情報を渡す際、通常のプリンタドライバと同じようにＷｉｎｄｏｗｓ（登録商標）のＧＤＩ関数を呼び出し、グループプリンタドライバ６０３がそれに応じて汎用ドキュメントデータを生成し、該生成された汎用ドキュメントデータがジョブ制御プリントサービス６２２によって汎用印刷ファイルに生成される。これに対して汎用印刷ファイルを直接作成するアプリケーションの場合は、アプリケーションが汎用印刷ファイルをすでに持ち、それをグループプリンタドライバ６０３に供給する。グループプリンタドライバ６０３は必要に応じてあらかじめ設定された印刷方法に基づいて汎用印刷ファイル内部の印刷指示書を書き換えてＷｉｎｄｏｗｓ（登録商標）Ｓｐｏｏｌｅｒ６０４に送る。
【００５８】
次に、図７でＷｉｎｄｏｗｓ（登録商標）が提供するプリントシステムと印刷ジョブ制御システムにおける印刷ジョブの関係と処理概要とをさらに詳しく述べる。
【００５９】
図７において印刷ジョブ制御システム７００は、サーバとクライアントの制御プログラムが動作する物理的なマシンをまたいだ、印刷ジョブ制御システムの範囲を示している。また、サーバが管理している出力ポート（Ｏｕｔｐｕｔ　Ｐｏｒｔ）７１１Ａ，Ｂは、クライアントのジョブ制御プリントサービス６２２のプロキシ出力ポート（Ｐｒｏｘｙ　Ｏｕｔｐｕｔ　Ｐｏｒｔ）７１２Ａ，Ｂとそれぞれ関連付けられ、ひとつのポートに関連づけられた各クライアント上のプロキシ出力ポートの全てを統一的に管理している。本実施の形態では、実際の印刷ジョブは各々のクライアントのプロキシ出力ポート７１２Ａ，Ｂに保持される。ジョブ制御サーバ６３０は、印刷ジョブ自体の送信処理は行わず、ジョブ制御プリントサービス６２２に対して印刷ジョブの送信指示のみを行う。その指示に応じてクライアントのジョブ制御プリントサービス６２２は印刷ジョブをプリントデバイス６５０に送信する。
【００６０】
図８は、本サーバクライアント印刷制御システムを設定するユーザインターフェースを示す例である。
【００６１】
図９は、第１の実施の形態に係るサーバクライアント印刷制御システム全般のアルゴリズムを示すフローチャートである。図９のフローチャートに示される各ステップの処理は処理の主体となる装置に設けられた中央演算処理装置がＲＯＭや補助記憶手段等に記憶された印刷制御用モジュール（プログラム）を実行させることによって実現される。
【００６２】
図１〜図７に示されるようなサーバクライアント印刷制御システムにおいて印刷先設定が予めなされた環境で、クライアントコンピュータから印刷指示がなされた場合に、サーバクライアント印刷制御システムはジョブ制御プリントサービス（６２２）の指示に従いＰＤＬドライバ（６０２）にて印刷ジョブの作成処理を行い（ステップＳ９０１）、該作成された印刷ジョブをサーバコンピュータのポートに登録し（ステップＳ９０２，Ｓ９０３）、ジョブのスケジューリング処理を行い（ステップＳ９０４）、サーバコンピュータで管理しているポートの状態が一時停止状態であるか（ステップＳ９０５）、さらに印刷可能設定時間内であるか（ステップＳ９０６）を確認した上で、クライアントコンピュータにてジョブ印刷を実行する（ステップＳ９０７）。
【００６３】
サーバコンピュータではポートの状態を確認し、クライアントコンピュータが印刷ジョブを流せる状態であるか否かの確認処理（ステップＳ９０５，Ｓ９０６）を経て、必要に応じてクライアントへの印刷ジョブの送信指示が行われる。サーバコンピュータで管理しているポートの状態が正常であり且つ印刷可能な時間帯での印刷であれば（ステップＳ９０５でＮＯ，ステップＳ９０６でＹＥＳ）、印刷を開始することができるが、サーバコンピュータにおいてポートの状態を一時停止に設定したり（ステップＳ９０５でＹＥＳ）、印刷可能な時間帯を設定しないことにより（ステップＳ９０６でＮＯ）、クライアントコンピュータからの印刷ジョブのスケジュール要求を再実行する（ステップＳ９０４）。
【００６４】
上述したように、本実施の形態によれば、サーバコンピュータが、クライアントコンピュータとの間で通信を行い、クライアントコンピュータによる印刷ジョブの実行の停止（サーバ上のポートの状態の一時停止）又はクライアントコンピュータによる印刷ジョブの実行時間を設定することにより、クライアントコンピュータによる印刷ジョブの実行を制御するので、各クライアントコンピュータでのプリンタ設定を必要とせずに、サーバコンピュータで印刷ジョブの一元管理が可能であるという効果を奏する。
【００６５】
（第２の実施の形態）
上記第１の実施の形態では、サーバクライアント間での同期処理を用いてサーバクライアント印刷制御システムを実現していたが、本実施の形態ではサーバからイベントの発行等による非同期処理を用いることによってサーバクライアント印刷制御システムを実現する。
【００６６】
本実施の形態にかかる印刷管理システムの構成は、第１の実施の形態における印刷管理システムの構成と同様であるので、その説明は省略する。
【００６７】
図１０は、本実施の形態のサーバクライアント印刷制御システムにおいて、図８で示したような手段を用いてサーバ管理ポートの状態を変更したときに、各クライアントに通知をする例を示す図である。
【００６８】
図１１は、第２の実施の形態に係るサーバクライアント印刷制御システム全般のアルゴリズムを示すフローチャートである。尚、図１１のフローチャートに示される各ステップの処理は処理の主体となる装置に設けられた中央演算処理装置がＲＯＭや補助記憶手段等に記憶された印刷制御用モジュール（プログラム）を実行させることによって実現されるものとする。
【００６９】
まず、サーバコンピュータ側での印刷管理システムで、図１〜図８及び図１０に示されるようなシステムを介して印刷先設定がなされた環境において、クライアントコンピュータから印刷指示がなされた場合に、サーバ上のポートの状態が一時停止かどうか（ステップＳ１１０１）、印刷可能設定時間であるか（ステップＳ１１０２）を確認した上で、クライアント印刷制御システムはジョブ制御プリントサービス（６２２）の指示に従いＰＤＬドライバ（６０２）にて、ジョブの作成処理を行い（ステップＳ１１０４）、印刷要求を実行する（ステップＳ１１０５）。尚、サーバ上のポートの状態が一時停止である場合（ステップＳ１１０１でＹＥＳ）、又は印刷可能設定時間でない場合（ステップＳ１１０２でＹＥＳ）には、クライアントコンピュータはサーバ管理ポートの状態が変更された通知があったか否かを判別し、該通知があった場合にはステップＳ１１０１に戻る。
【００７０】
上述したように、本実施の形態によれば、サーバコンピュータが、クライアントコンピュータとの間で通信を行い、クライアントコンピュータによる印刷ジョブの実行の停止（サーバ上のポートの状態の一時停止）又はクライアントコンピュータによる印刷ジョブの実行時間を設定することにより、クライアントコンピュータによる印刷ジョブの実行を制御するので、各クライアントコンピュータでのプリンタ設定を必要とせずに、サーバコンピュータで印刷ジョブの一元管理が可能であるという効果を奏する。
【００７１】
上述した第１及び第２の実施の形態の機能は、ソフトウェアであるプログラムの形態によっても実現することができ、これにより、本発明の目的が達成されることは云うまでもない。
【００７２】
また、上述した第１及び第２の実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ（又はＣＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは云うまでもない。
【００７３】
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７４】
プログラムコードを供給するための記憶媒体としては、例えば、前記フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、半導体メモリ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００７５】
【発明の効果】
以上詳細に説明したように、請求項１記載の印刷管理システム、請求項４記載の印刷管理システム用プログラム及び請求項５記載の記憶媒体によれば、サーバコンピュータが、クライアントコンピュータとの間で通信を行い、クライアントコンピュータによる印刷ジョブの実行の停止又はクライアントコンピュータによる印刷ジョブの実行時間を設定することにより、クライアントコンピュータによる印刷ジョブの実行を制御するので、各クライアントコンピュータでのプリンタ設定を必要とせずに、サーバコンピュータで印刷ジョブの一元管理が可能であるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係る印刷管理システムの構成を示すブロック図である。
【図２】図１におけるクライントコンピュータ１０２〜１０４の構成を示すブロック図である。
【図３】図２に示したＲＡＭ２０２のメモリマップの一例を示す図である。
【図４】図２に示したＦＤ２０４のメモリマップの一例を示す図である。
【図５】図２に示したＦＤドライブ２０３と挿入されるＦＤ２０４との関係を示す図である。
【図６】本システムのクライアントサーバモデルにおいてＭｉｃｒｏＳｏｆｔＷｏｒｄ（登録商標）などの一般的なアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した図である。
【図７】Ｗｉｎｄｏｗｓ（登録商標）が提供するプリントシステムと印刷ジョブ制御システムとにおける印刷ジョブの関係を詳細に示す図である。
【図８】サーバクライアント印刷制御システムを設定するユーザインターフェースを示す例である。
【図９】第１の実施の形態に係るサーバクライアント印刷制御システム全般のアルゴリズムを示すフローチャートである。
【図１０】サーバ管理ポートの状態が変更されたときに、サーバコンピュータがその旨を各クライアントに通知する例を示す図である。
【図１１】第２の実施の形態に係るサーバクライアント印刷制御システム全般のアルゴリズムを示すフローチャートである。
【符号の説明】
１０１　プリントサーバ
１０２〜１０４　クライアント
１０５　ネットワークプリンタ
１０６　ネットワーク
２００　ＣＰＵ
２０１　ＲＯＭ
２０２　ＲＡＭ
２０３　フレキシブルディスク（ＦＤ）ドライブ
２０４　フレキシブルディスク（ＦＤ）
２０５　ハードディスク（ＨＤ）
２０６　キーボード
２０７　ディスプレイ
２０８　システムバス
２０９　インタフェース
【図１】
2004005258.tif 000003
【図２】
2004005258.tif 000004
【図３】
2004005258.tif 000005
【図４】
2004005258.tif 000006
【図５】
2004005258.tif 000007
【図６】
2004005258.tif 000008
【図７】
2004005258.tif 000009
【図８】
2004005258.tif 000010
【図９】
2004005258.tif 000011
【図１０】
2004005258.tif 000012
【図１１】
2004005258.tif 000013