[go: up one dir, main page]

JP4298034B2 - 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体 - Google Patents

印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体 Download PDF

Info

Publication number
JP4298034B2
JP4298034B2 JP01417199A JP1417199A JP4298034B2 JP 4298034 B2 JP4298034 B2 JP 4298034B2 JP 01417199 A JP01417199 A JP 01417199A JP 1417199 A JP1417199 A JP 1417199A JP 4298034 B2 JP4298034 B2 JP 4298034B2
Authority
JP
Japan
Prior art keywords
job
print
information
printing
information processing
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.)
Expired - Fee Related
Application number
JP01417199A
Other languages
English (en)
Other versions
JPH11316660A (ja
JPH11316660A5 (ja
Inventor
隆 八木田
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 JP01417199A priority Critical patent/JP4298034B2/ja
Priority to US09/261,501 priority patent/US6654137B1/en
Publication of JPH11316660A publication Critical patent/JPH11316660A/ja
Publication of JPH11316660A5 publication Critical patent/JPH11316660A5/ja
Application granted granted Critical
Publication of JP4298034B2 publication Critical patent/JP4298034B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1806Receiving job control commands
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1207Improving or facilitating administration, e.g. print management resulting in the user being informed about print result after a job submission
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/002Interacting with the operator
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1234Errors handling and recovery, e.g. reprinting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1274Deleting of print job

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワークに接続されたプリンタを、ネットワークに接続された複数のクライアントコンピュータで利用する場合における印刷システム、サーバ、情報処理装置、印刷制御方法および記憶媒体に関する。
【0002】
【従来の技術】
昨今、オフィスにおけるパーソナルコンピュータの普及はめざましく、またそれらを接続するネットワーク技術も発達してきている。プリンタの利用法も従来では1台のパソコンに1台のプリンタを接続して使用するものであったが、最近ではプリンタをネットワークに接続し、ネットワークに接続されたパーソナルコンピュータで共有して使用するケースが増えている。
【0003】
ネットワークプリンタを利用する環境としては、ネットウェアやWindows NT(登録商標)などのネットワークOSを利用し、プリントサーバを設定して使用する場合が多く、プリンタを共有するために新たにサーバを設置する必要があった。
【0004】
また、メールサーバなどのサーバがある場合、それにプリントサーバの機能を付加すると、従来のサーバの機能を低下させてしまっていた。
【0005】
また、クライアントコンピュータが、送信した印刷ジョブの状態を確認するためには、クライアントコンピュータからサーバもしくはプリンタに印刷ジョブに関する情報を問い合わせる必要があった。
【0006】
【発明が解決しようとする課題】
このようなネットワーク環境における従来の印刷システムでは、ユーザが手差し指定印刷を行う場合、どのクライアントコンピュータからの手差し指定印刷であるか判断することができず、クライアントコンピュータが手差しの情報を得ることができなかった。
【0007】
また、クライアントコンピュータのアプリケーションも手差しのタイミングを示すためのイベント要求を受け取ることができなかった。
【0008】
また、アプリケーションが関与しない場合でも、クライアントマシンがユーザに手差しタイミングを指示することができなかった。
【0009】
そこで、本発明は、ネットワーク環境で、ユーザが手差し印刷指定を行う場合などにおいて、特定のユーザに細かな印刷情報を伝えることができる印刷システム、サーバ、情報処理装置、印刷制御方法および記憶媒体を提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明の一態様に係る印刷管理装置は以下のような構成を備える。即ち、
複数の情報処理装置及び印刷装置にネットワークを介して通信可能な印刷管理装置であって、
前記印刷装置の状態情報を取得する情報取得手段と、
前記情報取得手段により取得された前記印刷装置の状態情報が印刷一時停止状態である場合に、前記複数の情報処理装置から前記印刷装置への印刷要求に係る前記情報処理装置のIPアドレスとジョブ名を含むジョブ情報を前記印刷装置から取得し前記印刷装置の状態情報を通知する情報処理装置を決定する決定手段と、
前記決定手段により決定された情報処理装置に前記印刷装置が印刷一時停止状態であることを通知する通知手段と、
を備える。
【0012】
本発明の一態様に係る印刷管理装置は以下のような構成を備える。即ち、
情報処理装置から受信した手差しコマンドを含むジョブを印刷装置へ送信する送信手段と、
前記印刷装置が印刷一時停止状態になった場合に、前記印刷装置から前記情報処理装置のIPアドレスと前記ジョブのジョブ名を含むジョブ情報を取得する取得手段と、
前記取得手段により取得した前記印刷装置の前記ジョブ情報に基づき前記情報処理装置に前記印刷装置の一時停止状態を通知する通知手段とを有する。
【0013】
本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
手差しコマンドを含むジョブを印刷管理装置へ送信する送信手段と、
印刷管理装置からの通知を受信する受信手段とを有し、
前記印刷管理装置は、印刷装置が印刷一時停止状態になった場合に、前記印刷装置のジョブ情報を取得し、取得した印刷装置のジョブ情報に基づいて前記情報処理装置に前記印刷装置の一時停止状態を前記受信手段に通知し、
前記受信手段が前記印刷管理装置から受信する通知は、前記印刷管理装置が前記印刷装置から取得したジョブ情報に含まれるIPアドレスの情報処理装置に対する、前記取得したジョブ情報に含まれるジョブ名の通知であることを特徴とする情報処理装置。
【0016】
本発明の一態様に係る印刷管理装置の制御方法は以下のような構成を備える。即ち、
複数の情報処理装置及び印刷装置にネットワークを介して通信可能な印刷管理装置の制御方法であって、
前記印刷装置の状態情報を取得する情報取得工程と、
前記情報取得工程により取得された前記印刷装置の状態情報が印刷一時停止状態である場合に、前記複数の情報処理装置から前記印刷装置への印刷要求に係る前記情報処理装置のIPアドレスとジョブ名を含むジョブ情報を前記印刷装置から取得し前記印刷装置の状態情報を通知する情報処理装置を決定する決定工程と、
前記決定工程により決定された情報処理装置に前記印刷装置が印刷一時停止状態であることを通知する通知工程と、
を備える。
【0017】
本発明の一態様に係る印刷管理装置の制御方法は以下のような構成を備える。即ち、
情報処理装置から受信した手差しコマンドを含むジョブを印刷装置へ送信する送信工程と、
前記印刷装置が印刷一時停止状態になった場合に、前記印刷装置から前記情報処理装置のIPアドレスと前記ジョブのジョブ名を含むジョブ情報を取得する取得工程と、
前記取得工程により取得した前記印刷装置の前記ジョブ情報に基づき前記情報処理装置に前記印刷装置の一時停止状態を通知する通知工程とを有する。
【0018】
本発明の一態様に係る情報処理装置の制御方法は以下のような構成を備える。即ち、
手差しコマンドを含むジョブを印刷管理装置へ送信する送信工程と、
印刷管理装置からの通知を受信する受信工程とを有し、
前記印刷管理装置は、印刷装置が印刷一時停止状態になった場合に、前記印刷装置のジョブ情報を取得し、取得した印刷装置のジョブ情報に基づいて前記情報処理装置に前記印刷装置の一時停止状態を前記受信工程に通知し、
前記受信工程が前記印刷管理装置から受信する通知は、前記印刷管理装置が前記印刷装置から取得したジョブ情報に含まれるIPアドレスの情報処理装置に対する、前記取得したジョブ情報に含まれるジョブ名の通知である。
【0089】
【発明の実施の形態】
<実施形態1>
本発明の印刷システム、印刷方法および記憶媒体の一実施形態を次に説明する。本実施形態の印刷システムはネットワークプリントシステムに適用される。
【0090】
図1は仮想サーバを適用するネットワークプリントシステムの構成を示す図である。このネットワークプリントシステムでは、クライアントコンピュータがn台接続されることを想定しているが、図1には3台接続されている状態が示されている。図において、102、103、104はクライアントコンピュータ(単にクライアントともいう)であり、ネットワークケーブルによりネットワーク106に接続されている。
【0091】
クライアントコンピュータ102、103、104は、アプリケーションプログラム等の各種プログラムを実行可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を持つプリンタドライバを搭載している。このプリンタドライバは複数のプリンタ言語をサポートする。
【0092】
101はサーバであり、ネットワークケーブルによってネットワーク106に接続され、ネットワークで使用されるファイルを蓄積したり、ネットワーク106の使用状態を監視する。
【0093】
サーバ101は、さらにクライアントコンピュータ(PC)102、103、104から印刷要求が出された印刷データのジョブ情報を格納したり、ネットワークプリンタ105のIP(Internet Protocol)情報やバッファに受信したジョブ情報をクライアントコンピュータに通知する機能を備えている。
【0094】
105はネットワークプリンタであり、ネットワークインタフェースを介してネットワーク106に接続されており、クライアントコンピュータから送信される印刷データを1ページずつドットイメージに変換してページ単位に印刷する。106はクライアントコンピュータ102、103、104、サーバ101、ネットワークプリンタ105等が接続されたネットワークである。
【0095】
このように、サーバ101、クライアントコンピュータ102、103、104、ネットワークプリンタ105により役割を分担することで、クライアントコンピュータの有効利用、ネットワークの負担を軽減する処理を行う。
【0096】
図2はクライアントコンピュータ102の構成を概略的に示すブロック図である。尚、クライアントコンピュータ103、104の構成はクライアントコンピュータ102と同じ構成である。
【0097】
CPU200は、HD(ハードディスク)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、オペレーティングシステム(OS)やネットワークプリンタ制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイルなどを一時的に格納する制御を行う。
【0098】
ROM201には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データが記憶されている。202はRAMであり、CPU200の主メモリ、ワークエリア等として機能する。
【0099】
203はFD(フロッピーディスク)ドライブであり、FDドライブ203を通じてFD204に記憶されたプログラム等がコンピュータシステムにロードされる。図3はコンピュータシステムにフロッピーディスクに記憶されたプログラムをロードする様子を示す図である。
【0100】
204はFDであり、本実施形態におけるネットワークプリンタ制御プログラムおよび関連データを格納する。図4はフロッピーディスク204に記憶されている内容を示す図である。図において、400はFD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403はネットワークプリンタ制御プログラム、404はその関連データである。ネットワークプリンタ制御プログラム403は、後述するネットワークプリンタ制御処理手順のフローチャートに基づいてプログラムコード化されたものである。
【0101】
205はHDであり、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、関連プログラム等を格納している。206はキーボードであり、ユーザがクライアントコンピュータに対してデバイスの制御コマンドの命令等を入力して指示するために使用される。207はディスプレイであり、キーボード206から入力したコマンドやプリンタの状態等を表示する。208はシステムバスであり、クライアントコンピュータ内のデータの流れを司る。
【0102】
図5はネットワークプリンタ制御プログラムがRAM202にロードされて実行可能となった状態のメモリマップを示す図である。本実施形態では、FD204からネットワークプリンタ制御プログラム及び関連データを直接RAM202にロードして実行する命令を示すが、この他にFD204からネットワーク制御プログラムを動作させる度にHD205からRAM202にロードするようにしてもよい。また、ネットワークプリンタ制御プログラムを格納する記憶媒体としては、FD以外に光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD、磁気テープ、不揮発性のメモリカード、ICメモリーカード等であってもよい。さらに、ネットワークプリンタ制御プログラムをROM201に記録しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。
【0103】
図において、300はRAM202のメモリマップを示す。301は基本I/Oプログラムであり、コンピュータの電源がONとなったときにHD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローティング)機能等を有するプログラムを含む。302はOSであり、303はネットワークプリンタ制御プログラムである。304は展開される関連データであり、305はCPU200がネットワークプリンタ制御プログラムを実行するワークエリアである。
【0104】
図6はネットワークプリンタ105の概略的構成を示すブロック図である。本実施形態ではネットワークプリンタとしてレーザビームプリンタ(LBP)が採用されているが、これに限られるものではなく、他の方式のプリンタでもよいことは言うまでもない。
【0105】
図において、601は装置全体を制御するCPUである。602はROMおよびRAMからなるメモリ(ROM/RAM)であり、CPU601によって実行される制御プログラム、定数データ、送受信データを一時記憶するバッファを含む。603は記憶部であり、例えばハードディスクのような送受信するデータやCPU601で実行する制御プログラムやデータを記憶する。
【0106】
604は表示部であり、ROM/RAM602に一時記憶されているデータ、記憶部603に記憶されているデータの内容、および操作状況などを表示する。605はプリンタ印刷部であり、ROM/RAM602に記憶されているプログラムに基づいてCPU601で生成したビットマップデータを印刷出力する。606はネットワークボードであり、クライアントコンピュータやサーバ等の外部装置と印刷データやジョブ情報等のデータ情報の通信を行う。607は通信回路であり、ネットワークボード606とネットワークを繋ぐ。
【0107】
図7はクライアントコンピュータおよびサーバのソフトウェアモジュールの構成を示す図である。これらのソフトウェアモジュールは、FD等から供給される。図には前述したネットワークプリンタ105、クライアントコンピュータ102のソフトウェアモジュールの構成、サーバ101のソフトウェアモジュールの構成が示されている。尚、クライアントコンピュータ103、104のソフトウェアモジュールの構成もクライアントコンピュータ102のソフトウェアモジュール構成と同じである。
【0108】
704はネットワークプリントシステムに印刷指示を出力するアプリケーションモジュールである。705はWindows(登録商標)のGDI(Graphical device interface)、706はWindows内に組み込まれるプリンタドライバ、707はWindows内のプリンタスプーラ(Windowsスプーラ)である。708は仮想プリントサーバ用プリントモニタ、709はネットワークプリンタ制御モニタ、710は仮想プリントマネージャ、711は仮想プリントサーバAPI(Application interface)、712は仮想プリントサーバサービスである。
【0109】
これらのソフトウェアモジュールは仮想プリントサーバのシステムを構成するものであり、本実施形態では記憶媒体であるFD204から供給される。仮想プリントマネージャ710、仮想プリントサーバAPI711、仮想プリントサーバサービス712は、クライアントコンピュータとサーバの両方に存在する。以後、仮想プリントサーバサービス712を構成している仮想プリントサーバサービス(クライアント)712aと仮想プリントサーバサービス(サーバ)712bを合わせたものを仮想プリントサーバと呼び、このシステムを仮想プリントサーバシステムと呼ぶ。
【0110】
つぎに、クライアントPC102からネットワークプリンタ105に印刷を行わせる動作について説明する。本実施形態では、Windowsを例にとって示す。図8はクライアントPCからサーバに印刷要求を行う印刷処理の流れを示す図である。図9はサーバからクライアントPCに印刷可能許可を与えてプリンタに印刷データの送信を行う印刷処理の流れを示す図である。
【0111】
クライアントPC102上にあるアプリケーション704はGDI705を通じて印刷を開始する。GDI705はWindowsスプーラ707および仮想プリントサーバ用プリントモニタ708に印刷の開始を通知する。印刷の開始を受け取った仮想プリントサーバ用プリントモニタ708は、仮想プリントサーバサービス(クライアント)712aを経由してサーバ101上にある仮想プリントサーバサービス(サーバ)712bに印刷データの保存の開始を依頼する。
【0112】
GDI705はプリンタドライバ706に印刷データをプリンタ言語に変換することを要求する。プリンタ言語に変換されたプリントデータはWindowsスプーラ707によってスプールされる。一方、仮想プリントサーバ用プリントモニタ708は、Windowsスプーラ707にスプールされたプリントデータをWindowsスプーラ707から受け取り、そのプリントデータを仮想プリントサーバサービス(クライアント)712aに渡す。仮想プリントサーバサービス(クライアント)712aは受け取ったプリントデータをHD205内の仮想プリントスプーラ801にあるテンポラリファイル(図示せず)に一時保存する。
【0113】
すべてのプリントデータをHD205内の仮想プリントスプーラ801内のテンポラリファイルに保存した時点で、仮想プリントサーバサービス(クライアント)712aは、サーバ101上にある仮想プリントサーバサービス(サーバ)712bにプリントデータの保存終了を通知し、印刷を依頼する。ここで、仮想プリントサーバサービス712は、クライアントPCとサーバとで同じモジュールを使用しており、設定によりクライアント用とサーバ用とに使い分け可能である。つまり、プリントサーバ専用機である必要はなく、クライアントコンピュータにおいてサーバ用の仮想プリントサーバサービス(サーバ)として使用してもよい。また、どのコンピュータををサーバ用に使用するかは、あらかじめ決めておいてもよいし、起動したクライアント順にサーバになる優先権を与えるようにしてもよい。また、サーバ用になったクライアントコンピュータも、クライアントとして印刷データを作成しても構わない。
【0114】
先に仮想プリントサーバサービス712に登録された印刷ジョブがサーバの管理を経て印刷を行う順番になっており、実際にネットワークプリンタ105にプリントデータを送信するまでの動作が図9に示されている。
【0115】
仮想プリントサーバサービス(サーバ)712bは、印刷の順番になったクライアントPCに印刷可能の指示(送出可能情報)を出す。その指示を受け取った仮想プリントサーバサービス(クライアント)712aは、前述したように一時的に仮想プリントスプーラ801に保存したプリントデータを読み出し、ネットワークプリンタ用制御モニタ709に渡す。ネットワークプリンタ用制御モニタ709は印刷通信プロトコルを通じてネットワークプリンタ105にプリントデータを渡し、ネットワークプリンタ105で印刷を行わせる。
【0116】
つづいて、ネットワークプリンタ105のステータスをクライアントPCに通知する動作について説明する。本実施形態では、Windowsを例にとって示す。図10はプリンタステータスの流れを示す図である。
【0117】
仮想プリントサーバサービス(サーバ)712bは、本実施形態では5秒間隔(デフォルト)でSNMP(Simple Network Management Protocol)マネージャ1002にネットワークプリンタ105のステータスの収集を依頼する。SNMPマネージャ1002は、ステータス収集要求をネットワークプリンタ105に依頼する。ネットワークプリンタ105は、現在のプリンタステータスを返す。
【0118】
仮想プリントサーバサービス(サーバ)712bは、ネットワークプリンタ105のステータスが変化した場合、このネットワークプリンタ105を使用しているクライアントPCに対してステータスの変更通知を行う。サーバ101から出されたプリンタステータスの変更通知はクライアントPC内の仮想プリントサーバサービス(クライアント)712aが受け取り、クライアントPC内のRAM202に確保されたレジストリ1001にプリンタステータスを保存する。
【0119】
アプリケーション704は、仮想プリントサーバAPI711を経由してレジストリ1001に保存されているプリンタステータスを取得することができる。このようにして仮想プリントサーバシステムは印刷の処理を行う。
【0120】
本実施形態ではWindowsNTが用いられているが、プリントモニタ708、仮想プリントスプーラ801、仮想プリントサーバサービス(クライアント/サーバ)712、ネットワークプリンタ制御モニタ709は本実施形態で新たに作成されたモジュールであり、それ以外のモジュールはWindowsNT標準のモジュールである。尚、WindowsNTに限られるものではなく、OS/2等の他のOSでも構築可能である。
【0121】
つぎに、仮想プリントサーバ用プリントモニタ708の仮想サーバを用いた印刷機能において、仮想プリントサーバサービス(クライアント)712aがアプリケーション704から手差し指定印刷ジョブを受け付けた場合、プリンタ105に手差し指定を指示するコマンドを印刷ジョブに付加することによってプリンタ105がそのジョブを受け付けた時にオフライン状態に移行する処理手順について示す。
【0122】
また、仮想プリントサーバサービス(サーバ)712bはプリンタ105のオフラインの状態を取得した場合、仮想プリントサーバサービス(クライアント)712aに通知し、その通知を受け付けた仮想プリントサーバサービス(クライアント)712aはユーザに手差しを行うタイミングを通知するダイアログを表示し、アプリケーション704に手差しタイミングのイベント通知を行う。
【0123】
図11は仮想サーバシステムのクライアントプログラムで手差し指定印刷ジョブを受け付けた時にプリンタに手差し指定を指示するコマンドを印刷ジョブに付加する処理手順を示すフローチャートである。
【0124】
まず、仮想サーバシステムのクライアントプログラムでは、印刷ジョブをOSのプリントシステムから受け付ける(ステップS1101)。OSのジョブ情報より手差し指定印刷の指示がなされているか否かを判別する(ステップS1102)。手差し指定印刷の指示がなされている場合、印刷ジョブの印刷データのヘッダ部に手差し指定印刷のコマンドを付加する(ステップS1103)。
【0125】
図12は手差し指定印刷のコマンドの内容を示す図である。このコマンドには、プリンタが手差し指定印刷のジョブを印刷しようとした時にプリンタのパネルに表示するメッセージの内容がパラメータとして付加されており、クライアントのIPアドレス、ジョブ名が記述されている。
【0126】
仮想サーバシステムの印刷シーケンスによって印刷ジョブをプリンタに転送し(ステップS1104)、処理を終了する。ステップS1104における印刷ジョブの処理の詳細については後述する。一方、ステップS1102でOSのジョブ情報より手差し指定印刷の指示がなされていない場合、ステップS1104に移行し、仮想サーバシステムの印刷シーケンスによって印刷ジョブをプリンタに転送する。
【0127】
図13、図14、図15および図16はプリントモニタ708の仮想サーバを用いた印刷機能における印刷シーケンスを表すフローチャートである。まず、Windowsスプーラ707から印刷開始要求であるAPI(Aplication Interface)StartDocPort()を受け付ける(ステップS1301)。登録ジョブ情報キューテーブルを作成し(ステップS1302)、ステップS1301のStartDocPort()で与えられたジョブIDをセットする。図17は登録ジョブ情報キューテーブルを示す図である。
【0128】
そして、キューイングテーブルにリンクする(ステップS1303)。プリントモニタ708は仮想プリントサーバのAPIであるVPSOpenPrinter()をコールして仮想プリントサーバが管理するプリンタをオープンにする(ステップS1304)。VPSOpenPrinter()がエラーであるか否かを判別する(ステップS1305)。
【0129】
正常である場合、仮想プリントサーバのAPIであるVPSGetPrinter()をコールし、ネットワークプリンタ105の実際のポート名を取得する(ステップS1306)。対応する登録ジョブ情報キューテーブル(図17参照)にポート名をセットする(ステップS1307)。
【0130】
仮想プリントサーバが管理するプリントジョブIDを取得する仮想プリントサーバのAPIであるVPSGetJobId()をコールする(ステップS1308)。VPSGetJobId()関数がエラーであるか否かを判別し(ステップS1309)、正常である場合、ステップS1310に移行する。取得した仮想サーバのジョブIDを対応する登録ジョブ情報キューテーブルにセットする(ステップS1310)。
【0131】
Windowsスプーラ707からプリントデータを書き込むAPIWirtePort()を受け付ける(ステップS1311)。そして、1度目のWritePort()であるか否かを判別し(ステップS1312)、1度目のWritePort()である場合、テンポラリファイルを作成する(ステップS1313)。
【0132】
テンポラリファイルにプリントデータの書き込みを行う(ステップS1314)。Windowsスプーラ707から要求される関数がWritePort()であるかあるいはEndDocPort()であるかを判別し(ステップS1315)、WritePort()である場合、ステップS1311に処理を移行し、EndDocPort()である場合、ステップS1316に処理を移行する。
【0133】
テンポラリファイルのクローズ処理を行い(ステップS1316)、対応する登録ジョブ情報キュー(図17参照)にテンポラリファイルのパス名をセットする(ステップS1317)。
【0134】
そして、サーバエラーフラグがON状態であるか否かを判別する(ステップS1318)。図18はサーバエラーフラグの内容を示す図である。OFF状態である場合、仮想プリントサーバAPIであるVPSSetJob()をコールし、プリントモニタ708が管理するジョブ情報を仮想プリントサーバに登録する(ステップS1319)。VPSSetJob()関数がエラーであるか否かを判別し(ステップS1320)、正常終了である場合、仮想プリントサーバのAPIであるVPSWaitJob()をコールし、指定したプリントジョブが印刷可能になれば印刷可能を発行してもらう要求を行い、印刷可能指示を待機する(ステップS1321)。指定した時間が経過した場合、タイムアップ通知がくるタイマ関数をコールし、サーバからある一定以上の時間が超えた場合にサーバからの印刷指示を待たないで印刷処理を行う時間をタイムアップ値(図18参照)から取得し、タイマーをセットする(ステップS1322)。
【0135】
VPSWaitJob()関数が正常であるか否かを判別し(ステップS1323)、正常である場合、ステップS1324の処理に移行する。印刷可能指示かタイムアップが来るのを待機し(ステップS1324)、印刷可能指示が来た場合、ステップS1325の処理に移行する。
【0136】
サーバエラーフラグ(図18参照)がONであるか否かを判別し(ステップS1325)、OFF状態である場合、印刷可能指示で指定されたジョブIDに対応する登録ジョブ情報キューから対応するキューテーブルを取得し、そのポート名からネットワークIPを取得し、ネットワークプリンタ105に対して印刷処理を行う(ステップS1326)。
【0137】
印刷処理が終了すると、サーバエラーフラグ(図18参照)がONであるか否かを判別し(ステップS1327)、OFF状態である場合、仮想プリントサーバに対してVPSSetJob()をコールし、対応するジョブの削除要求を指示し、ジョブが終了したことを通知する(ステップS1328)。具体的には、サーバ内に格納されている対応するジョブ情報とクライアント内の印刷データを削除する。
【0138】
ステップS1304でオープンしたプリンタをVPSPrinterClose()をコールし、クローズする(ステップS1329)。
【0139】
対応する登録ジョブ情報キューテーブル(図17参照)を削除し(ステップS1330)、サーバエラーフラグ(図18参照)をクリアし(ステップS1331)、処理を終了する。
【0140】
一方、ステップS1305でVPSOpenPrinter()がエラーである場合、サーバエラーフラグ(図18参照)をONにし(ステップS1332)、ステップS1311の処理に移行する。
【0141】
また一方、ステップS1309でVPSGetJobld()関数がエラーである場合、ステップS1333の処理に移行する。ステップS1304でオープンしたプリンタをVPSPrinterClose()をコールしてクローズする(ステップS1333)。
【0142】
サーバエラーフラグ(図18参照)をONにし(ステップS1332)、ステップS1311の処理に移行する。
【0143】
また一方、ステップS1318でサーバエラーフラグ(図18参照)がON状態である場合、デフォルトプリンタのIPアドレスを、登録ジョブ情報キューの対応するキューテーブルのポート名にセットする(ステップS1339)。そして、ステップS1326の処理に移行する。
【0144】
また一方、ステップS1320でVPSSetJob()関数がエラー終了である場合、サーバエラーフラグ(図18参照)をONにし(ステップS1334)、ステップS1335の処理に移行する。ステップS1335の処理では、ステップS1304でオープンしたプリンタをVPSPrinterClose()をコールし、クローズする。この後、ステップS1325の処理に移行する。
【0145】
また一方、ステップS1323でVPSWaitJob()関数が異常である場合、ステップS1336の処理に移行する。ステップS1336の処理では、仮想プリントサーバに対してVPSSetJob()をコールし、対応するジョブの削除要求を指示し、ジョブが終了したことを通知する。そして、ステッブS1304でオープンしたプリンタをVPSPrinterClose()をコールし、クローズする(ステップS1337)。サーバエラーフラグ(図18参照)をONにし(ステップS1338)、ステップS1325の処理に移行する。
【0146】
また一方、ステップS1325でサーバエラーフラグ(図18参照)がON状態である場合、デフォルトプリンタのIPアドレスを、登録ジョブ情報キューの対応するキューテーブルのポート名にセットする(ステップS1339)。そして、ステップS1326の処理に移行する。
【0147】
また一方、ステップS1327でサーバエラーフラグ(図18参照)がON状態である場合、ステップS1330の処理に移行する。
【0148】
図19は手差しコマンドが付加されたジョブをプリンタが受け付けた場合の処理手順を示すフローチャートである。プリンタがジョブを受け付けると(ステップS1601)、ジョブの印刷データのヘッダ部を解析する(ステップS1602)。手差しコマンドが指定されているか否かを判別する(ステップS1603)。手差しコマンドが指定されている場合、手差しコマンドに指定されているメッセージをプリンタのパネルに表示する(ステップS1604)。
【0149】
このメッセージにはクライアントのIPアドレス、ジョブ名が記述されている。プリンタをオフライン状態にしてユーザが手差しの紙をセットするタイミングを与える(ステップS1605)。プリンタ内部のジョブ情報テーブルにジョブ名と排紙したページ数をセットする(ステップS1606)。この場合、排紙前にオフラインとしたために、ページは値0にセットされる。図20はプリンタ内部のジョブ情報テーブルを示す図である。このテーブルは仮想サーバシステムのサーバプログラムがSNMP(Simple Network Management Protocol)を使用して参照することが可能である。
【0150】
ユーザが手差し用の紙を手差しトレーにセットし、プリンタのオフラインの状態を解除したか否かを判別する(ステップS1607)。オフラインが解除されると、印刷を行う(ステップS1608)。
【0151】
一方、ステップS1603で手差しコマンドが指定されていない場合、ステップS1608で印刷を開始する。また一方、ステップS1607でプリンタのオフラインの状態を解除されない場合、解除されるまで待機する。
【0152】
図21は仮想サーバシステムのサーバプログラムでSNMPによりプリンタのジョブ情報テーブルを参照し、手差し指定印刷のジョブを検知した場合、クライアントに通知する処理のプロトコルを示すフローチャートである。
【0153】
まず、SNMPによりプリンタの状態を取得する(ステップS1801)。プリンタの状態がオフラインか否かを判別する(ステップS1802)。プリンタの状態がオフラインである場合、SNMPによりプリンタのジョブ情報テーブルの内容とプリンタのパネルメッセージの内容を取得する(ステップS1803)。パネルメッセージのパラメータで指定されているIPアドレスのクライアントに対し、ジョブ名とページ数をパラメータとしたオフラインNotifyコマンドを通知し(ステップS1804)、処理を終了する。
【0154】
図22は仮想サーバのクライアントシステムプログラムでサーバプログラムからのオフラインNotifyの通知を受け付けた場合、対応するユーザにダイアログによって手差しのタイミングを通知するダイアログを表示し、ワードプロセッサアプリケーションに手差しタイミングのイベント通知を行う処理手順を示すフローチャートである。
【0155】
まず、サーバからのNotifyを受け付ける(ステップS1901)。サーバからのNotifyがオフラインNotifyであるか否かを判別し(ステップS1902)、オフラインNotifyである場合、オフラインNotifyのパラメータからジョブ名とページ数を取得する(ステップS1903)。ページ数が値0である場合、ダイアログリソースにジョブ名をセットしてダイアログ表示を行う(ステップS1904)。図23はダイアログ表示を示す図である。
【0156】
アプリケーションから手差しタイミングを通知するイベント通知要求が来ているか否かを判別する(ステップS1905)。要求されている場合、そのアプリケーションに対してイベントの通知を行い、ジョブ名を通知し(ステップS1906)、処理を終了する。
【0157】
このように、本実施形態のネットワークプリントシステムでは、仮想サーバシステムはプリンタのジョブ情報からユーザへの手差し指定のタイミングを認識し、クライアントマシンでダイアログでユーザに手差しのタイミングを通知することができる。また、仮想サーバシステムは、プリンタのジョブ情報からユーザへの手差し指示のタイミングを認識し、クライアントマシンで手差し指定印刷のイベント通知を待っているアプリケーションがある場合、手差し指定のタイミングのイベントを通知することができる。
【0158】
<実施形態2>
次に、本発明の他の実施形態として実施形態2を示す。
【0159】
実施形態2は、図7と同様のソフトウェアモジュール構成をとるものとし、実施形態1と異なる所について次に述べる。
【0160】
本発明の実施形態1では、図11に示したように、クライアントプログラムで手差し指定印刷ジョブを受け付けた時に、プリンタに手差し指定を指示するコマンドを印刷ジョブに付加し、更に、図19に示したように、手差し指定を指示するコマンドを受け取ったプリンタは、常にオフライン状態になったが、実施形態2では、手差しコマンドが付加されたジョブをプリンタが受け付けた場合、図24に示す処理を行う。
【0161】
図24において、プリンタがジョブを受け付けると(ステップS2401)、ジョブの印刷データのヘッダ部を解析する(ステップS2402)。ステップS2403において、ヘッダ部に手差しコマンドが指定されているか否かを判別する。
【0162】
手差しコマンドが指定されていない場合、ステップS2409に進み印刷を開始する。
【0163】
一方、手差しコマンドが指定されている場合、ステップS2404に進んで手差しコマンドに指定されているメッセージをプリンタのパネルに表示し、ステップS2405に進む。このメッセージにはクライアントのIPアドレス、ジョブ名が記述されている。
【0164】
ステップ2405で、プリンタの手差しトレイに紙があるかどうか判断する。
【0165】
手差しトレイに紙がない場合は、ステップS2406に進み、プリンタをオフライン状態にしてユーザが手差しの紙をセットするタイミングを与える。ステップS2407においてプリンタ内部のジョブ情報テーブルにジョブ名と排紙したページ数をセットする。この場合、排紙前にオフラインとしたために、ページは値0にセットされる。このジョブ情報テーブルは仮想サーバシステムのサーバプログラムがSNMP(Simple Network Management Protocol)を使用して参照することが可能である。
【0166】
ステップS2408においてユーザが手差し用の紙を手差しトレーにセットし、プリンタのオフラインの状態を解除したか否かを判別する。オフラインの状態が解除されると、ステップS2409に進み印刷を行う。一方、プリンタのオフラインの状態を解除されない場合、解除されるまで待機する。
【0167】
ステップ2405で手差しトレイに紙があると判断された場合は、ステップS2410に進み、その手差しトレイにある紙を使用するかどうか判断する。その手差しトレイにある紙を使用すると判断した場合は、その紙を給紙して印刷する。一方、その手差しトレイにある紙を使用しないと判断した場合は、ステップS2406に進みオフライン処理する。この判断は、あらかじめプリンタで手差しトレイにある紙を使用するかどうか選択しておくようにしてもよいし、クライアントコンピュータで手差し指定のコマンドを付加する際に手差しトレイにある紙を使用するかどうか指示するコマンドも付加して選択できるようにしてもよい。もしくは、新たにクライアントコンピュータに通知してユーザに手差しトレイにある紙を使用するかどうか選択させるようにしてもよい。
【0168】
このように、実施形態2のネットワークプリントシステムでは、プリンタが手差し指定印刷ジョブを受け付けた際に、プリンタの手差しトレイに紙がある場合はオフラインの状態にしない、つまり手差しのタイミングを通知せずに手差しトレイから給紙して印刷を行うかどうか選択できる場合の一実施形態について述べた。このような処理の選択方法を加えることでユーザの使用法に沿った使用ができるようになる。
【0169】
なお、実施形態2では、あらかじめ手差しトレイに紙があるとき、自動的に給紙して印刷するかどうか選択できる場合について述べたが、このような選択ができず手差しトレイに紙があるとき必ず自動的に給紙してしまうようなプリンタに対して印刷するときは、手差しトレイに紙がないときのみ、クライアントコンピュータに手差し通知を行うことになる。
【0170】
<実施形態3>
実施形態1及び2では、仮想プリントサーバを利用した場合の手差し通知について述べた。
【0171】
実施形態3では、仮想プリントサーバを利用しない場合の印刷システムにおいて図25を参照して、手差し通知を行う一実施形態について述べる。
【0172】
実施形態3も、図1と同様の複数のクライアントとサーバとネットワークプリンタから成る印刷システムである。
【0173】
図25は、実施形態3における印刷システムの印刷シーケンスを示したものである。
【0174】
ステップS2501では、クライアントにおいて、アプリケーションから受け付けた印刷ジョブに手差し指定があれば、印刷ジョブの印刷データのヘッダ部に手差し指定印刷のコマンドを付加する。具体的には図11と同様のステップで手差しコマンドをセットする。
【0175】
ステップS2502で、クライアントからサーバに印刷ジョブ(ジョブ情報と印刷データ)を送信する。サーバは受信したジョブ情報と印刷データを格納する。
【0176】
なお、ステップS2503で、印刷ジョブを送信したクライアントは該印刷ジョブのジョブ情報を格納しておく。
【0177】
ステップS2504では、サーバにおいて印刷する順番が回ってきた印刷ジョブをプリンタに送信することが可能になったかどうか判断し、可能であれば印刷データをプリンタに送信する。
【0178】
ステップS2505では、プリンタは受信した印刷ジョブのヘッダを解析し、手差しコマンドがあればオフライン処理する。また、サーバはプリンタがオフラインの状態になればプリンタ内のジョブ情報テーブルの内容とプリンタのパネルメッセージの内容を取得して、パネルメッセージのパラメータで指定されているIPアドレスのクライアントに対し、ジョブ名とページ数をパラメータとしたオフラインNotifyコマンドを通知する。具体的には図21と同様のステップでオフライン通知を行う。
【0179】
ステップS2506では、クライアントはオフラインNotifyコマンドを受け付けると、ジョブ名とページ数を取得し、ダイアログ表示及びイベント通知要求されているアプリケーションがあればイベント通知する。具体的には図22と同様のステップでオフラインNotifyを受け付ける。
【0180】
ステップS2507では、プリンタはユーザによりオフライン解除されれば印刷処理を行う。ステップS2505とステップS2507のプリンタの動作は図19と同様のステップで行われる。
【0181】
ステップS2508において、プリンタの印刷処理が終了した情報をサーバが取得すると、サーバの指示により、サーバ内のジョブ情報とクライアント内のジョブ情報を削除する。
【0182】
以上のような印刷シーケンスによりクライアントからプリンタもしくはサーバに問い合わせることなく、印刷ジョブを送信したクライアントに手差し通知を行うことが可能になる。
【0183】
本発明のサーバ装置によれば、印刷装置から取得した情報に基づいて、複数の情報処理装置の中から、前記印刷装置からの情報を通知したい情報処理装置にだけ選択して通知することが可能になる。
【0184】
本発明のサーバ装置によれば、印刷装置が受信した印刷データに関する情報及び印刷装置の状態情報に基づいて、通知したい情報処理装置を詳しく正確に決定することが可能になる。
【0185】
本発明のサーバ装置によれば、印刷装置の状態が変化し、オフラインの状態になったという情報を取得すると、前記印刷装置からの情報を通知するようになるので、情報処理装置はオフライン状態を知ることが可能になる。
【0186】
本発明のサーバ装置によれば、情報処理装置からジョブ情報を受信することで、そのジョブ情報と印刷装置からの情報から印刷データが送信可能かどうか正確に判断して、その印刷データを送出することが可能になる。
【0187】
本発明のサーバ装置によれば、受信したジョブ情報を格納し、印刷装置からの情報と共に使用することにより、受け付けた印刷ジョブの状態を正確に管理しておくことが可能となる。
【0188】
本発明のサーバ装置によれば、印刷が終了して不要になったサーバ装置内に格納されていたジョブ情報を削除することが可能になる。また、印刷終了時に削除することにより確実に印刷が行われることを確認することができる。
【0189】
本発明のサーバ装置によれば、情報処理装置から受信したジョブ情報により印刷する順序を制御することが可能になる。
【0190】
本発明のサーバ装置によれば、印刷装置から印刷が終了したジョブの情報を取得することにより、情報処理装置内に格納されている印刷データを削除することが可能になる。
【0191】
本発明の情報処理装置によれば、サーバ装置から通知された情報を受信することが可能になり、イベント要求がなされているアプリケーションに対してイベントを発行することが可能になる。
【0192】
本発明の情報処理装置によれば、手差しで印刷する印刷データを生成するときに該印刷データにオフライン状態にするコマンドを付加して送信することにより、手差し印刷をする前に印刷装置をオフラインの状態にして印刷を一時停止することが可能になる。
【0193】
本発明の情報処理装置によれば、オフライン状態にするコマンドが付加された印刷データを受け取ったときに、必ずオフラインの状態になる第1のモード、もしくは、手差しトレイに記録媒体がない場合はオフラインの状態になり手差しトレイに記録媒体がある場合はオフライン状態にならずに該記録媒体に記録する第2のモードを選択することが可能な印刷装置に対し、どちらのモードで印刷させるか選択するコマンドを付加して印刷データを送ることが可能になる。
【0194】
本発明の情報処理装置によれば、手差しのタイミングをユーザに示すことが可能になる。
【0195】
本発明の情報処理装置によれば、サーバ装置にはジョブ情報を送信するだけでよく、印刷データは直接印刷装置に送信するので、ネットワークのトラフィックを減少させることが可能になる。
【0196】
本発明の情報処理装置によれば、印刷が終了するまで印刷データを格納しておくことにより、印刷が確実に行われるようにすることが可能になる。
【0197】
本発明の印刷システムによれば、サーバ装置は印刷装置から取得した情報に基づいて、複数の情報処理装置の中から、前記印刷装置からの情報を通知したい情報処理装置にだけ通知でき、情報処理装置はその通知された情報を受信し、イベント要求がなされているアプリケーションに対してイベントを発行することが可能になる。
【0198】
本発明の印刷システムによれば、印刷装置が受信した印刷データに関する情報及び印刷装置の状態情報に基づいて、通知したい情報処理装置を詳しく正確に決定することが可能になる。
【0199】
本発明の印刷システムによれば、手差しのタイミングをユーザに示すことが可能になる。
【0200】
本発明の印刷システムによれば、手差しで印刷する印刷データを生成するときに該印刷データにオフライン状態にするコマンドを付加して送信することにより、手差し印刷をする前に印刷装置をオフラインの状態にして印刷を一時停止することが可能になる。
【0201】
本発明の印刷システムによれば、オフラインの状態になるコマンドが付加された印刷データを印刷しようとしたときに、印刷装置の状態に関わらず必ずオフラインにすることが可能になる。
【0202】
本発明の印刷システムによれば、オフラインの状態になるコマンドが付加された印刷データを印刷しようとしたときに、手差しトレイに記録媒体がない場合はオフラインの状態になり、手差しトレイに記録媒体がある場合はオフライン状態にならずに該記録媒体に記録することが可能となる。
【0203】
本発明の印刷システムによれば、印刷装置がオフライン状態にするコマンドが付加された印刷データを受け取ったときに、必ずオフラインの状態になる第1のモードと、手差しトレイに記録媒体がない場合はオフラインの状態になり手差しトレイに記録媒体がある場合はオフライン状態にならずに該記録媒体に記録する第2のモードとを備える印刷装置に対し、どちらのモードで印刷させるかユーザの要望により選択することが可能になる。
【0204】
本発明の印刷システムによれば、印刷装置の状態が変化し、オフラインの状態になったという情報を取得すると、前記印刷装置からの情報を通知するようになるので、情報処理装置はオフライン状態を知ることができ手差しタイミングの情報を通知することが可能になる。
【0205】
本発明の印刷システムによれば、サーバ装置にはジョブ情報を送信するだけでよく、印刷データは直接印刷装置に送信するので、ネットワークのトラフィックを減少させることが可能になる。また、情報処理装置に印刷データ、サーバ装置にジョブ情報を格納して、印刷装置からの情報と共に使用することにより、受け付けた印刷ジョブの状態を正確に管理しておくことが可能となる。
【0206】
本発明の印刷システムによれば、サーバ装置が情報処理装置から受信したジョブ情報により印刷する順序を制御することが可能になる。
【0207】
本発明の印刷システムによれば、情報処理装置から受信したジョブ情報と印刷装置からの情報から印刷データが送信可能かどうか正確に判断して、その印刷データを送出することが可能になる。また、本発明の印刷システムによれば、印刷が終了するまで、サーバ装置にジョブ情報を格納し、情報処理装置に印刷データを格納しておくことにより、確実に印刷を行うことが可能になる。
【0208】
発明の効果
本発明によれば、ネットワーク環境下で、ユーザが手差し印刷を行う場合などにおいて、特定のユーザに細かな印刷情報を伝えることが可能となる。また、印刷ジョブに手差しコマンドあるいは印刷を一時停止状態にするオフラインコマンドを含めることで、印刷装置を一時停止状態にすることも可能である。また、どのクライアントコンピュータからの手差し印刷であるかの情報を得ることも可能である。また、クライアントコンピュータのアプリケーションが手差しのタイミングを示すイベント要求を受け取ることも可能である。
【図面の簡単な説明】
【図1】仮想サーバを適用するネットワークプリントシステムの構成を示す図である。
【図2】クライアントコンピュータ102の構成を概略的に示すブロック図である。
【図3】コンピュータシステムにフロッピーディスクに記憶されたプログラムをロードする様子を示す図である。
【図4】フロッピーディスク204に記憶されている内容を示す図である。
【図5】ネットワークプリンタ制御プログラムがRAM202にロードされて実行可能となった状態のメモリマップを示す図である。
【図6】ネットワークプリンタ105の概略的構成を示すブロック図である。
【図7】クライアントコンピュータおよびサーバのソフトウェアモジュールの構成を示す図である。
【図8】クライアントPCからサーバに印刷要求を行う印刷処理の流れを示す図である。
【図9】サーバからクライアントPCに印刷可能許可を与えてプリンタに印刷データの送信を行う印刷処理の流れを示す図である。
【図10】プリンタステータスの流れを示す図である。
【図11】仮想サーバシステムのクライアントプログラムで手差し指定印刷ジョブを受け付けた時にプリンタに手差し指定を指示するコマンドを印刷ジョブに付加する処理手順を示すフローチャートである。
【図12】手差し指定印刷のコマンドの内容を示す図である。
【図13】プリントモニタ708の仮想サーバを用いた印刷機能における印刷シーケンスを表すフローチャートである。
【図14】図13につづくプリントモニタ708の仮想サーバを用いた印刷機能における印刷シーケンスを表すフローチャートである。
【図15】図13および図14につづくプリントモニタ708の仮想サーバを用いた印刷機能における印刷シーケンスを表すフローチャートである。
【図16】図13、図14および図15につづくプリントモニタ708の仮想サーバを用いた印刷機能における印刷シーケンスを表すフローチャートである。
【図17】登録ジョブ情報キューテーブルを示す図である。
【図18】サーバエラーフラグの内容を示す図である。
【図19】手差しコマンドが付加されたジョブをプリンタが受け付けた場合の処理手順を示すフローチャートである。
【図20】プリンタ内部のジョブ情報テーブルを示す図である。
【図21】仮想サーバシステムのサーバプログラムでSNMPによりプリンタのジョブ情報テーブルを参照し、手差し指定印刷のジョブを検知した場合、クライアントに通知する処理のプロトコルを示すフローチャートである。
【図22】仮想サーバのクライアントシステムプログラムでサーバプログラムからのオフラインNotifyの通知を受け付けた場合、対応するユーザにダイアログによって手差しのタイミングを通知するダイアログを表示し、ワードプロセッサアプリケーションに手差しタイミングのイベント通知を行う処理手順を示すフローチャートである。
【図23】ダイアログ表示を示す図である。
【図24】手差しトレイに記録媒体がない場合はオフラインの状態になり手差しトレイに記録媒体がある場合はオフライン状態にならずに該記録媒体に記録するプリンタが、手差しコマンドが付加されたジョブを受け付けた場合の処理手順を示すフローチャートである。
【図25】仮想プリントサーバシステムを使用しない場合で、特定のクライアントに手差し通知を行う印刷シーケンスを示す図である。
【符号の説明】
101 サーバ
102、103、104 クライアントコンピュータ
105 ネットワークプリンタ
704 アプリケーション
708 プリントモニタ
712a、712b 仮想プリントサーバサービス

Claims (15)

  1. 複数の情報処理装置及び印刷装置にネットワークを介して通信可能な印刷管理装置であって、
    前記印刷装置の状態情報を取得する情報取得手段と、
    前記情報取得手段により取得された前記印刷装置の状態情報が印刷一時停止状態である場合に、前記複数の情報処理装置から前記印刷装置への印刷要求に係る前記情報処理装置のIPアドレスとジョブ名を含むジョブ情報を前記印刷装置から取得し前記印刷装置の状態情報を通知する情報処理装置を決定する決定手段と、
    前記決定手段により決定された情報処理装置に前記印刷装置が印刷一時停止状態であることを通知する通知手段と、
    を備えることを特徴とする印刷管理装置。
  2. 前記情報取得手段は、前記印刷装置が受信した印刷データに関する情報及び前記印刷装置の状態情報を取得することを特徴とする請求項1に記載の印刷管理装置。
  3. 情報処理装置から受信した手差しコマンドを含むジョブを印刷装置へ送信する送信手段と、
    前記印刷装置が印刷一時停止状態になった場合に、前記印刷装置から前記情報処理装置のIPアドレスと前記ジョブのジョブ名を含むジョブ情報を取得する取得手段と、
    前記取得手段により取得した前記印刷装置の前記ジョブ情報に基づき前記情報処理装置に前記印刷装置の一時停止状態を通知する通知手段とを有することを特徴とする印刷管理装置。
  4. 前記通知手段は、前記取得手段により前記印刷装置から取得した前記ジョブ情報に含まれる前記IPアドレスの前記情報処理装置に前記ジョブ情報に含まれるジョブ名の通知を行うことを特徴とする請求項に記載の印刷管理装置。
  5. 前記情報処理装置から受信したジョブは、印刷データを含まず、前記情報処理装置から受信したジョブの印刷データは情報処理装置から印刷装置に送信されることを特徴とする請求項に記載の印刷管理装置。
  6. 手差しコマンドを含むジョブを印刷管理装置へ送信する送信手段と、
    印刷管理装置からの通知を受信する受信手段とを有し、
    前記印刷管理装置は、印刷装置が印刷一時停止状態になった場合に、前記印刷装置のジョブ情報を取得し、取得した印刷装置のジョブ情報に基づいて前記情報処理装置に前記印刷装置の一時停止状態を前記受信手段に通知し、
    前記受信手段が前記印刷管理装置から受信する通知は、前記印刷管理装置が前記印刷装置から取得したジョブ情報に含まれるIPアドレスの情報処理装置に対する、前記取得したジョブ情報に含まれるジョブ名の通知であることを特徴とする情報処理装置。
  7. 前記印刷管理装置へ送信するジョブは、印刷データを含まず、前記ジョブの印刷データは情報処理装置から印刷装置に送信することを特徴とする請求項に記載の情報処理装置。
  8. 複数の情報処理装置及び印刷装置にネットワークを介して通信可能な印刷管理装置の制御方法であって、
    前記印刷装置の状態情報を取得する情報取得工程と、
    前記情報取得工程により取得された前記印刷装置の状態情報が印刷一時停止状態である場合に、前記複数の情報処理装置から前記印刷装置への印刷要求に係る前記情報処理装置のIPアドレスとジョブ名を含むジョブ情報を前記印刷装置から取得し前記印刷装置の状態情報を通知する情報処理装置を決定する決定工程と、
    前記決定工程により決定された情報処理装置に前記印刷装置が印刷一時停止状態であることを通知する通知工程と、
    を備えることを特徴とする印刷管理装置の制御方法。
  9. 前記情報取得工程は、前記印刷装置が受信した印刷データに関する情報及び前記印刷装置の状態情報を取得することを特徴とする請求項に記載の印刷管理装置の制御方法。
  10. 情報処理装置から受信した手差しコマンドを含むジョブを印刷装置へ送信する送信工程と、
    前記印刷装置が印刷一時停止状態になった場合に、前記印刷装置から前記情報処理装置のIPアドレスと前記ジョブのジョブ名を含むジョブ情報を取得する取得工程と、
    前記取得工程により取得した前記印刷装置の前記ジョブ情報に基づき前記情報処理装置に前記印刷装置の一時停止状態を通知する通知工程とを有することを特徴とする印刷管理装置の制御方法。
  11. 前記通知工程は、前記取得工程により前記印刷装置から取得した前記ジョブ情報に含まれる前記IPアドレスの前記情報処理装置に前記ジョブ情報に含まれるジョブ名の通知を行うことを特徴とする請求項10に記載の印刷管理装置の制御方法。
  12. 前記情報処理装置から受信したジョブは、印刷データを含まず、前記情報処理装置から受信したジョブの印刷データは情報処理装置から印刷装置に送信されることを特徴とする請求項10に記載の印刷管理装置の制御方法。
  13. 手差しコマンドを含むジョブを印刷管理装置へ送信する送信工程と、
    印刷管理装置からの通知を受信する受信工程とを有し、
    前記印刷管理装置は、印刷装置が印刷一時停止状態になった場合に、前記印刷装置のジョブ情報を取得し、取得した印刷装置のジョブ情報に基づいて前記情報処理装置に前記印刷装置の一時停止状態を前記受信工程に通知し、
    前記受信工程が前記印刷管理装置から受信する通知は、前記印刷管理装置が前記印刷装置から取得したジョブ情報に含まれるIPアドレスの情報処理装置に対する、前記取得したジョブ情報に含まれるジョブ名の通知であることを特徴とする情報処理装置の制御方法。
  14. 前記印刷管理装置へ送信するジョブは、印刷データを含まず、前記ジョブの印刷データは情報処理装置から印刷装置に送信することを特徴とする請求項13に記載の情報処理装置の制御方法。
  15. 請求項乃至14のいずれか1項に記載の制御方法を実行するプログラムを記憶したコンピュータで読み取り可能な記憶媒体。
JP01417199A 1998-03-05 1999-01-22 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体 Expired - Fee Related JP4298034B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP01417199A JP4298034B2 (ja) 1998-03-05 1999-01-22 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体
US09/261,501 US6654137B1 (en) 1998-03-05 1999-03-03 Print system, server, information processing apparatus, print control method, and recording medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP10-69227 1998-03-05
JP6922798 1998-03-05
JP01417199A JP4298034B2 (ja) 1998-03-05 1999-01-22 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体

Publications (3)

Publication Number Publication Date
JPH11316660A JPH11316660A (ja) 1999-11-16
JPH11316660A5 JPH11316660A5 (ja) 2006-03-16
JP4298034B2 true JP4298034B2 (ja) 2009-07-15

Family

ID=26350070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01417199A Expired - Fee Related JP4298034B2 (ja) 1998-03-05 1999-01-22 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体

Country Status (2)

Country Link
US (1) US6654137B1 (ja)
JP (1) JP4298034B2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPQ439299A0 (en) 1999-12-01 1999-12-23 Silverbrook Research Pty Ltd Interface system
JP2001290627A (ja) * 2000-02-04 2001-10-19 Fuji Photo Film Co Ltd プリントシステム、プリント方法および装置並びに注文振り分け方法および装置
US6754621B1 (en) * 2000-10-06 2004-06-22 Andrew Cunningham Asynchronous hypertext messaging system and method
JP2003108344A (ja) * 2001-09-28 2003-04-11 Canon Inc 診断装置及び診断システム及び診断方法及びプログラム並びに媒体
US6813649B2 (en) * 2002-06-10 2004-11-02 Hewlett-Packard Development Company, L.P. Onboard user manual for a printing capable device
JP3833205B2 (ja) 2002-10-31 2006-10-11 キヤノン株式会社 情報処理装置および印刷制御方法および印刷制御プログラム
JP2004171324A (ja) * 2002-11-21 2004-06-17 Seiko Epson Corp ジョブ管理装置
US7529823B2 (en) * 2003-03-27 2009-05-05 Microsoft Corporation Notifications for shared resources
JP3885798B2 (ja) * 2003-12-15 2007-02-28 セイコーエプソン株式会社 ネットワークシステム
JP4668711B2 (ja) * 2004-07-14 2011-04-13 オセ−テクノロジーズ ビーブイ カスタマイズ可能なプリントメディアの定義
EP1617322A3 (en) * 2004-07-14 2006-05-24 Océ-Technologies B.V. Customizable print media definition
JP4417213B2 (ja) * 2004-09-17 2010-02-17 シャープ株式会社 印刷制御装置、印刷装置、印刷制御方法、印刷制御プログラムおよび印刷制御プログラムを記録する記録媒体
KR100640060B1 (ko) * 2004-12-16 2006-11-01 삼성전자주식회사 수동급지시 급지 대기시간의 설정이 가능한 인쇄제어장치및 그 급지 대기시간 설정방법
KR100594980B1 (ko) 2005-01-26 2006-06-30 삼성전자주식회사 추가인쇄요청에 따라 인쇄매수를 조정하는 네트워크프린터, 이를 이용한 네트워크 프린팅 시스템, 및 그 방법
JP4777139B2 (ja) 2005-06-06 2011-09-21 キヤノン株式会社 情報処理装置及び情報処理方法、ホストベースプリンタ
KR100648653B1 (ko) * 2005-07-15 2006-11-24 삼성전자주식회사 장치정보 표시를 위한 네트워크 화상형성장치 및 사용자단말장치 그리고 그들의 동작방법
KR101058039B1 (ko) * 2006-07-04 2011-08-19 삼성전자주식회사 Xml 데이터를 이용한 화상형성방법 및 시스템
JP5885410B2 (ja) * 2011-06-29 2016-03-15 キヤノン株式会社 プルプリントシステム、プリントサーバおよびその制御方法、並びにプログラム
US9274731B2 (en) 2013-05-24 2016-03-01 Canon Kabushiki Kaisha System and method for controlling a print job
US10216464B2 (en) * 2013-12-20 2019-02-26 Hewlett-Packard Development Company, L.P. Wireless communication of print content and a mobile device identifier
EP3182272A1 (en) * 2015-12-15 2017-06-21 Ricoh Company, Ltd. Service providing system, information processing method, nontransitory recording medium, and program
JP6699442B2 (ja) * 2016-08-12 2020-05-27 富士ゼロックス株式会社 情報処理装置、サーバ装置、画像形成装置、画像形成システムおよびプログラム
JP7608840B2 (ja) * 2021-01-18 2025-01-07 ブラザー工業株式会社 プログラム、移行システム、及び移行方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6433884B1 (en) * 1993-10-29 2002-08-13 Ricoh Company, Ltd. Apparatus for determining priority of print jobs in a printer system
US6198985B1 (en) * 1993-11-08 2001-03-06 Seiko Epson Corporation Printing apparatus with a cash drawer control function, and a control method therefor
US5625757A (en) * 1993-12-24 1997-04-29 Hitachi, Ltd. Printing system
JPH0887390A (ja) * 1994-09-20 1996-04-02 Fujitsu Ltd 印刷装置を有するネットワークシステム,ネットワークシステム用印刷装置,ネットワークシステム用サーバ装置およびネットワークシステム用端末装置
JPH0991102A (ja) * 1995-09-26 1997-04-04 Ricoh Co Ltd ネットワーク・システムにおけるプリント・ジョブ実行結果の通知方法,ネットワーク・システムにおけるスキャン条件の設定方法およびネットワーク・プリンティング/スキャニング・システム

Also Published As

Publication number Publication date
JPH11316660A (ja) 1999-11-16
US6654137B1 (en) 2003-11-25

Similar Documents

Publication Publication Date Title
JP4298034B2 (ja) 印刷システム、印刷管理装置、情報処理装置、およびそれらの制御方法、記憶媒体
JP4420421B2 (ja) 情報処理装置およびその制御方法
CN106484337B (zh) 信息处理装置及其控制方法、以及打印系统
US6829059B1 (en) Print system, information processing apparatus, print job registering method, and storage medium
EP1501008B1 (en) Imformation processing apparatus, information processing method, program, and computer-readable storage medium
JP5383254B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
JP3265573B2 (ja) 印刷システム及びプリンタ
JP4125044B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム、及び記憶媒体
JP3634785B2 (ja) 情報処理装置及び方法
EP1942406A2 (en) Print managing apparatus, print managing method, and computer program
JP3452247B2 (ja) プリンタ、プリンタの制御方法およびプログラムを記録した記録媒体
JP2013073369A (ja) 印刷制御システム、印刷制御方法、画像処理装置、及び印刷制御プログラム
JP2008276494A (ja) 情報処理装置及びジョブ管理方法
JP5661346B2 (ja) 印刷システム及び印刷制御方法
JP3880575B2 (ja) 印刷設定方法及びコンピュータ
JPH06348436A (ja) リモート印刷システム
JP4164479B2 (ja) 印刷制御プログラム、及び、処理方法、及び、記憶媒体、及び、情報処理装置、並びに、印刷システム
JP2008097226A (ja) 情報処理装置及び情報処理方法
JP4817968B2 (ja) 帳票処理装置及び方法
JP3420482B2 (ja) 情報処理装置およびネットワークプリントシステムおよび印刷制御方法およびプログラムが格納された記憶媒体
JP3566511B2 (ja) 情報処理装置及び印刷システム及び印刷処理方法並びにコンピュータ可読の記憶媒体
JP3740448B2 (ja) 制御装置、制御方法、プログラム及び記憶媒体
JP3262520B2 (ja) ネットワークプリントシステムおよび情報処理装置およびプリントサーバおよび印刷制御装置およびその方法およびその制御プログラムが格納された記憶媒体
JP2006168069A (ja) 印刷装置及び印刷システム
JP2007025970A (ja) プルプリントシステム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060123

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080930

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081126

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090309

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090312

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090407

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090415

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120424

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140424

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees