説明

画像処理システム、ジョブ実行方法およびジョブ実行プログラム

【課題】 複数のジョブを効率的に処理すること。
【解決手段】 複数の処理実行部各々は、実行されていない処理のうちで順番が最も先の処理が担当処理であるジョブを蓄積する蓄積部63と、トータル処理量が下限値以上になることを条件に、1以上のデータを1つにまとめた合成データに対して担当処理を実行するバッチ処理部55と、を備え、バッチ処理部55は、担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断部73と、トータル処理量が下限値以上となる開始可能時から所定時間経過するまで担当処理の開始を遅延させる第1遅延部75と、開始可能時から所定時間が経過する前に、前段処理が実行中であるジョブが存在すると判断される場合、前段処理が実行中と判断されたジョブが蓄積されるまで、担当処理の開始を遅延させる第2遅延部77と、を含む。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、画像処理システム、ジョブ実行方法およびジョブ実行プログラムに関し、特に、複数のジョブをまとめて処理を実行する機能を備えた画像処理システム、ジョブ実行方法およびジョブ実行プログラムに関する。
【背景技術】
【0002】
近年、複合機(以下「MFP」という)で実行できない処理を、外部サーバが提供するサービス、例えば、SaaS(Software as a Service)を使用することにより実行することができる。一方、SaaSを使用して処理を実行する場合、コストが発生する場合がある。課金方法には種々のものがあるが、一般的に、一定の使用量になるまで定額を課金し、ある使用量を超えた場合に追加で使用量ごとに課金する方式や、大量の処理が依頼された場合に稼働率が向上するために、通常より割安にする課金する方式、いわゆるディスカウント課金する方式が存在する。このため、SaaSを使用する場合、ある使用量になるまでデータを蓄積し、蓄積された複数のデータをまとめてSaaSを使用して実行すれば、複数のデータ各々を単独で依頼するよりもコストを低くすることができる。
【0003】
コストが安くなるタイミングでジョブを実行する技術が、特開2008−103837号公報(特許公報1)に記載されている。特開2008−103837号公報には、画像情報記憶手段に記憶されている対象とする全ての画像出力ジョブの処理時間と、コスト情報管理手段にて算出された単位コスト情報とに基づき、全ての画像出力ジョブの任意の時刻における画像出力コストの合計を算出し、この画像出力コストの合計が最も安くなる時刻を、各画像出力ジョブの印刷実行タイミングに設定する画像形成装置が記載されている。
【0004】
しかしながら、従来の画像形成装置では、印刷実行タイミング後に発生する画像出力ジョブは、その後に設定される印刷実行タイミングにならなければ実行されない。このため、コストを低くすることができるけれども、待ち時間が増加するといった問題がある。SaaSを使用する場合にも、ある使用量になった後に、直ちにSaaSをしようして処理を実行してしまうと、その直後に発生するデータが次にある使用量になるまで処理されないので、待ち時間が長くなるといった問題がある。
【特許文献1】特開2008−103837号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の1つは、複数のジョブを効率的に処理することが可能な画像処理システムを提供することである。
【0006】
この発明の他の目的は、複数のジョブを効率的に処理することが可能なジョブ実行方法を提供することである。
【0007】
この発明のさらに他の目的は、複数のジョブを効率的に処理することが可能なジョブ実行プログラムを提供することである。
【課題を解決するための手段】
【0008】
上述した目的を達成するために、この発明のある局面によれば、画像処理システムは、それぞれが複数の処理のうちから選ばれた担当処理を実行可能な複数の処理実行手段と、処理対象となるデータと、該データに対して複数の処理のうちから選ばれた1以上の処理と1以上の処理を実行する順番とを定めたジョブを受け付けるジョブ受付手段と、を備え、複数の処理実行手段各々は、ジョブ受付手段により受け付けられたジョブであって、実行されていない処理のうちで順番が最も先の処理が担当処理であるジョブを蓄積する蓄積手段と、蓄積手段により蓄積された1以上のジョブを実行するためのトータル処理量が担当処理に対して予め定められた下限値以上になることを条件に、蓄積された1以上のジョブがそれぞれ処理対象とする1以上のデータを1つにまとめた合成データに対して、担当処理を実行するバッチ処理手段と、を備え、バッチ処理手段は、ジョブ受付手段により受け付けられた複数のジョブのうち、担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断手段と、トータル処理量が下限値以上となる開始可能時から所定時間経過するまで、担当処理の開始を遅延させる第1遅延手段と、開始可能時から所定時間が経過する前に、判断手段により前段処理が実行中であるジョブが存在すると判断される場合、前段処理が実行中と判断されたジョブが蓄積手段に蓄積されるまで、担当処理の開始を遅延させる第2遅延手段と、を含む。
【0009】
この局面に従えば、トータル処理量が下限値以上となる開始可能時から所定時間経過するまで、担当処理の開始が遅延され、さらに、開始可能時から所定時間が経過する前に、複数のジョブのうち、担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在すると判断される場合、前段処理が実行中と判断されたジョブが蓄積されるまで、担当処理の開始を遅延させる。このため、トータル処理量が下限値以上となった時点で、前段処理が実行中であるジョブについて、待ち時間を短縮することができる場合がある。その結果、複数のジョブを効率的に処理することが可能な画像処理システムを提供することができる。
【0010】
好ましくは、バッチ処理手段は、担当処理の実行が開始されることに応じて、担当処理の対象となる1以上のジョブ各々において担当処理の直後の後段処理を特定し、複数の処理実行手段のうち後段処理を担当する後段処理実行手段に、開始を通知する開始通知信号を出力する開始通知手段をさらに含み、判断手段は、開始可能時から所定時間が経過する前に、複数の処理実行手段のいずれかから開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断する。
【0011】
この局面によれば、開始可能時から所定時間が経過する前に、後段処理を担当する後段処理実行手段に送信される開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断する。このため、前段処理が実行中であるジョブの存在を容易に判断することができる。
【0012】
好ましくは、ジョブ受付手段は、ジョブが受け付けられることに応じて、複数の処理実行手段のすべてに、受け付けられたジョブにより定まる複数の処理のうちから選ばれた1以上の処理と1以上の処理を実行する順番とを含む予定ジョブ情報を通知する予定ジョブ情報通知手段を、含み、判断手段は、予定ジョブ情報通知手段から通知される1以上の予定ジョブ情報のうちから担当処理が未だ実行されていない予定ジョブ情報を抽出する予定ジョブ情報抽出手段と、抽出された予定ジョブ情報において、担当処理の直前の前段処理を特定する前段処理特定手段と、を含み、複数の処理実行手段のうち特定された前段処理を担当する前段処理実行手段において、抽出された予定ジョブ情報で特定されるジョブが実行中か否かを判断する。
【0013】
この局面に従えば、予定ジョブ情報のうちから担当処理が未だ実行されていない予定ジョブ情報であって、担当処理の直前の前段処理を担当する前段処理実行手段において、ジョブが実行中の場合に、前段処理が実行中であるジョブが存在すると判断する。このため、前段処理が実行中であるジョブの存在を容易に判断することができる。
【0014】
好ましくは、複数の画像処理装置を、備え、複数の処理実行手段各々は、複数の画像処理装置のいずれか1つに設けられ、ジョブ受付手段は、複数の画像処理装置の1以上に設けられる。
【0015】
好ましくは、複数の処理実行手段各々は、処理対象となるデータを、担当処理の実行先として予め登録されたサーバ装置に送信し、担当処理の実行を依頼する依頼手段と、担当処理の実行を依頼したサーバ装置から処理結果となるデータを受信するデータ受信手段と、を含む。
【0016】
この局面に従えば、予め登録されたサーバ装置に処理を実行させることができる。
【0017】
この発明の他の局面によれば、ジョブ実行方法は、それぞれが複数の処理のうちから選ばれた担当処理を実行可能な複数の処理実行手段を含む画像処理システムで実行されるジョブ実行方法であって、処理対象となるデータと、該データに対して複数の処理のうちから選ばれた1以上の処理と1以上の処理を実行する順番とを定めたジョブであって、実行されていない処理のうちで順番が最も先の処理が担当処理であるジョブを蓄積する蓄積ステップと、蓄積ステップにおいて蓄積された1以上のジョブを実行するためのトータル処理量が担当処理に対して予め定められた下限値以上になることを条件に、蓄積された1以上のジョブがそれぞれ処理対象とする1以上のデータを1つにまとめた合成データに対して、担当処理を実行するバッチ処理ステップと、を複数の処理実行手段各々に実行させ、バッチ処理ステップは、ジョブ受付手段により受け付けられた複数のジョブのうち、蓄積ステップにおいて蓄積されていないジョブであって、担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断ステップと、トータル処理量が下限値以上となる開始可能時から所定時間経過するまで、担当処理の開始を遅延させる第1遅延ステップと、開始可能時から所定時間が経過する前に、判断ステップにおいて前段処理が実行中であるジョブが存在すると判断される場合、前段処理が実行中と判断されたジョブが蓄積ステップにおいて蓄積されるまで、担当処理の開始を遅延させる第2遅延ステップと、を含む。
【0018】
この局面に従えば、複数のジョブを効率的に処理することが可能なジョブ実行方法を提供することができる。
【0019】
好ましくは、バッチ処理ステップは、担当処理の実行が開始されることに応じて、担当処理の対象となる1以上のジョブ各々において担当処理の直後の後段処理を特定するステップと、複数の処理実行手段のうち後段処理を担当する後段処理実行手段に、開始を通知する開始通知信号を出力するステップと、をさらに含み、判断ステップは、開始可能時から所定時間が経過する前に、複数の処理実行手段のいずれかから開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断するステップを含む。
【0020】
好ましくは、画像処理システムにジョブが投入された時点で、投入されたジョブにより定まる複数の処理のうちから選ばれた1以上の処理と1以上の処理を実行する順番とを含む予定ジョブ情報を受信する予定ジョブ情報受信ステップと、をさらに複数の処理実行手段各々に実行させ、判断ステップは、予定ジョブ情報受信ステップにおいて受信される1以上の予定ジョブ情報のうちから担当処理が未だ実行されていない予定ジョブ情報を抽出する予定ジョブ情報抽出ステップと、抽出された予定ジョブ情報において、担当処理の直前の前段処理を特定する前段処理特定ステップと、複数の処理実行手段のうち特定された前段処理を担当する前段処理実行手段において、抽出された予定ジョブ情報で特定されるジョブが実行中か否かを判断するステップと、を含む。
【0021】
この発明の他の局面によれば、ジョブ実行プログラムは、それぞれが複数の処理のうちから選ばれた担当処理を実行可能な複数の処理実行装置を含む画像処理システムで実行されるジョブ実行プログラムであって、複数の処理実行装置各々を制御するコンピュータに、処理対象となるデータと、該データに対して複数の処理のうちから選ばれた1以上の処理と1以上の処理を実行する順番とを定めたジョブであって、実行されていない処理のうちで順番が最も先の処理が担当処理であるジョブを蓄積する蓄積ステップと、蓄積ステップにおいて蓄積された1以上のジョブを実行するためのトータル処理量が担当処理に対して予め定められた下限値以上になることを条件に、蓄積された1以上のジョブがそれぞれ処理対象とする1以上のデータを1つにまとめた合成データに対して、担当処理を実行するバッチ処理ステップと、を実行させ、バッチ処理ステップは、ジョブ受付手段により受け付けられた複数のジョブのうち、蓄積ステップにおいて蓄積されていないジョブであって、担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断ステップと、トータル処理量が下限値以上となる開始可能時から所定時間経過するまで、担当処理の開始を遅延させる第1遅延ステップと、開始可能時から所定時間が経過する前に、判断ステップにおいて前段処理が実行中であるジョブが存在すると判断される場合、前段処理が実行中と判断されたジョブが蓄積ステップにおいて蓄積されるまで、担当処理の開始を遅延させる第2遅延ステップと、を含む。
【0022】
この局面に従えば、複数のジョブを効率的に処理することが可能なジョブ実行方法を提供することができる。
【0023】
好ましくは、バッチ処理ステップは、担当処理の実行が開始されることに応じて、担当処理の対象となる1以上のジョブ各々において担当処理の直後の後段処理を特定するステップと、複数の処理実行装置のうち後段処理を担当する後段処理実行装置に、開始を通知する開始通知信号を出力するステップと、をさらに含み、判断ステップは、開始可能時から所定時間が経過する前に、複数の処理実行装置のいずれかから開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断するステップを含む。
【0024】
好ましくは、画像処理システムにジョブが投入された時点で、投入されたジョブにより定まる複数の処理のうちから選ばれた1以上の処理と1以上の処理を実行する順番とを含む予定ジョブ情報を受信する予定ジョブ情報受信ステップと、をさらに複数の処理実行装置各々を制御するコンピュータに実行させ、判断ステップは、予定ジョブ情報受信ステップにおいて受信される1以上の予定ジョブ情報のうちから担当処理が未だ実行されていない予定ジョブ情報を抽出する予定ジョブ情報抽出ステップと、抽出された予定ジョブ情報において、担当処理の直前の前段処理を特定する前段処理特定ステップと、複数の処理実行装置のうち特定された前段処理を担当する前段処理実行装置において、抽出された予定ジョブ情報で特定されるジョブが実行中か否かを判断するステップと、を含む。
【図面の簡単な説明】
【0025】
【図1】本発明の実施の形態の1つにおける画像処理システムの全体概要を示す図である。
【図2】MFPのハードウエア構成の一例を示すブロック図である。
【図3】MFPが備えるCPUの機能の一例をEEPROMに記憶されるデータとともに示すブロック図である。
【図4】処理定義テーブルの一例を示す図である。
【図5】ジョブ受付処理の流れの一例を示すフローチャートである。
【図6】ジョブ管理処理の流れの一例を示すフローチャートである。
【図7】バッチ処理の流れの一例を示すフローチャートである。
【図8】ジョブの状態の一例を示す図である。
【図9】文字認識処理をサーバに依頼した段階におけるジョブの状態を示す図である
【図10】第2の実施の形態におけるMFPが備えるCPUの機能の一例をEEPROMに記憶されるデータとともに示すブロック図である。
【図11】第2の実施の形態における判断部の機能の一例を示すブロック図である。
【図12】第2の実施の形態におけるジョブ受付処理の流れの一例を示すフローチャートである。
【図13】第2の実施の形態におけるバッチ処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0026】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰り返さない。
【0027】
<第1の実施の形態>
図1は、本発明の実施の形態の1つにおける画像処理システムの全体概要を示す図である。図1を参照して、画像処理システム1は、ネットワーク11にそれぞれ接続された5台の複合機(以下、「MFP」という)100,100A〜100Dと、パーソナルコンピュータ(以下「PC」という)21,23と、インターネット13に接続された5台のサーバ31,31A〜31Dと、を含む。
【0028】
ネットワーク11は、ローカルエリアネットワーク(LAN)であり、有線または無線を問わない。またネットワーク11は、LANに限らず、ワイドエリアネットワーク(WAN)、インターネット、または一般公衆回線を用いたネットワーク等であってもよい。ネットワーク11は、ゲートウェイを介してインターネット13に接続されている。
【0029】
MFP100,100A〜100Dは、画像処理装置の一例である。サーバ31、31A〜31Dは、一般的なコンピュータであり、それらのハードウエア構成は周知なのでここでは説明を繰り返さない。サーバ31、31A〜31Dは、SaaSを提供可能なWebサーバとして機能し、有料のデータ処理サービスを提供する。サーバ31、31A〜31Dが提供するデータ処理サービスは、サーバ31、31A〜31Dそれぞれで動作するソフトウェアの機能を、ネットワークを介してオンラインで利用可能とする形態である。サーバ31、31A〜31Dが提供するデータ処理サービスの種類は、すべて同じであってもよいが、異なっていてもよい。ここでは、サーバ31、31A〜31Dが提供するデータ処理サービスの種類が互いに異なる場合を例に説明する。
【0030】
サーバ31,31A〜31D各々は、データ処理プログラムがインストールされており、外部からデータを受信し、受信されたデータに処理を実行して、データ処理を実行した後の処理後データを返信する。データ処理は、入力される画像データに実行される処理であり、例えば、文字認識(OCR)して文字のデータに変換する文字認識処理、文字を翻訳する翻訳処理、データ中の画像の領域の色を変換する色変換処理、データ中の画像の領域の輪郭を強調する輪郭強調処理、データのフォーマットを変換するフォーマット変換処理等を含む。ここでは、サーバ31が、文字認識処理を実行するための文字認識処理プログラムがインストールされており、文字認識サービスを提供し、サーバ31Aが、翻訳処理を実行するための翻訳プログラムがインストールされており、翻訳サービスを提供し、サーバ31Bが、色変換処理を実行するための色変換処理プログラムがインストールされており、色変換サービスを提供し、サーバ31Cが、輪郭強調処理を実行するための輪郭強調処理プログラムがインストールされており、輪郭強調サービスを提供し、サーバ31Dが、フォーマット変換処理を実行するためのフォーマット変換プログラムがインストールされており、フォーマット変換サービスを提供する。
【0031】
サーバ31、31A〜31D各々により提供されるデータ処理サービスを利用する場合は課金される。なお、課金の方法は、種々方法が知られているが、課金方法を限定するものではない。
【0032】
サーバ31、31A〜31Dが提供するデータ処理サービスは、MFP100,100A〜100Dのいずれかで利用可能に設定されている。MFP100,100A〜100D各々は、サーバ31、31A〜31Dが提供するデータ処理サービスを利用することが可能なように設定されている。ここでは、MFP100は、サーバ31が提供する文字認識サービスを利用可能に設定され、MFP100Aは、サーバ31Aが提供する翻訳サービスを利用可能に設定され、MFP100Bは、サーバ31Bが提供する色変換サービスを利用可能に設定され、MFP100Cは、サーバ31Cが提供する輪郭強調サービスを利用可能に設定され、MFP100Dは、サーバ31Dが提供するフォーマット変換サービスを利用可能に設定されている。
【0033】
以下、MFP100,100A〜100Dが、サーバ31、31A〜31Dが提供するデータ処理サービスのうちから利用可能に設定されている処理を、担当処理という。具体的には、MFP100の担当処理は、サーバ31が提供する文字認識サービスを利用する処理であり、MFP100Aの担当処理は、サーバ31Aが提供する翻訳サービスを利用する処理であり、MFP100Bの担当処理は、サーバ31Bが提供する色変換サービスを利用する処理であり、MFP100Cの担当処理は、サーバ31Cが提供する輪郭強調サービスを利用する処理であり、MFP100Dの担当処理は、サーバ31Dが提供するフォーマット変換サービスを利用する処理である。
【0034】
PC21,23は、一般的なコンピュータであり、それらのハードウエア構成は周知なのでここでは説明を繰り返さない。PC21,23は、ネットワーク11を介して、MFP100,100A〜100Eおよびサーバ31、31A〜31Eと通信が可能である。 本実施の形態における画像処理システムは、MFP100,100A〜100Dのいずれかに、ユーザによりジョブが投入される。ジョブは、処理対象となるデータと、そのデータに対して複数の処理のうちから選ばれた1以上の処理と、1以上の処理を実行する順番とを定める。複数の処理は、MFP100,100A〜100Dのいずれかで実行可能な処理であればよい。MFP100,100A〜100Dが実行可能な処理は、MFP100,100A〜100D各々にインストールされているプログラムまたはハードウエアにより実行される処理の他、MFP100,100A〜100D各々にサーバ31、31A〜31Dが提供するデータ処理サービスのうち利用可能に設定されている処理を含む。MFP100,100A〜100D各々は、ジョブが投入されると、投入されたジョブにより定まる順番に従って、MFP100,100A〜100Dのうちから処理を実行する装置を特定し、特定された装置にジョブを実行させる。
【0035】
なお、図1においては5台のMFP100,100A〜100D、2台のPC21,23および5台のサーバ31,31A〜31Dを示しているが、それらの台数を限定するものではなく、1台以上のMFP100と、1台以上のサーバ31がネットワーク11またはインターネット13に接続されていればよい。
【0036】
MFP100,100A〜100Dのハードウエアおよび機能は、すべて同じである。ここでは、特に言及しない限り、MFP100を例に説明する。
【0037】
図2は、MFPのハードウエア構成の一例を示すブロック図である。図2を参照して、MFP100は、メイン回路110と、原稿を読み取るための原稿読取部130と、原稿を原稿読取部130に搬送するための自動原稿搬送装置120と、原稿読取部130が原稿を読み取って出力する静止画像を用紙等に形成するための画像形成部140と、画像形成部140に用紙を供給するための給紙部150と、ユーザインターフェースとしての操作パネル160と、を含む。
【0038】
メイン回路110は、CPU111と、通信インターフェース(I/F)部112と、ROM(Read Only Memory)113と、RAM(Random Access Memory)114と、EEPROM(Electrically Erasable and Programmable ROM)115と、大容量記憶装置としてのハードディスクドライブ(HDD)116と、ファクシミリ部117と、CD−ROM(Compact Disc−Read Only Memory)119Aが装着される外部記憶装置119と、を含む。
【0039】
CPU111は、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150および操作パネル160と接続され、MFP100の全体を制御する。ROM113は、CPU111が実行するプログラム、およびそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。また、RAM114は、原稿読取部130から連続的に送られてくる静止画像を一時的に記憶する。
【0040】
操作パネル160は、MFP100の上面に設けられ、表示部160Aと操作部160Bとを含む。表示部160Aは、液晶表示装置(LCD)、有機ELD(Electroluminescence Display)等の表示装置であり、ユーザに対する指示メニューや取得した画像データに関する情報等を表示する。操作部160Bは、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受け付ける。操作部160Bは、表示部160A上に設けられたタッチパネルをさらに含む。
【0041】
通信I/F部112は、MFP100をネットワーク11に接続するためのインターフェースである。CPU111は、通信I/F部112を介してPC21,23およびサーバ31との間で通信し、データを送受信する。また、通信I/F部112は、ネットワーク11を介してインターネットに接続されたサーバ31A〜31Eと通信し、データを送受信する。
【0042】
ファクシミリ部117は、公衆交換電話網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部117は、受信したファクシミリデータを、HDD116に記憶する、または画像形成部140に出力する。画像形成部140は、ファクシミリ部117により受信されたファクシミリデータを用紙に印刷する。また、ファクシミリ部117は、HDD116に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
【0043】
外部記憶装置119は、CD−ROM119Aが装着される。CPU111は、外部記憶装置119を介してCD−ROM119Aにアクセス可能である。CPU111は、外部記憶装置119に装表されたCD−ROM119Aに記録されたプログラムをRAM114にロードして実行する。なお、CPU111が実行するプログラムは、CD−ROM119Aに記録されたプログラムに限られず、HDD116に記憶されたプログラムをRAM114にロードして実行するようにしてもよい。この場合、ネットワーク11に接続された他のコンピュータが、MFP100のHDD116に記憶されたプログラムを書換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、MFP100が、ネットワーク11に接続された他のコンピュータからプログラムをダウンロードして、そのプログラムをHDD116に記憶するようにしてもよい。ここでいうプログラムは、CPU111が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【0044】
なお、CPU111が実行するプログラムを記憶する媒体としては、CD−ROM119Aに限られず、光ディスク(MO(Magnetic Optical Disc/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electrically EPROM)などの半導体メモリであってもよい。
【0045】
図3は、MFPが備えるCPUの機能の一例をEEPROMに記憶されるデータとともに示すブロック図である。図3に示す機能は、MFP100が備えるCPU111がROM114、EEPROM115、HDD116またはCD−ROM119Aに記憶されたジョブ実行プログラムを実行することにより、実現される。
【0046】
図3を参照して、CPU111は、ジョブを受け付けるジョブ受付部51と、ジョブを管理するジョブ管理部53と、バッチ処理部55と、を含む。ジョブ受付部51は、表示部160Aにジョブ受付画面を表示し、ユーザがジョブ受付画面に従って操作部160Bに入力するジョブを受け付ける。ジョブ受付画面は、処理対象となるデータを指定する領域と、予め定められた複数の処理のうちから1以上の処理を選択する領域と、選択された1以上の処理を実行する順番とを指定する領域と、を含む。
【0047】
ジョブ受付部51は、EEPROM115に予め記憶された処理定義テーブルに基づいて、ジョブ受付画面を表示する。処理定義テーブルは、複数の処理ごとに、処理を識別するための処理識別情報と、処理を実行する装置を識別するための装置識別情報と、を少なくとも含む処理定義レコードを含む。処理レコードは、処理識別情報で識別される処理の説明および課金される料金に関する課金情報を含んでもよい。ジョブ受付画面は、処理定義テーブルに含まれる複数の処理定義テーブルそれぞれの処理識別情報を選択可能に表示する。
【0048】
ここでは、処理定義テーブルは、MFP100が実行可能なスキャン処理、画像形成処理、データ送信処理、ファクシミリ送信処理に対応する処理定義レコードの他、MFP100,100A〜100D各々が利用可能に設定されているサーバ31、31A〜31Dが提供するデータ処理サービスを利用する処理に対応する処理定義レコードを含む。
【0049】
MFP100が利用可能に設定されているサーバ31が提供するデータ処理サービスを利用する処理に対応する処理定義レコードは、MFP100がサーバ31の提供する文字認識サービスを利用可能に設定される段階において、MFP100において生成され、処理定義テーブルに追加される。
【0050】
MFP100Aが利用可能に設定されているサーバ31Aが提供するデータ処理サービスを利用する処理に対応する処理定義レコードは、MFP100Aがサーバ31Aの提供する翻訳サービスを利用可能に設定される段階において、MFP100Aにおいて生成され、MFP100Aから受信されることにより処理定義テーブルに追加される。MFP100Bが利用可能に設定されているサーバ31Bが提供するデータ処理サービスを利用する処理に対応する処理定義レコードは、MFP100Bがサーバ31Bの提供する色変換サービスを利用可能に設定される段階において、MFP100Bにおいて生成され、MFP100Bから受信されることにより処理定義テーブルに追加される。MFP100Cが利用可能に設定されているサーバ31Cが提供するデータ処理サービスを利用する処理に対応する処理定義レコードは、MFP100Cがサーバ31Cの提供する輪郭強調サービスを利用可能に設定される段階において、MFP100Cにおいて生成され、MFP100Cから受信されることにより処理定義テーブルに追加される。MFP100Dが利用可能に設定されているサーバ31Dが提供するデータ処理サービスを利用する処理に対応する処理定義レコードは、MFP100Dがサーバ31Dの提供するフォーマット変換サービスを利用可能に設定される段階において、MFP100Dにおいて生成され、MFP100Dから受信されることにより処理定義テーブルに追加される。
【0051】
図4は、処理定義テーブルの一例を示す図である。図4を参照して、処理定義テーブルは、MFP100に登録されている処理定義テーブルを示す。処理定義テーブルは、9つの処理にそれぞれ対応する9つの処理定義レコードを含む。処理定義レコードは、処理識別情報の項目と、装置識別情報の項目と、内容の項目と、課金情報の項目と、を含む。課金情報の項目は、割引前の項目と、割引後の項目と、割引条件の項目と、を含む。処理識別情報の項目は、処理を特定するための処理識別情報が設定される。装置識別情報の項目は、処理を実行する装置を識別するための装置識別情報が設定される。ここでは、MFP100,100A〜100Dの装置識別情報を、それぞれ第1〜第5MFPとしている。内容の項目には、処理を説明するための情報が設定される。課金情報の項目は、処理を実行する場合に課金される単価に関する情報が設定される。割引条件の項目には、単価を決定するための条件が設定され、割引前の項目には、割引条件が満たされない場合に適用される単価が設定され、割引後の項目には、割引条件が満たされた場合に適用される単価が設定される。
【0052】
処理識別情報の項目に「スキャン」、「画像形成」、「データ送信」および「FAX送信」が設定される4つの処理定義レコードは、それぞれ、MFP100において実行されるスキャン処理、画像形成処理、データ送信処理、ファクシミリ送信処理であることを示し、すべての処理定義レコードにおいて、装置識別情報の項目にMFP100の装置識別情報「第1MFP」が設定され、課金情報はブランクが設定される。
【0053】
処理識別情報の項目に「文字認識」が設定される処理定義レコードは、MFP100が利用可能に設定されているサーバ31の提供する文字認識サービスを利用する処理に対応し、装置識別情報の項目にMFP100の装置識別情報「第1MFP」が設定される。MFP100がサーバ31の提供する文字認識サービスを利用可能に設定されているからである。また課金情報は、文字認識サービスを依頼する処理量が10000文字より少ない場合に1文字当たりの単価として10円が設定され、依頼する処理量が10000文字以上の場合に1文字当たりの単価として5円が設定される。
【0054】
処理識別情報の項目に「翻訳」が設定される処理定義レコードは、MFP100Aが利用可能に設定されているサーバ31Aの提供する翻訳サービスを利用する処理に対応し、装置識別情報の項目にMFP100Aの装置識別情報「第2MFP」が設定される。MFP100Aがサーバ31Aの提供する翻訳サービスを利用可能に設定されているからである。また課金情報は、翻訳サービスを依頼する処理量が10000文字より少ない場合に1文字当たりの単価として20円が設定され、依頼する処理量が10000文字以上の場合に1文字当たりの単価として10円が設定される。
【0055】
処理識別情報の項目に「色変換」が設定される処理定義レコードは、MFP100Bが利用可能に設定されているサーバ31Bの提供する色変換サービスを利用する処理に対応し、装置識別情報の項目にMFP100Bの装置識別情報「第3MFP」が設定される。MFP100Bがサーバ31Bの提供する色変換サービスを利用可能に設定されているからである。また課金情報は、色変換サービスを依頼する処理量が100頁より少ない場合に1頁当たりの単価として50円が設定され、依頼する処理量が100頁以上の場合に1頁当たりの単価として30円が設定される。
【0056】
処理識別情報の項目に「輪郭強調」が設定される処理定義レコードは、MFP100Cが利用可能に設定されているサーバ31Cの提供する輪郭強調サービスを利用する処理に対応し、装置識別情報の項目にMFP100Cの装置識別情報「第4MFP」が設定される。MFP100Cがサーバ31Cの提供する輪郭強調サービスを利用可能に設定されているからである。また課金情報は、輪郭強調サービスを依頼する処理量が100頁より少ない場合に1頁当たりの単価として20円が設定され、依頼する処理量が100頁以上の場合に1頁当たりの単価として10円が設定される。
【0057】
処理識別情報の項目に「フォーマット変換」が設定される処理定義レコードは、MFP100Dが利用可能に設定されているサーバ31Dの提供するフォーマット変換サービスを利用する処理に対応し、装置識別情報の項目にMFP100Dの装置識別情報「第5MFP」が設定される。MFP100Dがサーバ31Dの提供するフォーマット変換サービスを利用可能に設定されているからである。また課金情報は、フォーマット変換サービスを依頼する処理量が100頁より少ない場合に1頁当たりの単価として10円が設定され、依頼する処理量が100頁以上の場合に1頁当たりの単価として5円が設定される。
【0058】
なお、MFP100に記憶される処理定義テーブルに、他のMFP100A〜100Dのいずれかで実行可能な処理と、その装置の処理識別情報とを含む処理レコードを含むようにしてもよい。
【0059】
図3に戻って、ジョブ受付部51は、ジョブ受付画面の処理対象となるデータを指定する領域において指定されたデータを取得する。例えば、スキャンデータが処理対象となるデータとして指定されたならば、原稿読取部130を制御して、原稿読取部130が原稿を読み取って出力する画像データを処理対象となるデータとして取得する。また、HDD116に記憶されたデータが指定されたならば、指定されたデータをHDD116から読み出すことにより、読み出されたデータを処理対象となるデータとして取得する。
【0060】
ジョブ受付部51は、取得されたデータと、指定された1以上の処理各々の処理識別情報と、1以上の処理を実行する順番と、を含むジョブを生成する。ジョブ受付部51は、ジョブ割当部57を含む。ジョブ割当部57は、MFP100,100A〜100Dのうちから生成されたジョブを最初に実行する装置に出力する。具体的には、ジョブ割当部57は、生成されたジョブにより定まる実行順が最初の処理を実行する装置を、MFP100,100A〜100Dのうちから特定する。ジョブ割当部57は、特定した装置が、MFP100ならば、ジョブをジョブ管理部53に出力し、特定した装置が、MFP100A〜100Dのいずれかならば、通信I/F部112を介してMFP100A〜100Dのうち特定された装置にジョブを送信する。
【0061】
本実施の形態においては、MFP100,100A〜100Dそれぞれにおいて、CPU111にジョブ受付部51が形成され、MFP100,100A〜100Dのいずれにおいてもジョブを受け付けることができる。ジョブ受付部51は、MFP100,100A〜100Dのいずれか1つに形成されるようにしてもよいし、MFP100,100A〜100Dのうちから選択された1以上に形成されるようにしてもよい。また、PC21,23の双方に、ジョブ受付部51が形成されるようにしてもよい。
【0062】
ジョブ管理部53は、ジョブを取得するジョブ取得部61と、ジョブを蓄積する蓄積部63と、ジョブを送信するジョブ送信部65と、ジョブを実行するジョブ実行部67と、を含む。ジョブ取得部61は、ジョブ割当部57から入力されるジョブを取得する。また、ジョブ取得部61は、通信I/F部112が他のMFP100A〜100Bのいずれかからジョブを受信すると、受信されたジョブを取得する。ジョブ取得部61が取得するジョブは、それに含まれる複数の処理のうちで未だ処理が実行されていない処理であって、実行順が最初の処理が、MFP100で実行することが定められたジョブである。さらにジョブ取得部61は、後述するバッチ処理部55から入力されるジョブを取得する。
【0063】
ジョブ取得部61は、取得されたジョブに含まれる複数の処理のうちで未だ処理が実行されていない処理であって、実行順が最初の処理を、次に実行するべき対象処理に特定する。また、ジョブ取得部61は、バッチ処理部55から複数のジョブが入力される場合、入力される複数のジョブそれぞれについて、処理対象処置を特定する。そして、ジョブ取得部61は、対象処理がMFP100の担当処理か否かを判断する。MFP100の担当処理は、サーバ31が提供する文字認識サービスを利用する処理である。ジョブ取得部61は、対象処理が担当処理ならばジョブを蓄積部63に出力するが、担当処理でなければジョブをジョブ実行部67に出力する。
【0064】
蓄積部63は、ジョブ取得部61かラ入力されるジョブを、EEPROM115に記憶する。これにより、EEPROM115にジョブ41が記憶される。
【0065】
ジョブ実行部67は、ジョブ取得部61から入力されるジョブに含まれるデータに対して、ジョブにより定まる処理を、実行する。例えば、画像形成処理、データ送信処理、ファクシミリ送信処理である。ジョブ実行部67は、ジョブを実行した後、ジョブにより未実行の処理が定められている場合、処理後のデータを含むジョブを、ジョブ送信部65に出力する。
【0066】
ジョブ送信部65は、ジョブ実行部67からジョブが入力される場合、入力されるジョブに含まれる複数の処理のうちで未だ処理が実行されていない処理であって、実行順が最初の処理を、次に実行するべき対象処理に特定する。そして、ジョブ送信部65は、対象処理を実行する後段処理装置を、MFP100A〜100Dのうちから特定し、特定した後段処理装置に、通信I/F部112を介してジョブを送信する。
【0067】
バッチ処理部55は、サーバ31がEEPROM115に記憶されたすべてのジョブ41に含まれるデータに対してデータ処理を実行するためのトータル処理量を算出する。そして、バッチ処理部55は、トータル処理量が、担当処理に対して予め定められた下限値以上となることを条件に、サーバ31に処理を依頼する。下限値は、処理定義テーブルの課金情報の割引条件の項目に設定された値である。ここでは、下限値は「10000文字」である。
【0068】
バッチ処理部55は、他のMFP100A〜100Dのいずれかが送信する開始通知を受信する開始通知受信部71と、担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断部73と、担当処理の開始を遅延させる第1遅延部75および第2遅延部77と、担当処理が開始したことを通知する開始通知部79と、複数のデータを合成する合成部81と、合成データに対して処理の実行をサーバ31に依頼する処理依頼部83と、サーバ31から処理結果を受信する処理結果受信部85と、処理後のデータを分離する分離部87と、を含む。
【0069】
第1遅延部75は、EEPROM115に記憶されたジョブ41を監視しており、トータル処理量を算出し、トータル処理量が下限値以上となる開始可能時から所定時間経過するまで、担当処理の開始を遅延させる。所定時間は、予め定められた時間T1である。第1遅延部75は、トータル処理量が下限値以上となると、担当処理を実行する条件が成立したことを示す条件成立信号を、判断部73および第2遅延部77に出力するとともに、開始可能時刻からの経過時間を計時する。第1遅延部75は、開始可能時刻から計時した時間が予め定められた時間T1になると、第1開始指示を判断部73および第2遅延部77に出力する。
【0070】
第2遅延部77は、第1遅延部75から条件成立信号が入力された後、第1遅延部75から第1開始指示が入力される前に、判断部73から存在信号が入力される場合には、存在信号に含まれるジョブが、EEPROM115に記憶されるまで、担当処理の開始を遅延させる。存在信号については後述するが、判断部73によって、第1遅延部75から条件成立信号が入力された後、第1遅延部75から第1開始指示が入力される前に出力され、担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在することを示す信号である。第2遅延部77は、判断部73から存在信号が入力された後、EEPROM115に記憶されているジョブを監視し、存在信号に含まれるジョブがEEPROM115に記憶されることを検出すると、実行指示を合成部81に出力するとともに、開始通知指示を開始通知部79に出力する。
【0071】
一方、第2遅延部77は、第1遅延部75から条件成立信号が入力された後、判断部73から存在信号が入力されることなく、第1遅延部75から第1開始指示が入力されると、実行指示を合成部81に出力するとともに、開始通知指示を開始通知部79に出力する。
【0072】
開始通知部79は、EEPROM115に記憶されているすべてのジョブ41それぞれについて、ジョブ41に含まれる複数の処理のうちMFP100の担当処理よりも実行順が次の後処理を担当する後処理装置を特定する。そして、特定した後処理装置に、MFP100の担当処理を開始したことを通知する。具体的には、ジョブ41を識別するためのジョブ識別情報を含む開始通知信号を、通信I/F部112を介して、後処理装置に送信する。開始通知信号は、前段処理の実行が開始したことを示す信号である。EEPROM115に複数のジョブ41が記憶されている場合、複数の後処理装置が特定される場合がある。開始通知部79は、特定された複数の後処理装置に、開始通知信号を出力する。
【0073】
開始通知受信部71は、通信I/F部112を制御して、他のMFP100A〜100Dのいずれかから開始通知信号を受信する。開始通知受信部71は、他のMFP100A〜100Dのいずれかから開始通知信号を受信すると、受信された開始通知信号を判断部73に出力する。他のMFP100A〜100Dのいずれか、例えば、MFP100Aは、MFP100Aが実行を開始した担当処理を含むジョブにおいて、MFP100Aの担当処理よりも実行順が後の後処理を担当処理とする後処理装置が、MFP100の場合に、MFP100に開始通知信号を送信する。開始通知信号は、MFP100Aが実行を開始した担当処理を含むジョブのジョブ識別情報を含む。
【0074】
判断部73は、第1遅延部75から条件成立信号が入力された後に、第1開始指示が入力される前に、開始通知受信部71から開始通知信号が入力される場合、MFP100の担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在すると判断する。判断部73は、第1遅延部75から条件成立信号が入力された後に、第1開始指示が入力される前に、開始通知受信部71から開始通知信号が入力される場合、存在信号を第2遅延部77に出力する。存在信号は、開始通知信号に含まれるジョブ識別情報を含む。
【0075】
判断部73は、第1遅延部75から条件成立信号が入力された後に、開始通知受信部71から開始通知信号が入力されることなく、第1開始指示が入力される場合、MFP100の担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在しないと判断し、第2遅延部77に何も出力しない。
【0076】
合成部81は、第2遅延部77から実行指示が入力されると、EEPROM115に記憶されているジョブ41のすべてを読み出し、読み出されたジョブ41に含まれるデータのすべてを合成し、合成データを生成する。また、合成部81は、合成の対象となったデータを含むジョブ41と、そのデータの合成データ中の位置とを関連付けた対応テーブルを生成する。合成部81は、合成データを処理依頼部83に出力し、対応テーブルを分離部87に出力する。
【0077】
対応テーブルは、ジョブ41を識別するためのジョブ識別情報と、そのジョブ41に含まれていたデータの合成データ中の位置とを含む対応レコードを含む。例えば、ジョブ41に含まれているデータが画像データの場合、合成部81は、データをページで区分した合成データを生成する。対応テーブルは、ジョブ識別情報と、ページ番号とを関連付ける。
【0078】
処理依頼部83は、合成データに対して処理の実行を、サーバ31に依頼する。具体的には、合成データと、依頼コマンドとを、通信I/F部112を介してサーバ31に送信する。合成データと依頼コマンドとを受信するサーバ31は、合成データに対して文字認識処理を実行し、文字認識した後のデータを返信するので、処理結果受信部85は、通信I/F部112を制御して、サーバ31が合成データに対して文字認識処理を実行したデータを処理結果として受信する。処理結果受信部85は、処理結果として受信されたデータを分離部87に出力する。
【0079】
分離部87は、合成部81から対応テーブルが入力され、処理結果受信部85から処理結果としてのデータが受信される。分離部87は、処理結果受信部85から処理結果として入力されるデータを対応テーブルにしたがって、複数のジョブにそれぞれ対応する複数の部分に分離し、分離した複数の部分各々で、対応するジョブのデータを置き換える。また、ジョブの複数の処理のうち、担当処理の履歴については、処理を実行したことを示す印が追加される。分離部87は、複数のジョブをジョブ管理部53に出力する。
【0080】
図3では、MFP100のCPU111が有する機能について説明したが、MFP100A〜100D各々が有するCPU111が有する機能は、担当処理が異なるのみで、図3に示した機能と同様である。具体的には、MFP100Aの担当処理は、サーバ31Aが提供する翻訳サービスを利用する処理である。このため、MFP100Aには、対象処理が翻訳処理を含むジョブが蓄積され、トータル処理量が10000文字以上になれば、サーバ31Aに処理を依頼する。MFP100Bの担当処理は、サーバ31Bが提供する色変換サービスを利用する処理である。このため、MFP100Bには、対象処理が色変換処理を含むジョブが蓄積され、トータル処理量が100頁以上になれば、サーバ31Bに処理を依頼する。MFP100Cの担当処理は、サーバ31Cが提供する輪郭強調サービスを利用する処理である。このため、MFP100Cには、対象処理が輪郭強調処理を含むジョブが蓄積され、トータル処理量が100頁以上になれば、サーバ31Cに処理を依頼する。MFP100Dの担当処理は、サーバ31Dが提供するフォーマット変換サービスを利用する処理である。このため、MFP100Dには、対象処理がフォーマット変換処理を含むジョブが蓄積され、トータル処理量が100頁以上になれば、サーバ31Dに処理を依頼する。
【0081】
図5は、ジョブ受付処理の流れの一例を示すフローチャートである。ジョブ受付処理は、MFP100が備えるCPU111がROM114、EEPROM115、HDD116またはCD−ROM119Aに記憶されたジョブ実行プログラムを実行することにより、CPU111により実行される処理である。図5を参照して、CPU111は、データが指定されたか否かを判断する(ステップS01)。データが指定されるまで待機状態となり(ステップS01でNO)、データが指定されたならば(ステップS01でYES)、処理をステップS02に進める。表示部160Aにジョブ受付画面を表示し、ユーザがジョブ受付画面に従ってデータを指定したか否かを判断する。
【0082】
ステップS02においては、指定されたデータを取得し、処理をステップS03に進める。例えば、スキャンデータが指定されたならば、原稿読取部130を制御して、原稿読取部130が原稿を読み取って出力する画像データを処理対象となるデータとして取得する。また、HDD116に記憶されたデータが指定されたならば、指定されたデータをHDD116から読み出すことにより、読み出されたデータを処理対象となるデータとして取得する。
【0083】
ステップS03においては、処理が指定されたか否かを判断する。表示部160Aに表示されたジョブ受付画面に従って、ユーザが処理を指定したか否かを判断する。処理が指定されるまで待機状態となり(ステップS03でNO)、処理が指定されると(ステップS03でYES)、処理をステップS04に進める。ステップS04においては、処理条件を受け付ける。そして、設定が終了したか否かを判断する(ステップS05)。ユーザが、操作部160Bに予め設けられた設定終了キーを指示する操作を入力すれば、設定が終了したと判断する。設定が終了したならば処理をステップS06に進めるが、そうでなければ処理をステップS03に戻す。したがって、ジョブ受付処理においては、1以上の処理と、その処理を実行するための処理条件が受け付けられる。処理がステップS06に進む場合、ジョブが生成される。ジョブは、ステップS01において取得されたデータと、ステップS03において指定された1以上の処理と、1以上の処理を実行する実行順とを含む。実行順は、1以上の処理が受け付けられた順に定められる。
【0084】
次のステップS06においては、実行順が第1番目の処理を担当する装置を特定する。EEPROM115に記憶された処理定義テーブルを参照して、第1番目の処理の処理識別情報を含む処理定義レコードを抽出し、抽出された処理定義レコードの装置識別情報の項目に設定されている装置識別情報で特定される装置を、第1番目の処理を担当する装置として特定する。
【0085】
ステップS07においては、特定された担当装置にジョブを割り当てる。MFP100,100A〜100Dのうちから特定された担当装置に、ステップS01〜ステップS05において生成されたジョブを割り当てる。
【0086】
次のステップS08においては、ジョブを担当装置に出力する。特定した担当装置が、MFP100ならば、自装置の後述するジョブ管理処理を実行するプロセスに出力し、特定した担当装置が、MFP100A〜100Dのいずれかならば、通信I/F部112を介してMFP100A〜100Dのうち特定された担当装置にジョブを送信する。
【0087】
図6は、ジョブ管理処理の流れの一例を示すフローチャートである。ジョブ管理処理は、MFP100が備えるCPU111がROM114、EEPROM115、HDD116またはCD−ROM119Aに記憶されたジョブ実行プログラムを実行することにより、CPU111により実行される処理である。
【0088】
図6を参照して、ステップS11において、ジョブが入力されたか否かを判断する。ジョブが入力されたならば処理をステップS12に進めるが、そうでなければ処理をステップS14に進める。図5に示したジョブ受付処理を実行するプロセスがジョブを出力する場合、ジョブ受付処理を実行するプロセスからジョブが入力される。通信I/F部112が他のMFP100A〜100Dのいずれかからジョブを受信する場合、他のMFP100A〜100Dのいずれかからジョブが入力される。
【0089】
入力されたジョブに含まれる複数の処理のうち次に実行される対象処理が担当処理か否かを判断する。MFP100の担当処理は文字認識処理なので、対象処理が文字認識処理か否かを判断する。対象処理が担当処理ならば処理をステップS13に進めるが、そうでなければ処理をステップS20に進める。ステップS13においては、ステップS11において入力されたジョブをEEPROM115に記憶し、処理をステップS14に進める。一方、ステップS20においては、対象処理を実行し、処理をステップS14に進める。ステップS20において実行される対象処理は、MFP100において実行される処理であり、例えば、画像形成処理、データ送信処理、ファクシミリ送信処理である。
【0090】
ステップS14においては、バッチ処理結果が入力されたか否かを判断する。後述するバッチ処理を実行するプロセスからバッチ処理の結果が入力されたか否かを判断する。バッチ処理の結果が入力されたならば処理をステップS15に進めるが、そうでなければ処理をステップS11に戻す。
【0091】
ステップS15においては、バッチ処理の対象となった複数のジョブのうちから1つを選択する。次のステップS16においては、選択されたジョブに含まれる複数の処理のうち、実行順が担当処理の次の後段処理を特定する。そして、特定された後段処理を担当する後段処理装置を、MFP100A〜100Dのうちから特定する(ステップS17)。具体的には、EEPROM115に記憶されている処理定義テーブルを参照し、後段処理の処理識別情報を含む処理定義レコードの装置識別情報の項目に設定されている装置識別情報で特定される装置を後段処理装置に特定する。
【0092】
次のステップS18においては、特定された後段処理装置にステップS15において選択されたジョブを送信する。後段処理装置に送信するジョブは、ステップS14において入力されるバッチ処理結果のうちステップS15において選択されたジョブに対応する部分のデータを含む。そして、次のステップS19においては、バッチ処理の対象となった複数のジョブのうちから次に処理対象に選択するべきジョブが存在するか否かを判断する。ステップS15において選択されていないジョブが存在すれば、処理をステップS15に戻すが、そうでなければ処理をステップS11に戻す。
【0093】
図7は、バッチ処理の流れの一例を示すフローチャートである。バッチ処理は、MFP100が備えるCPU111がROM114、EEPROM115、HDD116またはCD−ROM119Aに記憶されたジョブ実行プログラムを実行することにより、CPU111により実行される処理である。
【0094】
図7を参照して、CPU111は、蓄積されたジョブのトータル処理量を算出する(ステップS21)。EEPROM115に記憶されているすべてのジョブ41に含まれるデータに対して、サーバ31がデータ処理、ここでは文字認識を実行する際のトータル処理量を算出する。そして、算出されたトータル処理量が、担当処理に対して予め定められた下限値TA以上か否かを判断する(ステップS22)。下限値TAは、処理定義テーブルの課金情報の割引条件の項目に設定された値、ここでは、「10000文字」である。トータル処理量が下限値TA以上ならば処理をステップS23に進めるが、そうでなければ処理をステップS21に戻す。換言すれば、バッチ処理は、サーバ31に文字認識処理を依頼した場合におけるトータル処理量が下限値TA以上になるまでEEPROM115にジョブが記憶される。
【0095】
ステップS23においては、タイマを「0」に設定する。タイマ「0」は、下限値TA以上のトータル処理量に相当するジョブ41がEEPROM115に記憶されてからの経過時間を計時する。ステップS24においては、タイマ値がしきい値T1以下か否かを判断する。タイマ値がしきい値T1以下ならば処理をステップS25に進めるが、そうでなければ処理をステップS27に進める。ステップS25においては、開始通知信号を受信したか否かを判断する。通信I/F部112が、他のMFP100A〜100Dのいずれかから開始通知信号を受信したか否かを判断する。開始通知信号を受信したならば処理をステップS26に進めるが、そうでなければ処理をステップS24に戻す。換言すれば、EEPROM115に下限値TA以上のトータル処理量に相当するジョブ41が記憶されてからしきい値T1の時間が経過する前に開始通知信号を受信する場合にステップS26が実行されるが、それ以外の場合にはステップS26は実行されない。
【0096】
ステップS26においては、開始通知信号を送信してきた前段処理装置からジョブを受信するまで待機状態となり、ジョブを受信したならば処理をステップS27に進める。
【0097】
ステップS27においては、蓄積されているジョブを読み出す。具体的には、EEPROM115に記憶されているジョブ41のうちから1つを選択して読み出す。そして、読み出されたジョブから後段処理を特定する(ステップS28)。ジョブに含まれる複数の処理のうち、実行順が担当処理の後の処理を後段処理に特定する。そして、特定された後段処理を担当する後段処理装置を、MFP100A〜100Dのうちから特定する(ステップS29)。具体的には、EEPROM115に記憶されている処理定義テーブルを参照し、後段処理の処理識別情報を含む処理定義レコードの装置識別情報の項目に設定されている装置識別情報で特定される装置を後段処理装置に特定する。
【0098】
次のステップS30においては、特定された後段処理装置に開始通知信号を送信する。開始通知信号は、ステップS27においては、読み出されたジョブを識別するためのジョブ識別情報を含む。次のステップS31においては、ステップS27において読み出されたジョブに含まれるデータを合成データに追加する。次のステップS32においては、EEPROM115に記憶されたジョブ41のうちに次に処理対象に選択するべきジョブが存在するか否かを判断する。ステップS27において読み出されていないジョブが存在すれば、処理をステップS27に戻すが、そうでなければ処理をステップS33に進める。EEPROM115に記憶されているすべてのジョブ41に対して、ステップS27〜ステップS31の処理が実行される。
【0099】
ステップS33においては、合成データの処理をサーバ31に依頼する。具体的には、合成データと依頼コマンドとを、通信I/F部112を介してサーバ31に送信する。合成データと依頼コマンドとを受信するサーバ31は、合成データに対して文字認識処理を実行し、文字認識した後のデータを返信する。次のステップS34においては、サーバ31から合成データに対して文字認識処理を実行したデータを処理結果として受信したか否かを判断する。サーバ31から処理結果を受信するまで待機状態となり(ステップS34でNO)、処理結果を受信したならば(ステップS34でYES)、処理をステップS35に進める。
【0100】
ステップS35においては、サーバ31から受信された処理結果を、複数のジョブにそれぞれ対応する複数の部分に分離する。そして、分離した複数の部分各々を複数のジョブごとの処理結果として出力する。具体的には、処理結果として受信されたデータを分離した複数の部分各々で、対応するジョブのデータを置き換え、ジョブの複数の処理のうち、担当処理の履歴として処理を実行したことを示す印を追加する。そして、データを処理結果で置き換えた複数のジョブを、出力する。ここでは、図6に示したジョブ管理処理を実行するプロセスに出力する。
【0101】
図8は、ジョブの状態の一例を示す図である。図8を参照して、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」で識別される5つのジョブが、順に投入された状態を示している。ジョブを、実行順に処理識別情報を配列して示している。例えば、ジョブ識別情報「JOB01」のジョブは、第1番目〜第4番目に、処理識別情報「輪郭強調」、「文字認識」、「フォーマット変換」および「データ送信」を示し、第1番目に輪郭強調処理が実行され、第2番目に文字認識処理が実行され、第3番目にフォーマット変換処理が実行され、第4番目にデータ送信処理が実行されることを示している。ジョブ識別情報「JOB02」のジョブは、第1番目に輪郭強調処理が実行され、第2番目に文字認識処理が実行され、第3番目にフォーマット変換処理が実行され、第4番目に画像形成処理が実行されることを示している。ジョブ識別情報「JOB03」のジョブおよびジョブ識別情報「JOB04」のジョブは、第1番目に文字認識処理が実行され、第2番目にフォーマット変換処理が実行され、第3番目に画像形成処理が実行されることを示している。ジョブ識別情報「JOB05」のジョブは、第1番目に文字認識処理が実行され、第2番目にフォーマット変換処理が実行され、第3番目にファクシミリ送信処理が実行されることを示している。
【0102】
ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」の順に、5つのジョブが画像処理システム1に投入され、ジョブ識別情報「JOB05」のジョブが投入された直後の段階におけるジョブの状態を説明する。ジョブ識別情報「JOB01」および「JOB02」のジョブはMFP100Cに蓄積され、2つのジョブのトータル処理量が、割引条件として定められた100頁以上となり、サーバ31Cにおいて輪郭強調処理が実行されている。図8では、実行中の処理の処理識別情報をハッチングで示している。
【0103】
ジョブ識別情報「JOB01」および「JOB02」のジョブの後段処理を担当する後段処理装置は、MFP100である。MFP100Cは、サーバ31Cに輪郭強調処理の実行を依頼した段階で、後段処理装置であるMFP100に、開始通知信号を送信している。この開始通知信号は、ジョブ識別情報「JOB01」、「JOB02」を含む。
【0104】
また、ジョブ識別情報「JOB03」、「JOB04」および「JOB05」の3つのジョブはMFP100に蓄積され、ジョブ識別情報「JOB05」のジョブが投入された段階で、3つのジョブのトータル処理量が、割引条件として定められた10000文字以上となったとする。この場合、MFP100は、MFP100Cから開始通知信号を受信しているので、開始通知信号に含まれるジョブ識別情報「JOB01」、「JOB02」のジョブが受信され、EEPROM115に記憶されるまで、サーバ31に文字認識処理の実行を依頼することなく待機する。
【0105】
そして、MFP100は、MFP100Cからジョブ識別情報「JOB01」、「JOB02」のジョブが受信され、EEPROM115に記憶されると、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」にそれぞれ含まれる5つのデータを合成した合成データに対して文字認識処理の実行をサーバ31に依頼する。
【0106】
図9は、文字認識処理をサーバに依頼した段階におけるジョブの状態を示す図である。図9を参照して、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」のすべてのジョブに文字認識処理の対象となっていることが、文字認識の処理識別情報をハッチングすることにより示されている。
【0107】
したがって、ジョブ識別情報「JOB05」のジョブが投入され、ジョブ識別情報「JOB03」、「JOB04」および「JOB05」の3つのジョブがMFP100に蓄積された段階で、直ちに、サーバ31に文字認識処理の実行を依頼したとすると、ジョブ識別情報「JOB01」、「JOB02」のジョブが、輪郭強調処理が実行された後に、MFP100に蓄積された段階においては、割引条件10000文字以上とならない。この場合には、次に文字認識処理を含む新たなジョブが画像処理システム1に投入されるまで、文字認識処理が実行されない。このため、画像処理システム1に投入された複数のジョブの状態を総合的に監視して、画像処理システム1において効率的に、ジョブに含まれる複数の処理を実行することができる。その結果、ジョブの待機時間が短くなる場合がある。このため、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」の5つのジョブを効率的に処理することができる。
【0108】
また、前段処理を実行するMFP100Cが担当処理の実行を開始すると、後段処理を担当処理とするMFP100に開始通知信号を送信するようにしたので、MFP100は、前段処理が実行中であるジョブ識別情報「JOB01」、「JOB02」の存在を容易に判断することができる。
【0109】
<第2の実施の形態>
第1の実施の形態においては、MFP100,100A〜100Dにおいて、担当処理を実行する場合に、担当処理の後の後段処理を担当処理とする後段処理装置に開始通知信号を送信するようにし、MFP100が担当処理の実行を開始する条件が成立した場合であっても、所定の時間T1が経過する前に、他のMFP100A〜100Dのいずれかから開始通知信号を受信する場合には、他のMFP100A〜100Dのうち開始通知信号を送信してきた装置からジョブが受信されるまで、担当処理の実行をすることなく待機するようにした。
【0110】
第2の実施の形態は、第1の実施の形態における画像処理システム1と同様に、MFP100が担当処理の実行を開始する条件が成立した場合であっても、所定の時間T1が経過する前に、他のMFP100A〜100Dのいずれかにおいて、MFP100の担当処理を後段処理とする処理を含むジョブの実行が開始された場合には、そのジョブが受信されるまで、担当処理の実行をすることなく待機する。このために、第2の実施の形態における画像処理システム1に含まれるMFP100,100A〜100Dそれぞれは、ジョブが画像処理システム1に投入された時点で、そのジョブの情報を共有するようにし、担当処理の実行を開始する条件が成立した場合に、所定の時間T1が経過する前に、前段の処理が開始されたか否かを判断するようにした。以下、第1の実施の形態における画像処理システム1と異なる点を主に説明する。
【0111】
図10は、第2の実施の形態におけるMFPが備えるCPUの機能の一例をEEPROMに記憶されるデータとともに示すブロック図である。図10に示す機能は、MFP100が備えるCPU111がROM114、EEPROM115、HDD116またはCD−ROM119Aに記憶されたジョブ実行プログラムを実行することにより、実現される。
【0112】
図10を参照して、図3に示した機能と異なる点は、ジョブ受付部51およびバッチ処理部55が、ジョブ受付部51Aおよびバッチ処理部55Aにそれぞれ変更された点である。また、バッチ処理部55に含まれる開始通知受信部71、開始通知部79が、バッチ処理部55Aにおいては削除された点、バッチ処理部55に含まれる判断部73が、判断部73Aに変更された点である。その他の機能は、図3に示した機能と同じなので、ここでは説明を繰り返さない。また、MFP100,100A〜100Dで実行されるジョブ実行処理は同じなので、ここでは、特に言及しない限り、MFP100を例に説明する。
【0113】
ジョブ受付部51Aは、取得されたデータと、指定された1以上の処理各々の処理識別情報と、1以上の処理を実行する順番と、を含むジョブを生成する。ジョブ受付部51Aは、予定ジョブ情報送信部59を含む。予定ジョブ情報送信部59は、生成されたジョブを識別するためのジョブ識別情報と、生成されたジョブに含まれる1以上の処理各々の処理識別情報と、1以上の処理を実行する実行順とを含む予定ジョブ情報を生成する。予定ジョブ情報送信部59は、予定ジョブ情報を、他のMFP100A〜100Dに、通信I/F部112を介して送信する。
【0114】
図11は、第2の実施の形態における判断部の機能の一例を示すブロック図である。図11を参照して、判断部73Aは、予定ジョブ情報を受信する予定ジョブ情報受信部91と、予定ジョブ情報を抽出する予定ジョブ情報抽出部93と、担当処理の前段の前段処理を特定する前段処理特定部95と、問合せ部97と、を含む。
【0115】
予定ジョブ情報受信部91は、通信I/F部112を制御し、他のMFP100A〜100Dのいずれかから予定ジョブ情報を受信する。予定ジョブ情報受信部91は、受信された予定ジョブ情報を、予定ジョブ情報抽出部93に出力する。
【0116】
予定ジョブ情報抽出部93は、予定ジョブ情報受信部91から入力される予定ジョブ情報のうちから、MFP100の担当処理の処理識別情報を含む予定ジョブ情報を抽出する。そして、予定ジョブ情報抽出部93は、抽出されたすべての予定ジョブ情報を、前段処理特定部95に出力する。
【0117】
前段処理特定部95は、予定ジョブ情報抽出部93から入力される予定ジョブ情報各々から前段処理を特定する。予定ジョブ情報含まれるMFP100の担当処理の処理識別情報よりも実行順が1つ前の処理識別情報を特定する。そして、特定した処理識別情報を、問合せ部97に出力する。
【0118】
問合せ部97は、前段処理特定部95から入力される前段処理の処理識別情報を担当処理とする前段処理装置を、EEPROM115に記憶されている処理定義テーブルに基づいてMFP100A〜100Eのうちから特定する。そして、第1遅延部75から条件成立信号が入力されてから第1開始指示が入力されるまでの間、特定された前段処理装置に前段処理の実行が開始されたか否かを問合せる。問合せの結果、前段処理装置から実行中を示す信号と、実行中でないことを示す信号のいずれかが返信される。実行中を示す信号は、ジョブを識別するためのジョブ識別情報を含む。なお、前段処理装置が返信する実行中を示す信号に含まれるジョブ識別情報は、前段処理装置の担当処理の後段処理が、MFP100の担当処理のジョブを識別するためのジョブ識別情報である。
【0119】
問合せ部97は、第1遅延部75から条件成立信号が入力された後に、第1開始指示が入力される前に、前段処理装置から実行中を示す信号を受信する場合、MFP100の担当処理を含み、かつ、担当処理の直前の前段処理が実行中であるジョブが存在すると判断する。問合せ部97は、第1遅延部75から条件成立信号が入力された後に、第1開始指示が入力される前に、前段処理装置から実行中を示す信号を受信する場合、存在信号を第2遅延部77に出力する。存在信号は、前段処理装置から受信される実行中を示す信号に含まれるジョブ識別情報を含む。
【0120】
図12は、第2の実施の形態におけるジョブ受付処理の流れの一例を示すフローチャートである。図12を参照して、図5に示したジョブ受付処理と異なる点は、ステップS05とステップS06との間に、ステップS05Aが追加された点である。その他の処理は、図5に示した処理と同じなのでここでは説明を繰り返さない。
【0121】
ステップS05Aにおいては、予定ジョブ情報を送信する。予定ジョブ情報は、ステップS01〜ステップS04が実行されて生成されたジョブに関し、そのジョブを識別するためのジョブ識別情報と、ジョブに含まれる1以上の処理各々の処理識別情報と、1以上の処理を実行する実行順とを含む。ステップS05Aにおいては、予定ジョブ情報を、他のMFP100A〜100Dのすべてに、通信I/F部112を介して送信する。
【0122】
図13は、第2の実施の形態におけるバッチ処理の流れの一例を示すフローチャートである。バッチ処理は、MFP100が備えるCPU111がROM114、EEPROM115、HDD116またはCD−ROM119Aに記憶されたジョブ実行プログラムを実行することにより、CPU111により実行される処理である。図13を参照して、CPU111は、予定ジョブ情報を受信したか否かを判断する。通信I/F部112が、他のMFP100A〜100Dのいずれかから予定ジョブ情報を受信したか否かを判断する。予定ジョブ情報を受信したならば処理をステップS42に進めるが、受信しなければステップS42をスキップして処理をステップS43に進める。ステップS42においては、受信された予定ジョブ情報をEEPROM115に一時記憶し、処理をステップS43に進める。
【0123】
ステップS43〜ステップS45の処理は、図7のステップS21〜ステップS23の処理とそれぞれ同じである。すなわち、EEPROM115に蓄積されたジョブのトータル処理量を算出し(ステップS43)、算出されたトータル処理量が、担当処理に対して予め定められた下限値TA以上か否かを判断する(ステップS44)。トータル処理量が下限値TA以上ならば処理をステップS45に進めるが、そうでなければ処理をステップS41に戻す。換言すれば、バッチ処理は、サーバ31に実行を依頼する処理のトータル処理量が下限値TA以上になるまでEEPROM115にジョブが記憶されるとともに、予定ジョブ情報がEEPROM115に記憶される。次のステップS45においては、タイマを「0」に設定し、処理をステップS46に進める。
【0124】
ステップS46においては、EEPROM115に記憶された予定ジョブ情報のうちから担当処理の処理識別情報を含む予定ジョブ情報を抽出する。そして、前段処理を特定する(ステップS47)。抽出された予定ジョブ情報各々において、MFP100の担当処理の処理識別情報よりも実行順が1つ前の処理識別情報を前段処理に特定する。そして、MFP100A〜100Dのうちで、前段処理を担当処理とする装置を前段処理装置に特定する(ステップS48)。ステップS46において複数の予定ジョブ情報が抽出される場合は、複数の予定ジョブ情報ごとに前段処理装置を特定する。
【0125】
次のステップS49においては、タイマ値がしきい値T1以下か否かを判断する。タイマ値がしきい値T1以下ならば処理をステップS50に進めるが、そうでなければ処理をステップS53に進める。ステップS50においては、前段処理装置に前段処理を実行中か否かを問合せる。ステップS48において、複数の前段処理装置が特定される場合には、複数の前段処理装置のすべてに問合せる。次のステップS51においては、前段処理装置から実行中を示す信号を受信したか否かを判断する。実行中を示す信号を受信したならば処理をステップS52に進めるが、そうでなければ処理をステップS49に戻す。複数の前段処理装置が特定される場合には、複数の前段処理装置の少なくとも1つから実行中を示す信号を受信したならば処理をステップS52に進める。
【0126】
換言すれば、EEPROM115に下限値TA以上のトータル処理量に相当するジョブ41が記憶されてからしきい値T1の時間が経過する前に、複数の前段処理装置の少なくとも1つから実行中を示す信号を受信したならば、ステップS52が実行されるが、それ以外の場合にはステップS52は実行されない。
【0127】
ステップS52においては、実行中を示す信号を送信してきた前段処理装置からジョブを受信するまで待機状態となり(ステップS52でNO)、ジョブを受信したならば(ステップS52でYES)、処理をステップS53に進める。ステップS53においては、蓄積されているジョブを読み出す。具体的には、EEPROM115に記憶されているジョブ41のうちから1つを選択して読み出す。そして、読み出されたジョブに含まれるデータを合成データに追加する(ステップS54)。次のステップS55においては、EEPROM115に記憶されたジョブ41のうちに次に処理対象に選択するべきジョブが存在するか否かを判断する。ステップS53において読み出されていないジョブが存在すれば、処理をステップS53に戻すが、そうでなければ処理をステップS56に進める。EEPROM115に記憶されているすべてのジョブ41に対して、ステップS53およびステップS34の処理が実行される。
【0128】
次のステップS56〜ステップS59の処理は、図7に示したステップS33〜ステップS36の処理とそれぞれ同じである。したがって、ここでは説明を繰り返さない。
【0129】
ここで、図8および図9を用いて、第2の実施の形態におけるMFP100,100A〜100Dの動作と、ジョブの状態の遷移について説明する。図8を参照して、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」の順に、5つのジョブが画像処理システム1に投入され、ジョブ識別情報「JOB05」のジョブが投入された直後の段階におけるジョブの状態を説明する。この場合、MFP100,100A〜100D各々は、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」各々を含む予定ジョブ情報が入力され、記憶されている。
【0130】
ここで、ジョブ識別情報「JOB01」および「JOB02」のジョブはMFP100Cに蓄積され、2つのジョブのトータル処理量が、割引条件100頁以上となり、サーバ31Cにおいて輪郭強調処理が実行されているとする。図8では、実行中の処理の処理識別情報をハッチングで示している。
【0131】
また、ジョブ識別情報「JOB03」、「JOB04」および「JOB05」の3つのジョブはMFP100に蓄積され、ジョブ識別情報「JOB05」のジョブが投入された段階で、3つのジョブのトータル処理量が、割引条件10000文字以上となったとする。この場合、MFP100は、予定ジョブ情報に基づいて、MFP100の担当処理を含む予定ジョブ情報を抽出する。ここでは、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」をそれぞれ含む5つの予定ジョブ情報を抽出する。そして、抽出された5つの予定ジョブ情報各々からMFP100の担当処理の処理識別情報よりも実行順が1つ前の処理識別情報を特定する。具体的には、ジョブ識別情報「JOB01」および「JOB02」を含む2つの予定ジョブ情報各々から、前段処理が処理識別情報「輪郭強調」に特定される。ジョブ識別情報「JOB03」、「JOB04」、「JOB05」をそれぞれ含む3つの予定ジョブ情報は、前段処理が存在しないからである。
【0132】
そして、図4に示した、処理定義テーブルに基づいて、処理識別情報「輪郭強調」の前段処理を担当処理とする装置識別情報「第4MFP」のMFP100Cを特定し、MFP100Cに輪郭共著処理を実行中か否かを問合せる。MFP100Cは、輪郭強調処理を時候しているので、実行中を示す信号を返信する。実行中を示す信号は、ジョブ識別情報「JOB01」および「JOB02」を含む。このためMFP100は、実行中を示す信号に含まれるジョブ識別情報「JOB01」、「JOB02」のジョブが受信され、EEPROM115に記憶されるまで、サーバ31に文字認識処理の実行を依頼することなく待機する。
【0133】
そして、MFP100は、MFP100Cからジョブ識別情報「JOB01」、「JOB02」のジョブが受信され、EEPROM115に記憶されると、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」にそれぞれ含まれる5つのデータを合成した合成データに対して文字認識処理の実行をサーバ31に依頼する。
【0134】
図9は、文字認識処理をサーバに依頼した段階におけるジョブの状態を示す図である。図9を参照して、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」のすべてのジョブに文字認識処理の対象となっていることが、文字認識の処理識別情報をハッチングすることにより示されている。
【0135】
したがって、ジョブ識別情報「JOB05」のジョブが投入され、ジョブ識別情報「JOB03」、「JOB04」および「JOB05」の3つのジョブがMFP100に蓄積された段階で、直ちに、サーバ31に文字認識処理の実行を依頼したとすると、ジョブ識別情報「JOB01」、「JOB02」のジョブが、輪郭強調処理が実行された後に、MFP100に蓄積された段階においては、割引条件10000文字以上とならない。この場合には、次に文字認識処理を含む新たなジョブが画像処理システム1に投入されるまで、文字認識処理が実行されない。このため、画像処理システム1に投入された複数のジョブの状態を総合的に監視して、画像処理システム1において効率的に、ジョブに含まれる複数の処理を実行することができる。その結果、ジョブの待機時間が短くなる場合がある。このため、ジョブ識別情報「JOB01」、「JOB02」、「JOB03」、「JOB04」、「JOB05」の5つのジョブを効率的に処理することができる。
【0136】
また、後段処理を担当処理とするMFP100は、予定ジョブ情報に基づいて、前段処理を担当処理とするMFP100Cを特定し、MFP100Cに前段処理が実行中であるジョブ識別情報「JOB01」、「JOB02」の存在を問合せるので、前段処理が実行中であるジョブ識別情報「JOB01」、「JOB02」の存在を容易に判断することができる。
【0137】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0138】
1 画像処理システム、11 ネットワーク、13 インターネット、 21,23 PC、31,31A〜31D サーバ、100,100A〜100D MFP、51,51A ジョブ受付部、53 ジョブ管理部、55,55A バッチ処理部、57 ジョブ割当部、59 予定ジョブ情報送信部、61 ジョブ取得部、63 蓄積部、65 ジョブ送信部、67 ジョブ実行部、71 開始通知受信部、73,73A 判断部、75 遅延部、77 遅延部、79 開始通知部、81 合成部、83 処理依頼部、85 処理結果受信部、87 分離部、91 予定ジョブ情報受信部、93 予定ジョブ情報抽出部、95 前段処理特定部、97 問合せ部、110 メイン回路、111 CPU、112 通信I/F部、113 ROM、114 RAM、115 EEPROM、116 HDD、117 ファクシミリ部、119 外部記憶装置、119A CD−ROM、120 自動原稿搬送装置、130 原稿読取部、140 画像形成部、150 給紙部、160 操作パネル、160A 表示部、160B 操作部。



【特許請求の範囲】
【請求項1】
それぞれが複数の処理のうちから選ばれた担当処理を実行可能な複数の処理実行手段と、
処理対象となるデータと、該データに対して前記複数の処理のうちから選ばれた1以上の処理と前記1以上の処理を実行する順番とを定めたジョブを受け付けるジョブ受付手段と、を備え、
前記複数の処理実行手段各々は、前記ジョブ受付手段により受け付けられたジョブであって、実行されていない処理のうちで順番が最も先の処理が前記担当処理であるジョブを蓄積する蓄積手段と、
前記蓄積手段により蓄積された1以上のジョブを実行するためのトータル処理量が前記担当処理に対して予め定められた下限値以上になることを条件に、前記蓄積された1以上のジョブがそれぞれ処理対象とする1以上のデータを1つにまとめた合成データに対して、前記担当処理を実行するバッチ処理手段と、を備え、
前記バッチ処理手段は、前記ジョブ受付手段により受け付けられた複数のジョブのうち、前記担当処理を含み、かつ、前記担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断手段と、
前記トータル処理量が前記下限値以上となる開始可能時から所定時間経過するまで、前記担当処理の開始を遅延させる第1遅延手段と、
前記開始可能時から前記所定時間が経過する前に、前記判断手段により前記前段処理が実行中であるジョブが存在すると判断される場合、前記前段処理が実行中と判断されたジョブが前記蓄積手段に蓄積されるまで、前記担当処理の開始を遅延させる第2遅延手段と、を含む、画像処理システム。
【請求項2】
前記バッチ処理手段は、前記担当処理の実行が開始されることに応じて、前記担当処理の対象となる前記1以上のジョブ各々において前記担当処理の直後の後段処理を特定し、前記複数の処理実行手段のうち前記後段処理を担当する後段処理実行手段に、開始を通知する開始通知信号を出力する開始通知手段をさらに含み、
前記判断手段は、前記開始可能時から前記所定時間が経過する前に、前記複数の処理実行手段のいずれかから開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断する、請求項1に記載の画像システム。
【請求項3】
前記ジョブ受付手段は、前記ジョブが受け付けられることに応じて、前記複数の処理実行手段のすべてに、前記受け付けられたジョブにより定まる前記複数の処理のうちから選ばれた1以上の処理と前記1以上の処理を実行する順番とを含む予定ジョブ情報を通知する予定ジョブ情報通知手段を、含み、
前記判断手段は、前記予定ジョブ情報通知手段から通知される1以上の予定ジョブ情報のうちから前記担当処理が未だ実行されていない予定ジョブ情報を抽出する予定ジョブ情報抽出手段と、
前記抽出された予定ジョブ情報において、前記担当処理の直前の前段処理を特定する前段処理特定手段と、を含み、
前記複数の処理実行手段のうち前記特定された前段処理を担当する前段処理実行手段において、前記抽出された予定ジョブ情報で特定されるジョブが実行中か否かを判断する、請求項1に記載の画像システム。
【請求項4】
複数の画像処理装置を、備え、
前記複数の処理実行手段各々は、前記複数の画像処理装置のいずれか1つに設けられ、
前記ジョブ受付手段は、前記複数の画像処理装置の1以上に設けられる、請求項1〜3のいずれかに記載の画像システム。
【請求項5】
前記複数の処理実行手段各々は、処理対象となるデータを、前記担当処理の実行先として予め登録されたサーバ装置に送信し、前記担当処理の実行を依頼する依頼手段と、
前記担当処理の実行を依頼したサーバ装置から処理結果となるデータを受信するデータ受信手段と、を含む、請求項1〜4のいずれかに記載の画像処理システム。
【請求項6】
それぞれが複数の処理のうちから選ばれた担当処理を実行可能な複数の処理実行手段を含む画像処理システムで実行されるジョブ実行方法であって、
処理対象となるデータと、該データに対して前記複数の処理のうちから選ばれた1以上の処理と前記1以上の処理を実行する順番とを定めたジョブであって、実行されていない処理のうちで順番が最も先の処理が前記担当処理であるジョブを蓄積する蓄積ステップと、
前記蓄積ステップにおいて蓄積された1以上のジョブを実行するためのトータル処理量が前記担当処理に対して予め定められた下限値以上になることを条件に、前記蓄積された1以上のジョブがそれぞれ処理対象とする1以上のデータを1つにまとめた合成データに対して、前記担当処理を実行するバッチ処理ステップと、を前記複数の処理実行手段各々に実行させ、
前記バッチ処理ステップは、前記ジョブ受付手段により受け付けられた複数のジョブのうち、前記蓄積ステップにおいて蓄積されていないジョブであって、前記担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断ステップと、
前記トータル処理量が前記下限値以上となる開始可能時から所定時間経過するまで、前記担当処理の開始を遅延させる第1遅延ステップと、
前記開始可能時から前記所定時間が経過する前に、前記判断ステップにおいて前記前段処理が実行中であるジョブが存在すると判断される場合、前記前段処理が実行中と判断されたジョブが前記蓄積ステップにおいて蓄積されるまで、前記担当処理の開始を遅延させる第2遅延ステップと、を含む、ジョブ実行方法。
【請求項7】
前記バッチ処理ステップは、前記担当処理の実行が開始されることに応じて、前記担当処理の対象となる前記1以上のジョブ各々において前記担当処理の直後の後段処理を特定するステップと、
前記複数の処理実行手段のうち前記後段処理を担当する後段処理実行手段に、開始を通知する開始通知信号を出力するステップと、をさらに含み、
前記判断ステップは、前記開始可能時から前記所定時間が経過する前に、前記複数の処理実行手段のいずれかから開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断するステップを含む、請求項6に記載のジョブ実行方法。
【請求項8】
前記画像処理システムにジョブが投入された時点で、前記投入されたジョブにより定まる前記複数の処理のうちから選ばれた1以上の処理と前記1以上の処理を実行する順番とを含む予定ジョブ情報を受信する予定ジョブ情報受信ステップと、をさらに前記複数の処理実行手段各々に実行させ、
前記判断ステップは、前記予定ジョブ情報受信ステップにおいて受信される1以上の予定ジョブ情報のうちから前記担当処理が未だ実行されていない予定ジョブ情報を抽出する予定ジョブ情報抽出ステップと、
前記抽出された予定ジョブ情報において、前記担当処理の直前の前段処理を特定する前段処理特定ステップと、
前記複数の処理実行手段のうち前記特定された前段処理を担当する前段処理実行手段において、前記抽出された予定ジョブ情報で特定されるジョブが実行中か否かを判断するステップと、を含む、請求項6に記載のジョブ実行方法。
【請求項9】
それぞれが複数の処理のうちから選ばれた担当処理を実行可能な複数の処理実行装置を含む画像処理システムで実行されるジョブ実行プログラムであって、
前記複数の処理実行装置各々を制御するコンピュータに、
処理対象となるデータと、該データに対して前記複数の処理のうちから選ばれた1以上の処理と前記1以上の処理を実行する順番とを定めたジョブであって、実行されていない処理のうちで順番が最も先の処理が前記担当処理であるジョブを蓄積する蓄積ステップと、
前記蓄積ステップにおいて蓄積された1以上のジョブを実行するためのトータル処理量が前記担当処理に対して予め定められた下限値以上になることを条件に、前記蓄積された1以上のジョブがそれぞれ処理対象とする1以上のデータを1つにまとめた合成データに対して、前記担当処理を実行するバッチ処理ステップと、を実行させ、
前記バッチ処理ステップは、前記ジョブ受付手段により受け付けられた複数のジョブのうち、前記蓄積ステップにおいて蓄積されていないジョブであって、前記担当処理の直前の前段処理が実行中であるジョブが存在する否かを判断する判断ステップと、
前記トータル処理量が前記下限値以上となる開始可能時から所定時間経過するまで、前記担当処理の開始を遅延させる第1遅延ステップと、
前記開始可能時から前記所定時間が経過する前に、前記判断ステップにおいて前記前段処理が実行中であるジョブが存在すると判断される場合、前記前段処理が実行中と判断されたジョブが前記蓄積ステップにおいて蓄積されるまで、前記担当処理の開始を遅延させる第2遅延ステップと、を含む、ジョブ実行プログラム。
【請求項10】
前記バッチ処理ステップは、前記担当処理の実行が開始されることに応じて、前記担当処理の対象となる前記1以上のジョブ各々において前記担当処理の直後の後段処理を特定するステップと、
前記複数の処理実行装置のうち前記後段処理を担当する後段処理実行装置に、開始を通知する開始通知信号を出力するステップと、をさらに含み、
前記判断ステップは、前記開始可能時から前記所定時間が経過する前に、前記複数の処理実行装置のいずれかから開始信号が入力される場合、前段処理が実行中であるジョブが存在すると判断するステップを含む、請求項9に記載のジョブ実行プログラム。
【請求項11】
前記画像処理システムにジョブが投入された時点で、前記投入されたジョブにより定まる前記複数の処理のうちから選ばれた1以上の処理と前記1以上の処理を実行する順番とを含む予定ジョブ情報を受信する予定ジョブ情報受信ステップと、をさらに前記複数の処理実行装置各々を制御するコンピュータに実行させ、
前記判断ステップは、前記予定ジョブ情報受信ステップにおいて受信される1以上の予定ジョブ情報のうちから前記担当処理が未だ実行されていない予定ジョブ情報を抽出する予定ジョブ情報抽出ステップと、
前記抽出された予定ジョブ情報において、前記担当処理の直前の前段処理を特定する前段処理特定ステップと、
前記複数の処理実行装置のうち前記特定された前段処理を担当する前段処理実行装置において、前記抽出された予定ジョブ情報で特定されるジョブが実行中か否かを判断するステップと、を含む、請求項9に記載のジョブ実行プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2012−230439(P2012−230439A)
【公開日】平成24年11月22日(2012.11.22)
【国際特許分類】
【出願番号】特願2011−96569(P2011−96569)
【出願日】平成23年4月22日(2011.4.22)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】