JP3884949B2 - ジョブ管理方法及び情報処理装置及びプログラム並びに記憶媒体 - Google Patents
ジョブ管理方法及び情報処理装置及びプログラム並びに記憶媒体 Download PDFInfo
- Publication number
- JP3884949B2 JP3884949B2 JP2001368744A JP2001368744A JP3884949B2 JP 3884949 B2 JP3884949 B2 JP 3884949B2 JP 2001368744 A JP2001368744 A JP 2001368744A JP 2001368744 A JP2001368744 A JP 2001368744A JP 3884949 B2 JP3884949 B2 JP 3884949B2
- Authority
- JP
- Japan
- Prior art keywords
- printer
- job
- information
- virtual printer
- printers
- 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
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
【発明の属する技術分野】
本発明は、印刷ジョブに係るステータス等の各種情報を管理するジョブ管理方法、情報処理装置、プログラム及び記憶媒体に関するものである。
【0002】
【従来の技術】
近年、ネットワーク機器が一般に利用され、ネットワーク上に多数のパソコン(以下、PC)やプリンターが接続されるようになった。このようなネットワーク環境において、例えば、Windouw(登録商標)のジョブステータスモニタなどで、プリンタサーバに割当されたキュー内のジョブ情報などをリモート監視する技術などが知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、従来のジョブモニタでは複数のプリンタに部数/頁を振り分けて印刷を行わせるような分散印刷や同報印刷等の印刷方法に対して、適切なジョブ情報を提供するような仕組みは実現されておらず、例えば、分散印刷を実行させたような場合には分散印刷に利用されたプリンタに対応するジョブ監視モニタを夫々監視するに留まっていた。
【0004】
ましてや、他の人のジョブと混在した形でジョブ情報のユーザインターフェースが提供される為に、どのジョブが自分の監視したいジョブかを容易には判別することができなかった。
【0005】
さらに、分散印刷や同報印刷等の複数種類の複数プリンタを利用したジョブを想定した場合に、従来の技術によれば、夫々のプリンタキューの情報を閲覧したとしても、それが分散印刷で利用されたプリンタに対応したジョブ情報なのか、或は、同報印刷に対応したジョブ情報なのか等を効率良く認識することができなかった。
【0006】
本願発明は上記問題点に鑑みてなされたものであり、複数のプリンタを利用するようなジョブ形態に対応して、そのジョブ情報を解り易くユーザに知らしめることができるジョブ管理の仕組みを提供することにある。
【0007】
【課題を解決するための手段】
本発明は、上記目的を達成する為に、複数のプリンタと前記複数のプリンタの何れかをメンバプリンタとして関連付けた仮想プリンタに係るジョブの状態を管理するジョブ管理方法において、前記仮想プリンタ及び前記複数のプリンタのプリンタ情報を取得するプリンタ情報取得ステップと、前記取得されたプリンタ情報に基づき前記仮想プリンタ及び複数のプリンタを一覧で表示枠に表示させる表示制御ステップと、前記表示制御ステップにより表示された一覧の中から、前記仮想プリンタが選択指示されたか、前記複数のプリンタの何れかが選択指示されたか、を判別する判別ステップと、前記判別ステップによって仮想プリンタが選択指示されたと判別された場合には、選択指示された仮想プリンタに関連付けられたメンバプリンタのジョブ情報に基づく仮想プリンタのジョブ情報を表示させ、前記何れかのプリンタが選択指示されたと判別された場合には、前記何れかのプリンタに対応するジョブ情報を表示させるジョブ情報管理ステップとを有することを特徴とする。
【0014】
【発明の実施の形態】
以下、本発明を適用するのに好適である実施形態について説明を行う。
【0015】
図1は、本発明を適用可能な情報処理システムの構成を説明するブロック図である。なお、本システムにおけるクライアントコンピュータは、1台、または複数台接続されていることを仮定している。
【0016】
図1において、102、103、104はクライアントコンピュータ(クライアント)としての情報処理装置であり、イーサネット(登録商標)などのネットワークケーブルによって、ネットワーク106に接続され、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。なお、プリンタドライバは複数のプリンタドライバをサポートするものとする。また、プリンタとしては印刷装置であるところの、電子写真方式を最小したレーザービームプリンタやインクジェット方式を採用したインクジェットプリンタや熱転写方式を利用したプリンタ等様々な方式のものに適応できることも無論想定される。
【0017】
101は本実施形態のサーバ(以下、プリントサーバと呼ぶ)としての情報処理装置であり、ネットワークケーブルによって、ネットワーク106に接続され、ネットワークで使用されるファイルを蓄積したり、ネットワーク106の使用状態を監視したりする。プリントサーバ101は、ネットワーク106に接続されている複数のプリンタを管理している。
【0018】
構成としては、クライアント102〜104とプリントサーバ101は、一般的な情報処理装置であり、クライアントとプリントサーバには、それぞれ異なる制御を行う印刷制御プログラムが実行可能に格納されている。
【0019】
また、プリントサーバ101は、一般的な情報処理装置であり、クライアント102〜104の機能を同時に持つこともできる。
【0020】
本実施形態におけるプリントサーバ101は、さらにクライアントコンピュータ102、103、104から印刷要求が出された印字データを含む印刷ジョブを格納して印刷したり、または、クライアントコンピュータ102、103、104から印字データを含まないジョブ情報のみ受け取り、クライアントコンピュータ102、103、104の印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知したり、ネットワークプリンタ105のステータスや印刷ジョブの各種情報を取得し、クライアントコンピュータ102、103、104に通知したりする機能を揃えている。
【0021】
105は印刷制御装置であるネットワークプリンタであり、図示省略したネットワークインタフェースを介してネットワーク106と接続されており、クライアントコンピュータから送信される印字データを含む印刷ジョブを解析して1ページずつドットイメージに変換して、1ページ毎に印刷する。106はネットワークであり、クライントコンピュータ102、103、104、サーバ101、ネットワークプリンタ105等と接続している。
【0022】
図2は、本実施の形態における情報処理装置の構成を説明するブロック図であり、情報処理装置であるクライントコンピュータ102、103、104も同じ構成であり、さらにサーバ101も同様あるいは同等のハードウエア構成とする。よって、クライアントとサーバの構成を説明するブロック図として説明する。
【0023】
図2において、200は情報処理装置の制御手段であるCPUであり、ハードディスク(HD)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや本発明のネットワークプリンタ制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【0024】
201は記憶手段であるROMであり、内部には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。202は一時記憶手段であるRAMであり、CPU200の主メモリ、ワークエリア等として機能する。
【0025】
203は記憶媒体読み込み手段としてのフロッピー(登録商標)ディスク(FD)ドライブであり、後述する図5に示すようにFDドライブ203を通じて記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。なお、記憶媒体は、FDに限らず、CD−ROM、CD−R、CD−RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、任意である。
【0026】
204は記憶媒体であるフロッピーディスク(FD)であり、コンピュータが読み取り可能なプログラムが格納された記憶媒体である。
【0027】
205は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク(HD)であり、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、関連プログラム等を格納している。さらにスプール手段であるスプーラはここに確保される。スプール手段は、クライアントではクライアントスプーラのことであり、プリントサーバではサーバスプーラのことである。また、プリントサーバでは、クライアントから受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶手段に生成されて格納される。
【0028】
206は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータに対して、また、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示するものである。
【0029】
207は表示手段であるディスプレイであり、キーボード206から入力したコマンドや、プリンタの状態等を表示したりするものである。
【0030】
208はシステムバスであり、クライアントやプリントサーバであるコンピュータ内のデータの流れを司るものである。
【0031】
209は入出力手段であるインタフェースであり、該インタフェース209を介して情報処理装置は外部装置とのデータのやり取りを行う。
【0032】
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、FD204からロードされる上記ネットワークプリンタ制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
【0033】
本実施形態では、FD204からネットワークプリンタ制御プログラムおよび関連データを直接RAM202にロードして実行させる例を示すが、これ以外にも、FD204からネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがインストールされているHD205からRAM202にロードするようにしてもよい。
【0034】
また、本ネットワークプリンタ制御プログラムを記憶する媒体は、FD以外にCD−ROM、CD−R、PCカード、DVD、ICメモリカードであってもよい。さらに、本ネットワークプリンタ制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。
【0035】
また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
【0036】
また、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムと呼ぶこともある。印刷制御プログラムは、クライアントにおいて印刷ジョブの印刷先の変更を指示したり、印刷順序を変更する指示をするための制御を行うプログラムを含み、また、プリントサーバにおいて、印刷ジョブの順序制御を行ったり、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。また、このような制御を行う本発明の印刷制御プログラムは、クライアントにインストールされるモジュールと、プリントサーバにインストールされるモジュールを別々に分けてもよいし、ひとつの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、またはプリントサーバ用として機能するようにしてもよい。あるいは一台のコンピュータに、クライアント用の機能を持つモジュールと、プリントサーバ用として機能するモジュールをともにインストールし、同時に、あるいは時分割で擬似的に平行動作させる構成も可能である。
【0037】
301は基本I/Oプログラムであり、本制御装置の電源がONされたときに、HD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムが入っている領域である。
【0038】
302はオペレーティングシステム(OS)であり、303はネットワークプリンタ制御プログラムで、RAM202上に確保される領域に記憶される。304は関連データで、RAM202上に確保される領域に記憶される。305はワークエリアで、CPU200が本プリンタ制御プログラムを実行する領域が確保されている。
【0039】
図4は、図2に示したFD204のメモリマップの一例を示す図である。図4において、400は前記FD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、404はその関連データである。403のネットワークプリンタ制御プログラムは、実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施例では、クライアント、サーバ共、同様の構成をとっている。
【0040】
図5は、図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図であり、図2と同一のものには同一の符号を付してある。
【0041】
図5において、FD204には、本実施形態で説明するネットワークプリンタ制御プログラムおよび関連データを格納している。
【0042】
次に本実施の形態における、プリンタを複数台使用して、前述の分散、同報、代行といった印刷処理を行う、印刷ジョブ制御システムについて説明する。
【0043】
なお、本実施の形態では、複数のプリンタを1台のプリンタとして仮想的に束ねるプリンタをグループプリンタ、束ねられるプリンタをメンバプリンタと呼ぶ。また、それに対応するプリンタドライバをそれぞれグループプリンタドライバ、メンバプリンタドライバと呼ぶ。
【0044】
図6は本システムのクライアントサーバモデルにおいてMicroSoftWordなどの一般的なアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した図である。図6において、600はクライアントマシンで、印刷ジョブ制御システムのクライアントモジュールが動作するマシンを指す。
【0045】
通常、印刷の指示がされるとアプリケーションプログラムは一連の描画命令を生成し、プリンタドライバを経てWindowsSpoolerに渡される。WindowsSpoolerは、ユーザが選択したポートモニタにプリントジョブデータを渡してプリンタデバイスに送信させる手順をとる。
【0046】
本実施の形態では、ユーザはあらかじめ印刷ジョブ制御システム用のポートモニタ621(以降、本実施例ではジョブ制御ポートモニタと略記)を指定して印刷を指示する。アプリケーションプログラム601は一連の描画命令を生成する。描画命令を受け取ったグループプリンタドライバ603では、汎用印刷ファイルを生成し、プリンタデバイスへプリントジョブデータを送信するポートモニタではなく、ジョブ制御ポートモニタ621にプリントジョブデータとして送信する。ジョブ制御ポートモニタ621はプリントジョブデータをプリンタデバイス650に送信するのではなく、印刷ジョブ制御システム用プリントサービス622(以降、本実施例ではジョブ制御プリントサービスと略記)に送信する。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の管理するジョブ/デバイスの状態を管理する機能を備える。更に、デバイスとクライアントPCがピアツーピア接続環境で互いに動作するような場合には、ジョブ制御プリントサービス622はデバイスから通知されるデバイス状態やジョブの状態などの情報を管理したり、また、デバイスに対して所定の命令をする機能も備える。これは、複数のプリンタデバイス650のデバイス情報やジョブ情報を管理する機能に相当する。
【0047】
印刷ジョブ制御システム用プリントマネージャ623(以降、本実施例ではジョブ制御プリントマネージャとも略記)は、ユーザがジョブ制御プリントサービス622内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作しりするためのユーザインタフェース(UI)を提供するプログラムである。
【0048】
ジョブ制御プリントマネージャ623はジョブ制御プリントサービス622のソフトウェアのインタフェース(API)を介して、ジョブ制御プリントサービス622と情報の送受信を実行し、主に、ジョブ制御プリントサービス622が管理する外部のプリンタデバイスの状態情報をイベントとして取得する機能を備える。イベントの通知の種別としては、トナー残量が少なくなった警告、クライアントとデバイスとの通信障害、メモリ不足、排紙トレー満載などのエラー/警告情報の通知や、エラー状態から正常状態に復帰した正常情報の通知などが想定される。
【0049】
印刷ジョブ制御システム用サーバ630(以降、本実施例ではジョブ制御サーバと略記)は、個々のクライアント600上のジョブ制御プリントサービス622がプリンタデバイス650にプリントジョブデータを送信するタイミングを集中制御(スケジューリング)している。また、印刷ジョブ制御システム用サーバ630はネットワークを介して通信可能な各デバイス(印刷装置)の印刷実行中、電力制御状態、障害情報(紙ジャム)等のステータスを監視し、ジョブ制御プリントサービス622にイベントを通知する機能を備える。ここで、プリンタステータスの状態変化の監視について、ジョブ制御プリントサービス622は直接的に状態の変化の通知(イベント)をプリンタデバイスから取得することもできる。
【0050】
印刷ジョブ制御システム用マネージメントコンソール633(以降、本実施例ではジョブ制御マネージメントコンソールと略記)は、ジョブ制御サーバ630が持つソフトウェアがアクセスするためのAPIを介してジョブ制御サーバ630と情報・指示をやり取りすることで、印刷ジョブ制御システム全体を監視することができる。
【0051】
また、ジョブ制御サーバ630はデバイス情報コントロールモジュール631を用いて各プリンタデバイス650と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手したり、操作を行ったりする。入手した情報はクライアント600側のジョブ制御プリントサービス622に渡すことができる。
【0052】
次に本実施の形態におけるグループプリンタドライバ603からの印刷について説明する。
【0053】
グループプリンタドライバ603はアプリケーションプログラムが生成した一連の描画コマンドを、プリンタデバイスの種類に依存しない中間フォーマットのファイルである汎用印刷ファイルに変換する。この汎用印刷ファイルの構成については後述する。
【0054】
この汎用印刷ファイルは前述したようにWindowSスプーラ604からジョブ制御ポートモニタ621を経て(a)、ジョブ制御プリントサービス622に導かれる(b)。ジョブ制御プリントサービス622はこのプリントジョブに対して行うジョブ制御の種類に応じて、汎用印刷ファイルをもとに描画コマンドを生成し(c)、続いてPDLドライバ602がその描画コマンドをプリンタデバイス650が解釈可能なPDLファイルにする。図6では、ジョブ制御プリントサービス622で、このプリントジョブに対してプリントジョブをふたつに分けるジョブ制御が行われる例で、2つのメンバジョブが生成された例を2つの矢印(c)で示している。PDLドライバ602で生成されたPDLファイルはWindowSスプーラ604、ジョブ制御ポートモニタ621を経て(d)、再びジョブ制御プリントサービス622に渡される(e)。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリンタデバイス650に送信する(f)。
【0055】
ジョブ制御プリントサービス622は、汎用印刷ファイル中の印刷指示書の指示にしたがって、一つの汎用印刷ファイルを複数のプリントジョブに論理的に分割してそれぞれ別のプリンタデバイスに送信したり、一度送信したプリントジョブデータを別のプリンタデバイスに送信し直したりする。図A中の(c)(d)(e)(f)はそのような場合のプリントジョブデータの経路を示している。
【0056】
一方、汎用印刷ファイルをアプリケーションソフトウェアが作成し、そのアプリケーションソフトウェアが直接汎用印刷ファイルを印刷ジョブとして投入する場合、一般のアプリケーションとはグループプリンタドライバ603への情報の渡し方や、グループプリンタドライバ603での処理内容が異なる。前述のように、一般のアプリケーションの場合、アプリケーションはグループプリンタドライバ603に描画情報を渡す際、通常のプリンタドライバと同じようにWindowSのGDI関数を呼び出し、グループプリンタドライバ603がそれに応じて汎用印刷ファイルを生成する。これに対して汎用印刷ファイルを直接作成するアプリケーションの場合は、アプリケーションが汎用印刷ファイルをすでに持ち、それをグループプリンタドライバ603に供給する。グループプリンタドライバ603は必要に応じてあらかじめ設定された印刷方法にもとづいて汎用印刷ファイル内部の印刷指示書を書き換えてWindowSSpooler604に送る。
【0057】
図8は、汎用印刷ファイルの構成の一例を示した図である。
【0058】
本実施の形態で使用される汎用印刷ファイルは、印刷指示部8−aと、ドキュメントデータ部8−bからなる。印刷指示部は、ドキュメントの情報と印刷指示を記述した部分である。また、ドキュメントデータは、アプリケーションのデータを汎用的な形式のデータに変換したものであり、プリンタ言語に依存しないデータフォーマットとなっている。
【0059】
印刷指示部はヘッダ部、ページ情報部、印刷体裁指示部、出力方法指定部、グループプリンタドライバ設定情報部、メンバプリンタ数、メンバプリンタドライバ名、メンバプリンタドライバ設定情報部などから構成されている。
【0060】
ヘッダ部は本ファイルのバージョン識別やファイル情報などの情報を格納する部分である。
【0061】
ページ情報部は、ドキュメントデータ部8−bのドキュメントデータのページ数、各ページのサイズなどの情報を格納する部分である。
【0062】
印刷体裁指示部は、印刷ページ範囲、印刷部数、ドキュメントデータの面付け情報(N−UPや製本印刷など)、ステイプル指示やパンチ指示など、出力体裁に関する情報を格納する部分である。
【0063】
出力方法指定部は、出力方法として、分散印刷、カラーモノクロ分散印刷、代行印刷、同報印刷などの情報を格納する部分である。
【0064】
グループプリンタドライバ設定情報部は、後述するグループプリンタドライバのUIの設定情報を格納する部分である。
【0065】
メンバプリンタ数はグループプリンタドライバが関連付けているメンバプリンタの数を格納する部分である。
【0066】
メンバプリンタドライバ名は、メンバプリンタのプリンタドライバ名を格納する部分である。
【0067】
メンバプリンタドライバ設定情報部はメンバプリンタのドライバUIの設定情報として例えばDEVMODE情報を格納する部分である。
【0068】
このメンバプリンタドライバ名とメンバプリンタドライバ設定情報部は、前述のメンバプリンタ数に格納された数だけの格納エリアを持っている。
【0069】
前述の図6で説明したグループプリンタドライバ603では、汎用印刷ファイルを生成する際、グループプリンタドライバGUI上の設定を印刷指示部8−aへ記録する。さらに、グループプリンタドライバ603はGDIで受け取ったデータを汎用的なデータに変換しhキュメントデータとして、本汎用印刷ファイルのドキュメントデータ部に記録することとなる。
【0070】
次に図7でWindowSが提供するPrintSyStemと印刷ジョブ制御システムにおける印刷ジョブの関係と処理概要をさらに詳しく述べる。
【0071】
図7中で印刷ジョブ制御システム700は、サーバとクライアントの制御プログラムが動作する物理的なマシンをまたいだ、印刷ジョブ制御システムの範囲を示している。また、サーバが管理している出力ポート(Output Port)711は、クライアントのジョブ制御プリントサービス622のプロキシ出力ポート(Proxy Output Port)712と関連付けられ、ひとつのポートに関連づけられた各クライアント上のプロキシ出力ポート全てを統一的に管理している。本実施例では、実際のプリントジョブデータはおのおののクライアントのプロキシ出力ポート712に保持される。ジョブ制御サーバ630は、プリントジョブデータ自体の送信処理は行わず、ジョブ制御プリントサービス622に対して印刷ジョブの送信指示のみを行う。その指示に応じてクライアントのジョブ制御プリントサービス622はプリントジョブデータをデバイス650に送信する。
【0072】
次に、印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合の処理を説明する。
【0073】
印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合には、前述のようにユーザまたはアプリケーション601はグループプリンタドライバ603が割り当てられたプリンタに印刷ジョブを発行しなければならない。ジョブ制御プリントサービス622は、グループプリンタドライバ603によって処理されたジョブデータをジョブ制御ポートモニタ621を介して汎用印刷ファイルとして受け取る。ジョブ制御プリントサービス622はこのジョブを受け取り、DeSpooler701を介してPDLドライバが割り当てられた別のプリンタにジョブ(メンバジョブ)を発行して印刷を行わせる。この時、DeSpooler701は前述の図8で説明した汎用印刷ファイルの印刷指示部8−aを解釈し、ドキュメントデータ部8−bのドキュメントデータを加工して、WindowSのGDIに変換し、各プリンタドライバに対して印刷指示を行い印刷ジョブを発行する。例えば印刷体裁指定部に、2−UPの指示が記録されていた場合、用紙1枚に2ページ分のドキュメントデータを縮小レイアウトする。また分散印刷あるいは同報印刷の場合には、それらの設定に応じて印刷指示部8−aに記述されている複数のメンバプリンタにジョブを発行する。代行印刷の場合は、代行する条件が満たされた時に、自動代行では事前の設定、手動代行ではユーザの操作に応じてメンバジョブを発行する。
【0074】
また、DeSpooler701は各メンバプリンタにジョブを発行する際、メンバプリンタドライバに対応する印刷指示として、各メンバプリンタのDEVMODEを作成する必要があるが、このDEVMODEは印刷指示部8−aに記載された内容を適宜各メンバプリンタのDEVMODEに反映させて生成する。
【0075】
クライアント側のジョブ制御プリントサービス622は、PDLドライバ602によってレンダリングされた、それぞれのメンバジョブのPDLデータをジョブ制御ポートモニタ621を介して受け取り、受け取ったジョブに関する情報をサーバ側に知らせ、ジョブデータは自身のプロキシ出力キュー(Proxy Output Port)712で一時保持する。その後、ジョブ制御サーバ630からの送信指示を受けた後にプリントデバイス650に送信する。
【0076】
次に図9の説明を行う。図9は後述する図10、12等の印刷設定を行う為のグループプリンタドライバのインターフェースを構築する為のメンバプリンタドライバの登録処理に相当する。
【0077】
まずステップS901でセットアップを準備を行いセットアップを開始する。
【0078】
ステップS902でメンバープリンタに登録するプリンタドライバをマウス等のポインティングデバイスを介して選択し、インストール対象とする。
【0079】
次にステップS903で、前記選択したプリンタドライバをインストールし、メンバプリンタドライバとして登録設定を行う。
【0080】
次にステップS904でインストールされたプリンタドライバに対応したプリンタ情報を取得する。プリンタ情報(デバイス情報)としては、例えば、サポート用紙サイズがA3,A4,B5であるといった情報や、両面可能かどうか、ステイプル可能かどうか、その他、フィニシングの機能として、パンチ穴が可能か、Z折りが可能かなどを入力する。ここで、プリンタ情報の取得方法には、インストールされたプリンタドライバが、対応するプリンタデバイスに所定のネットワークを介して問い合わせ取得したプリンタ情報を本制御プログラムが取得するような形態や、キーボード等から入力された設定値をプリンタ情報として登録させるような処理の形態が想定される。
【0081】
次にステップS905で対象となるメンバプリンタドライバのインストールを完了させるか否か判断し、完了でなければ前記ステップS902に戻り、再び選択指示に応じて選択されたプリンタドライバをメンバプリンタドライバとして登録させる処理を繰り返す。一方、完了であればステップS906に進む。
【0082】
ステップS906では、ステップS904で取得されたデバイスの属性情報の設定値を、例えばシステムのレジストリなどにプリンタドライバの名称とともに記憶し保持する。また、図9のフローチャートの処理を経て、後述する図10、図12に示すようなユーザインターフェースが構築され、例えば、図10の1006に示されたデバイス情報は、前記ステップS906で保存した情報を該当するメンバプリンタごとに表示したものに相当する。
【0083】
次に、先に例に取り上げた図10を用いて本実施の形態のユーザインターフェイス(グループプリンタドライバUI)を具体的に示して説明する。
【0084】
図10において、1001は出力方法を選択し、指定する為のコンボボックスである。この1001のコンボボックスをマウス等のポインティングデバイスを介して指示すると、複数の出力方法のリストが表示され、該表示されたリストより所定の出力方法の指定が為される。
【0085】
1002は所定の種別のグループプリンドライバに対してメンバプリンタドライバの登録を行うためのUIを開くボタンである。ここで開かれるUIについては後述する。ここで、所定の種別としては、例えば、図10に示されるように割合分散のグループプリンタドライバ、或は、後述するカラー/白黒分散処理のグループプリンタドライバや、その他、自動代行、同報印刷に係るグループプリンタドライバなどが想定される。
【0086】
図10の1003はメンバプリンタを登録した後に、登録されたメンバプリンタドライバの一覧を表示するリストボックスである。
【0087】
このUIの例では、メンバプリンタドライバの名称とともにそのメンバプリンタに関する各種情報も表示している。また、この一覧表示の内容は1001のプルダウンメニューの中から指定した出力方法に従って、その表示内容も変更される。即ち複数種類の出力方法毎に夫々メンバープリンタドライバの構成を有している。これによって、ユーザは出力方法毎に適したメンバプリンタドライバを容易に呼び出すことができ、わざわざ出力方法を変更する度に新たなメンバプリンタドライバを登録する必要がなくなる。
【0088】
また、1007は例えば、図11のようなUIを介して登録したメンバプリンタドライバを出力対象のプリンタドライバとして、一時的に構成に含まれないようにしたり、或は、含まれないような状態からメンバプリンタドライバの構成に追加したりするチェックボックスである。このチェックボックスのチェックが有りの時は、そのメンバプリンタを対象プリンタドライバとみなし、チェックが無しの時にはそのメンバプリンタドライバを一時的に対象プリンタドライバから外す処理が施される。言い換えれば、1007の選択肢に含まれるメンバプリンタドライバが一次登録処理によって登録されたものに相当し、また、チェックボックスをチェックすることによりメンバプリンタドライバを実際の印刷処理の対象プリンタドライバとすることは二次登録処理に相当する。
【0089】
このようにメンバプリンタドライバの登録において、一次登録と二次登録の二段階の設定の仕組みが本発明により可能になり、例えば、通常の分散印刷では、印刷処理の対象としているような所定のメンバプリンタドライバに対して、一次的に該所定のメンバプリンタドライバを対象から外すことができたり、また逆に故障していた印刷装置が復帰したような場合には、チェックボックスの操作により再び実際の印刷処理の際に起動されるメンバプリンタドライバとすることができる。これは、出力方法毎に登録(一次登録)されたメンバプリンタの情報と、チェックボックスのチェックにより利用されるメンバプリンタドライバとされているか否かの情報とを、夫々別々に所定の記憶部に保持させる構成により実現される。
【0090】
更に、本発明においては、上に説明した一次登録、二次登録が、複数の出力方法毎に設定可能であり、割合分散印刷を始め、後述する同報印刷、カラー/白黒分散印刷、代行印刷の夫々に独立して一次登録、二次登録が処理されるようになっている。
【0091】
また、1006は各デバイスの属性情報の表示欄である。グループプリンタドライバに設定されている各メンバプリンタドライに対応するデバイスの属性情報を、メンバプリンタドライバの名称と共に、制御プログラムの表示制御に応じて表示されたものに相当する。
【0092】
次に、メンバプリンタドライバの登録/削除について、図11を参照しつつ説明する。
【0093】
図11は先に説明した図10における1002の「デバイスの追加/削除」ボタンの押下信号を本制御プログラムが認識した際に表示されるUIである。
【0094】
図11において、1101は選択可能なメンバプリンタドライバの一覧を表示するリストボックスである。選択可能なメンバプリンタドライバとは、本システムがハンドリング可能なポートを割り付けてインストールしてあるプリンタドライバであり、本制御プログラムが存在を認識することができるプリンタドライバとなる。
【0095】
1102は選択したメンバプリンタドライバの一覧を表示するリストボックスである。1103、1104、1105、1106の夫々のボタンにより、選択可能なメンバプリンタ一覧よりメンバプリンタに追加、削除を行うことが可能となっている。
【0096】
1103の押下信号を認識した際には、1101にて押下時に選択されているプリンタドライバをメンバプリンタドライバの一構成として追加する処理を行う。
【0097】
また、1104の押下信号を認識した際には、1101のリストに示される全てのプリンタドライバを対象として1102に表示されるメンバプリンタドライバを構成するものとするよう制御する。
【0098】
また、1105は、1103、1104とは逆でメンバプリンタドライバから外すためのボタンを示し、1103、1105の押下信号が認識されると1102のメンバプリンタドライバの構成から外されるよう、対象となるメンバプリンタドライバは制御される。
【0099】
図12は図10の1001の選択リストより自動代行印刷が選択され出力方法として設定された場合のUIの表示様子の例を示したものであり、登録されたメンバプリンタドライバの構成が出力方法の指定に応じて切り替え表示された様子を示している。
【0100】
自動代行印刷では、メンバプリンタドライバの夫々に優先順位が設けられており、設定された優先順位の1番高いメンバプリンタドライバによりまず優先的に印刷が行われ、現在印刷処理を行わせようとしているプリンタデバイスにトナー無し等のエラーが発生し印刷不可能になった場合、自動的に次の優先順位のメンバプリンタドライバに印刷処理をさせるように制御が行われる処理が行われる。
【0101】
この場合メンバプリンタドライバの構成としては、割合分散(分散印刷)の場合と同様、複数登録可能であり、本制御プログラムは夫々のメンバプリンタドライバに対して優先順位を設定する機能を有している。
【0102】
図12の1201、1202は、メンバプリンタドライバの優先順位を変更する為のボタンである。このUIの例ではメンバプリンタの優先順位は、メンバプリンタ一覧1203にリスティングされている順番と一致している。
【0103】
従って、1203のリストの一覧よりメンバプリンタドライバを選択し、1201のボタンにより、メンバプリンタリスト上の順番を1つ上げる(上のほうに移動表示)と共に、優先順位も上げることが可能である。
【0104】
また1202のボタンにより、メンバプリンタリスト上の順番を1つ下げる(下のほうに移動表示)するとともに、優先順位も下げることが可能である。
【0105】
また、先に説明したメンバプリンタドライバの登録(追加/削除)についても、図11に示されるものと同様なUIが表示されるような制御が行われ、メンバプリンタの登録削除処理が行われる。
【0106】
次に、上に説明してきたような複数のプリンタを対象とするような印刷システムにおける複数のプリンタの管理の仕組みについて以下説明することとする。
【0107】
図14は図6にて説明したプリントマネージャー623の制御処理を示すものであり、情報処理装置に設けられたCPU(中央演算処理装置)がROM、HD等の不揮発性記憶手段に記憶されたプログラムコードを読み込み実行することに応じて実現されるものとする。
【0108】
まず、ユーザからのマウス、キーボード等のポインティングデバイスを介した起動指示に応じて、タスクトレイ起動処理が実行される。
【0109】
そして、ステップS1401では、タスクトレイ起動処理に応じて、起動初期化処理が実行される。
【0110】
そして、ステップS1402では、デバイス・ジョブ監視サービスインターフェースの構築が実行される。ここでの、デバイス・ジョブ監視サービスインターフェースとは、図6のジョブ制御プリントサービス622とのインターフェースに相当し、ジョブ制御プリントサービスモジュールが管理するデバイスステータスやプリントキュー情報などをプリントマネージャーが取得するためのインターフェースに相当する。
【0111】
そして、ステップS1403では、監視対象プリンタの列挙処理が実行される。ここでの列挙処理とは、プリントマネージャー633がジョブ制御プリントサービス622から取得した単数或は複数のプリンタの管理情報を取得し把握する処理に相当し、ジョブ制御プリントサービス622から取得し管理する情報の管理様子としては例えば、図18、図19、図20、図21が挙げられる。
【0112】
ここで、プリントマネージャー623がジョブ制御プリントサービス622から取得するプリント情報にグループプリンタ(仮想プリンタ)とメンバプリンタ(実際に稼動するプリンタ)とが含まれる。
【0113】
そして、ステップS1404では、不明ジョブ探索・復帰モジュールのエラー/トラブル回復処理が実行される。例えば、強制終了時に残存していたジョブの再印刷処理などがこれに相当する。
【0114】
ステップS1405では、プリンタ情報変化に伴うイベント要求登録処理がプリントマネージャー623からジョブ制御プリントサービス622に対して登録される。実際には、ジョブ制御プリントサービス622がネットワーク上に通信可能にされた複数の画像形成デバイスの状態を管理しており、このジョブ制御プリントサービス622によって管理される画像形成デバイス状態の変化がプリントマネージャー623に対して通知される。ステップS1405はこのジョブ制御プリントサービス622にて管理される画像形成デバイスの状態変化の通知の依頼に相当するものであり、無論、プリントマネージャー623からジョブ制御サーバ630、或は、プリントデバイス650に直接イベント通知を依頼するような形態も想定される。
【0115】
そして、ステップS1406では、詳細モニタ表示要求が成されたか否かの判定が実行される。例えば、ステップS1401で生成された詳細モニタ起動ボタンに対するポインティングデバイスを介した起動指示がなされたか否かの判定処理がこのステップS1406に相当する。
【0116】
そして、ステップS1406でYesと判定されれば処理をステップS1408に移行し、Noと判定されれば処理をステップS1409に移行する。
【0117】
ステップS1408では詳細モニタUIモジュールによる処理が実行されるが、この詳細は後述する図15にて説明する。
【0118】
そして、ステップS1409、1410では、ジョブを実行中のデバイス及びジョブに関する監視処理が実行され、ステップS1411ではジョブ終了通知監視処理が実行される。
【0119】
そして、ステップS1412では起動されたプログラムの終了指示がなされたか否かの判定が行われ、Yesと判定されればプログラム処理を終了し、Noと判定されればステップS1407にて監視対象プリンタの更新チェック処理が実行され、ステップS1406の処理に戻る。ステップS1407の監視対象プリンタの更新チェック処理とは、例えば、図11のようなユーザインターフェースを介して行われたメンバプリンタの追加/削除を管理することに相当する。
【0120】
次に図15の説明を行う、図15は先の図14のフローチャートのステップS1408の詳細な処理に相当する。
【0121】
まず、ステップS1501では、起動初期化処理が実行される。これは後述する、例えば、図22に示されるような表示を実行する為に必要な各種初期化処理に相当する。
【0122】
次にステップS1502では、監視対象プリンタの列挙処理が実行される。ここでの列挙処理は、監視対象となる複数のプリンタ(グループプリンタ(仮想プリンタ)、メンバプリンタ(実プリンタ)の双方を含む)情報のジョブ制御プリントサービス622からの取得処理、及び、取得されたプリンタ情報に基づくプリンタリストの表示処理を含むものとする。例えば、図22の「プリンタ別表示」の枠内に示されるプリンタリストがステップS1502の処理に対応して表示されたものに相当する。また、該プリンタリストに仮想プリンタと実プリタンとを含むことに特徴を有する。また、図23、24の「プリンタ別表示」のプリンタリストもこれに相当する。また、リスト中の仮想プリンタ及び実プリンタには、夫々のプリンタ(仮想プリンタ/実プリンタ)の状態を示す状態アイコンが付されている。ここで、プリンタ(仮想プリンタ/実プリンタ)の状態が変更されることに応じて、状態アイコンも変化されるよう制御が行われる。例えば、仮想プリンタに対応するメンバプリンタの状態を「or」処理することによって仮想プリンタの状態を決定し、該決定された状態に対応したアイコンを決定することができる。複数のメンバプリンタのうち1つでも状態が「スプーラ停止」ならば、該複数のメンバプリンタに対応する仮想プリンタの状態及び該状態に対応するアイコンを「スプーラ停止」停止にしたり、複数のメンバプリンタのうち1つでも状態が「エラー」ならば、対応する仮想プリンタの状態及び該状態に対応する状態アイコンも「エラー」とするような制御が想定される。
【0123】
そして、ステップS1503では、起動時表示メニュー指定表示処理が実行される。これは、プログラム起動時にメニュー項目に割り当てられるメニューの表示を変更指定可能な形態で表示させる処理に相当する。
【0124】
そして、ステップS1504では、モード選択指示が成されたか否かの判定が実行され、”マイメニュー”に対応する指示が成されたと判定された場合には、処理をステップS1505に移行させ、”プリンタ一覧メニュー”に対応する指示がなされたと判定された場合には処理をステップS1506に移行させる。尚ここでのモード選択指示とは所定のメニューを選択指示する処理を指すものとする。
【0125】
ステップS1506では、ステップS1502の処理に伴に列挙された複数のプリンタから、どのプリンタが選択指示されたか否かを判定すると共に、選択されたプリンタを認識する処理を実行する。
【0126】
そして、ステップS1507では、さらに現在どの種別のモード選択がなされているか否かの判定が行われ、そのモードの種別に応じて、ステップS1506にて現在選択されていると認識されているプリンタに係る情報の表示の形態を異なるように制御する。尚、ここでのモード選択とは、例えば、図22中の「モード(D):」の選択欄を介して指示されたモード指示を指すものとする。
【0127】
ステップS1507で、モードとして”プリンタ情報”が選択されていると判定されれば、処理をステップS1508に移行させ、”ジョブリスト”が選択されていると判定されれば、処理をステップS1509に移行させ、”出力設定”が選択されていると判定されれば、処理をステップS1510に移行させる。ステップS1510においては、ステップS1506において選択されたプリンタの設定情報(用紙サイズ、デフォルト解像度等)を表示させる。尚、ステップS1509に対応した詳細な説明は後述の図16にて行うこととする。
【0128】
このように、図15のフローチャートの処理が実行されることにより、ステップS1502で列挙された単数或は複数の監視対象プリンタの中から選択された所定のプリンタ(仮想プリンタ/実プリンタを含む)に対して、プリンタ情報やジョブリストや出力設定などモード選択に応じた各種情報を切換え表示させることが可能となる。
【0129】
さらには、ステップS1506ではグループプリンタ(仮想プリンタ)と実プリンタ(メンバプリンタ)とを混在させリスティングさせているにも係らず、ユーザはその中から仮想プリンタ/実プリンタの何れかを意識することなく同様の要領で選択でき、該選択指示に応じて最適なプリンタ情報やジョブリスト情報や出力設定情報を知ることができるようになる。
【0130】
続いて図16の説明をする。図16は、上に説明した図15のステップS1509の詳細な説明に対応したフローチャートに相当する。
【0131】
まず、ステップS1601では、選択プリンタの状態イベント登録が実行される。これは、図15のステップS1506で選択されたプリンタに係る状態の変化をイベントとして要求する処理に相当する。実際には、図6のプリントマネージャー623がジョブ制御プリントサービス622にイベントの通知を依頼する形態が想定される。尚、ステップS1601における選択プリンタとは仮想プリンタ或は実プリンタの双方を想定することができる。
【0132】
そして、ステップS1602ではステップS1601にて認識されたプリンタの種別がグループプリンタ(仮想プリンタ)/メンバプリンタ(実プリンタ)なのか、或は、インクジェットプリンタ/レーザービームプリンタ/ネットワーク対応デジタル複合機なのかに応じて、異なる情報取得処理を行う為の初期化処理を実行する。
【0133】
そして、ステップS1603、S1604ではステップ1506で選択されたプリンタに対応するキュー情報、ポート情報のジョブ制御プリントサービス622から取得する処理を実行する。
【0134】
更に詳しくは、1602、1603で選択指示されたプリンタが仮想プリンタ(グループプリンタ)である場合には、それに対応したキュー及びポート情報の取得が実行される。また、選択指示されたプリンタがメンバプリンタ(実プリンタ)であった場合には、メンバプリンタに対応したキュー及びポート情報が取得される。キュー及びポートの特定に関しては、プリンタの指示に対応したプリンタを特定する為の情報(プリンタ名/プリンタID等)を基に図18のような管理情報が参照され、該管理情報に含まれるキューを参照する為の情報及びポートを参照する為の情報が特定される。
【0135】
また、ジョブ制御プリントサービス622では、グループプリンタ(仮想プリンタ)、メンバププリンタ(実プリンタ)の夫々に対応して仮想プリンタ用のキュー(図7中のlogical Queueに相当)、メンバプリンタキュー(図7中の各Printer Queueに相当)、仮想プリンタ論理ポート(図7中のLogical Portに相当)、メンバプリンタ論理ポート(図7中の各Output Portに相当)を管理しており、指定されたプリンタに応じて管理する情報をプリントマネージャー623に通知するような処理が実行される。
【0136】
また、キュー情報としては、印刷出力すべく現在登録されている印刷ドキュメント名/ドキュメントサイズ/部数などのジョブの属性や、スプール中/印刷中などのジョブの状態等が、また、ポート情報としては通信機能が正常な状態であるか否かの情報等が例として挙げられる。
【0137】
ステップS1605では、選択指示されたプリンタに対応するプリンタキューに対して状態に変化があったような場合にはイベントをするようイベント通知の登録を行う。
【0138】
そして、ステップS1606では、ステップS1601〜1605までの処理の対象となっている選択されたプリンタがグループプリンタ(仮想プリンタ)なのかメンバプリンタ(実プリンタ)なのかの判定が行われる。
【0139】
仮想プリンタと判定されれば、処理をステップS1607に移行させ、そうでないならば処理をステップS1618に移行させる。
【0140】
ステップS1607では、仮想プリンタの種別が判別される。すなわち、仮想プリンタの出力方法が割合分散印刷なのかカラー/白黒分散印刷なのか自動代行印刷なのか同報印刷なのかの判別が図18に示すような管理情報を参照することによって実行される。
【0141】
そして、ステップS1608においては、仮想プリンタキュー内に管理される中間ファイルの抽出(列挙)が行われる。この際には、発行された仮想ジョブに関連する中間ファイル(オリジナルジョブ或は親ジョブとも呼ぶこともある)の一覧が表示される。
【0142】
そして、ステップS1609では中間ファイル付属情報処理が実行される。ここで、付属情報としては、例えば、印刷日時等が該当する。
【0143】
そして、ステップS1610では、中間ファイルに対応した状態変化のイベント通知の登録がプリントマネージャー623からジョブ制御プリントマネージャー622(印刷制御用プログラム)に対して行われる。
【0144】
そして、ステップS1611では、ステップS1608で列挙された中から所定の中間ファイル(分散/代行/同報前の基となる親のジョブ(中間ファイル))の選択指示が成されたか否かの判定が行われ、選択されたと判断がなされれば、ステップS1612でジョブ選択時処理が実行され、さらにステップS1613では中間ファイル付属派生ジョブの列挙が行われる。
【0145】
この中間ファイルからの派生ジョブの特定は、ステップS1611で選択指示されたものに対応する中間ファイル名2001或は中間ファイルIDを、図20に示すような管理情報に照らし合わせることにより対応する中間ファイル付属情報2004から派生ジョブの特定が行われる。即ち、中間ファイル付属情報2004に所定の中間ファイルに対応した派生ジョブを特定する為の情報が含まれている。また、該派生ジョブに関するジョブ状態や出力先プリンタ情報なども図20の2007の情報から特定することができる。また、2004より特定された派生ジョブIDに基づいて特定される図21のような派生ジョブ管理情報を参照することにより、派生ジョブの各種情報を認識し表示させることも可能な構成をとっている。
【0146】
このように仮想ジョブ(対応する所定のオリジナルジョブ)に対応した派生ジョブが抽出(列挙)され、図22の2203に示されるように派生ジョブのリストが出力先プリンタ/状態情報と共に表示(S1614)される。また、ジョブ追跡の場合は実プリンタはジョブ付属の「出力先プリンタ」名にて表示確認できる。
【0147】
続くステップS1615では派生ジョブについて状態変化に伴うイベント要求の登録処理が行われる。
【0148】
ステップS1616では、ステップS1614で列挙され表示された派生ジョブから所定の派生ジョブが選択されたか否かの判定が行われ、Yesと判断されれば、処理をステップS1617に移行させる。
【0149】
一方、ステップS1606にて、仮想プリンタでないメンバプリンタ(実プリンタ)が選択されたと判断されれば、ステップS1618では、選択されたプリンタに対応するプリンタキューの存在するジョブ情報(ジョブ名)を取得し、イベント登録を実行する(S1619)と共に、列挙された各ジョブの付属情報を取得し(S1620)、ステップS1621にて取得されたジョブ名にジョブ付属情報を対応させて表示する(S1621、S1622)。そして、ステップS1623においては、ジョブ選択時制御処理を実行する。
【0150】
このように、仮想プリンタが選択指示されたか実プリンタが選択指示されたかを判別する(S1606)ことができ、更には、仮想プリンタが選択されたと判別された場合には仮想プリンタに対応するジョブ情報を表示させ、実プリンタが選択指示されたと判定された場合には実プリンタに対応するジョブ情報を表示させる管理が実現される。また、仮想プリンタに対応する情報としては、図22に示すようなオリジナルとなるジョブ(中間ファイル)の情報(図22の2202)と該オリジナルジョブから派生した派生ジョブの双方が表示されるので、ユーザは仮想ジョブ全体として進行状況はどのようなものであるかという事と、仮想ジョブに対応した派生ジョブの夫々がどのような状態なのかを容易に知ることができる。
【0151】
次に図17の処理についての説明を行う、図17は、上に各イベント登録に対応するイベントの監視処理に相当し、図6のプリントマネージャー623によって実行され、情報処理装置に設けられたCPU(中央演算処理装置)がROM、HD等の不揮発性記憶手段に記憶されたプログラムコードを読み込み実行することに応じて実現されるものとする。
【0152】
まずステップS1702ではステップS1701で管理されるプリンタキューに係るイベントが状態更新イベントか否かの判断が行われる。Yesと判断されれば、イベント対象ジョブの状態更新処理が実行され、それに応じて対応する表示も更新される。
【0153】
一方、ステップS1702でNoと判断されれば、ステップS1705にてイベントが完了通知か否か判定される。Noと判断されれば、処理をステップS1701に戻し、Yesと判断されれば、処理をステップS1706に移行する。
【0154】
ステップS1706ではステップS1705の完了通知イベントが中間ファイルに関するものか否かの判定が行われ、Yesと判断されれば処理をステップS1708へ移行させる。一方Noと判断されれば、派生ジョブに対応した完了通知か否かの判断がなされ、ステップS170Yesと判断されれば、処理をステップS1701に移行させる。Noと判断されれば、処理をステップS1708へ移行させる。
【0155】
そして、ステップS1708では、ジョブ完種別の情報取得が行われ、ステップS1709ではジョブ完了付属情報の取得が行われ、ステップS1710ではジョブ完了状態の通知表示処理が行われる。ここではアイコン通知、ダイアログ通知などが想定される。
【0156】
このように図17のフローチャートが実現されることにより、図22、24に示されるような各メンバプリンタに対応するジョブ情報が随時更新されることになり、更には、各メンバプリンタで実行されるジョブの情報に基づくオリジナルジョブ(親ジョブ)の最新の情報を表示させることが可能となる。
【0157】
ここで、図22、24についての説明をすることとする。
【0158】
図22は分散印刷システムに係る仮想分散印刷プリンタ(図中「分散くん」に相当)と該仮想分散プリンタを構築するメンバプリンタ(プリンタA、B、Cに相当)のリストが「プリンタ別表示」の欄に示されている。図22中では「分散くん」が選択されている表示様子を示している。
【0159】
ジョブ制御プリントサービス622は、2203に示される派生ジョブ(図中では「子ジョブ」に相当)の各ステータスを「or処理」した情報を2202のオリジナルジョブのジョブ状態として生成する機能を備えており、この2202が分散印刷仮想ジョブ全体の代表ステータスとして表示される。
【0160】
例えば、派生ジョブの全てが印刷終了すれば、2202の状態は「終了」と決定され、また、派生ジョブに1つでも「エラー」が認識されれば、2202の状態は「エラー」とされる。また、図22に示されるように派生ジョブの状態が「印刷待ち」と「印刷中」とからなる場合には2202の代表ステータスは「印刷中」とされる。このようにユーザは代表ステータスを知ることにより、容易に分散印刷システムのステータス(状態)を知ることが可能となる。この代表ステータス(状態)の生成ついては、一般的に知られている同報印刷、代行印刷、カラーモノクロ分散印刷などにおける派生ジョブに関しても同様に処理される。尚、実際には2202のオリジナルジョブは分散印刷を実行するにあたってのオリジナル中間ファイル(図6にて説明した汎用印刷ファイルに相当)に相当する。
【0161】
また、図22中のオリジナルジョブの表示欄には2202の1つオリジナル中間ファイルに対応するリストのみが表示されているが、複数の仮想ジョブを発行したような場合には複数のオリジナルジョブ表示欄に表示される。また、その中から、中間ファイルの選択指示が切り替わると該選択指示された中間ファイルに対応する派生ジョブのリストも切り替わり変更される(図16のステップS1611〜S1614に対応)。これにより、ユーザは夫々の仮想ジョブに対応した派生ジョブのジョブ状態を容易に知ることができる。
【0162】
また、図22、23、24のような表示において、本制御プログラムはフィルタ機能を有しており、ジョブに付属されるオナー名や、マシン名に基づいて自分のジョブのみを表示させるような機能も有している。
【0163】
図23は、図22に対して実プリンタが選択された場合の表示例を示しており、図22の「分散くん」の選択指示から「プリンタA」への選択指示に切り換えた際の表示の切換え様子を示している。
【0164】
また、図22〜24を通して、ジョブの各種状態に対応する状態アイコンがドキュメント名の左側に表示されており、特にオリジナルジョブに対して状態アイコンを表示させているので、ユーザに分散印刷ジョブや同報印刷ジョブなどの代表ステータスをより理解しやすく知らしめることができる。状態アイコンの一例を図13及び図25に示す。
【0165】
以上説明してきたように、本発明によれば、複数のプリンタに部数/頁を振り分けて印刷を行わせるような、例えば分散印刷や同報印刷等の印刷方法に対して、適切なジョブ情報を提供するような仕組みが実現されるようになった。例えば、分散印刷を実行させたような場合の分散印刷に利用されたプリンタの情報を夫々監視する必要はなく、まとめて分散先の各派生ジョブを効率良く監視することができるようになった。
【0166】
また、他の人のジョブと混在した形でジョブ情報のユーザインターフェースが提供されない為に、どのジョブが自分の監視したジョブかを容易には確認することができるようになった。
【0167】
さらに、分散印刷や同報印刷等の複数種類の複数プリンタを利用したジョブを想定した場合に、従来の技術によれば、夫々のプリンタキューの情報を閲覧したとしても、それが分散印刷に対応したジョブ情報なのか、或は、同報印刷に対応したジョブ情報なのかをユーザは区別することができなかったが、本願発明によれば、仮想プリンタの種別に応じたメンバプリンタのジョブ情報を容易に得ることが可能となった。
【0168】
(その他の実施例)
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【0169】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0170】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0171】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0172】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0173】
【発明の効果】
以上説明してきたように、本発明によれば、複数のプリンタを利用するようなジョブ形態に対応して、ジョブ情報を解り易くユーザに知らしめることができるジョブ管理の仕組みを提供することができるようになった。
【図面の簡単な説明】
【図1】本発明を適用可能な情報処理システムの構成を説明するブロック図。
【図2】本発明の情報処理装置の構成を説明するブロック図。
【図3】図2に示したRAM202のメモリマップの一例。
【図4】図2に示したFD204のメモリマップの一例。
【図5】図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図。
【図6】本発明の情報処理装置のプリント制御モジュール構成を説明するブロック図。
【図7】プリントサーバで管理されるジョブ情報のデータ構造の一例。
【図8】汎用印刷ファイルの構造を示す図。
【図9】本印刷用制御プログラムをセットアップする際の、メンバプリンタドライバの登録及びプリンタ属性情報の設定を示すフローチャート。
【図10】出力方法に割合分散印刷が指定された際のUIの表示様子例。
【図11】指定された所定種別の仮想プリンタに対応したメンバプリンタドライバの追加/削除(登録)機能を有するUIの表示様子例。
【図12】出力方法に自動代行が指定された際のUIの表示様子例。
【図13】ジョブの状態を表わすジョブ状態アイコンの一例。
【図14】印刷制御用プログラムのデバイス監視に基づいたプリントマネージャのステータス管理制御のフローチャート。
【図15】詳細モニタの制御フローチャート。
【図16】仮想プリンタ(グループプリンタ)選択、或は、実プリンタ(メンバプリンタ)選択時のプリンタマネージャー制御プログラムによるフローチャート。
【図17】イベント通知監視によるプリンタ情報更新フローチャート。
【図18】仮想プリンタ(グループプリンタ)におけるメンバプリンタの管理様子を示す図。
【図19】実プリンタ(メンバプリンタ)における各種情報の管理様子を示す図。
【図20】仮想プリンタ中ジョブ状態データ(中間ファイル)。
【図21】実プリンタ中ジョブデータ(PDL・派生ジョブ)。
【図22】仮想プリンタ(分散印刷)が選択された場合のジョブリスト表示様子例。
【図23】メンバプリンタ(実プリンタ)が選択された場合のジョブリスト表示様子例。
【図24】仮想プリンタ(代行印刷)が選択された場合のジョブリスト表示様子例。
【図25】ジョブの状態を表わすジョブ状態アイコンの一例。
【符号の説明】
101 サーバ
102 クライアント
103 クライアント
104 クライアント
105 ネットワークプリンタ
Claims (16)
- 複数のプリンタと前記複数のプリンタの何れかをメンバプリンタとして関連付けた仮想プリンタに係るジョブの状態を管理するジョブ管理方法において、
前記仮想プリンタ及び前記複数のプリンタのプリンタ情報を取得するプリンタ情報取得ステップと、
前記取得されたプリンタ情報に基づき前記仮想プリンタ及び複数のプリンタを一覧で表示枠に表示させる表示制御ステップと、
前記表示制御ステップにより表示された一覧の中から、前記仮想プリンタが選択指示されたか、前記複数のプリンタの何れかが選択指示されたか、を判別する判別ステップと、
前記判別ステップによって仮想プリンタが選択指示されたと判別された場合には、選択指示された仮想プリンタに関連付けられたメンバプリンタのジョブ情報に基づく仮想プリンタのジョブ情報を表示させ、前記何れかのプリンタが選択指示されたと判別された場合には、前記何れかのプリンタに対応するジョブ情報を表示させるジョブ情報管理ステップとを有することを特徴とするジョブ管理方法。 - 前記プリンタ情報取得ステップで取得されたプリンタ情報に基づき、仮想プリンタに関連付けられているメンバプリンタの状態に基づく前記仮想プリンタの状態を決定する決定ステップと、
前記表示制御ステップは、前記決定ステップにより決定された仮想プリンタの状態を反映させて前記仮想プリンタを前記一覧に含め表示させることを特徴とする請求項1に記載のジョブ管理方法。 - 前記表示制御ステップは、前記決定ステップにより決定された仮想プリンタの状態を反映させたアイコンを表示させることを特徴とする請求項1又は2に記載のジョブ管理方法。
- 前記表示枠から選択された仮想プリンタの種別を識別可能に表示させることを特徴とする請求項1乃至3の何れかに記載のジョブ管理方法。
- 仮想プリンタに関連した単数或は複数のメンバプリンタのジョブ情報より前記仮想プリンタのジョブ情報を生成する生成ステップを備え、前記ジョブ情報管理ステップは前記生成ステップにて生成された仮想プリンタのジョブ情報を表示させることを特徴とする請求項1乃至4の何れかに記載のジョブ管理方法。
- 前記仮想プリンタの種別には、分散印刷用仮想プリンタ、及び、代行印刷用仮想プリンタ、及び、同報印刷用仮想プリンタの何れかが含まれていることを特徴とする請求項4又は5に記載のジョブ管理方法。
- 前記仮想プリンタに対してメンバプリンタを追加及び削除する登録ステップを有することを特徴とする請求項1乃至6の何れかに記載のジョブ管理方法。
- 複数のプリンタと前記複数のプリンタの何れかをメンバプリンタとして関連付けた仮想プリンタに係るジョブの状態を管理する情報処理装置であって、
前記仮想プリンタ及び前記複数のプリンタのプリンタ情報を取得するプリンタ情報取得手段と、
前記取得されたプリンタ情報に基づき前記仮想プリンタ及び複数のプリンタを一覧で表示枠に表示させる表示制御手段と、
前記表示制御手段により表示された一覧の中から、前記仮想プリンタが選択指示されたか、前記メンバプリンタが選択指示されたか、を判別する判別手段と、
前記判別手段によって仮想プリンタが選択指示されたと判別された場合には、選択指示された仮想プリンタに関連付けられたメンバプリンタのジョブ情報に基づく仮想プリンタのジョブ情報を表示させ、メンバプリンタが選択指示されたと判別された場合には、前記メンバプリンタに対応するジョブ情報を表示させるジョブ情報管理手段とを有することを特徴とする情報処理装置。 - 前記プリンタ情報取得手段で取得されたプリンタ情報に基づき、仮想プリンタに関連付けられているメンバプリンタの状態に基づく前記仮想プリンタの状態を決定する決定手段と、
前記表示制御手段は、前記決定手段により決定された仮想プリンタの状態を反映させて前記仮想プリンタを前記一覧に含め表示させることを特徴とする請求項8に記載の情報処理装置。 - 前記表示制御手段は、前記決定手段により決定された仮想プリンタの状態を反映させたアイコンを表示させることを特徴とする請求項8又は9に記載の情報処理装置。
- 前記表示枠から選択された仮想プリンタの種別を識別可能に表示させることを特徴とする請求項8乃至10の何れかに記載の情報処理装置。
- 仮想プリンタに関連した単数或は複数のメンバプリンタのジョブ情報より前記仮想プリンタのジョブ情報を生成する生成手段を備え、前記ジョブ情報管理手段は前記生成手段にて生成された仮想プリンタのジョブ情報を表示させることを特徴とする請求項8乃至11の何れかに記載の情報処理装置。
- 前記仮想プリンタの種別には、分散印刷用仮想プリンタ、及び、代行印刷用仮想プリンタ、及び、同報印刷用仮想プリンタの何れかが含まれていることを特徴とする請求項11又は12に記載の情報処理装置。
- 前記仮想プリンタに対してメンバプリンタを追加及び削除する登録手段を有することを特徴とする請求項8乃至13の何れかに記載の情報処理装置。
- 請求項1乃至7の何れかに記載のジョブ管理方法をコンピュータに実行させる為のプログラム。
- 請求項1乃至7の何れかに記載のジョブ管理方法をコンピュータに実行させる為のプログラムをコンピュータ可読の形態で記憶した記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001368744A JP3884949B2 (ja) | 2001-12-03 | 2001-12-03 | ジョブ管理方法及び情報処理装置及びプログラム並びに記憶媒体 |
US10/303,835 US7312886B2 (en) | 2001-12-03 | 2002-11-26 | Printer control method, information processing apparatus, program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001368744A JP3884949B2 (ja) | 2001-12-03 | 2001-12-03 | ジョブ管理方法及び情報処理装置及びプログラム並びに記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003167712A JP2003167712A (ja) | 2003-06-13 |
JP3884949B2 true JP3884949B2 (ja) | 2007-02-21 |
Family
ID=19178290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001368744A Expired - Fee Related JP3884949B2 (ja) | 2001-12-03 | 2001-12-03 | ジョブ管理方法及び情報処理装置及びプログラム並びに記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3884949B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3793197B2 (ja) | 2003-12-03 | 2006-07-05 | キヤノン株式会社 | 情報処理装置、情報処理方法、情報処理プログラム並びに記憶媒体 |
JP7204497B2 (ja) * | 2019-01-18 | 2023-01-16 | キヤノン株式会社 | クラウドプリントサービスに対応した印刷装置および印刷装置の制御方法およびプログラム |
-
2001
- 2001-12-03 JP JP2001368744A patent/JP3884949B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003167712A (ja) | 2003-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7312886B2 (en) | Printer control method, information processing apparatus, program, and storage medium | |
JP3639772B2 (ja) | 情報処理装置および印刷システムおよび印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
JP4420421B2 (ja) | 情報処理装置およびその制御方法 | |
JP3833127B2 (ja) | 代行印刷処理装置、代行印刷処理方法、プログラム、および記憶媒体 | |
EP1501008B1 (en) | Imformation processing apparatus, information processing method, program, and computer-readable storage medium | |
US8169629B2 (en) | Print control with interfaces provided in correspondence with printing methods | |
JP3639821B2 (ja) | 印刷制御方法及び印刷制御装置及び情報処理装置が実行可能な印刷制御プログラム並びにコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
JP4125044B2 (ja) | 情報処理装置、情報処理装置の制御方法、プログラム、及び記憶媒体 | |
JP2003091389A (ja) | 印刷制御方法及び装置 | |
US8605316B2 (en) | Information processing apparatus and control method thereof, and storage medium | |
JP2020017216A (ja) | 画像形成装置、システム、それらの制御方法、及プログラム | |
JP2003316545A (ja) | 情報処理装置及び方法 | |
JP2006301860A (ja) | 情報処理装置 | |
JP3880575B2 (ja) | 印刷設定方法及びコンピュータ | |
JP2004240589A (ja) | 印刷システム及びその制御方法並びに情報処理装置及び方法 | |
JP4078292B2 (ja) | 情報処理装置、情報処理方法およびプログラム並びにコンピュータ読み取り可能な記憶媒体 | |
JP3884949B2 (ja) | ジョブ管理方法及び情報処理装置及びプログラム並びに記憶媒体 | |
JP3706823B2 (ja) | 印刷制御方法及び印刷制御装置及びコンピュータが実行可能な印刷データ処理を行う印刷制御プログラム並びにコンピュータが読み出し可能な記憶媒体 | |
JP4401640B2 (ja) | プリンタ管理方法、情報処理装置、プログラム及び記憶媒体 | |
JP2006202332A (ja) | 代行印刷処理装置、代行印刷処理方法、プログラム、および記憶媒体 | |
JP3740448B2 (ja) | 制御装置、制御方法、プログラム及び記憶媒体 | |
JP3919780B2 (ja) | 情報処理装置および印刷制御方法およびコンピュータ読み出し可能な記憶媒体 | |
JP2006171991A (ja) | 代行及び分散印刷システム | |
JP2020019153A (ja) | 印刷システム、印刷装置及びその制御方法、並びにプログラム | |
JP3833090B2 (ja) | 制御方法、制御装置、プログラム及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20031210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060410 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061120 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3884949 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101124 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101124 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111124 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121124 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131124 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |