JP3884949B2 - Job management method, information processing apparatus, program, and storage medium - Google Patents

Job management method, information processing apparatus, program, and storage medium Download PDF

Info

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
Application number
JP2001368744A
Other languages
Japanese (ja)
Other versions
JP2003167712A (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 JP2001368744A priority Critical patent/JP3884949B2/en
Priority to US10/303,835 priority patent/US7312886B2/en
Publication of JP2003167712A publication Critical patent/JP2003167712A/en
Application granted granted Critical
Publication of JP3884949B2 publication Critical patent/JP3884949B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、印刷ジョブに係るステータス等の各種情報を管理するジョブ管理方法、情報処理装置、プログラム及び記憶媒体に関するものである。
【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 ネットワークプリンタ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a job management method, an information processing apparatus, a program, and a storage medium for managing various types of information such as a status relating to a print job.
[0002]
[Prior art]
In recent years, network devices are generally used, and many personal computers (hereinafter referred to as PCs) and printers are connected to the network. In such a network environment, for example, a technique for remotely monitoring job information in a queue assigned to a printer server by using a job status monitor of Windows (registered trademark) is known.
[0003]
[Problems to be solved by the invention]
However, a conventional job monitor has a mechanism for providing appropriate job information for a printing method such as distributed printing or broadcast printing in which a plurality of printers perform printing by distributing the number of copies / pages. For example, when distributed printing is executed, the job monitoring monitor corresponding to the printer used for distributed printing is only monitored.
[0004]
In addition, since a user interface for job information is provided in a mixed form with other people's jobs, it has not been possible to easily determine which job is to be monitored.
[0005]
Furthermore, when assuming jobs that use multiple types of multiple printers such as distributed printing and broadcast printing, according to the conventional technology, even if the information of each printer queue is viewed, it is used for distributed printing. Therefore, it is not possible to efficiently recognize whether the job information corresponds to the received printer or the job information corresponding to the broadcast printing.
[0006]
The present invention has been made in view of the above-described problems, and provides a job management mechanism that makes it easy to understand the job information in correspondence with job forms that use a plurality of printers. There is.
[0007]
[Means for Solving the Problems]
In order to achieve the above object, the present invention provides a job management method for managing a job status relating to a virtual printer in which a plurality of printers and one of the plurality of printers are associated as member printers. A printer information acquisition step of acquiring printer information of the printer, a display control step of displaying the virtual printer and a plurality of printers in a display frame based on the acquired printer information, and a display control step A determination step of determining whether the virtual printer is selected or instructed to select one of the plurality of printers from the list; and when it is determined that the virtual printer is selected and specified by the determination step Of the member printer associated with the selected virtual printer A job information management step of displaying job information of a virtual printer based on the job information and displaying job information corresponding to any of the printers when it is determined that the selection of any of the printers has been instructed. It is characterized by having.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment suitable for applying the present invention will be described.
[0015]
FIG. 1 is a block diagram illustrating a configuration of an information processing system to which the present invention can be applied. It is assumed that one or more client computers are connected in this system.
[0016]
In FIG. 1, reference numerals 102, 103, and 104 denote information processing apparatuses as client computers (clients), which are connected to a network 106 by a network cable such as Ethernet (registered trademark) and can execute various programs such as application programs. And a printer driver having a function of converting print data into a printer language corresponding to the printer. Note that the printer driver supports a plurality of printer drivers. Of course, it is assumed that the printer can be applied to various types of printers such as a laser beam printer using a minimum electrophotographic system, an inkjet printer using an inkjet system, and a printer using a thermal transfer system. .
[0017]
Reference numeral 101 denotes an information processing apparatus as a server (hereinafter referred to as a print server) according to the present embodiment. The information processing apparatus 101 is connected to the network 106 via a network cable and stores files used in the network, Or monitor. The print server 101 manages a plurality of printers connected to the network 106.
[0018]
As the configuration, the clients 102 to 104 and the print server 101 are general information processing apparatuses, and the client and the print server each store a print control program for performing different controls.
[0019]
The print server 101 is a general information processing apparatus and can simultaneously have the functions of the clients 102 to 104.
[0020]
The print server 101 in the present embodiment further stores and prints a print job including print data for which a print request has been issued from the client computers 102, 103, 104, or print data from the client computers 102, 103, 104. Only the job information that does not contain data, manages the print order of the client computers 102, 103, and 104, notifies the client in the print order of permission to send a print job including print data, and the status of the network printer 105 And a function for acquiring various types of print job information and notifying the client computers 102, 103, and 104.
[0021]
Reference numeral 105 denotes a network printer as a print control apparatus, which is connected to the network 106 via a network interface (not shown), analyzes a print job including print data transmitted from a client computer, and converts it into a dot image page by page. Convert and print page by page. A network 106 is connected to the client computers 102, 103, 104, the server 101, the network printer 105, and the like.
[0022]
FIG. 2 is a block diagram illustrating the configuration of the information processing apparatus according to the present embodiment. The client computers 102, 103, and 104 that are information processing apparatuses have the same configuration, and the server 101 has the same or equivalent hardware. The configuration. Therefore, it demonstrates as a block diagram explaining the structure of a client and a server.
[0023]
In FIG. 2, reference numeral 200 denotes a CPU that is a control unit of the information processing apparatus, which executes an application program, a printer driver program, an OS, a network printer control program of the present invention, and the like stored in a hard disk (HD) 205. Control to temporarily store information, files, etc. necessary for program execution.
[0024]
Reference numeral 201 denotes a ROM which is a storage unit, and stores therein various data such as a program such as a basic I / O program, font data used in document processing, and template data. Reference numeral 202 denotes a RAM which is temporary storage means, and functions as a main memory, work area, and the like of the CPU 200.
[0025]
Reference numeral 203 denotes a floppy (registered trademark) disk (FD) drive as a storage medium reading means. As shown in FIG. 5 to be described later, a program stored in the FD 204 as a storage medium is loaded into the computer system through the FD drive 203. can do. Note that the storage medium is not limited to the FD, and may be any CD-ROM, CD-R, CD-RW, PC card, DVD, IC memory card, MO, memory stick, and the like.
[0026]
Reference numeral 204 denotes a floppy disk (FD) as a storage medium, which is a storage medium storing a computer-readable program.
[0027]
Reference numeral 205 denotes one of external storage means, which is a hard disk (HD) that functions as a large-capacity memory, and stores an application program, a printer driver program, an OS, a network printer control program, related programs, and the like. Further, a spooler which is a spool means is secured here. The spool means is a client spooler in the client, and a server spooler in the print server. In the print server, job information received from the client is stored, and a table for controlling the order is also generated and stored in the external storage means.
[0028]
Reference numeral 206 denotes a keyboard which is an instruction input unit. The user instructs the client computer and the operator or administrator inputs an instruction of a device control command to the print server.
[0029]
A display 207 is a display unit that displays commands input from the keyboard 206, the status of the printer, and the like.
[0030]
A system bus 208 controls the flow of data in a computer that is a client or a print server.
[0031]
Reference numeral 209 denotes an interface which is an input / output unit, and the information processing apparatus exchanges data with an external apparatus via the interface 209.
[0032]
FIG. 3 is a diagram showing an example of the memory map of the RAM 202 shown in FIG. 2, and is a memory map in a state where the network printer control program loaded from the FD 204 is loaded into the RAM 202 and can be executed.
[0033]
In this embodiment, an example is shown in which the network printer control program and related data are loaded directly from the FD 204 into the RAM 202 and executed. However, every time the network printer control program is operated from the FD 204, the network printer control program is already executed. May be loaded into the RAM 202 from the HD 205 in which is installed.
[0034]
The medium for storing the network printer control program may be a CD-ROM, CD-R, PC card, DVD, or IC memory card in addition to the FD. Furthermore, it is possible to store the network printer control program in the ROM 201, configure it as a part of the memory map, and execute it directly by the CPU 200.
[0035]
In addition, software that realizes the same function as each of the above devices can be used as an alternative to a hardware device.
[0036]
The network printer control program may be simply referred to as a print control program. The print control program includes a program for instructing the client to change the print destination of the print job, or for instructing to change the print order, and in the print server to perform the print job order control. A program for notifying the end of printing of a print job, a request for changing the printing destination, and the like is included. The print control program of the present invention for performing such control may separately divide a module installed in the client and a module installed in the print server, or one print control program is executed. It may function as a client or a print server depending on the environment. Alternatively, it is possible to install a module having a client function and a module functioning as a print server on one computer, and to perform a pseudo parallel operation at the same time or in a time division manner.
[0037]
Reference numeral 301 denotes a basic I / O program, which has an IPL (Initial Program Loading) function for starting the operation of the OS by reading the OS from the HD 205 into the RAM 202 when the control device is turned on. This is the area that contains the program.
[0038]
Reference numeral 302 denotes an operating system (OS), and 303 denotes a network printer control program, which is stored in an area secured on the RAM 202. Reference numeral 304 denotes related data, which is stored in an area secured on the RAM 202. Reference numeral 305 denotes a work area in which an area for the CPU 200 to execute the printer control program is secured.
[0039]
FIG. 4 is a diagram illustrating an example of a memory map of the FD 204 illustrated 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 network printer control program which is a print control program described in the present embodiment, 404 Is the related data. The network printer control program 403 is a program based on the flowchart described in the embodiment. In this embodiment, the client and the server have the same configuration.
[0040]
FIG. 5 is a diagram showing a relationship with the FD 204 inserted into the FD drive 203 shown in FIG. 2, and the same components as those in FIG. 2 are denoted by the same reference numerals.
[0041]
In FIG. 5, the FD 204 stores a network printer control program and related data described in the present embodiment.
[0042]
Next, a print job control system that uses a plurality of printers according to the present embodiment and performs the above-described printing processing such as distribution, broadcast, and substitution will be described.
[0043]
In this embodiment, a printer that virtually bundles a plurality of printers as one printer is called a group printer, and a printer that can be bundled is called a member printer. The corresponding printer drivers are called a group printer driver and a member printer driver, respectively.
[0044]
FIG. 6 is a diagram showing how a print job issued from a general application such as MicroSoftWord is processed in the print job control system in the client server model of this system. In FIG. 6, reference numeral 600 denotes a client machine, which indicates a machine on which a client module of the print job control system operates.
[0045]
Normally, when a printing instruction is given, the application program generates a series of drawing commands and passes them to Windows Spooler via a printer driver. Windows Spooler takes a procedure of passing print job data to the port monitor selected by the user and transmitting it to the printer device.
[0046]
In the present embodiment, the user designates a print job control system port monitor 621 (hereinafter abbreviated as job control port monitor in this embodiment) and instructs printing in advance. The application program 601 generates a series of drawing commands. Upon receiving the drawing command, the group printer driver 603 generates a general-purpose print file and transmits it as print job data to the job control port monitor 621 instead of a port monitor that transmits print job data to the printer device. The job control port monitor 621 does not transmit print job data to the printer device 650 but transmits it to the print job control system print service 622 (hereinafter abbreviated as job control print service in this embodiment). The job control print service 622 has a function of managing the status of the job / device managed by the job control server 630. Further, when the device and the client PC operate in a peer-to-peer connection environment, the job control print service 622 manages information such as the device status and job status notified from the device, and And a function of giving a predetermined command. This corresponds to a function for managing device information and job information of a plurality of printer devices 650.
[0047]
The print job control system print manager 623 (hereinafter also abbreviated as job control print manager in this embodiment) checks the state of the print job in the job control print service 622 by the user, A program that provides a user interface (UI) for operation.
[0048]
The job control print manager 623 transmits / receives information to / from the job control print service 622 via the software interface (API) of the job control print service 622, and mainly an external printer device managed by the job control print service 622. It has a function to acquire the state information as an event. Event notification types include warnings when the amount of toner is low, communication failure between the client and device, memory shortage, full output tray, and other error / warning information notifications, and return from error to normal status Notification of normal information is assumed.
[0049]
The print job control system server 630 (hereinafter abbreviated as job control server in the present embodiment) performs centralized control (scheduling) the timing at which the job control print service 622 on each client 600 transmits print job data to the printer device 650. )is doing. The print job control system server 630 monitors the status of the power control status, fault information (paper jam), etc. during printing of each device (printing apparatus) that can communicate via the network, and the job control print service 622. Has a function to notify events. Here, regarding the monitoring of the status change of the printer status, the job control print service 622 can directly acquire a notification (event) of the status change from the printer device.
[0050]
The print job control system management console 633 (hereinafter abbreviated as “job control management console” in this embodiment) exchanges information and instructions with the job control server 630 via an API for accessing software of the job control server 630. By doing so, the entire print job control system can be monitored.
[0051]
Further, the job control server 630 communicates with each printer device 650 using the device information control module 631 to obtain information about a print job and an operation state in each printer and perform an operation. The acquired information can be transferred to the job control print service 622 on the client 600 side.
[0052]
Next, printing from the group printer driver 603 in this embodiment will be described.
[0053]
The group printer driver 603 converts a series of drawing commands generated by the application program into a general-purpose print file that is an intermediate format file independent of the type of printer device. The configuration of this general-purpose print file will be described later.
[0054]
As described above, the general-purpose print file is guided from the Windows S spooler 604 through the job control port monitor 621 (a) to the job control print service 622 (b). The job control print service 622 generates a drawing command based on the general-purpose print file according to the type of job control performed on the print job (c), and then the PDL driver 602 sends the drawing command to the printer device 650. Is a PDL file that can be interpreted. In FIG. 6, an example in which job control print service 622 performs job control for dividing a print job into two for this print job, and an example in which two member jobs are generated is indicated by two arrows (c). Yes. The PDL file generated by the PDL driver 602 passes through the Windows S spooler 604 and the job control port monitor 621 (d), and is again delivered to the job control print service 622 (e). The job control print service 622 transmits PDL print job data to the printer device 650 in accordance with an instruction from the job control server 630 (f).
[0055]
The job control print service 622 logically divides one general-purpose print file into a plurality of print jobs in accordance with the instructions in the print instruction document in the general-purpose print file, and transmits them to different printer devices or once. Re-send print job data to another printer device. (C), (d), (e), and (f) in FIG. A indicate the print job data path in such a case.
[0056]
On the other hand, when the application software creates a general-purpose print file and the application software directly inputs the general-purpose print file as a print job, the general application is a method of passing information to the group printer driver 603 or the group printer driver 603. The processing content of is different. As described above, in the case of a general application, when the application passes drawing information to the group printer driver 603, the Windows GDI function is called in the same way as a normal printer driver, and the group printer driver 603 responds accordingly to the general-purpose print file. Is generated. On the other hand, in the case of an application that directly creates a general-purpose print file, the application already has a general-purpose print file and supplies it to the group printer driver 603. The group printer driver 603 rewrites the print instruction in the general-purpose print file based on a preset printing method as necessary, and sends it to the WindowsSpooler 604.
[0057]
FIG. 8 is a diagram showing an example of the configuration of a general-purpose print file.
[0058]
The general-purpose print file used in this embodiment includes a print instruction unit 8-a and a document data unit 8-b. The print instruction part is a part describing document information and a print instruction. The document data is obtained by converting application data into general-purpose data, and has a data format independent of the printer language.
[0059]
The print instruction unit includes a header part, a page information part, a print format instruction part, an output method designation part, a group printer driver setting information part, a member printer number, a member printer driver name, and a member printer driver setting information part.
[0060]
The header part is a part for storing information such as version identification and file information of this file.
[0061]
The page information part is a part for storing information such as the number of pages of document data in the document data part 8-b and the size of each page.
[0062]
The print format instruction unit is a part that stores information related to the output format such as a print page range, the number of copies, document data imposition information (N-UP, bookbinding printing, etc.), a staple command, a punch command, and the like.
[0063]
The output method designating unit is a part that stores information such as distributed printing, color / monochrome distributed printing, proxy printing, and broadcast printing as an output method.
[0064]
The group printer driver setting information part is a part for storing UI setting information of a group printer driver described later.
[0065]
The number of member printers is a part for storing the number of member printers associated with the group printer driver.
[0066]
The member printer driver name is a part for storing the printer driver name of the member printer.
[0067]
The member printer driver setting information section is a part that stores, for example, DEVMODE information as setting information of the driver UI of the member printer.
[0068]
The member printer driver name and member printer driver setting information section have as many storage areas as the number of member printers stored.
[0069]
The group printer driver 603 described with reference to FIG. 6 records the settings on the group printer driver GUI in the print instruction unit 8-a when generating a general-purpose print file. Further, the group printer driver 603 converts the data received by the GDI into general-purpose data and records it as document data in the document data portion of the general-purpose print file.
[0070]
Next, the relationship between the PrintSystem provided by Windows S and the print job in the print job control system and the processing outline will be described in more detail in FIG.
[0071]
In FIG. 7, a print job control system 700 indicates a range of the print job control system that straddles physical machines on which the server and client control programs operate. The output port (Output Port) 711 managed by the server is associated with the proxy output port (Proxy Output Port) 712 of the job control print service 622 of the client, and the proxy on each client associated with one port. All output ports are managed in a unified manner. In this embodiment, actual print job data is held in the proxy output port 712 of each client. The job control server 630 does not perform the transmission process of the print job data itself, but only instructs the job control print service 622 to transmit the print job. In response to the instruction, the job control print service 622 of the client transmits print job data to the device 650.
[0072]
Next, processing when the print job control system 700 performs value-added printing such as proxy printing, distributed printing, and broadcast printing will be described.
[0073]
When the print job control system 700 performs value-added printing such as proxy printing, distributed printing, and broadcast printing, as described above, the user or application 601 prints to a printer to which the group printer driver 603 is assigned. Must be issued. The job control print service 622 receives job data processed by the group printer driver 603 as a general-purpose print file via the job control port monitor 621. The job control print service 622 receives this job and issues a job (member job) to another printer to which the PDL driver is assigned via the DeSpooler 701 for printing. At this time, the DeSpooler 701 interprets the print instruction portion 8-a of the general-purpose print file described with reference to FIG. 8, processes the document data in the document data portion 8-b, converts it into Windows GDI, and prints each printer driver. A print instruction is issued and a print job is issued. For example, when a 2-UP instruction is recorded in the print format designation section, document data for two pages is reduced and laid out on one sheet of paper. In the case of distributed printing or broadcast printing, a job is issued to a plurality of member printers described in the print instruction section 8-a according to these settings. In the case of proxy printing, when a proxy condition is satisfied, a member job is issued in accordance with a user's operation in advance for automatic proxy and for manual proxy.
[0074]
Further, when the DeSpooler 701 issues a job to each member printer, it is necessary to create a DEVMODE for each member printer as a print instruction corresponding to the member printer driver. This DEVMODE is described in the print instruction section 8-a. The contents are appropriately reflected in the DEVMODE of each member printer.
[0075]
The job control print service 622 on the client side receives the PDL data of each member job rendered by the PDL driver 602 via the job control port monitor 621, notifies the server side of information regarding the received job, and the job data is It is temporarily stored in its own proxy output queue (Proxy Output Port) 712. Thereafter, after receiving a transmission instruction from the job control server 630, it is transmitted to the print device 650.
[0076]
Next, FIG. 9 will be described. FIG. 9 corresponds to a member printer driver registration process for constructing a group printer driver interface for performing print settings shown in FIGS.
[0077]
First, in step S901, the setup is prepared and the setup is started.
[0078]
In step S902, a printer driver to be registered in the member printer is selected via a pointing device such as a mouse, and is set as an installation target.
[0079]
In step S903, the selected printer driver is installed and registered as a member printer driver.
[0080]
In step S904, printer information corresponding to the installed printer driver is acquired. The printer information (device information) includes, for example, information that the supported paper size is A3, A4, B5, whether double-sided is possible, whether stapling is possible, and whether the punching is possible as a finishing function, Z Enter whether folding is possible. Here, the printer information acquisition method is such that the installed printer driver acquires the printer information inquired and acquired via the predetermined network from the corresponding printer device, or is input from the keyboard or the like. A form of processing in which the set value is registered as printer information is assumed.
[0081]
In step S905, it is determined whether or not the installation of the target member printer driver is to be completed. If not, the process returns to step S902, and the printer driver selected according to the selection instruction is registered again as a member printer driver. Repeat the process. On the other hand, if completed, the process proceeds to step S906.
[0082]
In step S906, the setting value of the device attribute information acquired in step S904 is stored and held together with the name of the printer driver in the system registry, for example. Further, a user interface as shown in FIG. 10 and FIG. 12, which will be described later, is constructed through the processing of the flowchart of FIG. 9. For example, the device information shown in 1006 of FIG. 10 includes the information stored in step S906. This corresponds to what is displayed for each corresponding member printer.
[0083]
Next, the user interface (group printer driver UI) of the present embodiment will be specifically shown and described with reference to FIG. 10 taken as an example.
[0084]
In FIG. 10, reference numeral 1001 denotes a combo box for selecting and specifying an output method. When the combo box 1001 is designated via a pointing device such as a mouse, a list of a plurality of output methods is displayed, and a predetermined output method is designated from the displayed list.
[0085]
A button 1002 opens a UI for registering a member printer driver for a group printer driver of a predetermined type. The UI opened here will be described later. Here, as the predetermined type, for example, as shown in FIG. 10, a group printer driver of ratio distribution, or a group printer driver of color / monochrome distribution processing described later, and other automatic substitution and broadcast printing are used. Such a group printer driver is assumed.
[0086]
Reference numeral 1003 in FIG. 10 denotes a list box for displaying a list of registered member printer drivers after member printers are registered.
[0087]
In this UI example, various information related to the member printer is displayed together with the name of the member printer driver. The contents of the list display are also changed according to the output method designated from the pull-down menu 1001. That is, each of a plurality of types of output methods has a member printer driver configuration. As a result, the user can easily call a member printer driver suitable for each output method, and there is no need to register a new member printer driver each time the output method is changed.
[0088]
Further, for example, the member printer driver 1007 registered via the UI as shown in FIG. 11 is temporarily not included in the configuration or is not included in the configuration 1007. This is a check box to be added to the configuration of the member printer driver. When this check box is checked, the member printer is regarded as the target printer driver, and when the check box is not checked, the member printer driver is temporarily removed from the target printer driver. In other words, the member printer driver included in the option 1007 corresponds to the one registered by the primary registration process, and checking the check box makes the member printer driver the target printer driver for the actual printing process. This corresponds to the secondary registration process.
[0089]
In this way, in the registration of member printer drivers, a two-stage setting mechanism of primary registration and secondary registration is made possible by the present invention. For example, in normal distributed printing, a predetermined member that is a target of print processing is used. When the predetermined member printer driver can be temporarily excluded from the target for the printer driver, or when the malfunctioning printing apparatus is restored, the actual operation is again performed by operating the check box. It can be a member printer driver activated during the printing process. This is because information on member printers registered (primary registration) for each output method and information on whether or not a member printer driver is used by checking a check box are separately stored in a predetermined storage unit. This is realized by the configuration of holding.
[0090]
Furthermore, in the present invention, the primary registration and secondary registration described above can be set for each of a plurality of output methods, and start with ratio distributed printing, broadcast printing, color / black and white distributed printing, proxy printing described later. The primary registration and the secondary registration are processed independently of each other.
[0091]
Reference numeral 1006 denotes a display column for attribute information of each device. The attribute information of the device corresponding to each member printer driver set in the group printer driver corresponds to the information displayed according to the display control of the control program together with the name of the member printer driver.
[0092]
Next, registration / deletion of member printer drivers will be described with reference to FIG.
[0093]
FIG. 11 shows a UI displayed when the control program recognizes a press signal of the “add / delete device” button 1002 in FIG. 10 described above.
[0094]
In FIG. 11, reference numeral 1101 denotes a list box that displays a list of selectable member printer drivers. The selectable member printer driver is a printer driver that is installed by allocating a port that can be handled by the system, and is a printer driver that can be recognized by the control program.
[0095]
A list box 1102 displays a list of selected member printer drivers. Each button 1103, 1104, 1105, 1106 can be added to or deleted from a member printer from the selectable member printer list.
[0096]
When the pressing signal 1103 is recognized, the printer driver selected at the time of pressing in 1101 is added as a member printer driver.
[0097]
When the press signal 1104 is recognized, control is performed so that all printer drivers shown in the list 1101 constitute the member printer driver displayed in 1102.
[0098]
Reference numeral 1105 denotes a button for disconnecting from the member printer driver as opposed to 1103 and 1104. When the pressing signal of 1103 and 1105 is recognized, the button is removed from the configuration of the member printer driver 1102. The member printer driver is controlled.
[0099]
FIG. 12 shows an example of how the UI is displayed when automatic substitution printing is selected from the selection list 1001 in FIG. 10 and set as the output method. The registered member printer driver configuration is the output method. It shows the state of switching display according to the designation.
[0100]
In the automatic proxy printing, each member printer driver has a priority order, and the member printer driver having the highest priority order is first preferentially printed, and the current print processing is to be performed. When an error such as no toner occurs in the printer device and printing becomes impossible, a process is performed in which control is performed so that the member printer driver of the next priority is automatically printed.
[0101]
In this case, as the configuration of the member printer driver, a plurality of registrations can be made as in the case of ratio distribution (distributed printing), and this control program has a function of setting the priority for each member printer driver. .
[0102]
1201 and 1202 in FIG. 12 are buttons for changing the priority order of the member printer drivers. In this UI example, the priority order of member printers matches the order listed in the member printer list 1203.
[0103]
Accordingly, the member printer driver can be selected from the list of the list 1203 and the order on the member printer list can be increased by one (moved display upward) and the priority can be increased by the button 1201.
[0104]
Further, the button 1202 can lower the order on the member printer list by one (moving display downward) and lower the priority order.
[0105]
Also, with regard to the registration (addition / deletion) of the member printer driver described above, control is performed so that a UI similar to that shown in FIG. 11 is displayed, and member printer registration deletion processing is performed.
[0106]
Next, a mechanism for managing a plurality of printers in a printing system that targets a plurality of printers as described above will be described below.
[0107]
FIG. 14 shows the control processing of the print manager 623 described with reference to FIG. 6, and a program stored in a non-volatile storage means such as a ROM or HD by a CPU (central processing unit) provided in the information processing apparatus. It shall be realized in response to reading and executing the code.
[0108]
First, task tray activation processing is executed in response to an activation instruction from a user via a pointing device such as a mouse or a keyboard.
[0109]
In step S1401, startup initialization processing is executed in accordance with task tray startup processing.
[0110]
In step S1402, the device / job monitoring service interface is constructed. Here, the device / job monitoring service interface corresponds to the interface with the job control print service 622 in FIG. 6, and the print manager acquires device status, print queue information, and the like managed by the job control print service module. It corresponds to the interface.
[0111]
In step S1403, the monitoring target printer enumeration process is executed. The enumeration processing here corresponds to processing for acquiring and grasping management information of one or a plurality of printers acquired by the print manager 633 from the job control print service 622, and information acquired and managed from the job control print service 622. For example, FIGS. 18, 19, 20, and 21 can be cited as management states.
[0112]
Here, the print information acquired from the job control print service 622 by the print manager 623 includes a group printer (virtual printer) and a member printer (actually operating printer).
[0113]
In step S1404, an unknown job search / return module error / trouble recovery process is executed. For example, this corresponds to a reprint process of a job remaining at the time of forced termination.
[0114]
In step S1405, an event request registration process associated with a change in printer information is registered from the print manager 623 to the job control print service 622. Actually, the job control print service 622 manages the states of a plurality of image forming devices that are communicable on the network, and the change in the state of the image forming device managed by the job control print service 622 is the print manager. 623 is notified. Step S1405 corresponds to a request for notification of a change in the state of the image forming device managed by the job control print service 622. Of course, the print manager 623 directly sends it to the job control server 630 or the print device 650. A form in which an event notification is requested is also assumed.
[0115]
In step S1406, it is determined whether a detailed monitor display request has been made. For example, the process of determining whether or not an activation instruction via the pointing device for the detail monitor activation button generated in step S1401 has been made corresponds to step S1406.
[0116]
If it is determined Yes in step S1406, the process proceeds to step S1408, and if it is determined No, the process proceeds to step S1409.
[0117]
In step S1408, processing by the detailed monitor UI module is executed, and details thereof will be described later with reference to FIG.
[0118]
In steps S1409 and 1410, a monitoring process for a device and a job that is executing a job is executed. In step S1411, a job end notification monitoring process is executed.
[0119]
In step S1412, it is determined whether or not an instruction to end the activated program has been issued. If it is determined as Yes, the program processing is ended. If it is determined as No, the monitoring target printer is updated in step S1407. A check process is executed, and the process returns to the process of step S1406. The update check process for the monitoring target printer in step S1407 corresponds to, for example, managing addition / deletion of member printers performed via the user interface as shown in FIG.
[0120]
Next, FIG. 15 will be described. FIG. 15 corresponds to the detailed processing of step S1408 in the flowchart of FIG.
[0121]
First, in step S1501, startup initialization processing is executed. This corresponds to various initialization processes necessary for executing a display as shown in FIG. 22, for example, which will be described later.
[0122]
In step S1502, the monitoring target printer enumeration process is executed. The enumeration processing here includes acquisition processing from the job control print service 622 for information on a plurality of printers (including both group printers (virtual printers) and member printers (real printers)) to be monitored, It is assumed that the printer list display process based on the printer information is included. For example, the printer list shown in the “display by printer” frame of FIG. 22 corresponds to the one displayed in correspondence with the processing in step S1502. In addition, the printer list includes a virtual printer and an actual printer. The printer list of “display by printer” in FIGS. 23 and 24 corresponds to this. Further, a status icon indicating the status of each printer (virtual printer / real printer) is attached to the virtual printer and the real printer in the list. Here, control is performed so that the status icon is changed in accordance with the change of the status of the printer (virtual printer / real printer). For example, it is possible to determine the status of the virtual printer by “or” processing the status of the member printer corresponding to the virtual printer, and to determine an icon corresponding to the determined status. If even one of the plurality of member printers is “spooler stopped”, the status of the virtual printer corresponding to the plurality of member printers and the icon corresponding to the state are stopped “spooler stopped”, or the plurality of member printers If at least one of the statuses is “error”, it is assumed that the status of the corresponding virtual printer and the status icon corresponding to the status are also set to “error”.
[0123]
In step S1503, a startup display menu designation display process is executed. This corresponds to a process of displaying the menu assigned to the menu item at the time of starting the program in a form that can be specified to be changed.
[0124]
In step S1504, it is determined whether or not a mode selection instruction has been issued. If it is determined that an instruction corresponding to “My Menu” has been issued, the process proceeds to step S1505, and the “printer list” is displayed. If it is determined that an instruction corresponding to “menu” has been given, the process proceeds to step S1506. Here, the mode selection instruction indicates a process for selecting and instructing a predetermined menu.
[0125]
In step S1506, it is determined which printer has been instructed to select from a plurality of printers listed in the process of step S1502, and processing for recognizing the selected printer is executed.
[0126]
In step S1507, it is further determined which type of mode is currently selected. Depending on the type of the mode, in step S1506, the printer that is recognized as currently selected is selected. Control the display form of information differently. Note that the mode selection here refers to, for example, a mode instruction instructed via the “Mode (D):” selection field in FIG.
[0127]
If it is determined in step S1507 that “printer information” is selected as the mode, the process proceeds to step S1508. If it is determined that “job list” is selected, the process proceeds to step S1509. If it is determined that “output setting” is selected, the process proceeds to step S1510. In step S1510, the setting information (paper size, default resolution, etc.) of the printer selected in step S1506 is displayed. Detailed description corresponding to step S1509 will be given in FIG.
[0128]
As described above, by executing the processing of the flowchart of FIG. 15, a predetermined printer (including a virtual printer / real printer) selected from one or a plurality of monitored printers listed in step S1502 is assigned. On the other hand, various information such as printer information, job list, output setting, etc. according to mode selection can be switched and displayed.
[0129]
Further, in step S1506, the group printer (virtual printer) and the real printer (member printer) are mixed and listed, and the user is not aware of any of the virtual printer / real printer. Selection can be made in the same manner, and the optimum printer information, job list information, and output setting information can be known in accordance with the selection instruction.
[0130]
Next, FIG. 16 will be described. FIG. 16 corresponds to a flowchart corresponding to the detailed description of step S1509 of FIG. 15 described above.
[0131]
First, in step S1601, status event registration of the selected printer is executed. This corresponds to processing for requesting, as an event, a change in the state relating to the printer selected in step S1506 in FIG. Actually, a mode in which the print manager 623 in FIG. 6 requests the job control print service 622 to notify the event is assumed. Note that the selected printer in step S1601 can be a virtual printer or an actual printer.
[0132]
In step S1602, whether the type of printer recognized in step S1601 is a group printer (virtual printer) / member printer (actual printer), or an inkjet printer / laser beam printer / network compatible digital multifunction peripheral. In response to this, initialization processing for performing different information acquisition processing is executed.
[0133]
In steps S1603 and S1604, processing for acquiring queue information and port information corresponding to the printer selected in step 1506 from the job control print service 622 is executed.
[0134]
More specifically, when the printer selected and designated in 1602 and 1603 is a virtual printer (group printer), acquisition of queue and port information corresponding to the printer is executed. When the selected printer is a member printer (actual printer), queue and port information corresponding to the member printer is acquired. For specifying the queue and port, the management information as shown in FIG. 18 is referred to based on the information (printer name / printer ID, etc.) for specifying the printer corresponding to the printer instruction, and the queue included in the management information. And information for referring to the port are specified.
[0135]
In the job control print service 622, virtual printer queues (corresponding to the logical queue in FIG. 7) and member printer queues (FIG. 7) corresponding to the group printers (virtual printers) and member printers (real printers), respectively. 7), a virtual printer logical port (corresponding to Logical Port in FIG. 7), and a member printer logical port (corresponding to each Output Port in FIG. 7). Accordingly, processing for notifying the print manager 623 of information to be managed is executed.
[0136]
The queue information includes job attributes such as print document name / document size / number of copies currently registered for print output, job status such as spooling / printing, and port information. An example is information on whether or not the communication function is in a normal state.
[0137]
In step S1605, an event notification is registered so that an event is made when the status of the printer queue corresponding to the selected printer is changed.
[0138]
In step S1606, it is determined whether the selected printer to be processed in steps S1601 to S1605 is a group printer (virtual printer) or a member printer (real printer).
[0139]
If it is determined as a virtual printer, the process proceeds to step S1607; otherwise, the process proceeds to step S1618.
[0140]
In step S1607, the type of the virtual printer is determined. That is, it is determined by referring to the management information as shown in FIG. 18 whether the output method of the virtual printer is ratio distributed printing, color / monochrome distributed printing, automatic proxy printing, or broadcast printing.
[0141]
In step S1608, extraction (enumeration) of intermediate files managed in the virtual printer queue is performed. At this time, a list of intermediate files (sometimes called original jobs or parent jobs) related to the issued virtual job is displayed.
[0142]
In step S1609, intermediate file attached information processing is executed. Here, as the attached information, for example, a printing date and time corresponds.
[0143]
In step S1610, registration of a state change event notification corresponding to the intermediate file is performed from the print manager 623 to the job control print manager 622 (print control program).
[0144]
In step S1611, it is determined whether or not an instruction to select a predetermined intermediate file (a parent job (intermediate file) before distribution / substitution / broadcasting) from among those listed in step S1608 has been issued. If it is determined that it has been selected, job selection processing is executed in step S1612, and further, intermediate file attached derived jobs are listed in step S1613.
[0145]
The identification of the derived job from the intermediate file is performed by comparing the intermediate file name 2001 or intermediate file ID corresponding to the one selected and designated in step S1611 with the management information shown in FIG. The derived job is specified from the attached information 2004. That is, the intermediate file attached information 2004 includes information for specifying a derived job corresponding to a predetermined intermediate file. Further, the job status and output destination printer information relating to the derived job can also be specified from the information 2007 in FIG. In addition, by referring to the derived job management information shown in FIG. 21 specified based on the derived job ID specified from 2004, various types of information on the derived job can be recognized and displayed. .
[0146]
In this way, derived jobs corresponding to virtual jobs (corresponding predetermined original jobs) are extracted (enumerated), and a list of derived jobs is displayed together with output destination printer / status information as shown by 2203 in FIG. 22 (S1614). Is done. In the case of job tracking, the actual printer can be confirmed by the name of the “output destination printer” attached to the job.
[0147]
In subsequent step S1615, an event request registration process associated with a state change is performed for the derived job.
[0148]
In step S1616, it is determined whether or not a predetermined derived job has been selected from the derived jobs listed and displayed in step S1614. If the result is Yes, the process proceeds to step S1617.
[0149]
On the other hand, if it is determined in step S1606 that a member printer (actual printer) that is not a virtual printer has been selected, in step S1618, job information (job name) in the printer queue corresponding to the selected printer is acquired. Event registration is executed (S1619), and the attached information of each listed job is acquired (S1620), and the job attached information is displayed in correspondence with the job name acquired in step S1621 (S1621, S1622). . In step S1623, a job selection time control process is executed.
[0150]
In this way, it is possible to determine whether a virtual printer is selected or an actual printer is selected (S1606). Further, if it is determined that a virtual printer is selected, job information corresponding to the virtual printer is determined. Is displayed, and when it is determined that an actual printer has been selected, the management of displaying job information corresponding to the actual printer is realized. Also, as information corresponding to the virtual printer, both information (2202 in FIG. 22) of the original job (intermediate file) as shown in FIG. 22 and a derived job derived from the original job are displayed. The user can easily know the progress status of the entire virtual job and the state of each of the derived jobs corresponding to the virtual job.
[0151]
Next, the processing of FIG. 17 will be described. FIG. 17 corresponds to the event monitoring processing corresponding to each event registration above, and is executed by the print manager 623 of FIG. 6 and provided in the information processing apparatus. It is assumed that the (central processing unit) is realized by reading and executing the program code stored in the nonvolatile storage means such as ROM or HD.
[0152]
First, in step S1702, it is determined whether the event relating to the printer queue managed in step S1701 is a state update event. If the determination is Yes, the status update process for the event target job is executed, and the corresponding display is updated accordingly.
[0153]
On the other hand, if it is determined No in step S1702, it is determined in step S1705 whether or not the event is a completion notification. If NO is determined, the process returns to step S1701, and if YES is determined, the process proceeds to step S1706.
[0154]
In step S1706, it is determined whether or not the completion notification event in step S1705 relates to the intermediate file. If the determination is Yes, the process proceeds to step S1708. On the other hand, if it is determined No, it is determined whether it is a completion notification corresponding to the derived job. If it is determined Yes in step S170, the process proceeds to step S1701. If it is determined No, the process proceeds to step S1708.
[0155]
In step S1708, job completion type information is acquired. In step S1709, job completion attached information is acquired. In step S1710, job completion state notification display processing is performed. Here, icon notification, dialog notification, and the like are assumed.
[0156]
By realizing the flowchart of FIG. 17 as described above, the job information corresponding to each member printer as shown in FIGS. 22 and 24 is updated as needed, and is further executed by each member printer. It is possible to display the latest information of the original job (parent job) based on the job information.
[0157]
Here, FIGS. 22 and 24 will be described.
[0158]
FIG. 22 shows a list of virtual distributed printing printers (corresponding to “distributed-kun” in the figure) and member printers (corresponding to printers A, B, and C) constructing the virtual distributed printer according to the distributed printing system “display by printer”. It is shown in the column. FIG. 22 shows a display state in which “dispersion-kun” is selected.
[0159]
The job control print service 622 has a function of generating information obtained by “or processing” each status of a derived job (corresponding to “child job” in the drawing) shown in 2203 as the job state of the original job 2202. , 2202 is displayed as a representative status of the entire distributed print virtual job.
[0160]
For example, if all of the derived jobs are printed, the state of 2202 is determined as “finished”, and if even one error is recognized in the derived job, the state of 2202 is “error”. . Further, as shown in FIG. 22, when the status of the derived job is “printing waiting” and “printing”, the representative status 2202 is “printing”. In this way, the user can easily know the status (state) of the distributed printing system by knowing the representative status. The generation of the representative status (state) is similarly processed for derivative jobs in generally known broadcast printing, proxy printing, color monochrome distributed printing, and the like. Actually, the original job 2202 corresponds to an original intermediate file (corresponding to the general-purpose print file described with reference to FIG. 6) for executing distributed printing.
[0161]
In the original job display field in FIG. 22, only a list corresponding to one original intermediate file 2202 is displayed. However, when a plurality of virtual jobs are issued, a plurality of original job display fields are displayed. Is displayed. In addition, when the intermediate file selection instruction is switched, the derived job list corresponding to the intermediate file instructed to be selected is also changed and changed (corresponding to steps S1611 to S1614 in FIG. 16). Thereby, the user can easily know the job status of the derived job corresponding to each virtual job.
[0162]
In addition, in the display as shown in FIGS. 22, 23, and 24, this control program has a filter function, and a function for displaying only the user's own job based on the honorer name attached to the job or the machine name. Also have.
[0163]
FIG. 23 shows a display example when an actual printer is selected with respect to FIG. 22, and the display when switching from the “distribution-kun” selection instruction of FIG. 22 to the selection instruction of “printer A” is shown. The state of switching is shown.
[0164]
In addition, through FIGS. 22 to 24, status icons corresponding to various job statuses are displayed on the left side of the document name. In particular, the status icons are displayed for the original job. This makes it easier to understand the representative status of information printing jobs. An example of the status icon is shown in FIGS.
[0165]
As described above, according to the present invention, appropriate job information is provided for a printing method such as distributed printing or broadcast printing, for example, in which a plurality of printers perform printing by distributing the number of copies / page. The mechanism to provide has come to be realized. For example, it is not necessary to monitor information on printers used for distributed printing when distributed printing is executed, and it is now possible to efficiently monitor each derived job at the distribution destination.
[0166]
In addition, since a user interface for job information is not provided in a mixed form with other people's jobs, it is now possible to easily check which jobs are monitored by the user.
[0167]
Furthermore, when assuming jobs that use multiple types of multiple printers, such as distributed printing and broadcast printing, according to the conventional technology, even if the information in each printer queue is viewed, it supports distributed printing. However, according to the present invention, the job information of the member printer corresponding to the type of the virtual printer can be obtained. It became possible to obtain easily.
[0168]
(Other examples)
An object of the present invention is to read a program code stored in a storage medium by a computer (or CPU or MPU) of a system or apparatus, which stores a program code of software that realizes the functions of the above-described embodiments. It is also achieved by executing.
[0169]
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiment, and the storage medium storing the program code constitutes the present invention.
[0170]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
[0171]
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) operating on the computer based on the instruction of the program code. A case where part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
[0172]
Further, after the program code read from the storage medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board is based on the instruction of the program code. Also included is a case where the CPU or the like provided in 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.
[0173]
【The invention's effect】
As described above, according to the present invention, it is possible to provide a job management mechanism that makes it easy to understand the job information in correspondence with a job form that uses a plurality of printers. It became so.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an information processing system to which the present invention can be applied.
FIG. 2 is a block diagram illustrating a configuration of an information processing apparatus according to the present invention.
3 is an example of a memory map of a RAM 202 shown in FIG.
4 shows an example of a memory map of the FD 204 shown in FIG.
5 is a diagram showing a relationship with an FD 204 inserted into the FD drive 203 shown in FIG.
FIG. 6 is a block diagram illustrating the configuration of a print control module of the information processing apparatus according to the present invention.
FIG. 7 shows an example of a data structure of job information managed by the print server.
FIG. 8 is a diagram showing the structure of a general-purpose print file.
FIG. 9 is a flowchart showing registration of member printer drivers and setting of printer attribute information when setting up the printing control program.
FIG. 10 illustrates an example of how a UI is displayed when percentage distribution printing is designated as an output method.
FIG. 11 is an example of a display state of a UI having a member printer driver addition / deletion (registration) function corresponding to a specified predetermined type of virtual printer.
FIG. 12 shows an example of how a UI is displayed when automatic substitution is designated as the output method.
FIG. 13 shows an example of a job status icon representing a job status.
FIG. 14 is a flowchart of status management control of a print manager based on device monitoring of a print control program.
FIG. 15 is a control flowchart of a detailed monitor.
FIG. 16 is a flowchart according to a printer manager control program when a virtual printer (group printer) is selected or an actual printer (member printer) is selected.
FIG. 17 is a flowchart of printer information update by event notification monitoring.
FIG. 18 is a diagram showing how member printers are managed in a virtual printer (group printer).
FIG. 19 is a diagram illustrating how various types of information are managed in an actual printer (member printer).
FIG. 20 is job status data (intermediate file) during virtual printer.
FIG. 21 shows actual printer job data (PDL / derived job).
FIG. 22 shows an example of how a job list is displayed when a virtual printer (distributed printing) is selected.
FIG. 23 shows an example of how a job list is displayed when a member printer (actual printer) is selected.
FIG. 24 shows an example of a job list display when a virtual printer (proxy printing) is selected.
FIG. 25 shows an example of a job status icon representing a job status.
[Explanation of symbols]
101 server
102 clients
103 clients
104 clients
105 Network printer

Claims (16)

複数のプリンタと前記複数のプリンタの何れかをメンバプリンタとして関連付けた仮想プリンタに係るジョブの状態を管理するジョブ管理方法において、
前記仮想プリンタ及び前記複数のプリンタのプリンタ情報を取得するプリンタ情報取得ステップと、
前記取得されたプリンタ情報に基づき前記仮想プリンタ及び複数のプリンタを一覧で表示枠に表示させる表示制御ステップと、
前記表示制御ステップにより表示された一覧の中から、前記仮想プリンタが選択指示されたか、前記複数のプリンタの何れかが選択指示されたか、を判別する判別ステップと、
前記判別ステップによって仮想プリンタが選択指示されたと判別された場合には、選択指示された仮想プリンタに関連付けられたメンバプリンタのジョブ情報に基づく仮想プリンタのジョブ情報を表示させ、前記何れかのプリンタが選択指示されたと判別された場合には、前記何れかのプリンタに対応するジョブ情報を表示させるジョブ情報管理ステップとを有することを特徴とするジョブ管理方法。
In a job management method for managing a job status relating to a virtual printer in which a plurality of printers and any of the plurality of printers are associated as member printers,
A printer information acquisition step of acquiring printer information of the virtual printer and the plurality of printers;
A display control step for displaying the virtual printer and a plurality of printers in a list in a display frame based on the acquired printer information;
A determination step of determining whether the virtual printer is instructed to be selected from the list displayed in the display control step or whether any of the plurality of printers is instructed to select;
If it is determined in the determining step that a virtual printer has been selected, the virtual printer job information based on the job information of the member printer associated with the selected virtual printer is displayed. And a job information management step of displaying job information corresponding to any one of the printers when it is determined that the selection is instructed.
前記プリンタ情報取得ステップで取得されたプリンタ情報に基づき、仮想プリンタに関連付けられているメンバプリンタの状態に基づく前記仮想プリンタの状態を決定する決定ステップと、
前記表示制御ステップは、前記決定ステップにより決定された仮想プリンタの状態を反映させて前記仮想プリンタを前記一覧に含め表示させることを特徴とする請求項1に記載のジョブ管理方法。
A determining step for determining a status of the virtual printer based on a status of a member printer associated with the virtual printer based on the printer information acquired in the printer information acquiring step;
The job management method according to claim 1, wherein the display control step includes displaying the virtual printer in the list by reflecting the state of the virtual printer determined in the determination step.
前記表示制御ステップは、前記決定ステップにより決定された仮想プリンタの状態を反映させたアイコンを表示させることを特徴とする請求項1又は2に記載のジョブ管理方法。  3. The job management method according to claim 1, wherein the display control step displays an icon reflecting the state of the virtual printer determined by the determination step. 前記表示枠から選択された仮想プリンタの種別を識別可能に表示させることを特徴とする請求項1乃至3の何れかに記載のジョブ管理方法。  4. The job management method according to claim 1, wherein the type of the virtual printer selected from the display frame is displayed in an identifiable manner. 仮想プリンタに関連した単数或は複数のメンバプリンタのジョブ情報より前記仮想プリンタのジョブ情報を生成する生成ステップを備え、前記ジョブ情報管理ステップは前記生成ステップにて生成された仮想プリンタのジョブ情報を表示させることを特徴とする請求項1乃至4の何れかに記載のジョブ管理方法。  A generation step of generating job information of the virtual printer from job information of one or a plurality of member printers related to the virtual printer, the job information management step including job information of the virtual printer generated in the generation step; The job management method according to claim 1, wherein the job management method is displayed. 前記仮想プリンタの種別には、分散印刷用仮想プリンタ、及び、代行印刷用仮想プリンタ、及び、同報印刷用仮想プリンタの何れかが含まれていることを特徴とする請求項4又は5に記載のジョブ管理方法。  6. The virtual printer type includes any one of a distributed printing virtual printer, a proxy printing virtual printer, and a broadcast printing virtual printer. Job management method. 前記仮想プリンタに対してメンバプリンタを追加及び削除する登録ステップを有することを特徴とする請求項1乃至6の何れかに記載のジョブ管理方法。Job management method according to any of claims 1 to 6, characterized in that it comprises a registration step of adding and deleting member printer to the virtual printer. 複数のプリンタと前記複数のプリンタの何れかをメンバプリンタとして関連付けた仮想プリンタに係るジョブの状態を管理する情報処理装置であって、
前記仮想プリンタ及び前記複数のプリンタのプリンタ情報を取得するプリンタ情報取得手段と、
前記取得されたプリンタ情報に基づき前記仮想プリンタ及び複数のプリンタを一覧で表示枠に表示させる表示制御手段と、
前記表示制御手段により表示された一覧の中から、前記仮想プリンタが選択指示されたか、前記メンバプリンタが選択指示されたか、を判別する判別手段と、
前記判別手段によって仮想プリンタが選択指示されたと判別された場合には、選択指示された仮想プリンタに関連付けられたメンバプリンタのジョブ情報に基づく仮想プリンタのジョブ情報を表示させ、メンバプリンタが選択指示されたと判別された場合には、前記メンバプリンタに対応するジョブ情報を表示させるジョブ情報管理手段とを有することを特徴とする情報処理装置。
An information processing apparatus for managing a job status relating to a virtual printer in which a plurality of printers and any of the plurality of printers are associated as member printers,
Printer information acquisition means for acquiring printer information of the virtual printer and the plurality of printers;
Display control means for displaying the virtual printer and a plurality of printers in a list in a display frame based on the acquired printer information;
A discriminating unit for discriminating whether the virtual printer is instructed to be selected or the member printer is instructed to be selected from the list displayed by the display control unit;
If it is determined by the determining means that the virtual printer has been selected, the virtual printer job information based on the member printer job information associated with the selected virtual printer is displayed, and the member printer is selected and instructed. An information processing apparatus comprising: job information management means for displaying job information corresponding to the member printer when it is determined that the member printer has been determined.
前記プリンタ情報取得手段で取得されたプリンタ情報に基づき、仮想プリンタに関連付けられているメンバプリンタの状態に基づく前記仮想プリンタの状態を決定する決定手段と、
前記表示制御手段は、前記決定手段により決定された仮想プリンタの状態を反映させて前記仮想プリンタを前記一覧に含め表示させることを特徴とする請求項8に記載の情報処理装置。
Determining means for determining the status of the virtual printer based on the status of the member printer associated with the virtual printer based on the printer information acquired by the printer information acquiring means;
The information processing apparatus according to claim 8, wherein the display control unit reflects the state of the virtual printer determined by the determination unit and displays the virtual printer in the list.
前記表示制御手段は、前記決定手段により決定された仮想プリンタの状態を反映させたアイコンを表示させることを特徴とする請求項8又は9に記載の情報処理装置。  The information processing apparatus according to claim 8, wherein the display control unit displays an icon reflecting the state of the virtual printer determined by the determination unit. 前記表示枠から選択された仮想プリンタの種別を識別可能に表示させることを特徴とする請求項8乃至10の何れかに記載の情報処理装置。  The information processing apparatus according to claim 8, wherein the type of the virtual printer selected from the display frame is displayed in an identifiable manner. 仮想プリンタに関連した単数或は複数のメンバプリンタのジョブ情報より前記仮想プリンタのジョブ情報を生成する生成手段を備え、前記ジョブ情報管理手段は前記生成手段にて生成された仮想プリンタのジョブ情報を表示させることを特徴とする請求項8乃至11の何れかに記載の情報処理装置。  Generation means for generating job information of the virtual printer from job information of one or a plurality of member printers related to the virtual printer, and the job information management means stores job information of the virtual printer generated by the generation means; The information processing apparatus according to claim 8, wherein the information processing apparatus is displayed. 前記仮想プリンタの種別には、分散印刷用仮想プリンタ、及び、代行印刷用仮想プリンタ、及び、同報印刷用仮想プリンタの何れかが含まれていることを特徴とする請求項11又は12に記載の情報処理装置。  13. The type of the virtual printer includes any one of a distributed printing virtual printer, a substitute printing virtual printer, and a broadcast printing virtual printer. Information processing device. 前記仮想プリンタに対してメンバプリンタを追加及び削除する登録手段を有することを特徴とする請求項8乃至13の何れかに記載の情報処理装置。The information processing apparatus according to any one of claims 8 to 13, characterized in that it comprises a registration means for adding and deleting member printer to the virtual printer. 請求項1乃至7の何れかに記載のジョブ管理方法をコンピュータに実行させる為のプログラム。  A program for causing a computer to execute the job management method according to claim 1. 請求項1乃至7の何れかに記載のジョブ管理方法をコンピュータに実行させる為のプログラムをコンピュータ可読の形態で記憶した記憶媒体。  A storage medium storing a program for causing a computer to execute the job management method according to claim 1 in a computer-readable form.
JP2001368744A 2001-12-03 2001-12-03 Job management method, information processing apparatus, program, and storage medium Expired - Fee Related JP3884949B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001368744A JP3884949B2 (en) 2001-12-03 2001-12-03 Job management method, information processing apparatus, program, and storage medium
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 (en) 2001-12-03 2001-12-03 Job management method, information processing apparatus, program, and storage medium

