JP4776763B2 - Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium - Google Patents

Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium Download PDF

Info

Publication number
JP4776763B2
JP4776763B2 JP2000296773A JP2000296773A JP4776763B2 JP 4776763 B2 JP4776763 B2 JP 4776763B2 JP 2000296773 A JP2000296773 A JP 2000296773A JP 2000296773 A JP2000296773 A JP 2000296773A JP 4776763 B2 JP4776763 B2 JP 4776763B2
Authority
JP
Japan
Prior art keywords
data
print
job
format data
output destination
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
JP2000296773A
Other languages
Japanese (ja)
Other versions
JP2001175442A5 (en
JP2001175442A (en
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 JP2000296773A priority Critical patent/JP4776763B2/en
Publication of JP2001175442A publication Critical patent/JP2001175442A/en
Publication of JP2001175442A5 publication Critical patent/JP2001175442A5/ja
Application granted granted Critical
Publication of JP4776763B2 publication Critical patent/JP4776763B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワークに接続された複数のクライアントから、同ネットワークに接続されたネットワークプリンタに対して出力された印刷データと印刷ジョブ情報を管理するサーバ装置およびクライアント装置および印刷ジョブ管理システムおよびその方法および記憶媒体に関するものである。
【0002】
【従来の技術】
従来、ネットワークプリンタを利用する環境としては、ネットワーク上の複数のクライアントが直接ネットワークプリンタに印刷データを送信することはあまり行われていない。それは、ネットワークプリンタが複数のクライアント装置から複数の印刷データを受けると順序制御や受信処理に負荷が増大してしまい、それに対応するためにはネットワークプリンタのコストが上がってしまうためである。
【0003】
そのため、ネットワークOSを利用し、ネットワーク上にプリントサーバを設定して使用する場合が多かった。こうしたプリントサーバを使った印刷ジョブ保存システムでは、クライアントからプリントサーバに印刷データが転送され、この印刷データをプリントサーバの特定の場所に保存し、同時にプリントサーバがその印刷データの出力先に指定されているネットワークプリンタの印刷順序を管理し、印刷順序になったら保存されている印刷データを読み出して該ネットワークプリンタに印刷データを送信し印刷を実行していた。
【0004】
この場合、プリントサーバは、管理下のネットワークプリンタに対する印刷データをネットワーク上の複数のクライアントから受け付けなければならず、クライアント数やネットワークプリンタ数が増える毎にプリントサーバの負荷が増えてきている。
【0005】
そのため、プリントサーバにおける印刷データの保存媒体(例えば、ハードディスクなど)が容量不足などのエラーにより利用不可能になったときには、各クライアント装置から受け付ける印刷データの保存ばかりか、ネットワークプリンタに対する印刷データの送信処理ですら実行できなくなってしまう。
【0006】
【発明が解決しようとする課題】
そのため、最近は、プリントサーバは印刷ジョブの印刷要求だけを受け付け、実際に印刷すべき印刷データはクライアントが保持しておき、プリントサーバから印刷データの送信許可を受け付けてからクライアント装置がネットワークプリンタに直接印刷データを送信する仕組みが考えられるようになってきた。
【0007】
プリントサーバの障害により印刷処理が実行できないことを解決するために、“特開平10−240469ネットワークプリントシステムおよび情報処理装置”が考えられた。しかしながらこのシステムでは、印刷が完了した時点でクライアントに保持された印刷データを削除していたため、正常終了した印刷データをサーバコンピュータ上に保存することができなかった。
【0008】
そこで、印刷完了を通知する前にサーバコンピュータ上の保存媒体(ここでは、説明を簡略化するためにコンピュータ上のハードディスクを用いて説明するが、MOなどの脱着可能な記憶媒体でも可能である)の書き込み許容量を判断し保存可能な場合に限り、クライアントコンピュータに印刷完了を通知し、保存できない印刷ジョブは保存待ち状態とする印刷完了通知手段を有するサーバコンピュータと、該サーバコンピュータから印刷完了通知を受けた時点で印刷データを削除せず、印刷データと印刷ジョブ情報をまとめて保存ジョブとしてサーバコンピュータに送信し、送信が完了した時点で保存ジョブを削除する保存ジョブ送信手段を有するクライアントコンピュータと、該クライアントコンピュータから送信された該保存ジョブを指定されたディレクトリに保存し、また、指定された保存期間を過ぎた保存ジョブを定期的に削除し、保存許容量が増加したことを前記印刷完了通知手段に通知することで、該サーバコンピュータ上に保存できなかった保存ジョブに対し、非同期で印刷完了を通知することができる保存ジョブ管理手段を有する印刷ジョブ保存管理システムが考えられる。
【0009】
これによると、印刷完了を通知した印刷ジョブに関しては、サーバコンピュータ上の指定されたディレクトリに指定期間保持され、サーバコンピュータ上に保存できなかった印刷ジョブに関しては、印刷をかけたクライアントコンピュータ上で保存待ち状態で保存されることになる。ただし、保存待ちジョブに関しても、サーバコンピュータ上の保存容量に空き次第、非同期で印刷完了が通知されるので、その時点でサーバコンピュータ上の指定ディレクトリ上に保存されることになる。その結果、サーバコンピュータ上の保存容量不足により、印刷完了ジョブがサーバコンピュータ上に保存できない状態を防ぐことができる。
【0010】
更に、該サーバコンピュータに保存された保存ジョブを再印刷する場合、デバイス情報が格納されたRAWデータのみが保存されていると、出力先のプリンタは全く同じ仕様のプリンタに限定されてしまい、別のプリンタに再印刷することができなかった。
【0011】
そこで、保存ジョブファイルにRAWデータとEMFデータを合わせて保存することにより、出力先プリンタに応じた保存ジョブの再印刷が可能な印刷ジョブ保存管理システムが考えられる。
【0012】
また、保存ジョブファイルに格納される印刷データがRAWデータの場合、再印刷するときに、同じプリンタにしか印刷できないという制限があった。
【0013】
本発明の第1の目的は、印刷ジョブデータのサイズと、サーバコンピュータ上の保存ディレクトリの許容量を判断し、保存可能な場合に限り、印刷完了を通知できることである。
【0014】
また、本発明の第2の目的は、サーバコンピュータからの印刷完了通知に応じて、印刷データと印刷ジョブ情報をまとめて保存ジョブとして、サーバコンピュータに送信し、送信が完了した時点で保存ジョブを削除することである。
また、本発明の第3の目的は、クライアントコンピュータから送信された保存ジョブを受信し、別途指定されたサーバコンピュータ上のディレクトリに保存し、また定期的に、別途指定された保存期間を過ぎた保存ジョブを削除することである。
【0015】
また、本発明の第4の目的は、保存ジョブファイルにRAWデータとEMFデータを同時に格納することで、出力先を限定しない再印刷が可能とすることである。
【0016】
また、本発明の第5の目的は、サーバコンピュータに保存された任意の保存ジョブファイルを選択し、サーバから送信された印刷データ(RAW、EMF)に応じて、印刷データをスプーラに直接送って印刷したり、または、GDIを経由してプリンタドライバで印刷データを生成する通常のアプリケーションレベルの印刷を可能とすることである。
【0017】
また、本発明の第6の発明は、再印刷した際に生成されたRAWデータを新しい保存ジョブファイルとして、再保存することである。
【0018】
【課題を解決するための手段】
本発明のプリントサーバ装置は、ネットワークを介して情報処理装置から印刷すべき印刷ジョブを受信可能なプリントサーバ装置であって、前記情報処理装置から、印刷出力先の印刷装置に対応するプリンタドライバによって生成されたデバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを受信し、受信した前記デバイス依存形式データと前記デバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応づけて管理する保存ジョブ管理手段と、前記情報処理装置からの前記保存ジョブ管理手段により管理される保存ジョブデータと再印刷出力先の印刷装置とを指定した再印刷要求に応じて、前記再印刷出力先の印刷装置と、前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置とで、属性が異なるか判断する判断手段と、前記判断手段により属性が異なると判断された場合に、前記情報処理装置が前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データを生成できるように前記デバイス非依存形式データを出力し、一方、前記判断手段により属性が同じであると判断された場合に、前記デバイス依存形式データを出力する出力制御手段とを有することを特徴とする。
【0019】
本発明に係る第2の発明は、前記保存ジョブ管理手段は、前記情報処理装置から送信された保存ジョブデータを指定された期間だけ保存し、該指定された期間経過後、前記メモリから削除するものである。
【0020】
本発明に係る第3の発明は、前記情報処理装置からの保存要求に応じて、前記保存ジョブ管理手段による前記保存ジョブデータの管理が可能であるかを判断する判断手段を更に有し、前記判断手段により前記保存ジョブデータの管理が可能であると判断された場合に、前記保存ジョブ管理手段は、前記保存ジョブデータの保存及び管理を行うものである。
【0021】
本発明に係る第4の発明は、前記判断手段により前記保存ファイルの管理が不可能と判断された場合に、前記保存ジョブ管理手段は、保存要求あった印刷ジョブIDと保存ジョブサイズとを保存待ちリストに登録管理するものである。
【0022】
本発明に係る第5の発明は、前記メモリの空き容量と前記保存待ちリストに登録された保存ジョブサイズとを比較して登録可能な印刷ジョブIDを検出する検出手段を更に有するものである。
【0025】
本発明の情報処理装置は、ネットワークを介して印刷装置で印刷されるべき印刷ジョブを生成する情報処理装置であって、印刷出力先の印刷装置に対応するプリンタドライバによってデバイス依存形式データを生成する印刷データ生成手段と、印刷ジョブ管理装置が、前記印刷データ生成手段によって生成される前記デバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応付けて管理できるように、前記デバイス依存形式データと前記デバイス非依存形式データとをネットワークを介して前記印刷ジョブ管理装置に送信する送信制御手段と、前記デバイス依存形式データが前記印刷出力先の印刷装置に出力された後に、前記印刷ジョブ管理装置により管理される保存ジョブデータのリストを表示する表示手段と、前記リストの中から、再印刷すべき保存ジョブデータと、該保存ジョブデータの再印刷出力先の印刷装置を判断する判断手段を有し、前記判断された前記再印刷出力先の印刷装置の属性と前記判断された保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが異なる場合に、前記デバイス非依存形式データを前記印刷ジョブ管理装置から受け取り、前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データを生成して前記再印刷出力先の印刷装置へ出力し、一方、前記再印刷出力先の印刷装置の属性と前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが同じ場合に、前記印刷ジョブ管理装置から前記デバイス依存形式データを受け取り前記再印刷出力先の印刷装置へ出力することを特徴とする。
【0026】
本発明に係る第9の発明は、前記印刷ジョブ管理装置において保存ジョブデータを保存させる保存条件を指定する条件指定手段を更に有するものである。
【0027】
本発明に係る第10の発明は、前記保存条件は、保存期間である。
【0028】
本発明に係る第11の発明は、前記保存条件は、印刷耐久回数である。
【0033】
【発明の実施の形態】
図1は、本発明に係る印刷制御装置を適用可能な印刷システムの構成を説明するブロック図であり、特に、印刷ジョブの保存管理を行うシステムに対応する。また、本実施形態では、クライアントコンピュータは、n台接続されていることを仮定している。
【0034】
図において、102、103、104はクライアントコンピュータであり、ネットワークケーブルによりネットワーク106に接続され、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データを作成するプリンタドライバを搭載している。
【0035】
101はサーバであり、ネットワークケーブルによってネットワーク106接続されている。本実施例のサーバ101は、クライアントコンピュータ102、103、104からの印刷ジョブ情報を集計ファイルとして格納する機能を備えている。
【0036】
105はネットワークプリンタであり、ネットワークインタフェースを介してネットワーク106と接続されており、クライアントコンピュータから送信される印字データを印刷する。106はネットワークであり、クライアントコンピュータ、サーバ、ネットワークプリンタ等と接続している。
【0037】
図2は、図1に示したクライアントコンピュータ102の概略構成を示すブロック図である。なお、クライアントコンピュータ103、104も同じ構成である。
【0038】
図2において、CPU200は、HD(ハードディスク)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや印刷ジョブ保存管理プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【0039】
ROM201には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。202はRAMであり、CPU200の主メモリ、ワークエリア等として機能する。203はFD(フロッピーディスク)ドライブであり、図5に示すようにFDドライブ203を通じてFD204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。
【0040】
204はFDであり、本実施例で説明する印刷ジョブ保存管理プログラムおよび関連データを格納しており、その記憶されている内容の構成を図4に示す。
図4において、400はFD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施例で説明する印刷ジョブ保存管理プログラム、404はその関連データである。
【0041】
403の印刷ジョブ保存管理プログラムは、図15〜20に示されるネットワークプリンタ制御手順のフローチャートに基づいてプログラムコード化されたものである。
【0042】
205はHDであり、アプリケーションプログラム、プリンタドライバプログラム、OS、印刷ジョブ保存管理プログラム、関連プログラム等を格納している。206はキーボードであり、ユーザがクライアントコンピュータに対して、デバイスの制御コマンドの命令等を入力指示するものである。207はディスプレイであり、キーボード206から入力したコマンドや、プリンタの状態等を表示したりするものである。208はシステムバスであり、クライアントコンピュータ内のデータの流れを司るものである。
【0043】
図3は、本ネットワークプリンタ制御プログラムがRAM202にロードされ実行可能となった状態のメモリマップを表すものである。
本実施例では、FD204から印刷ジョブ保存管理プログラム及び関連データを直接RAM202にロードして実行させる例を示すが、この以外にも 、HD205からRAM202にロードするようにしてもよい。
【0044】
また、本印刷ジョブ保存管理プログラムを記録する媒体は、FD以外にCD−ROM、ICメモリーカード等であっても良い。更に、本印刷ジョブ保存管理プログラムをROM201に記録しておき、これをメモリマッップの一部となすように構成し、直接CPU200で実行することも可能である。
【0045】
301は基本I/Oプログラムであり、本制御装置の電源がONされたときに、HD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローティング)機能等を有しているプログラムが入っている領域である。302はOSであり、303には印刷ジョブ保存管理プログラム、304には関連データがそれぞれ展開され、305にはCPU200が本ネットワークプリンタ制御プログラムを実行するワークエリアがとられている。
【0046】
図6は、本発明の一実施形態を示すクライアントコンピュータおよびサーバを適用可能な印刷システムのソフトモジュール構成を表した図である。これらは、例えば、FDから供給されるものである。
【0047】
図において、501はクライアントコンピュータのソフトモジュール構成、502はサーバのソフトモジュール構成、503はネットワークプリンタである。504は本発明の印刷ジョブ保存管理システムで保存される印刷データを作成するアプリケーションモジュールである。アプリケーション504は文書データを作成し、印刷をする際にはOSSの描画手段であるGDI(Graphic Device Interface)508に対して描画データ(GDI関数と呼ぶ)として出力する。505は、米国マイクロソフト社製のOS(Windows(登録商標))内に組み込まれて動作するプリンタドライバである。
【0048】
506はWindows内のプリンタスプーラ、507はネットワークプリンタ用制御モニタである。509は印刷保存ジョブ送信部であり、510の印刷データ(本発明では後述するようにRAW+EMF)と印刷ジョブ情報をまとめた保存ジョブデータをサーバに送信するモジュールである。511はWindowsシステムに登録されるレジストリであり、送信先となるサーバ名、あるいは保存ジョブデータを保持するディレクトリが設定されている。
【0049】
アプリケーション504で印刷を行う場合は、文書データを描画データであるGDI関数としてGDI508に出力し、GDI508は、DDI関数(Device Driver Interface)と呼ばれるドライバで実行可能な形式の描画コマンドに変換する。DDI関数を受け取ったプリンタドライバ505は、印刷出力先のネットワーク503で解釈可能なプリンタ言語(ページ記述言語)に変換する。また、WindowsOSでは、EMF(EnhancedMeta File)と呼ばれるデバイスに依存しない中間データ形式のファイルでスプールすることが可能となっている。このEMFデータとは、アプリケーションが発行したGDI関数に基づいて描画内容をバイナリー形式で保存するものである。そして、スプールが終了すると、EMFデータで図示省略したEMFスプーラで一時保存された描画内容は、GDI関数としてGDI508に出力される。また、プリンタドライバ505が生成するページ記述言語形式の印刷データのことをRAWデータと呼ぶ。
【0050】
512は本発明の保存ジョブ管理処理部であり、クライアントコンピュータ上の509印刷保存ジョブ送信部からRPC(RemoteProcedureCall)を使って送られてきた保存ジョブデータを受け取り、または、指定された印刷データを送信するモジュールである。
【0051】
513はWindowsシステムに登録されるサーバレジストリであり、保存ジョブファイルの保存先、保存期間など設定された情報によって、512の印刷保存ジョブ管理処理部の動作を制御できるものである。
【0052】
514は印刷完了通知処理部であり、クライアント102のモニタ507から送信された印刷データに対する印刷完了イベントを、ネットワークプリンタ503から受け取り、保存可能かどうかを判断した後、509印刷保存ジョブ送信処理部にRPCを使って印刷完了通知を通知する。
【0053】
515は保存ジョブがファイルとして格納されるファイルを示し、516はジョブリスト、517は保存ジョブリスト、518は保存待ちジョブリストに使われるリスト構造体を示す。519は再印刷GUI(再印刷GUI提供モジュール)であり、クライアントから任意の保存ジョブを再印刷するためのユーザインターフェイスを提供する。これらのモジュールは本発明である印刷ジョブ保存管理システムを構成するものであり、記憶媒体、本実施例ではFD204から供給される。
【0054】
図7は、図6に示したクライアント102のレジストリ511のデータ構造を説明する図であり、例えばサーバの動作情報、サーバ名、サーバのIPアドレス等から構成される場合を示す。
【0055】
図8は、図6に示したサーバ101のレジストリ511のデータ構造を説明する図であり、例えばログ保存先、エラー情報、ログ保存期間等から構成される場合を示す。
【0056】
図9は、図6に示したサーバ101のリスト構造体のデータ構造を説明する図であり、例えばインデックス、ジョブID、保存ジョブファイル名、保存ジョブサイズ、ログ保存期間、ユーザ名、ドキュメント名、プリンタ名、ドライバ名、次のリストのアドレス等から構成される場合を示す。
【0057】
以下、上記のように構成された印刷システムにおいて、クライアントPC102からネットワークプリンタ105に印刷を行ったときの印刷ジョブ保存管理処理を説明する。
【0058】
本実施形態においては、仮想プリントサーバシステムの印刷システムに基づいて説明を行う。図6にような構成を持つ仮想プリントサーバシステムでは、以下のように処理を行う。クライアントPC501(102)上で、アプリケーション504から印刷を開始したならば、本印刷制御プログラムは、アプリケーション504から発行された描画内容をスプールしているEMFデータにアクセスし、そのコピーを保存ジョブデータ510に生成する。そして、GDI508からの印刷命令に基づいてプリンタドライバ505が生成するプリンタ制御言語であるRAWデータも、先に保存してあるEMFデータと同じ印刷ジョブであることを識別子を用いて関連づけて保存しておく。印刷ジョブ(EMFデータ+RAWデータ)の保存が終了すると、クライアント102は、印刷データの名称、ホスト名、印刷依頼時間、印刷出力先のプリンタ名等からなる印刷要求情報(印刷データは含まれない)をプリントサーバ101(サーバ502)に送信する。プリントサーバ101は、出力先のプリンタ毎に印刷要求の順序管理を行い、ネットワークプリンタで印刷待ち、つまり印刷中の印刷ジョブがなくなった場合に次の印刷順序の印刷要求情報を依頼したクライアントに印刷許可を通知する。この印刷許可には印刷すべき印刷データ名称、依頼時間等から構成されている。
【0059】
そして、サーバ502からの印刷指示を受けると、クライアントは、印刷許可内の除法から印刷許可された印刷ジョブを保存ジョブデータ510(もしくはスプーラ506)から検索する。そして、保存ジョブデータ510に保存されているRAWデータである印刷データが読み出され、モニタ507は、読み出された印刷データを出力先のネットワークプリンタ503にLPRを用いて送信し、印刷が実行される。このように、プリントサーバは印刷順序の管理を行い、クライアントが印刷データをスプールしておき、印刷順序が来たらクライアント自身がネットワークプリンタに対して印刷データを送信することにより、ネットワーク上を印刷データが通信される回数が減るため、ネットワークの負荷が減り、また、プリントサーバは印刷順序の管理だけを行うので、大きなスプーラを用意する必要もなく処理が軽くなるのでネットワーク(LAN)上にプリントサーバ専用機を設置しなくともクライアントのどれか1つを仮想的にプリントサーバとして用いることも可能となる。
【0060】
印刷完了通知処理部514では、ネットワークプリンタ503からの出力完了イベントを待ち受け、出力完了イベントを受け取ったならば、レジストリ513に設定されている保存ジョブ格納ディレクトリの残り容量を判断し、保存可能ならば保存ジョブ送信処理部509に印刷完了通知を通知する。
【0061】
この通知を受け取った保存ジョブ送信処理部では、印刷データ(EMFデータとRAWデータの両方を含む)と印刷ジョブ情報をまとめた保存ジョブを作成し、保存ジョブ管理処理部512に保存ジョブを送信する。保存ジョブを受け取った保存ジョブ管理処理部では、レジストリ513で設定された指定ディレクトリに、保存ジョブファイルとして格納する。
【0062】
また、印刷完了通知処理部514で、保存ジョブを格納できないと判断した場合には、このジョブに対する完了通知が出されない保存待ち状態のままで保持される。保存待ち状態のジョブに関しては、保存ジョブ管理処理部512が保存期間を超えた保存ジョブを定期的に削除するタイミングで、印刷完了通知処理部514に保存ディレクトリの残り容量が増加したことが通知され、保存待ち状態となっているジョブの中から保存可能なジョブを見つけ出し、保存ジョブ送信処理部509に印刷完了通知が通知される。その結果、保存待ち状態となっていたジョブに関しても、印刷が完了したジョブと同様に保存ジョブファイルとして格納される。
【0063】
更に、保存ジョブファイルを再印刷するときは、クライアント501は、保存ジョブ管理処理部512に対して、現在格納されている保存ジョブリストを要求する。要求に対して保存ジョブ管理処理部512は、保存ジョブリスト受517の内容を返す。
【0064】
これを受け取った保存ジョブ送信処理部509は、再印刷GUI519上で保存されている印刷ジョブのリストを表示部に一覧表示するよう制御する。そして、ユーザに対して任意の保存ジョブと出力先プリンタの選択を促す。本印刷制御プログラムは、ユーザにより選択されたジョブのIDと出力先プリンタを指定して、再度、保存ジョブ管理処理部512に対して、保存ジョブファイルに格納されている印刷データを要求する。
【0065】
この要求に対し、保存ジョブ管理処理部512は、指定された保存ジョブファイルから指定されたプリンタに応じた印刷データを返す。保存ジョブ送信処理部509を経由して、印刷データを受け取った再印刷GUI519は、印刷データの種別(RAW、EMF)に応じて、GDIを経由した印刷をするか、直接スプーラに印刷データを送り、印刷を実行する。また、印刷の結果、生成された印刷データは、保存ジョブ送信処理部509によって、RAWデータ+EMFデータで構成される新しい保存ジョブファイル510となり、前述した手順にてサーバに保存される。
【0066】
このようにして、印刷ジョブ保存管理システムでは、複数のクライアント102〜104から印刷した印刷ジョブをサーバ上の指定された場所(図6の保存ジョブファイル515)に保存ジョブとして保存することができる。
【0067】
なお、印刷ジョブを保存する処理は、すべての印刷ジョブについて行う必要はない。そこで、クライアントでユーザが印刷指示を行う際に、印刷ジョブを印刷後に保存するか、印刷後には保存せずに削除するかを指定させるようにしている。図10を用いて、クライアントに表示されるプリンタドライバのプロパティ画面を説明する。クライアントにインストールされているプリンタドライバでは、図10に示す画面を用いて印刷設定をユーザが設定することができる。このユーザインタフェースで、ユーザは印刷解像度、階調、グラフィックモード、用紙サイズ、印刷レイアウト、用紙向き、スタンプ等の設定が行える。
【0068】
さらに、1401の「印刷ジョブ保存」チェックボックスは、チェックすることにより、印刷終了後にクライアントがサーバに対して印刷ジョブを保存する処理を行うことになり、チェックボックス1401にチェックされないで印刷された場合は、プリンタで印刷終了した後はクライアントに保存していた印刷データをサーバにアップロードすることなく削除する。
【0069】
また、1402の「保存設定」ボタンを押すことにより、印刷ジョブのサーバに保存する際の詳細な設定を行うことができる。保存設定では、印刷ジョブをサーバに保存する期間である保存期間及び印刷耐久回数の設定ができる。印刷耐久回数とは、サーバに保存された印刷ジョブをある回数印刷した場合にジョブを削除するというものであり、その回数が印刷されるまでは印刷ジョブをサーバに保存しておくものである。
【0070】
また、デバイスに依存しない形式(EMF)のデータとデバイスに依存する形式(RAW)のデータとを保存し、再印刷時に出力先のプリンタに出力するために都合のよい方が選択されるため、保存したジョブを、元とは異なる出力先に出力することが可能となり、また同一の出力先に出力する場合は印刷スループットが向上する効果のある再印刷処理を提供することができる。
【0071】
また、本実施例はWindowsを用いた場合であるが、これに限られるものではなく、OS/2等の他のOSでも構築可能である。
【0072】
図11は、本発明に係る印刷システムにおける第1のデータ処理手順の一例を示すフローチャートである。図6に示す印刷完了通知処理部514による印刷完了通知処理手順に対応する。
【0073】
本処理の概要は、ネットワークプリンタ503からの出力完了イベントを待ち、保存ジョブとして保存できるかどうかを判断した後、保存ジョブ送信処理部509に対して印刷完了を通知する処理を示す。印刷完了通知処理部は、本発明の各モジュールあるいはネットワークプリンタ、OSからの各種のイベントによって処理が実行されるイベント駆動型の常駐サービスとして提供される。
【0074】
まず、ステップ601において、ネットワークプリンタからの出力完了イベント、保存容量の変更イベント、あるいは本発明の終了イベントを待ち受ける。イベントが発生したならば、ステップ602において、終了イベントかどうかを判断する。判断の結果、OSからの終了イベントならば、内部メモリを開放した後終了する。
【0075】
判断の結果、終了イベントでなかったならば、ステップ603において、保存先ディレクトリの残量変化のイベントであるかどうかを判断する。判断の結果、残量変化のイベントであったならば、ステップ604において、レジストリ513で指定された保存先ディレクトリに格納できる容量を取得する。
【0076】
そして、ステップ605において、保存待ちリスト518の先頭から保存ジョブのサイズと格納先容量を比較し、保存できるジョブを検索する。次に、ステップ606において、検索の結果、保存可能な保存ジョブが見つかったかどうかを判定し、見つかれなかったと安定した場合は、ステップ601のイベント待ち処理において、次のイベントを待つ。
【0077】
一方、ステップ606で見つかったと判定した場合は、ステップ607において、そのジョブに対する印刷完了通知をRPCを使って、保存ジョブ送信処理部509に通知する。その後、ステップ608において、保存待ちリスト518から削除し、保存ジョブリスト517に追加する。その後、ステップ601のイベント待ち処理において、次のイベントを待つ。
【0078】
一方、ステップ603の判断の結果、残量変化のイベントでなかったと判断された場合は、ステップ609において、印刷完了イベントかどうかを判断する。判断の結果、印刷完了イベントでないと判断されたならば、ステップ601のイベント待ち処理において、次のイベントを待つ。
【0079】
一方、ステップ609でネットワークプリンタからの印刷完了イベントであったと判断された場合は、ステップ610において、レジストリ513で指定された保存先ディレクトリに格納できる容量を取得する。
【0080】
次に、ステップ611において、保存ジョブのサイズと残量を比較し、保存可能であったならば、ステップ612において、そのジョブに対する印刷完了通知をRPCを使って、保存ジョブ送信処理部509に通知する。
【0081】
その後、ステップ613において、印刷ジョブリスト516から削除し、保存ジョブリスト517に追加する。その後、ステップ601のイベント待ち処理において、次のイベントを待つ。
【0082】
一方、ステップ611の判断の結果、保存できないと判断したならば、ステップ614において、印刷ジョブリスト516から削除し、保存待ちリスト518に追加する。その後、ステップ601のイベント待ち処理において、次のイベントを待つ。
【0083】
以上の処理を繰り返すことで、保存ジョブとして保存可能なジョブに関してのみ印刷完了を通知することができる。
【0084】
図12は、本発明に係る印刷システムにおける第2のデータ処理手順の一例を示すフローチャートであり、図6に示した保存ジョブ送信処理部509による保存ジョブ送信書R位手順に対応する。
【0085】
本処理の概要はクライアントPC102上のアプリケーション504の印刷処理で作成された印刷ジョブデータ(RAWデータ)と印刷ジョブ情報から保存ジョブを作成する。このとき、システムのスプーラとして、メタファイルスプール機能を有効に設定しておくことで、印刷データがドライバでRAWデータに解釈される前の、デバイスに依存しないEMFデータを取得することができる。EMFデータは前述したEMFスプーラ(図示省略)で生成されたものをモニタ507でジョブIDをファイル名とする別ファイル(拡張子はEMF)にコピーしておく。そして、EMFデータを含む印刷ジョブデータと印刷ジョブ情報とからなる保存ジョブを、サーバ502の正常動作を確認して、サーバの保存ジョブ管理処理部に送信する。サーバに何らかの障害があり正常に通信できない場合には、クライアント501内に保存ジョブファイルとして保持される。その後、サーバが復旧、あるいは保存先の容量が確保された時点で、保持された保存ジョブファイルをサーバに転送する処理を表したフローチャートである。保存ジョブ送信処理部は、本発明の各モジュール、あるいはOSからの各種イベントによって処理が実行されるイベント駆動型の常駐サービスとして提供されるものとする。
【0086】
まず、ステップ701において、印刷完了イベント、あるいは終了イベントを待ち受け、イベント通知が発生したならば、ステップ702において、終了イベントかどうかを判断し、OSからの終了イベントであると判断した場合は、内部メモリを開放した後、処理を終了する。
【0087】
一方、ステップ702で、終了イベントでなかったと判断した場合は、ステップ703において、印刷完了の通知イベントであるかどうかを判断し、印刷完了通知イベントでなかったと判断した場合は、ステップ701のイベント待ち処理において、次のイベントを待つ。
【0088】
一方、ステップ703で、印刷完了の通知イベントであったと判断した場合は、ステップ704において、モニタ507で保存しておいたジョブIDをファイル名とするEMFデータと、RAWデータとを合わせた印刷データと印刷ジョブ情報を1つの保存ジョブファイルとして作成する。このとき、ファイル名にはジョブIDを文字列に変更したファイル名(拡張子はSPL)で作成する。
【0089】
次に、ステップ705において、作成された保存ジョブファイルをレジストリ511で指定されたサーバ511に対して、ファイル転送する。その後、ステップ706において、正常に送信できたかどうかを判断する。判断の結果、エラー終了したと判断した場合には、再度、ステップ705において、ファイル転送する。これを成功するまで繰り返す。
【0090】
一方、ステップ706で、正常に送信できたと判断した場合は、ステップ707において、送信元となる保存ジョブファイル、あるいは保存ジョブファイルを作成するときの印刷データ、印刷ジョブ情報を内部メモリ、ローカル上のディスクから削除する。その後、ステップ701のイベント待ち処理において、次のイベントを待つ。
【0091】
以上の処理を繰り返すことで、印刷が完了したジョブの印刷ジョブデータと印刷ジョブ情報とを合わせた保存ジョブファイルをサーバ101に送信することが出来る。
【0092】
図13は、本発明の印刷システムにおける第3のデータ処理手順の一例を示すフローチャートであり、図6に示した保存ジョブ管理処理部512による保存ジョブ管理処理手順に対応する。
【0093】
本処理の概要は、クライアント501の保存ジョブ送信処理部512から送信されてきた保存ジョブを、保存ジョブファイルとして指定されたディレクトリに保存する処理である。なお、保存ジョブ管理処理部は、本発明の各モジュール、あるいはOSからの各種イベントによって処理が実行されるイベント駆動型の常駐サービスとして提供される。
【0094】
まず、ステップ801において、保存ジョブ受信イベント、タイマーイベント、あるいは終了イベントを待ち受け、イベント通知が発生したならば、ステップ802において、終了イベントかどうかを判断し、OSからの終了イベントであると判断した場合は、内部メモリを開放した後、処理を終了する。
【0095】
一方、ステップ802で終了イベントでなかったと判断した場合は、ステップ803において、一定間隔で通知されるタイマイベントであるかどうかを判断し、タイマーイベントであったと判断した場合は、ステップ804において、レジストリ513で指定された保存期間を超えた保存ジョブファイルを検索する。
【0096】
そして、ステップ805において、検索の結果、保存期間を超えた保存ジョブファイルが見つかったかどうかを判断し、見つからなかったと判断した場合には、ステップ801のイベント待ち処理において、次のイベントを待つ。
【0097】
一方、ステップ805で、保存期間を超えた保存ジョブファイルが見つかったと判断した場合は、ステップ806において、保存ジョブファイルを削除する。次に、ステップ807において、保存ジョブを格納しているディレクトリの残量が増加したことを、印刷完了通知処理部514に通知する。
【0098】
この通知を受けた印刷完了通知処理部514では、先の述べたように保存待ちジョブリスト518から適切な保存ジョブを見つけ出し、クライアント102の保存ジョブ送信処理部509に対して、印刷完了を通知する。その結果、保存ジョブが転送され、ステップ801において、受信イベントが送られることになる。この処理を、ステップ804の検索処理で見つかった保存ジョブファイル分繰り返す。その後、ステップ801のイベント待ち処理において、次のイベントを待つ。
【0099】
一方、ステップ803でタイマイベントでなかったと判断した場合は、ステップ808において、受信イベントかどうかを判断し、受信イベントでなかったと判断した場合は、ステップ801のイベント待ち処理において、次のイベントを待つ。
【0100】
一方、ステップ808で、受信イベントであったと判断した場合は、ステップ809において、レジストリ513で指定された保存先ディレクトリ名を取得する。次に、ステップ810において、保存先ディレクトリに保存ジョブファイルと同名のファイルを作成し、これに書き込む。
【0101】
次に、ステップ811において、次の送信データを受信し、ステップ812において、受信データが終了したかどうかを判断し、NOすなわち、送信が継続すると判断した場合は、ステップ810に戻り、受信したデータを先に作成した保存ジョブファイルに書き込む。
【0102】
一方、ステップ812で、受信データが終了したと判断した場合は、ステップ813において、書き込まれていない最後の受信データをファイルに書き込む。その後、ステップ801のイベント待ち処理において、次のイベントを待つ。
【0103】
以上の処理を繰り返すことで、保存ジョブ管理処理部512で受信したクライアント102からの保存ジョブを指定された場所に格納することができる。
【0104】
以上の処理を繰り返すことで、保存ジョブ管理処理部で受信したクライアントからの保存ジョブを指定された場所に格納することができる。
【0105】
上記実施形態によれば、印刷が完了したジョブのみを保存ジョブとしてサーバ装置で一括管理でき、サーバ障害時においても印刷ジョブの保存をクライアント装置が肩代わりすることが可能である。
【0106】
また、サーバ装置上の保存容量が増加した時点で、自動的にクライアント装置から保存ジョブをアップロードすることができ、クライアント装置におけるユーザによるデータ転送処理負担をも軽減することができる。
【0107】
図14は、本発明の保存ジョブ送信処理部から提供され、起動される再印刷GUI(グラフィカルユーザインタフェース)でありる。
【0108】
再印刷GUIは、図で示したような入力コントロール、あるいは選択コントロール、チェックコントロールで構成される。保存サーバ名には、保存ジョブの保存先であるサーバコンピュータの名称を入力し、保存ジョブ一覧には、保存サーバに格納された保存リストの内容が表示される。また、出力先プリンタ名には、クライアントコンピュータで利用できるプリンタが列挙され、前記保存ジョブ一覧で選択したジョブと同じ属性を持つプリンタが自動的にカレント表示される。同じ属性を持つプリンタがないときには、自動調整されずカレント表示は変更されない。
【0109】
保存先を更新するがチェックされたときには、後述する保存ジョブ管理処理部にチェック内容が渡され、印刷データを抽出後に現在の保存ジョブファイルが削除され、再印刷後に保存された保存ジョブファイルで更新される。
【0110】
図15は、本発明に係る印刷システムにおける第4のデータ処理手順の一例を示すフローチャートであり、図6に示した再印刷GUI提供モジュール519(以下、再印刷GUIモジュールと呼ぶ)により提供されるGUIを介して、ユーザに再印刷の設定を促す処理を示すフローチャートである。
【0111】
ステップ901で再印刷GUIモジュール519は、図14に示した再印刷GUIを起動する。そして、ステップ902において、保存ジョブ送信処理部509は、クライアントコンピュータ上で利用できるプリンタ一覧を取得し(EnumPrinters())、出力先プリンタ名のリストコントロールに追加する。
【0112】
ステップ903において、再印刷GUIモジュール519は、キャンセルボタン1406が押されたかどうかを判断し、判断の結果、キャンセルが指示されたならば再印刷GUIを終了する。キャンセルが指示されなければ処理を継続する。
【0113】
ステップ904において、再印刷GUIモジュール519は、図14のGUIでユーザにより指定された保存先サーバ1401に対して、RPC(RemoteProcedureCall)を使って、サーバコンピュータ上の保存ジョブ管理処理部に保存ジョブリストを要求する。ここで取得した保存ジョブリストを保存ジョブ一覧リストコントロールに追加・表示する。
【0114】
ステップ905において、再印刷GUIモジュール519は、保存ジョブ一覧1402に表示された保存ジョブから、ユーザにより選択された再印刷するジョブを判断する。続いて、ステップ906において、再印刷GUIモジュール519は、プルダウン形式のウインドウである出力先プリンタ一覧1403から、ユーザにより選択された実際に出力されるプリンタを判断する。それらの判断は、ユーザによるマウス等のポインティングデバイスの操作によりどの候補領域がクリックされたかを判断すればよい。
【0115】
また、ステップ907において、再印刷GUIモジュール519は、ユーザにより保存先を更新するかどうかを示すチェックボックス1404のチェックが選択されたかを判断する。保存先を更新するが選択された場合、選択された保存ジョブは削除され、再印刷後に保存された新しい保存ジョブに置き換わる。
【0116】
そして、ステップ908において、再印刷GUIモジュール519は、再印刷ボタン1405が押下されたかを判断する。ユーザにより再印刷ボタン1405が押下されたと判断した場合には、ステップ909において、前記処理で選択された保存ジョブID、出力先プリンタのプリンタドライバ名、保存ジョブを更新を元に、図15で示された再印刷処理が実行される。再印刷ボタン1405が押されるか、キャンセルボタンが押されるかのいずれかの処理が行われると処理は終了する。
【0117】
以上の処理により、再印刷GUIから任意の保存ジョブの再印刷処理が起動されることになる。
【0118】
図16は、本発明に係る印刷システムにおける第5のデータ処理手順の一例を示すフローチャートであり、再印刷が実行されたときの保存ジョブ管理処理部512の処理を表したフローチャートである。
【0119】
ステップ1001において、保存ジョブ管理処理部512は、再印刷GUI519を経由して保存ジョブ送信処理部からRPCを使った印刷データの取り出し要求(印刷データを受ける共有ファイル名、ジョブID、プリンタドライバ名、更新フラグ)を受ける。
【0120】
ステップ1002において、保存ジョブ管理処理部512は、ステップ1001で受け取ったジョブIDを元に、保存ジョブリストから保存ジョブ情報を検索する。ステップ1003において、検索の結果、指定された保存ジョブがリストに登録されていなければ、呼び出し元に対してエラーを返す。
【0121】
検索の結果、登録されていたならば、ステップ1004において、保存ジョブ管理処理部512は、保存ジョブリストに格納されたプリンタドライバ名と、出力先プリンタドライバ名を比較する。比較の結果、違うモデル、つまり違う属性と判断された場合は、ステップ1010において、保存ジョブ管理処理部512は、保存ジョブファイルからEMFデータだけを抽出する。
【0122】
一方、ステップ1004において、同じモデル、つまり同じ属性と判断された場合は、ステップ1005において、保存ジョブ管理処理部512は、RAWデータだけを抽出する。これにより、無駄なデータ転送を回避することができる。ステップ1006において、保存ジョブ管理処理部512は、ステップ1001にて渡された、印刷データ書込み用の共有ファイルに抽出した印刷データを書き込む。続いて、ステップ1007において、保存ジョブ管理処理部512は、呼び出し元に返すリターン値に印刷データの種別を書き込む。この時点で、クライアントに渡す印刷データの書込みは完了する。
【0123】
ステップ1008において、保存ジョブ管理処理部512は、更新フラグが設定されているかどうかを判断し、判断の結果、更新フラグが設定されていなければ、そのまま終了し、更新フラグが設定されているなら、ステップ1009において、再印刷の元となる保存ジョブファイルを削除する。削除することで、オリジナルの保存ジョブファイルは削除されるが、再印刷にすることで保存ジョブファイルが新しく生成されるため、結果として保存ジョブファイルが更新されることになる。
【0124】
図17は、本発明に係る印刷システムにおける第6のデータ処理手順の一例を示すフローチャートであり、再印刷が実行されたの処理を表したフローチャートである。
【0125】
ステップ1101において、再印刷GUI519で指定された項目をRPCのパラメータとして設定する。ステップ1102において、印刷データを受け取るための共有ファイルを作成する。RPCによる印刷データ要求の結果として、この共有ファイルに印刷データが書き込まれることになる。
【0126】
ステップ1103において、前記図15のフローチャートで示した処理が実行され、保存ジョブ送信処理部509が印刷データを受け取ることになる。ステップ1104において、リターン値に格納されている印刷データの属性を判断し、判断の結果、受け取った印刷データがEMFデータであったなら、ステップ1105において、通常のアプリケーションから印刷する時の手順に従って、印刷するデバイス(ここでは、プリンタ)のデバイスコンテキストを作成する。デバイスコンテキストは、描画する用紙の属性、プリンタの能力、属性が書き込まれた一種のファイルであり、このデバイスコンテキスもとに作成したメタファイルハンドルに描画することで印刷が実現できる。
【0127】
ステップ1106において、取得したEMFデータと、前記デバイスコンテキストからメタファイルハンドルを取得する。ステップ1107において、EMFファイルを描画する。EMFを描画する時は、専用のGDI関数(PlayMetaFile())を呼び出すことで、GDI508がプリンタドライバと連動して印刷データを生成する。
【0128】
ステップ1108において、メタファイルハンドルを削除する。ステップ1109において、デバイスコンテキストを削除することで、印刷処理の終了をGDIに告げる。この時点で、生成された印刷データは、スプーラに送られ通常の印刷が実行される。ステップ1104の判断の結果、RAWデータであったならば、ステップ1111において、印刷先プリンタをオープンし、直接スプーラに印刷データを送るようにする。
【0129】
ステップ1112において、サーバから受け取った印刷データをそのままプリンタに書き込むことで、保存時の印刷イメージがそのままプリンタに送られることになる。ステップ1113において、すべての印刷データが送り終えたなら、プリンタをクローズする。そして、ステップ1110において、印刷データを受け取った共有ファイルを削除する。
【0130】
以上の処置により、保存サーバに保存されている保存ジョブから印刷データを取り出し、指定されたプリンタに再出力することができる。
【0131】
以下、図18に示すメモリマップを参照して本発明に係るサーバ装置、クライアント装置を適用可能な印刷システムで読み出し可能なデータ処理プログラムの構成について説明する。
【0132】
図18は、本発明に係るサーバ装置、クライアント装置で読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0133】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報、作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0134】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0135】
本実施形態における図11〜図13、図15〜図17に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0136】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0137】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0138】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD、磁気テープ、不揮発性のメモリカード、ROM、EEPROM等を用いることができる。
【0139】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0140】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0141】
以上説明したように、本実施例によれば、印刷が完了したジョブのみを保存ジョブとしてサーバで一括管理でき、サーバ障害時においても印刷ジョブの保存をクライアントが肩代わりすることが可能である。
【0142】
また、サーバ上の保存容量が増加した時点で、自動的にクライアントから保存ジョブをアップロードすることができる。
【0143】
【発明の効果】
以上説明したように、本発明によれば、プリントサーバに保存された保存ジョブデータをクライアント装置が取り出し、再印刷先が同じ属性のプリンタであれば、デバイス依存形式データを用いて印刷処理を行うため、全く同じ印刷イメージが再現でき、また再印刷先が違う属性のプリンタである場合は、デバイス非依存形式データから再度デバイス依存形式データを生成して印刷処理を行うため、オリジナルの印刷イメージに近い出力が可能となる。
【図面の簡単な説明】
【図1】本実施の印刷ジョブ保存管理システムを適用するネットワークシステムのシステム構成図である。
【図2】図1におけるクライアントコンピュータの概略構成を示すブロック図である。
【図3】図2におけるRAMに、図4に示すFDからプログラムを展開したときのメモリマップである。
【図4】図2におけるFD内部のデータを表すメモリマップである。
【図5】図1におけるクライアントコンピュータと図2におけるFDとの関係を表した図である。
【図6】本実施の形態に係るクライアントコンピュータおよびサーバのソフトモジュール構成を表す図である。
【図7】クライアントのレジストリ構成を表す図である。
【図8】サーバのレジストリ構成を表す図である。
【図9】リストの構成を表す図である。
【図10】図1に示すクライアント装置の表示装置に表示される印刷設定画面の一例を示す図である。
【図11】本発明の印刷完了通知処理部の流れを表したフローチャートである。
【図12】本発明の保存ジョブ送信処理部の流れを表したフローチャートである。
【図13】本発明の保存ジョブ管理処理部の流れを表したフローチャートである。
【図14】本発明の再印刷GUIを表す図である。
【図15】本発明の再印刷GUIの流れを表したフローチャートである。
【図16】本発明の保存ジョブ送信処理部の再印刷処理の流れを表したフローチャートである。
【図17】本発明の保存ジョブ管理処理部の印刷データ抽出処理の流れを表したフローチャートである。
【図18】本発明に係るサーバ装置,クライアント装置で読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a server apparatus, a client apparatus, a print job management system, and a method for managing print data and print job information output from a plurality of clients connected to a network to a network printer connected to the network. And a storage medium.
[0002]
[Prior art]
Conventionally, as an environment using a network printer, a plurality of clients on the network do not transmit print data directly to the network printer. This is because when the network printer receives a plurality of print data from a plurality of client apparatuses, the load on the order control and the reception processing increases, and the cost of the network printer increases to cope with it.
[0003]
For this reason, a network OS is often used to set and use a print server on the network. In a print job storage system using such a print server, print data is transferred from the client to the print server, and the print data is stored in a specific location on the print server. At the same time, the print server is designated as the output destination of the print data. The print order of the network printer is managed, and when the print order is reached, the stored print data is read, and the print data is transmitted to the network printer to execute printing.
[0004]
In this case, the print server must accept print data for a managed network printer from a plurality of clients on the network, and the load on the print server increases as the number of clients and the number of network printers increase.
[0005]
Therefore, when the print data storage medium (for example, hard disk) in the print server becomes unavailable due to an error such as insufficient capacity, not only is the print data received from each client device stored, but the print data is sent to the network printer. Even processing cannot be executed.
[0006]
[Problems to be solved by the invention]
Therefore, recently, the print server accepts only a print request for a print job, the print data to be actually printed is held by the client, and after the client device accepts the print data transmission permission from the print server, the client device transmits to the network printer. A mechanism for directly transmitting print data has been considered.
[0007]
In order to solve the problem that the printing process cannot be executed due to a failure of the print server, “JP-A-10-240469 network printing system and information processing apparatus” has been considered. However, in this system, since the print data held in the client is deleted when printing is completed, the print data that has been normally completed cannot be stored on the server computer.
[0008]
Therefore, a storage medium on the server computer before notifying the completion of printing (in this example, a hard disk on the computer is used to simplify the description, but a removable storage medium such as MO is also possible) A server computer having a print completion notifying means for notifying the client computer of the completion of printing and setting a print job that cannot be saved to a state of waiting for storage only when it is possible to determine and save the write allowance of A client computer having storage job transmission means for transmitting the print data and the print job information together as a storage job to the server computer without deleting the print data at the time of receipt, and deleting the storage job when the transmission is completed; The stored job transmitted from the client computer is A storage job that has been stored in a specified directory, and periodically deletes a storage job that has passed the specified storage period, and notifies the print completion notification means that the storage allowable amount has increased. A print job storage management system having storage job management means that can notify the completion of printing asynchronously with respect to a storage job that could not be stored in the printer.
[0009]
According to this, a print job that notifies the completion of printing is retained in a designated directory on the server computer for a specified period, and a print job that cannot be saved on the server computer is saved on the client computer that performed printing. It will be saved in a waiting state. However, as for the job waiting to be saved, the completion of printing is notified asynchronously as soon as the storage capacity on the server computer becomes available, so that the job is saved on the designated directory on the server computer at that time. As a result, it is possible to prevent a print completion job from being saved on the server computer due to a lack of storage capacity on the server computer.
[0010]
Furthermore, when reprinting a saved job saved in the server computer, if only RAW data in which device information is stored is saved, the output destination printer is limited to a printer with exactly the same specifications. Could not reprint to other printers.
[0011]
Therefore, a print job storage management system that can reprint a stored job according to the output destination printer by storing the raw data and the EMF data together in the stored job file is conceivable.
[0012]
Further, when the print data stored in the saved job file is RAW data, there is a restriction that printing can be performed only on the same printer when reprinting.
[0013]
A first object of the present invention is to determine the size of print job data and the allowable amount of a storage directory on a server computer, and to notify the completion of printing only when it can be stored.
[0014]
The second object of the present invention is to send print data and print job information together as a save job to the server computer in response to a print completion notification from the server computer, and when the transmission is completed, Is to delete.
The third object of the present invention is to receive a save job transmitted from a client computer, save it in a directory on a separately designated server computer, and periodically pass a separately designated save period. Deleting a stored job.
[0015]
A fourth object of the present invention is to enable reprinting without limiting the output destination by simultaneously storing RAW data and EMF data in a saved job file.
[0016]
The fifth object of the present invention is to select an arbitrary saved job file saved in the server computer and send the print data directly to the spooler in accordance with the print data (RAW, EMF) sent from the server. It is possible to perform normal application level printing that prints or generates print data with a printer driver via GDI.
[0017]
The sixth aspect of the present invention is to re-save the RAW data generated when reprinting as a new saved job file.
[0018]
[Means for Solving the Problems]
  A print server apparatus according to the present invention is a print server apparatus capable of receiving a print job to be printed from an information processing apparatus via a network, and from the information processing apparatus by a printer driver corresponding to a print output destination printing apparatus. The generated device dependent format data and device independent format data generated as intermediate data during the generation of the device dependent format data are received, and the received device dependent format data and the device independent format data are received. Saving job management means for saving as saved job data, and managing the saved job data in association with attributes of the printing output destination printing apparatus even after printing processing by the printing output destination printing apparatus; Stored job data managed by the stored job management means and printing of the reprint output destination In accordance with a reprint request that designates a device, a determination unit that determines whether the reprint output destination printing device and the printing device on which the device-dependent format data of the designated stored job data depends differ from each other And the information processing apparatus uses the printer driver corresponding to the reprint output destination printing apparatus based on the device-independent format data when the determination means determines that the attributes are different. The device-independent format data is output so that device-dependent format data depending on the previous printing apparatus can be generated. On the other hand, when the determination unit determines that the attributes are the same, the device-dependent format data is output. Output control means for outputting.
[0019]
According to a second aspect of the present invention, the stored job management unit stores the stored job data transmitted from the information processing apparatus for a specified period, and deletes the stored job data from the memory after the specified period has elapsed. Is.
[0020]
According to a third aspect of the present invention, the information processing apparatus further includes a determination unit that determines whether the stored job data can be managed by the stored job management unit in response to a storage request from the information processing apparatus. When the determination unit determines that the stored job data can be managed, the stored job management unit stores and manages the stored job data.
[0021]
According to a fourth aspect of the present invention, when the determination unit determines that the storage file cannot be managed, the storage job management unit stores the print job ID and the storage job size requested to be stored. It is registered and managed in the waiting list.
[0022]
According to a fifth aspect of the present invention, there is further provided detection means for detecting a print job ID that can be registered by comparing the free space of the memory with the stored job size registered in the storage waiting list.
[0025]
  The information processing apparatus of the present invention is an information processing apparatus that generates a print job to be printed by a printing apparatus via a network, and generates device-dependent format data by a printer driver corresponding to the printing apparatus that is the print output destination. A print data generation unit, and a print job management apparatus configured to generate the device dependent format data generated by the print data generation unit, and device independent format data generated as intermediate data during the generation of the device dependent format data. The device-dependent format data and the device are stored so as to be stored as saved job data, and can be managed in association with attributes of the printing apparatus of the print output destination even after printing processing by the printing apparatus of the print output destination Independent format data is transmitted to the print job management apparatus via the network. Communication control means, display means for displaying a list of stored job data managed by the print job management apparatus after the device-dependent format data is output to the printing output destination printing apparatus, and the list A determination unit that determines the stored job data to be reprinted and a printing apparatus that is a reprint output destination of the stored job data, and the determined attribute of the reprint output destination printing apparatus is determined The device-independent format data is received from the print job management apparatus when the device-dependent format data of the stored job data is different from the attribute of the printing device, and the reprint output destination is received based on the device-independent format data. Device-dependent format data dependent on the reprint output destination printing apparatus is generated using a printer driver corresponding to the printing apparatus Output to the reprint output destination printing device, and when the attribute of the reprint output destination printing device and the attribute of the printing device on which the device-dependent format data of the specified stored job data depend are the same, The device dependent format data is received from the print job management apparatus and is output to the reprint output destination printing apparatus.
[0026]
According to a ninth aspect of the present invention, the print job management apparatus further includes condition specifying means for specifying a storage condition for storing the stored job data.
[0027]
In a tenth aspect of the present invention, the storage condition is a storage period.
[0028]
In an eleventh aspect of the present invention, the storage condition is the number of printing durability.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram illustrating the configuration of a printing system to which the printing control apparatus according to the present invention can be applied, and particularly corresponds to a system for managing print job storage. In this embodiment, it is assumed that n client computers are connected.
[0034]
In the figure, reference numerals 102, 103, and 104 denote client computers, which are connected to the network 106 by a network cable, can execute various programs such as application programs, and have a printer driver for creating print data.
[0035]
A server 101 is connected to the network 106 by a network cable. The server 101 of this embodiment has a function of storing print job information from the client computers 102, 103, and 104 as a summary file.
[0036]
A network printer 105 is connected to the network 106 via a network interface, and prints print data transmitted from the client computer. A network 106 is connected to a client computer, a server, a network printer, and the like.
[0037]
FIG. 2 is a block diagram showing a schematic configuration of the client computer 102 shown in FIG. The client computers 103 and 104 have the same configuration.
[0038]
In FIG. 2, a CPU 200 executes an application program, a printer driver program, an OS, a print job storage management program, and the like stored in an HD (hard disk) 205, and temporarily stores information, files, and the like necessary for executing the program in a RAM 202. Control to store automatically.
[0039]
The ROM 201 stores various data such as a program such as a basic I / O program, font data used for document processing, and template data. A RAM 202 functions as a main memory, work area, and the like for the CPU 200. Reference numeral 203 denotes an FD (floppy disk) drive, and a program stored in the FD 204 can be loaded into the computer system through the FD drive 203 as shown in FIG.
[0040]
Reference numeral 204 denotes an FD that stores a print job storage management program and related data described in the present embodiment, and the configuration of the stored contents is shown in FIG.
In FIG. 4, 400 is the data content of the FD 204, 401 is volume information indicating data information, 402 is directory information, 403 is a print job storage management program described in this embodiment, and 404 is related data thereof. is there.
[0041]
The print job storage management program 403 is a program code based on the flowchart of the network printer control procedure shown in FIGS.
[0042]
Reference numeral 205 denotes an HD which stores an application program, a printer driver program, an OS, a print job storage management program, related programs, and the like. A keyboard 206 is used by the user to instruct the client computer to input device control command instructions and the like. A display 207 displays a command input from the keyboard 206, a printer status, and the like. A system bus 208 controls the data flow in the client computer.
[0043]
FIG. 3 shows a memory map in a state where the network printer control program is loaded into the RAM 202 and can be executed.
In this embodiment, an example is shown in which the print job storage management program and related data are directly loaded from the FD 204 to the RAM 202 and executed. However, other than this, the print job storage management program and related data may be loaded from the HD 205 to the RAM 202.
[0044]
In addition to the FD, a CD-ROM, an IC memory card, or the like may be used as a medium for recording the print job storage management program. Further, the print job storage management program can be recorded in the ROM 201 and configured to be a part of the memory map, and can be directly executed by the CPU 200.
[0045]
Reference numeral 301 denotes a basic I / O program, which has an IPL (Initial Program Rotating) function or the like that reads the OS from the HD 205 into the RAM 202 and starts the operation of the OS when the control device is turned on. This is the area that contains the program. Reference numeral 302 denotes an OS, 303 a print job storage management program, 304 related data, and 305 a work area where the CPU 200 executes the network printer control program.
[0046]
FIG. 6 is a diagram illustrating a software module configuration of a printing system to which a client computer and a server according to an embodiment of the present invention can be applied. These are supplied from FD, for example.
[0047]
In the figure, 501 is a software module configuration of a client computer, 502 is a software module configuration of a server, and 503 is a network printer. Reference numeral 504 denotes an application module that creates print data stored in the print job storage management system of the present invention. The application 504 creates document data and outputs it as drawing data (referred to as a GDI function) to a GDI (Graphic Device Interface) 508 which is an OSS drawing means when printing. Reference numeral 505 denotes a printer driver that operates by being incorporated in an OS (Windows (registered trademark)) manufactured by Microsoft Corporation.
[0048]
Reference numeral 506 denotes a printer spooler in Windows, and reference numeral 507 denotes a network printer control monitor. Reference numeral 509 denotes a print storage job transmission unit, which is a module that transmits storage data that includes print data 510 (RAW + EMF as will be described later in the present invention) and print job information to the server. Reference numeral 511 denotes a registry registered in the Windows system, in which a server name as a transmission destination or a directory for storing stored job data is set.
[0049]
When printing is performed by the application 504, the document data is output to the GDI 508 as a GDI function that is drawing data, and the GDI 508 converts the drawing data into a drawing command in a format that can be executed by a driver called a DDI function (Device Driver Interface). Upon receiving the DDI function, the printer driver 505 converts it into a printer language (page description language) that can be interpreted by the print output destination network 503. Further, in Windows OS, spooling can be performed with a file of an intermediate data format that does not depend on a device called EMF (Enhanced Meta File). The EMF data is for saving the drawing contents in a binary format based on the GDI function issued by the application. When the spooling is completed, the drawing content temporarily saved by the EMF spooler (not shown) is output to the GDI 508 as a GDI function. The print data in the page description language format generated by the printer driver 505 is called RAW data.
[0050]
Reference numeral 512 denotes a saved job management processing unit according to the present invention, which receives saved job data sent from a 509 print saved job transmission unit on a client computer using RPC (Remote Procedure Call) or sends designated print data. It is a module to do.
[0051]
Reference numeral 513 denotes a server registry registered in the Windows system, which can control the operation of the print storage job management processing unit 512 according to set information such as the storage destination and storage period of the storage job file.
[0052]
A print completion notification processing unit 514 receives a print completion event for the print data transmitted from the monitor 507 of the client 102 from the network printer 503, determines whether it can be stored, and then transmits it to the print storage job transmission processing unit 509. Notification of print completion is sent using RPC.
[0053]
Reference numeral 515 denotes a file in which a saved job is stored as a file, 516 denotes a job list, 517 denotes a saved job list, and 518 denotes a list structure used for a job queue for saving. Reference numeral 519 denotes a reprint GUI (reprint GUI providing module), which provides a user interface for reprinting an arbitrary stored job from the client. These modules constitute a print job storage management system according to the present invention, and are supplied from a storage medium, FD 204 in this embodiment.
[0054]
FIG. 7 is a diagram for explaining the data structure of the registry 511 of the client 102 shown in FIG. 6, and shows a case where it is composed of server operation information, server name, server IP address, and the like.
[0055]
FIG. 8 is a view for explaining the data structure of the registry 511 of the server 101 shown in FIG.
[0056]
FIG. 9 is a diagram for explaining the data structure of the list structure of the server 101 shown in FIG. 6. For example, the index, job ID, saved job file name, saved job size, saved log period, user name, document name, A case in which the printer name, driver name, next list address, and the like are configured is shown.
[0057]
Hereinafter, a print job storage management process when printing from the client PC 102 to the network printer 105 in the printing system configured as described above will be described.
[0058]
In the present embodiment, description will be given based on the printing system of the virtual print server system. In the virtual print server system having the configuration as shown in FIG. 6, processing is performed as follows. When printing is started from the application 504 on the client PC 501 (102), the print control program accesses the EMF data spooling the drawing contents issued from the application 504, and saves a copy of the saved job data 510. To generate. The RAW data, which is the printer control language generated by the printer driver 505 based on the print command from the GDI 508, is also stored by associating it with the identifier that the print job is the same as the previously stored EMF data. deep. When the storage of the print job (EMF data + RAW data) ends, the client 102 prints print request information (print data is not included) including the print data name, host name, print request time, print output destination printer name, and the like. ) To the print server 101 (server 502). The print server 101 manages the order of print requests for each output destination printer, and when the network printer is waiting for printing, that is, when there is no print job being printed, the print server 101 prints to the client that requested print request information for the next print order. Notify permission. This print permission includes a print data name to be printed, a request time, and the like.
[0059]
Upon receiving a print instruction from the server 502, the client searches the saved job data 510 (or the spooler 506) for a print job that is permitted to be printed from the division within the print permission. Then, print data that is RAW data saved in the saved job data 510 is read out, and the monitor 507 transmits the read print data to the output destination network printer 503 using LPR, and printing is executed. Is done. In this way, the print server manages the print order, the client spools the print data, and when the print order arrives, the client itself sends the print data to the network printer, so that the print data is transmitted over the network. Since the number of times of communication is reduced, the load on the network is reduced, and since the print server only manages the printing order, it is not necessary to prepare a large spooler, so the processing is lightened and the print server on the network (LAN) It is possible to virtually use any one of the clients as a print server without installing a dedicated machine.
[0060]
The print completion notification processing unit 514 waits for an output completion event from the network printer 503. If an output completion event is received, the print completion notification processing unit 514 determines the remaining capacity of the saved job storage directory set in the registry 513, and if it can be saved. The storage job transmission processing unit 509 is notified of a print completion notification.
[0061]
Upon receiving this notification, the saved job transmission processing unit creates a saved job in which print data (including both EMF data and RAW data) and print job information are combined, and sends the saved job to the saved job management processing unit 512. . Upon receiving the saved job, the saved job management processing unit stores it as a saved job file in the designated directory set in the registry 513.
[0062]
If the print completion notification processing unit 514 determines that the stored job cannot be stored, the print completion notification processing unit 514 holds the job in a storage waiting state in which a completion notification for the job is not issued. For a job waiting to be saved, the print job notification processing unit 514 is notified that the remaining capacity of the save directory has increased at a timing when the save job management processing unit 512 periodically deletes a save job that has exceeded the storage period. Then, a storable job is found from the jobs waiting to be stored, and the storage job transmission processing unit 509 is notified of a print completion notification. As a result, a job that is in a storage waiting state is also stored as a stored job file in the same manner as a job that has been printed.
[0063]
Further, when reprinting the saved job file, the client 501 requests the saved job list from the currently stored job list to the saved job management processing unit 512. In response to the request, the saved job management processing unit 512 returns the contents of the saved job list receiver 517.
[0064]
Receiving this, the saved job transmission processing unit 509 controls to display a list of print jobs saved on the reprint GUI 519 on the display unit. Then, the user is prompted to select an arbitrary saved job and output destination printer. This print control program designates the ID of the job selected by the user and the output destination printer, and requests the saved job management processing unit 512 for the print data stored in the saved job file again.
[0065]
In response to this request, the saved job management processing unit 512 returns print data corresponding to the designated printer from the designated saved job file. Upon receiving the print data via the saved job transmission processing unit 509, the reprint GUI 519 prints via the GDI or directly sends the print data to the spooler according to the type of the print data (RAW, EMF). Execute printing. Also, print data generated as a result of printing becomes a new saved job file 510 composed of RAW data + EMF data by the saved job transmission processing unit 509, and is saved in the server in the above-described procedure.
[0066]
In this way, in the print job storage management system, print jobs printed from the plurality of clients 102 to 104 can be stored as storage jobs in designated locations on the server (stored job file 515 in FIG. 6).
[0067]
Note that the process of storing print jobs need not be performed for all print jobs. Therefore, when the user issues a print instruction on the client, the user specifies whether to save the print job after printing or to delete without printing after printing. A printer driver property screen displayed on the client will be described with reference to FIG. In the printer driver installed in the client, the user can set print settings using the screen shown in FIG. With this user interface, the user can set print resolution, gradation, graphic mode, paper size, print layout, paper orientation, stamp, and the like.
[0068]
In addition, when the “print job storage” check box 1401 is checked, the client performs processing for saving the print job to the server after printing is completed, and printing is performed without checking the check box 1401. Deletes the print data stored in the client without uploading it to the server after the printer finishes printing.
[0069]
Further, by pressing a “save setting” button 1402, detailed settings for saving the print job in the server can be performed. In the storage setting, a storage period, which is a period for storing a print job in the server, and a print durability count can be set. The printing endurance count is to delete a job when the print job stored in the server is printed a certain number of times, and to store the print job in the server until the number of times is printed.
[0070]
In addition, since a device-independent format (EMF) data and a device-dependent format (RAW) data are stored and output to the output destination printer at the time of reprinting, a convenient one is selected. The stored job can be output to an output destination different from the original, and when the output is output to the same output destination, it is possible to provide reprint processing that has an effect of improving the print throughput.
[0071]
In addition, the present embodiment is a case where Windows is used. However, the present invention is not limited to this, and other OS such as OS / 2 can be constructed.
[0072]
FIG. 11 is a flowchart showing an example of a first data processing procedure in the printing system according to the present invention. This corresponds to the print completion notification processing procedure by the print completion notification processing unit 514 shown in FIG.
[0073]
The outline of this process indicates a process of waiting for an output completion event from the network printer 503, determining whether or not the job can be saved as a saved job, and then notifying the saved job transmission processing unit 509 of the completion of printing. The print completion notification processing unit is provided as an event-driven resident service in which processing is executed in accordance with various events from each module of the present invention, a network printer, and the OS.
[0074]
First, in step 601, an output completion event from the network printer, a storage capacity change event, or an end event of the present invention is awaited. If an event has occurred, it is determined in step 602 whether it is an end event. As a result of the determination, if it is an end event from the OS, the process ends after the internal memory is released.
[0075]
If it is determined that the event is not an end event, it is determined in step 603 whether the event is a change in the remaining amount of the storage destination directory. As a result of the determination, if it is an event of a remaining amount change, a capacity that can be stored in the storage destination directory designated by the registry 513 is acquired in step 604.
[0076]
In step 605, the size of the saved job is compared with the storage destination capacity from the top of the waiting list 518 to search for a job that can be saved. Next, in step 606, it is determined whether or not a storable saved job has been found as a result of the search. If it is stable that the job has not been found, the next event is waited in the event waiting process in step 601.
[0077]
On the other hand, if it is determined in step 606 that the print job has been found, in step 607, a print completion notification for the job is sent to the saved job transmission processing unit 509 using RPC. Thereafter, in step 608, the data is deleted from the storage waiting list 518 and added to the storage job list 517. Thereafter, in the event wait process of step 601, the next event is waited for.
[0078]
On the other hand, if it is determined in step 603 that the event is not a remaining amount change event, it is determined in step 609 whether the event is a print completion event. As a result of the determination, if it is determined that the event is not a print completion event, the next event is awaited in the event wait process of step 601.
[0079]
On the other hand, if it is determined in step 609 that the event is a print completion event from the network printer, in step 610, the capacity that can be stored in the storage destination directory specified in the registry 513 is acquired.
[0080]
Next, in step 611, the size of the stored job is compared with the remaining amount, and if it can be stored, in step 612, a print completion notification for the job is sent to the stored job transmission processing unit 509 using RPC. To do.
[0081]
Thereafter, in step 613, the job is deleted from the print job list 516 and added to the saved job list 517. Thereafter, in the event wait process of step 601, the next event is waited for.
[0082]
On the other hand, if it is determined as a result of the determination in step 611 that the image cannot be stored, in step 614 it is deleted from the print job list 516 and added to the storage waiting list 518. Thereafter, in the event wait process of step 601, the next event is waited for.
[0083]
By repeating the above processing, it is possible to notify the completion of printing only for a job that can be saved as a saved job.
[0084]
FIG. 12 is a flowchart showing an example of the second data processing procedure in the printing system according to the present invention, and corresponds to the stored job transmission form R procedure by the stored job transmission processing unit 509 shown in FIG.
[0085]
The outline of this process is to create a saved job from print job data (RAW data) created by the printing process of the application 504 on the client PC 102 and the print job information. At this time, by enabling the metafile spool function as a system spooler, EMF data independent of the device before the print data is interpreted as RAW data by the driver can be acquired. The EMF data generated by the above-described EMF spooler (not shown) is copied to another file (extension is EMF) with the job ID as a file name on the monitor 507. Then, the storage job including the print job data including the EMF data and the print job information is checked for normal operation of the server 502 and transmitted to the storage job management processing unit of the server. When there is some failure in the server and communication cannot be performed normally, the job is stored in the client 501 as a saved job file. After that, when the server is restored or when the storage destination capacity is secured, the flowchart shows processing for transferring the stored job file stored to the server. The stored job transmission processing unit is provided as an event-driven resident service in which processing is executed by various modules from the present invention or various events from the OS.
[0086]
First, in step 701, a print completion event or an end event is awaited, and if an event notification is generated, it is determined in step 702 whether it is an end event. After releasing the memory, the process is terminated.
[0087]
On the other hand, if it is determined in step 702 that the event is not an end event, it is determined in step 703 whether the event is a print completion notification event. If it is determined that the event is not a print completion notification event, the process waits for an event in step 701. Wait for the next event in processing.
[0088]
On the other hand, if it is determined in step 703 that the event is a print completion notification event, in step 704, the print data is a combination of the EMF data having the job ID saved in the monitor 507 as the file name and the RAW data. And print job information as one saved job file. At this time, the file name is created with a file name (extension is SPL) in which the job ID is changed to a character string.
[0089]
Next, in step 705, the created saved job file is transferred to the server 511 designated by the registry 511. Thereafter, in step 706, it is determined whether or not the transmission is successful. If it is determined that the error has ended, the file is transferred again in step 705. Repeat until successful.
[0090]
On the other hand, if it is determined in step 706 that the transmission was successful, in step 707, the saved job file serving as the transmission source, or the print data and print job information for creating the saved job file are stored in the internal memory or locally. Delete from disk. Thereafter, in the event wait process of step 701, the next event is waited for.
[0091]
By repeating the above processing, it is possible to transmit to the server 101 a saved job file that is a combination of print job data and print job information of a job that has been printed.
[0092]
FIG. 13 is a flowchart showing an example of a third data processing procedure in the printing system of the present invention, and corresponds to the stored job management processing procedure by the stored job management processing unit 512 shown in FIG.
[0093]
The outline of this process is a process of saving the saved job transmitted from the saved job transmission processing unit 512 of the client 501 in a directory designated as a saved job file. The stored job management processing unit is provided as an event-driven resident service in which processing is executed in accordance with various modules from the present invention or various events from the OS.
[0094]
First, in step 801, a stored job reception event, a timer event, or an end event is waited. If an event notification occurs, it is determined in step 802 whether the event is an end event, and it is determined that the end event is from the OS. In this case, the processing is terminated after releasing the internal memory.
[0095]
On the other hand, if it is determined in step 802 that the event is not an end event, it is determined in step 803 whether it is a timer event that is notified at regular intervals. A stored job file exceeding the storage period specified in 513 is searched.
[0096]
In step 805, it is determined whether or not a stored job file that has exceeded the storage period has been found as a result of the search. If it is determined that no stored job file has been found, the next event is waited in the event waiting process in step 801.
[0097]
On the other hand, if it is determined in step 805 that a stored job file exceeding the storage period has been found, the stored job file is deleted in step 806. In step 807, the print completion notification processing unit 514 is notified that the remaining amount of the directory storing the saved job has increased.
[0098]
Upon receiving this notification, the print completion notification processing unit 514 finds an appropriate storage job from the storage waiting job list 518 as described above, and notifies the storage job transmission processing unit 509 of the client 102 of the completion of printing. . As a result, the stored job is transferred, and a reception event is sent in step 801. This process is repeated for the stored job file found in the search process in step 804. Thereafter, in the event wait process in step 801, the next event is waited for.
[0099]
On the other hand, if it is determined in step 803 that the event is not a timer event, it is determined in step 808 whether the event is a reception event. If it is determined that the event is not a reception event, the next event is waited in the event wait process in step 801. .
[0100]
On the other hand, if it is determined in step 808 that the event is a reception event, the storage destination directory name specified in the registry 513 is acquired in step 809. Next, in step 810, a file having the same name as the saved job file is created in the save destination directory and written into the file.
[0101]
Next, in step 811, the next transmission data is received. In step 812, it is determined whether the reception data has ended. If NO, that is, if it is determined that transmission will continue, the process returns to step 810 and the received data Is written to the saved job file created earlier.
[0102]
On the other hand, if it is determined in step 812 that the received data has been completed, the last received data that has not been written is written in the file in step 813. Thereafter, in the event wait process in step 801, the next event is waited for.
[0103]
By repeating the above processing, the saved job from the client 102 received by the saved job management processing unit 512 can be stored in a designated location.
[0104]
By repeating the above processing, the stored job received from the client by the stored job management processing unit can be stored in the designated location.
[0105]
According to the above-described embodiment, only jobs for which printing has been completed can be collectively managed by the server device as saved jobs, and the client device can take over saving print jobs even when a server failure occurs.
[0106]
In addition, when the storage capacity on the server apparatus increases, a storage job can be automatically uploaded from the client apparatus, and the data transfer processing burden on the client apparatus by the user can be reduced.
[0107]
FIG. 14 shows a reprint GUI (graphical user interface) provided and activated by the stored job transmission processing unit of the present invention.
[0108]
The reprinting GUI is composed of an input control as shown in the figure, a selection control, and a check control. In the storage server name, the name of the server computer that is the storage destination of the storage job is input, and the content of the storage list stored in the storage server is displayed in the storage job list. Further, printers that can be used by the client computer are listed in the output destination printer name, and a printer having the same attribute as the job selected in the stored job list is automatically displayed as a current. When there is no printer having the same attribute, the current display is not changed without automatic adjustment.
[0109]
When Update storage location is checked, the check contents are passed to the stored job management processing section described later, the current stored job file is deleted after extracting the print data, and updated with the stored job file stored after reprinting Is done.
[0110]
FIG. 15 is a flowchart showing an example of a fourth data processing procedure in the printing system according to the present invention, which is provided by the reprint GUI providing module 519 (hereinafter referred to as a reprint GUI module) shown in FIG. 6 is a flowchart illustrating processing for prompting a user to set reprinting via a GUI.
[0111]
In step 901, the reprint GUI module 519 activates the reprint GUI shown in FIG. In step 902, the saved job transmission processing unit 509 acquires a list of printers that can be used on the client computer (EnumPrints ()) and adds it to the list control of the output destination printer name.
[0112]
In step 903, the reprint GUI module 519 determines whether or not the cancel button 1406 has been pressed, and if the cancel is instructed as a result of the determination, the reprint GUI is terminated. If cancellation is not instructed, the process is continued.
[0113]
In step 904, the reprint GUI module 519 uses the RPC (Remote Procedure Call) for the storage destination server 1401 specified by the user in the GUI of FIG. 14 to store the stored job list in the stored job management processing unit on the server computer. Request. The acquired saved job list is added and displayed in the saved job list list control.
[0114]
In step 905, the reprint GUI module 519 determines a reprint job selected by the user from the stored jobs displayed in the stored job list 1402. Subsequently, in step 906, the reprinting GUI module 519 determines an actually output printer selected by the user from the output destination printer list 1403 which is a pull-down window. These determinations may be made by determining which candidate area is clicked by the operation of a pointing device such as a mouse by the user.
[0115]
In step 907, the reprint GUI module 519 determines whether the check box 1404 indicating whether or not to update the storage destination is selected by the user. When update storage destination is selected, the selected storage job is deleted and replaced with a new storage job stored after reprinting.
[0116]
In step 908, the reprint GUI module 519 determines whether the reprint button 1405 has been pressed. If it is determined that the reprint button 1405 has been pressed by the user, in step 909, the saved job ID selected in the above process, the printer driver name of the output destination printer, and the saved job are updated as shown in FIG. The reprint process performed is executed. The process ends when either the reprint button 1405 or the cancel button is pressed.
[0117]
With the above processing, reprint processing of an arbitrary saved job is started from the reprint GUI.
[0118]
FIG. 16 is a flowchart showing an example of a fifth data processing procedure in the printing system according to the present invention, and is a flowchart showing the processing of the saved job management processing unit 512 when reprinting is executed.
[0119]
In step 1001, the saved job management processing unit 512 receives a print data retrieval request using the RPC from the saved job transmission processing unit via the reprint GUI 519 (a shared file name that receives print data, a job ID, a printer driver name, Update flag).
[0120]
In step 1002, the saved job management processing unit 512 searches the saved job list for saved job information based on the job ID received in step 1001. In step 1003, if the specified saved job is not registered in the list as a result of the search, an error is returned to the caller.
[0121]
If registered as a result of the search, in step 1004, the saved job management processing unit 512 compares the printer driver name stored in the saved job list with the output destination printer driver name. If it is determined as a result of the comparison that the models are different, that is, different attributes, in step 1010, the saved job management processing unit 512 extracts only EMF data from the saved job file.
[0122]
On the other hand, if it is determined in step 1004 that they have the same model, that is, the same attribute, in step 1005, the saved job management processing unit 512 extracts only RAW data. Thereby, useless data transfer can be avoided. In step 1006, the saved job management processing unit 512 writes the extracted print data to the print data writing shared file passed in step 1001. Subsequently, in step 1007, the saved job management processing unit 512 writes the type of print data in the return value returned to the caller. At this point, writing of the print data to be passed to the client is completed.
[0123]
In step 1008, the saved job management processing unit 512 determines whether or not the update flag is set. If the update flag is not set as a result of the determination, the stored job management processing unit 512 ends. If the update flag is set, In step 1009, the saved job file that is the source of reprinting is deleted. By deleting, the original stored job file is deleted, but by reprinting, a new stored job file is generated, and as a result, the stored job file is updated.
[0124]
FIG. 17 is a flowchart showing an example of a sixth data processing procedure in the printing system according to the present invention, and is a flowchart showing a process in which reprinting is executed.
[0125]
In step 1101, an item designated by the reprint GUI 519 is set as an RPC parameter. In step 1102, a shared file for receiving print data is created. As a result of the print data request by RPC, the print data is written to this shared file.
[0126]
In step 1103, the processing shown in the flowchart of FIG. 15 is executed, and the saved job transmission processing unit 509 receives the print data. In step 1104, the attribute of the print data stored in the return value is determined. As a result of the determination, if the received print data is EMF data, in step 1105, according to the procedure for printing from a normal application, A device context of a device to be printed (here, a printer) is created. The device context is a kind of file in which the attributes of the paper to be drawn, the capabilities of the printer, and the attributes are written. Printing can be realized by drawing on the metafile handle created based on this device context.
[0127]
In step 1106, a metafile handle is acquired from the acquired EMF data and the device context. In step 1107, the EMF file is drawn. When drawing the EMF, the GDI 508 generates print data in conjunction with the printer driver by calling a dedicated GDI function (PlayMetaFile ()).
[0128]
In step 1108, the metafile handle is deleted. In step 1109, the end of the printing process is notified to the GDI by deleting the device context. At this point, the generated print data is sent to the spooler and normal printing is executed. If the result of determination in step 1104 is RAW data, in step 1111 the printing destination printer is opened and the print data is sent directly to the spooler.
[0129]
In step 1112, the print data received from the server is written in the printer as it is, so that the print image at the time of storage is sent to the printer as it is. If all the print data has been sent in step 1113, the printer is closed. In step 1110, the shared file that received the print data is deleted.
[0130]
Through the above processing, the print data can be taken out from the stored job stored in the storage server and re-output to the designated printer.
[0131]
Hereinafter, the configuration of a data processing program that can be read by a printing system to which the server apparatus and the client apparatus according to the present invention can be applied will be described with reference to the memory map shown in FIG.
[0132]
FIG. 18 is a diagram illustrating a memory map of a storage medium that stores various data processing programs that can be read by the server device and the client device according to the present invention.
[0133]
Although not particularly illustrated, information for managing a program group stored in the storage medium, for example, version information, creator, etc. is also stored, and information depending on the OS on the program reading side, for example, a program is identified and displayed. Icons may also be stored.
[0134]
Further, data depending on various programs is also managed in the directory. In addition, a program for installing various programs in the computer, and a program for decompressing when the program to be installed is compressed may be stored.
[0135]
The functions shown in FIGS. 11 to 13 and FIGS. 15 to 17 in the present embodiment may be performed by a host computer by a program installed from the outside. In this case, the present invention is applied even when an information group including a program is supplied to the output device from a storage medium such as a CD-ROM, a flash memory, or an FD, or from an external storage medium via a network. Is.
[0136]
As described above, a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to the system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium in the storage medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the programmed program code.
[0137]
In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.
[0138]
Examples of the storage medium for supplying the program code include a floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, CD-RW, DVD, magnetic tape, nonvolatile memory card, ROM, An EEPROM or the like can be used.
[0139]
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) or the like running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
[0140]
Further, after the program code read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
[0141]
  more thanBook as explainedExampleAccording to the above, only a job for which printing has been completed can be collectively managed as a saved job by the server, and the client can take over saving a print job even when a server failure occurs.
