JP2005196439A - 印刷システムにおける印刷データの制御方法および制御プログラム - Google Patents
印刷システムにおける印刷データの制御方法および制御プログラム Download PDFInfo
- Publication number
- JP2005196439A JP2005196439A JP2004001659A JP2004001659A JP2005196439A JP 2005196439 A JP2005196439 A JP 2005196439A JP 2004001659 A JP2004001659 A JP 2004001659A JP 2004001659 A JP2004001659 A JP 2004001659A JP 2005196439 A JP2005196439 A JP 2005196439A
- Authority
- JP
- Japan
- Prior art keywords
- job
- printer
- proxy
- printing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】 本発明はメンバジョブが代行により再度作成された場合でも変更した印刷属性値を保つことが可能な情報処理装置等を提供することを目的とする。
【解決手段】 本発明の構成は、外部処理装置に対してジョブデータを転送する転送手段と、前記外部処理装置を別の処理装置で代行するための代行処理を行う代行処理手段とを備えた情報処理装置において、自動代行を行うグループプリンタドライバにおけるメンバジョブの印刷属性を変更した場合、オリジナルジョブの印刷属性も変更する設定手段を有する。
【選択図】 図1
【解決手段】 本発明の構成は、外部処理装置に対してジョブデータを転送する転送手段と、前記外部処理装置を別の処理装置で代行するための代行処理を行う代行処理手段とを備えた情報処理装置において、自動代行を行うグループプリンタドライバにおけるメンバジョブの印刷属性を変更した場合、オリジナルジョブの印刷属性も変更する設定手段を有する。
【選択図】 図1
Description
本発明は、代行処理機能を有する情報処理装置等に関するものである。
現在のプリントシステムでは、プリンタデバイスにおいて「紙なし」や「ジャム」などのエラーにより印刷が失敗した場合、プリンタ毎に設定された「紙なし」や「ジャム」などの代行印刷条件に従って別のプリンタに代行印刷を行っていた。
例えば、特開2003−271354号公報には、自動代行印刷の設定が行われているか否かを判別し、自動代行印刷の設定が行われていると判断されれば自動代行印刷を実行し、設定が行われていないと判断されれば手動代行印刷を行うことにより、自動代行印刷と手動代行印刷を切り替える印刷処理装置が開示されている。
特開2003−271354号公報
しかしながら、上記「代行印刷機能」は、印刷指示した印刷装置で印字障害が発生した場合、代行印刷先を指定する手動代行印刷において、代行印刷先となるプリンタドライバを選択する際に表示される候補が、現在登録されている全てのプリンタドライバが表示されてしまう。実際には、表示される全プリンタドライバのうち代行印刷先として利用可能なドライバは印刷ジョブによって制限されてしまうという問題点があった。これは、上述の特開2003−271354号公報で開示されている印刷処理装置でも同様である。
また、後述するグループプリンタドライバから印刷された場合、後述するオリジナルジョブの優先度等の印刷属性値を継承した、後述するメンバジョブが作成される。作成されたメンバジョブに対して印刷属性値の変更を行った後に代行処理が発生した場合、メンバジョブは再度作り直される。このとき作成されるメンバジョブはオリジナルジョブの印刷属性値を継承するため、先の変更した印刷属性値が保存されないという問題があった。
本発明は上記従来の問題点に鑑み、メンバジョブが代行により再度作成された場合でも変更した印刷属性値を保つことが可能な情報処理装置等を提供することを目的とする。
上記目的を達成するために、本発明の情報処理装置では、外部処理装置に対してジョブデータを転送する転送手段と、前記外部処理装置を別の処理装置で代行するための代行処理を行う代行処理手段とを備えた情報処理装置において、自動代行を行うグループプリンタドライバにおけるメンバジョブの印刷属性を変更した場合、オリジナルジョブの印刷属性も変更する設定手段を有することを特徴とする。
以上詳細に説明したように本発明によれば、メンバジョブの印刷属性値が変更された場合にオリジナルジョブの印刷属性値も変更することにより、メンバジョブの印刷属性値が変更されたあとに代行処理が発生しメンバジョブが作り直された場合でも変更後の印刷属性値を引き継ぐことが可能となり、ユーザによる印刷属性値の再設定の手間を回避することが可能となる。
以下、本発明の実施の形態を図面に基づいて説明する。
<システム構成>
図1は、本発明の印刷システムの構成を示すブロック図である。なお、本システムにおけるクライアントコンピュータは、1台または複数台接続されていることを仮定している。
図1は、本発明の印刷システムの構成を示すブロック図である。なお、本システムにおけるクライアントコンピュータは、1台または複数台接続されていることを仮定している。
図1において、102、103、104はクライアントコンピュータ(クライアント)としての情報処理装置であり、イーサネット(登録商標)などのネットワークケーブルによって、ネットワーク106に接続され、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。なお、プリンタドライバは複数のプリンタドライバをサポートするものとする。
101は本実施形態のサーバ(以下、プリントサーバと呼ぶ)としての情報処理装置であり、ネットワークケーブルによって、ネットワーク106に接続され、ネットワークで使用されるファイルを蓄積したり、ネットワーク106の使用状態を監視したりする。プリントサーバ101は、ネットワーク106に接続されている複数のプリンタを管理している。構成としては、クライアント102〜104とプリントサーバ101は、一般的な情報処理装置であり、クライアントとプリントサーバ101には、それぞれ異なる制御を行う印刷制御プログラムが実行可能に格納されている。また、プリントサーバ101は、一般的な情報処理装置であり、クライアント102〜104の機能を同時に持つこともできる。
さらに、本実施形態におけるプリントサーバ101は、クライアントコンピュータ102、103、104から印刷要求が出された印字データを含む印刷ジョブを格納して印刷したり、またはクライアントコンピュータ102、103、104から印字データを含まないジョブ情報のみ受け取り、クライアントコンピュータ102、103、104の印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知したり、ネットワークプリンタ105のステータスや印刷ジョブの各種情報を取得し、クライアントコンピュータ102、103、104に通知したりする機能を揃えている。
105は印刷制御装置であるネットワークプリンタであり、図示省略したネットワークインタフェースを介してネットワーク106と接続されており、クライアントコンピュータから送信される印字データを含む印刷ジョブを解析して1ページずつドットイメージに変換して1ページ毎に印刷する。プリンタ105としては、電子写真方式を採用したレーザービームプリンタやインクジェット方式を採用したインクジェットプリンタや熱転写方式を利用したプリンタ等、様々な方式のものに適応できることも無論想定される。
106はネットワークであり、クライアントコンピュータ102、103、104、サーバ101、ネットワークプリンタ105等と接続している。
<情報処理装置の構成>
図2は、図1に示した情報処理装置の構成を説明するブロック図であり、情報処理装置であるクライアントコンピュータ102、103、104も同じ構成であり、さらにサーバ101も同様あるいは同等のハードウエア構成とする。よって、クライアントとサーバの構成を説明するブロック図として説明する。
図2は、図1に示した情報処理装置の構成を説明するブロック図であり、情報処理装置であるクライアントコンピュータ102、103、104も同じ構成であり、さらにサーバ101も同様あるいは同等のハードウエア構成とする。よって、クライアントとサーバの構成を説明するブロック図として説明する。
同図において、200は情報処理装置の制御手段であるCPUであり、ハードディスク(HD)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや本発明のネットワークプリンタ制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
201は記憶手段であるROMであり、内部には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。202は一時記憶手段であるRAMであり、CPU200の主メモリやワークエリア等として機能する。
203は記憶媒体読み込み手段としてのフロッピー(登録商標)ディスク(FD)ドライブであり、後述する図5に示すようにFDドライブ203を通じて記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。なお、記憶媒体は、FDに限らず、CD−ROM、CD−R、CD−RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、任意である。
204は記憶媒体であるフロッピー(登録商標)ディスク(FD)であり、コンピュータが読み取り可能なプログラムが格納された記憶媒体である。
205は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク(HD)であり、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、及び関係プログラム等を格納している。さらに、スプール手段であるスプーラはここに確保される。スプール手段は、クライアント102〜104ではクライアントスプーラのことであり、プリントサーバ101ではサーバスプーラのことである。また、プリントサーバ101では、クライアント102〜104から受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶手段に生成されて格納される。
206は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータ102〜104に対して、また、オペレータや管理者がプリントサーバ101に対して、デバイスの制御コマンドの命令等を入力指示するものである。
207は表示手段であるディスプレイであり、キーボード206から入力したコマンドや、プリンタ105の状態等を表示したりするものである。208はシステムバスであり、クライアント102〜104やプリントサーバ101であるコンピュータ内のデータの流れを司るものである。
209は入出力手段であるインタフェースであり、該インタフェース209を介して情報処理装置は外部装置とのデータのやり取りを行う。
<メモリマップ等の説明>
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、FD204からロードされる上記ネットワークプリンタ制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、FD204からロードされる上記ネットワークプリンタ制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
本実施形態では、FD204からネットワークプリンタ制御プログラム及び関係データを直接RAM202にロードして実行させる例を示すが、これ以外にも、FD204からネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがインストールされているHD205からRAM202にロードするようにしてもよい。
また、本ネットワークプリンタ制御プログラムを記憶する媒体は、FD以外にCD−ROM、CD−R、PCカード、DVD、ICメモリカードであってもよい。さらに、本ネットワークプリンタ制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
また、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムと呼ぶこともある。印刷制御プログラムは、クライアント102〜104において印刷ジョブの印刷先の変更を指示したり、印刷順序を変更する指示をするための制御を行うプログラムを含み、またプリントサーバ101において、印刷ジョブの順序制御を行ったり、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。
このような制御を行う本発明の印刷制御プログラムは、クライアント102〜104にインストールされるモジュールと、プリントサーバ101にインストールされるモジュールを別々に分けてもよいし、一つの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、またはプリントサーバ用として機能するようにしてもよい。あるいは一台のコンピュータに、クライアント用の機能を持つモジュールと、プリントサーバ用として機能するモジュールを共にインストールし、同時に、あるいは時分割で擬似的に平行動作させる構成も可能である。
301は基本I/Oプログラムであり、本制御装置の電源がONされたときに、HD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムが入っている領域である。
302はオペレーティングシステム(OS)であり、303はネットワークプリンタ制御プログラムで、RAM202上に確保される領域に記憶される。304は関係データで、RAM202上に確保される領域に記憶される。305はワークエリアで、CPU200が本プリンタ制御プログラムを実行する領域が確保されている。
図4は、図2に示したFD204のメモリマップの一例を示す図である。
同図において、400は前記FD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、404はその関係データである。403のネットワークプリンタ制御プログラムは、実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施形態では、クライアント102〜104、サーバ101共に同様の構成を採っている。
同図において、400は前記FD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、404はその関係データである。403のネットワークプリンタ制御プログラムは、実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施形態では、クライアント102〜104、サーバ101共に同様の構成を採っている。
図5は、図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図であり、図2と同一のものには同一の符号を付してある。
同図において、FD204には、本実施形態で説明するネットワークプリンタ制御プログラム及び関係データを格納している。
<印刷ジョブ制御システム>
次に、本実施形態における、プリンタを複数台使用して、前述の分散、同報、及び代行といった印刷処理を行う印刷ジョブ制御システムについて説明する。なお、この印刷ジョブ制御システムの印刷処理は、上述した印刷制御プログラムで実行される。また、本実施形態では、複数のプリンタデバイスの夫々に対応する個々のプリンタドライバに対して一元的に印刷設定を指示可能で、且つ、De-spooler(後述にて詳しく説明)が各プリンタドライバに描画命令を通知する際に用いる汎用印刷ファイルを生成するためにデータ(汎用ドキュメントデータ)を生成するドライバをグループプリンタドライバと呼ぶ。また、プリンタデバイスに依存した個々のプリンタドライバをメンバプリンタドライバと呼ぶ。
次に、本実施形態における、プリンタを複数台使用して、前述の分散、同報、及び代行といった印刷処理を行う印刷ジョブ制御システムについて説明する。なお、この印刷ジョブ制御システムの印刷処理は、上述した印刷制御プログラムで実行される。また、本実施形態では、複数のプリンタデバイスの夫々に対応する個々のプリンタドライバに対して一元的に印刷設定を指示可能で、且つ、De-spooler(後述にて詳しく説明)が各プリンタドライバに描画命令を通知する際に用いる汎用印刷ファイルを生成するためにデータ(汎用ドキュメントデータ)を生成するドライバをグループプリンタドライバと呼ぶ。また、プリンタデバイスに依存した個々のプリンタドライバをメンバプリンタドライバと呼ぶ。
<印刷ジョブの処理>
図6は、アプリケーションから発行された印刷ジョブの処理を示す図であり、本システムのクライアントサーバモデルにおいてMicroSoftWord(登録商標)などの一般的なアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを表している。
図6は、アプリケーションから発行された印刷ジョブの処理を示す図であり、本システムのクライアントサーバモデルにおいてMicroSoftWord(登録商標)などの一般的なアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを表している。
同図において、600はクライアントマシンで、印刷ジョブ制御システムのクライアントモジュールが動作するマシンを指す(クライアント102〜104に相当)。
通常、印刷の指示がされるとアプリケーションプログラムはOSのグラフィック機能を介して一連の描画命令を生成させ、プリンタドライバを経てWindows(登録商標)スプーラ604に渡される。Windows(登録商標)スプーラ604は、ユーザが選択したポートモニタにプリントジョブデータを渡してプリンタデバイスに送信させる手順を採る。
本実施形態では、ユーザは予め印刷ジョブ制御システム用のポートモニタ(以下、ジョブ制御ポートモニタと記す)621を指定して印刷を指示する。アプリケーションプログラム601は一連のOSを介して描画命令を生成する。
描画命令を受け取ったグループプリンタドライバ603では、汎用印刷ファイルを生成するための汎用ドキュメントデータを生成し、プリンタデバイスへプリントジョブデータを送信するポートモニタではなく、ジョブ制御ポートモニタ621にプリントジョブデータとして送信する。ジョブ制御ポートモニタ621はプリントジョブデータをプリンタデバイス650に送信するのではなく、印刷ジョブ制御システム用のプリントサービス(以下、ジョブ制御プリントサービスと記す)622に送信する。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の管理するジョブ/デバイスの状態を管理する機能を備える。
さらに、デバイスとクライアントPCがピアツーピア接続環境で互いに動作するような場合には、ジョブ制御プリントサービス622はデバイスから通知されるデバイス状態やジョブの状態などの情報を管理したり、また、デバイスに対して所定の命令をする機能も備える。これは、複数のプリンタデバイス650のデバイス情報やジョブ情報を管理する機能に相当する。
印刷ジョブ制御システム用プリントマネージャ(以下、ジョブ制御プリントマネージャと記す)623は、ユーザがジョブ制御プリントサービス622内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザインタフェース(UI)を提供するプログラムである。
図32は、ジョブ制御プリントマネージャ623のユーザインタフェース(UI)の例を示しめしている。
図32は、ジョブ制御プリントマネージャ623のユーザインタフェース(UI)の例を示しめしている。
ジョブ制御プリントマネージャ623はジョブ制御プリントサービス622のソフトウェアのインタフェース(API)を介して、ジョブ制御プリントサービス622と情報の送受信を実行し、主に、ジョブ制御プリントサービス622が管理する外部のプリンタデバイスの状態情報をイベントとして取得する機能を備える。イベントの通知の種別としては、トナー残量が少なくなった警告、クライアントとデバイスとの通信障害、メモリ不足、排紙トレイ満載などのエラー/警告情報の通知や、エラー状態から正常状態に復帰した正常情報の通知などが想定される。
印刷ジョブ制御システム用サーバ(以降、ジョブ制御サーバと略記)630は、個々のクライアント600上のジョブ制御プリントサービス622がプリンタデバイス650にプリントジョブデータを送信するタイミングを集中制御(スケジューリング)している。また、印刷ジョブ制御システム用サーバ630はネットワークを介して通信可能な各デバイス(印刷装置)の印刷実行中、電力制御状態、障害情報(紙ジャム)等のステータスを監視し、ジョブ制御プリントサービス622にイベントを通知する機能を備える。ここで、プリンタステータスの状態変化の監視について、ジョブ制御プリントサービス622は直接的に状態の変化の通知(イベント)をプリンタデバイスから取得することもできる。
印刷ジョブ制御システム用のマネージメントコンソール633(以降、ジョブ制御マネージメントコンソールと略記)は、ジョブ制御サーバ630が持つソフトウェアがアクセスするためのAPIを介してジョブ制御サーバ630と情報・指示をやり取りすることで、印刷ジョブ制御システム全体を監視することができる。
また、ジョブ制御サーバ630は、デバイス情報コントロールモジュール631を用いて各プリンタデバイス650と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手したり、操作を行ったりする。入手した情報はクライアント600側のジョブ制御プリントサービス622に渡すことができる。
<グループプリンタドライバ603からの印刷>
次に、本実施形態におけるグループプリンタドライバ603からの印刷について説明する。
次に、本実施形態におけるグループプリンタドライバ603からの印刷について説明する。
グループプリンタドライバ603はアプリケーションプログラムが生成した一連の描画コマンドから、上述した汎用ドキュメントデータを生成する。この汎用ドキュメントデータはジョブ制御プリントサービス622によってプリンタデバイスの種類に依存しない中間フォーマットのファイルである汎用印刷ファイルに変換される。この汎用印刷ファイルの構成については後述する。
この汎用印刷ファイルは前述したようにWindows(登録商標)スプーラ604からジョブ制御ポートモニタ621を経て(図6の(a))、ジョブ制御プリントサービス622に導かれる(図6の(b))。ジョブ制御プリントサービス622はこのプリントジョブに対して行うジョブ制御の種類に応じて、汎用印刷ファイルを基に描画コマンドを生成し(図6の(c))、続いてPDLドライバ602がその描画コマンドをプリンタデバイス650で解釈可能なPDLファイルにする。
図6では、ジョブ制御プリントサービス622で、プリントジョブを二つに分けるジョブ制御が行われる場合において、二つのメンバジョブが生成された例を二つの矢印(c)で示している。PDLドライバ602で生成されたPDLファイルはWindows(登録商標)スプーラ604、ジョブ制御ポートモニタ621を経て(図6の(d))、再びジョブ制御プリントサービス622に渡される(図6の(e))。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリンタデバイス650に送信する(図6の(f))。
ジョブ制御プリントサービス622は、汎用印刷ファイル中の印刷指示書の指示に従って、一つの汎用印刷ファイルを複数のプリントジョブに論理的に分割してそれぞれ別のプリンタデバイスに送信したり、一度送信したプリントジョブデータを別のプリンタデバイスに送信し直したりする。図6中の(c)(d)(e)(f)はそのような場合のプリントジョブデータの経路を示している。
一方、汎用印刷ファイルをアプリケーションソフトウェアが作成し、そのアプリケーションソフトウェアが直接汎用印刷ファイルを印刷ジョブとして投入する場合、一般のアプリケーションとはグループプリンタドライバ603への情報の渡し方や、グループプリンタドライバ603での処理内容が異なる。前述のように、一般のアプリケーションの場合、アプリケーションはグループプリンタドライバ603に描画情報を渡す際、通常のプリンタドライバと同じようにWindows(登録商標)のGDI関数を呼び出し、グループプリンタドライバ603がそれに応じて汎用ドキュメントデータを生成し、該生成された汎用ドキュメントデータがジョブ制御プリントサービス622によって汎用印刷ファイルに生成される。
これに対して汎用印刷ファイルを直接作成するアプリケーションの場合は、アプリケーションが汎用印刷ファイルを既に持ち、それをグループプリンタドライバ603に供給する。グループプリンタドライバ603は必要に応じて予め設定された印刷方法に基づいて汎用印刷ファイル内部の印刷指示書を書き換えてWindows(登録商標)スプーラ604に送る。
<PDLドライバからの印刷1>
図6では、PDLドライバ602はアプリケーションプログラム601が生成した一連の描画コマンドから、プリンタデバイス650で解釈可能なPDLファイルを生成する。このPDLファイルはWindows(登録商標)スプーラ604からジョブ制御ポートモニタ621を経て(図6の(g))、ジョブ制御プリントサービス622に導かれる(図6の(h))。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリンタデバイス650に送信する(図6の(i))。
図6では、PDLドライバ602はアプリケーションプログラム601が生成した一連の描画コマンドから、プリンタデバイス650で解釈可能なPDLファイルを生成する。このPDLファイルはWindows(登録商標)スプーラ604からジョブ制御ポートモニタ621を経て(図6の(g))、ジョブ制御プリントサービス622に導かれる(図6の(h))。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリンタデバイス650に送信する(図6の(i))。
ジョブ制御プリントサービス622は、PDLファイルをプリンタデバイスに送信したり、一度送信したプリントジョブデータを別のプリンタデバイスに送信し直したりする。図6中の(g)(h)(i)はそのような場合のプリントジョブデータの経路を示している。
<PDLドライバからの印刷2>
図6では、PDLドライバ602はアプリケーションプログラム601が生成した一連の描画コマンドから、プリンタデバイス650で解釈可能なPDLファイルを生成する。このPDLファイルはWindows(登録商標)スプーラ604からWindows(登録商標)のジョブ制御ポートモニタ660を経て(図6の(j))、プリンタデバイス650に送信される(図6の(i))。
図6では、PDLドライバ602はアプリケーションプログラム601が生成した一連の描画コマンドから、プリンタデバイス650で解釈可能なPDLファイルを生成する。このPDLファイルはWindows(登録商標)スプーラ604からWindows(登録商標)のジョブ制御ポートモニタ660を経て(図6の(j))、プリンタデバイス650に送信される(図6の(i))。
Windows(登録商標)のジョブ制御ポートモニタ660を使った印刷の系(図6の(j))は通常のWindows(登録商標)などのOSのプリントシステムで印刷する系を表していて、代行印刷などの処理は行われない。
<汎用印刷ファイルの構成>
図7は、汎用印刷ファイルの構成の一例を示した図である。
図7は、汎用印刷ファイルの構成の一例を示した図である。
同図に示すように、本実施形態で使用される汎用印刷ファイルは、印刷指示部とドキュメントデータ部からなる。印刷指示部は、ドキュメントの情報と印刷指示を記述した部分である。また、ドキュメントデータは、アプリケーションのデータを汎用的な形式のデータに変換したものであり、プリンタ言語に依存しないデータフォーマットとなっている。
印刷指示部は、ヘッダ部、ページ情報部、印刷体裁指示部、出力方法指定部、グループプリンタドライバ設定情報部、メンバプリンタ数、メンバプリンタドライバ名、及びメンバプリンタドライバ設定情報部などから構成されている。
ヘッダ部は、本ファイルのバージョン識別やファイル情報などの情報を格納する部分である。ページ情報部は、ドキュメントデータ部のドキュメントデータのページ数や、各ページのサイズなどの情報を格納する部分である。印刷体裁指示部は、印刷ページ範囲、印刷部数、ドキュメントデータの面付け情報(N−UPや製本印刷など)、ステイプル指示やパンチ指示など、出力体裁に関する情報を格納する部分である。
出力方法指定部は、出力方法として、分散印刷、カラーモノクロ分散印刷、代行印刷、同報印刷などの情報を格納する部分である。グループプリンタドライバ設定情報部は、後述するグループプリンタドライバのUIの設定情報を格納する部分である。メンバプリンタ数はグループプリンタドライバが関係付けているャ塔oプリンタの数を格納する部分である。
メンバプリンタドライバ名は、メンバプリンタのプリンタドライバ名を格納する部分である。メンバプリンタドライバ設定情報部は、メンバプリンタのドライバUIの設定情報として例えばDEVMODE情報を格納する部分である。
このメンバプリンタドライバ名とメンバプリンタドライバ設定情報部は、前述のメンバプリンタ数に格納された数だけの格納エリアを持っている。
このメンバプリンタドライバ名とメンバプリンタドライバ設定情報部は、前述のメンバプリンタ数に格納された数だけの格納エリアを持っている。
前述の図6で説明したグループプリンタドライバ603では、汎用印刷ファイルを生成する際、グループプリンタドライバGUI上の設定を印刷指示部へ記録する。さらに、グループプリンタドライバ603はGDIで受け取ったデータを汎用的なデータに変換しドキュメントデータとして、本汎用印刷ファイルのドキュメントデータ部に記録することとなる。
<Windows(登録商標)プリントシステムと印刷ジョブの関係>
次に、図8でWindows(登録商標)が提供するプリントシステムと印刷ジョブ制御システムにおける印刷ジョブの関係と処理概要をさらに詳しく述べる。
次に、図8でWindows(登録商標)が提供するプリントシステムと印刷ジョブ制御システムにおける印刷ジョブの関係と処理概要をさらに詳しく述べる。
図8中で印刷ジョブ制御システム700は、サーバ101とクライアント102、103または104の制御プログラムが動作する物理的なマシンを跨いだ印刷ジョブ制御システムの範囲を示している。また、サーバ101が管理している出力ポート(OutputPort)711は、クライアントのジョブ制御プリントサービス622のプロキシ出力ポート(ProxyOutputPort)712と関係づけられ、一つのポートに関係付けられた各クライアント上のプロキシ出力ポート全てを統一的に管理している。
本実施形態では、実際のプリントジョブデータは各々のクライアントのプロキシ出力ポート712に保持される。ジョブ制御サーバ630は、プリントジョブデータ自体の送信処理は行わず、ジョブ制御プリントサービス622に対して印刷ジョブの送信指示のみを行う。その指示に応じてクライアントのジョブ制御プリントサービス622はプリントジョブデータをデバイス650に送信する。
次に、印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合の処理を説明する。
次に、印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合の処理を説明する。
印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合には、前述のようにユーザまたはアプリケーション601はグループプリンタドライバ603が割り当てられたプリンタに印刷ジョブを発行しなければならない。
アプリケーション601が印刷処理を開始すると、グループプリンタドライバ603は、ジョブ制御プリントサービス622のロジカルキュー情報(後述)を取得し、印刷プロパティで参照できる図33のような情報を、汎用印刷ファイルに設定する。
ジョブ制御プリントサービス622は、グループプリンタドライバ603によって処理されたジョブデータをジョブ制御ポートモニタ621を介して汎用印刷ファイルとして受け取る。ジョブ制御プリントサービス622はこのジョブを受け取り、De-spooler701を介してPDLドライバが割り当てられた別のプリンタにジョブ(メンバジョブ)を発行して印刷を行わせる。
この時、De-spooler701は前述の図7で説明した汎用印刷ファイルの印刷指示部を解釈し、ドキュメントデータ部のドキュメントデータを加工して、Windows(登録商標)のGDIに変換し、各プリンタドライバに対して印刷指示を行い印刷ジョブを発行する。例えば印刷体裁指定部に、「2−UP」の指示が記録されていた場合、用紙1枚に2ページ分のドキュメントデータを縮小レイアウトする。また、分散印刷あるいは同報印刷の場合には、それらの設定に応じて印刷指示部に記述されている複数のメンバプリンタにジョブを発行する。代行印刷の場合は、代行する条件が満たされた時に、自動代行では事前の設定、手動代行ではユーザの操作に応じてメンバジョブを発行する。
また、上述したDe-spooler701とは別のモジュールに各メンバプリンタドライバに対応する指示情報を印刷指示部から抽出させ、該抽出された各メンバプリンタドライバに対する印刷指示をDe-spooler701に解釈させるような形態も想定される。
また、De-spooler701は、各メンバプリンタにジョブを発行する際、メンバプリンタドライバに対応する印刷指示として、各メンバプリンタのDEVMODEを作成する必要があるが、このDEVMODEは印刷指示部に記載された内容を適宜各メンバプリンタのDEVMODEに反映させて生成する。
クライアント側のジョブ制御プリントサービス622は、PDLドライバ602によってレンダリングされた、それぞれのメンバジョブのPDLデータをジョブ制御ポートモニタ621を介して受け取り、受け取ったジョブに関する情報をサーバ101側に知らせ、ジョブデータは自身のプロキシ出力ポート(ProxyOutputPort)712Aまたは712Bで一時保持する。その後、ジョブ制御サーバ630からの送信指示を受けた後にプリントデバイス650に送信する。
<各種の情報と代行条件等の内容>
I.ロジカルキュー情報
図9は、ロジカルキュー(論理プリンタ管理)705に設定されたロジカルキュー情報を示す図である。ロジカルキュー情報は、自動代行印刷処理を行う場合に参照する情報で、代行先プリンタや代行プリンタの優先順位などの情報が設定されている。
I.ロジカルキュー情報
図9は、ロジカルキュー(論理プリンタ管理)705に設定されたロジカルキュー情報を示す図である。ロジカルキュー情報は、自動代行印刷処理を行う場合に参照する情報で、代行先プリンタや代行プリンタの優先順位などの情報が設定されている。
図22、図23、図24はロジカルキュー(論理プリンタ管理)705にロジカルキュー情報を設定するためのユーザインタフェースを表している。
図23からロジカルキュー(ここではOutput Managerプリンタ)を選択すると、図24が表示され編集ボタンを押下することにより図22が表示される。
図22においてロジカルキュー(論理プリンタ管理)705に対して代行先のメンバプリンタを設定し、代行先のメンバプリンタの優先順位を決定する。このユーザインタフェースで設定されたロジカルキュー情報はロジカルキュー(論理プリンタ管理)705で管理される。
II.自動代行条件
図10は、自動代行機能を持つロジカルキュー(論理プリンタ管理)705に設定される自動代行条件を示す図である。自動代行条件は、ロジカルキュー(論理プリンタ管理)705で受け付けられたジョブの情報に設定されもので、印刷を行ったプリンタデバイスにおいて「用紙なし」などのエラーが発生した場合、代行印刷処理を行うかどうかを判断する条件である。
図10は、自動代行機能を持つロジカルキュー(論理プリンタ管理)705に設定される自動代行条件を示す図である。自動代行条件は、ロジカルキュー(論理プリンタ管理)705で受け付けられたジョブの情報に設定されもので、印刷を行ったプリンタデバイスにおいて「用紙なし」などのエラーが発生した場合、代行印刷処理を行うかどうかを判断する条件である。
ここで、自動代行条件の設定内容の、プリンタエラー、プリンタワーニング、ポートエラー、印刷待ちジョブ数、印刷待ちジョブサイズ、及び印刷待ちジョブトータルページについて説明する。
自動代行条件にプリンタエラーが設定されていると、印刷したプリンタデバイスにおいて、「用紙なし」などのデバイスエラーが発生した場合に、自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。自動代行条件にプリンタワーニングが設定されていると、印刷したプリンタデバイスにおいて、トナー残量が少ないなどのデバイスワーニングの状態が発生した場合に自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。
自動代行条件にポートエラーが設定されていると、印刷したプリンタに対応したプロキシ出力ポート712Aまたは712Bにエラー状態が発生した場合に、自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。
印刷待ちジョブ数は、デバイスからの出力されるのを待たされているジョブの数であり、自動代行条件に印刷待ちジョブ数が設定されているときに、印刷待機ジョブの数を越えると、自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。印刷待ちジョブサイズは、デバイスからの出力されるのを待たされているジョブの総サイズであり、自動代行条件に印刷待ちジョブサイズが設定されているときに、印刷待機ジョブの総サイズを越えると、自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。
印刷待ちジョブトータルページは、デバイスからの出力されるのを待たされているジョブの総ページ数であり、自動代行条件に印刷待ちジョブサイズが設定されているときに、印刷待機ジョブの総ページ数を越えると、自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。
また、これらの条件は、複数同時に設定することも可能である。
III.自動代行抑止条件
図11は、自動代行機能を持つロジカルキュー(論理プリンタ管理)705に設定される自動代行抑止条件を示す図である。
図11は、自動代行機能を持つロジカルキュー(論理プリンタ管理)705に設定される自動代行抑止条件を示す図である。
図23から図26はロジカルキュー(論理プリンタ管理)705に自動代行条件を設定するユーザインタフェースを表している。
図23からロジカルキュー(ここではOutput Managerプリンタ)を選択すると、図24において、ロジカルキューの一覧が表示される。自動代行条件を設定するロジカルキューを選択し、図24の選択ボタンを押下することにより図25が表示される。代行条件を設定するには、図25のプリンタオプションを押下し、図26により代行条件を設定する。
これにより設定された代行条件は、選択されたロジカルキュー(論理プリンタ管理)705に設定され、ロジカルキュー(論理プリンタ管理)705により管理される。
自動代行抑止条件は、ロジカルキュー(論理プリンタ管理)705で受け付けられたジョブの情報に設定されもので、プリンタデバイスで自動代行条件に設定された状態が発生した場合に、自動で代行処理を行わず、手動で代行印刷処理を行うようにするための条件である。
以下、自動代行抑止条件の設定内容の、用紙なし、用紙詰まり、ドアオープン、トレイフル、オフライン、キャリブレーションについて説明する。
自動代行抑止条件に用紙なしが設定されていると、印刷したプリンタデバイスにおいて、「用紙なし」などのデバイスエラーが発生した場合に、自動代行印刷処理が行われず、図34に示されるような代行の通知を表すポップアップダイアログが表示される。このポップアップダイアログは印刷したジョブの代行処理を行うか、または、そのまま印刷を継続するかの動作を決定することが可能である。代行処理を行うと決定した場合には、図35に示されるような手動代行ポップアップダイアログが表示され、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。ここで、図35は、手動代行時に表示されるポップアップダイアログを示す図であり、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。また、自動代行印刷は汎用印刷ファイルを使用した印刷であるため図35にあるようにPDL形式が異なる種類のデバイスを代行印刷先から選択することが可能である。
自動代行抑止条件に用紙詰まりが設定されていると、印刷したプリンタデバイスにおいて、「用紙詰まり」などのデバイスエラーが発生した場合に、自動代行印刷処理が行われず、図34に示されるような代行の通知を表すポップアップダイアログが表示される。このポップアップダイアログは印刷したジョブの代行処理を行うか、または、そのまま印刷を継続するかの動作を決定することが可能である。代行処理を行うと決定した場合には、図35に示されるような手動代行ポップアップダイアログが表示され、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。
自動代行抑止条件にドアオープンが設定されていると、印刷したプリンタデバイスにおいて、「ドアオープン」などのデバイスエラーが発生した場合に、自動代行印刷処理が行われず、図34に示されるような代行の通知を表すポップアップダイアログが表示される。このポップアップダイアログは印刷したジョブの代行処理を行うか、または、そのまま印刷を継続するかの動作を決定することが可能である。代行処理を行うと決定した場合には、図35に示されるような手動代行ポップアップダイアログが表示され、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。
自動代行抑止条件にトレイフルが設定されていると、印刷したプリンタデバイスにおいて、「トレイフル」などのデバイスエラーが発生した場合に、自動代行印刷処理が行われず、図34に示されるような代行の通知を表すポップアップダイアログが表示される。このポップアップダイアログは印刷したジョブの代行処理を行うか、または、そのまま印刷を継続するかの動作を決定することが可能である。代行処理を行うと決定した場合には、図35に示されるような手動代行ポップアップダイアログが表示され、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。
自動代行抑止条件にオフラインが設定されていると、印刷したプリンタデバイスにおいて、「オフライン」などのデバイス状態が発生した場合に、自動代行印刷処理が行われず、図34に示されるような代行の通知を表すポップアップダイアログが表示される。このポップアップダイアログは印刷したジョブの代行処理を行うか、または、そのまま印刷を継続するかの動作を決定することが可能である。代行処理を行うと決定した場合には、図35に示されるような手動代行ポップアップダイアログが表示され、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。
自動代行抑止条件にキャリブレーションが設定されていると、印刷したプリンタデバイスにおいて、「キャリブレーション」などのデバイス状態が発生した場合に、自動代行印刷処理が行われず、図34に示されるような代行の通知を表すポップアップダイアログが表示される。このポップアップダイアログは印刷したジョブの代行処理を行うか、または、そのまま印刷を継続するかの動作を決定することが可能である。代行処理を行うと決定した場合には、図35に示されるような手動代行ポップアップダイアログが表示され、ユーザが印刷したジョブの代行印刷先の選択や、代行印刷するページ、部数、ジョブの削除やそのまま印刷を継続するなどの動作を決定することが可能となる。
また、これらの条件は、複数同時に設定することも可能である。
IV.代行条件
図13は、代行機能を持つプリンタキュー(物理プリンタ管理)722A,722Bに設定される代行条件を示す図である。
図13は、代行機能を持つプリンタキュー(物理プリンタ管理)722A,722Bに設定される代行条件を示す図である。
図23、図24、図25、図27はロジカルキュー(論理プリンタ管理)705に自動代行抑止条件を設定するユーザインタフェースを表している。
図23からロジカルキュー(ここではOutput Managerプリンタ)を選択すると、図24において、ロジカルキューの一覧が表示される。自動代行抑止条件を設定するロジカルキューを選択し、図24の選択ボタンを押下することにより図25が表示される。代行抑止条件を設定するには、図25の代行設定を押下し、図27により代行条件を設定する。
これにより設定された代行抑止条件は、選択されたロジカルキュー(論理プリンタ管理)705に設定されロジカルキュー(論理プリンタ管理)705により管理される。
代行条件は、プリンタキュー(物理プリンタ管理)722A,722Bで受け付けられたジョブの情報に設定されもので、印刷を行ったプリンタデバイスにおいて「用紙なし」などのエラーが発生した場合、図12に示されるような手動代行ポップアップダイアログが表示され、その後の印刷処理をユーザに決定させる処理に移行する条件である。
ここで、代行条件の設定内容の、プリンタエラー、プリンタワーニング、ポートエラー、印刷待ちジョブ数、印刷待ちジョブサイズ、及び印刷待ちジョブトータルページについて説明する。
代行条件にプリンタエラーが設定されていると、印刷したプリンタデバイスにおいて、「用紙なし」などのデバイスエラーが発生した場合に、図12に示されるような手動代行ポップアップダイアログが表示され、その後の印刷処理をユーザに決定させる処理に移行する。
代行条件にプリンタワーニングが設定されていると、印刷したプリンタデバイスにおいて、トナー残量が少ないなどのデバイスワーニングが発生した場合に、図12に示されるような手動代行ポップアップダイアログが表示され、その後の印刷処理をユーザに決定させる処理に移行する。
代行条件にポートエラーが設定されていると、印刷したプリンタに対応したプロシキ出力ポート712Aまたは712Bにエラー状態が発生した場合に、図12に示されるような手動代行ポップアップダイアログが表示され、その後の印刷処理をユーザに決定させる処理に移行する。
印刷待ちジョブ数は、デバイスからの出力されるのを待たされているジョブの数であり、代行条件に印刷待ちジョブ数が設定されているときに、印刷待機ジョブの数を越えると、図12に示されるような手動代行ポップアップダイアログが表示され、その後の印刷処理をユーザに決定させる処理に移行する。
印刷待ちジョブサイズは、デバイスからの出力されるのを待たされているジョブの総サイズであり、代行条件に印刷待ちジョブサイズが設定されているときに、印刷待機ジョブの総サイズを越えると、図12に示されるような手動代行ポップアップダイアログが表示され、その後の印刷処理をユーザに決定させる処理に移行する。
印刷待ちジョブトータルページは、デバイスからの出力されるのを待たされているジョブの総ページ数であり、代行条件に印刷待ちジョブサイズが設定されているときに、印刷待機ジョブの総ページ数を越えると、自動代行印刷処理が行われ、印刷ジョブが異なるプリンタデバイスに印刷される。
また、これらの条件は、複数同時に設定することも可能である。
図28から図31は、プリンタキュー(物理プリンタ管理)722A,722Bに代行条件を設定するユーザインタフェースを表している。
図28からプリンタキュー(ここではプリンタ)を選択すると、図29において、プリンタキューの一覧が表示される。代行条件を設定するプリンタキューを選択し、図29の編集ボタンを押下することにより図30が表示される。代行条件を設定するには、図30のプリンタオプションを押下し、表示された図31により代行条件を設定する。
これにより設定された代行条件は、選択されたプリンタキュー(物理プリンタ管理)722A,722Bに設定されプリンタキュー(物理プリンタ管理)722A,722Bにより管理される。
V.オリジナルジョブ情報
図14は、オリジナルジョブのジョブ情報(以下、オリジナルジョブ情報と記す)を示す図である。
図14は、オリジナルジョブのジョブ情報(以下、オリジナルジョブ情報と記す)を示す図である。
このオリジナルジョブ情報は、ユーザがグループプリンタドライバを選択し印刷したジョブ(つまりオリジナルジョブ)がロジカルキュー(論理プリンタ管理)705に渡されるときに作成されるジョブ情報で、その印刷ジョブのドキュメント名、ジョブID、メンバジョブID、ジョブ種別、印刷種別、ジョブ優先度、自動代行条件、及び自動代行抑止条件などが設定されるものである。
ドキュメント名は、ユーザが印刷した印刷ジョブのドキュメント名、ジョブIDは、本システムがジョブ毎に割り振るジョブ識別子、メンバジョブIDは、オリジナルジョブを元にして作成され、プリンタキュー(物理プリンタ管理)722A,722Bに渡されるジョブのジョブ識別子で、ジョブ種別は、ロジカルキュー(論理プリンタ管理)705に設定されているジョブの種類(オリジナルジョブ)をロジカルキュー(論理プリンタ管理)705が受け付けたジョブに設定する情報で、印刷種別は、ロジカルキュー(論理プリンタ管理)705に設定されている印刷の種類(自動代行、分散、同報等)をロジカルキュー(論理プリンタ管理)705が受け付けたジョブに設定する情報で、ジョブ優先度はロジカルキュー(論理プリンタ管理)705に設定されている優先度をロジカルキュー(論理プリンタ管理)705が受け付けたジョブに設定する情報で、自動代行条件は、ロジカルキュー(論理プリンタ管理)705に設定された自動代行条件をロジカルキュー(論理プリンタ管理)705が受け付けたジョブに設定する情報で、自動代行抑止条件は、ロジカルキュー(論理プリンタ管理)705に設定された自動代行抑止条件をロジカルキュー(論理プリンタ管理)705が受け付けたジョブに設定する情報である。
VI.メンバジョブ情報
図15は、メンバジョブのジョブ情報を示す図である。
図15は、メンバジョブのジョブ情報を示す図である。
メンバジョブは、ユーザがグループプリンタドライバを選択し印刷したジョブを元に作成されたジョブで、メンバジョブ情報は、メンバジョブがプリンタキュー(物理プリンタ管理)722A,722Bに渡されるときに作成されるジョブ情報であり、その印刷ジョブのドキュメント名、ジョブID、オリジナルジョブID、ジョブ種別、印刷種別、ジョブ優先度、自動代行条件、及び自動代行抑止条件などが設定されるものである。
ドキュメント名は、ユーザが印刷したオリジナルジョブのドキュメント名から作成されたドキュメント名で、通常、オリジナルジョブと同じドキュメント名であったり、ドキュメント名の後に番号が割り当てられたものである。ジョブIDは、本システムがジョブ毎に割り振るジョブ識別子、オリジナルジョブIDは、メンバジョブの元となるオリジナルジョブのジョブ識別子で、ジョブ種別は、メンバジョブ作成時に設定されるジョブの種類(メンバジョブ)を示す情報で、印刷種別は、オリジナルジョブに設定された印刷種別を引き継いだもので、ジョブ優先度は、オリジナルジョブに設定されたジョブ優先度を引き継いだもので、自動代行条件は、オリジナルジョブに設定された自動代行条件を引き継いだもので、自動代行抑止条件は、オリジナルジョブに設定された自動代行条件を引き継いだものである。
VII.PDLジョブ情報
図16は、PDLジョブ情報を示す図である。
図16は、PDLジョブ情報を示す図である。
PDLジョブ情報は、ユーザが印刷アプリケーションにおいてPDLドライバを選択し印刷したジョブのジョブ情報であり、ここでは、このジョブをPDLジョブとする。すなわち、このPDLジョブ情報は、ユーザがPDLドライバを選択し印刷したジョブがプリンタキュー(物理プリンタ管理)722A,722Bに渡されるときに作成されるジョブ情報で、その印刷ジョブのドキュメント名、ジョブID、ジョブ種別、ジョブ優先度、代行条件などが設定されるものである。
ドキュメント名は、ユーザが印刷した印刷ジョブのドキュメント名、ジョブIDは、本システムがジョブ毎に割り振るジョブ識別子で、ジョブ種別は、プリンタキュー(物理プリンタ管理)722A,722Bに設定されたジョブの種類(オリジナルジョブ、メンバジョブ、PDLジョブ等)をプリンタキュー(物理プリンタ管理)722A,722Bが受け付けたジョブに設定する情報で、ジョブ優先度は、プリンタキュー(物理プリンタ管理)722A,722Bに設定された優先度をプリンタキュー(物理プリンタ管理)722A,722Bが受け付けたジョブに設定する情報で、代行条件は、プリンタキュー(物理プリンタ管理)722A,722Bに設定された代行条件をプリンタキュー(物理プリンタ管理)722A,722Bが受け付けたジョブに設定する情報である。
<自動代行印刷処理及び手動代行印刷処理における印刷データの流れ>
図17は、自動代行印刷処理及び手動代行印刷処理における印刷データの流れを示す図であり、図中の(1)は、アプリケーションAが、PDLドライバ602Aを選択し印刷を行った印刷ジョブの流れを表している。(2)は、(1)で選択されたPDLドライバ602Aに対応するプリントデバイス650Aで、印刷処理前または印刷処理中にデバイスエラーが発生すると、本システムが持つ代行印刷処理によってプリンタキュー(物理プリンタ管理)722Aからプリンタキュー(物理プリンタ管理)722Bにジョブを移動し、プリントデバイス650Bに代行印刷されるジョブデータの流れを表している。(3)は、アプリケーションBが、グループプリンタドライバを選択し印刷を行った印刷ジョブの流れを表している。(4)は(3)で選択されたグループプリンタドライバに印刷された汎用印刷ファイルを元に作成されたメンバジョブが、プリントデバイス650Aにおいて印刷処理前または印刷処理中にデバイスエラーが発生すると、本システムが持つ代行印刷処理によって汎用印刷ファイルを元にプリントデバイス650Bに再度印刷される印刷ジョブの流れを表している。この際、印刷しようとしていたメンバジョブを削除して、メンバジョブを再度作成しプリンタデバイス650Bに印刷することをDespooler701に指示する。
図17は、自動代行印刷処理及び手動代行印刷処理における印刷データの流れを示す図であり、図中の(1)は、アプリケーションAが、PDLドライバ602Aを選択し印刷を行った印刷ジョブの流れを表している。(2)は、(1)で選択されたPDLドライバ602Aに対応するプリントデバイス650Aで、印刷処理前または印刷処理中にデバイスエラーが発生すると、本システムが持つ代行印刷処理によってプリンタキュー(物理プリンタ管理)722Aからプリンタキュー(物理プリンタ管理)722Bにジョブを移動し、プリントデバイス650Bに代行印刷されるジョブデータの流れを表している。(3)は、アプリケーションBが、グループプリンタドライバを選択し印刷を行った印刷ジョブの流れを表している。(4)は(3)で選択されたグループプリンタドライバに印刷された汎用印刷ファイルを元に作成されたメンバジョブが、プリントデバイス650Aにおいて印刷処理前または印刷処理中にデバイスエラーが発生すると、本システムが持つ代行印刷処理によって汎用印刷ファイルを元にプリントデバイス650Bに再度印刷される印刷ジョブの流れを表している。この際、印刷しようとしていたメンバジョブを削除して、メンバジョブを再度作成しプリンタデバイス650Bに印刷することをDespooler701に指示する。
<本実施形態の属性変更処理および代行処理>
図18は、本実施形態の属性変更処理を示すフローチャートである。
図18は、本実施形態の属性変更処理を示すフローチャートである。
ステップS1801において、ユーザがユーザインタフェース等から印刷ジョブの印刷属性値の変更操作を行う。ステップS1802において、ジョブ情報のジョブ種別からPDLジョブであるかを判断し、PDLジョブである場合はステップS1803においてPDLジョブの印刷属性値の変更を行う。例えば、ユーザがPDLジョブのジョブ優先度の変更操作を行った場合は、PDLジョブの優先度を変更する。
ステップS1802において、PDLジョブでなかった場合、ステップS1804において、ジョブ情報のジョブ種別からオリジナルジョブであるかを判断する。オリジナルジョブである場合はS1805において、オリジナルジョブの印刷属性値の変更を行う。例えば、ユーザがオリジナルジョブのジョブ優先度の変更操作を行った場合は、オリジナルジョブの優先度を変更する。
ステップS1804において、オリジナルジョブでなかった場合、ステップS1806において、ジョブ情報の印刷種別から自動代行のメンバジョブであるかを判断する。自動代行である場合はS1807においてオリジナルジョブの印刷属性値の変更を行い、S1808において、メンバジョブの印刷属性値の変更を行う。ステップS1806において、自動代行でなかった場合、S1808において、メンバジョブの印刷属性値のみ変更を行う。例えば、ユーザが自動代行のメンバジョブにおけるジョブ優先度の変更操作を行った場合は、オリジナルジョブおよびメンバジョブの優先度を変更する。分散や同報のメンバジョブの場合はメンバジョブの優先度のみ変更する。
図19は、本発明に係る代行処理を示すフローチャートである。
ステップS1901において、グループプリンタドライバがアプリケーションから印刷データを受け付ける。ステップS1902において、グループプリンタドライバが受け付けた印刷データをWindows(登録商標)プリントシステム660経由でロジカルキュー(論理プリンタ管理)705が受け付ける。
ステップS1903において、ロジカルキュー(論理プリンタ管理)705に設定されている図10の自動代行条件、図11の自動代行抑止条件を、ステップS1902で受け付けた印刷データに関係する図14のオリジナルジョブ情報に設定する。ステップS1904において代行管理プラグインがジョブを受け付ける。ステップS1905において代行管理プラグインは、図9のロジカルキュー情報に設定された、印刷先を示すメンバプリンタ名の中から優先度の高いプリンタ名を取得する。ここではメンバプリンタ名1に設定されたプリンタに対応するプリンタデバイスからプリンタデバイスの状態を取得し,ジョブに設定された図14の自動代行条件に当てはまるかどうかを判断する。
例えば、プリンタプリンタデバイスが「用紙なし」エラーの状態で、自動代行条件に「プリンタエラー」が設定されていれば、自動代行条件が満たされたこととなる。自動代行条件に「プリンタエラー」が設定されていなければ、自動代行条件が満たされていないこととなる。自動代行条件が満たされていないと判断されると、ステップS1906に処理を移行し、自動代行条件が満たされていないと判断されたメンバプリンタに対応したPDLドライバに印刷することをDe−spooler701に指示を行う。
ステップS1907では、De−spooler701が指示されたPDLドライバに印刷処理を行い、ステップS1908において、プリンタキュー(物理プリンタ管理)722Aまたは722Bがジョブを受け付ける。プリンタキュー(物理プリンタ管理)722Aまたは722Bがジョブを受け付けるとプリンタキュー(物理プリンタ管理)722Aまたは722Bがジョブ情報を作成するが、これが図15のメンバジョブ情報となる。ステップS1909において、プリンタキュー(物理プリンタ管理)722Aまたは722Bは、図14のオリジナルジョブ情報から図10の自動代行条件、図11の自動代行抑止条件を取得し、図15のメンバジョブ情報に設定する。
プロシキ出力ポート712Aまたは712Bにジョブを渡す前にステップS1910において、対応するプリンタデバイスからプリンタデバイスの状態を取得し、メンバジョブ情報に設定された図14の自動代行条件に当てはまるかどうかを判断する。代行条件が満たされていない場合には、ステップS1911に処理を移行する。
ステップS1911においてプロシキ出力ポート712Aまたは712Bがジョブを受け付けると、ステップS1912において、ジョブ制御サーバ630に入力ジョブ情報を渡し、スケジューリング要求を行い、ジョブ制御サーバ630から印刷指示が来るのを待機する。ステップS1913において、ジョブ制御サーバ630から印刷指示を受け付けると、ステップS1914において、プリンタデバイスにジョブ転送を開始する。
ステップS1915において、対応するプリンタデバイスからプリンタデバイスの状態を取得し、メンバジョブ情報に設定された図14の自動代行条件に当てはまるかどうかを判断する。代行条件が満たされていない場合には、ステップS1916に処理を移行する。
ステップS1916において、プリンタデバイスから印刷完了の通知を監視する。プリンタデバイスから印刷完了通知を受け付けると、処理をステップS1917に移行し、PDLドライバから受け取った印刷データや、印刷ジョブに関係するメンバジョブ情報などを削除し、ステップS1918において、オリジナルジョブの汎用印刷データ、オリジナルジョブ情報を削除し、処理を終了する。
ステップS1905において、代行条件が満たされていると判断した場合には、処理をステップS19ステップS19に移行する。ステップS1919において、オリジナルジョブ情報に設定された、自動代行抑止条件とプリンタデバイスの状態を比較し、自動代行抑止条件に当てはまるか判断する。
例えば、プリンタプリンタデバイスが「用紙なし」エラーの状態で、自動代行抑止条件に「用紙なし」が設定されていれば、自動代行抑止条件が満たされたこととなる。自動代行条件に「用紙なし」が設定されていなければ、自動代行抑止条件が満たされていないこととなる。自動代行抑止条件が満たされていないと判断されると、自動代行処理が行われることになる。ステップS1920において出力先プリンタ選択処理を行う。
ステップS1920において、図9のロジカルキュー情報に設定された、印刷先を示すメンバプリンタ名の中から現在印刷されようとしていたメンバプリンタの次に優先度の高いプリンタ名を取得する。ステップS1905に処理を移行し、選択されたメンバプリンタに対応するプリンタデバイスのプリンタデバイス状態との代行条件を判断する。
ステップS19ステップS19において、代行抑止条件が満たされていると判断された場合には、ステップS1921において図12のような代行ポップアップダイアログを表示し、ユーザに印刷ジョブの以降の処理を選択させる。ステップS1922において、ユーザが代行ポップアップダイアログで、代行先プリンタを選び、印刷ジョブを代行することを選択した場合、処理をステップS1906に移行し、ユーザが選択したプリンタに印刷することをDe−spooler701に指示する。
ステップS1922において、ユーザが継続することを選択した場合には、代行印刷処理を行わず処理をステップS1906に移行し印刷処理を継続する。ステップS1922において、ユーザが削除することを選択した場合には、処理をステップS1917に移行し、ジョブ削除の処理を行う。
ステップS1910において、代行条件が満たされていると判断した場合には、処理をステップS1923に移行する。ステップS1923において、メンバジョブ情報に設定された、自動代行抑止条件とプリンタデバイスの状態を比較し、自動代行抑止条件に当てはまるか判断する。自動代行抑止条件が満たされていないと判断されると、自動代行処理が行われることになる。
ステップS1920において出力先プリンタ選択処理を行う。ステップS1923において、自動代行抑止条件が満たされていると判断されるとステップS1924に移行する。ステップS1924において図12のような代行ポップアップダイアログを表示し、ユーザに印刷ジョブの以降の処理を選択させる。
ステップS1925において、ユーザが代行ポップアップダイアログで、代行先プリンタを選び、印刷ジョブを代行することを選択した場合、処理をステップS1926に移行し、現在印刷しようとしていた印刷ジョブを削除して、ステップS1906においてユーザが選択したプリンタに印刷することをDe−spooler701に指示する。
ステップS1925において、ユーザが継続することを選択した場合には、処理をステップS1911に移行し、印刷処理を継続する。ステップS1925において、ユーザが削除することを選択した場合には、処理をステップS1917に移行し、ジョブ削除の処理を行う。
ステップS1915において、代行条件が満たされていると判断した場合には、処理をステップS1927に移行する。ステップS1927において、メンバジョブ情報に設定された、自動代行抑止条件とプリンタデバイスの状態を比較し、自動代行抑止条件に当てはまるか判断する。自動代行抑止条件が満たされていないと判断されると、自動代行処理が行われることになる。
ステップS1920において出力先プリンタ選択処理を行う。ステップS1927において、自動代行抑止条件が満たされていると判断されるとステップS1928に移行する。ステップS1928において図12のような代行ポップアップダイアログを表示し、ユーザに印刷ジョブの以降の処理を選択させる。ステップS1929において、ユーザが代行ポップアップダイアログで、代行先プリンタを選び、印刷ジョブを代行することを選択した場合、処理をステップS1926に移行し、現在印刷しようとしていた印刷ジョブを削除して、ステップS1906においてユーザが選択したプリンタに印刷することをDe−spooler701に指示する。
ステップS1929において、ユーザが継続することを選択した場合には、処理をステップS1916に移行し、印刷処理を継続する。ステップS1929において、ユーザが削除することを選択した場合には、処理をステップS1917に移行し、ジョブ削除の処理を行う。
このように本実施形態では、自動代行を行うグループプリンタドライバにおけるメンバジョブのジョブ優先度等の印刷属性値を変更した場合、オリジナルジョブの印刷属性値も変更することにより、代行処理が発生してメンバジョブが作り直されても、変更後の印刷属性値が引き継がれるようにする。
なお、本発明は、上述した実施形態の装置に限定されず、複数の機器から構成されるシステムに適用しても、一つの機器から成る装置に適用してもよい。前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体をシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、完成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMを用いることができる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、次のプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるCPUなどが処理を行って実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
600 クライアントマシン
601 アプリケーションプログラム
602 PDLドライバ
603 グループプリンタドライバ
604 Windows(登録商標)スプーラ
621 ジョブ制御ポートモニタ
622 ジョブ制御プリントサービス
623 ジョブ制御プリントマネージャ
630 ジョブ制御サーバ
631 デバイス情報コントロールモジュール
633 ジョブ制御マネージメントコンソール
650 プリンタデバイス
601 アプリケーションプログラム
602 PDLドライバ
603 グループプリンタドライバ
604 Windows(登録商標)スプーラ
621 ジョブ制御ポートモニタ
622 ジョブ制御プリントサービス
623 ジョブ制御プリントマネージャ
630 ジョブ制御サーバ
631 デバイス情報コントロールモジュール
633 ジョブ制御マネージメントコンソール
650 プリンタデバイス
Claims (5)
- 外部処理装置に対してジョブデータを転送する転送手段と、
前記外部処理装置を別の処理装置で代行するための代行処理を行う代行処理手段と、
前記ジョブデータの印刷属性値が変更された場合に変更情報を保存しておき、代行処理において保存された前記変更情報を使用して前記ジョブデータを再生成するジョブ再生成手段と、
別の処理装置に転送する転送手段を有し、
前記ジョブ再生成手段は、前記オリジナルジョブの印刷属性値を引き継いで前記ジョブデータを生成することを特徴とすることを特徴とする情報処理装置。 - 前記ジョブ再生成手段は、前記ジョブデータの元となるオリジナルジョブから前記ジョブデータを生成することを特徴とする請求項1記載の情報処理装置。
- 前記ジョブ再生成手段は、前記ジョブデータの印刷属性値が変更された場合に前記ジョブデータの印刷属性値の変更情報をオリジナルジョブに保存しておくことを特徴とする請求項1記載の情報処理装置。
- 前記ジョブ再生成手段は、前記ジョブデータの印刷属性値が変更された場合に、前記オリジナルジョブの印刷属性値も変更することを特徴とする請求項3記載の情報処理装置。
- 前記ジョブ再生成手段は、前記ジョブデータの印刷属性値が変更された場合に、オリジナルジョブの種類を判断して、自動代行のオリジナルジョブの場合のみ、変更情報をオリジナルジョブに保存することを特徴とする請求項1乃至4のいずれかに記載の情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004001659A JP2005196439A (ja) | 2004-01-07 | 2004-01-07 | 印刷システムにおける印刷データの制御方法および制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004001659A JP2005196439A (ja) | 2004-01-07 | 2004-01-07 | 印刷システムにおける印刷データの制御方法および制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005196439A true JP2005196439A (ja) | 2005-07-21 |
Family
ID=34817115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004001659A Withdrawn JP2005196439A (ja) | 2004-01-07 | 2004-01-07 | 印刷システムにおける印刷データの制御方法および制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005196439A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007323332A (ja) * | 2006-05-31 | 2007-12-13 | Konica Minolta Business Technologies Inc | 画像形成システム、画像形成装置およびプリントジョブ管理方法 |
-
2004
- 2004-01-07 JP JP2004001659A patent/JP2005196439A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007323332A (ja) * | 2006-05-31 | 2007-12-13 | Konica Minolta Business Technologies Inc | 画像形成システム、画像形成装置およびプリントジョブ管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004054909A (ja) | 情報処理装置、印刷システム、情報処理装置の印刷制御方法、及び印刷制御プログラム | |
JP3833127B2 (ja) | 代行印刷処理装置、代行印刷処理方法、プログラム、および記憶媒体 | |
US7312886B2 (en) | Printer control method, information processing apparatus, program, and storage medium | |
US7707326B2 (en) | System for setting print end notification either when data transmission ends or when printing ends based on print check ability of printing devices | |
US8045202B2 (en) | Information processing apparatus and print device control method | |
JP3793197B2 (ja) | 情報処理装置、情報処理方法、情報処理プログラム並びに記憶媒体 | |
JP3854963B2 (ja) | 情報処理装置、印刷システム、負荷分散印刷方法、及び制御プログラム | |
JP3833213B2 (ja) | 情報処理装置、印刷システム、負荷分散印刷方法、及びプログラム並びに記憶媒体 | |
US20080266601A1 (en) | Information processing apparatus and job management method | |
JP2005173920A (ja) | 情報処理装置、負荷分散印刷方法、プログラム、及び記憶媒体 | |
JP3854941B2 (ja) | 印刷制御方法、ホストコンピュータ、プログラム及び記憶媒体 | |
JP2006301860A (ja) | 情報処理装置 | |
JP3880575B2 (ja) | 印刷設定方法及びコンピュータ | |
JP2006202332A (ja) | 代行印刷処理装置、代行印刷処理方法、プログラム、および記憶媒体 | |
JP2005196439A (ja) | 印刷システムにおける印刷データの制御方法および制御プログラム | |
JP3833090B2 (ja) | 制御方法、制御装置、プログラム及び記憶媒体 | |
JP3740448B2 (ja) | 制御装置、制御方法、プログラム及び記憶媒体 | |
JP4110021B2 (ja) | 部門管理を伴う印刷処理を行う印刷処理プログラム及び情報処理装置及び情報処理方法並びに記憶媒体 | |
JP2005174174A (ja) | 情報処理装置、印刷処理方法、プログラム、及び、記憶媒体 | |
JP2006178767A (ja) | 印刷予約システム及びその制御方法 | |
JP4174523B2 (ja) | 情報処理装置、印刷システム、負荷分散印刷方法、及びプログラム、並びに記憶媒体 | |
JP4143598B2 (ja) | 情報処理装置における管理方法、情報処理装置、プログラム及び記憶媒体 | |
JP2005173921A (ja) | 情報処理装置、印刷システム、及び情報処理方法、及び制御プログラム | |
JP2006085335A (ja) | 情報処理装置 | |
JP2004005258A (ja) | 印刷管理システム、印刷管理システム用プログラム及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070403 |