JP2003022172A - プリントサーバ装置およびその制御方法 - Google Patents

プリントサーバ装置およびその制御方法

Info

Publication number
JP2003022172A
JP2003022172A JP2001205017A JP2001205017A JP2003022172A JP 2003022172 A JP2003022172 A JP 2003022172A JP 2001205017 A JP2001205017 A JP 2001205017A JP 2001205017 A JP2001205017 A JP 2001205017A JP 2003022172 A JP2003022172 A JP 2003022172A
Authority
JP
Japan
Prior art keywords
printer
print job
print
print server
proxy
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2001205017A
Other languages
English (en)
Inventor
Masamichi Oshima
正道 大島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2001205017A priority Critical patent/JP2003022172A/ja
Publication of JP2003022172A publication Critical patent/JP2003022172A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

(57)【要約】 【課題】 プリンタの状態を監視し、それに応じてプリ
ントジョブの送信先を変更する代行印刷サービスを提供
するプリントサーバにおいて、ユーザやクライアントP
C毎に代行プリンタを設定可能とすることにより、プリ
ントサーバの管理のし易さやユーザにとっての利便性を
損なうことなく変更先の設定をより柔軟に行うことの可
能なプリントサーバ装置を提供すること。 【解決手段】 プリントサーバ装置はプリントジョブに
指定されたデフォルトのプリンタが印刷可能な状態かど
うかを検出し(S605)、印刷不能な場合にはジョブ
の発行ユーザに対応して予め代行プリンタが登録された
代行プリンタ情報テーブルを参照して代行プリンタを決
定する(S606)。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】本発明は、コンピュータネッ
トワークで用いられるプリントサーバ装置(以下、単に
プリントサーバともいう)に関し、特に代行印刷サービ
スを提供するプリントサーバ装置およびその制御方法に
関する。
【0002】
【従来の技術】近年、印刷品位の高いレーザービームプ
リンタが、印刷そのものを業務としないオフィスでも一
般的に使用されるようになってきた。また低価格化が進
んだため、一つのオフィスで複数のプリンタを使用する
ケースも珍しくない。一方、オフィスで利用されるコン
ピュータのネットワーク化の進展も著しい。それらが相
まって、オフィスで複数のプリンタをネットワーク上で
共有して利用する形態が広まっている。そして、ネット
ワーク上の複数の共用プリンタを有効に利用するための
プリントサーバが提案されてきている。
【0003】以下、プリントサーバを用いたネットワー
クプリントシステムについての一般的な説明をまず行
う。図1は、ネットワークプリントシステムの全体構成
を示す図で、開放型アーキテクチャを持つプリンタ10
2が、ネットワークインタフェース(NIC)101を
介し、共用プリンタとしてローカルエリアネットワーク
(LAN)100へ接続された場合を示す図である。N
B101は例えばEthernetであるLAN100
へ、同軸コネクタ(10Base−2)やRJ−45コ
ネクタ(10/100Base−T)によって接続され
ている。
【0004】例えばパーソナルコンピュータ(PC)か
ら構成されるプリントサーバ108は、ローカル接続さ
れた複数のプリンタ109、または遠隔地にあるプリン
タ105などのプリンタに印刷を行わせる。また、他の
図示しない周辺機器をLAN100に接続してもよい。
【0005】PC103、PC104のような、パーソ
ナルコンピュータ(PC)もまた、LAN100に接続
されており、ネットワークオペレーティングシステムの
制御のもと、これらのPCはプリントサーバ108と通
信することができる。従って、PCの1つ、例えばPC
103はプリンタ102で印刷を実行させたい場合、自
らNB101および(NB101を介して)プリンタ1
02と通信してプリントデータや制御情報のやり取り行
わなくとも、例えば以下のようにプリントサーバ108
にそれらの作業を任せることができる。
【0006】すなわち、PC103はそのアプリケーシ
ョン等で作成されたプリントジョブのデータをプリンタ
102ではなくプリントサーバ108へ送る。プリント
サーバ108は送られてきたプリントジョブのデータを
ハードディスク等のローカルなデータ保存領域(図示せ
ず)に一時的に保持する。
【0007】プリントサーバ108はローカルな保存領
域を利用して複数のプリントジョブを受け付けることが
可能である。そして、複数のプリントジョブが処理待ち
状態で保持されている場合、プリントサーバ108は所
定の方針に従って次に処理すべきプリントジョブを決定
する。
【0008】プリントサーバ108は、次に処理すべき
と決定したプリントジョブのデータを保存領域から読み
出し、NB101を介してプリンタ102へ、あるいは
プリンタ109の1つに送信する。この時プリントサー
バ108は、プリントジョブのデータを、プリンタ10
2又は109がサポートするページ記述言語(PDL)
および制御コマンドにプリンタドライバを用いて変換し
て送信することがある。
【0009】PC103、104及びプリントサーバ1
08は、それぞれデータファイルの生成や、生成したデ
ータファイルのLAN100への送信や、また、LAN
100からのファイルの受信や、更に、それらのファイ
ルの表示および/または処理を行うことができる、一般
的なPCにより構成される。図1ではパーソナルコンピ
ュータ機器が示されているが、ネットワークソフトウェ
アを実行するのに適切であるような、他のコンピュータ
機器を含んでもよい。例えば、UNIX(登録商標)の
ソフトウェアを使用している場合に、UNIXワークス
テーションをネットワークに含んでも良く、これらのワ
ークステーションは、適切な状況下で、図示されている
PCと共に使用することができる。
【0010】通常、LAN100などのLANは、1つ
の建物内の1つの階または連続した複数の階でのユーザ
グループ等の、比較的ローカルなユーザグループにサー
ビスを提供する。例えば、ユーザが他の建物や他県に居
るなど、あるユーザが他のユーザから離れるに従って、
ワイドエリアネットワーク(WAN)を作ってもよい。
WANは、基本的には、いくつかのLANをサービス総
合ディジタルネットワーク(ISDN)などの高速ディ
ジタル回線で接続することにより形成された集合体であ
る。従って、図1に示すように、LAN100、LAN
110、LAN120とは、モデム/トランスポンダ1
30およびバックボーン140を介して接続され、WA
Nを形成する。
【0011】それぞれのLANは、専用のPCを含み、
また、必要に応じて、ファイルサーバやプリントサーバ
を含むこともある。図1に示すように、LAN110
は、PC111、PC112、ファイルサーバ113、
ネットワークディスク114、プリントサーバ115、
プリンタ116を含む。また、LAN120はPC12
1とPC122のみを含む。LAN100、LAN11
0およびLAN120に接続されている機器は、WAN
接続を介して他のLANに接続された機器の機能にアク
セスすることができる。
【0012】プリントサーバ108のようなプリントサ
ーバをネットワークプリントシステムに設けることで次
のようなメリットが生まれる。第1に、各クライアント
PCで行う個々のプリンタに依存した処理を最小限に
し、その分の負荷をプリントサーバに負わせることがで
きる。それにより、クライアントPCでユーザがドキュ
メントの印刷を行う時のクライアント側の処理時間、す
なわちユーザの待ち時間が短くてすむ。
【0013】例えば、基本ソフト(OS)として、Micr
osoft Windows(以降単にWindowsと略す)を用いた環境
でプリントサーバを用いて印刷を行う場合、図2に示す
ように、PC103のようなクライアントPCでは、プ
リンタが直接処理可能なプリンタ固有の(そのプリンタ
固有の制御コマンドを含む)データファイルではなく、
プリンタに依存しないを中間ファイルを生成し、それを
プリントサーバに送る。そして、プリントサーバ側でこ
の中間ファイルからプリンタ固有のデータを生成し、プ
リンタに送信する。従って、クライアントPCの印刷処
理は軽減される。
【0014】プリントサーバを設ける第2のメリットと
して、付加価値のあるプリントジョブ処理が可能となる
点がある。例えば、プリントジョブごとに処理の優先順
序を設定し、複数のプリントジョブが同時に処理待ちに
なった時にプリントジョブの持つ優先順序に応じて処理
順序を決めることによって、急いで印刷する必要のある
ドキュメントを優先的に印刷することが可能になる。ま
た、クライアントPCから受け取ったプリントジョブを
送信しようとしたプリンタでエラーが発生していたら他
のプリンタを選択して代わりに印刷させるといった代行
印刷サービス、あるいは印刷時間短縮のために一つのプ
リントジョブを論理的に分割し、それらを複数のプリン
タに並行して印刷させるといった分散印刷サービスなど
の提供も可能となる。
【0015】この他にもプリントサーバを用いたネット
ワークプリントシステムを構築することのメリットはあ
るが、本発明に直接関係がないので上記に留めておく。
その代わり、本発明は上述の代行印刷サービスに関連す
るので、以下に代行印刷サービスに関してさらに詳細に
説明する。
【0016】OSにWindowsを用いたネットワーク環境
を有するネットワークプリントシステムでプリントサー
バを用いる場合、システム管理者はプリントサーバ上に
一つまたは複数のプリンタオブジェクトを用意する。一
方、クライアントPC上にはプリントサーバに用意され
たプリンタオブジェクトに対応するプリンタオブジェク
トを作成しておく。ここで言うプリンタオブジェクトと
は、物理的なプリンタをWindows上でモデル化したもの
であり、ドキュメントデータをプリンタに送信すべきデ
ータに変換する際に使用するプリンタドライバやプリン
トジョブデータの出力先など諸々の情報を管理してい
る。またWindowsが稼働するクライアントPCのユーザ
は、アプリケーションプログラムが印刷を行うとき、プ
リンタオブジェクトを指定して印刷の指示を出す。
【0017】クライアントPCのユーザが、クライアン
トPC上で実行しているアプリケーションから印刷を指
示すると、クライアントPCで稼動しているWindowsは
アプリケーションプログラムから受け取った描画コマン
ドをEMF形式と呼ばれるデータ形式に変換する。EM
F形式は、WindowsのGDIと呼ばれるデバイス非依存
なグラフィックスシステムの特徴を引き継いでおり、デ
バイスに依存するコマンドや情報を含まない。そして、
クライアントPC上のWindowsはEMF形式に変換され
たプリントジョブデータをプリントサーバに転送する。
【0018】プリントサーバ側のWindowsは受信したE
MF形式のプリントジョブデータを一時ハードディスク
等の記憶装置上に保存する。その後、プリントサーバ上
のWindowsはEMF形式のプリントジョブデータを読み
出し、印刷しようとするプリンタのプリンタドライバを
用いて、そのプリンタがサポートするページ記述言語
(PDL)のデータ形式に変換する。
【0019】続いて、変換されたデータをプリントモニ
タと呼ばれるモジュールを介してプリンタ(NB10
1)に送信する。プリンタ102は、ネットワークイン
タフェースであるNB101を介してPDL形式のプリ
ントジョブデータを受け取り、PDLを解釈して印刷を
行う(詳細については、Windowsの各バージョンについ
て発行されている「リソースキット」と呼ばれる出版物
に譲る)。
【0020】上記のようなWindowsのプリンティングシ
ステムの構造に着目して、サードパーティにより次に説
明するような機能拡張が行われている。すなわち、プリ
ントサーバ上のWindowsで作成されているプリンタオブ
ジェクトには、物理的なプリンタにプリントジョブデー
タを転送するプログラムモジュールとしてプリントモニ
タモジュールが通常設定されるが、このプリントモニタ
モジュールをプリントサーバ上で動作する他のプリント
サービスプログラムに渡すモジュールに置き換える。
【0021】このモジュールはプリントジョブデータを
プリンタには送信せず、例えばハードディスク上にファ
イルとして保存する。そして、プリントサービスプログ
ラムは、このファイルを読み出してプリントジョブデー
タを入手し、独自の処理を行ってからプリンタにプリン
トジョブデータを送信する。こうすることによって、こ
のプリントサービスプログラムは、Windowsが持ってい
ない機能をプリントサーバの機能として付加することが
できる。
【0022】上述の代行印刷機能は、この機能拡張を利
用したものである。代行印刷機能は、プリントジョブを
送信しようとしたプリンタで印刷不能状態を引き起こす
エラーが発生している場合に、他の正常状態のプリンタ
に送信先を変更して印刷させるものである。印刷不能状
態を引き起こすエラーとしては、例えば用紙詰まり、ト
ナー切れ等が挙げられる。プリンタはそのようなエラー
が発生していても、プリントジョブデータの受け付けは
可能であることが多い。
【0023】機能拡張を行っていない、通常のWindows
の処理では、送信先のプリンタに印刷不能状態を引き起
こすエラーが発生していても、プリンタがプリントジョ
ブデータを受信することができれば送信する。しかしな
がら、当然ながらプリンタでは前記のエラーが解除され
ない限りそのプリントジョブを実行して印刷することは
できない。
【0024】一方、プリントジョブ代行印刷機能をサポ
ートするプリントサービスソフトウェアは、プリンタの
状態を例えばSNMP(Simple Network Management Pro
tocol)等のプロトコルを用いて定期的に監視する。そし
て、あるプリンタへのプリントジョブを受け取ると、そ
のデータをプリンタに送信する前に、そのプリンタの印
刷状態を確認する。
【0025】確認の結果、プリンタが印刷可能な状態で
あればプリントジョブデータを送信するが、もしプリン
タでエラーが発生して印刷不能な状態であれば、そのプ
リンタの代行プリンタとして予め登録されている送信先
にプリントジョブデータを送信する。代行プリンタは、
そのプリントジョブが投入されたプリンタオブジェクト
ごとにプリントサービスソフトウェア内に登録されてい
る。例えば、「プリンタオブジェクトXに投入されたプ
リントジョブは通常プリンタAに送信するが、プリンタ
Aが印刷不能な場合はプリンタBまたはCに送信す
る。」という形でプリントサーバの管理者がプリントサ
ービスソフトウェアに登録しておくのである。
【0026】
【発明が解決しようとする課題】このように、従来のプ
リントジョブ代行印刷機能を持つプリントサービスソフ
トウェアでは、プリンタオブジェクトに関連して代行プ
リンタが設定されていた。一方、代行印刷に使用するこ
とのできるプリンタが複数存在する場合、それらの性能
差や設置場所等の要因から、どのプリンタで代行印刷を
させたいかはユーザによって異なる場合がある。しかし
ながら、従来はプリントサーバの管理者がプリンタオブ
ジェクト単位で設定した代行プリンタを用いた代行印刷
しかできないため、ユーザが別のプリンタでの代行印刷
を希望してもその要求を満足させることができない。す
なわち、どのプリンタで代行印刷させるかはユーザの希
望とは無関係に、かつプリンタオブジェクトごとに一種
類の設定しかできない。同一のプリンタに対応させて、
異なる代行プリンタを設定したプリンタオブジェクトを
複数用意することは可能であるが、ユーザからみた場合
も管理者にとってもプリンタオブジェクトの識別が難し
くなり、使用面・管理面の双方において煩雑さが伴うこ
とになる。
【0027】
【課題を解決するための手段】本発明はこのような従来
技術の問題点に鑑みなされたものであり、その目的は、
プリンタの状態を監視し、それに応じてプリントジョブ
の送信先を変更する代行印刷サービスを提供するプリン
トサーバ装置において、ユーザやクライアントPC毎に
代行プリンタを設定可能とすることにより、プリントサ
ーバの管理のし易さやユーザにとっての利便性を損なう
ことなく変更先の設定をより柔軟に行うことが可能なプ
リントサーバ装置およびその制御方法を提供することに
ある。
【0028】すなわち、本発明の要旨は、ネットワーク
上の複数のクライアント端末からプリントジョブを受け
取り、各プリントジョブを複数のプリンタのうち所定の
プリンタに送信するプリントサーバ装置であって、複数
のクライアントからプリントジョブを受け取るプリント
ジョブ入力手段と、プリントジョブ入力手段が受け取り
得るプリントジョブの発行元情報と、複数のプリンタの
いずれかを対応付けして記憶する記憶手段と、プリント
ジョブ入力手段が受け取ったプリントジョブに基づき、
当プリントジョブを印刷すべき第1のプリンタを複数の
プリンタから選択する第1のプリンタ選択手段と、第1
のプリンタの動作状態を検出する第1の状態検出手段
と、第1のプリンタの動作状態が正常状態でない場合、
記憶手段において、プリントジョブ入力手段が受け取っ
たプリントジョブの発行元情報に対応するプリントジョ
ブの発行元情報に対応づけられているプリンタを第2の
プリンタとして選択する第2のプリンタ選択手段と、プ
リントジョブ入力手段が受け取ったプリントジョブを、
第2のプリンタに送信する送信手段とを有することを特
徴とするプリントサーバ装置に存する。
【0029】また、本発明の別の要旨は、ネットワーク
上の複数のクライアント端末からプリントジョブを受け
取り、各プリントジョブを複数のプリンタのうち所定の
プリンタに送信するプリントサーバ装置の制御方法であ
って、複数のクライアントからプリントジョブを受け取
るプリントジョブ入力ステップと、プリントジョブ入力
ステップが受け取り得るプリントジョブの発行元情報
と、複数のプリンタのいずれかを対応付けして記憶手段
に記憶するステップと、プリントジョブ入力ステップが
受け取ったプリントジョブに基づき、当プリントジョブ
を印刷すべき第1のプリンタを複数のプリンタから選択
する第1のプリンタ選択ステップと、第1のプリンタの
動作状態を検出する第1の状態検出ステップと、第1の
プリンタの動作状態が正常状態でない場合、記憶手段か
ら、プリントジョブ入力ステップが受け取ったプリント
ジョブの発行元情報に対応するプリントジョブの発行元
情報に対応づけられているプリンタを第2のプリンタと
して選択する第2のプリンタ選択ステップと、プリント
ジョブ入力ステップが受け取ったプリントジョブを、第
2のプリンタに送信する送信ステップとを有することを
特徴とするプリントサーバ装置の制御方法に存する。
【0030】また、本発明の別の要旨は、コンピュータ
装置を本発明のプリントサーバ装置として機能させるこ
とを特徴とするプログラムに存する。
【0031】また、本発明の別の要旨は、コンピュータ
装置を本発明のプリントサーバ装置として機能させるプ
ログラムを格納したコンピュータ装置読みとり可能な記
憶媒体に存する。
【0032】
【発明の実施の形態】以下、図面を参照して、本発明を
その好適な実施形態に基づき詳細に説明する。図3は、
本発明の一実施形態にかかるプリントサーバとして用い
ることのできるパーソナルコンピュータ(PC)300
の構成例を示すブロック図である。PC300は、RO
M302もしくはハードディスク(HD)311に記憶
された、あるいはフロッピー(登録商標)ディスク(F
D)312より供給されるプリントサーバプログラムを
実行するCPU301を備え、システムバス304に接
続される各デバイスを総括的に制御する。
【0033】303はRAMで、CPU301の主メモ
リ、ワークエリアなどとして機能する。305はキーボ
ードコントローラ(KBC)で、キーボード(KB)3
09や不図示のポインティングデバイスなどからの指示
入力を制御する。306はCRTコントローラ(CRT
C)で、CRTディスプレイ(CRT)310の表示を
制御する。307はディスクコントローラ(DKC)
で、ブートプログラム、種々のアプリケーション、編集
ファイル、ユーザファイル、およびプリントサーバプロ
グラムなどを記憶するハードディスク(HD)311お
よびフロッピーディスク(FD)312とのアクセスを
制御する。308はネットワークインタフェースカード
(NIC)で、PC300はNIC308を介してLA
N100に接続された他のPCやプリンタ等と双方向に
データをやりとりする。
【0034】ハードディスク(HD)311には、PC
300を本実施形態に係るプリントサーバとして機能さ
せるプリントサーバプログラムが格納される。後述のす
べての説明において、特に断りのない限り、実行の主体
はハード上はCPU301である。一方、ソフトウェア
上の制御の主体は、ハードディスク(HD)311に格
納されたプリントサーバソフトウェアである。本実施形
態において、PC300で稼働するOSは例えば、Wind
owsNT 4.0 Server(米マイクロソフト社製)を想定して
いるが、これに限るものではない。
【0035】なお、プリントサーバプログラムは、フロ
ッピーディスクやCD−ROMなどの記憶媒体に格納さ
れた形で供給されても良く、その場合には図2に示すフ
ロッピーディスク(FD)312または不図示のCD−
ROMドライブなどによって記憶媒体からプログラムが
読み取られ、ハードディスク(HD)311にインスト
ールされる。
【0036】図4は図3に示したPC300がプリント
サーバ403として機能する場合の内部的なソフトウェ
アモジュール構成をより詳しく示した図である。なお、
以下の説明においては、説明を簡単にするため、図4に
示したネットワークプリントシステムのプリントサーバ
403として図3のPC300を用いた場合を想定して
いる。
【0037】すなわち、プリントサーバ403が接続さ
れるLAN401にはクライアントPC420、421
および422と、図1におけるプリンタ102およびN
IC101をあわせた構成を有するネットワークプリン
タ416、417および418が接続されている。
【0038】また、クライアントとして動作するPC4
20、421および422も構成自体はPC300と同
一であり、またOSにはWindowsNT4.0 Workstation(米
マイクロソフト社製)を用いているとする。また、LA
N401はEthernet(米Xerox社の商標)およびT
CP/IPをプロトコルとして用いるものとする。
【0039】さらに、プリンタ416、417および4
18はTCP/IPをプロトコルとして用いたネットワ
ーク環境で広く使われるLPD(Line Printer Daemon P
rotocol)の機能を持つものとする。LPDを利用した印
刷では、クライアント上で動作するLPRと呼ばれるプ
ログラムが、TCP/IPプロトコルを使用してネット
ワークを介してプリントジョブデータを送信する。プリ
ンタ416、417および418に内蔵されたネットワ
ークインタフェースがそのデータを受信し、それをプリ
ンタ内部のプリンタコントローラに渡す。プリンタコン
トローラはそのデータを解釈し、プリンタエンジンに制
御情報・信号を与えて印刷させる。
【0040】次に、プリントサーバ403内部のソフト
ウェアモジュールおよびその動作について説明する。ル
ータ404はLAN401を経由してクライアントPC
420からEMF形式のプリントジョブデータを受け取
る。そして、受け取ったプリントジョブデータをプリン
トプロセッサ405に渡す。
【0041】プリントプロセッサ405は、EMF形式
のファイルを解析し、GDIモジュール406のAPI
関数を呼び出す。GDIモジュール406はAPI関数
呼び出しに応じてプリンタドライバ407を用い、プリ
ンタが解釈可能なPDL形式のファイルを生成する。そ
して、このPDL形式のファイルをスプールファイル4
08としてハードディスク上のスプールエリアに格納す
る。
【0042】ブリッジ409はスプールファイル408
をプリントジョブ送信マネージャ411に渡すためにフ
ァイルシステム(ハードディスク)中の別の場所に移動
する。プリントジョブ送信マネージャ411はスプール
ファイル408が移動されたことによりスプールファイ
ル408を検出し、このスプールファイルに含まれるジ
ョブIDから、このプリントジョブが投入されたプリン
タオブジェクトと、そのプリンタオブジェクトに設定さ
れている第1の送信先プリンタ(デフォルトのプリン
タ。本実施形態では、プリンタ416とする)を調べ
る。そして、デバイス状態モニタ412に対して第1の
送信先プリンタ416の状態を問い合わせることによ
り、プリンタ416の状態を入手する。
【0043】本実施形態では、プリンタ416にプリン
トジョブデータを送信するのにはプリントモニタ413
が使用される。またプリンタ417、418はプリンタ
416と同じプリントジョブデータを処理することので
きるプリンタで、プリントジョブ送信マネージャ411
は、プリンタ416が印刷できない時にそれらに印刷を
代行させる。プリンタ417、418にプリントジョブ
データを送信するにはプリントモニタ414、415が
それぞれ使用される。
【0044】デバイス状態モニタ412は、プリントジ
ョブ送信マネージャ411からの問い合わせとは無関係
に、あらかじめ定められた一定時間間隔で各プリンタ4
16、417、418の状態を調べている。そして、プ
リントジョブ送信マネージャ411から問い合わせがあ
った場合、その時点で最新の状態を応答する。
【0045】プリントジョブ送信マネージャ411は、
デバイス状態モニタ412から、プリンタ416が印刷
可能な状態であるとの通知を受けると、プリンタ416
に対応したプリントモニタ413にスプールファイル4
08のプリントジョブデータを渡し、プリンタ416に
送信するように指示する。一方、デバイス状態モニタ4
12から得た情報から、プリンタ416で印刷不可能な
エラーが発生していることがわかった場合には、スプー
ルファイル408のプリントジョブを指示したユーザを
調べ、予めプリントジョブ送信マネージャ411に登録
された代行プリンタ情報テーブル4111にそのユーザ
が登録されていれば、テーブルに指定された代行プリン
タを用いて代行印刷するよう、適切なプリントモニタに
プリントジョブデータを渡す。なお、プリントジョブを
発行したユーザはスプールファイル408のジョブID
を用いてOSに問い合わせることで知ることができる。
代行プリンタ情報テーブル4111の例を以下に示す。
【0046】 表1 ユーザ名 代行プリンタ(1) 代行プリンタ(2) kato プリンタ417 ogoshi プリンタ418 プリンタ417 ikeda なし
【0047】表1から明らかなように、代行プリンタ情
報テーブル4111にはユーザ名と代行プリンタとが対
応づけて登録されており、また1ユーザに複数の代行プ
リンタを登録可能である。1ユーザに複数の代行プリン
タが登録されている場合、優先順位をつけることも可能
である。例えば、上の表1では、代行プリンタ(1)が
代行プリンタ(2)よりも優先順位が高いものとしてプ
リントジョブ送信マネージャ411が取り扱うことによ
り、代行プリンタに優先順位を与えることが可能であ
る。代行プリンタ情報テーブルは、プリンタ毎に設けら
れ、第1の送信先プリンタとして選択されたプリンタが
印刷不能なエラー状態にある場合、そのプリンタに対応
した代行プリンタ情報テーブルを参照する。
【0048】このように、代行プリンタ情報テーブルを
用いることによって、例えばユーザが比較的大きな組織
で共用されるプリンタを利用する場合など、プリンタの
設置位置の関係からユーザによって便利なプリンタが違
う場合や、プリンタ417はプリンタ416と同じ解像
度だが印刷速度が遅く、プリンタ418は解像度が低い
が印刷速度がプリンタ417より速い場合などに、ユー
ザの希望に合わせて代行印刷を行うプリンタを決めるこ
とができる。あるいは、代行印刷をしないようにするこ
とも可能である。
【0049】なお、上記説明中で、デバイス状態モニタ
412がプリンタの状態を調べるのには、プリンタ内で
管理されているMIB(Management Information Base)
中のあるオブジェクトの値をSNMPプロトコルを用い
て取得し、それによって判断している。オブジェクトと
しては例えばhrPrinterDetectedErrorStateを用いる。
このオブジェクトでは、用紙無し、トナー無し、用紙詰
まり、カバーオープン等、プリンタが印刷不可能なエラ
ー状態にあるか否かを判断するために必要な状態を検出
することができる。
【0050】図5は図4のクライアントPC420、4
21および422において、プリントジョブを生成する
プログラムモジュールの構成例を示した図である。以下
の説明では代表としてクライアント420について説明
するが、他のクライアントPC421、422において
も同様の構成を有する。
【0051】アプリケーションプログラム503は、P
C420で稼働するOS(上述の通りWindowsNT4.0 Wor
kstationとする)にインストールされている1つのプリ
ンタオブジェクトを指定し、Windowsのグラフィックエ
ンジンであるGDI504を呼び出して描画情報を伝え
る。GDI504は指定されたプリンタオブジェクトに
関連付けられているプリンタドライバ505を用いなが
ら、渡された描画情報をEMF形式のDDIジャーナル
ファイル506に変換してWindowsのファイルシステム
(ハードディスク)に保存する。
【0052】保存されたDDIジャーナルファイル50
6をWindowsのスプーラの一部であるルータ507が読
み出す。ルータ507は、アプリケーションプログラム
503が印刷時に指定したプリンタオブジェクトの構成
情報から、このプリントジョブデータはプリントサーバ
403に転送すべきことを知り、リモートプリンタプロ
バイダ508にそのプリントジョブデータを渡して、プ
リントサーバ403のルータ(図4の404に相当)に
転送させる。以下、プリントサーバ側での処理は図4を
用いて説明した通りである。
【0053】図6は、図4のプリントサーバ403中の
プリントジョブ送信マネージャ410における処理の流
れを示すフローチャートである。まずプリントプロセッ
サ405が生成したプリントジョブのスプールファイル
408をブリッジ409から受け取る(ステップS60
1)。次に、受け取ったスプールファイルのもととなっ
ているプリントジョブの発行者を、スプールファイル4
08のジョブIDを用いてOSに問い合わせして調べる
(ステップS602)。続いて、このプリントジョブを
送信すべきプリンタ(第1の送信先プリンタ)を、プリ
ントジョブが指定したプリンタオブジェクトの管理する
情報をもとに決定する(ステップS603)。
【0054】次に、ステップS603で決定した、プリ
ントジョブデータを送信すべきプリンタの状態をデバイ
ス状態モニタ412から取得する(ステップS60
4)。プリンタが正常状態であったら(ステップS60
5)、プリントジョブデータを第1の送信プリンタに対
応したプリントモニタに送信する(ステップS61
0)。一方、ステップS604で取得した第1の送信先
プリンタの状態が印刷不可能なエラー状態であったら
(ステップS605)、代行印刷処理を行う。
【0055】すなわち、表1に示した代行プリンタ情報
テーブル4111からステップS602で調べたプリン
トジョブの発行者を検索し、その発行者について設定さ
れている代行プリンタを調べ、代行プリンタとして選択
する(ステップS606)。続いて、代行プリンタとし
て選択されたプリンタについて、ステップS604と同
様にプリンタの状態をデバイス状態モニタ412から取
得する(ステップS607)。プリンタが正常状態であ
ったら(ステップS608)、プリントジョブデータを
送信する(ステップS611)。もし印刷不能なエラー
状態であったら(ステップS608)、このプリントジ
ョブを待ち状態にする(ステップS609)。その後、
ステップS604に戻って処理を続ける。
【0056】なお、複数のプリンタが代行プリンタとし
て代行プリンタ情報テーブルに登録されている場合は、
優先順位の高い代行プリンタから優先順位の低い代行プ
リンタへステップS607およびS608の処理を繰り
返し、最初に正常状態であることが検出された代行プリ
ンタに対してプリントジョブデータを送信する。そし
て、すべての代行プリンタが印刷不能な場合のみ、ステ
ップS609へ移行する。
【0057】
【他の実施形態】上記実施形態では、プリントジョブを
発行したユーザに応じて代行印刷をさせるプリンタを決
定していたが、プリントジョブを発行したクライアント
PCの名前に応じて代行印刷をさせるプリンタを決定す
るように構成してもよい。この場合、代行プリンタ情報
テーブルは以下の表2のように構成される。
【0058】表2クライアントPC名称 代行プリンタ Heather プリンタ416 Lumina プリンタ417 Sunlight なし
【0059】この場合、図6のステップS602ではプ
リントジョブのユーザ名ではなく、プリントジョブを発
行したクライアント名を取得し、ステップS606では
上記表2の代行プリンタ情報テーブルからクライアント
名に対応するプリンタを代行プリンタを選択する。もち
ろん、表1に示したように、同一のクライアントに対し
て複数の代行プリンタを設定したり、複数の代行プリン
タに優先順位をつけることも可能である。
【0060】上述の実施形態においては、予め設定され
た代行プリンタ情報テーブルに基づいて代行プリンタを
決定していたが、このテーブルを動的に変更可能とすれ
ば、例えばジョブ毎に代行プリンタを変更することも可
能である。すなわち、上述のように、プリンタ417は
プリンタ416と同じ解像度だが印刷速度が遅く、プリ
ンタ418はプリンタ416より解像度が低いが印刷速
度がプリンタ417より速い場合に、解像度を重視する
ジョブについてはプリンタ417を、速度を重視するジ
ョブについてはプリンタ418を用いるように代行プリ
ンタ情報テーブルを変更することで、より適切な代行プ
リンタを選択できる。
【0061】この場合、代行プリンタ情報テーブルの変
更は専用のコマンドパケットをクライアントPCから送
信することによってプリントサーバが処理することも可
能であるし、プリントジョブデータに代行プリンタの指
定情報を含ませ、この情報に基づいてプリントジョブ送
信マネージャ411がテーブルの登録内容を変更しても
よい。ジョブデータ中に代行プリンタの指定情報を含ま
せる場合、代行プリンタ情報テーブルの変更は必ずしも
必要ない。また常にジョブデータ中に代行プリンタの指
定情報を含ませる場合には代行プリンタ情報テーブル自
体を不要とすることも可能であるが、ジョブの発生毎に
代行プリンタを指定する手間が発生するため、どの程度
動的に代行プリンタを変更する必要があるかに応じて構
成を決定すればよい。
【0062】また、上述の実施形態においては、プリン
タ毎に別個の代行プリンタ情報テーブルを設ける場合の
みを説明したが、以下のような1つの代行プリンタ情報
テーブルとすることも可能である。
【0063】 表3ユーザ名 第1の送信先プリンタ 代行プリンタ(1) 代行プリンタ(2) kato プリンタ417 プリンタ416 プリンタ418 kato プリンタ418 プリンタ417 ogoshi プリンタ417 なし ogoshi プリンタ418 プリンタ417 ikeda なし
【0064】すなわち、第1の送信先プリンタに関する
情報をテーブル中に含め、図6のステップS606で代
行プリンタを決定する際、ステップS602で取得した
ユーザ名およびステップS603で決定した第1の送信
先プリンタとを用いて代行プリンタ情報テーブルを検索
する。もちろん、表3におけるユーザ名をクライアント
PC名としてもよい。
【0065】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体(または記録媒体)を、システムあるい
は装置に供給し、そのシステムあるいは装置のコンピュ
ータ(またはCPUやMPU)が記憶媒体に格納された
プログラムコードを読み出し実行することによっても、
達成されることは言うまでもない。この場合、記憶媒体
から読み出されたプログラムコード自体が前述した実施
形態の機能を実現することになり、そのプログラムコー
ドそのものおよびプログラムコードを記憶した記憶媒体
は本発明を構成することになる。また、コンピュータが
読み出したプログラムコードを実行することにより、前
述した実施形態の機能が実現されるだけでなく、そのプ
ログラムコードの指示に基づき、コンピュータ上で稼働
しているオペレーティングシステム(OS)などが実際
の処理の一部または全部を行い、その処理によって前述
した実施形態の機能が実現される場合も含まれることは
言うまでもない。
【0066】さらに、記憶媒体から読み出されたプログ
ラムコードが、コンピュータに挿入された機能拡張カー
ドやコンピュータに接続された機能拡張ユニットに備わ
るメモリに書込まれた後、そのプログラムコードの指示
に基づき、その機能拡張カードや機能拡張ユニットに備
わるCPUなどが実際の処理の一部または全部を行い、
その処理によって前述した実施形態の機能が実現される
場合も含まれることは言うまでもない。
【0067】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明した(図6に示す)フローチ
ャートに対応するプログラムコードが格納されることに
なる。
【0068】
【発明の効果】以上説明してきたように、本発明によれ
ば、プリンタの状態を監視し、それに応じてプリントジ
ョブの送信先を変更する代行印刷サービスを提供するプ
リントサーバにおいて、ユーザやクライアントPC毎に
代行プリンタを設定可能とすることにより、プリントサ
ーバの管理のし易さやユーザにとっての利便性を損なう
ことなく変更先の設定をより柔軟に行うことが可能とな
る。
【図面の簡単な説明】
【図1】本発明によるプリントサーバを適用可能なネッ
トワークプリントシステムの全体構成例を示す図であ
る。
【図2】中間ファイルを利用したプリント処理の概要を
説明する図である。
【図3】本発明のプリントサーバとして動作可能なパー
ソナルコンピュータの構成例を示すブロック図である。
【図4】本発明の実施形態にかかるプリントサーバにお
いてプリントジョブ処理に用いられるソフトウェアモジ
ュールの構成例を示す図である。
【図5】クライアントPCにおいてプリントジョブ生成
に係わるソフトウェアモジュールの構成例を示す図であ
る。
【図6】図4のプリントジョブ送信マネージャの処理を
説明するフローチャートである。
【符号の簡単な説明】
100,110,120…ローカルエリアネットワーク
(LAN) 101…ネットワークボード(NB) 102,105,109,116…プリンタ 103,104,111,112,113,115,1
21,122…パーソナルコンピュータ(PC) 108…プリントサーバ 114…LAN110に含まれるネットワークディスク 130a,130b…モデム/トランスポンダ 140…バックボーン

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 ネットワーク上の複数のクライアント端
    末からプリントジョブを受け取り、各プリントジョブを
    複数のプリンタのうち所定のプリンタに送信するプリン
    トサーバ装置であって、 前記複数のクライアントから前記プリントジョブを受け
    取るプリントジョブ入力手段と、 前記プリントジョブ入力手段が受け取り得るプリントジ
    ョブの発行元情報と、前記複数のプリンタのいずれかを
    対応付けして記憶する記憶手段と、 前記プリントジョブ入力手段が受け取ったプリントジョ
    ブに基づき、当該プリントジョブを印刷すべき第1のプ
    リンタを前記複数のプリンタから選択する第1のプリン
    タ選択手段と、 前記第1のプリンタの動作状態を検出する第1の状態検
    出手段と、 前記第1のプリンタの動作状態が正常状態でない場合、
    前記記憶手段において、前記プリントジョブ入力手段が
    受け取ったプリントジョブの発行元情報に対応するプリ
    ントジョブの発行元情報に対応づけられているプリンタ
    を第2のプリンタとして選択する第2のプリンタ選択手
    段と、 前記プリントジョブ入力手段が受け取ったプリントジョ
    ブを、前記第2のプリンタに送信する送信手段とを有す
    ることを特徴とするプリントサーバ装置。
  2. 【請求項2】 前記第2のプリンタの動作状態を検出す
    る第2の状態検出手段をさらに有し、 前記送信手段が、前記第2のプリンタの動作状態が正常
    状態である場合にのみ前記プリントジョブの送信を行う
    ことを特徴とする請求項1記載のプリントサーバ装置。
  3. 【請求項3】 前記プリントジョブの発行元情報が、前
    記複数のクライアントまたはそのユーザを特定する情報
    であることを特徴とする請求項1または請求項2記載の
    プリントサーバ装置。
  4. 【請求項4】 前記第2のプリンタ検出手段が、前記記
    憶手段において、前記プリントジョブ入力手段が受け取
    ったプリントジョブの発行元情報に対応するプリントジ
    ョブの発行元情報に対応づけられているプリンタが複数
    存在した場合、その優先順位に従って前記第2のプリン
    タを選択することを特徴とする請求項1乃至請求項3の
    いずれか1項に記載のプリントサーバ装置。
  5. 【請求項5】 ネットワーク上の複数のクライアント端
    末からプリントジョブを受け取り、各プリントジョブを
    複数のプリンタのうち所定のプリンタに送信するプリン
    トサーバ装置の制御方法であって、 前記複数のクライアントから前記プリントジョブを受け
    取るプリントジョブ入力ステップと、 前記プリントジョブ入力ステップが受け取り得るプリン
    トジョブの発行元情報と、前記複数のプリンタのいずれ
    かを対応付けして記憶手段に記憶するステップと、 前記プリントジョブ入力ステップが受け取ったプリント
    ジョブに基づき、当該プリントジョブを印刷すべき第1
    のプリンタを前記複数のプリンタから選択する第1のプ
    リンタ選択ステップと、 前記第1のプリンタの動作状態を検出する第1の状態検
    出ステップと、 前記第1のプリンタの動作状態が正常状態でない場合、
    前記記憶手段から、前記プリントジョブ入力ステップが
    受け取ったプリントジョブの発行元情報に対応するプリ
    ントジョブの発行元情報に対応づけられているプリンタ
    を第2のプリンタとして選択する第2のプリンタ選択ス
    テップと、 前記プリントジョブ入力ステップが受け取ったプリント
    ジョブを、前記第2のプリンタに送信する送信ステップ
    とを有することを特徴とするプリントサーバ装置の制御
    方法。
  6. 【請求項6】 前記第2のプリンタの動作状態を検出す
    る第2の状態検出ステップをさらに有し、 前記送信ステップが、前記第2のプリンタの動作状態が
    正常状態である場合にのみ前記プリントジョブの送信を
    行うことを特徴とする請求項5記載のプリントサーバ装
    置の制御方法。
  7. 【請求項7】 前記プリントジョブの発行元情報が、前
    記複数のクライアントまたはそのユーザを特定する情報
    であることを特徴とする請求項5または請求項6記載の
    プリントサーバ装置の制御方法。
  8. 【請求項8】 前記第2のプリンタ検出ステップが、前
    記記憶手段において、前記プリントジョブ入力ステップ
    が受け取ったプリントジョブの発行元情報に対応するプ
    リントジョブの発行元情報に対応づけられているプリン
    タが複数存在した場合、その優先順位に従って前記第2
    のプリンタを選択することを特徴とする請求項5乃至請
    求項7のいずれか1項に記載のプリントサーバ装置の制
    御方法。
  9. 【請求項9】 コンピュータ装置を請求項1乃至請求項
    4のいずれか1項に記載のプリントサーバ装置として機
    能させることを特徴とするプログラム。
  10. 【請求項10】 請求項9記載のプログラムを格納した
    コンピュータ装置読みとり可能な記憶媒体。