[0142]
In addition, when the storage capacity on the server increases, a storage job can be automatically uploaded from the client.
[0143]
【The invention's effect】
  As described above, according to the present invention, the stored job data stored in the print server is retrieved by the client device, and if the reprint destination is the printer having the same attribute, the print processing is performed using the device-dependent format data. Therefore, if the printer can reproduce the exact same print image and has a different reprint destination, the device-dependent format data is generated again from the device-independent format data and the print processing is performed. Close output is possible.
[Brief description of the drawings]
FIG. 1 is a system configuration diagram of a network system to which a print job storage management system of the present embodiment is applied.
2 is a block diagram showing a schematic configuration of a client computer in FIG. 1. FIG.
3 is a memory map when a program is expanded from the FD shown in FIG. 4 to the RAM in FIG. 2;
4 is a memory map representing data in the FD in FIG. 2;
5 is a diagram illustrating a relationship between the client computer in FIG. 1 and the FD in FIG. 2;
FIG. 6 is a diagram illustrating a software module configuration of a client computer and a server according to the present embodiment.
FIG. 7 is a diagram illustrating a registry configuration of a client.
FIG. 8 is a diagram illustrating a registry configuration of a server.
FIG. 9 is a diagram illustrating a configuration of a list.
10 is a diagram showing an example of a print setting screen displayed on the display device of the client device shown in FIG. 1. FIG.
FIG. 11 is a flowchart showing the flow of a print completion notification processing unit according to the present invention.
FIG. 12 is a flowchart showing the flow of a stored job transmission processing unit according to the present invention.
FIG. 13 is a flowchart showing the flow of a stored job management processing unit according to the present invention.
FIG. 14 is a diagram illustrating a reprinting GUI according to the present invention.
FIG. 15 is a flowchart showing a flow of a reprinting GUI according to the present invention.
FIG. 16 is a flowchart showing the flow of reprint processing of the stored job transmission processing unit of the present invention.
FIG. 17 is a flowchart showing the flow of print data extraction processing of the stored job management processing unit of the present invention.
FIG. 18 is a diagram illustrating a memory map of a storage medium storing various data processing programs that can be read by the server device and the client device according to the present invention.

Claims (14)

ネットワークを介して情報処理装置から印刷すべき印刷ジョブを受信可能なプリントサーバ装置であって、
前記情報処理装置から、印刷出力先の印刷装置に対応するプリンタドライバによって生成されたデバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを受信し、受信した前記デバイス依存形式データと前記デバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応づけて管理する保存ジョブ管理手段と、
前記情報処理装置からの前記保存ジョブ管理手段により管理される保存ジョブデータと再印刷出力先の印刷装置とを指定した再印刷要求に応じて、前記再印刷出力先の印刷装置と、前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置とで、属性が異なるか判断する判断手段と、
前記判断手段により属性が異なると判断された場合に、前記情報処理装置が前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データを生成できるように前記デバイス非依存形式データを出力し、一方、前記判断手段により属性が同じであると判断された場合に、前記デバイス依存形式データを出力する出力制御手段と
を有することを特徴とするプリントサーバ装置。
A print server device capable of receiving a print job to be printed from an information processing device via a network,
Receives, from the information processing apparatus , device-dependent format data generated by a printer driver corresponding to a printing apparatus that is a print output destination, and device-independent format data generated as intermediate data during generation of the device-dependent format data The received device-dependent format data and the device-independent format data are saved as saved job data, and the saved job data is stored in the print output destination printing device even after the print processing by the print output destination printing device. A stored job management means for managing in association with attributes ;
In response to a reprint request designating the stored job data managed by the stored job management means from the information processing apparatus and the reprint output destination printing apparatus, the reprint output destination printing apparatus and the designated stored job data of device-dependent type printing apparatus for data dependencies in a determination unit which attribute it is determined whether different that,
When the determination unit determines that the attributes are different, the information processing apparatus uses the printer driver corresponding to the reprint output destination printing apparatus based on the device-independent format data to specify the reprint output destination. The device-independent format data is output so that device-dependent format data depending on the printing apparatus can be generated . On the other hand, when the determination unit determines that the attributes are the same, the device-dependent format data is output. And a print server device.
前記保存ジョブ管理手段は、前記情報処理装置から送信された保存ジョブデータを指定された期間だけ保存し、該指定された期間経過後、前記メモリから削除することを特徴とする請求項1記載のプリントサーバ装置。  The storage job management unit stores the storage job data transmitted from the information processing apparatus for a specified period, and deletes the stored job data from the memory after the specified period has elapsed. Print server device. 前記情報処理装置からの保存要求に応じて、前記保存ジョブ管理手段による前記保存ジョブデータの管理が可能であるかを判断する管理可否判断手段を更に有し、
前記管理可否判断手段により前記保存ジョブデータの管理が可能であると判断された場合に、前記保存ジョブ管理手段は、前記保存ジョブデータの保存及び管理を行うことを特徴とする請求項1または2記載のプリントサーバ装置。
In accordance with a storage request from the information processing apparatus, the storage job management unit further includes a management availability determination unit that determines whether the storage job data can be managed .
3. The storage job management unit stores and manages the stored job data when it is determined by the management availability determination unit that the storage job data can be managed. The print server device described.
前記判断手段により前記保存ファイルの管理が不可能と判断された場合に、前記保存ジョブ管理手段は、保存要求あった印刷ジョブIDと保存ジョブサイズとを保存待ちリストに登録管理することを特徴とする請求項3記載のプリントサーバ装置。If it is determined impossible to manage the save file by the determining means, the stored job management means, characterized in that registers and manages the stored job size and print job ID for which the stored request to save waiting list The print server device according to claim 3. 前記メモリの空き容量と前記保存待ちリストに登録された保存ジョブサイズとを比較して登録可能な印刷ジョブIDを検出する検出手段を更に有することを特徴とする請求項4記載のプリントサーバ装置。  5. The print server apparatus according to claim 4, further comprising a detecting unit that detects a print job ID that can be registered by comparing the free space of the memory with a stored job size registered in the storage waiting list. 前記デバイス非依存形式データは、EMFデータであり、前記デバイス依存形式データは、RAWデータであることを特徴とする請求項1乃至5のいずれか1項に記載のプリントサーバ装置。6. The print server apparatus according to claim 1, wherein the device-independent format data is EMF data, and the device-dependent format data is RAW data. ネットワークを介して印刷装置で印刷されるべき印刷ジョブを生成する情報処理装置であって、
印刷出力先の印刷装置に対応するプリンタドライバによってデバイス依存形式データを生成する印刷データ生成手段と、
印刷ジョブ管理装置が、前記印刷データ生成手段によって生成される前記デバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応付けて管理できるように、前記デバイス依存形式データと前記デバイス非依存形式データとをネットワークを介して前記印刷ジョブ管理装置に送信する送信制御手段と、
前記デバイス依存形式データが前記印刷出力先の印刷装置に出力された後に、前記印刷ジョブ管理装置により管理される保存ジョブデータのリストを表示する表示手段と、
前記リストの中から、再印刷すべき保存ジョブデータと、該保存ジョブデータの再印刷出力先の印刷装置を判断する判断手段を有し、
前記判断された前記再印刷出力先の印刷装置の属性と前記判断された保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが異なる場合に、前記デバイス非依存形式データを前記印刷ジョブ管理装置から受け取り、前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データ生成して前記再印刷出力先の印刷装置へ出力し、一方、前記再印刷出力先の印刷装置の属性と前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが同じ場合に、前記印刷ジョブ管理装置から前記デバイス依存形式データを受け取り前記再印刷出力先の印刷装置へ出力することを特徴とする情報処理装置。
An information processing apparatus for generating a print job to be printed by a printing apparatus via a network,
Print data generation means for generating device-dependent format data by a printer driver corresponding to the printing apparatus of the print output destination ;
The print job management apparatus stores the device-dependent format data generated by the print data generation unit and the device-independent format data generated as intermediate data during the generation of the device-dependent format data as stored job data. The device-dependent format data and the device-independent format data so that the stored job data can be managed in association with the attributes of the print output destination printing device even after the printing process by the printing output destination printing device. Transmission control means for transmitting to the print job management apparatus via a network ;
Display means for displaying a list of stored job data managed by the print job management apparatus after the device-dependent format data is output to the print output destination printing apparatus;
A determination unit that determines , from the list, stored job data to be reprinted and a printing apparatus that is a reprint output destination of the stored job data ;
If the determined attribute of the reprint output destination printing device is different from the attribute of the printing device on which the device-dependent format data of the determined stored job data depends, the device-independent format data is converted to the print job. receiving from the management device, wherein to generate a device-dependent format data depending on the printing apparatus of the reprinting destination using a printer driver corresponding to the printing apparatus of the reprinting destination on the basis of the device-independent format data Output to the reprint output destination printing device, and when the attribute of the reprint output destination printing device and the attribute of the printing device on which the device-dependent format data of the specified stored job data depend are the same, information processing, characterized in that the output from the print job management apparatus the device-dependent format data to receive the re-print output destination printer Apparatus.
前記印刷ジョブ管理装置において保存ジョブデータを保存させる保存条件を指定する条件指定手段を更に有することを特徴とする請求項7記載の情報処理装置。  8. The information processing apparatus according to claim 7, further comprising condition specifying means for specifying a storage condition for storing stored job data in the print job management apparatus. 前記保存条件は、保存期間であることを特徴とする請求項8記載の情報処理装置。  The information processing apparatus according to claim 8, wherein the storage condition is a storage period. 前記保存条件は、印刷耐久回数であることを特徴とする請求項8または9記載の情報処理装置。  The information processing apparatus according to claim 8, wherein the storage condition is a printing durability count. ネットワークを介して情報処理装置から印刷すべき印刷ジョブを受信可能なプリントサーバ装置における印刷ジョブ管理方法であって、
前記情報処理装置から、印刷出力先の印刷装置に対応するプリンタドライバによって生成されたデバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを受信し、受信した前記デバイス依存形式データと前記デバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応づけて管理する保存ジョブ管理工程と、
前記情報処理装置からの前記保存ジョブ管理工程により管理される保存ジョブデータと再印刷出力先の印刷装置とを指定した再印刷要求に応じて、前記再印刷出力先の印刷装置と、前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置とで、属性が異なるか判断する判断工程と、
前記判断工程で属性が異なると判断された場合に、前記情報処理装置が前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データを生成できるように前記デバイス非依存形式データを出力し、一方、前記判断工程で属性が同じであると判断された場合に、前記デバイス依存形式データを出力する出力制御工程と、
を含むことを特徴とする印刷ジョブ保存方法。
A print job management method in a print server device capable of receiving a print job to be printed from an information processing device via a network,
Receives, from the information processing apparatus , device-dependent format data generated by a printer driver corresponding to a printing apparatus that is a print output destination, and device-independent format data generated as intermediate data during generation of the device-dependent format data The received device-dependent format data and the device-independent format data are saved as saved job data, and the saved job data is stored in the print output destination printing device even after the print processing by the print output destination printing device. Stored job management process to manage in association with attributes ,
In response to a reprint request designating the saved job data and the reprint output destination printing apparatus managed by the saved job management process from the information processing apparatus, the reprint output destination printing apparatus and the designated stored job data of device-dependent type printing apparatus for data dependencies in a determining step of the attribute to determine whether different that,
When it is determined in the determination step that the attributes are different, the information processing apparatus uses the printer driver corresponding to the reprint output destination printing apparatus based on the device-independent format data to specify the reprint output destination. The device-independent format data is output so that device-dependent format data depending on the printing apparatus can be generated . On the other hand, when the determination step determines that the attributes are the same, the device-dependent format data is output. Output control process;
A print job storage method.
ネットワークを介して印刷装置で印刷されるべき印刷ジョブを生成する情報処理装置における保存ジョブ生成方法であって、
印刷出力先の印刷装置に対応するプリンタドライバによってデバイス依存形式データを生成する印刷データ生成工程と、
印刷ジョブ管理装置が、前記印刷データ生成工程によって生成される前記デバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応付けて管理できるように、前記デバイス依存形式データと前記デバイス非依存形式データとを、ネットワークを介して前記印刷ジョブ管理装置に送信する送信制御工程と、
前記デバイス依存形式データが前記印刷出力先の印刷装置に出力された後に、前記印刷ジョブ管理装置により管理される保存ジョブデータのリストを表示する表示工程と、
前記リストの中から、再印刷すべき保存ジョブデータと、該保存ジョブデータの再印刷出力先の印刷装置を判断する判断工程とを含み、
前記判断された前記再印刷出力先の印刷装置の属性と前記判断された保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが異なる場合に、前記デバイス非依存形式データを前記印刷ジョブ管理装置から受け取り、前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データ生成して前記再印刷出力先の印刷装置へ出力し、一方、前記再印刷出力先の印刷装置の属性と前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが同じ場合に、前記印刷ジョブ管理装置から前記デバイス依存形式データを受け取り前記再印刷出力先の印刷装置へ出力することを特徴とする保存ジョブ生成方法。
A stored job generation method in an information processing apparatus for generating a print job to be printed by a printing apparatus via a network,
A print data generation step of generating device-dependent format data by a printer driver corresponding to a printing apparatus of a print output destination ;
A print job management apparatus stores the device-dependent format data generated by the print data generation step and device-independent format data generated as intermediate data during the generation of the device-dependent format data as stored job data. The device-dependent format data and the device-independent format data so that the stored job data can be managed in association with the attributes of the print output destination printing device even after the printing process by the printing output destination printing device. A transmission control step for transmitting to the print job management apparatus via a network ;
A display step of displaying a list of stored job data managed by the print job management apparatus after the device-dependent format data is output to the print output destination printing apparatus;
From the list, the stored job data to be reprinted, and a determination step of determining a printing device of the reprint output destination of the stored job data ,
If the determined attribute of the reprint output destination printing device is different from the attribute of the printing device on which the device-dependent format data of the determined stored job data depends, the device-independent format data is converted to the print job. receiving from the management device, wherein to generate a device-dependent format data depending on the printing apparatus of the reprinting destination using a printer driver corresponding to the printing apparatus of the reprinting destination on the basis of the device-independent format data Output to the reprint output destination printing device, and when the attribute of the reprint output destination printing device and the attribute of the printing device on which the device-dependent format data of the specified stored job data depend are the same, Save di to the print job management apparatus and outputting the device-dependent format data to receive the re-print output destination printer Breakfast generation method.
ネットワークを介して情報処理装置から印刷すべき印刷ジョブを受信可能なプリントサーバ装置で読み取り実行可能なプログラムが格納された記憶媒体であって、
前記情報処理装置から、印刷出力先の印刷装置に対応するプリンタドライバによって生成されたデバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを受信し、受信した前記デバイス依存形式データと前記デバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応づけて管理する保存ジョブ管理工程と、
前記情報処理装置からの前記保存ジョブ管理工程により管理される保存ジョブデータと再印刷出力先の印刷装置とを指定した再印刷要求に応じて、前記再印刷出力先の印刷装置と、前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置とで、属性が異なるか判断する判断工程と、
前記判断工程で属性が異なると判断された場合に、前記情報処理装置が前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データを生成できるように前記デバイス非依存形式データを出力し、一方、前記判断工程でり属性が同じであると判断された場合に、前記デバイス依存形式データを出力する出力制御工程と、
を含むことを特徴とするプログラムが格納された記憶媒体。
A storage medium storing a program that can be read and executed by a print server device capable of receiving a print job to be printed from an information processing device via a network,
Receives, from the information processing apparatus , device-dependent format data generated by a printer driver corresponding to a printing apparatus that is a print output destination, and device-independent format data generated as intermediate data during generation of the device-dependent format data The received device-dependent format data and the device-independent format data are saved as saved job data, and the saved job data is stored in the print output destination printing device even after the print processing by the print output destination printing device. Stored job management process to manage in association with attributes ,
In response to a reprint request designating the saved job data and the reprint output destination printing apparatus managed by the saved job management process from the information processing apparatus, the reprint output destination printing apparatus and the designated stored job data of device-dependent type printing apparatus for data dependencies in a determining step of the attribute to determine whether different that,
When it is determined in the determination step that the attributes are different, the information processing apparatus uses the printer driver corresponding to the reprint output destination printing apparatus based on the device-independent format data to specify the reprint output destination. The device-independent format data is output so that device-dependent format data depending on the printing apparatus can be generated . On the other hand, when the determination step determines that the attributes are the same, the device-dependent format data is output. An output control process to perform ,
A storage medium storing a program characterized by comprising:
ネットワークを介して印刷装置で印刷されるべき印刷ジョブを生成する情報処理装置で読み取り実行可能なプログラムが格納された記憶媒体であって、
印刷出力先の印刷装置に対応するプリンタドライバによってデバイス依存形式データを生成する印刷データ生成工程と、
印刷ジョブ管理装置が、前記印刷データ生成工程によって生成される前記デバイス依存形式データと、前記デバイス依存形式データの生成中に中間データとして生成されるデバイス非依存形式データとを保存ジョブデータとして保存し、前記印刷出力先の印刷装置による印刷処理後も前記保存ジョブデータを前記印刷出力先の印刷装置の属性に対応付けて管理できるように、前記デバイス依存形式データと前記デバイス非依存形式データとを、ネットワークを介して前記印刷ジョブ管理装置に送信する送信制御工程と、
前記デバイス依存形式データが前記印刷出力先の印刷装置に出力された後に、前記印刷ジョブ管理装置により管理される保存ジョブデータのリストを表示する表示工程と、
前記リストの中から、再印刷すべき保存ジョブデータと、該保存ジョブデータの再印刷出力先の印刷装置を判断する判断工程とを含み、
前記判断された前記再印刷出力先の印刷装置の属性と前記判断された保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが異なる場合に、前記デバイス非依存形式データを前記印刷ジョブ管理装置から受け取り、前記デバイス非依存形式データに基づいて前記再印刷出力先の印刷装置に対応するプリンタドライバを用いて前記再印刷出力先の印刷装置に依存するデバイス依存形式データ生成して前記再印刷出力先の印刷装置へ出力し、一方、前記再印刷出力先の印刷装置の属性と前記指定される保存ジョブデータのデバイス依存形式データが依存する印刷装置の属性とが同じ場合に、前記印刷ジョブ管理装置から前記デバイス依存形式データを受け取り前記再印刷出力先の印刷装置へ出力することを特徴とするプログラムが格納された記憶媒体。
A storage medium storing a program that can be read and executed by an information processing apparatus that generates a print job to be printed by a printing apparatus via a network,
A print data generation step of generating device-dependent format data by a printer driver corresponding to a printing apparatus of a print output destination ;
A print job management apparatus stores the device-dependent format data generated by the print data generation step and device-independent format data generated as intermediate data during the generation of the device-dependent format data as stored job data. The device-dependent format data and the device-independent format data so that the stored job data can be managed in association with the attributes of the print output destination printing device even after the printing process by the printing output destination printing device. A transmission control step for transmitting to the print job management apparatus via a network ;
A display step of displaying a list of stored job data managed by the print job management apparatus after the device-dependent format data is output to the print output destination printing apparatus;
From the list, the stored job data to be reprinted, and a determination step of determining a printing device of the reprint output destination of the stored job data ,
If the determined attribute of the reprint output destination printing device is different from the attribute of the printing device on which the device-dependent format data of the determined stored job data depends, the device-independent format data is converted to the print job. receiving from the management device, wherein to generate a device-dependent format data depending on the printing apparatus of the reprinting destination using a printer driver corresponding to the printing apparatus of the reprinting destination on the basis of the device-independent format data Output to the reprint output destination printing device, and when the attribute of the reprint output destination printing device and the attribute of the printing device on which the device-dependent format data of the specified stored job data depend are the same, programming of the print job management apparatus and outputting the device-dependent format data to receive the re-print output destination printer Storage media beam is stored.
JP2000296773A 1999-10-05 2000-09-28 Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium Expired - Fee Related JP4776763B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000296773A JP4776763B2 (en) 1999-10-05 2000-09-28 Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP28428899 1999-10-05
JP11-284288 1999-10-05
JP1999284288 1999-10-05
JP2000296773A JP4776763B2 (en) 1999-10-05 2000-09-28 Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium

