印刷管理装置並びに印刷管理方法、プログラム、及び記憶媒体
【課題】分散印刷処理を実施中に割込印刷が発生した場合でも分散印刷の印刷物に割込印刷物が混入することを軽減させる。
【解決手段】複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置において、情報処理装置からの印刷要求を複数の画像形成装置に割り振る手段と、割り振られた印刷ジョブを夫々の画像形成装置に送信する手段と、分散印刷ジョブの印刷が開始された後、前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブの中断通知を受信した場合、該画像形成装置に印刷の停止命令を送信する制御手段と、前記停止命令を受信した画像形成装置で中断される印刷ジョブの内、未印刷の印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散手段と、再分散される印刷ジョブを前記停止命令を送信した画像形成装置以外の画像形成装置に送信する手段とを有する。
【解決手段】複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置において、情報処理装置からの印刷要求を複数の画像形成装置に割り振る手段と、割り振られた印刷ジョブを夫々の画像形成装置に送信する手段と、分散印刷ジョブの印刷が開始された後、前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブの中断通知を受信した場合、該画像形成装置に印刷の停止命令を送信する制御手段と、前記停止命令を受信した画像形成装置で中断される印刷ジョブの内、未印刷の印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散手段と、再分散される印刷ジョブを前記停止命令を送信した画像形成装置以外の画像形成装置に送信する手段とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷処理を複数の画像形成装置に分散して印刷する分散印刷に関するものである。
【背景技術】
【0002】
従来、画像形成装置を用いて大量印刷ジョブを処理するものとしては、クラスタプリント技術が挙げられる。クラスタプリント技術は、大量印刷ジョブの処理を1台の画像形成装置にて処理するのではなく、複数台の画像形成装置に1つの印刷ジョブを分割して投入することにより、1台で処理するよりも早く印刷物を得ることができるものである。
【0003】
また、分散印刷した処理状況や処理結果を一台の画像形成装置で表示し、操作できるようにすることで、印刷物回収の効率化や、各画像形成装置で処理されている分散印刷中のジョブ操作向上を図る方法も提示されている(特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−281593号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1において、分散印刷ジョブを実施している画像形成装置に割り込み印刷機能を用いて後続のジョブを優先して印刷した場合、分散印刷ジョブの処理結果の中に、異なるジョブの処理結果が含まれることになる。そのため、分散印刷の1ジョブの中に複数の割り込みジョブが発生した場合は、印刷物を回収する際に、割り込まれた印刷物を除去する作業が発生し、ユーザの作業が煩雑になる。
【0006】
また、特許文献1のように、分散印刷ジョブを投入するプリンタと分散印刷ジョブを投入しないプリンタとを予め分けておいて印刷する方法もあるが、分散印刷でないジョブが少ない場合、プリンタの稼働状態に偏りが出る。分散印刷ジョブを投入されたプリンタがフル稼働しているにもかかわらず、分散印刷ジョブが投入されていないプリンタが止まっているなど印刷処理の不効率を招く。
【0007】
本発明の目的は、上記課題を解決するためになされたものであり、本発明はプリンタの稼働率を上げつつ、分散印刷処理を実施中に割込印刷が発生した場合でも分散印刷の印刷物に割込印刷物が混入することを軽減させることが目的である。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置において、前記情報処理装置からの情報を前記複数の画像形成装置に所定の比率に応じて印刷ジョブを割り振る印刷ジョブ分散手段と、前記印刷ジョブ分散手段により分散された分散印刷ジョブを夫々の画像形成装置に送信する分散ジョブ送信手段と、前記分散印刷ジョブの印刷が開始された後、所定の条件により前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブが中断される通知を受信した場合、該画像形成装置に分散印刷ジョブの印刷の停止命令を送信する分散ジョブ制御手段と、前記停止命令を送信した画像形成装置で中断される分散印刷ジョブの内、未印刷の分散印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散手段と、前記ジョブ再分散手段により割り振られる印刷ジョブを、前記停止命令を送信した画像形成装置以外の画像形成装置に送信する再分散ジョブ送信手段と、を有する。
【発明の効果】
【0009】
本発明では、分散印刷実施中に、割り込みジョブが発生した場合でも、分散印刷の印刷物に異なるジョブの印刷物が混入を減らすことにより、ユーザの印刷物回収の手間を軽減できる。
【図面の簡単な説明】
【0010】
【図1】本発明の印刷管理サーバおよびプリンタを適用可能なプリントシステムの構成の一例を示すシステム構成図である。
【図2】図1に示したクライアント端末,印刷管理サーバに適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【図3】図1に示した複合機300のハードウェア構成の一例を示すブロック図である。
【図4】図1に示した印刷管理システムのソフトウウェア構成の一例を示すブロック図である。
【図5】本発明の実施形態における印刷管理装置の第1の制御処理手順の一例を示すフローチャートである。
【図6】本発明の実施形態における分散印刷選択画面の一例を示す模式図である。
【図7】本発明の実施形態における分散印刷プリンタ指定画面の一例を示す模式図である。
【図8】本発明の実施形態における印刷管理装置の第2の制御処理手順の一例を示すフローチャートである。
【図9】本発明の実施形態における印刷管理装置の第3の制御処理手順の一例を示すフローチャートである。
【図10】本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【図11】本発明の実施形態における印刷管理装置の第4の制御処理手順の一例を示すフローチャートである。
【図12】本発明の第1の実施形態を模式的に示した例である。
【図13】本発明の実施形態における印刷管理装置の第5の制御処理手順の一例を示すフローチャートである。
【図14】本発明の第2の実施形態を模式的に示した例である。
【図15】本発明の第2の実施形態の印刷物を模式的に示した例である。
【図16】本発明の実施形態における印刷管理装置の第6の制御処理手順の一例を示すフローチャートである。
【図17】本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【図18】本発明の実施形態における印刷管理装置の第7の制御処理手順の一例を示すフローチャートである。
【図19】本発明の第2の実施形態の印刷物を模式的に示した例である。
【図20】本発明の実施形態における印刷管理装置の第8の制御処理手順の一例を示すフローチャートである。
【図21】本発明の画像形成装置の操作パネルを表したイメージ図の一例である。
【図22】本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【図23】本発明に係るプログラム生成装置で読み出し可能な各種データ処理プログラムを格納する記録媒体のメモリマップを説明する図である。
【発明を実施するための形態】
【0011】
<第1の実施形態>
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0012】
図1は、本発明の印刷管理サーバおよびプリンタを適用可能なプリントシステムの構成の一例を示すシステム構成図である。
【0013】
図1に示すように、本実施形態のプリントシステムは、1又は複数のクライアント端末400(例えば、ユーザ毎)、複数のプリンタ300(プリンタA300a,プリンタB300b,・・・),印刷管理サーバ100がローカルエリアネットワーク(LAN)500を介して接続され、情報の送受信を行う構成となっている。なお、印刷管理サーバ、クライアント端末、プリンタの接続数は図に示されている数以上あっても構わない。また接続するプリンタは、同じ機能を備えているならば同一種類で揃える必要は無い。
【0014】
以下、クライアント端末およびプリンタの共通の説明をする際は、クライアント端末400、プリンタ300を用いて説明する。
【0015】
なお、分散印刷を制御するシステムは、印刷管理サーバ100、クライアント端末400、プリンタ300のいずれでも良い。
【0016】
印刷管理サーバ100が分散印刷を制御するシステムの場合は、印刷管理サーバ100はプリントサーバとして機能する。印刷管理サーバ100はクライアント端末400から印刷ジョブを受信し、分散させた印刷ジョブを各プリンタに送信する。
【0017】
クライアント端末400が分散印刷を制御するシステムの場合は、クライアント端末400が分散させた印刷ジョブを各プリンタに送信する。
【0018】
プリンタ300が分散印刷を制御するシステムの場合は、プリンタ300が分散印刷の親機として機能する。プリンタ300はクライアント端末400から印刷ジョブを受信し、分散させた印刷ジョブを子機となる各プリンタに送信する。
【0019】
印刷管理サーバ100には、プリンタドライバがインストールされ、クライアント端末400から受信した印刷データを内部のメモリに蓄積し、プリンタ300からの出力指示に基づいて当該プリンタドライバを介してプリンタへ印刷データを送信する。
【0020】
以下、図2を用いて、図1に示したクライアント端末,印刷管理サーバに適用可能な情報処理装置のハードウェア構成について説明する。
【0021】
図2は、図1に示したクライアント端末,印刷管理サーバに適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【0022】
図2において、201はCPUで、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【0023】
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【0024】
また、205は入力コントローラで、キーボード(KB)209や不図示のマウス等のポインティングデバイス等からの入力を制御する。206はビデオコントローラで、CRTディスプレイ(CRT)210等の表示器への表示を制御する。なお、図2では、CRT210と記載しているが、表示器はCRTだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【0025】
207はメモリコントローラで、ブートプログラム,各種のアプリケーション,フォントデータ,ユーザファイル,編集ファイル,各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。
【0026】
208は通信I/Fコントローラで、ネットワーク(例えば、図1に示したLAN500)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
【0027】
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0028】
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明も後述する。
【0029】
次に、図3を用いて、図1に示したプリンタ300のハードウェア構成について説明する。
【0030】
図3は、図1に示した複合機300のハードウェア構成の一例を示すブロック図である。
【0031】
図3において、316はコントローラユニットで、画像出力デバイスとして機能するプリンタ部312と接続する一方、LAN(例えば、図1に示したLAN500)や公衆回線(WAN)(例えば、PSTNまたはISDN等)と接続することで、画像データやデバイス情報の入出力を行う。
【0032】
コントローラユニット316において、301はCPUで、システム全体を制御するプロセッサである。302はRAMで、CPU301が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
【0033】
また、プリンタのCPU301は、プリンタ部312からプリンタの状態が正常か、紙切れか、ジャムをおこしているかなどの情報を取得し、RAM302に保持する。LAN500や外部I/Fなどを通じて、クライアント端末400や印刷管理サーバ100からプリンタの状態の情報を要求されると、プリンタのCPU301はプリンタの状態の情報(正常か、紙切れか、紙詰まりかなど)を提供する。
【0034】
303はROMで、システムのブートプログラムや各種制御プログラムが格納されている。304はハードディスクドライブ(HDD)で、システムを制御するための各種プログラム,画像データ等を格納する。
【0035】
307は操作部インタフェース(操作部I/F)で、操作部(キーボード)308とのインタフェース部である。また、操作部I/F307は、操作部308から入力したキー情報をCPU301に伝える役割をする。
【0036】
305はネットワークインタフェース(Network I/F)で、ネットワーク(LAN)500に接続し、データの入出力を行う。306はモデム(MODEM)で、公衆回線に接続し、FAXの送受信等のデータの入出力を行う。
【0037】
318は外部インタフェース(外部I/F)で、USB、IEEE1394,プリンタポート,RS−232C等の外部入力を受け付けるI/F部である。以上のデバイスがシステムバス309上に配置される。
【0038】
320はイメージバスインタフェース(IMAGE BUS I/F)であり、システムバス309と画像データを高速で転送する画像バス315とを接続し、データ構造を変換するバスブリッジである。
【0039】
画像バス315は、PCIバスまたはIEEE1394で構成される。画像バス315上には以下のデバイスが配置される。
【0040】
310はラスタイメージプロセッサ(RIP)で、例えば、PDLコード等のベクトルデータをビットマップイメージに展開する。311はプリンタインタフェース(プリンタI/F)で、プリンタ部312とコントローラユニット316を接続し、画像データの同期系/非同期系の変換を行う。
【0041】
317は画像処理部で、入力画像データに対し補正、加工、編集を行ったり、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。また、これに加えて、画像処理部317は、画像データの回転や、多値画像データに対してはJPEG、2値画像データはJBIG、MMR、MH等の圧縮伸張処理を行う。
【0042】
プリンタ部312は、ラスタイメージデータを用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、CPU301からの指示によって開始する。なお、プリンタ部312には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。
【0043】
操作部308は、LCD表示部を有し、文字列を表示(印刷状態や印刷している文書名の表示)させるとともに、表示してあるキーが押されると操作部I/F307を介してCPU301に伝える。操作部308には、図21で説明する分散印刷再開ボタン(オンラインキー)などがある。
【0044】
尚、表示部はプリンタによって表示性能が異なり、タッチパネルを介して操作をできるプリンタや、単に液晶画面を備え文字列を表示(印刷状態や印刷している文書名の表示)させるだけのプリンタなどによって本発明は構成されている。
【0045】
以上のような構成によって、プリンタ300は、LAN500や外部I/Fから受信した印刷データをプリンタ部312により印刷出力することができる。
【0046】
次に、図4を用いて、図1に示した印刷管理システムのソフトウェア構成について説明する。
【0047】
図4は、図1に示した印刷管理システムのソフトウウェア構成の一例を示すブロック図である。
【0048】
図4において、クライアント端末(情報処理装置)100は、印刷データ401を保持しており、印刷データ401を最終的に分散印刷プリンタ(画像形成装置)300a〜300cに出力させる。
【0049】
まず、クライアント端末100は分散印刷プリンタ300a〜300cに所定の比率で分散印刷させるために、印刷管理装置400に印刷データ401を送る。送られた印刷データ401は、印刷管理装置400において、印刷ジョブ記憶部409に記憶され、印刷ジョブ分散部402で印刷ジョブに分散された後、分散された分散印刷ジョブを分散ジョブ送信部403により各プリンタに送信する。
【0050】
分散印刷が開始された後で、少なくとも1台のプリンタ(300aとする)に割込印刷などの分散印刷を中断するジョブが割り込んだ場合、印刷管理装置400の分散ジョブ制御部404は割込ジョブによる分散印刷ジョブの中断通知をプリンタ300aから受け取り、以後、プリンタ300aの分散印刷ジョブの印刷を停止する命令をプリンタ300aに送信する。
【0051】
次に、ジョブ再分散部405は分散印刷ジョブの印刷を停止したプリンタ300aの未印刷の分散印刷ジョブを印刷ジョブ記憶部409から読み出し、プリンタ300a以外の分散印刷プリンタ(この場合、300b及び300c)に未印刷の分散印刷ジョブを割り振る。
【0052】
再分散ジョブ送信部406は、割り振った分散印刷ジョブをプリンタ300a以外の分散印刷プリンタ300b、300cに送信する。
【0053】
分散印刷プリンタ300b、300cは、分散ジョブ送信部403で送信された分散印刷ジョブと、再分散ジョブ送信部406から送信された300aで未印刷の分散印刷ジョブとを出力する。一方、割込印刷をされたプリンタ300aは割込印刷により印刷を中断されるまでの分散印刷ジョブの印刷物と、割込印刷の印刷物とを出力するが、割込印刷が終了した後で分散印刷ジョブを再開しない為、印刷物の混在を極力少なくできる。
【0054】
次に、印刷管理装置400の基本的な処理フローについて、図5を用いて説明する。
【0055】
図5は、本発明の実施形態における印刷管理装置の第1の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S501〜S509は各ステップを示す。
【0056】
図5は、印刷管理装置400がクライアント端末100から印刷命令を受信することにより開始される。
【0057】
まず、印刷管理装置400のCPU201(以下、印刷管理装置400)はクライアント端末100から印刷命令を受信すると、ステップS501において、クライアント端末100から印刷データ401(印刷ジョブ)を受信する。
【0058】
次に、印刷管理装置400は、ステップS502において、クライアント端末100に分散印刷を指定するか、分散印刷の場合は最低分散台数を何台にするかを入力させる画面情報を送信する。送信する画面イメージについて図6を用いて説明する。
【0059】
図6は、本発明の実施形態における分散印刷選択画面の一例を示す模式図であり、クライアント端末100のCRT210に表示される。
【0060】
図6における601は印刷部数の入力項目であり、ユーザは出力したい部数を入力する。
【0061】
602は複数のプリンタで分散印刷を行うかどうかをユーザに指定させるチェックボックスであり、602の場合はチェックが入っているため、分散印刷を行う設定になっている。
【0062】
603は分散印刷を行う場合のプリンタの最低分散台数を指定する入力項目になっている。最低分散台数とは、最低限の分散印刷を行うプリンタの台数を指定する。
【0063】
604は印刷のための処理を開始するボタンであり、605は印刷の処理をキャンセルするボタンである。
図5のフローチャートの説明に戻る。
【0064】
図5のステップS503において、印刷管理装置400は、分散印刷が指定されたかを判断する。具体的には、図6の602のチェックボックスにチェックが付いているかにより判断する。
【0065】
ステップS503において、分散印刷が指定されていなかった場合は、通常印刷の処理を実行するため、ステップS504に移行して、通常の図示しない印刷を実行する。
【0066】
また、ステップS501で受信した印刷ジョブが1ページのジョブの場合もS503において、通常印刷の処理を実行するため、ステップS504へ移行する。
【0067】
一方、ステップS503において、分散印刷が指定されている場合、次のステップS505へと処理を移行する。
【0068】
ステップS505において、印刷管理装置400は印刷管理装置400が管理しているプリンタと通信して、プリンタを検索し、接続状態やプリンタの状況などを把握する。把握したプリンタの接続状態やプリンタの状況などを、次のステップS506において、クライアント端末100に送信し、分散印刷させるプリンタをユーザに選択させる。ステップS505におけるプリンタと通信した結果のデータ及びステップS506における分散印刷プリンタの指定画面のイメージについて図7を用いて説明する。
【0069】
図7は、本発明の実施形態における分散印刷プリンタ指定画面の一例を示す模式図であり、クライアント端末100のCRT210に表示される。
【0070】
図7における701は、プリンタの接続状態並びにプリンタの状況などを表示している。702はユーザにより分散印刷を実行するプリンタを指定させるチェックボックスであり、図7の場合は、プリンタA、プリンタB、プリンタCがユーザにより指定されている状態である。
【0071】
なお、この実施例では、分散印刷を実行するプリンタをユーザにより図7のように指定させているが、印刷管理装置400で自動的に分散印刷を実行するプリンタを指定しても良い。
【0072】
また、図7における703の欄はクライアント端末100に直接接続されているUSBプリンタであり、印刷管理装置400のCPU201は、プリンタ300と通信する時と同じように、クライアント端末100に通信して、クライアント端末100がUSBプリンタから情報を取得し、印刷管理装置400にデータを送信することにより、703の情報を取得する。
図5のフローチャートの説明に戻る。
ステップS506の処理が終わると、ステップS507に移行する。
【0073】
ステップS507において、印刷管理装置400は、S501でクライアント端末100から受信した印刷ジョブが部数分散印刷なのか、ページ分散印刷なのかを判断する。
【0074】
部数分散印刷(以下、部数分散)とは、同じ資料を複数部数印刷するジョブについて複数のプリンタに印刷ジョブを分散して印刷する分散印刷を示しており、複数部数であれば、複数ページを一つのジョブとして複数部数、分散して印刷する場合であっても構わない。
【0075】
一方、ページ分散印刷(以下、ページ分散)とは連番ページで構成された印刷ジョブを複数のプリンタに印刷ジョブを分散して印刷する分散印刷を示しており、連番ページで構成された印刷ジョブであれば、複数のジョブであっても一つのジョブであっても構わない。
【0076】
部数分散印刷なのか、ページ分散印刷なのかは、クライアント端末100から送信される印刷ジョブによって判断する。1ページのジョブを複数部数印刷する場合や、ステープル固定可能なプリンタによるステープル印刷の場合は部数分散印刷とするが、連番ページで構成される印刷ジョブでステープル固定できないプリンタによる印刷の場合はページ分散印刷に該当する。
【0077】
ステップS507において、部数分散印刷と判断された場合は、ステップS508に移行し、ページ分散印刷と判断された場合は、ステップS509に処理を移行する。
【0078】
ステップS508の処理について、図8の詳細なフローチャートで説明する。
【0079】
図8は、本発明の実施形態における印刷管理装置の第2の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S801〜S805は各ステップを示す。
【0080】
まず、図8のステップS801において、印刷管理装置400は、ステップS502でユーザより入力された部数aと、ステップS506で指定されたプリンタ台数bとから、各プリンタに印刷させる部数を算出する。図8の場合は、プリンタ台数bに均等に分ける場合を想定して、各プリンタへの割当部数cをc=a/bとしたが、プリンタの負荷や、プリンタの性能、インクやトナーの残量などにより、各プリンタに割り当てる部数を調整しても良い。
【0081】
次に、ステップS802において、印刷管理装置400は、ステップS801で算出した各プリンタ毎の印刷部数分の分散印刷ジョブを各プリンタに送信して、ステップS803に移行する。
【0082】
ステップS803において、印刷管理装置400は、分散印刷を実行しているプリンタから、分散印刷より優先順位の高い割込ジョブにより、分散印刷ジョブが中断されていないかを判断する。この判断には、印刷管理装置400が定期的にプリンタにポーリングを行う方法や、プリンタ側に割込ジョブが発生した際に、プリンタ側から印刷管理装置400に分散印刷ジョブ中断の情報を送るなどの方法がある。
【0083】
ステップS803において、分散印刷を実行しているプリンタの分散印刷ジョブが中断されていないと判断した場合は、ステップS805に移行し、分散印刷を実行している全プリンタのジョブが終了するまで、ステップS803に戻る動作を繰り返す。
【0084】
一方、ステップS803において分散印刷を実行しているプリンタの分散印刷ジョブが中断されていると判断した場合、ステップS804へ移行する。ステップS804の処理について、図9の詳細なフローチャートで説明する。
【0085】
図9は、本発明の実施形態における印刷管理装置の第3の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S901〜S904は各ステップを示す。
【0086】
まず、図9のステップS901において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタの現在の印刷部数eを取得する。
【0087】
取得した現在の印刷部数eは図10で説明する印刷予定/済管理テーブルで管理される。
【0088】
図10は、本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【0089】
図10の1001の行には3台のプリンタに部数分散印刷をする際の予定印刷部数が入力されている。1002は、プリンタAの印刷部数が10部の状態で、プリンタAに割込印刷が入った状態を示す。
図9のフローチャートの説明に戻る。
【0090】
次に、ステップS902において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにする。この分散印刷ジョブの印刷停止命令により、印刷物の混在を極力少なくできる。
【0091】
次に、ステップS903において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタの未印刷部数f=c−eを算出し、次のステップS904へと処理を移行する。ステップS904の処理について、図11の詳細なフローチャートで説明する。
【0092】
図11は、本発明の実施形態における印刷管理装置の第4の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1101〜S1106は各ステップを示す。
【0093】
まず、図11のステップS1101において、印刷管理装置400は、分散印刷プリンタの台数bを分散印刷ジョブが中断されたプリンタの台数分だけ減算する。
【0094】
次に、ステップS1102において、印刷管理装置400は、残った分散印刷プリンタの台数で、分散印刷ジョブが中断されたプリンタの未印刷部数fを割り振る。図11の場合は、プリンタ台数bに均等に分ける場合を想定して、各プリンタへの割当部数gをg=f/bとしたが、プリンタの負荷や、プリンタの性能、インクやトナーの残量などにより、各プリンタに割り当てる部数を調整しても良い。
【0095】
ステップS1103において、印刷管理装置400は、残った分散印刷プリンタに割り当てた割当部数gを分散印刷ジョブとして追加で割り振る。割り振った結果を示した印刷予定/済管理テーブルが、図10の1003である。
【0096】
図10の1003は、プリンタAに割込印刷が入った状態で、プリンタAで印刷しなかった残り20部の印刷物をプリンタB及びプリンタCに割り振って印刷することを示している。1004に20部の印刷物の内の1/2である10部が割り振られている。
【0097】
次に、ステップS1104において、印刷管理装置400は、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であるかどうかを判断する。
【0098】
ステップS1104で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以上であれば、ステップS1106に移行し、現在の分散印刷ジョブの優先度のままで、追加部数gだけ、分散印刷ジョブを送信する。
【0099】
一方、ステップS1104で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であれば、残った分散印刷プリンタの分散印刷ジョブの優先度を最大にして、割込ジョブが入らないように設定する。その後、ステップS1106において、追加の分散印刷ジョブとともに印刷ジョブの優先度を最大にして、分散印刷ジョブを送信する。
【0100】
上記のように、分散印刷ジョブの優先度を最大に設定することにより、最低分散印刷台数以上のプリンタが分散印刷している状態では割込印刷ジョブを受け付けるが、最低分散印刷台数以下のプリンタしか分散印刷に対応していない場合は、割込印刷ジョブを受け付けないように設定し、確実に分散印刷が行えるようにすることが可能となる。
図12は、本発明の第1の実施形態を模式的に示した例である。
【0101】
図12の上図は通常の分散印刷の例であり、90部の印刷物をプリンタAからプリンタCの3台に30部ずつ分散印刷された結果の例である。1201にあるように、30部ずつ割り振られて印刷されている。
【0102】
図12の下図はプリンタAに割込印刷ジョブが発生した場合の分散印刷の例であり、プリンタAを10部印刷した後で、プリンタAに割込印刷ジョブ1202が発生した場合を示している。
【0103】
図12の下図では、プリンタAで10部しか印刷していないので、残りの20部を1203のようにプリンタB及びプリンタCに割り振って印刷している。
【0104】
以上の構成により、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにすることにより、印刷物の混在を極力少なくできる。
【0105】
また、最低分散印刷台数を指定することにより、確実に分散印刷が行うことが可能となる。
<第2の実施形態>
【0106】
第1の実施形態では、図5のステップS507において、印刷ジョブが部数分散印刷と判断された場合を説明したが、第2の実施形態では、図5のステップS507でページ分散印刷と判断された場合について説明する。
【0107】
印刷管理装置400は、ステップS507において、印刷ジョブ401がページ分散印刷であると判断した場合、ステップS509に処理を移行する。ステップS509の処理について、図13の詳細なフローチャートで説明する。
【0108】
図13は、本発明の実施形態における印刷管理装置の第5の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1301〜S1308は各ステップを示す。
【0109】
まず、図13のS1301において、印刷管理装置400は、分散印刷プリンタの内、フェイスダウンプリンタとフェイスアッププリンタの対を1組としてプリンタを検索する。フェイスダウンプリンタとは、印刷物の出力の際に表面が下向きで出力される(フェイスダウンプリントが可能な)プリンタであり、フェイスアッププリンタとは、フェイスダウンプリンタとは逆に印刷物の出力の際に表面が上向きで出力される(フェイスアッププリントが可能な)プリンタである。
【0110】
通常のプリンタはフェイスダウンプリントが可能であるので、フェイスアッププリントが可能なプリンタかどうかが図7の704のように予め設定されている。図7の704によりフェイスアッププリントが可能なプリンタとフェイスダウンプリントが可能なプリンタとを1組として検索する。図7の場合は、705にある組み合わせ「1.」と入力されたプリンタ同士を1組として、検索している。
【0111】
次に、ステップS1302において、印刷管理装置400は、分散印刷を行う総ページ数a(=連番ページのページ数×印刷部数)とステップS502で指定された分散印刷プリンタの台数bから、各プリンタに印刷させる部数を算出する。図13の場合は、プリンタ台数bに均等に分ける場合を想定して、各プリンタへの割当部数cをc=a/bとしたが、プリンタの負荷や、プリンタの性能、インクやトナーの残量などにより、各プリンタに割り当てる部数を調整しても良い。
【0112】
次に、ステップS1303において、印刷管理装置400は、組になっているプリンタの内のフェイスダウンプリント可能なプリンタに、昇順で分散印刷ジョブを設定する。
【0113】
続いて、ステップS1304において、印刷管理装置400は、組になっているプリンタの内のフェイスアッププリント可能なプリンタに、降順で分散印刷ジョブを設定する。
【0114】
次に、ステップS1305において、印刷管理装置400は、夫々の分散印刷プリンタに、夫々のページ順で分散印刷ジョブを送信する。
【0115】
ステップS1303とステップS1304の構成により実現される第2の実施形態を、図14及び図15により説明する。
図14は、本発明の第2の実施形態を模式的に示した例である。
【0116】
図14は、90ページの資料を3つのプリンタに分散印刷している例である。
【0117】
図14の1401では、フェイスダウンプリントが可能なプリンタAにP1(1ページ)から順番にP30(30ページ)までを昇順に出力する。(ステップS1303の分散印刷ジョブ)一方、フェイスアッププリントが可能なプリンタBには1402のように、P60(60ページ)から順番にP31(31ページ)までを降順に出力する。残った組にならなかった1台のプリンタCには1403のようにP61(61ページ)から昇順でP90(90ページ)までを出力する。この手段により、図15で説明するページ分散印刷が実現できる。
【0118】
図15は、本発明の第2の実施形態の印刷物を模式的に示した例である。
【0119】
図15は図14の印刷物1401、1402、1403のみを抜き出した図であり、印刷物の出力順も考慮している。
【0120】
図15の1401の印刷物は印刷物の表面が下(すなわちフェイスダウンプリント)であり、引き続く1402の印刷物は表面が上(すなわちフェイスアッププリント)である。1401と1402をページ順を連続して並べるために、ユーザが1402の印刷物の表面を1401の裏面と合わせるように矢印1501のように印刷物を重ねると、1503のようにページ順が1401と1402と共に同じソート順に並ぶ。同様に、1402と1403を連続したページ順に並べるために、ユーザが矢印1502のように印刷物を重ねると、1504のようにページ順が1402と1403で同じソート順に並ぶ。
【0121】
以上の手順により、本願の印刷管理装置400において、ページ分散印刷を実現する。
図13のフローチャートの説明に戻る。
【0122】
図13のステップS1306において、印刷管理装置400は、ページ分散印刷を実行しているプリンタから、ページ分散印刷より優先順位の高い割込ジョブにより、ページ分散印刷ジョブが中断されていないかを判断する。この判断には、印刷管理装置400が定期的にプリンタにポーリングを行う方法や、プリンタ側に割込ジョブが発生した際に、プリンタ側から印刷管理装置400に分散印刷ジョブ中断の情報を送るなどの方法がある。
【0123】
ステップS1306において、ページ分散印刷を実行しているプリンタの分散印刷ジョブが中断されていないと判断した場合は、ステップS1308に移行し、分散印刷を実行している全プリンタのジョブが終了するまで、ステップS1306に戻る動作を繰り返す。
【0124】
一方、ステップS1306においてページ分散印刷を実行しているプリンタの分散印刷ジョブが中断されていると判断した場合、ステップS1307へ移行する。ステップS1307の処理について、図16の詳細なフローチャートで説明する。
【0125】
図16は、本発明の実施形態における印刷管理装置の第6の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1601〜S1604は各ステップを示す。
【0126】
まず、図16のステップS1601において、印刷管理装置400は、ページ分散印刷ジョブが中断されたプリンタの現在の印刷ページ数eを取得する。
【0127】
取得した現在の印刷ページ数eは図17で説明する印刷予定/済管理テーブルで管理される。
【0128】
図17は、本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【0129】
図17の1701の行には3台のプリンタに部数分散印刷をする際の予定印刷部数が入力されている。1702は、プリンタAの印刷部数が10ページの状態で、プリンタAに割込印刷が入った状態を示す。
図16のフローチャートの説明に戻る。
【0130】
次に、ステップS1602において、印刷管理装置400は、ページ分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにする。
【0131】
次に、ステップS1603において、印刷管理装置400は、ページ分散印刷ジョブが中断されたプリンタの未印刷ページf=c−eを算出し、次のステップS1604へと処理を移行する。ステップS1604の処理について、図18の詳細なフローチャートで説明する。
【0132】
図18は、本発明の実施形態における印刷管理装置の第7の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1801〜S1806は各ステップを示す。
【0133】
まず、図18のステップS1801において、印刷管理装置400は、ページ分散印刷プリンタの台数bを分散印刷ジョブが中断されたプリンタの台数分だけ減算する。
【0134】
なお、印刷管理装置400からページ分散印刷プリンタに、より優先順位の高い割込ジョブを送信する場合は、ステップS1301で組として指定したプリンタの内の1台に、より優先順位の高い割込ジョブを送信するように制御する。
【0135】
次に、ステップS1802において、印刷管理装置400は、S1301で組として指定したプリンタの内、割込ジョブが送信されていないプリンタへ、未出力ページfのジョブを追加する。
図17で未出力ページのジョブを追加する場合を説明する。
【0136】
図17の1702のようにプリンタAで割込印刷が挿入された場合、未印刷ページであるP11(11ページ)からP30(30ページ)の印刷ジョブを、プリンタAと組になっているプリンタBのジョブとして追加する(1704)ことにより、プリンタBに出力させる。
【0137】
なお、ステップS1301で組として指定したプリンタで割込ジョブが送信されていないプリンタへ追加される未出力ページfのジョブ(1704)は、ページの出力順が分散印刷ジョブの中断されたプリンタと出力順が逆に設定される。
図18のフローチャートの説明に戻る。
【0138】
次に、ステップS1803において、印刷管理装置400は、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であるかどうかを判断する。
【0139】
ステップS1803で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以上であれば、ステップS1805に処理を移行する。一方、ステップS1803で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であれば、ステップS1804に処理を移行する。
【0140】
ステップS1804において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタ以外のページ分散印刷プリンタのページ分散印刷ジョブの優先度を最大に設定する。
【0141】
一方、ステップS1805において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタと組となるプリンタのみ、ページ分散印刷ジョブの優先度を最大に設定する。
【0142】
上記の優先度設定のように、ページ分散印刷ジョブの優先度を最大に設定することにより、最低分散印刷台数以上のプリンタが分散印刷している状態では、ページ分散印刷ジョブが割込印刷ジョブにより中断されたプリンタの代理印刷を行うプリンタのみ優先度を最大にし、最低分散印刷台数以下のプリンタしか分散印刷に対応していない場合は、割込印刷ジョブを受け付けないように設定し、確実に分散印刷が行えるようにすることが可能となる。
【0143】
なお、この設定以後に印刷管理装置400が割込印刷を挿入する場合は、一度分散印刷ジョブが中断されたプリンタに優先的に割込印刷ジョブを行わせるようにする。割込印刷ジョブを一度分散印刷ジョブが中断されたプリンタに送信することにより、元のページ分散印刷の出力順が乱されることなく印刷が可能となる。
【0144】
ステップS1804及びステップS1805の処理が済むと、ステップS1806へ処理を移行する。
【0145】
ステップS1806において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタと組となるプリンタに未出力ページfのジョブを送信する。また、印刷管理装置400は、ステップS1804やステップS1805で指定されたプリンタにおけるページ分散印刷ジョブの優先度を設定する。この実施形態を、図14の下図及び図19により説明する。
【0146】
図14の下図は、図14の上図と同じ印刷条件で、プリンタAに割込印刷が挿入された場合の例を説明した図である。
【0147】
図14の下図の場合、プリンタAを10ページ印刷した後で、プリンタAに割込印刷ジョブ1404が発生した場合を示している。プリンタAで発生した割込印刷のために、プリンタAに印刷するはずの残りの11ページから30ページの印刷ジョブを、プリンタAと組になっているプリンタBに印刷させた例が図14の1405である。
【0148】
1405の印刷ジョブはプリンタBで印刷されている1402の分散印刷ジョブの出力順と同じ順序で出力させるため、プリンタAでの出力順と逆になり、また、フェイスダウンプリントだった印刷結果も、フェイスアッププリントの印刷結果となる。この手段により、図19で説明するように、ページ分散印刷に割込印刷が挿入された場合でも、ページ順を崩さずに印刷結果を得ることができる。
【0149】
図19は、本発明の第2の実施形態の印刷物を模式的に示した例である。
【0150】
図19は図14の印刷物1406、1405、1402、1403のみを抜き出した図であり、印刷物の出力順も考慮している。
【0151】
図15と同様に、図19の場合もプリンタAの印刷物1406とプリンタBの印刷物1402+1405を表面が揃うように、ユーザが1405の印刷物の表面を1406の裏面と合わせるように矢印1901のように印刷物を重ねると、1903のようにページ順が1406、1405、1402として、同じソート順に並ぶ。同様に、1402と1403を連続したページ順に並べるために、ユーザが矢印1902のように印刷物を重ねると、1904のようにページ順が1402と1403で同じソート順に並ぶ。
【0152】
以上の手順により、ページ分散印刷に割込印刷が挿入された場合でも、ページ順を崩さずに印刷結果を得ることができる。
<第3の実施形態>
【0153】
第1の実施形態及び第2の実施形態では、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信することにより、印刷物の混在を極力少なくすることを可能としたが、第3の実施形態では、割込印刷を行ったユーザが割込印刷物を取り去った後で、分散印刷ジョブを再開する場合を説明する。
第3の実施形態を図20のフローチャートで説明する。
【0154】
図20は、本発明の実施形態における印刷管理装置の第8の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S2001〜S2004は各ステップを示す。
【0155】
図20のフローチャートは、割込印刷により分散印刷が中断されたプリンタからの要求により開始される。
【0156】
図20のステップS2001において、印刷管理装置400は、割込印刷により分散印刷が中断されたプリンタから、分散印刷再開の命令を受信する。
【0157】
分散印刷が中断されたプリンタの操作パネルのイメージ図を図21を用いて説明する。
【0158】
図21は、本発明の画像形成装置(プリンタ)の操作パネルを表したイメージ図の一例である。
【0159】
図21の2101には、分散印刷が中断されて割込印刷が終了した段階で、「分散印刷再開はオンラインキーを押下」というメッセージを2102の点灯と共に表示している。
【0160】
図21の表示状態で、ユーザが割込印刷物を取り除き、オンラインキー2103を押下すると、ステップS2001の分散印刷再開命令が、印刷管理装置400に送信される。
図20のフローチャートの説明に戻る。
【0161】
次にステップS2002において、印刷管理装置400は、分散印刷プリンタ全ての現在の出力部数を取得する。出力部数の取得例を図22を用いて説明する。
【0162】
図22は、本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【0163】
図22の2201の行には、一旦分散印刷が中断された後の予定印刷部数が入力されている。
【0164】
2202の行には、ステップS2002で取得した分散印刷プリンタの現在の出力部数が入力されている。
図20のフローチャートの説明に戻る。
【0165】
図20のステップS2003において、印刷管理装置400は、分散印刷プリンタで出力済の印刷物を総和し(=h)、総印刷部数(=a)から引いた値を、新たに分散印刷プリンタの台数を1台追加した台数で割った値kを算出する(k=(a−h)/(b+1))。図22を用いて詳細を説明する。
【0166】
図22の2203は、2200の印刷予定/済管理テーブルの状態で、プリンタAが分散印刷を再開した場合の印刷予定/済管理テーブルの例である。
【0167】
2200では、現印刷部数の総和が10部+19部+19部=48部であり、総印刷部数90部から減算した値を分散印刷プリンタの台数3台で割ると、1台のプリンタ毎に14部ずつ分けられる。2204の14部が該当する。
図20のフローチャートの説明に戻る。
【0168】
図20のステップS2004において、印刷管理装置400は、分散印刷を中断していたプリンタを含めた分散印刷プリンタに、k部の分散印刷ジョブを送信する。
【0169】
このように、第3の実施形態により、割込印刷を行ったユーザが割込印刷物を取り去った後で、分散印刷ジョブを再開することが可能になる。
【0170】
なお、請求項1に記載の所定の条件とは、他の情報処理装置からの割込印刷でも良いし、印刷管理装置で発生した割込印刷でも良い。また、プリンタ側での何らかのトラブル(紙詰まり、紙切れ、インク切れ、トナー切れなど)でも良い。
【0171】
また、印刷管理装置は、クライアント端末とネットワークを通してプリンタと繋がっていて、印刷状況を管理しても良いし、クライアント端末から直接プリンタに繋がっているプリンタの印刷状況を管理しても良い(図7の702)。
【0172】
なお、上記各実施形態のいずれか複数を組み合わせた構成も全て本発明に含まれるものである。
【0173】
以上の構成により、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにすることにより、印刷物の混在を極力少なくできる。
【0174】
以下、図23に示すメモリマップを参照して本発明に係るプログラム生成装置で読み出し可能なデータ処理プログラムの構成について説明する。
【0175】
図23は、本発明に係るプログラム生成装置で読み出し可能な各種データ処理プログラムを格納する記録媒体のメモリマップを説明する図である。
【0176】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0177】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0178】
本実施形態における図5、図8、図9、図11、図13、図15、図18、図20に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0179】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0180】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0181】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0182】
プログラムを供給するための記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0183】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0184】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
【0185】
また、本発明のプログラムを暗号化してCD−ROM等の記録媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0186】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0187】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0188】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0189】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0190】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【符号の説明】
【0191】
100 情報処理装置
300 画像形成装置
400 印刷管理装置
401 印刷データ
402 印刷ジョブ分散部
403 印刷ジョブ送信部
404 分散ジョブ制御部
405 ジョブ再分散部
406 再分散ジョブ送信部
407 画像形成装置組管理部
408 印刷予定/済管理テーブル
409 印刷ジョブ記憶部
【技術分野】
【0001】
本発明は、印刷処理を複数の画像形成装置に分散して印刷する分散印刷に関するものである。
【背景技術】
【0002】
従来、画像形成装置を用いて大量印刷ジョブを処理するものとしては、クラスタプリント技術が挙げられる。クラスタプリント技術は、大量印刷ジョブの処理を1台の画像形成装置にて処理するのではなく、複数台の画像形成装置に1つの印刷ジョブを分割して投入することにより、1台で処理するよりも早く印刷物を得ることができるものである。
【0003】
また、分散印刷した処理状況や処理結果を一台の画像形成装置で表示し、操作できるようにすることで、印刷物回収の効率化や、各画像形成装置で処理されている分散印刷中のジョブ操作向上を図る方法も提示されている(特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−281593号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1において、分散印刷ジョブを実施している画像形成装置に割り込み印刷機能を用いて後続のジョブを優先して印刷した場合、分散印刷ジョブの処理結果の中に、異なるジョブの処理結果が含まれることになる。そのため、分散印刷の1ジョブの中に複数の割り込みジョブが発生した場合は、印刷物を回収する際に、割り込まれた印刷物を除去する作業が発生し、ユーザの作業が煩雑になる。
【0006】
また、特許文献1のように、分散印刷ジョブを投入するプリンタと分散印刷ジョブを投入しないプリンタとを予め分けておいて印刷する方法もあるが、分散印刷でないジョブが少ない場合、プリンタの稼働状態に偏りが出る。分散印刷ジョブを投入されたプリンタがフル稼働しているにもかかわらず、分散印刷ジョブが投入されていないプリンタが止まっているなど印刷処理の不効率を招く。
【0007】
本発明の目的は、上記課題を解決するためになされたものであり、本発明はプリンタの稼働率を上げつつ、分散印刷処理を実施中に割込印刷が発生した場合でも分散印刷の印刷物に割込印刷物が混入することを軽減させることが目的である。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置において、前記情報処理装置からの情報を前記複数の画像形成装置に所定の比率に応じて印刷ジョブを割り振る印刷ジョブ分散手段と、前記印刷ジョブ分散手段により分散された分散印刷ジョブを夫々の画像形成装置に送信する分散ジョブ送信手段と、前記分散印刷ジョブの印刷が開始された後、所定の条件により前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブが中断される通知を受信した場合、該画像形成装置に分散印刷ジョブの印刷の停止命令を送信する分散ジョブ制御手段と、前記停止命令を送信した画像形成装置で中断される分散印刷ジョブの内、未印刷の分散印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散手段と、前記ジョブ再分散手段により割り振られる印刷ジョブを、前記停止命令を送信した画像形成装置以外の画像形成装置に送信する再分散ジョブ送信手段と、を有する。
【発明の効果】
【0009】
本発明では、分散印刷実施中に、割り込みジョブが発生した場合でも、分散印刷の印刷物に異なるジョブの印刷物が混入を減らすことにより、ユーザの印刷物回収の手間を軽減できる。
【図面の簡単な説明】
【0010】
【図1】本発明の印刷管理サーバおよびプリンタを適用可能なプリントシステムの構成の一例を示すシステム構成図である。
【図2】図1に示したクライアント端末,印刷管理サーバに適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【図3】図1に示した複合機300のハードウェア構成の一例を示すブロック図である。
【図4】図1に示した印刷管理システムのソフトウウェア構成の一例を示すブロック図である。
【図5】本発明の実施形態における印刷管理装置の第1の制御処理手順の一例を示すフローチャートである。
【図6】本発明の実施形態における分散印刷選択画面の一例を示す模式図である。
【図7】本発明の実施形態における分散印刷プリンタ指定画面の一例を示す模式図である。
【図8】本発明の実施形態における印刷管理装置の第2の制御処理手順の一例を示すフローチャートである。
【図9】本発明の実施形態における印刷管理装置の第3の制御処理手順の一例を示すフローチャートである。
【図10】本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【図11】本発明の実施形態における印刷管理装置の第4の制御処理手順の一例を示すフローチャートである。
【図12】本発明の第1の実施形態を模式的に示した例である。
【図13】本発明の実施形態における印刷管理装置の第5の制御処理手順の一例を示すフローチャートである。
【図14】本発明の第2の実施形態を模式的に示した例である。
【図15】本発明の第2の実施形態の印刷物を模式的に示した例である。
【図16】本発明の実施形態における印刷管理装置の第6の制御処理手順の一例を示すフローチャートである。
【図17】本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【図18】本発明の実施形態における印刷管理装置の第7の制御処理手順の一例を示すフローチャートである。
【図19】本発明の第2の実施形態の印刷物を模式的に示した例である。
【図20】本発明の実施形態における印刷管理装置の第8の制御処理手順の一例を示すフローチャートである。
【図21】本発明の画像形成装置の操作パネルを表したイメージ図の一例である。
【図22】本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【図23】本発明に係るプログラム生成装置で読み出し可能な各種データ処理プログラムを格納する記録媒体のメモリマップを説明する図である。
【発明を実施するための形態】
【0011】
<第1の実施形態>
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0012】
図1は、本発明の印刷管理サーバおよびプリンタを適用可能なプリントシステムの構成の一例を示すシステム構成図である。
【0013】
図1に示すように、本実施形態のプリントシステムは、1又は複数のクライアント端末400(例えば、ユーザ毎)、複数のプリンタ300(プリンタA300a,プリンタB300b,・・・),印刷管理サーバ100がローカルエリアネットワーク(LAN)500を介して接続され、情報の送受信を行う構成となっている。なお、印刷管理サーバ、クライアント端末、プリンタの接続数は図に示されている数以上あっても構わない。また接続するプリンタは、同じ機能を備えているならば同一種類で揃える必要は無い。
【0014】
以下、クライアント端末およびプリンタの共通の説明をする際は、クライアント端末400、プリンタ300を用いて説明する。
【0015】
なお、分散印刷を制御するシステムは、印刷管理サーバ100、クライアント端末400、プリンタ300のいずれでも良い。
【0016】
印刷管理サーバ100が分散印刷を制御するシステムの場合は、印刷管理サーバ100はプリントサーバとして機能する。印刷管理サーバ100はクライアント端末400から印刷ジョブを受信し、分散させた印刷ジョブを各プリンタに送信する。
【0017】
クライアント端末400が分散印刷を制御するシステムの場合は、クライアント端末400が分散させた印刷ジョブを各プリンタに送信する。
【0018】
プリンタ300が分散印刷を制御するシステムの場合は、プリンタ300が分散印刷の親機として機能する。プリンタ300はクライアント端末400から印刷ジョブを受信し、分散させた印刷ジョブを子機となる各プリンタに送信する。
【0019】
印刷管理サーバ100には、プリンタドライバがインストールされ、クライアント端末400から受信した印刷データを内部のメモリに蓄積し、プリンタ300からの出力指示に基づいて当該プリンタドライバを介してプリンタへ印刷データを送信する。
【0020】
以下、図2を用いて、図1に示したクライアント端末,印刷管理サーバに適用可能な情報処理装置のハードウェア構成について説明する。
【0021】
図2は、図1に示したクライアント端末,印刷管理サーバに適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【0022】
図2において、201はCPUで、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【0023】
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【0024】
また、205は入力コントローラで、キーボード(KB)209や不図示のマウス等のポインティングデバイス等からの入力を制御する。206はビデオコントローラで、CRTディスプレイ(CRT)210等の表示器への表示を制御する。なお、図2では、CRT210と記載しているが、表示器はCRTだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【0025】
207はメモリコントローラで、ブートプログラム,各種のアプリケーション,フォントデータ,ユーザファイル,編集ファイル,各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。
【0026】
208は通信I/Fコントローラで、ネットワーク(例えば、図1に示したLAN500)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
【0027】
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0028】
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明も後述する。
【0029】
次に、図3を用いて、図1に示したプリンタ300のハードウェア構成について説明する。
【0030】
図3は、図1に示した複合機300のハードウェア構成の一例を示すブロック図である。
【0031】
図3において、316はコントローラユニットで、画像出力デバイスとして機能するプリンタ部312と接続する一方、LAN(例えば、図1に示したLAN500)や公衆回線(WAN)(例えば、PSTNまたはISDN等)と接続することで、画像データやデバイス情報の入出力を行う。
【0032】
コントローラユニット316において、301はCPUで、システム全体を制御するプロセッサである。302はRAMで、CPU301が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
【0033】
また、プリンタのCPU301は、プリンタ部312からプリンタの状態が正常か、紙切れか、ジャムをおこしているかなどの情報を取得し、RAM302に保持する。LAN500や外部I/Fなどを通じて、クライアント端末400や印刷管理サーバ100からプリンタの状態の情報を要求されると、プリンタのCPU301はプリンタの状態の情報(正常か、紙切れか、紙詰まりかなど)を提供する。
【0034】
303はROMで、システムのブートプログラムや各種制御プログラムが格納されている。304はハードディスクドライブ(HDD)で、システムを制御するための各種プログラム,画像データ等を格納する。
【0035】
307は操作部インタフェース(操作部I/F)で、操作部(キーボード)308とのインタフェース部である。また、操作部I/F307は、操作部308から入力したキー情報をCPU301に伝える役割をする。
【0036】
305はネットワークインタフェース(Network I/F)で、ネットワーク(LAN)500に接続し、データの入出力を行う。306はモデム(MODEM)で、公衆回線に接続し、FAXの送受信等のデータの入出力を行う。
【0037】
318は外部インタフェース(外部I/F)で、USB、IEEE1394,プリンタポート,RS−232C等の外部入力を受け付けるI/F部である。以上のデバイスがシステムバス309上に配置される。
【0038】
320はイメージバスインタフェース(IMAGE BUS I/F)であり、システムバス309と画像データを高速で転送する画像バス315とを接続し、データ構造を変換するバスブリッジである。
【0039】
画像バス315は、PCIバスまたはIEEE1394で構成される。画像バス315上には以下のデバイスが配置される。
【0040】
310はラスタイメージプロセッサ(RIP)で、例えば、PDLコード等のベクトルデータをビットマップイメージに展開する。311はプリンタインタフェース(プリンタI/F)で、プリンタ部312とコントローラユニット316を接続し、画像データの同期系/非同期系の変換を行う。
【0041】
317は画像処理部で、入力画像データに対し補正、加工、編集を行ったり、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。また、これに加えて、画像処理部317は、画像データの回転や、多値画像データに対してはJPEG、2値画像データはJBIG、MMR、MH等の圧縮伸張処理を行う。
【0042】
プリンタ部312は、ラスタイメージデータを用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、CPU301からの指示によって開始する。なお、プリンタ部312には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。
【0043】
操作部308は、LCD表示部を有し、文字列を表示(印刷状態や印刷している文書名の表示)させるとともに、表示してあるキーが押されると操作部I/F307を介してCPU301に伝える。操作部308には、図21で説明する分散印刷再開ボタン(オンラインキー)などがある。
【0044】
尚、表示部はプリンタによって表示性能が異なり、タッチパネルを介して操作をできるプリンタや、単に液晶画面を備え文字列を表示(印刷状態や印刷している文書名の表示)させるだけのプリンタなどによって本発明は構成されている。
【0045】
以上のような構成によって、プリンタ300は、LAN500や外部I/Fから受信した印刷データをプリンタ部312により印刷出力することができる。
【0046】
次に、図4を用いて、図1に示した印刷管理システムのソフトウェア構成について説明する。
【0047】
図4は、図1に示した印刷管理システムのソフトウウェア構成の一例を示すブロック図である。
【0048】
図4において、クライアント端末(情報処理装置)100は、印刷データ401を保持しており、印刷データ401を最終的に分散印刷プリンタ(画像形成装置)300a〜300cに出力させる。
【0049】
まず、クライアント端末100は分散印刷プリンタ300a〜300cに所定の比率で分散印刷させるために、印刷管理装置400に印刷データ401を送る。送られた印刷データ401は、印刷管理装置400において、印刷ジョブ記憶部409に記憶され、印刷ジョブ分散部402で印刷ジョブに分散された後、分散された分散印刷ジョブを分散ジョブ送信部403により各プリンタに送信する。
【0050】
分散印刷が開始された後で、少なくとも1台のプリンタ(300aとする)に割込印刷などの分散印刷を中断するジョブが割り込んだ場合、印刷管理装置400の分散ジョブ制御部404は割込ジョブによる分散印刷ジョブの中断通知をプリンタ300aから受け取り、以後、プリンタ300aの分散印刷ジョブの印刷を停止する命令をプリンタ300aに送信する。
【0051】
次に、ジョブ再分散部405は分散印刷ジョブの印刷を停止したプリンタ300aの未印刷の分散印刷ジョブを印刷ジョブ記憶部409から読み出し、プリンタ300a以外の分散印刷プリンタ(この場合、300b及び300c)に未印刷の分散印刷ジョブを割り振る。
【0052】
再分散ジョブ送信部406は、割り振った分散印刷ジョブをプリンタ300a以外の分散印刷プリンタ300b、300cに送信する。
【0053】
分散印刷プリンタ300b、300cは、分散ジョブ送信部403で送信された分散印刷ジョブと、再分散ジョブ送信部406から送信された300aで未印刷の分散印刷ジョブとを出力する。一方、割込印刷をされたプリンタ300aは割込印刷により印刷を中断されるまでの分散印刷ジョブの印刷物と、割込印刷の印刷物とを出力するが、割込印刷が終了した後で分散印刷ジョブを再開しない為、印刷物の混在を極力少なくできる。
【0054】
次に、印刷管理装置400の基本的な処理フローについて、図5を用いて説明する。
【0055】
図5は、本発明の実施形態における印刷管理装置の第1の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S501〜S509は各ステップを示す。
【0056】
図5は、印刷管理装置400がクライアント端末100から印刷命令を受信することにより開始される。
【0057】
まず、印刷管理装置400のCPU201(以下、印刷管理装置400)はクライアント端末100から印刷命令を受信すると、ステップS501において、クライアント端末100から印刷データ401(印刷ジョブ)を受信する。
【0058】
次に、印刷管理装置400は、ステップS502において、クライアント端末100に分散印刷を指定するか、分散印刷の場合は最低分散台数を何台にするかを入力させる画面情報を送信する。送信する画面イメージについて図6を用いて説明する。
【0059】
図6は、本発明の実施形態における分散印刷選択画面の一例を示す模式図であり、クライアント端末100のCRT210に表示される。
【0060】
図6における601は印刷部数の入力項目であり、ユーザは出力したい部数を入力する。
【0061】
602は複数のプリンタで分散印刷を行うかどうかをユーザに指定させるチェックボックスであり、602の場合はチェックが入っているため、分散印刷を行う設定になっている。
【0062】
603は分散印刷を行う場合のプリンタの最低分散台数を指定する入力項目になっている。最低分散台数とは、最低限の分散印刷を行うプリンタの台数を指定する。
【0063】
604は印刷のための処理を開始するボタンであり、605は印刷の処理をキャンセルするボタンである。
図5のフローチャートの説明に戻る。
【0064】
図5のステップS503において、印刷管理装置400は、分散印刷が指定されたかを判断する。具体的には、図6の602のチェックボックスにチェックが付いているかにより判断する。
【0065】
ステップS503において、分散印刷が指定されていなかった場合は、通常印刷の処理を実行するため、ステップS504に移行して、通常の図示しない印刷を実行する。
【0066】
また、ステップS501で受信した印刷ジョブが1ページのジョブの場合もS503において、通常印刷の処理を実行するため、ステップS504へ移行する。
【0067】
一方、ステップS503において、分散印刷が指定されている場合、次のステップS505へと処理を移行する。
【0068】
ステップS505において、印刷管理装置400は印刷管理装置400が管理しているプリンタと通信して、プリンタを検索し、接続状態やプリンタの状況などを把握する。把握したプリンタの接続状態やプリンタの状況などを、次のステップS506において、クライアント端末100に送信し、分散印刷させるプリンタをユーザに選択させる。ステップS505におけるプリンタと通信した結果のデータ及びステップS506における分散印刷プリンタの指定画面のイメージについて図7を用いて説明する。
【0069】
図7は、本発明の実施形態における分散印刷プリンタ指定画面の一例を示す模式図であり、クライアント端末100のCRT210に表示される。
【0070】
図7における701は、プリンタの接続状態並びにプリンタの状況などを表示している。702はユーザにより分散印刷を実行するプリンタを指定させるチェックボックスであり、図7の場合は、プリンタA、プリンタB、プリンタCがユーザにより指定されている状態である。
【0071】
なお、この実施例では、分散印刷を実行するプリンタをユーザにより図7のように指定させているが、印刷管理装置400で自動的に分散印刷を実行するプリンタを指定しても良い。
【0072】
また、図7における703の欄はクライアント端末100に直接接続されているUSBプリンタであり、印刷管理装置400のCPU201は、プリンタ300と通信する時と同じように、クライアント端末100に通信して、クライアント端末100がUSBプリンタから情報を取得し、印刷管理装置400にデータを送信することにより、703の情報を取得する。
図5のフローチャートの説明に戻る。
ステップS506の処理が終わると、ステップS507に移行する。
【0073】
ステップS507において、印刷管理装置400は、S501でクライアント端末100から受信した印刷ジョブが部数分散印刷なのか、ページ分散印刷なのかを判断する。
【0074】
部数分散印刷(以下、部数分散)とは、同じ資料を複数部数印刷するジョブについて複数のプリンタに印刷ジョブを分散して印刷する分散印刷を示しており、複数部数であれば、複数ページを一つのジョブとして複数部数、分散して印刷する場合であっても構わない。
【0075】
一方、ページ分散印刷(以下、ページ分散)とは連番ページで構成された印刷ジョブを複数のプリンタに印刷ジョブを分散して印刷する分散印刷を示しており、連番ページで構成された印刷ジョブであれば、複数のジョブであっても一つのジョブであっても構わない。
【0076】
部数分散印刷なのか、ページ分散印刷なのかは、クライアント端末100から送信される印刷ジョブによって判断する。1ページのジョブを複数部数印刷する場合や、ステープル固定可能なプリンタによるステープル印刷の場合は部数分散印刷とするが、連番ページで構成される印刷ジョブでステープル固定できないプリンタによる印刷の場合はページ分散印刷に該当する。
【0077】
ステップS507において、部数分散印刷と判断された場合は、ステップS508に移行し、ページ分散印刷と判断された場合は、ステップS509に処理を移行する。
【0078】
ステップS508の処理について、図8の詳細なフローチャートで説明する。
【0079】
図8は、本発明の実施形態における印刷管理装置の第2の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S801〜S805は各ステップを示す。
【0080】
まず、図8のステップS801において、印刷管理装置400は、ステップS502でユーザより入力された部数aと、ステップS506で指定されたプリンタ台数bとから、各プリンタに印刷させる部数を算出する。図8の場合は、プリンタ台数bに均等に分ける場合を想定して、各プリンタへの割当部数cをc=a/bとしたが、プリンタの負荷や、プリンタの性能、インクやトナーの残量などにより、各プリンタに割り当てる部数を調整しても良い。
【0081】
次に、ステップS802において、印刷管理装置400は、ステップS801で算出した各プリンタ毎の印刷部数分の分散印刷ジョブを各プリンタに送信して、ステップS803に移行する。
【0082】
ステップS803において、印刷管理装置400は、分散印刷を実行しているプリンタから、分散印刷より優先順位の高い割込ジョブにより、分散印刷ジョブが中断されていないかを判断する。この判断には、印刷管理装置400が定期的にプリンタにポーリングを行う方法や、プリンタ側に割込ジョブが発生した際に、プリンタ側から印刷管理装置400に分散印刷ジョブ中断の情報を送るなどの方法がある。
【0083】
ステップS803において、分散印刷を実行しているプリンタの分散印刷ジョブが中断されていないと判断した場合は、ステップS805に移行し、分散印刷を実行している全プリンタのジョブが終了するまで、ステップS803に戻る動作を繰り返す。
【0084】
一方、ステップS803において分散印刷を実行しているプリンタの分散印刷ジョブが中断されていると判断した場合、ステップS804へ移行する。ステップS804の処理について、図9の詳細なフローチャートで説明する。
【0085】
図9は、本発明の実施形態における印刷管理装置の第3の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S901〜S904は各ステップを示す。
【0086】
まず、図9のステップS901において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタの現在の印刷部数eを取得する。
【0087】
取得した現在の印刷部数eは図10で説明する印刷予定/済管理テーブルで管理される。
【0088】
図10は、本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【0089】
図10の1001の行には3台のプリンタに部数分散印刷をする際の予定印刷部数が入力されている。1002は、プリンタAの印刷部数が10部の状態で、プリンタAに割込印刷が入った状態を示す。
図9のフローチャートの説明に戻る。
【0090】
次に、ステップS902において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにする。この分散印刷ジョブの印刷停止命令により、印刷物の混在を極力少なくできる。
【0091】
次に、ステップS903において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタの未印刷部数f=c−eを算出し、次のステップS904へと処理を移行する。ステップS904の処理について、図11の詳細なフローチャートで説明する。
【0092】
図11は、本発明の実施形態における印刷管理装置の第4の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1101〜S1106は各ステップを示す。
【0093】
まず、図11のステップS1101において、印刷管理装置400は、分散印刷プリンタの台数bを分散印刷ジョブが中断されたプリンタの台数分だけ減算する。
【0094】
次に、ステップS1102において、印刷管理装置400は、残った分散印刷プリンタの台数で、分散印刷ジョブが中断されたプリンタの未印刷部数fを割り振る。図11の場合は、プリンタ台数bに均等に分ける場合を想定して、各プリンタへの割当部数gをg=f/bとしたが、プリンタの負荷や、プリンタの性能、インクやトナーの残量などにより、各プリンタに割り当てる部数を調整しても良い。
【0095】
ステップS1103において、印刷管理装置400は、残った分散印刷プリンタに割り当てた割当部数gを分散印刷ジョブとして追加で割り振る。割り振った結果を示した印刷予定/済管理テーブルが、図10の1003である。
【0096】
図10の1003は、プリンタAに割込印刷が入った状態で、プリンタAで印刷しなかった残り20部の印刷物をプリンタB及びプリンタCに割り振って印刷することを示している。1004に20部の印刷物の内の1/2である10部が割り振られている。
【0097】
次に、ステップS1104において、印刷管理装置400は、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であるかどうかを判断する。
【0098】
ステップS1104で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以上であれば、ステップS1106に移行し、現在の分散印刷ジョブの優先度のままで、追加部数gだけ、分散印刷ジョブを送信する。
【0099】
一方、ステップS1104で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であれば、残った分散印刷プリンタの分散印刷ジョブの優先度を最大にして、割込ジョブが入らないように設定する。その後、ステップS1106において、追加の分散印刷ジョブとともに印刷ジョブの優先度を最大にして、分散印刷ジョブを送信する。
【0100】
上記のように、分散印刷ジョブの優先度を最大に設定することにより、最低分散印刷台数以上のプリンタが分散印刷している状態では割込印刷ジョブを受け付けるが、最低分散印刷台数以下のプリンタしか分散印刷に対応していない場合は、割込印刷ジョブを受け付けないように設定し、確実に分散印刷が行えるようにすることが可能となる。
図12は、本発明の第1の実施形態を模式的に示した例である。
【0101】
図12の上図は通常の分散印刷の例であり、90部の印刷物をプリンタAからプリンタCの3台に30部ずつ分散印刷された結果の例である。1201にあるように、30部ずつ割り振られて印刷されている。
【0102】
図12の下図はプリンタAに割込印刷ジョブが発生した場合の分散印刷の例であり、プリンタAを10部印刷した後で、プリンタAに割込印刷ジョブ1202が発生した場合を示している。
【0103】
図12の下図では、プリンタAで10部しか印刷していないので、残りの20部を1203のようにプリンタB及びプリンタCに割り振って印刷している。
【0104】
以上の構成により、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにすることにより、印刷物の混在を極力少なくできる。
【0105】
また、最低分散印刷台数を指定することにより、確実に分散印刷が行うことが可能となる。
<第2の実施形態>
【0106】
第1の実施形態では、図5のステップS507において、印刷ジョブが部数分散印刷と判断された場合を説明したが、第2の実施形態では、図5のステップS507でページ分散印刷と判断された場合について説明する。
【0107】
印刷管理装置400は、ステップS507において、印刷ジョブ401がページ分散印刷であると判断した場合、ステップS509に処理を移行する。ステップS509の処理について、図13の詳細なフローチャートで説明する。
【0108】
図13は、本発明の実施形態における印刷管理装置の第5の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1301〜S1308は各ステップを示す。
【0109】
まず、図13のS1301において、印刷管理装置400は、分散印刷プリンタの内、フェイスダウンプリンタとフェイスアッププリンタの対を1組としてプリンタを検索する。フェイスダウンプリンタとは、印刷物の出力の際に表面が下向きで出力される(フェイスダウンプリントが可能な)プリンタであり、フェイスアッププリンタとは、フェイスダウンプリンタとは逆に印刷物の出力の際に表面が上向きで出力される(フェイスアッププリントが可能な)プリンタである。
【0110】
通常のプリンタはフェイスダウンプリントが可能であるので、フェイスアッププリントが可能なプリンタかどうかが図7の704のように予め設定されている。図7の704によりフェイスアッププリントが可能なプリンタとフェイスダウンプリントが可能なプリンタとを1組として検索する。図7の場合は、705にある組み合わせ「1.」と入力されたプリンタ同士を1組として、検索している。
【0111】
次に、ステップS1302において、印刷管理装置400は、分散印刷を行う総ページ数a(=連番ページのページ数×印刷部数)とステップS502で指定された分散印刷プリンタの台数bから、各プリンタに印刷させる部数を算出する。図13の場合は、プリンタ台数bに均等に分ける場合を想定して、各プリンタへの割当部数cをc=a/bとしたが、プリンタの負荷や、プリンタの性能、インクやトナーの残量などにより、各プリンタに割り当てる部数を調整しても良い。
【0112】
次に、ステップS1303において、印刷管理装置400は、組になっているプリンタの内のフェイスダウンプリント可能なプリンタに、昇順で分散印刷ジョブを設定する。
【0113】
続いて、ステップS1304において、印刷管理装置400は、組になっているプリンタの内のフェイスアッププリント可能なプリンタに、降順で分散印刷ジョブを設定する。
【0114】
次に、ステップS1305において、印刷管理装置400は、夫々の分散印刷プリンタに、夫々のページ順で分散印刷ジョブを送信する。
【0115】
ステップS1303とステップS1304の構成により実現される第2の実施形態を、図14及び図15により説明する。
図14は、本発明の第2の実施形態を模式的に示した例である。
【0116】
図14は、90ページの資料を3つのプリンタに分散印刷している例である。
【0117】
図14の1401では、フェイスダウンプリントが可能なプリンタAにP1(1ページ)から順番にP30(30ページ)までを昇順に出力する。(ステップS1303の分散印刷ジョブ)一方、フェイスアッププリントが可能なプリンタBには1402のように、P60(60ページ)から順番にP31(31ページ)までを降順に出力する。残った組にならなかった1台のプリンタCには1403のようにP61(61ページ)から昇順でP90(90ページ)までを出力する。この手段により、図15で説明するページ分散印刷が実現できる。
【0118】
図15は、本発明の第2の実施形態の印刷物を模式的に示した例である。
【0119】
図15は図14の印刷物1401、1402、1403のみを抜き出した図であり、印刷物の出力順も考慮している。
【0120】
図15の1401の印刷物は印刷物の表面が下(すなわちフェイスダウンプリント)であり、引き続く1402の印刷物は表面が上(すなわちフェイスアッププリント)である。1401と1402をページ順を連続して並べるために、ユーザが1402の印刷物の表面を1401の裏面と合わせるように矢印1501のように印刷物を重ねると、1503のようにページ順が1401と1402と共に同じソート順に並ぶ。同様に、1402と1403を連続したページ順に並べるために、ユーザが矢印1502のように印刷物を重ねると、1504のようにページ順が1402と1403で同じソート順に並ぶ。
【0121】
以上の手順により、本願の印刷管理装置400において、ページ分散印刷を実現する。
図13のフローチャートの説明に戻る。
【0122】
図13のステップS1306において、印刷管理装置400は、ページ分散印刷を実行しているプリンタから、ページ分散印刷より優先順位の高い割込ジョブにより、ページ分散印刷ジョブが中断されていないかを判断する。この判断には、印刷管理装置400が定期的にプリンタにポーリングを行う方法や、プリンタ側に割込ジョブが発生した際に、プリンタ側から印刷管理装置400に分散印刷ジョブ中断の情報を送るなどの方法がある。
【0123】
ステップS1306において、ページ分散印刷を実行しているプリンタの分散印刷ジョブが中断されていないと判断した場合は、ステップS1308に移行し、分散印刷を実行している全プリンタのジョブが終了するまで、ステップS1306に戻る動作を繰り返す。
【0124】
一方、ステップS1306においてページ分散印刷を実行しているプリンタの分散印刷ジョブが中断されていると判断した場合、ステップS1307へ移行する。ステップS1307の処理について、図16の詳細なフローチャートで説明する。
【0125】
図16は、本発明の実施形態における印刷管理装置の第6の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1601〜S1604は各ステップを示す。
【0126】
まず、図16のステップS1601において、印刷管理装置400は、ページ分散印刷ジョブが中断されたプリンタの現在の印刷ページ数eを取得する。
【0127】
取得した現在の印刷ページ数eは図17で説明する印刷予定/済管理テーブルで管理される。
【0128】
図17は、本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【0129】
図17の1701の行には3台のプリンタに部数分散印刷をする際の予定印刷部数が入力されている。1702は、プリンタAの印刷部数が10ページの状態で、プリンタAに割込印刷が入った状態を示す。
図16のフローチャートの説明に戻る。
【0130】
次に、ステップS1602において、印刷管理装置400は、ページ分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにする。
【0131】
次に、ステップS1603において、印刷管理装置400は、ページ分散印刷ジョブが中断されたプリンタの未印刷ページf=c−eを算出し、次のステップS1604へと処理を移行する。ステップS1604の処理について、図18の詳細なフローチャートで説明する。
【0132】
図18は、本発明の実施形態における印刷管理装置の第7の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S1801〜S1806は各ステップを示す。
【0133】
まず、図18のステップS1801において、印刷管理装置400は、ページ分散印刷プリンタの台数bを分散印刷ジョブが中断されたプリンタの台数分だけ減算する。
【0134】
なお、印刷管理装置400からページ分散印刷プリンタに、より優先順位の高い割込ジョブを送信する場合は、ステップS1301で組として指定したプリンタの内の1台に、より優先順位の高い割込ジョブを送信するように制御する。
【0135】
次に、ステップS1802において、印刷管理装置400は、S1301で組として指定したプリンタの内、割込ジョブが送信されていないプリンタへ、未出力ページfのジョブを追加する。
図17で未出力ページのジョブを追加する場合を説明する。
【0136】
図17の1702のようにプリンタAで割込印刷が挿入された場合、未印刷ページであるP11(11ページ)からP30(30ページ)の印刷ジョブを、プリンタAと組になっているプリンタBのジョブとして追加する(1704)ことにより、プリンタBに出力させる。
【0137】
なお、ステップS1301で組として指定したプリンタで割込ジョブが送信されていないプリンタへ追加される未出力ページfのジョブ(1704)は、ページの出力順が分散印刷ジョブの中断されたプリンタと出力順が逆に設定される。
図18のフローチャートの説明に戻る。
【0138】
次に、ステップS1803において、印刷管理装置400は、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であるかどうかを判断する。
【0139】
ステップS1803で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以上であれば、ステップS1805に処理を移行する。一方、ステップS1803で、残った分散印刷プリンタの台数が、ステップS502で入力された最低分散台数以下であれば、ステップS1804に処理を移行する。
【0140】
ステップS1804において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタ以外のページ分散印刷プリンタのページ分散印刷ジョブの優先度を最大に設定する。
【0141】
一方、ステップS1805において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタと組となるプリンタのみ、ページ分散印刷ジョブの優先度を最大に設定する。
【0142】
上記の優先度設定のように、ページ分散印刷ジョブの優先度を最大に設定することにより、最低分散印刷台数以上のプリンタが分散印刷している状態では、ページ分散印刷ジョブが割込印刷ジョブにより中断されたプリンタの代理印刷を行うプリンタのみ優先度を最大にし、最低分散印刷台数以下のプリンタしか分散印刷に対応していない場合は、割込印刷ジョブを受け付けないように設定し、確実に分散印刷が行えるようにすることが可能となる。
【0143】
なお、この設定以後に印刷管理装置400が割込印刷を挿入する場合は、一度分散印刷ジョブが中断されたプリンタに優先的に割込印刷ジョブを行わせるようにする。割込印刷ジョブを一度分散印刷ジョブが中断されたプリンタに送信することにより、元のページ分散印刷の出力順が乱されることなく印刷が可能となる。
【0144】
ステップS1804及びステップS1805の処理が済むと、ステップS1806へ処理を移行する。
【0145】
ステップS1806において、印刷管理装置400は、分散印刷ジョブが中断されたプリンタと組となるプリンタに未出力ページfのジョブを送信する。また、印刷管理装置400は、ステップS1804やステップS1805で指定されたプリンタにおけるページ分散印刷ジョブの優先度を設定する。この実施形態を、図14の下図及び図19により説明する。
【0146】
図14の下図は、図14の上図と同じ印刷条件で、プリンタAに割込印刷が挿入された場合の例を説明した図である。
【0147】
図14の下図の場合、プリンタAを10ページ印刷した後で、プリンタAに割込印刷ジョブ1404が発生した場合を示している。プリンタAで発生した割込印刷のために、プリンタAに印刷するはずの残りの11ページから30ページの印刷ジョブを、プリンタAと組になっているプリンタBに印刷させた例が図14の1405である。
【0148】
1405の印刷ジョブはプリンタBで印刷されている1402の分散印刷ジョブの出力順と同じ順序で出力させるため、プリンタAでの出力順と逆になり、また、フェイスダウンプリントだった印刷結果も、フェイスアッププリントの印刷結果となる。この手段により、図19で説明するように、ページ分散印刷に割込印刷が挿入された場合でも、ページ順を崩さずに印刷結果を得ることができる。
【0149】
図19は、本発明の第2の実施形態の印刷物を模式的に示した例である。
【0150】
図19は図14の印刷物1406、1405、1402、1403のみを抜き出した図であり、印刷物の出力順も考慮している。
【0151】
図15と同様に、図19の場合もプリンタAの印刷物1406とプリンタBの印刷物1402+1405を表面が揃うように、ユーザが1405の印刷物の表面を1406の裏面と合わせるように矢印1901のように印刷物を重ねると、1903のようにページ順が1406、1405、1402として、同じソート順に並ぶ。同様に、1402と1403を連続したページ順に並べるために、ユーザが矢印1902のように印刷物を重ねると、1904のようにページ順が1402と1403で同じソート順に並ぶ。
【0152】
以上の手順により、ページ分散印刷に割込印刷が挿入された場合でも、ページ順を崩さずに印刷結果を得ることができる。
<第3の実施形態>
【0153】
第1の実施形態及び第2の実施形態では、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信することにより、印刷物の混在を極力少なくすることを可能としたが、第3の実施形態では、割込印刷を行ったユーザが割込印刷物を取り去った後で、分散印刷ジョブを再開する場合を説明する。
第3の実施形態を図20のフローチャートで説明する。
【0154】
図20は、本発明の実施形態における印刷管理装置の第8の制御処理手順の一例を示すフローチャートである。このフローチャートに示した処理は、印刷管理装置400のCPU201で実行され、CPU201がROM202に格納された制御プログラムをRAM203にロードして実行することで実現される。なお、S2001〜S2004は各ステップを示す。
【0155】
図20のフローチャートは、割込印刷により分散印刷が中断されたプリンタからの要求により開始される。
【0156】
図20のステップS2001において、印刷管理装置400は、割込印刷により分散印刷が中断されたプリンタから、分散印刷再開の命令を受信する。
【0157】
分散印刷が中断されたプリンタの操作パネルのイメージ図を図21を用いて説明する。
【0158】
図21は、本発明の画像形成装置(プリンタ)の操作パネルを表したイメージ図の一例である。
【0159】
図21の2101には、分散印刷が中断されて割込印刷が終了した段階で、「分散印刷再開はオンラインキーを押下」というメッセージを2102の点灯と共に表示している。
【0160】
図21の表示状態で、ユーザが割込印刷物を取り除き、オンラインキー2103を押下すると、ステップS2001の分散印刷再開命令が、印刷管理装置400に送信される。
図20のフローチャートの説明に戻る。
【0161】
次にステップS2002において、印刷管理装置400は、分散印刷プリンタ全ての現在の出力部数を取得する。出力部数の取得例を図22を用いて説明する。
【0162】
図22は、本発明の実施形態における印刷管理装置が管理する印刷予定/済管理テーブルの一例である。
【0163】
図22の2201の行には、一旦分散印刷が中断された後の予定印刷部数が入力されている。
【0164】
2202の行には、ステップS2002で取得した分散印刷プリンタの現在の出力部数が入力されている。
図20のフローチャートの説明に戻る。
【0165】
図20のステップS2003において、印刷管理装置400は、分散印刷プリンタで出力済の印刷物を総和し(=h)、総印刷部数(=a)から引いた値を、新たに分散印刷プリンタの台数を1台追加した台数で割った値kを算出する(k=(a−h)/(b+1))。図22を用いて詳細を説明する。
【0166】
図22の2203は、2200の印刷予定/済管理テーブルの状態で、プリンタAが分散印刷を再開した場合の印刷予定/済管理テーブルの例である。
【0167】
2200では、現印刷部数の総和が10部+19部+19部=48部であり、総印刷部数90部から減算した値を分散印刷プリンタの台数3台で割ると、1台のプリンタ毎に14部ずつ分けられる。2204の14部が該当する。
図20のフローチャートの説明に戻る。
【0168】
図20のステップS2004において、印刷管理装置400は、分散印刷を中断していたプリンタを含めた分散印刷プリンタに、k部の分散印刷ジョブを送信する。
【0169】
このように、第3の実施形態により、割込印刷を行ったユーザが割込印刷物を取り去った後で、分散印刷ジョブを再開することが可能になる。
【0170】
なお、請求項1に記載の所定の条件とは、他の情報処理装置からの割込印刷でも良いし、印刷管理装置で発生した割込印刷でも良い。また、プリンタ側での何らかのトラブル(紙詰まり、紙切れ、インク切れ、トナー切れなど)でも良い。
【0171】
また、印刷管理装置は、クライアント端末とネットワークを通してプリンタと繋がっていて、印刷状況を管理しても良いし、クライアント端末から直接プリンタに繋がっているプリンタの印刷状況を管理しても良い(図7の702)。
【0172】
なお、上記各実施形態のいずれか複数を組み合わせた構成も全て本発明に含まれるものである。
【0173】
以上の構成により、分散印刷ジョブが中断されたプリンタに分散印刷ジョブの印刷停止命令を送信し、それ以上の印刷物を出力させないようにすることにより、印刷物の混在を極力少なくできる。
【0174】
以下、図23に示すメモリマップを参照して本発明に係るプログラム生成装置で読み出し可能なデータ処理プログラムの構成について説明する。
【0175】
図23は、本発明に係るプログラム生成装置で読み出し可能な各種データ処理プログラムを格納する記録媒体のメモリマップを説明する図である。
【0176】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0177】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0178】
本実施形態における図5、図8、図9、図11、図13、図15、図18、図20に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0179】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0180】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0181】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0182】
プログラムを供給するための記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0183】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0184】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
【0185】
また、本発明のプログラムを暗号化してCD−ROM等の記録媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0186】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0187】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0188】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0189】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0190】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【符号の説明】
【0191】
100 情報処理装置
300 画像形成装置
400 印刷管理装置
401 印刷データ
402 印刷ジョブ分散部
403 印刷ジョブ送信部
404 分散ジョブ制御部
405 ジョブ再分散部
406 再分散ジョブ送信部
407 画像形成装置組管理部
408 印刷予定/済管理テーブル
409 印刷ジョブ記憶部
【特許請求の範囲】
【請求項1】
複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置において、
前記情報処理装置からの情報を前記複数の画像形成装置に所定の比率に応じて印刷ジョブを割り振る印刷ジョブ分散手段と、
前記印刷ジョブ分散手段により分散された分散印刷ジョブを夫々の画像形成装置に送信する分散ジョブ送信手段と、
前記分散印刷ジョブの印刷が開始された後、所定の条件により前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブが中断される通知を受信した場合、該画像形成装置に分散印刷ジョブの印刷の停止命令を送信する分散ジョブ制御手段と、
前記停止命令を送信した画像形成装置で中断される分散印刷ジョブの内、未印刷の分散印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散手段と、
前記ジョブ再分散手段により割り振られる印刷ジョブを、前記停止命令を送信した画像形成装置以外の画像形成装置に送信する再分散ジョブ送信手段と、
を有することを特徴とする印刷管理装置。
【請求項2】
前記所定の条件とは、前記分散印刷ジョブが中断される画像形成装置に分散印刷ジョブとは異なる割込印刷ジョブが送信される条件であり、
前記分散ジョブ制御手段は、前記所定の条件が終了した後でも前記停止命令を送信した画像形成装置には、前記未印刷の分散印刷ジョブは送信しないことを特徴とする請求項1記載の印刷管理装置。
【請求項3】
前記分散ジョブ制御手段は、前記所定の条件が終了した後で、前記停止命令を送信した画像形成装置からの要求がある場合には、前記分散印刷ジョブの処理を再開させ、
前記ジョブ再分散手段は、前記停止命令を送信した画像形成装置以外の画像形成装置で、未印刷の分散印刷ジョブを、前記停止命令を送信した画像形成装置を含む画像形成装置に割り振り、
前記再分散ジョブ送信手段は、前記ジョブ再分散手段で割り振られた分散印刷ジョブを夫々の画像形成装置に送信することを特徴とする請求項1又は2記載の印刷管理装置。
【請求項4】
前記分散印刷ジョブが、連番ページで構成された印刷ジョブを所定の比率に応じて複数のプリンタに分けて印刷するページ分散印刷ジョブの場合、
前記複数の画像形成装置を2台毎に対で組として管理する画像形成装置組管理手段と、
前記画像形成装置組管理手段は、管理される2台の画像形成装置の印刷出力媒体を、夫々の画像形成装置でフェイスアップ及びフェイスダウンで印刷させるものであり、
前記ジョブ再分散手段は、前記画像形成装置組管理手段で管理される画像形成装置の1台から前記所定の条件により分散印刷ジョブが中断される通知を受信する場合、前記画像形成装置組管理手段は、前記中断される通知を送信した画像形成装置と組で管理している画像形成装置に連番ページ順で分散印刷ジョブを割り振ることを特徴とする請求項1乃至3記載の印刷管理装置。
【請求項5】
前記画像形成装置組管理手段で管理されている画像形成装置の内、組の1台の分散印刷ジョブが中断されている場合は、もう1台の画像形成装置の分散印刷ジョブの処理の優先度を最も高くすることを特徴とする請求項4記載の印刷管理装置。
【請求項6】
前記所定の条件は、画像形成装置組管理手段で管理されていない、もしくは組で管理される画像形成装置組管理手段の画像形成装置の組の1台から停止命令を受信した画像形成装置には適応しないように制御することを特徴とする請求項4または5に記載の印刷管理装置。
【請求項7】
前記画像形成装置組管理手段は、フェイスアップで印刷可能な画像形成装置とフェイスダウンで印刷可能な画像形成装置とを対として組合せることを特徴とする請求項4乃至6に記載の印刷管理装置。
【請求項8】
複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置における印刷管理方法において、
前記情報処理装置からの情報を前記複数の画像形成装置に所定の比率に応じて印刷ジョブを割り振る印刷ジョブ分散工程と、
前記印刷ジョブ分散手段により分散された分散印刷ジョブを夫々の画像形成装置に送信する分散ジョブ送信工程と、
前記分散印刷ジョブの印刷が開始された後、所定の条件により前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブが中断される通知を受信した場合、該画像形成装置に分散印刷ジョブの印刷の停止命令を送信する分散ジョブ制御工程と、
前記停止命令を送信した画像形成装置で中断される分散印刷ジョブの内、未印刷の分散印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散工程と、
前記ジョブ再分散手段により割り振られる印刷ジョブを、前記停止命令を送信した画像形成装置以外の画像形成装置に送信する再分散ジョブ送信工程と、
を有することを特徴とする印刷管理方法。
【請求項9】
請求項1乃至7のいずれかに記載された情報処理装置としてコンピュータを機能させるためのプログラム。
【請求項10】
請求項1乃至7のいずれかに記載された情報処理装置としてコンピュータを機能させるためのプログラムをコンピュータが読み取り可能に記憶した記憶媒体。
【請求項1】
複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置において、
前記情報処理装置からの情報を前記複数の画像形成装置に所定の比率に応じて印刷ジョブを割り振る印刷ジョブ分散手段と、
前記印刷ジョブ分散手段により分散された分散印刷ジョブを夫々の画像形成装置に送信する分散ジョブ送信手段と、
前記分散印刷ジョブの印刷が開始された後、所定の条件により前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブが中断される通知を受信した場合、該画像形成装置に分散印刷ジョブの印刷の停止命令を送信する分散ジョブ制御手段と、
前記停止命令を送信した画像形成装置で中断される分散印刷ジョブの内、未印刷の分散印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散手段と、
前記ジョブ再分散手段により割り振られる印刷ジョブを、前記停止命令を送信した画像形成装置以外の画像形成装置に送信する再分散ジョブ送信手段と、
を有することを特徴とする印刷管理装置。
【請求項2】
前記所定の条件とは、前記分散印刷ジョブが中断される画像形成装置に分散印刷ジョブとは異なる割込印刷ジョブが送信される条件であり、
前記分散ジョブ制御手段は、前記所定の条件が終了した後でも前記停止命令を送信した画像形成装置には、前記未印刷の分散印刷ジョブは送信しないことを特徴とする請求項1記載の印刷管理装置。
【請求項3】
前記分散ジョブ制御手段は、前記所定の条件が終了した後で、前記停止命令を送信した画像形成装置からの要求がある場合には、前記分散印刷ジョブの処理を再開させ、
前記ジョブ再分散手段は、前記停止命令を送信した画像形成装置以外の画像形成装置で、未印刷の分散印刷ジョブを、前記停止命令を送信した画像形成装置を含む画像形成装置に割り振り、
前記再分散ジョブ送信手段は、前記ジョブ再分散手段で割り振られた分散印刷ジョブを夫々の画像形成装置に送信することを特徴とする請求項1又は2記載の印刷管理装置。
【請求項4】
前記分散印刷ジョブが、連番ページで構成された印刷ジョブを所定の比率に応じて複数のプリンタに分けて印刷するページ分散印刷ジョブの場合、
前記複数の画像形成装置を2台毎に対で組として管理する画像形成装置組管理手段と、
前記画像形成装置組管理手段は、管理される2台の画像形成装置の印刷出力媒体を、夫々の画像形成装置でフェイスアップ及びフェイスダウンで印刷させるものであり、
前記ジョブ再分散手段は、前記画像形成装置組管理手段で管理される画像形成装置の1台から前記所定の条件により分散印刷ジョブが中断される通知を受信する場合、前記画像形成装置組管理手段は、前記中断される通知を送信した画像形成装置と組で管理している画像形成装置に連番ページ順で分散印刷ジョブを割り振ることを特徴とする請求項1乃至3記載の印刷管理装置。
【請求項5】
前記画像形成装置組管理手段で管理されている画像形成装置の内、組の1台の分散印刷ジョブが中断されている場合は、もう1台の画像形成装置の分散印刷ジョブの処理の優先度を最も高くすることを特徴とする請求項4記載の印刷管理装置。
【請求項6】
前記所定の条件は、画像形成装置組管理手段で管理されていない、もしくは組で管理される画像形成装置組管理手段の画像形成装置の組の1台から停止命令を受信した画像形成装置には適応しないように制御することを特徴とする請求項4または5に記載の印刷管理装置。
【請求項7】
前記画像形成装置組管理手段は、フェイスアップで印刷可能な画像形成装置とフェイスダウンで印刷可能な画像形成装置とを対として組合せることを特徴とする請求項4乃至6に記載の印刷管理装置。
【請求項8】
複数の画像形成装置及び情報処理装置にネットワークを介して接続可能な印刷管理装置における印刷管理方法において、
前記情報処理装置からの情報を前記複数の画像形成装置に所定の比率に応じて印刷ジョブを割り振る印刷ジョブ分散工程と、
前記印刷ジョブ分散手段により分散された分散印刷ジョブを夫々の画像形成装置に送信する分散ジョブ送信工程と、
前記分散印刷ジョブの印刷が開始された後、所定の条件により前記複数の画像形成装置の内の少なくとも1つの画像形成装置の分散印刷ジョブが中断される通知を受信した場合、該画像形成装置に分散印刷ジョブの印刷の停止命令を送信する分散ジョブ制御工程と、
前記停止命令を送信した画像形成装置で中断される分散印刷ジョブの内、未印刷の分散印刷ジョブを該画像形成装置以外の画像形成装置に割り振るジョブ再分散工程と、
前記ジョブ再分散手段により割り振られる印刷ジョブを、前記停止命令を送信した画像形成装置以外の画像形成装置に送信する再分散ジョブ送信工程と、
を有することを特徴とする印刷管理方法。
【請求項9】
請求項1乃至7のいずれかに記載された情報処理装置としてコンピュータを機能させるためのプログラム。
【請求項10】
請求項1乃至7のいずれかに記載された情報処理装置としてコンピュータを機能させるためのプログラムをコンピュータが読み取り可能に記憶した記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【公開番号】特開2012−53641(P2012−53641A)
【公開日】平成24年3月15日(2012.3.15)
【国際特許分類】
【出願番号】特願2010−195164(P2010−195164)
【出願日】平成22年8月31日(2010.8.31)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】
【公開日】平成24年3月15日(2012.3.15)
【国際特許分類】
【出願日】平成22年8月31日(2010.8.31)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】
[ Back to top ]