JP2001205017A 2001-07-05 2001-07-05 プリントサーバ装置およびその制御方法 Withdrawn JP2003022172A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001205017A JP2003022172A (ja) 2001-07-05 2001-07-05 プリントサーバ装置およびその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001205017A JP2003022172A (ja) 2001-07-05 2001-07-05 プリントサーバ装置およびその制御方法

Publications (1)

Publication Number Publication Date
JP2003022172A true JP2003022172A (ja) 2003-01-24

Family

ID=19041399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001205017A Withdrawn JP2003022172A (ja) 2001-07-05 2001-07-05 プリントサーバ装置およびその制御方法

Country Status (1)

Country Link
JP (1) JP2003022172A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053716A (ja) * 2004-08-11 2006-02-23 Ricoh Printing Systems Ltd 印刷システム
JP2006277749A (ja) * 2005-03-29 2006-10-12 Toshiba Corp プリンタ管理方法、プリンタ管理システム及びプリンタ管理の記憶媒体
JP2007179311A (ja) * 2005-12-28 2007-07-12 Canon Marketing Japan Inc 印刷制御装置および印刷制御方法および印刷制御プログラムおよびコンピュータが読み取り可能なプログラムを格納した記憶媒体
JP2008204389A (ja) * 2007-02-22 2008-09-04 Seiko Epson Corp 印刷ジョブ管理システム、デフォルトプリンタ決定装置
JP2009238072A (ja) * 2008-03-28 2009-10-15 Ricoh Co Ltd ネットワークプリンタシステム
JP2012078961A (ja) * 2010-09-30 2012-04-19 Brother Ind Ltd 情報処理プログラム、情報処理装置、情報処理方法
JP2020181457A (ja) * 2019-04-26 2020-11-05 セイコーエプソン株式会社 ジョブ送信装置、ジョブ処理装置、プログラムおよびジョブ送信装置のジョブ送信方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053716A (ja) * 2004-08-11 2006-02-23 Ricoh Printing Systems Ltd 印刷システム
JP4495541B2 (ja) * 2004-08-11 2010-07-07 株式会社リコー 印刷システム
JP2006277749A (ja) * 2005-03-29 2006-10-12 Toshiba Corp プリンタ管理方法、プリンタ管理システム及びプリンタ管理の記憶媒体
JP2007179311A (ja) * 2005-12-28 2007-07-12 Canon Marketing Japan Inc 印刷制御装置および印刷制御方法および印刷制御プログラムおよびコンピュータが読み取り可能なプログラムを格納した記憶媒体
JP2008204389A (ja) * 2007-02-22 2008-09-04 Seiko Epson Corp 印刷ジョブ管理システム、デフォルトプリンタ決定装置
US8477338B2 (en) 2007-02-22 2013-07-02 Seiko Epson Corporation Print job management system and default printer determining apparatus
JP2009238072A (ja) * 2008-03-28 2009-10-15 Ricoh Co Ltd ネットワークプリンタシステム
JP2012078961A (ja) * 2010-09-30 2012-04-19 Brother Ind Ltd 情報処理プログラム、情報処理装置、情報処理方法
US9235368B2 (en) 2010-09-30 2016-01-12 Brother Kogyo Kabushiki Kaisha Information processing device, information processing method, and computer-readable medium bearing program for controlling information processing device
JP2020181457A (ja) * 2019-04-26 2020-11-05 セイコーエプソン株式会社 ジョブ送信装置、ジョブ処理装置、プログラムおよびジョブ送信装置のジョブ送信方法