Publications (2)

Publication Number Publication Date
JP2003167712A JP2003167712A (en) 2003-06-13
JP3884949B2 true JP3884949B2 (en) 2007-02-21

Family

ID=19178290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001368744A Expired - Fee Related JP3884949B2 (en) 2001-12-03 2001-12-03 Job management method, information processing apparatus, program, and storage medium

Country Status (1)

Country Link
JP (1) JP3884949B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3793197B2 (en) 2003-12-03 2006-07-05 キヤノン株式会社 Information processing apparatus, information processing method, information processing program, and storage medium
JP7204497B2 (en) * 2019-01-18 2023-01-16 キヤノン株式会社 Printing device compatible with cloud print service, printing device control method, and program

Also Published As

Publication number Publication date
JP2003167712A (en) 2003-06-13

Similar Documents

Publication Publication Date Title
US7312886B2 (en) Printer control method, information processing apparatus, program, and storage medium
JP3639772B2 (en) Information processing apparatus, printing system, printing control method, and storage medium storing computer-readable program
JP4420421B2 (en) Information processing apparatus and control method thereof
JP3833127B2 (en) Proxy print processing apparatus, proxy print processing method, program, and storage medium
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 (en) Print control method, print control apparatus, print control program executable by information processing apparatus, and storage medium storing computer-readable program
JP4125044B2 (en) Information processing apparatus, information processing apparatus control method, program, and storage medium
JP2003091389A (en) Printing control method and system thereof
US8605316B2 (en) Information processing apparatus and control method thereof, and storage medium
JP2020017216A (en) Image forming apparatus, system, method for controlling these, and program
JP2003316545A (en) Information processor and information processing method
JP2006301860A (en) Information processor
JP3880575B2 (en) Print setting method and computer
JP2004240589A (en) Printing system, method of controlling it, and information processing apparatus and method
JP4078292B2 (en) Information processing apparatus, information processing method and program, and computer-readable storage medium
JP3884949B2 (en) Job management method, information processing apparatus, program, and storage medium
JP3706823B2 (en) Print control method, print control apparatus, print control program for executing print data processing executable by computer, and computer-readable storage medium
JP4401640B2 (en) Printer management method, information processing apparatus, program, and storage medium
JP2006202332A (en) Proxy print processing device and method, program, and storage medium
JP3740448B2 (en) Control device, control method, program, and storage medium
JP3919780B2 (en) Information processing apparatus, print control method, and computer-readable storage medium
JP2006171991A (en) Proxy and distributed printing system
JP2020019153A (en) Printing system, printer and control method therefor, and program
JP3833090B2 (en) Control method, control device, program, and storage medium

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