Publications (3)

Publication Number Publication Date
JP2001175442A JP2001175442A (en) 2001-06-29
JP2001175442A5 JP2001175442A5 (en) 2007-01-18
JP4776763B2 true JP4776763B2 (en) 2011-09-21

Family

ID=26555410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000296773A Expired - Fee Related JP4776763B2 (en) 1999-10-05 2000-09-28 Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium

Country Status (1)

Country Link
JP (1) JP4776763B2 (en)

Also Published As

Publication number Publication date
JP2001175442A (en) 2001-06-29

Similar Documents

Publication Publication Date Title
US7236260B2 (en) Print server apparatus, print job reservation management method, reservation job generation method and memory medium
JP3720740B2 (en) Distributed printing system, distributed printing control method, storage medium, and program
US8045202B2 (en) Information processing apparatus and print device control method
US7719703B2 (en) Print control program and medium and information processing apparatus
US7852497B2 (en) Method of controlling printing control apparatus
JP4817474B2 (en) Data processing apparatus, data processing method, and storage medium storing computer-readable program
US9218150B2 (en) Image forming apparatus and method thereof
JP3774702B2 (en) Print control program and information processing apparatus
US20020097429A1 (en) Methods and systems for recovering a failed print job
JP5415750B2 (en) Information processing apparatus, information processing method, program, and information processing system
US20070091361A1 (en) Printer, print control method, and program for executing print control method
US20040001215A1 (en) Print control apparatus, print control method, program product, and print system
JP2005174210A (en) Information processor, printing system, load distribution printing method, and control program
JP3903024B2 (en) Output management method and information processing apparatus
JP2006004077A (en) Information processor and method for controlling job transfer
US20080266601A1 (en) Information processing apparatus and job management method
JP2008090474A (en) Information processor and information processing method
JP4886501B2 (en) Printing apparatus, printing control method, and program
JP4776763B2 (en) Print server apparatus, information processing apparatus, print job storage management method, storage job generation method, and storage medium
JP3962720B2 (en) Information processing apparatus, information processing method, computer program, and computer-readable storage medium
US7623253B1 (en) Indirect processing of print jobs
JP4185768B2 (en) Client device and program thereof
JP2007058417A (en) Print system
JP4323982B2 (en) Information processing method, information processing apparatus, program, and storage medium
JP4110021B2 (en) Print processing program, information processing apparatus, information processing method, and storage medium for performing print processing with department management

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061127

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090803

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091201

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100201

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100630

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: 20110629

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: 20140708

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees