(57)【要約】【課題】インターネット環境で、サーバ、クライアント及びプリンタから構成されるシステムにおいて、目的プリンタからのドキュメント出力に関し、ジョブ出力状況を見てビジー状態であれば、設置場所の近い別の代替プリンタで出力する効率的な印刷システムを提供する。【解決手段】インターネット環境で、サーバ、クライアント及びプリンタから構成されるシステムにおいて、クライアントから目的のプリンタへのドキュメント印刷を行うために、属性設定ファイルを作成し、サーバに送信する。サーバ上でジョブ・スケジューリングを監視し、目的のプリンタがビジー状態である場合、目的プリンタの設置場所に近い別の代替プリンタをプリンタ管理データベースから検索・選択し、設定情報ファイルを代替プリンタ用に変換・作成して、この情報に基づきドキュメント印刷を行う。【選択図】  図１
2004151870.tif 000002
【特許請求の範囲】
【請求項１】
出力対象の情報を出力させる出力装置を任意に選択可能な外部装置から、その選択内容を示す選択情報とともに前記出力対象の情報の出力要求を受信する出力要求受信手段と、
前記選択情報に示される第１の出力装置における情報の出力状況を監視する監視手段と、
前記監視手段による監視結果に応じて第２の出力装置を検索する検索手段と、前記検索手段により検索された前記第２の出力装置に前記出力対象の情報を出力させる出力制御手段とを有することを特徴とする出力制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報を出力させるための出力制御装置に関し、特に、所定の通信プロトコル、例えばＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）  に基づいて、公衆回線あるいは専用回線で通信を行なう通信手段を備えた通信システムにおいて、オペレーティング・システムＷｉｎｄｏｗｓ（登録商標）などで提供されるインターネット・プリンティング技術等に関するものである。
【０００２】
【従来の技術】
従来のネットワーク、例えばＬＡＮ（ローカルエリア・ネットワーク）で接続されるプリントサーバ、クライアント及び印刷装置（プリンタ）から構成されるシステム上において、各クライアントからのドキュメント印刷指示に基づいて印刷装置でドキュメントを印刷しようとする場合、以下に示すいずれかの方法を実行する必要があった。
【０００３】
上記プリントサーバ、クライアント及びプリンタで成るシステムは一般に、構内ＬＡＮあるいは遠隔地への専用回線接続によるＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）などのコンピュータ間通信のためのソフトウエアプロトコルを利用したネットワーク環境によって構築され、クライアントからのドキュメント印刷指示に基づいて、ネットワーク上のプリンタがドキュメントを出力する。
【０００４】
このようなネットワーク環境において大規模なシステムを運用するには、プリントサーバとともに基幹ＬＡＮサーバ及びネットワークＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）環境をネットワーク上に構築し、アクセス管理機能、各種のハードウェア及びソフトウェア資源管理機能、各種データ管理機能などをシステム機能に追加することが必要とされている。
【０００５】
他の方法としては、ドキュメントの印刷目的にあったプリンタをクライアントが選択・指定を行ない、このプリンタに合ったドキュメントの属性設定データを作成し、ドキュメント印刷を実行させる方法が知られている。
【０００６】
上記の従来技術においては、再度、同一あるいは同様のドキュメントの印刷が行われる際には、前回と同様の目的プリンタに合ったドキュメントの属性設定データを作成する必要があった。特に、複数のクライアントから同一あるいは同様のドキュメントの印刷が指示されたときには、前回作成した属性設定データを各クライアントに通知し、クライアント毎にそれらの属性設定データを設定させる必要があった。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記のような従来技術では、通信網を使って遠隔地にあるクライアントから特定のプリンタへの出力指示、及び、ドキュメントの出力形態に合致した属性設定データを各クライアントに設定させる場合には、以下のような解決すべき課題がある。
【０００８】
大規模なシステムを運用する際には、上記のようにネットワーク上にプリントサーバとともに基幹ＬＡＮサーバ及びネットワークＯＳ環境を構築し、アクセス管理機能、各種のハードウェア及びソフトウェア資源管理機能、各種データ管理機能などをシステム上に備える必要があり、通信にかかる回線使用コスト、設備維持コスト、運用・管理コストなどが膨大なものとなる。
【０００９】
また、再度、同一あるいは同様のドキュメントの印刷を行う場合には、前回と同様のドキュメントの属性設定データを作成する必要があり、さらに、複数のクライアントから同一あるいは同様のドキュメントを印刷する際には、前回作成した属性設定データを各クライアントに通知して、同様の属性設定データをクライアントに設定する必要がある。そのため、このような従来のネットワーク環境におけるドキュメント印刷業務は非常に効率が悪かった。また、前回の属性設定データを更新する必要が出てきた場合、すべてのクライアントの設定変更を手作業で行う必要があり、コストの増大を招く。
【００１０】
さらに、ネットワーク上の特定のプリンタでドキュメントを出力させるためにドキュメントデータをその目的プリンタに送信したとき、その目的プリンタに既に先行してジョブがスプールされ、待機状態にある場合、目的プリンタは当該プリンタからの印刷要求に対して即座に出力することができず、時間的作業効率が低下してしまう。
【００１１】
本発明は、上記問題点に鑑みてなされたものであり、情報を出力するまでの待機時間を低減し、情報の出力作業の効率化を図ることにある。
【００１２】
【課題を解決するための手段】
かかる目的を達成するために、本発明の出力制御装置は、出力対象の情報を出力させる出力装置を任意に選択可能な外部装置から、その選択内容を示す選択情報とともに前記出力対象の情報の出力要求を受信する出力要求受信手段と、前記選択情報に示される第１の出力装置における情報の出力状況を監視する監視手段と、前記監視手段による監視結果に応じて第２の出力装置を検索する検索手段と、前記検索手段により検索された前記第２の出力装置に前記出力対象の情報を出力させる出力制御手段とを有することを特徴とする。
【００１３】
【発明の実施の形態】
以下、本発明の実施形態を添付図面を参照しながら詳細に説明する。
以下では、インターネット・ウェブサーバに公衆回線或いは専用回線を介してクライアント及びプリントサーバのホストコンピュータが接続され、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）の通信手順により各装置間のデータ転送を行う通信システムを想定して説明する。
【００１４】
また、プリントサーバ及び一部のクライアントにはプリンタを接続させることができる。クライアント上では、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述・作成された各種属性設定データを作成するためのユーザインタフェースが表示され、ユーザはこのインタフェース上でデータ出力に係る各種属性設定を行ない、目的とする印刷出力に合ったプリンタを選択した後、ドキュメントデータの出力を指示する。
【００１５】
［全体の動作の概要］
ここで、本発明に係る通信システムの動作の概要を説明する。プリントサーバは、シェア（共有）する複数のプリンタについてそれぞれの設置場所及びプリンタ機種を組み合わせたデータベースを作成する。その際に、設置場所が近いものの順に識別情報が付加されており、この識別情報に基づいてプリンタの一括管理を行なう。一方、クライアントではドキュメントデータの印刷出力に係る各種属性設定のためのファイル化が行われ、作成された属性設定ファイルはクライアントからプリントサーバに送信され、プリントサーバ上で管理・保存される。
【００１６】
また、プリントサーバは、既に印刷指示を受けたドキュメントデータ又はそれに類するドキュメントデータの印刷指示が他のクライアントからあった場合や、クライアントから属性設定データの取得要求にあった場合には、それらのクライアントで保存させる属性設定データを配信する。
【００１７】
さらに、プリントサーバは、クライアントからドキュメントの出力対象に選択されたプリンタに対してジョブ・スケジューリング及びジョブ出力状況の監視を行い、ジョブ待機状態を調べる。その結果、例えば他のクライアントから当該プリンタに対して先行して印刷指示が出されており、当該プリンタに既にジョブが複数存在し、新たに受け付けた印刷要求に対して即出力動作を開始することができない場合には、そのプリンタに最も近い場所に位置するプリンタを改めて検索する。そして、プリントサーバは、新たに検索したプリンタについてもジョブ待機状態を調べ、即出力動作を開始することが可能であれば保管する属性設定データを変換し、新たなプリンタの機種に対応した属性設定データを作成する。
【００１８】
その際に、当初の目的プリンタに搭載されるＰＤＬと異なるＰＤＬを搭載する代替プリンタが選択された場合には、クライアントは、最終的にプリントサーバに送信するドキュメントデータとは異なる形式の中間データファイル（いわゆる中間コード）を生成する。生成された中間データファイルはクライアントからプリントサーバに送信され、プリントサーバ上のプログラムメモリ上で動作する印刷制御プログラムにより中間データファイルに対する処理が施される。
【００１９】
また、プリントサーバには、プリンタのデータ出力動作を制御するためのプリンタ制御プログラム（プリンタドライバ）がインストールされており、上記属性設定データに含まれる各種属性設定情報及びクライアントから受信した図形、文字及びイメージ描画指示等のドキュメントデータに基づいて、プリントサーバはプリンタ制御プログラムを用いてプリンタに対する印刷制御を実行する。
【００２０】
＜第１の実施形態＞
図１は、本発明の第１の実施形態及び後述の実施形態に共通のシステム構成を示した図である。
図１に示す通信システムは、インターネット・ウェブサーバ１００、１以上のプリントサーバ１０２及び１０８〜１２３で示すワークステーション、パーソナルコンピュータ等が公衆回線あるいは専用回線で接続された通信システムである。本通信システムは、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）によりインターネット・ウェブサーバ１００を核としたデータ伝送が可能なインターネット通信網を構築している。
【００２１】
クライアントとなるワークステーション１０８あるいはパーソナルコンピュータ１１０、１１３、１１８、１２０、１２２は、プリントサーバ１０２に接続・管理される各種プリンタ１０４〜１０７に対して、プリントサーバ１０２内で管理・保存されているドキュメントデータ、或いは、各クライアント上で作成・保存されるドキュメントデータの印刷指示を行う。
【００２２】
その際に、クライアントは出力させるドキュメントデータに適応したプリンタを選択することが可能である。従って、プリントサーバ１０２に接続されるプリンタとしては、高速・大量出力プリンタ１０４、１０５、カラープリンタ１０６、１０７等、多様なプリンタ機種をネットワーク上に設置することが好ましい。
【００２３】
例えば１０８のクライアントを例に挙げて説明すると、クライアント１０８は、遠隔地にあるサーバ１１５の管理下にあるパーソナルプリンタ１１７、同じく遠隔地にあるクライアント・パーソナルコンピュータ１１０に接続されるパーソナルプリンタ１１２等に対して、ドキュメントデータの出力対象として選択・指定することが可能である。
【００２４】
クライアントは、ドキュメントデータの印刷を要求する際には、ドキュメントデータ及びプリンタ機種に対応した属性をインターネット・ブラウザにより表示される属性設定ユーザインタフェース上で設定し、これをファイル化する。このファイル化された属性設定ファイルはインターネット・ウェブサーバ１００を介してプリントサーバ１０２に送信される。
【００２５】
プリントサーバ１０２は、クライアントにより選択・指示された目的プリンタのジョブ・スケジューリング及びジョブ出力状況を監視し、ジョブ待機状態を調べる。その結果、当該プリンタに先行するジョブが複数存在し、今回要求されたジョブに即対応することができない場合には、プリンタ機種と設置場所を対応付けたデータベースから当該プリンタの設置場所に最も近いプリンタを検索する。
【００２６】
プリントサーバ１０２は、新たに検索したプリンタについてもそのジョブ待機状態を調べ、すぐに出力可能であれば当該プリンタ機種に対応して上記属性設定ファイルの変換を行なって属性設定ファイルを新たに作成する。
【００２７】
この作成された属性設定ファイルは、既に印刷指示を受けた当該ドキュメントデータと同様のドキュメントデータの印刷指示が他のクライアントからあった場合や、或るクライアントから属性設定ファイルの取得要求があった場合に配信される。
【００２８】
また、クライアントが選択したプリンタと異なるプリンタがプリントサーバ１０２によって選択され、そのプリンタが当初のプリンタと異なるＰＤＬを搭載している場合には、クライアントは、最終的にプリントサーバ１０２に送信するドキュメントデータとは異なる形式の中間データファイル（いわゆる中間コード）を生成する。生成された中間データファイルは、クライアントからプリントサーバ１０２に送信され、プリントサーバ１０２内の記憶装置において一時保存される。
【００２９】
プリントサーバ１０２内の記憶装置に一時保存された中間コードは、プリントサーバ１０２のプログラムメモリ上で動作する印刷制御プログラム（プリンタドライバ）によって印刷データとして再度読み出され、解析・変換処理が行われる。プリントサーバ１０２は、この解析・変換処理により新たに得られた印刷出力に係る属性設定に基づき目的プリンタへ印字制御命令を出力し、ドキュメントを目的プリンタに出力させる。
【００３０】
［データベースの構成］
図２は、プリントサーバ１０２がシェア（接続・管理）する複数のプリンタの設置場所、プリンタ機種及び識別情報を列挙したデータベースの構成例を示す。
【００３１】
図２に示すものは、プリンタ機種とプリンタ設置場所を対応付けたデータベースであり、夫々の対応付けに識別情報が付加されている。図２の例では、識別情報として識別ＩＤ番号が付加されている。識別ＩＤ番号は、その番号の十桁で各プリンタの設置場所の近いものをグルーピングし、その番号の一桁で個々のプリンタ及び設置場所を表しており、近い番号同士が近い場所にあるプリンタとして扱われる。
【００３２】
クライアントユーザからドキュメントデータの出力対象となるプリンタが、例えば、「本社開発部第２開発室」にある「プリンタＣＣＣ」である場合、プリントサーバ１０２は本データベースを検索し、「本社開発部第２開発室」−「プリンタＣＣＣ」の「識別ＩＤ番号＃３１」を取得する。次に、この目的プリンタ「プリンタＣＣＣ」のジョブ待機状態を調べ、既に別のジョブが待機中となっている場合は、本データベース上で、上記「プリンタＣＣＣ」の設置場所に近いプリンタを求めるために、「識別ＩＤ番号３０番台」にあるプリンタを検索し、検索結果から「識別ＩＤ＃３０プリンタＢＢＢ」あるいは「識別ＩＤ＃３２プリンタＤＤＤ」のいずれかを代替プリンタとして選択する。
【００３３】
［属性設定ユーザインタフェースとファイルの構成］
図３は、プリントサーバ１０２の配信制御プログラムによりクライアント上で表示される属性設定ユーザインタフェース及び属性設定ファイルの構成例を示した図である。
【００３４】
インターネット・ブラウザ上で展開されるユーザインタフェース３００には、印刷するドキュメントに依存する属性として出力用紙サイズ、印刷の向き、拡大／縮小、フォント、コピー部数などを設定するための項目が表示される。同じく、インターネット・ブラウザ上で展開されるユーザインタフェース３０２には、目的のドキュメントを出力するために選択・指定したプリンタに依存する各種属性設定として主にプリンタの機能仕様、オプション装置など、このデバイス特有の属性を設定するための項目が表示される。これらの項目は具体的に、色指定（カラー／モノクロ）、出力解像度、両面印刷、給紙方法、排紙方法などの属性設定項目が相当する。ユーザインタフェース３００上では各ドキュメントデータに依存する属性設定データ３０１が設定され、ユーザインタフェース３０２上ではデバイスに依存する属性設定データ３０３が設定される。クライアントは、これらの属性設定データ３０１及び属性設定データ３０３を併せてファイル化し、属性設定ファイル３０４を得る。
【００３５】
［プリントサーバとプリンタの接続構成］
図４は、プリントサーバ１０２とプリンタの接続構成の一例を示した図である。このシステムは、プリントサーバ４００（１０２）、これに対して入力を行なうキーボード、マウス等の入力装置（手操作入力）４０１、表示出力を行なう表示装置（ディスプレイ）４０２、ファイルの入出力を行なうディスク４０３、及びプリントサーバ４００に接続される複数のプリンタ４１２からなる。
【００３６】
プリントサーバ１０２は、プリントサーバ４００内のプログラムメモリ（ＲＡＭ）４０６上にある、属性設定ファイルを作成及び配信するための属性設定ファイル作成・配信制御プログラム、上記属性設定ファイル３０４及び印刷制御を行なうためのプリンタ制御プログラム（プリンタドライバ）を読み込み、各種動作を実行する。
【００３７】
図４において、さらに詳細にプリントサーバ４００の構成について説明する。４０４は、プリンタサーバ１０２及び接続される各入出力装置の制御動作や、入力された指示に基づく出力制御動作など、読み込むプログラムに従って各種制御動作を実行するＣＰＵ（中央演算処理装置）である。
【００３８】
４０５は、ＣＰＵ４０４を動作させるためのオペレーティングシステムなど種々の基本プログラムを格納するＲＯＭ（リードオンリーメモリ）である。４０６は、ＣＰＵ４０４が属性設定ファイル作成、配信及びプリンタドライバなどを実行／動作させる各種処理のための作業領域として用いられるＲＡＭ（ランダムアクセスメモリ）であって、プリンタ４１２に対するドキュメントデータの出力に関する情報の外部からの入力、及び、プリンタに対して直接印刷指示を行なうアプリケーションプログラムなどもこのＲＡＭ４０６上にある。
【００３９】
４０７は、プリントサーバ４００に接続され、入力を行なうキーボード、マウスなどの入力装置４０１のインタフェースを備えるキーボードコントローラである。４０８は、ディスプレイ４０２への表示出力を行なうためのインタフェースを備えるディスプレイコントローラである。４０９は、ディスク４０３への入出力インタフェースを備えるディスクコントローラである。４１０は、プリントサーバ４００とプリンタ４１２とが通信を行なうための通信プロトコルを備えたイーサネット（Ｒ）などのネットワーク回線を介して情報の入出力を行なうためのインタフェース（Ｉ／Ｆ）である。４１１は各構成要素を接続するＣＰＵバスである。
【００４０】
次に、プリンタ４１２の構成について詳細に説明する。４１４は、プリンタ４１２に接続される各種情報の入出力の制御や、入力された指示情報に基づく印刷制御などの一連の処理、通信制御処理などのプログラムを実行するＣＰＵである。４１５は、情報の入出力制御、通信制御処理、入力された指示に基づく印字制御などの一連の処理、制御コマンド解析処理などをプリンタに実行させるためのプログラムを記録したＲＯＭである。４１６は、ＣＰＵ４１４が各種プログラムで実行・処理を行なうための作業領域として用いられるＲＡＭである。
【００４１】
４１７は、通信プロトコルを備えたイーサネット（Ｒ）などのネットワーク回線を介して情報の入出力を行なうインタフェースであり、このインタフェース４１７を用いてプリントサーバ４００とのデータのやり取りが可能となる。４１８は、ＲＯＭ４１５と同様、各種データなどが格納されているディスク４１３との入出力インタフェースを備えるディスク・コントローラである。４１９は、機構的にパターン出力を行なう印刷装置駆動系（エンジン部）４２１とのデータ及び信号のやり取りを行なう入出力インタフェースを備えるエンジン制御処理部である。４２０は、各構成要素を接続するＣＰＵバスである。
【００４２】
次に、プリントサーバ４００内のＲＡＭ４０６上にあるプリンタ制御プログラム（プリンタドライバ）の制御処理及び動作について説明する。プリントサーバ４００内のＲＡＭ４０６上にある本実施形態に係るパターン出力制御を実現するプリンタ制御プログラム（プリンタドライバ）は、同じくＲＡＭ４０６上にあるドキュメント作成、編集、印刷出力アプリケーションプログラム等からの指示により起動する。
【００４３】
まず、ＣＰＵ４１４は図３に示すような属性設定ファイル３０４を読み込むと、これをＲＡＭ４０６或いはディスク４０３の記憶装置に格納する。後にプリンタ初期化処理を実行する際には、ホストシステム４００は、ＲＡＭ４０６或いはディスク４０３の記憶装置から属性設定ファイル３０４を読み出した後、プリンタ制御命令を生成し、プリンタ制御命令及び属性設定ファイル３０４をプリンタ４１２に送信する。
【００４４】
プリントサーバ４００は、ＲＡＭ４０６上にある上記アプリケーションプログラムから出力対象となる図形、文字及びイメージのパターンデータ、出力サイズ、描画出力開始位置及び描画出力形態など、属性設定ファイル３０４内に含まれる各設定パラメータを読み出す情報入力処理、当該情報入力処理によって読み出された各データの解析処理を行う情報解析処理、当該情報解析処理による解析結果からドキュメントの描画出力形態を決定する描画出力形態制御処理、当該描画出力形態制御処理によって決定された描画出力形態でドキュメントを印刷させるためのプリンタ制御命令を変換・生成する出力制御命令変換処理、及び、当該出力制御命令変換処理によって生成されたプリンタ制御命令をプリンタに送信する出力制御命令送信制御処理を実行する。これによって、プリントサーバ４００はプリンタ４１２からドキュメントを出力させる。
【００４５】
次に、プリンタ４１２内のメモリＲＯＭ４１５上にある制御プログラムによる印刷出力制御処理について説明する。まず、プリントサーバ４００内のプリンタドライバから送信されるプリンタ初期化制御命令を受信し、初期化処理を行なう。
【００４６】
続いて、プリンタ４１２は、プリントサーバ４００からプリンタ４１２に印刷を実行させるために送信されてくるプリンタ制御命令を入力する印刷制御命令入力処理、上記入力されたプリンタ制御命令及び各種設定パラメータなどを解析する制御設定パラメータ解析処理、上記印刷制御命令及び制御設定パラメータに基づいてビットマップを生成し、ビットマップ・メモリに展開するビットマップ展開処理等の一連の処理を実行する。そして、プリンタ４１２は、エンジン制御処理部にある入出力インタフェース４１９を通して、印刷出力装置駆動系（エンジン部）４２１に上記生成されたビットマップ・データを送信し、印刷出力（ドキュメント）４２２を出力する。
【００４７】
［各制御処理の詳細］
図５〜図１０は、本発明の第１の実施形態における各制御処理の処理手順を示す。次に、図５〜図１０のフローチャートを参照して、上述した構成からなる本実施形態におけるプリントサーバ４００及びプリンタ４１２の各制御処理を詳細に説明する。なお、図中のＳはステップを示す。
【００４８】
［印刷属性設定データの作成］
図５は、本実施形態に係る図１のクライアント１０８、１１０、１１３及び１１８，１２０，１２２におけるインターネット・ブラウザ上の各種属性設定ユーザインタフェースを用いて属性設定ファイルを作成する処理の流れを示したフローチャートである。
【００４９】
まず、ステップＳ５０１で、クライアント上においてドキュメントデータを出力させる所望のプリンタ（目的プリンタ）が選択され、その選択内容を指示情報としてプリントサーバ１０２が受信する。次のステップＳ５０２では、この指示情報を受けて図３に示すインターネット・ブラウザ３０２上で展開されるユーザインタフェースが配信され、クライアント上でユーザインタフェース３００及び３０２が構成されて表示される。クライアントにおけるこのユーザインタフェースの構成・表示制御処理部はモジュール化されている。
【００５０】
次のステップＳ５０３では、上記ステップＳ５０１において選択指示された目的プリンタに合致した各種属性設定を行うための初期化処理を行う。続くステップＳ５０４では、上記ユーザインタフェースを用いて各種属性設定データを入力させ、ステップＳ５０５では入力された属性設定データの解析処理を行う。このステップを実行する解析制御処理部はモジュール化されている。次のステップＳ５０６では、上記属性設定データの解析結果から、入力データが正当であるか否かの判断処理を行ない、不正データの入力であれば、再入力を促して再度ステップＳ５０４に戻る。
【００５１】
ステップＳ５０６で正当のデータであると判定された属性設定データは、次のステップＳ５０７において、プリンタ（デバイス）依存データであるか否かの判定が行われ、デバイス依存データと判定されたデータは、ステップＳ５０８において、プリンタ依存データとして、ＲＡＭあるいはディスクなどの記憶部に格納・保存される。一方、ステップＳ５０７において、ドキュメント依存データであると判定されたデータは、ステップＳ５０９において、ドキュメント依存データとして、ＲＡＭあるいはディスクなどの記憶部に格納・保存される。
【００５２】
［印刷属性設定データのファイル化と送信］
図６は、クライアントにおいて属性設定データをファイル化し、プリントサーバ１０２に送信するための制御処理の流れを示したフローチャートである。まずステップＳ６０１で、属性設定ファイルを作成するための初期化処理を行なう。この初期化処理は、例えば属性設定ファイルの作成オープン、ファイル名称、ファイル属性設定などが相当する。このステップを実行する制御処理部はモジュール化されている。
【００５３】
次のステップＳ６０２及びステップＳ６０３では、図５のステップＳ５０９及びステップＳ５０８で記憶部に格納・保存した各ドキュメントに依存する属性設定データ及び各プリンタに依存する属性設定データを夫々読み出して入力する。次のステップＳ６０４で、同一バージョンあるいは該当バージョン以上の本システムで動作保証するためのバージョン情報を上記属性設定データに付加する。
【００５４】
次のステップＳ６０５で、有効なドキュメントデータを識別するためのドキュメント情報を上記属性設定データに付加する。次のステップＳ６０６で、上記属性設定データに適合するプリンタ機種を識別するための識別データを上記属性設定データに付加する。
【００５５】
次のステップＳ６０７では、上記のようにして作成された属性設定データを属性設定ファイルに書き込む。このステップを実行する制御処理部はモジュール化されている。次のステップＳ６０８で上記属性設定ファイルを保存し、続くステップ６０９でこのファイルをプリントサーバ１０２に送信し、ステップＳ６１０でプリントサーバ１０２の記憶部に保存させる。
【００５６】
［ジョブ監視と代替プリンタの選択・指定］
図７は、図４のプリントサーバ４００（その他、図１の１００、１０２又は１１５に相当するサーバ）のプログラムメモリ（ＲＡＭ）４０６上に記録されるジョブ制御プログラムによる制御処理の一例を示した図である。まず、ステップＳ７０１では、例えばプリントサーバ１０２はクライアントから選択・指定された目的プリンタについてスプールされている出力待機中のジョブ数など、ジョブ出力状況を監視する。このステップを実行する処理部はモジュール化されている。
【００５７】
次のステップＳ７０２で、プリントサーバ１０２は、同じくクライアントから選択・指定された目的プリンタについて待機中のジョブ・スケジューリングを参照する。このステップを実行する処理部はモジュール化されている。次のステップＳ７０３では、ステップＳ７０１におけるジョブ出力状況監視処理及びステップＳ７０２におけるジョブ・スケジューリング参照処理の結果から、これから印刷指示を出すジョブが待機状態になるか、すぐに出力可能であるか否かの判定処理（判断分岐）を行なう。
【００５８】
ステップＳ７０３で、プリントサーバ１０２は、これから印刷指示を出すジョブがすぐに出力可能と判定された場合には、代替プリンタを選択・指定する必要がないため、そのまま本ジョブ制御処理を終了する。一方、ステップＳ７０３で、これから印刷指示を出すジョブが待機状態になると判定された場合には、次のステップＳ７０４で、プリントサーバ１０２がシェアする複数のプリンタについて設置場所、プリンタ機種及び識別情報を列挙したデータベースを参照する。
【００５９】
次のステップＳ７０５において、そのデータベースにあるプリンタ機種、設置場所及び識別ＩＤ番号から、クライアントユーザにより選択・指定された目的プリンタの識別ＩＤ番号を求める。そして、前記目的プリンタの識別ＩＤ番号から代替プリンタの検索を行い、目的プリンタの設置場所に最も近い場所に設置されている代替プリンタを指定する。
【００６０】
次のステップＳ７０６では、ステップＳ７０５の代替プリンタの検索処理により目的プリンタの設置場所の近くに代替プリンタとなる別のプリンタがあるか否かの判定処理（判断分岐）を行なう。ステップＳ７０６での判定処理によって目的プリンタの設置場所の近くに代替プリンタとなる別のプリンタがあった場合には、ステップＳ７０７でそのプリンタを代替プリンタとして選択する。一方、ステップＳ７０６での判定処理で代替プリンタとなる別のプリンタがなかった場合には、ステップＳ７０７において、クライアントによって当初選択・指定された目的プリンタを再度選択して、待機する。
【００６１】
ステップＳ７０９では、ステップＳ７０８で選択された代替プリンタに搭載されるＰＤＬが、当初の目的プリンタに搭載されるＰＤＬと同一であるか判定処理（判断分岐）を行なう。ステップＳ７０９の判定処理で同一ＰＤＬと判定された場合には、終了して以降の処理に備える。前記判定処理で異なるＰＤＬと判定された場合は、クライアントは中間データファイル（いわゆる中間コード）を生成し、プリントサーバ１０２に送信する。
【００６２】
［印刷属性設定ファイルの変換］
図８は、図４のプリントサーバ４００（その他、図１の１００，１０２あるいは１１５に相当するサーバ）のプログラムメモリ（ＲＡＭ）４０６上に記録される印刷属性設定ファイル変換プログラムによる制御処理の一例を示した図である。まず、ステップＳ８０１で、クライアントにて選択された目的プリンタへのドキュメント印刷指示を受けて、プリントサーバ１０２に送信された目的プリンタに関する属性設定ファイルと該当プリンタとの照合処理を行う。
【００６３】
次のステップＳ８０２では、ステップＳ８０１での属性設定ファイルと該当プリンタの照合結果から、クライアントにて選択・指定された目的プリンタとプリントサーバ１０２に送信された属性設定ファイルとが一致するか否かの判定処理（判断分岐）を行う。
【００６４】
ステップＳ８０２の判定処理によって属性設定ファイルに含まれるプリンタ機種の識別情報が目的プリンタと一致すると判定された場合には、代替プリンタを選択・指定及び属性設定ファイル変換を行なう必要がないため、このまま本制御処理を終了する。一方、ステップＳ８０２の判定処理によって属性設定ファイルに含まれるプリンタ機種の識別情報が目的プリンタと一致しないと判定された場合には、ステップＳ８０３で属性設定ファイルを参照して、その設定内容を確認する。
【００６５】
次のステップＳ８０４において、代替プリンタの出力可能用紙サイズ、カラー／モノクロ、出力解像度、印刷速度などの搭載される機能仕様を参照する。また、ステップＳ８０５において、代替プリンタのもつ出力可能フォント、拡大／縮小描画、ディザリングパターン、ラスタオペレーションなどの描画に関する能力を参照する。
【００６６】
続いて、ステップＳ８０６において、上記ステップＳ８０４の参照処理で得た代替プリンタの仕様及びステップＳ８０５の参照処理で得た代替プリンタの描画能力により当初の目的プリンタと同様の印刷結果が得られるように、属性設定ファイルを代替プリンタ向けに変換する。次のステップＳ８０８において、ステップＳ８０６における変換処理後のデータから代替プリンタ用の属性設定ファイルを作成する。
【００６７】
［印刷属性設定ファイルの一覧作成・表示、検索、印刷］
図９は、図４のプリントサーバ４００のプログラムメモリ（ＲＡＭ）４０６上にある属性設定ファイルの一覧作成・表示、検索、印刷制御処理の一例を示した図である。まず、ステップＳ９０１では、印刷を行なう目的ドキュメントデータ、この目的ドキュメントデータを印刷させる対象となる目的プリンタ及びこの目的プリンタに対する属性設定を関連付けた一覧（データベース）を作成する。この関連付けした属性設定は、１項目１ファイルとして作成する。本一覧の作成は、プリントサーバ１０２に限らずクライアント上で作成することも可能である。また、本一覧の作成処理がプリントサーバ１０２及びクライアントの何れにおいて実行されても本一覧はサーバ上で保存・管理されるものである。
【００６８】
次のステップＳ９０２では、印刷を要求するクライアントにプリントサーバ１０２から上記一覧を示す情報が送信され、クライアントのディスプレイ上で上記一覧が表示される。続くステップＳ９０３では、クライアント上において上記一覧画面から目的ドキュメントが選択され、その選択内容が印刷指示情報としてクライアントからプリントサーバ１０２に入力される。ステップＳ９０４では、同じく上記一覧画面から選択された目的ドキュメントデータに係る属性設定の取得要求指示がクライアントから送信され、プリントサーバ１０２が当該取得要求指示を入力する。
【００６９】
そして、ステップＳ９０５では、ステップＳ９０４で入力した属性設定取得指示に基づき、プリントサーバ１０２は、保存・管理している上記一覧データベースから、該当ドキュメントデータの属性設定ファイルを検索する処理（ライブラリモジュール）を実行する。
【００７０】
続いて、ステップＳ９０６では、ステップＳ９０５における検索結果から該当する属性設定ファイルの有無を判定し、該当する属性設定ファイルが無かった場合にはステップＳ９０７でエラー表示を行ない、再度ステップＳ９０２からステップＳ９０５までの処理を促す。ステップＳ９０５の検索結果により該当する属性設定ファイルがあった場合には、ステップＳ９０８において、すぐに印刷を実行するか否かを問い合わせるユーザインタフェースをクライアン卜上に表示させ、クライアントユーザに対して選択・判断させる。
【００７１】
ステップＳ９０８の判断分岐によりすぐに印刷を実行する旨の選択がクライアント上であり、その内容を情報としてプリントサーバ１０２が入力した場合には、プリントサーバ１０２は、ステップＳ９０９でプリンタドライバに属性設定ファイルを読み込ませ、ステップＳ９１１で目的プリンタ或いはクライアントから近い設置場所にある他のプリンタに属性設定ファイルを出力する。一方、ステップＳ９０８の判断分岐によって、すぐに印刷を行なわない場合には、ステップＳ９１０でプリントサーバ１０２から上記クライアン卜に属性設定ファイルを配信し、以降、図８にある代替プリンタに印刷を行わせるための属性設定ファイルの変換処理などに備える。
【００７２】
［同一ＰＤＬを搭載する代替プリンタの出力制御］
図１０は、図４のプリントサーバ４００（その他、図１の１０２及び１１５のサーバ、１１０のクライアント）のプログラムメモリ（ＲＡＭ）４０６上に記録されるプリンタ制御プログラム（プリンタドライバ）による制御処理の一例を示したフローチャートである。
【００７３】
プリンタ制御プログラム（プリンタドライバ）は、例えば文字、図形、イメージ作成・編集、印刷アプリケーションなどのドキュメントデータを入力するドキュメント入力プログラムからの、プリンタへの印刷指示によって起動し、ステップＳ１００１〜Ｓ１０１３を実行する。まず、ステップＳ１００１で、上述した目的プリンタあるいは代替プリンタに関する属性設定ファイルをプリントサーバ４００のＲＡＭ４０６或いはハードディスク４０３等の記憶装置から読み出す（ロードする）。
【００７４】
次のステップＳ１００２では、用紙サイズ、印刷方向、描画解像度設定、座標系の単位設定など印刷の準備をするため、属性設定ファイルに含まれるプリンタに対する各設定パラメータをプリンタ制御命令に変換・生成し、このプリンタ制御命令をプリンタに送信してプリンタの初期化処理を行なう。
【００７５】
次のステップＳ１００３では、出力対象のドキュメントデータ（パターンデータ）の描画出力形態を指定するための上記各設定パラメータ及び上記ドキュメントデータをプリンタドライバに入力する。これら設定パラメータおよびドキュメントデータは一般に、ドキュメントデータを作成するアプリケーションプログラムから、直接あるいはオペレーティングシステムを介して入力される。
【００７６】
次のステップＳ１００４では、プリンタドライバは、上記入力された各設定パラメータ及びドキュメントデータ（パターンデータなど）の解析処理を行なう。ステップＳ１００４による解析結果に基づいてドキュメントデータをさらに、ステップＳ１００５、ステップＳ１００７で文字データ、図形データ及びイメージデータに分離する。
【００７７】
上記ステップＳ１００５及びステップＳ１００７では、分離された文字データ、図形データ及びイメージデータに対して、それぞれステップＳ１００６、ステップＳ１００８、及びステップＳ１００９の文字印字制御処理部（モジュール）、図形描画制御処理部（モジュール）及びイメージ描画制御処理部（モジュール）による処理が施される。
【００７８】
次のステップＳ１０１０のドキュメント構成制御処理（モジュール）においては、上記ステップＳ１００６、ステップＳ１００８、及びステップＳ１００９の文字印字、図形描画及びイメージ描画に対する各制御処理結果から、描画出力属性、サイズ計算、描画出力位置などドキュメントデータ（パターンデータ）の出力形態を決定し、プリンタにドキュメントデータを出力させるための制御データを作成する。
【００７９】
続いて、プリンタドライバは、ステップＳ１０１１の印刷制御命令変換処理（モジュール）において、上記ステップＳ１０１０で作成されたドキュメントデータを出力させるための制御データをプリンタに対する印刷制御命令に変換・生成する。続くステップＳ１０１２のプリンタへの出力送信処理（モジュール）においては、ステップＳ１０１１において生成された印刷制御命令をプリンタ４１２に送信し、ステップＳ１０１３にてプリンタ４１２にドキュメントデータを印刷させる。
【００８０】
このように、本実施形態によれば、インターネット環境において当初ドキュメントデータの出力対象とされていたプリンタが即出力動作を開始できるような状態にない場合、プリントサーバのジョブ・スケジューリング監視機能によって印刷待機時間の少ないプリンタ、あるいは印刷要求を出すクライアントに設置場所に近いプリンタを選択・指定することが可能となる。
【００８１】
また、本実施形態によれば、出力しようとするドキュメントデータに最適な各種属性設定ファイルを、後に複数のクライアントに配信することが可能であるため、過去に出力されたドキュメントデータと同一あるいは類似するデータが再び出力対象とされた場合には、各クライアントはプリントサーバから配信される属性設定ファイルを使用して、そのドキュメントデータの印刷指示を行うことが可能となるので、効率的かつ簡便、低価格で最適なドキュメント印刷環境を提供することが可能となる。
【００８２】
［異なるＰＤＬを搭載する代替プリンタの出力制御］
図１１は、図４のプリントサーバ４００（その他、図１の１０２及び１１５のサーバ、１１０のクライアント）のプログラムメモリ（ＲＡＭ）４０６上にあるプリンタ制御プログラム（プリンタドライバ）による処理フローを示したものであり、代替プリンタに搭載されるＰＤＬが当初の目的プリンタに搭載されるＰＤＬと異なる場合の制御処理の一例を示した図である。
【００８３】
プリンタ制御プログラム（プリンタドライバ）は、例えば文字、図形、イメージ作成・編集、印刷アプリケーションなどのドキュメント入力プログラムによってドキュメントデータをクライアントから入力することで起動し、ステップＳ１１０１〜Ｓ１１１３を実行する。まず、ステップＳ１１０１で、ＲＡＭ４０６に一時保存されている中間データファイルをＣＰＵ４０４が入力する。この中間データファイル形式の印刷データの入力は、一般にオペレーティングシステムを介して入力される。
【００８４】
次に、ステップＳ１１０２では、上述した目的プリンタ或いは代替プリンタに関する属性設定ファイルをＲＡＭ４０６或いはハードディスク４０３の記憶装置から読み出す（ロードする）。次のステップＳ１１０３では、用紙サイズ、印刷方向、描画解像度設定、座標系の単位設定など印刷の準備をするため、属性設定ファイルに含まれる各設定パラメータをプリンタ制御命令に変換・生成し、このプリンタ制御命令をプリンタに送信してプリンタの初期化処理を行う。
【００８５】
次のステップＳ１１０４では、前記入力された中間データファイルを解析する中間データファイル解析処理を行なう。次に、上記属性設定ファイルに含まれる各設定パラメータ及び中間データファイル解析処理に基づいてドキュメントデータを得て、さらにステップＳ１１０５、ステップＳ１１０７で文字データ、図形データ及びイメージデータに分離する。
【００８６】
上記ステップＳ１１０５及びステップＳ１１０７で分離された文字データ、図形データ及びイメージデータに対しては、それぞれステップＳ１１０６、ステップＳ１１０８、及びステップＳ１１０９の文字印字制御処理部（モジュール）、図形描画制御処理部（モジュール）及びイメージ描画制御処理部（モジュール）による処理が施される。
【００８７】
続くステップＳ１１１０のドキュメント構成制御処理（モジュール）では、上記ステップＳ１１０６、ステップＳ１１０８及びステップＳ１１０９の文字印字、図形描画及びイメージ描画の各制御処理結果から、描画出力属性、サイズ計算、描画出力位置などドキュメントデータ（パターンデータ）の出力形態を決定し、プリンタにドキュメントデータを出力させるための制御データを作成する。
【００８８】
プリンタドライバは、ステップＳ１１１１の印刷制御命令変換処理（モジュール）において、上記ステップＳ１１１０で作成されたドキュメントデータを出力させるための制御データをプリンタに対する印刷制御命令に変換・生成する。続くステップＳ１１１２のプリンタへの出力送信処理（モジュール）においては、ステップＳ１１１１において生成された印刷制御命令をプリンタ４１２に送信し、ステップＳ１１１３にてプリンタ４１２にドキュメントデータを印刷させる。
【００８９】
［中間データファイル生成および再生処理］
図１２は、クライアントが最終的にプリンタに送信される印刷データとは異なる形式の中間コードを生成し、プリントサーバに送信する処理動作と、プリントサーバにおいて中間データファイルを再度印刷データとして前記印刷制御プログラムに入力して再生し、プリンタドライバによってプリンタにドキュメントを出力させる処理動作の流れを示した図である。即ち、本図では、図７のステップＳ７０９の中間データファイル生成・送信処理モジュールおよび図１１のステップＳ１１０４の中間データファイル解析処理モジュールについて詳細に図示したものである。
【００９０】
ドキュメント作成および印刷指示を行なう外部アプリケーション１２０１からのドキュメント印刷指示は、アプリケーションが有するユーザインタフェースあるいはプリンタドライバが有するユーザインタフェースから設定される各種印刷設定１２０２とともに、オペレーティングシステムの規定に沿ったＧＤＩ（Ｇｒａｐｈｉｃｓ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数で、前記オペレーティングシステムにあるグラフィックスエンジン１２０３に送る。
【００９１】
グラフィックスエンジン１２０３では、前記外部アプリケーションから受け取ったＧＤＩ関数群を解釈し、印刷・描画指示命令を表した共通のＤＤＩ（ＤｅｖｉｃｅＤｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数群に変換する。このＤＤＩ関数群をディスパッチャ１２０４が受け取り、スプーラ１２０８においてスプールさせる。前記印刷・描画指示命令群を印刷のための中間コードを生成する場合には、スプーラ１２０８においてＤＤＩ関数群を前記中間コードに変換し、中間ファイル１２０９として出力し、プリントサーバ１２１０に送信する。このとき同時にスプーラ１２０８は、スプールマネージャ１２１１にスプール状況を通知する。
【００９２】
スプールマネージャ１２１１は、前記入力された印刷設定１２０２に基づき印刷が可能であるか判断し、可能であればデスプーラ１２１２をプログラムメモリ上にロードして、前記中間コードからなる中間データファイルの印刷処理を指示する。デスプーラ１２１２は、前記中間データファイルをプリントサーバ１２１０から読み込み、ＧＤＩ関数を再生成し、再度グラフィックスエンジン１２０３から印刷・描画指示命令を表したＤＤＩ関数を変換・生成して、ディスパッチャ１２０４に送る。
【００９３】
ディスパッチャ１２０４は、各ＰＤＬに対応したプリンタドライバ１２０５に前記ＤＤＩ関数を送り、プリンタドライバ１２０５において、印刷制御命令を生成・変換し、前記オペレーティングシステムが有するシステムスプーラ１２０６から、プリンタ１２０７に送信し、ドキュメント出力を行なうよう動作する。
【００９４】
したがって、本実施形態によれば、インターネット環境でインターネット上にある複数のプリンタの中から、目的のプリンタの他、ジョブ・スケジューリング監視により印刷待機時間の少ないプリンタ、あるいは印刷要求を出すクライアントに設置場所に近いプリンタを選択・指定することが可能となる。また、出力しようとするドキュメントに最適な各種属性設定情報データファイルを作成および変換し、インターネット上のプリントサーバから複数のクライアントに配信し、同一あるいは同様なドキュメントに対してこの印刷属性設定データファイル使用してドキュメント印刷を行なうことができるので、効率的かつ簡便、低価格で最適なドキュメント印刷環境を実現する印刷制御システムを提供することが可能となる。
【００９５】
＜第２の実施形態＞
本発明の第２の実施形態では、印刷属性設定データをあらかじめプリントサーバ上で作成、保存しておき、インターネット上の遠隔地にあるクライアントから特定のドキュメントデータを再度出力させる旨の指示があったとき、その指示に応じて印刷属性設定データがプリントサーバからクライアントに配信される。従って、印刷属性設定データが配信されたクライアントは、その印刷属性設定データに基づいて当該特定のドキュメントデータの印刷指示を行うことが可能となる。
【００９６】
本実施形態は、定型業務で出力するような決まったフォーマットの伝票、帳票などの印刷時に使用した場合に好適であり、定型業務向けの属性設定データをプリントサーバに登録しておくことで、プリントサーバの印刷属性設定データの作成動作を省略することが可能となり、処理の効率化を図ることが可能となる。
【００９７】
＜第３の実施形態＞
本発明の第３の実施形態では、印刷属性設定データを予めサーバ上に保存しておき、クライアントからのドキュメント印刷指示により、自動的にクライアントに印刷属性設定データファイルを配信する。
【００９８】
クライアントのホストシステム上のプリンタドライバで自動的に上記属性設定データファイルを読み込み、印刷制御処理を行なってドキュメントの印刷を行なうことで、印刷業務の効率化を図ることが可能となる。
【００９９】
＜第４の実施形態＞
本発明の第４の実施形態では、図３のインターネット・ブラウザで展開されるユーザインタフェースに替えて、プリンタドライバ上のユーザインタフェースで作成した属性設定データをインターネットを使ってプリントサーバに送信する。
【０１００】
＜第５の実施形態＞
本発明の実施形態５では、図４に示すホストシステムとプリンタ間を接続するイーサネット（Ｒ）・インタフェースに代えて、セントロニクス準拠の入出力パラレル・インタフェース、ＲＳ−２３２Ｃ準拠、ＲＳ−４２４準拠の入出力シリアル・インタフェースあるいはＳＣＳＩインタフェースを使って、図４に示すホストシステム４００のプログラムメモリ（ＲＡＭ）４０６上にあるプリンタドライバ及びプリンタ４１２とデータのやりとりを行なう。
【０１０１】
＜第６の実施形態＞
本発明の第６の実施形態では、構内ネットワークで実施されるイントラネット環境で実現する。
【０１０２】
以上のように、本発明の実施形態によれば、インターネット環境において、サーバから配信される印刷属性設定データに基づいて印刷制御処理を施し、ドキュメント出力を行なうことによって、インターネットの特長の１つである低価格な使用料ですむ公衆回線あるいは専用回線を使用することが可能になる。これにより、遠隔地とを結ぶネットワーク用の専用回線及びこれを管理するための設備に比べ、低コストのプリンティングシステムが提供できる。
【０１０３】
また、インターネット環境において、インターネット・ブラウザからの印刷属性設定データの作成、送信、受信が可能になり、簡便な操作で、かつ目的のドキュメントを目的プリンタ、あるいはジョブ・スケジューリングによって待機時間の少ないプリンタや設置場所が近いプリンタに印刷出力するために、最適な印刷属性設定を作成・変換し、ドキュメント出力が行なえるため、印刷作業の効率化が図ることができる。
【０１０４】
さらに、代替プリンタを検索・選択する際に、当初目的としたプリンタとは異なるＰＤＬを搭載するプリンタにも、目的のドキュメントを出力することが可能となり、代替プリンタの選択肢が増え、さらに最適かつ印刷作業の効率化が図ることができる。
【０１０５】
＜その他の実施形態＞
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【０１０６】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０７】
プログラムコードを供給するための記億媒体としては、例えば、フレキシブルディスク、ハードディスク、光磁気ディスク、光ディスク、ＣＤ−Ｒ０Ｍ、ＣＤ−Ｒ、磁気テープ不揮発性のメモリカード、Ｒ０Ｍなどを用いることができる。
【０１０８】
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０１０９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ポードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施期待の機能が実現され得る。
【０１１０】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体からそのプログラムをパソコン通信など、通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
【０１１１】
ここで、本発明の実施態様の例を以下に列挙する。
［実施態様１］出力対象の情報を出力させる出力装置を任意に選択可能な外部装置から、その選択内容を示す選択情報とともに前記出力対象の情報の出力要求を受信する出力要求受信手段と、
前記選択情報に示される第１の出力装置における情報の出力状況を監視する監視手段と、
前記監視手段による監視結果に応じて第２の出力装置を検索する検索手段と、前記検索手段により検索された前記第２の出力装置に前記出力対象の情報を出力させる出力制御手段とを有することを特徴とする出力制御装置。
【０１１２】
［実施態様２］前記検索手段は、前記第２の出力装置として、前記第１の出力装置に最も近い位置に設置される出力装置を検索することを特徴とする実施態様１に記載の出力制御装置。
【０１１３】
［実施態様３］少なくとも複数の出力装置と前記各出力装置の設置場所とを対応付けたテーブルを有し、
前記検索手段は、前記テーブルを参照することにより、前記第１の出力装置に最も近い位置に設置される前記第２の出力装置を検索することを特徴とする実施態様２に記載の出力制御装置。
【０１１４】
［実施態様４］前記第１の出力装置に前記出力対象の情報を出力させる上での一又は複数の制御条件を設定するための設定情報を、前記外部装置から受信する設定情報受信手段と、
前記設定情報受信手段にて受信された前記設定情報を、前記検索手段により検索された前記第２の出力装置向けの設定情報に変換する設定情報変換手段を有することを特徴とする実施態様１に記載の出力制御装置。
【０１１５】
［実施態様５］前記設定情報変換手段は、前記第１の出力装置及び前記第２の出力装置間において前記出力対象の情報の出力結果が同様となるように前記設定情報を前記第２の出力装置向けの設定情報に変換することを特徴とする実施態様４に記載の出力制御装置。
【０１１６】
［実施態様６］前記第１の出力装置及び前記第２の出力装置の夫々に搭載されるページ記述言語が異なる場合、前記出力対象の情報の中間コードを送信可能な前記外部装置から、前記中間コードを受信する中間コード受信手段を有し、
前記出力制御手段は、前記中間コードに基づいて前記第２の出力装置に対する前記出力対象の情報の出力制御を行うことを特徴とする実施態様１に記載の出力制御装置。
【０１１７】
［実施態様７］前記設定情報は、前記第１の出力装置の機種仕様に依存した属性を設定するための情報であることを特徴とする実施態様４に記載の出力制御装置。
【０１１８】
［実施態様８］前記設定情報は、前記出力対象情報の出力形態に依存した属性を設定するための情報であることを特徴とする実施態様４に記載の出力制御装置。
【０１１９】
［実施態様９］前記出力対象の情報を出力させる上での一又は複数の制御条件を設定するための設定情報を保持する保持手段と、
前記外部装置から既に前記出力対象の情報の出力指示を受けており、且つ他の外部装置から前記出力対象の情報の出力指示を再度受け付けた場合、前記保持手段に保持される前記設定情報を前記他の外部装置に対して配信する配信手段とを有することを特徴とする実施態様１に記載の出力制御装置。
【０１２０】
［実施態様１０］前記出力対象の情報を出力させる上での一又は複数の制御条件を設定するための設定情報を保持する保持手段と、
他の外部装置から前記設定情報の配信要求を受け付けた場合、前記保持手段に保持される前記設定情報を前記他の外部装置に対して配信する配信手段とを有することを特徴とする実施態様１に記載の出力制御装置。
【０１２１】
［実施態様１１］少なくとも前記外部装置とはインターネットを介して接続され、前記インターネットを通じて前記外部装置との前記各種情報の送受信を行うことを特徴とする実施態様１〜１０の何れか１項に記載の出力制御装置。
【０１２２】
［実施態様１２］複数の装置が互いに通信可能に接続されてなる通信システムであって、
前記複数の装置のうち少なくとも１つの装置は、実施態様１〜１１の何れか１項に記載の出力制御装置の機能を有することを特徴とする通信システム。
【０１２３】
［実施態様１３］出力対象の情報を出力させる出力装置を任意に選択可能な外部装置から、その選択内容を示す選択情報とともに前記出力対象の情報の出力要求を受信するステップと、
前記選択情報に示される第１の出力装置における情報の出力状況を監視手段にて監視するステップと、
前記監視手段による監視結果に応じて第２の出力装置を検索手段にて検索するステップと、
出力制御手段が前記検索手段により検索された前記第２の出力装置に前記出力対象の情報を出力させるステップとを含むことを特徴とする出力制御方法。
【０１２４】
［実施態様１４］実施態様１３に記載の出力制御方法をコンピュータに実行させるためのプログラム。
【０１２５】
［実施態様１５］実施態様１４に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１２６】
本発明の実施態様は、以上の構成を備えることにより、外部装置から当初選択された第１の出力装置における情報の出力状況を監視し、その監視結果に応じて情報の出力制御対象を第２の出力装置に切り換えることを可能にしたので、情報を出力するまでの待機時間を低減し、情報の出力作業の効率化を図ることが可能となる。
【０１２７】
また、上記実施態様によれば、第２の出力装置が第１の出力装置と異なるページ記述言語を搭載する場合には、第１の出力装置における情報出力に係る設定情報を第２の出力装置向けに変換するように構成したので、代替出力装置の選択肢が増え、さらに情報の出力作業の効率化を図ることが可能となる。
【０１２８】
さらに、上記実施態様によれば、インターネットを用いて本発明の動作に必要な各種情報の送受信を行うように構成したので、インターネットの特徴の１つである低価格な使用量で済む公衆回線或いは専用回線を使用することが可能となり、遠隔地とを結ぶネットワーク用の専用回線及びこれを管理するための設備を備えるシステムに比べて、例えば出力対象の情報としてドキュメントデータを印刷させるための通信システム等を安価に提供することが可能となる。
【０１２９】
【発明の効果】
以上の説明から明らかなように、本発明によれば、外部装置から当初選択された第１の出力装置における情報の出力状況を監視し、その監視結果に応じて情報の出力制御対象を第２の出力装置に切り換えることを可能にしたので、情報を出力するまでの待機時間を低減し、情報の出力作業の効率化を図ることが可能となる。
【図面の簡単な説明】
【図１】本発明の第１〜第６の実施形態に共通のシステム構成を示した図である。
【図２】プリンタ機種とプリンタ設置場所を対応付けたデータベース構成を示した図である。
【図３】プリントサーバの配線制御プログラムによりクライアント上で表示される属性設定ユーザインタフェース及び属性設定ファイルの構成例を示した図である。
【図４】プリントサーバとプリンタの接続構成の一例を示した図である。
【図５】本発明の第１の実施形態に係る制御処理の処理手順を示した図である。
【図６】本発明の第１の実施形態に係る制御処理の処理手順を示した図である。
【図７】本発明の第１の実施形態に係る制御処理の処理手順を示した図である。
【図８】本発明の第１の実施形態に係る制御処理の処理手順を示した図である。
【図９】本発明の第１の実施形態に係る制御処理の処理手順を示した図である。
【図１０】本発明の第１の実施形態に係る制御処理の処理手順を示した図である。
【図１１】図４のプリントサーバのプログラムメモリ上にあるプリンタ制御プログラムによる処理フローを示した図である。
【図１２】クライアントが最終的にプリンタに送信される印刷データとは異なる形式の中間コードを生成し、プリントサーバに送信する処理動作と、プリントサーバにおいて中間データファイルを再度印刷データとして前記印刷制御プログラムに入力して再生し、プリンタドライバによってプリンタにドキュメントを出力させる処理動作の流れを示した図である。
【符号の説明】
１００  インターネット・ウェブサーバ
１０１  データファイル
１０２  プリントサーバ
１０３  データファイル
１０４  高速・大容量プリンタ
１０５  高速・大容量プリンタ
１０６  カラープリンタ
１０７  カラープリンタ
１０８  ワークステーション
１０９  データファイル
１１０  クライアント・パーソナルコンピュータ
１１１  データファイル
１１２  パーソナルプリンタ
１１３  クライアント・パーソナルコンピュータ
１１４  データファイル
１１５  サーバ
１１６  データファイル
１１７  パーソナルプリンタ
１１８  クライアント・パーソナルコンピュータ
１１９  データファイル
１２０  クライアント・パーソナルコンピュータ
１２１  データファイル
１２２  クライアント・パーソナルコンピュータ
１２３  データファイル
【図１】
2004151870.tif 000003
【図２】
2004151870.tif 000004
【図３】
2004151870.tif 000005
【図４】
2004151870.tif 000006
【図５】
2004151870.tif 000007
【図６】
2004151870.tif 000008
【図７】
2004151870.tif 000009
【図８】
2004151870.tif 000010
【図９】
2004151870.tif 000011
【図１０】
2004151870.tif 000012
【図１１】
2004151870.tif 000013
【図１２】
2004151870.tif 000014