Similar Documents

Publication Publication Date Title
JP4240690B2 (ja) 情報処理装置と情報処理方法、及び情報処理システム、並びに記録媒体
US8289540B2 (en) Output management device setting apparatus and setting method
US6829059B1 (en) Print system, information processing apparatus, print job registering method, and storage medium
US7907313B2 (en) Management of multiple printer drivers
US20030103221A1 (en) Print control apparatus and method
US20070299905A1 (en) System for setting print end notification either when data transmission ends or when printing ends based on print check ability of printing devices
US10241731B2 (en) Information processing apparatus, method of controlling the same, print system and storage medium
US20020085228A1 (en) Information processing apparatus and print control apparatus, data processing method, storage medium and program
JP2000137590A (ja) 情報処理装置及び情報処理方法及び情報処理システム及び情報処理プログラムを記憶した記憶媒体及び情報処理プログラムを送出する送出装置及び情報処理プログラム製品
JP5338496B2 (ja) 情報処理装置、プログラムおよび記録媒体
JP2000200240A (ja) 周辺機器及び周辺機器制御方法及び周辺機器制御システム及び周辺機器制御プログラムを記憶した記憶媒体及び周辺機器制御プログラムを送出する送出装置及び周辺機器制御プログラム製品
US9311036B2 (en) Data processing system and method of data processing
JP2003022172A (ja) プリントサーバ装置およびその制御方法
JPH09146725A (ja) 印刷システム
US20060106924A1 (en) Data-processing device, communication method, and computer program
JP3507468B2 (ja) プリントシステムおよび印刷制御装置およびプリントモニタ方法およびコンピュータ読み取り可能なプログラムが格納された記憶媒体
JP3957972B2 (ja) 情報処理装置および印刷制御装置およびデータ処理方法および記憶媒体
JP4110021B2 (ja) 部門管理を伴う印刷処理を行う印刷処理プログラム及び情報処理装置及び情報処理方法並びに記憶媒体
JP2006171865A (ja) 出力管理装置設定装置及び出力管理システム設定方法
JP3262518B2 (ja) プリントシステムおよび情報処理装置および印刷制御装置およびその方法およびコンピュータ読み取り可能なプログラムが格納された記憶媒体
JP2002055795A (ja) プリント管理装置及びその制御方法及び記憶媒体
JP2007140663A (ja) 画像処理装置
JP2006163985A (ja) 出力管理システム設定方法、記憶媒体、およびプログラム
JP2000089924A (ja) ネットワークプリントシステム及びその制御方法
JP2001043037A (ja) 印刷システム、情報処理装置、情報処理方法、印刷ジョブ登録方法及び記録媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081007