Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4343554B2 - Distributed image forming apparatus - Google Patents
[go: Go Back, main page]

JP4343554B2 - Distributed image forming apparatus - Google Patents

Distributed image forming apparatus Download PDF

Info

Publication number
JP4343554B2
JP4343554B2 JP2003054202A JP2003054202A JP4343554B2 JP 4343554 B2 JP4343554 B2 JP 4343554B2 JP 2003054202 A JP2003054202 A JP 2003054202A JP 2003054202 A JP2003054202 A JP 2003054202A JP 4343554 B2 JP4343554 B2 JP 4343554B2
Authority
JP
Japan
Prior art keywords
image forming
lock
request
job
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003054202A
Other languages
Japanese (ja)
Other versions
JP2004262063A (en
Inventor
聡司 藤谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2003054202A priority Critical patent/JP4343554B2/en
Publication of JP2004262063A publication Critical patent/JP2004262063A/en
Application granted granted Critical
Publication of JP4343554B2 publication Critical patent/JP4343554B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、画像形成装置に関し、特に、ネットワークを介して接続される1つ以上のストレージに印刷パラメータと画像形成される文書データとを格納し、自ら該印刷パラメータに従って該文書データに対する画像形成処理を行うと共に、ネットワークを介して1つ以上の他の画像形成装置に対して、該文書データに対する画像形成処理を分散して行わせることができる分散型画像形成装置を提供するものである。
【0002】
【従来の技術】
ネットワークを介してプリンタと接続されるPC(Personal Computer)から印刷を該プリンタに行わせる際、プリンタ側での紙切れ、紙詰まり、トナー切れ等の要因によって印刷が中断されることがあった。そこで、必ず印刷されるようにするために、複数のプリンタと接続され、それらプリンタへの印刷処理を制御するサーバによって、印刷が中断された場合には、他プリンタへ処理を切り替えるようにすることが可能となった。
【0003】
【発明が解決しようとする課題】
しかしながら、上記従来のサーバを備えたプリンタシステムでは、該サーバに接続されるプリンタの設定等を行う利用者による作業を必要としていた。そのため、プリンタを追加又は取り除かれる等によって該サーバへの接続されるプリンタの構成が変更した際には、その都度、利用者によって設定を変更しなければならなかった。
【0004】
そこで、本発明の課題は、ネットワークを介して接続される1つ以上のストレージに印刷パラメータと画像形成される文書データとを格納し、自ら該印刷パラメータに従って該文書データに対する画像形成処理を行うと共に、ネットワークを介して1つ以上の他の画像形成装置に対して、該文書データに対する画像形成処理を行わせることができる画像形成装置を提供するものである。
【0005】
【課題を解決するための手段】
上記課題を解決するため、本発明は、請求項1に記載されるように、画像形成を要求する第一画像形成要求に基づいて、他の画像形成装置によってアクセス可能であり、画像形成パラメータと画像形成すべき対象データとを保存する保存手段に対して、該他の画像形成装置による重複出力を抑制するために該対象データの全部又は一部ロックを要求して、上記画像形成パラメータに従って、上記ロックた対象データの全部又は一部に基づいて画像を形成するように画像形成処理を制御する制御手段を有し、上記制御手段は、所定ロック時間を経過しても上記ロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求することを特徴とする
【0006】
このような分散型画像形成装置では、対象データが保存される保存手段に対してロックを要求してからロックした文書データの全部又は一部を画像形成処理するように制御されるため、他の画像形成装置とによって重複して画像形成処理することなく文書データの画像形成処理を行うことができる。更に、他の画像形成装置によってロックされた対象データをロック時間後に強制的にそのロックを解除して、自装置によって画像形成処理することができる。従って、画像形成処理中に他の画像形成装置に障害が発生したとしても、ロック時間後に障害の発生によって処理されなかった対象データの画像形成処理を自装置にて実行することができる。
【0007】
また、本発明は、請求項2に記載されるように、上記制御手段は、上記第一画像形成要求の受信時に、上記対象データの全部又は一部にロックを要求すると共に、上記画像形成パラメータと該対象データの保存を要求する保存要求を1つ以上の上記保存手段に行、上記画像形成パラメータの一部を示す第二画像形成要求を1つ以上の他の画像形成装置に対して送信すように構成することができる。
【0008】
このような分散型画像形成装置では、画像形成処理を行うと共に、他の画像形成装置に対しても画像形成要求を行うため、自身に障害が発生したとしてもいずれかの画像形成装置にて画像形成処理を行うことができる。例えば、PCから直接第一画像形成要求を受信した画像形成装置が自発的に他画像形成装置に対して第二画像形成要求を行うため、このような処理を制御するためのサーバを備える必要がない。また、利用者は、一回の画像形成要求を行うのみでよいため、画像形成装置の故障等の状態を知る必要がない。
【0009】
更に、本発明は、請求項3に記載されるように、上記制御手段は、他の画像形成装置から上記第二画像形成要求を受信すると上記対象データの全部又は一部ロックを要求すると共に、該対象データの全部又は一部のダウンロードを上記保存手段に対して要求し、上記保存手段から上記対象データをダウンロードして取得するように構成することができる。
【0010】
このような分散型画像形成装置では、PCから直接ではなく他の画像形成装置から第二画像形成要求を受信すると、保存手段に対して画像形成すべき対象データの全部又は一部をロックして、保存手段からダウンロードするため、第二画像形成要求を送信した他の画像形成装置に故障が発生したとしても、対象データの画像形成を重複することなく実行することができる。
【0011】
また、本発明は、請求項4に記載されるように、上記対象データの全部又は一部が上記保存手段に存在しているにも係わらず上記ロックができない場合、上記所定ロック時間の経過後に、上記ロックを上記保存手段に要求するように制御するロック時間制御手段を有し、上記制御手段は、上記ロック時間制御手段によるロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求するように構成することができる。
【0012】
また、本発明は、請求項5に記載されるように、上記制御手段は、上記保存手段に、上記対象データを所定の区切りで分割した分割データ単位でロックを要求するように構成することができる。このような分散型画像形成装置では、画像形成処理中の分割データ(ページ)毎にロックをすることができる。
【0013】
更に、本発明は、請求項に記載されるように、上記制御手段は、上記分割データ単位で画像形成処理を行う場合対象となる分割データごとにロック上記保存手段に要求し分割データが削除されていてロックができなかった場合該画像形成処理の対象として次の分割データのロック上記保存手段に要求するように構成することができる。
【0014】
このような分散型画像形成装置では、ロック可能な分割データ(ページ)から優先して画像形成処理を実行することができる。
【0015】
また、本発明は、請求項に記載されるように、上記制御手段は、上記分割データ単位で画像形成処理を行う場合、対象となる分割データごとにロックを上記保存手段に要求し、所ロック時間経過しても該分割データのロックができない場合上記保存手段に対して該分割データのロックを解除させ、再度、該分割データのロックを要求するように構成することができる。
【0017】
更に、本発明は、請求項に記載されるように、上記制御手段は、上記対象データの部数単位で画像形成処理を行う場合、ジョブロック上記保存手段に要求することによって該対象データの全部をロックし、所ロック時間経過しても該ジョブのロックができない場合上記保存手段に対して該ジョブのロックを解除させ、再度、該ジョブのロックを要求するように構成することができる。
【0018】
このような分散型画像形成装置では、他の画像形成装置によってロックされたジョブをロック時間後に強制的にそのロックを解除して、自装置によって画像形成処理することができる。従って、画像形成処理中に他の画像形成装置に障害が発生したとしても、ロック時間後に障害の発生によって処理されなかったジョブの画像形成処理を自装置にて実行することができる。例えば、部数単位で画像形成処理が行われる場合にジョブがロックされる。
【0019】
また、本発明は、請求項に記載されるように、上記第一画像形成要求に1つ以上の他の画像形成装置が指定されていない場合、画像形成処理可能な他の画像形成装置を検索する装置検索手段を有し、上記制御手段は、上記装置検索手段によって検索された1つ以上の他の画像形成装置に対して上記保存要求を送信するように構成することができる。
【0020】
このような分散型画像形成装置では、自発的に画像形成処理可能な画像形成装置を検索して画像形成要求を行うため、利用者は、1つの画像形成装置のみを指定すればよい。
【0021】
更に、本発明は、請求項10に記載されるように、上記制御手段は、画像形成した上記分割データを削除す削除要求を上記保存手段に送信するように構成することができる。また、本発明は、請求項11に記載されるように、上制御手段は、上記対象データの全部又は上記対象データを構成する分割データ全てに対して画像処理が終了した場合、上記対象データに対するジョブを削除するジョブ削除要求を上記保存手段に行ように構成することができる。
【0022】
このような分散型画像形成装置では、画像形成処理が終了した分割データ(ページ)又はジョブを保存手段から削除するため、保存手段は、画像形成処理が終了した分割データ(ページ)又はジョブを管理する必要がない。
【0027】
また、上記課題を解決するため、本発明は、請求項13に記載されるように、ネットワークを介して、利用者が使用する利用者端末と、画像形成処理に関する情報を保存する少なくとも1つの保存装置と、画像形成処理を実行する少なくとも1つの画像形成装置とが接続される画像形成システムにおいて、該利用者端末からの画像形成要求に応じて該画像形成処理を行う画像形成方法において、上記利用者端末は、画像形成を要求する第一画像形成要求を上記画像形成装置に送信する第一画像形成要求送信手順を有し、上記画像形成装置は、上記第一画像形成要求に基づいて、他の画像形成装置によってアクセス可能であり、画像形成パラメータと画像形成すべき対象データとを保存する保存手段に対して、該他の画像形成装置による重複出力を抑制するために該対象データの全部又は一部ロックを要求して、上記画像形成パラメータに従って、上記ロックた対象データの全部又は一部に基づいて画像を形成するように画像形成処理を制御す制御手順有し、上記制御手順は、所定ロック時間を経過しても上記ロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求するように構成される。
【0028】
このような画像形成システムにおける画像形成方法では、利用者は、ネットワークを介して、1つの画像形成装置に対して画像形成要求を行うのみで、画像形成装置又は保存装置にて障害が発生した場合においても、いずれかの画像形成装置又は保存装置によって画像形成処理が行うことができる。
【0029】
上記課題を解決するための手段として、本発明は、コンピュータに行なわせるための上記プログラムを記録した記録媒体とすることもできる。
【0030】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【0031】
本発明の第一実施例に係る画像形成システムは、図1に示すようなネットワーク構成を成す。図1は、本発明の第一実施例に係る画像形成システムのネットワーク構成例を示す図である。図1において、画像形成システム1001は、印刷処理を行う複数のプリンタ100−1〜100−nと、印刷パラメータ及び文書データを保存するストレージ200と、文書を印刷する利用者が使用するPC(Personal Computer)300とによって構成されるシステムである。複数のプリンタ100−1〜100−nと、ストレージ200と、PC300とは、ネットワーク40を介して接続される。
【0032】
このような画像形成システム1001において、PC300から印刷要求を直接受信するプリンタを主となるプリンタ100−1とし、プリンタ100−1がPC300に代わって印刷要求を送信する補助のプリンタをプリンタ100−2から100−3とする。複数のプリンタ100−1〜100−nは、同等の機能を有するプリンタであって、以下、総称する場合には単にプリンタ100と言う。
【0033】
説明の便宜上、プリンタ100−1をPC300から直接印刷要求を受信するプリンタとしているが、プリンタ100−1から100−nのどのプリンタであっても良い。単に、プリンタ100−1から100−nのうちのPC300から印刷要求を直接受信したプリンタを主プリンタと定義する。また、主プリンタ100−1が印刷要求を送信するプリンタ100−2から100−3を補助プリンタとするが、プリンタ100−2から100−nのどのプリンタであっても良い。また、補助プリンタは、主プリンタ100−1以外のネットワーク40を介して接続されるプリンタ100−2から100−nの1つ以上であれば良い。ここで、ネットワーク40上に主プリンタ100−1しか存在しない場合、従来通り主プリンタ100−1にて印刷処理が実行されて出力される。
【0034】
図1を参照しつつ、画像形成システム1001での処理フローの概要を説明する。
【0035】
主プリンタ100−1は、PC300から直接印刷要求を受信すると(ステップS1)、該印刷要求で指定される出力先として所望するプリンタ100の一覧及びステープルの要否等のフィニッシングの方法を示す印刷パラメータと、印刷処理の対象となる文書データとに基づいてジョブを生成する。その生成したジョブに関するジョブ指示情報には、PC300からの印刷パラメータに基づいて作成された印刷パラメータと、印刷処理のイベント通知に関する通知指示情報とが含まれる。
【0036】
主プリンタ100−1は、そのジョブ指示情報をストレージ200に保存するためのジョブ保存要求をストレージ200に送信する(ステップS2)。ストレージ200は、主プリンタ100−1からジョブ保存要求を受信すると、該ジョブ保存要求で指定されるファイル名でジョブ指示情報及び文書データを保存する。
【0037】
利用者が所望する補助としてのプリンタがプリンタ100−2から100−3であるとする。主プリンタ100−1は、PC300から指示された印刷パラメータに基づく補助プリンタ用の印刷パラメータを設定した補助印刷要求を補助プリンタ100−2から100−3へ順次送信する(ステップS3−1及びS3−2)。
【0038】
そして、主プリンタ100−1は、生成したジョブに従って印刷処理を実行する。同様に、補助プリンタ100−2及び100−3は、夫々、ストレージ200へジョブ取得要求を送信することによってジョブ指示情報の全部又は一部と文書データとを取得し(ステップS4−1及びS4−2)、印刷処理を実行する。
【0039】
このような画像形成システム1001では、PC300から印刷要求を受信したプリンタ100−1が自立的に主プリンタとなって、利用者が所望するプリンタ100−2及び100−3を補助プリンタとして制御するため、複数のプリンタ100−1から100−nを制御するための専用のサーバを設ける必要がない。また、主プリンタ100−1及び補助プリンタ100−2及び100−3が印刷処理を行うため、プリンタ100−1から100−3のいずれかのプリンタに障害が発生したとしても、他のプリンタによって印刷処理が行われるため、利用者は、必ず、指定したプリンタ100−1から100−3のいずれかで印刷された文書を取得することができる。従って、プリンタの障害に影響されにくい耐障害性に優れたシステムを実現することができる。
【0040】
本発明の第一実施例に係る画像形成システム1001に適用されるプリンタ100は、例えば、図2に示すようなハードウェア構成を成す。図2は、本発明の第一実施例に係るプリンタのハードウェア構成を示すブロック図である。
【0041】
図2において、プリンタ100は、コンピュータによって制御され印刷処理を実行する装置であって、CPU(中央処理装置)11と、ROM(Read-Only Memory)12と、RAM(Random Access Memory)13と、不揮発性RAM(non-volatile Random Access Memory)14と、リアルタイムクロック15、イーサネット(登録商標)I/F(Ethernet(登録商標) Interface)21と、USB(Universal Serial Bus)22と、IEEE(Institute of Electrical and Electronics Engineers)1284 23と、ハードディスクI/F24と、ビデオI/F25と、RS−232C I/F26とで構成され、システムバスBに接続される。
【0042】
CPU11は、ROM12に格納されたプログラムに従ってプリンタ100を制御する。RAM13には、例えば、各インターフェース21から26に接続される資源に領域が割り当てられる。不揮発性RAM14には、プリンタ100の電源がオフになるまでCPU11による処理で必要な情報が格納される。リアルタイムクロック15は、現時刻を計ると共に、処理を同期させる場合にCPU11によって使用される。
【0043】
イーサネット(登録商標)I/F21には、10BASE−T又は100BASE−TX等のイーサネット(登録商標)用インターフェースケーブルが接続される。USB22には、USB用インターフェースケーブルが接続される。IEEE1284 23には、IEEE1284用インターフェースケーブルが接続される。
【0044】
ハードディスクI/F24には、ハードディスク34が接続され、ネットワークを介して送信された印刷される文書の文書データ、又は、印刷処理後の画像データがハードディスクI/F24を介してハードディスク34に格納される。ビデオI/F25には、プリンタエンジン35が接続され、画像データがビデオI/F25を介してプリンタエンジン25に送信され、該画像データに基づいて用紙等の印刷可能な媒体に画像が形成される。RS−232C I/F26には、オペレーションパネル36が接続され、ユーザへの情報の表示及びユーザから入力情報又は設定情報の取得が行われる。
【0045】
また、本発明の第一実施例に係る画像形成システム1001に適用されるストレージ200は、ジョブ指示情報及び文書データを保存するハードディスクを有するコンピュータであって、プリンタ100からのジョブ保存要求及びジョブ取得要求に応じた処理を実行する。更に、PC300は、利用者によって使用されるパーソナルコンピュータであって、プリンタ100への印刷要求を行う。
【0046】
図3は、本発明の第一実施例に係るプリンタの機能構成例を示すブロック図である。図3において、プリンタ100は、主に、印刷要求及び補助印刷要求を受付けるジョブ受付部101と、印刷処理を実行するためにジョブを発行するジョブ発行部102と、ネットワーク40上に存在する印刷可能なプリンタを検索するサービス検索部103と、ステータスを通知する通知発行部104と、ジョブに関するジョブ指示情報等をXML(eXtensible Markup Language)によって解析及び作成すると共に、処理全体を制御する制御部105と、図2に示すプリンタエンジン35を制御して印刷処理を実行する印刷処理部106と、ジョブ又はページのロック時間を制御するロック時間制御部107と、ネットワーク40を介してストレージ200とPC300とで夫々の通信を制御するネットワーク制御部110とを有する。
【0047】
ジョブ受付部101は、PC300からの印刷要求、他プリンタからの補助印刷要求、及び、ストレージ200からのジョブに関するジョブ指示情報を受付け、ジョブを受付けたことを制御部105に通知する。
【0048】
ジョブ発行部102は、印刷要求に応じてジョブを生成し、ストレージ200に対しては、ジョブ保存要求を送信し、利用者が所望する他プリンタに対しては、補助印刷要求を送信することによってジョブを発行する。その後、ストレージ200に対してジョブ取得要求を送信する。一方、補助印刷要求に対しては、ジョブ発行部102は、印刷要求の受信時と同様にジョブを生成し、該補助印刷要求で指定されるストレージ200に対してジョブ取得要求を送信する。
【0049】
サービス検索部103は、制御部105からの指示に応じて、ネットワーク40上に存在する印刷処理可能な他プリンタを検索するディスカバリ機能を実行し、プリンタ一覧を生成して、制御部105へ通知する。
【0050】
制御部105は、印刷要求及び補助印刷要求に設定されるジョブ指示情報等をXML(eXtensible Markup Language)によって解析し、解析結果に基づいて、ジョブ発行部102を制御し、ジョブ発行部102によって生成されたジョブに従って印刷処理部106を制御し印刷処理を実行する。また、補助プリンタを検索する際には、サービス検索部103を制御して印刷処理可能なプリンタの一覧を取得する。
【0051】
通知発行部104は、制御部105から通知されるステータスに基づいて、ネットワーク制御部110によってHTTPプロトコルでクライアントPC200に通知する。
【0052】
印刷処理部106は、制御部105からの指示に応じて印刷処理を実行し、所定の媒体に画像を形成して出力する。
【0053】
ロック時間制御部107は、ストレージ200に保存された印刷処理対象となるジョブ又はページがロックされている場合に、ロック時間経過後に再度ロックを試みる制御を行う。制御部105は、ロック時間制御部107からの通知に応じて、強制的にロックを解除し、ロック可能な状態とする。
【0054】
ネットワーク制御部110は、更に、TCP/IP(Transmission Control Protocol/Internet Protocol)111と、HTTP112と、SOAP(Simple Object Access Protocol)113と、BMLinkS114とで構成される。
【0055】
TCP/IP111は、ネットワーク40を介したデータ通信を制御するネットワーク通信プロトコルである。HTTP112は、インターネット上の情報提供及び情報取得を実現するインターネット通信プロトコルである。SOAP113は、例えばXMLに従って記述されたメッセージの交換を制御するメッセージ交換プロトコルである。BMLinkS114は、ネットワーク40上に存在するプリンタ、スキャナ、ストレージ、FAX送信及び受信の少なくともいずれか1つの機能を有する1つ以上のOA機器に対して、ジョブ制御手順、ステータス参照等に関するデータ通信を制御するOA機器I/Fプロトコルである。
【0056】
ストレージ200及びPC300は、ネットワーク制御部110の構成と同様の構成を有し、ネットワーク40を介して、BMLinkSに従ってプリンタ100とで通信を行う。
【0057】
次に、プリンタ100での処理を制御する制御部105にて行われる処理について説明する。先ず、PC300から印刷要求を直接受信した場合の処理について図4及び図5で説明する。図4及び図5は、本発明の第一実施例に係る制御部の印刷要求を受信した場合の処理例を説明するためのフローチャート図である。図4において、制御部105は、ジョブを受信したか否かを判断する(ステップS11)。ジョブ(PC300からの印刷要求)を受信せず、ロック時間制御部107からの通知を受信した場合、後述されるロック結果処理を実行する(ステップS19)。一方、ジョブを受信した場合、つまり、PC300から印刷要求を受信した場合、印刷要求の内容を取得する(ステップS12)。
【0058】
印刷要求の内容に基づいて、部数単位の印刷か、又は、ページ単位の印刷かを判断する(ステップS13)。部単位の印刷であると判断した場合、制御部105は、ジョブ発行部102にジョブを生成させ、そのジョブのロックを示すジョブ指示情報をストレージ200に保存するためのジョブ保存要求をストレージ200に送信する(ステップS14)。印刷要求に直接的に部単位の印刷が指定されていないくても、例えば、印刷要求にステープルの指定がある場合、部単位の印刷であると判断される。そして、ジョブ発行部102は、PC300から受信した印刷要求にて指定される補助としてのプリンタ全てに対して補助印刷要求を送信する(ステップS15)。
【0059】
制御部105は、印刷処理部106を制御してPC300から受信した印刷すべき文書データの全ページを印刷する(ステップS16)。印刷処理部106による全ページの印刷が終了すると、制御部105は、全ページの削除をストレージ200に要求するページ削除要求を送信し(ステップS17)、続けて、ジョブの削除をストレージ200に要求するジョブ削除要求を送信して(ステップS18)、印刷要求を受信した場合の処理を終了する。
【0060】
一方、ステップS13にて、制御部105がページ単位の印刷であると判断した場合、制御部105は、ページXに1を設定し(ステップS21)、ジョブ発行部102にジョブを生成させ、そのジョブのロックを示すジョブ指示情報をストレージ200に保存するためのジョブ保存要求をストレージ200に送信する(ステップS22)。そして、ジョブ発行部102は、PC300から受信した印刷要求にて指定される補助としてのプリンタ全てに対して補助印刷要求を送信する(ステップS23)。
【0061】
制御部105は、印刷処理部106を制御してPC300から受信した印刷すべき文書データのページXを印刷する(ステップS24)。ページXの印刷が終了すると、制御部105は、ページXの削除をストレージ200に要求するページ削除要求を送信する(ステップS25)。
【0062】
そして、制御部105は、ページがまだあるか否かを判断する(ステップS26)。ページがまだある場合、制御部105は、ページXに1を加えて(ステップS27)、ページXのロックをストレージ200に要求する(ステップS28)。ページXをロックすることによって、他プリンタから重複して出力されないようにすることができる。
【0063】
そして、制御部105は、ストレージ200からの応答がロックできたことを示しているか否かを判断する(ステップS29)。ページXのロックができた場合、制御部105は、ステップS24へ戻り、印刷処理部106にページXの印刷を行わせ、上記同様の処理を行う。
【0064】
一方、ステップS29にて制御部105がページXのロックができなかったと判断した場合、ページXが削除されているか否かを判断する(ステップS30)。ページXが削除されて存在しない場合、ステップS26へ戻り次のページがあるか否かを判断する。一方、ページXがある場合、つまり、補助プリンタ100−2又は100−3のいずれかがページXをロックしている場合、ロック時間制御部107に通知し(ステップS31)、ステップS26へ戻り次のページがあるか否かを判断する。
【0065】
このようにページXがロックできなかった場合には、ステップS26に戻ることによって、ロックできるページから先に印刷処理を行うことができる。また、ステップS31にて、ロック時間をストレージ200から取得しロック時間制御部107に通知するようにしても良い。ロック時間の取得は、ストレージ200からの応答に設定されるようにすれば良い。又は、制御部105がロック時間の問い合わせをストレージ200に対して行うようにしても良い。また、ロック時間とは、他プリンタがロックした時刻とロックが満了となるまでの間隔とが示されれば良い。又は、他プリンタと同期した時間を持つことができる場合には、ロック時間がロックが満了となる時刻を示しても良い。
【0066】
ステップS26にて制御部105がページがないと判断した場合、ロック時間制御部107によるロック時間制御処理が終了しているか否かを判断する(ステップS32)。ロック時間制御処理が終了していない場合、終了するまで待ち状態となる。ロック時間制御処理が終了後、制御部105は、ストレージ200に対してジョブ削除要求を送信し、PC300から直接印刷要求を受信した場合の処理を終了する。
【0067】
次に、他プリンタ100から補助印刷要求を受信した場合の制御部105での処理について図6及び図7で説明する。図6及び図7は、本発明の第一実施例に係る制御部の補助印刷要求を受信した場合の処理例を説明するためのフローチャート図である。図6において、プリンタ100−2がプリンタ100−1から補助印刷要求を受信し補助プリンタとして機能する。制御部105は、ジョブを受信したか否かを判断する(ステップS41)。ジョブ(他プリンタ100からの補助印刷要求)を受信せず、ロック時間制御部107からの通知を受信した場合、後述されるロック結果処理を実行して(ステップS42)、ステップS51へ進む。一方、ジョブを受信した場合、つまり、他プリンタ100から補助印刷要求を受信した場合、補助印刷要求の内容を取得する(ステップS43)。
【0068】
制御部105は、ページXに1を設定する(ステップS44)。続けて、制御部105は、補助印刷要求の内容に基づいて、部数単位の印刷か、又は、ページ単位の印刷かを判断する(ステップS45)。ページ単位の印刷でる場合、制御部105は、ページXのロック及びページXのダウンロードをストレージ200に要求する(ステップS46)。
【0069】
そして、制御部105は、ストレージ200からの応答がロックできたことを示しているか否かを判断する(ステップS47)。ページXのロックができなかった場合、ページXが削除されているか否かを判断する(ステップS48)。ページXが削除されて存在しない場合、ステップS53へ進み、次のページがあるか否かを判断する。
【0070】
一方、ページXがある場合、主プリンタ100−1又は補助プリンタ100−3のいずれかがページXをロックしている場合、ロック時間制御部107に通知し(ステップS49)、ステップS53へ進み、次のページがあるか否かを判断する。このようにページXがロックできなかった場合には、ステップS53へ進むことによって、ロックできるページから先に印刷処理を行うことができる。
【0071】
ステップS49にて、ロック時間をストレージ200から取得しロック時間制御部107に通知するようにしても良い。ロック時間の取得は、ストレージ200からの応答に設定されるようにすれば良い。又は、制御部105がロック時間の問い合わせをストレージ200に対して行うようにしても良い。また、ロック時間とは、他プリンタがロックした時刻とロックが満了となるまでの間隔とが示されれば良い。又は、他プリンタと同期した時間を持つことができる場合には、ロック時間がロックが満了となる時刻を示しても良い。
【0072】
一方、ステップS47にて制御部105がページXのロックができたと判断した場合、ページXがダウンロードされる(ステップS50)。ページXを取得すると、制御部105は、印刷処理部106を制御してページXの印刷処理を行う。印刷処理部106によるページXの印刷が終了すると、制御部105は、ページXの削除をストレージ200に要求するページ削除要求を送信する(ステップS52)。
【0073】
そして、制御部105は、文書データのページがまだあるか否かを判断する(ステップS53)。ページがまだある場合、制御部105は、ページXに1を加えて(ステップS54)、部数単位又はページ単位の印刷であるかを判断する(ステップS55)。部単位の印刷である場合、制御部105は、ページXのダウンロードをストレージ200に要求して、ステップS51へ戻る。一方、ページ単位の印刷である場合、ステップS46へ戻る。部数単位の印刷である場合、ページXのダウンロードをストレージに要求し(ステップS56)、ステップS50へ戻る。
【0074】
一方、ステップS53にて制御部105がページがないと判断すると、ロック時間制御処理が終了したか否かを判断する(ステップS57)。ロック時間制御処理が終了していない場合、終了するまで待ち状態となる。ロック時間制御処理が終了している場合、制御部105は、ストレージ200に対してジョブを削除するジョブ削除要求を送信して(ステップS58)、補助印刷要求の処理を終了する。
【0075】
一方、ステップS45にて部単位の印刷であると判断した場合、制御部105は、ジョブのロック及びページXのダウンロードをストレージ200に要求する(ステップS61)。補助印刷要求に直接的に部単位の印刷が指定されていないくても、例えば、印刷要求にステープルの指定がある場合、部単位の印刷であると判断される。
【0076】
そして、制御部105は、ストレージ200からの応答がロックできたことを示しているか否かを判断する(ステップS62)。ジョブのロックができなかった場合、ジョブが削除されているか否かを判断する(ステップS63)。ジョブが削除されて存在しない場合、補助印刷要求の処理を終了する。一方、ジョブがある場合、ロック時間制御部に通知し(ステップS64)、一旦、補助印刷要求の処理を終了する。一方、ステップS62にて制御部105がロックできたと判断した場合、ステップS50へ戻り、上記同様の処理を行う。
【0077】
ステップS64にて、ロック時間をストレージ200から取得しロック時間制御部107に通知するようにしても良い。ロック時間の取得は、ストレージ200からの応答に設定されるようにすれば良い。又は、制御部105がロック時間の問い合わせをストレージ200に対して行うようにしても良い。また、ロック時間とは、他プリンタがロックした時刻とロックが満了となるまでの間隔とが示されれば良い。又は、他プリンタと同期した時間を持つことができる場合には、ロック時間がロックが満了となる時刻を示しても良い。
【0078】
次に、ロック時間制御部107にて実行されるロック時間制御処理について図8で説明する。図8は、ロック時間制御処理を説明するためのフローチャート図である。図8において、ロック時間制御部107は、制御部105からの通知に応じて、ロック時間が経過する待ち(ステップS81)、ロック時間の経過後、ジョブの種類を判断する(ステップS82)。ジョブの種類がPC300から直接送信された印刷要求である場合、ページXのロックをストレージ200に要求し(ステップS83)、制御部105へロック結果を通知する(ステップS84)。
【0079】
ステップS82にて、ロック時間制御部107が補助印刷要求であると判断した場合、ジョブのロックであったか否かを判断する(ステップS85)。ページのロックであった場合、ページXのロック及びダウンロードをストレージ200に要求し(ステップS86)、制御部105へロック結果を通知する(ステップS84)。
【0080】
ステップS85にて、ジョブのロックであると判断した場合、ジョブのロック及びページXのダウンロードをストレージ200に要求し(ステップS87)、制御部105へロック結果を通知する(ステップS84)。
【0081】
このように、ロック時間の経過に再び、ストレージ200にロック又はダウンロードを要求し、その結果を制御部105に通知することによって、他プリンタ100での処理の状態に応じた処理を図4のステップ19及び図6のステップS42におけるロック結果処理にて行うことができる。
【0082】
図9は、ロック結果処理を説明するためのフローチャート図である。図9において、制御部105は、ロック時間制御処理部からロック結果を受信し(ステップS91)、ジョブの種類を判断する(ステップS92)。ジョブが印刷要求である場合、ロック結果の内容を判断する(ステップS93)。ロック結果がページXが削除されていることを示す場合、つまり、既に、他プリンタ100によってページXが印刷されたことを示している場合、図5のステップS26へ進み、上記同様の処理を行う。
【0083】
一方、ロック結果がまだロックされていることを示す場合、つまり、ロック時間を経過してもロックされているため、他プリンタ100にて印刷を行えない状態であると判断し、制御部105は、ストレージ200にページXのロックを強制的に解除させる(ステップS94)。ページXのロックの解除後、制御部105は、再度、ページXのロックをストレージ200に要求し(ステップS95)、図5のステップS29へ進み、上記同様の処理を行う。
【0084】
ステップS92にて制御部105がジョブが補助印刷要求であると判断すると、更に、ジョブをロックしたのか或いはページXをロックしたのかを判断する(ステップS96)。ページXをロックしたと判断した場合、ロック結果の内容を判断する(ステップS97)。ロック結果がページXが削除されていることを示す場合、つまり、既に、他プリンタ100によってページXが印刷されたことを示している場合、図6のステップS53へ進み、上記同様の処理を行う。
【0085】
一方、ロック結果がまだロックされていることを示す場合、つまり、ロック時間を経過してもロックされているため、他プリンタ100にて印刷を行えない状態であると判断し、制御部105は、ストレージ200にページXのロックを強制的に解除させる(ステップS98)。ページXのロックの解除後、制御部105は、再度、ページXのロック及びダウンロードをストレージ200に要求し(ステップS99)、図6のステップS50へ進み、上記同様の処理を行う。
【0086】
ステップS96にて制御部105がジョブをロックしたと判断した場合、ロック結果の内容を判断する(ステップS100)。ロック結果がジョブが削除されていることを示す場合、つまり、既に、他プリンタ100によって文書データ全体の印刷が終了したことを示している場合、補助印刷要求による処理を終了する。
【0087】
ロック結果がまだロックされていることを示す場合、つまり、ロック時間を経過してもロックされているため、他プリンタ100にて印刷を行えない状態であると判断し、制御部105は、ストレージ200にジョブのロックを強制的に解除させる(ステップS101)。ジョブのロックの解除後、制御部105は、再度、ジョブのロック及びダウンロードをストレージ200に要求し(ステップS101)、図6のステップS50へ進み、上記同様の処理を行う。
【0088】
図4から図9に示される処理によると、プリンタ100は、主プリンタの場合、部数単位又はページ単位で示される処理単位毎にストレージ200に対してロックをかけて、PC300から受信した文書データに基づいて、ストレージ200から取得することなく印刷処理を実行する。従って、他プリンタ100によって部数単位又はページ単位で同一の文書又はページを重複して印刷することがない。また、ページ単位での処理の場合、ロックされていないページを検索し、そのページを優先して印刷することができる。更に、他のプリンタ100によってページがロックされ、ロック時間を経過してもロックされたままである場合、そのロックを強制的に解除し、自プリンタ100で印刷することができる。
【0089】
また、補助プリンタとしてのプリンタ100は、ロックとダウンロードの要求をストレージ200に行うことによって、他プリンタ100によって部数単位又はページ単位で同一の文書又はページを重複して印刷することがない。また、ページ単位での処理の場合、ロックされていないページを検索し、そのページを優先して印刷することができる。更に、他のプリンタ100によってページがロックされ、ロック時間を経過してもロックされたままである場合、そのロックを強制的に解除し、自プリンタ100で印刷することができる。
【0090】
尚、図4から図9に示される処理を全てのプリンタ100−1〜100−nにて行えるように構成することができる。
【0091】
次に、補助としてのプリンタを自発的に検索する方法について説明する。図10は、本発明の第一実施例に係る制御部の第二の処理例を説明するためのフォローチャート図である。図10中、図4と同様のステップには同一の符号を付し、その説明を省略する。図10において、制御部105がジョブを受信したと判断し、印刷要求を示すジョブの内容を取得後後(ステップS11及びS12)、制御部105は、PC300から受信した印刷要求に補助としてのプリンタが指定されているか否かを判断する(ステップS12−2)。補助としてのプリンタが指定されている場合、制御部105はステップS13を実行する。一方、補助としてのプリンタが指定されていない場合、制御部105は、サービス検索部103にネットワーク40上に存在する印刷処理可能なプリンタ100を検索させる(ステップS12−4)。以後、図4のステップS13から図5のステップS33の処理を実行し、ページの重複なく文書の印刷を行う。
【0092】
このような第二の処理によって、PC300から補助としてのプリンタ100を指定しない印刷要求を受信したとしても、その印刷要求を受信したプリンタ100が自発的にネットワーク40上に存在する印刷可能なプリンタ100を補助プリンタとして検索するため、利用者は、補助としてのプリンタを指定することなく、単に、1つのプリンタ100に対して印刷要求を行うのみで良い。
【0093】
ストレージ200にて管理されるジョブ指示情報及び管理情報と文書データとで構成されるジョブデータは、例えば、図11に示されるような構造を成す。図11は、ジョブデータの構造を示す図である。ストレージ200は、各プリンタ100から受信したジョブ保存要求に基づいて、ジョブ保存要求によって指定されるジョブ指示情報とストレージ200にて管理するために必要な管理情報とを有するジョブ管理情報をジョブ毎に格納するジョブ管理領域291と、ジョブ管理情報と関連付けされる文書を構成する少なくとも1つ以上のページデータ(ページ1からn)を格納するページデータ管理領域292とを有する。例えば、ジョブ管理領域291において、ジョブ毎又はページ毎のロック時間等がジョブ管理情報にて管理される。
【0094】
図1のステップS1にて、PC300から主プリンタ100−1へ送信される印刷要求のスクリプトについて説明する。図12は、PCから送信される印刷要求のスクリプト例を示す図である。図12において、<bm:create_job xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_job>で示される記述400は、BMLinkSに従ったXMLによる記述であることを示す。create_jobを示す記述401によってBMLinkSによって規定されるcreate_jobコマンドが発行されたことが示される。
【0095】
<requesting-user-name>から</request-user-name>で示される記述402によって、印刷を要求したユーザ名「someone」が示される。
【0096】
<job-instruction>から</job-instruction>で示される記述403は、印刷処理に関するパレメータを指定する<job-instruction-params>から</job-instruction-params>で示される記述404と、通知すべき印刷処理中のイベントを指定する<notification-instruction>から</notification-instruction>で示される記述405とで構成される。
【0097】
記述404において、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、例えば、「sample-job」のように指定される。<optional-attributes-fidelity>から</optional-attributes-fidelity>で示される記述は、例えば、「false」のように指定される。<copies>から</copies>で示される記述は、印刷すべき部数を示し、例えば、「1」部が示される。
【0098】
<parallelprint enc:arrayType="bm:parallelprint[1]">から</parallelprint>で示される記述406は、BMLinkSに従って、ジョブ指示情報と文書データとを保存するストレージと、補助としてのプリンタとを配列「parallelprint[1]」によって指定している。<storageName uri=”http://192.168.3.1”>から</storageName>で示す記述は、例えば、「storage#1」を示し、ストレージ名「storage#1」にジョブ指示情報及び文書データを保存することを指定する。この場合、ストレージ200のストレージ名が「storage#1」であるとする。<printerName uri=”http://192.168.2.2”>から</printerName>で示す記述は、例えば、「printer#2」を示し、プリンタ名「printer#2」で印刷処理することを指定する。この場合、プリンタ100−2のプリンタ名が「printer#2」であるとする。<printerName uri=”http://192.168.2.3”>から</printerName>で示す記述は、例えば、「printer#3」を示し、プリンタ名「printer#3」で印刷処理することを指定する。この場合、プリンタ100−3のプリンタ名が「printer#3」であるとする。
【0099】
<finishings enc:arrayType="bm:finishing[1]">から</finishings>で示される記述407は、BMLinkSに従って、印刷処理後のフィニッシングを配列「finishing[1]」によって指定している。<finishing>から</finishing>で示される記述は、フィニッシングとして、印刷した文書を「staple」で綴じることを指定している。
【0100】
<document-format>から</document-format>で示される記述は、文書データのデータ形式「image/tiff」を指定する。
【0101】
記述405は、印刷処理結果の通知方法を指定し、通知発行部104によって参照される。例えば、<notification-recipient>から</notification-recipient>までの記述408は、通知先として主プリンタ100−1のURI「http://192.168.2.1/event」を指定する。<events enc:arrayType="bm:Event[2]">から</events>までの記述409は、BMLinkSに従って2つのイベントが通知されることを配列「Event[2]」によって指定することを示し、各イベント種類は、<event>から</event>までの記述によって指定される。例えば、正常終了を示すイベント「job-completed」と、印刷処理がキャンセルされたことを示すイベント「job-canceled」とが指定される。
【0102】
図4のステップS14にて、主プリンタ100−1からストレージ200へ送信されるジョブ保存要求のスクリプトについて説明する。図13は、主プリンタからストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。図13において、<bm:create_file xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_file>で示される記述410は、BMLinkSに従ったXMLによる記述であることを示す。create_fileを示す記述411によってBMLinkSによって規定されるcreate_fileコマンドが発行されたことが示される。
【0103】
記述410において、<requesting-user-name>から</request-user-name>で示される記述412は、登録されたユーザ名「someone」を示す。<file-instruction>から</file-instruction>で示される記述413は、データ保存条件を指定する。<file-instruction-params>から</file-instruction-params>までの記述415は、データ保存条件のパラメータ値を指定する。例えば、<file-name>から</file-name>までの記述は、ファイル名「sample-job」を指定する。また、<read-only>から</read-only>までの記述は、読み取りのみを示す「true」を指定する。
【0104】
更に、記述410において、<file-attribute>から</file-attribute>で示される記述414は、文書を印刷する際の属性を指定する。<parallelprint enc:arrayType="bm:parallelprint[1]">から</parallelprint>で示される記述416は、BMLinkSに従って補助プリンタを1つの配列「parallelprint[1]」によって指定することを示し、補助プリンタは、<printerName>から</printerName>までの記述によって指定される。<printerName uri=”http://192.168.2.2”>から</printerName>で示す記述は、例えば、「printer#2」を示し、プリンタ名「printer#2」で印刷処理することを指定する。この場合、プリンタ100−2のプリンタ名が「printer#2」であるとする。<printerName uri=”http://192.168.2.3”>から</printerName>で示す記述は、例えば、「printer#3」を示し、プリンタ名「printer#3」で印刷処理することを指定する。この場合、プリンタ100−3のプリンタ名が「printer#3」であるとする。
【0105】
図4のステップS15にて、主プリンタ100−1から補助プリンタ100−2及び100−3の夫々へ送信される補助印刷要求のスクリプトについて説明する。図14は、主プリンタから補助プリンタへ送信される補助印刷要求のスクリプト例を示す図である。図14において、<bm:create-job xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_job>で示される記述420は、BMLinkSに従ったXMLによる記述であることを示す。create_jobを示す記述421によってBMLinkSによって規定されるcreate_jobコマンドが発行されたことが示される。
【0106】
<requesting-user-name>から</request-user-name>で示される記述422によって、印刷を要求したユーザ名「someone」が示される。
【0107】
<job-instruction>から</job-instruction>で示される記述423は、印刷処理に関するパレメータを指定する<job-instruction-params>から</job-instruction-params>で示される記述424と、通知すべき印刷処理中のイベントを指定する<notification-instruction>から</notification-instruction>で示される記述425とで構成される。
【0108】
記述424において、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、例えば、「sample-job」のように指定される。<optional-attributes-fidelity>から</optional-attributes-fidelity>で示される記述は、例えば、「false」のように指定される。<copies>から</copies>で示される記述は、印刷すべき部数を示し、例えば、「1」部が示される。
【0109】
<finishings enc:arrayType="bm:finishing[1]">から</finishings>で示される記述426は、BMLinkSに従って、印刷処理後のフィニッシングを配列「finishing[1]」によって指定している。<finishing>から</finishing>で示される記述は、フィニッシングとして、印刷した文書を「staple」で綴じることを指定している。
【0110】
<document-format>から</document-format>で示される記述は、文書データのデータ形式「image/tiff」を指定する。
【0111】
ジョブの格納場所に関する記述427において、<source-uri>から</source-uri>で示される記述は、ジョブが格納されているURI「http://192.168.2.1/sample-job」を示し、<source-file-id>から</source-file-id>で示される記述は、ファイルID「001」を示す。
【0112】
記述425は、印刷処理結果の通知方法を指定し、各補助プリンタ100−2及び100−3の通知発行部104によって参照される。例えば、<notification-recipient>から</notification-recipient>までの記述408は、通知先としての主プリンタ100−1のURI「http://192.168.1.1/event」を指定する。<events enc:arrayType="bm:Event[3]">から</events>までの記述429は、BMLinkSに従って3つのイベントが通知されることを配列「Event[3]」によって指定することを示し、各イベント種類は、<event>から</event>までの記述によって指定される。例えば、正常終了を示すイベント「job-completed」と、印刷処理がキャンセルされたことを示すイベント「job-canceled」と、読み込みが終了したことを示すイベント「read-completed」とが指定される。
【0113】
図5のステップS46にて、補助プリンタプリンタ100−2からストレージ200へ送信されるジョブ取得要求によって、ページのみを指定してページロックするスクリプトについて説明する。図15図15は、主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第一スクリプト例を示す図である。図15において、<bm:file-attribute xmlns:bm="urn:schemas-bm:service:bm">から</bm:file-attribute >で示される記述430は、BMLinkSに従ったXMLによる記述であることを示す。file−attributeを示す記述431によってBMLinkSによって規定されるfile−attributeコマンドが発行されたことが示される。
【0114】
記述430において、<requesting-user-name>から</requesting-user-name>で示される記述432は、登録されたユーザ名「someone」を示す。<source-file-id>から</source-file-id>で示される記述433は、ファイルID「001」を示す。<lock-page-id>から</lock-page-id>で示される記述434は、ロックすべきページ「001」を示す。
【0115】
図5のステップS46にて、補助プリンタプリンタ100−2からストレージ200へ送信されるジョブ取得要求によって、ページ及びロック期間を指定してページロックするスクリプトについて説明する。図16は、主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第二スクリプト例を示す図である。図16において、<bm:file-attribute xmlns:bm="urn:schemas-bm:service:bm">から</bm:file-attribute>で示される記述440は、BMLinkSに従ったXMLによる記述であることを示す。file−attributeを示す記述441によってBMLinkSによって規定されるfile−attributeコマンドが発行されたことが示される。
【0116】
記述440において、<requesting-user-name>から</requesting-user-name>で示される記述442は、登録されたユーザ名「someone」を示す。<source-file-id>から</source-file-id>で示される記述433は、ファイルID「001」を示す。<lock-page-id>から</lock-page-id>で示される記述434は、ロックすべきページ「001」を示す。更に、<lock-expire-seconds>から</lock-expire-seconds>で示される記述455は、例えば、「60」秒のロック期間を指定する。この場合、終了時刻を指定するようにしても良い。
【0117】
図5のステップS25にて、ストレージ200に保存されている印刷済みのページを削除するページ削除要求のスクリプトについて説明する。図17は、ストレージ200に保存されている印刷済みのページを削除するページ削除要求のスクリプト例を示す図である。図17において、<bm:delete_page xmlns:bm="urn:schemas-bm:service:bm">から</bm:delete_page>で示される記述450は、BMLinkSに従ったXMLによる記述であることを示す。delete_pageを示す記述451によってBMLinkSによって規定されるdelete_pageコマンドが発行されたことが示される。
【0118】
記述450において、<requesting-user-name>から</requesting-user-name>で示される記述452は、登録されたユーザ名「someone」を示す。<file-id>から</file-id>で示される記述453は、ファイルID「001」を示す。<page-id>から</page-id>で示される記述454は、削除すべきページ「001」を示す。
【0119】
上記第一実施例に係る画像形成システム1001おいて、1つのストレージにジョブを保存し、複数のプリンタ100−1から100−3にて文書を重複なく出力する方法について説明したが、ストレージ200に障害が発生した場合にも、文書の印刷を行うことができる第二実施例について以下に説明する。
【0120】
図18は、本発明の第二実施例に係る画像形成システムのネットワーク構成例を示す図である。図18に示す画像形成システム1002において、プリンタ100は、第一実施例に係る画像形成システム1001のプリンタ100の図2に示すハードウェア構成を成し、また、図3に示す機能構成を成す。ストレージ200−1から200−3(以下、総称する場合ストレージ200と言う)及びPC300は、第一実施例におけるストレージ200とPC300と同等である。
【0121】
図18に示す画像形成システム1002は、印刷処理を行うプリンタ100と、印刷パラメータ及び文書データを保存する複数のストレージ200−1から200−3と、文書を印刷する利用者が使用するPC300とによって構成されるシステムである。プリンタ100と、複数のストレージ200−1から200−3と、PC300とは、ネットワーク40を介して接続される。
【0122】
このような画像形成システム1002において、PC300から印刷要求を受信すると、プリンタ100は、複数のストレージ200−1から200−3へジョブ保存要求を送信する。説明の便宜上、プリンタ100は、複数のストレージ200−1から200−3へジョブ保存要求を送信するとしているが、ジョブ保存要求を送信するストレージ200は1つ以上であればよい。
【0123】
図18を参照しつつ、画像形成システム1002での処理フローの概要を説明する。
【0124】
プリンタ100は、PC300から印刷要求を受信すると(ステップS131)、該印刷要求で指定される保存先として所望するストレージ200の一覧及びステープルの要否等のフィニッシングの方法を示す印刷パラメータと、印刷処理の対象となる文書データとに基づいてジョブを生成する。その生成したジョブに関するジョブ指示情報には、PC300からの印刷パラメータに基づいて作成された印刷パラメータと、印刷処理のイベント通知に関する通知指示情報とが含まれる。
【0125】
プリンタ100は、そのジョブ指示情報を複数のストレージ200−1から200−3に対してジョブ保存要求を順次送信する(ステップS132−1からS132−3)。各ストレージ200−1から200−3は、プリンタ100からジョブ保存要求を受信すると、該ジョブ保存要求で指定されるファイル名でジョブ指示情報及び文書データを保存する。
【0126】
そして、プリンタ100は、印刷要求に指定されたストレージ200の一覧の順に、例えば、先ずストレージ200−1に対してジョブ取得要求を送信し(ステップS133−1)、取得したジョブ指示情報及び文書データに従って印刷処理を実行する。プリンタ100は、印刷処理をするためにストレージ200−1からページを取得できない場合、次のストレージ200−2へジョブ取得要求を送信することによって(ステップS133−2)、該ページを取得して印刷する。更に、ストレージ200−2からもページを取得できない場合、次のストレージ200−3に対してジョブ取得要求を送信し(ステップS133−3)、該ページを取得して印刷する。
【0127】
このように、何らかの理由でストレージ200−1から印刷すべきページを取得できない場合、他のストレージ200−2又は200−3から印刷すべきページを取得することができる。したがって、PC300の利用者は、バックアップとしてストレージ200−2及び200−3を指定することによって各ストレージ200−1から200−3の状態を知ることなく、印刷要求を送信したプリンタ100にて文書を印刷させることができる。よって、画像形成システム1002は対障害性を向上させることができる。
【0128】
次に、プリンタ100での処理を制御する制御部105にて行われる処理について説明する。図19は、本発明の第二実施例に係る制御部の処理例を説明するためのフローチャート図である。図19において、制御部105は、所定時間毎にジョブを受信したか否かを判断する(ステップS141)。ジョブを受信していない場合、待ち状態となり、所定時間毎にステップS141を繰り返す。一方、PCからジョブを受信した場合、ステップS113を実行する。
【0129】
制御部105は、ジョブ発行部102にジョブを生成させ、ジョブ内容を指示するジョブ指示情報を、印刷要求で指定される複数のストレージ200−1から200−3に順次保存する(ステップS142)。そして、制御部105は、印刷要求で指定される最初のストレージ(この場合、ストレージ100−1とする)を選択する(ステップS143)。
【0130】
制御部105は、ページXに1を設定し(ステップS144)、ページXの取得を選択したストレージ200−1に対してジョブ取得要求を送信することによって要求する(ステップS145)。制御部105は、ストレージ200−1からページXを取得できたか否かを判断する(ステップS146)。ページXを取得できなかった場合、次のストレージ200−2を選択し(ステップS147)、ステップS145へ戻る。この場合、ストレージ200−1からページXを取得できなかった場合、ストレージ200−2を選択する。ストレージ200−2からページXを取得できなかった場合、順にストレージ200−3を選択する。
【0131】
一方、ページXを取得できた場合、制御部105は、印刷処理部106を制御してページXを印刷する(ステップS148)。制御部105は、印刷すべきページがまだあるか否かを判断する(ステップS149)。ページがまだある場合、制御部105は、ページXに1を加えて(ステップS150)、ステップS145へ戻る。一方、全てのページを印刷した場合、ジョブを削除するため、ストレージ200−1から200−3に対してジョブ削除要求を送信し、制御部105での処理を終了する(ステップS151)。
【0132】
図18のステップS131にて、PC300から主プリンタ100−1へ送信される印刷要求のスクリプトについて説明する。図20は、複数のストレージが指定される印刷要求のスクリプト例を示す図である。図20において、<bm:create_job xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_job>で示される記述460は、BMLinkSに従ったXMLによる記述であることを示す。create_jobを示す記述461によってBMLinkSによって規定されるcreate_jobコマンドが発行されたことが示される。
【0133】
<requesting-user-name>から</request-user-name>で示される記述462によって、印刷を要求したユーザ名「someone」が示される。
【0134】
<job-instruction>から</job-instruction>で示される記述463は、印刷処理に関するパレメータを指定する<job-instruction-params>から</job-instruction-params>で示される記述464と、通知すべき印刷処理中のイベントを指定する<notification-instruction>から</notification-instruction>で示される記述405とで構成される。
【0135】
記述464において、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、例えば、「sample-job」のように指定される。<optional-attributes-fidelity>から</optional-attributes-fidelity>で示される記述は、例えば、「false」のように指定される。<copies>から</copies>で示される記述は、印刷すべき部数を示し、例えば、「1」部が示される。
【0136】
<parallelprint enc:arrayType="bm:parallelprint[1]">から</parallelprint>で示される記述466は、BMLinkSに従って、ジョブ指示情報と文書データとを保存する複数のストレージを指定している。<storageName uri=”http://192.168.3.1”>から</storageName>で示す記述は、例えば、「storage#1」を示し、ストレージ名「storage#1」にジョブ指示情報及び文書データを保存することを指定する。また、<storageName uri=”http://192.168.3.2”>から</storageName>で示す記述は、例えば、「storage#2」を示し、ストレージ名「storage#2」にジョブ指示情報及び文書データを保存することを指定する。更に、storageName uri=”http://192.168.3.3”>から</storageName>で示す記述は、例えば、「storage#3」を示し、ストレージ名「storage#3」にジョブ指示情報及び文書データを保存することを指定する。この場合、ストレージ名「storage#1」はストレージ200−1、ストレージ名「storage#2」はストレージ200−2、ストレージ名「storage#3」はストレージ200−3に対応するとする。
【0137】
<finishings enc:arrayType="bm:finishing[1]">から</finishings>で示される記述467は、BMLinkSに従って、印刷処理後のフィニッシングを配列「finishing[1]」によって指定している。<finishing>から</finishing>で示される記述は、フィニッシングとして、印刷した文書を「staple」で綴じることを指定している。
【0138】
<document-format>から</document-format>で示される記述は、文書データのデータ形式「image/tiff」を指定する。
【0139】
記述465は、印刷処理結果の通知方法を指定し、通知発行部104によって参照される。例えば、<notification-recipient>から</notification-recipient>までの記述468は、通知先としてPC300のURI「http://192.168.4.1/event」を指定する。<events enc:arrayType="bm:Event[2]">から</events>までの記述469は、BMLinkSに従って2つのイベントが通知されることを配列「Event[2]」によって指定することを示し、各イベント種類は、<event>から</event>までの記述によって指定される。例えば、正常終了を示すイベント「job-completed」と、印刷処理がキャンセルされたことを示すイベント「job-canceled」とが指定される。
【0140】
図18のステップS133−1からS133−3にて、プリンタ100から複数のストレージ200−1から200−3へ送信されるジョブ保存要求のスクリプトについて説明する。図21図17は、プリンタから複数のストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。図21において、<bm:create_file xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_file>で示される記述470は、BMLinkSに従ったXMLによる記述であることを示す。create_fileを示す記述471によってBMLinkSによって規定されるcreate_fileコマンドが発行されたことが示される。
【0141】
記述470において、<requesting-user-name>から</request-user-name>で示される記述472は、登録されたユーザ名「someone」を示す。<file-instruction>から</file-instruction>で示される記述473は、データ保存条件を指定する。<file-instruction-params>から</file-instruction-params>までの記述474は、ファイルに関する情報を示す記述475と、バックアップとしての複数のストレージの一覧を示す記述476とで構成される。
【0142】
記述475において、例えば、<file-name>から</file-name>までの記述は、ファイル名「sample-job」を指定する。また、<read-only>から</read-only>までの記述は、読み取りのみを示す「true」を指定する。
【0143】
また、記述476において、<backup-uri>から</backup-uri>で示される3つの記述は、バックアップとしてジョブ指示情報及び文書データが格納されるURI「http://192.168.3.1/sample-job」、「http://192.168.3.2/sample-job」、及び、「http://192.168.3.3/sample-job」を指定する。
【0144】
このように、何らかの理由でストレージ200−1からページXが取得できない場合、プリンタ100は、ストレージ200−2又は200−3からページXを取得し印刷することができる。したがって、PC300の利用者は、バックアップとしてストレージ200−2及び200−3を指定することによって各ストレージ200−1から200−3の状態を知ることなく、印刷要求を送信したプリンタ100にて文書を印刷させることができる。よって、画像形成システム1002は対障害性を向上させることができる。
【0145】
次に、PC300から印刷要求を受信したプリンタ100−1は、主プリンタとして、複数のストレージ200−1から200−3にジョブを保存すると共に、プリンタ100−2及び100−3に補助プリンタとして補助印刷要求を送信する第三実施例について説明する。
【0146】
図22は、本発明の第三実施例に係る画像形成システムのネットワーク構成例を示す図である。図22に示す画像形成1003において、プリンタ100−1から100−3は、第一実施例に係る画像形成システム1001のプリンタ100の図2に示すハードウェア構成を成し、また、図3に示す機能構成を成す。ストレージ200−1から200−3(以下、総称する場合ストレージ200と言う)及びPC300は、第一実施例におけるストレージ200とPC300と同等である。
【0147】
図22に示す画像形成システム1003は、印刷処理を行う複数のプリンタ100−1から100−3と、印刷パラメータ及び文書データを保存する複数のストレージ200−1から200−3と、文書を印刷する利用者が使用するPC300とによって構成されるシステムである。複数のプリンタ100−1から100−3と、複数のストレージ200−1から200−3と、PC300とは、ネットワーク40を介して接続される。
【0148】
このような画像形成システム1003において、PCから印刷要求を直接受信するプリンタを主となるプリンタ100−1とし、プリンタ100−1がPC300に代わって印刷要求を送信する補助のプリンタをプリンタ100−2から100−3とする。複数のプリンタ100−1〜100−nは、同等の機能を有するプリンタであって、以下、総称する場合には単にプリンタ100と言う。PCから印刷要求を直接受信した主プリンタ100−1は、複数のストレージ200−1から200−3へジョブ保存要求を送信する。説明の便宜上、プリンタ100は、複数のストレージ200−1から200−3へジョブ保存要求を送信するとしているが、ジョブ保存要求を送信するストレージ200は1つ以上であればよい。
【0149】
説明の便宜上、プリンタ100−1をPC300から直接印刷要求を受信するプリンタとしているが、プリンタ100−1から100−nのどのプリンタであっても良い。単に、プリンタ100−1から100−nのうちのPC300から印刷要求を直接受信したプリンタを主プリンタと定義する。
【0150】
図22を参照しつつ、画像形成システム1003での処理フローの概要を説明する。
【0151】
主プリンタ100−1は、PC300から直接印刷要求を受信すると(ステップS161)、該印刷要求で指定される出力先として所望するプリンタ100の一覧、ジョブを保存するストレージ200の一覧、及び、ステープルの要否等のフィニッシングの方法を示す印刷パラメータと、印刷処理の対象となる文書データとに基づいてジョブを生成する。その生成したジョブに関するジョブ指示情報には、PC300からの印刷パラメータに基づいて作成された印刷パラメータと、印刷処理のイベント通知に関する通知指示情報とが含まれる。
【0152】
主プリンタ100−1は、そのジョブ指示情報を印刷要求で指定されるストレージ200の一覧に従って順に保存するためのジョブ保存要求をストレージ200−1から200−3に送信する(ステップS162−1からS162−3)。各ストレージ200−1から200−3は、主プリンタ100−1からジョブ保存要求を受信すると、該ジョブ保存要求で指定されるファイル名でジョブ指示情報及び文書データを保存する。
【0153】
利用者が所望する補助としてのプリンタがプリンタ100−2から100−3であるとする。主プリンタ100−1は、PC300から指示された印刷パラメータに基づく補助プリンタ用の印刷パラメータを設定した補助印刷要求を補助プリンタ100−2から100−3へ順次送信する(ステップS163−1及びS163−2)。
【0154】
そして、主プリンタ100−1は、ストレージ200−1へジョブ取得要求を送信することによってジョブ指示情報の全部又は一部と文書データとを取得し(ステップS164−1)、印刷処理を実行する。同様に、補助プリンタ100−2及び100−3は、夫々、ストレージ200へジョブ取得要求を送信することによってジョブ指示情報の全部又は一部と文書データとを取得し(ステップS164−2及びS164−3)、印刷処理を実行する。
【0155】
このような画像形成システム1003では、PC300から印刷要求を受信したプリンタ100−1が自立的に主プリンタとなって、利用者が所望するプリンタ100−2及び100−3を補助プリンタとして制御するため、複数のプリンタ100−1から100−nを制御するための専用のサーバを設ける必要がない。
【0156】
また、主プリンタ100−1及び補助プリンタ100−2及び100−3が印刷処理を行うため、プリンタ100−1から100−3のいずれかのプリンタに障害が発生したとしても、他のプリンタによって印刷処理が行われるため、利用者は、必ず、指定したプリンタ100−1から100−3のいずれかで印刷された文書を取得することができる。従って、プリンタの障害に影響されにくい耐障害性に優れたシステムを実現することができる。
【0157】
更に、ストレージ200−1から200−3のいずれかに障害が発生したとしても、プリンタ100−1から100−3のいずれかで文書を印刷させることができる。従って、ストレージの障害に影響されにくい耐障害性に優れたシステムを実現することができる。
【0158】
また、このような画像形成システム1003では、各プリンタ100−1から100−3が夫々ストレージ200−1から200−3に対してジョブ保存要求を送信することによって、各プリンタ100−1から100−3によって文書印刷することができる。例えば、同時に3部を印刷するができるため、高速に印刷処理をすることができる。
【0159】
【発明の効果】
以上、説明してきたように、本願発明によれば、画像形成処理を行うと共に、他の画像形成装置にても、保存手段から画像形成パラメータ及び対象データを取得して画像形成処理を行うことができるため、自身に障害が発生したとしてもいずれかの画像形成装置にて画像形成処理を行うことができる。また、画像形成要求を受信した画像形成装置が、自発的に画像形成パラメータ及び対象データを保存手段に保存し、他画像形成装置に対して画像形成要求を行うため、このような処理を制御するためのサーバを備える必要がない。
【0160】
【図面の簡単な説明】
【図1】本発明の第一実施例に係る画像形成システムのネットワーク構成例を示す図である。
【図2】本発明の第一実施例に係るプリンタのハードウェア構成を示すブロック図である。
【図3】本発明の第一実施例に係るプリンタの機能構成例を示すブロック図である。
【図4】本発明の第一実施例に係る制御部の印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図5】本発明の第一実施例に係る制御部の印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図6】本発明の第一実施例に係る制御部の補助印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図7】本発明の第一実施例に係る制御部の補助印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図8】ロック時間制御処理を説明するためのフローチャート図である。
【図9】ロック結果処理を説明するためのフローチャート図である。
【図10】本発明の第一実施例に係る制御部の第二の処理例を説明するためのフォローチャート図である。
【図11】ジョブデータの構造を示す図である。
【図12】PCから送信される印刷要求のスクリプト例を示す図である。
【図13】主プリンタからストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。
【図14】主プリンタから補助プリンタへ送信される補助印刷要求のスクリプト例を示す図である。
【図15】主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第一スクリプト例を示す図である。
【図16】主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第二スクリプト例を示す図である。
【図17】ストレージ200に保存されている印刷済みのページを削除するページ削除要求のスクリプト例を示す図である。
【図18】本発明の第二実施例に係る画像形成システムのネットワーク構成例を示す図である。
【図19】本発明の第二実施例に係る制御部の処理例を説明するためのフローチャート図である。
【図20】複数のストレージが指定される印刷要求のスクリプト例を示す図である。
【図21】プリンタから複数のストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。
【図22】本発明の第三実施例に係る画像形成システムのネットワーク構成例を示す図である。
【符号の説明】
40 ネットワーク
100、100−1、100−2、100−3 プリンタ
101 ジョブ受付部
102 ジョブ発行部
103 サービス検索部
104 通知発行部
105 制御部
106 印刷処理部
107 ロック時間制御部
110 ネットワーク制御部
200、200−1、200−2、200−3 ストレージ
300 PC
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image forming apparatus, and in particular, stores printing parameters and document data to be imaged in one or more storages connected via a network, and performs image forming processing on the document data according to the printing parameters. And a distributed image forming apparatus capable of distributing image forming processing on the document data to one or more other image forming apparatuses via a network.
[0002]
[Prior art]
When printing is performed from a PC (Personal Computer) connected to the printer via a network, the printing may be interrupted due to factors such as running out of paper, paper jam, or running out of toner on the printer side. Therefore, in order to ensure that printing is performed, when printing is interrupted by a server connected to a plurality of printers and controlling printing processing to these printers, the processing is switched to another printer. Became possible.
[0003]
[Problems to be solved by the invention]
However, in the printer system provided with the above-described conventional server, it is necessary to perform a work by a user for setting a printer connected to the server. For this reason, every time the configuration of a printer connected to the server is changed by adding or removing a printer, the setting must be changed by the user.
[0004]
Accordingly, an object of the present invention is to store print parameters and document data to be image-formed in one or more storages connected via a network, and perform image formation processing for the document data according to the print parameters. An image forming apparatus capable of causing one or more other image forming apparatuses to perform an image forming process on the document data via a network is provided.
[0005]
[Means for Solving the Problems]
  In order to solve the above-described problems, the present invention provides an image forming parameter that can be accessed by another image forming apparatus based on a first image forming request for requesting image formation. For storage means for storing target data to be imaged,In order to suppress overlapping output by the other image forming apparatusAll or part of the target dataofRequest lockdo it,According to the image forming parameters, the lockShiControl means for controlling the image forming process so that an image is formed based on all or part of the target data.If the lock cannot be performed even after a predetermined lock time has elapsed, the control means forcibly releases all or a part of the lock of the target data, and again stores the target data. Request all or part of the lockIt is characterized by
[0006]
  In such a distributed image forming apparatus, since control is performed so that all or part of the locked document data is subjected to image forming processing after the storage unit that stores the target data is requested to be locked. The image forming process of the document data can be performed without overlapping the image forming process with the image forming apparatus.Furthermore, the target data locked by another image forming apparatus can be forcibly released after the lock time and the image forming process can be performed by the own apparatus. Accordingly, even if a failure occurs in another image forming apparatus during the image forming process, the image forming process of the target data that has not been processed due to the occurrence of the failure after the lock time can be executed by the own apparatus.
[0007]
  The present invention also provides, as described in claim 2,The control means includesUpon receipt of the first image formation request, a lock request is made to all or a part of the target data, and a storage request for storing the image formation parameters and the target data is sent to one or more storage means.NoAnd sending a second image forming request indicating a part of the image forming parameters to one or more other image forming apparatuses.RuIt can be constituted as follows.
[0008]
In such a distributed image forming apparatus, an image forming process is performed and an image forming request is made to another image forming apparatus. A forming process can be performed. For example, since an image forming apparatus that has directly received a first image forming request from a PC spontaneously makes a second image forming request to another image forming apparatus, it is necessary to include a server for controlling such processing. Absent. Further, since the user only needs to make a single image formation request, there is no need to know the state of the image forming apparatus such as a failure.
[0009]
  Furthermore, the present invention as described in claim 3,The control means includesWhen the second image formation request is received from another image forming apparatus,All or part of the above target dataofWhile requesting the lock, the storage unit may be requested to download all or part of the target data, and the target data may be downloaded and acquired from the storage unit.
[0010]
In such a distributed image forming apparatus, when a second image formation request is received from another image forming apparatus instead of directly from the PC, all or part of the target data to be imaged is locked to the storage unit. Since the image data is downloaded from the storage unit, even if a failure occurs in another image forming apparatus that has transmitted the second image formation request, image formation of the target data can be performed without duplication.
[0011]
  Further, the present invention provides a method according to claim 4,A lock time for controlling the storage means to request the lock after the lapse of the predetermined lock time when the lock cannot be performed even though all or part of the target data exists in the storage means. And when the lock by the lock time control means cannot be locked, the storage means forcibly releases all or a part of the lock of the target data, and again the target data Request all or part of the lockIt can be constituted as follows.
[0012]
  Further, according to the present invention, as described in claim 5, the control means may be configured to request the storage means to lock in units of divided data obtained by dividing the target data at a predetermined division. it can.In such a distributed image forming apparatus, it is possible to lock each divided data (page) during image forming processing.
[0013]
  Furthermore, the present invention provides the claims.6As described inThe control means includesWhen image formation processing is performed in units of the above divided data,Target divided dataEveryLockTheIn the storage meansRequest,TheSplit data isHas been deletedLockIf you could not,As an object of the image forming processLock next partitionThethe aboveSaveTo the meansRequestCan be configured.
[0014]
In such a distributed image forming apparatus, image forming processing can be executed with priority from lockable divided data (pages).
[0015]
  The present invention also includes claims.7As described inThe control means includesWhen image formation processing is performed in units of the above divided data, the target divided dataEveryLock to the above storage meansRequest, PlaceConstantLock timeTheProgressEven if the divided data cannot be locked,The storage meansUnlock split dataAnd request to lock the divided data again.Can be configured to.
[0017]
  Furthermore, the present invention provides the claims.8As described inThe control means includesWhen performing image formation processing in units of the target data, the jobofLockTheIn the storage meansRequestTo lock all of the target data.ConstantLock timeTheProgressIf the job cannot be locked even after,The storage meansUnlock jobAnd request to lock the job againCan be configured to.
[0018]
In such a distributed image forming apparatus, a job locked by another image forming apparatus can be forcibly released after the lock time and the image forming process can be performed by the own apparatus. Therefore, even if a failure occurs in another image forming apparatus during the image forming process, the image forming process for a job that has not been processed due to the occurrence of the failure after the lock time can be executed by the own apparatus. For example, a job is locked when image forming processing is performed in units of copies.
[0019]
  The present invention also includes claims.9As described above, when one or more other image forming apparatuses are not specified in the first image forming request, the apparatus has a device searching means for searching for another image forming apparatus capable of image forming processing. the abovecontrolThe means can be configured to transmit the storage request to one or more other image forming apparatuses searched by the apparatus searching means.
[0020]
In such a distributed image forming apparatus, a user needs to designate only one image forming apparatus because an image forming request is spontaneously performed by searching for an image forming apparatus that can perform image forming processing.
[0021]
  Furthermore, the present invention provides the claims.10As described inControlThe means deletes the divided data formed as an image.RuA deletion request can be transmitted to the storage means. The present invention also includes claims.11As described inRecordThe control meansAll of the above data orImage processing has been completed for all the divided data constituting the target data.IfA job deletion request for deleting a job for the target data is sent to the storage means.UIt can be constituted as follows.
[0022]
In such a distributed image forming apparatus, since the divided data (page) or job for which the image forming process has been completed is deleted from the saving unit, the saving unit manages the divided data (page) or the job for which the image forming process has been completed. There is no need to do.
[0027]
  In order to solve the above-mentioned problems, the present invention provides the following claims.13As described in the above, over a network, a user terminal used by a user, at least one storage device that stores information relating to image formation processing, and at least one image formation device that executes image formation processing In the image forming method in which the image forming system performs the image forming process in response to the image forming request from the user terminal, the user terminal sends a first image forming request for image forming to the image forming system. A first image formation request transmission procedure for transmitting to the image forming apparatus, the image forming apparatus, based on the first image formation request,Accessible by other image forming devices,For storage means for storing image formation parameters and target data to be imaged,In order to suppress overlapping output by the other image forming apparatusAll or part of the target dataofRequest lockdo itAccording to the image formation parameters, the lockShiControl the image forming process to form an image based on all or part of the target data.RuControl procedureTheHaveIn the case where the lock cannot be performed even after a predetermined lock time has elapsed, the control procedure forcibly releases the lock of all or part of the target data to the storage means, and again or again Request some lockConfigured to do.
[0028]
In such an image forming method in an image forming system, a user only issues an image forming request to one image forming apparatus via a network, and a failure occurs in the image forming apparatus or the storage device. In this case, the image forming process can be performed by any one of the image forming apparatuses and the storage apparatus.
[0029]
As means for solving the above-described problems, the present invention may be a recording medium on which the above-described program for causing a computer to execute is recorded.
[0030]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0031]
The image forming system according to the first embodiment of the present invention has a network configuration as shown in FIG. FIG. 1 is a diagram illustrating a network configuration example of an image forming system according to a first embodiment of the present invention. In FIG. 1, an image forming system 1001 includes a plurality of printers 100-1 to 100-n that perform print processing, a storage 200 that stores print parameters and document data, and a PC (Personal) used by a user who prints a document. Computer) 300. The plurality of printers 100-1 to 100-n, the storage 200, and the PC 300 are connected via the network 40.
[0032]
In such an image forming system 1001, the main printer 100-1 is a printer that directly receives a print request from the PC 300, and an auxiliary printer that the printer 100-1 transmits a print request on behalf of the PC 300 is the printer 100-2. To 100-3. The plurality of printers 100-1 to 100-n are printers having equivalent functions, and are hereinafter simply referred to as the printer 100 when collectively referred to.
[0033]
For convenience of explanation, the printer 100-1 is a printer that directly receives a print request from the PC 300, but any printer among the printers 100-1 to 100-n may be used. A printer that directly receives a print request from the PC 300 among the printers 100-1 to 100-n is simply defined as a main printer. Further, although the printers 100-2 to 100-3 to which the main printer 100-1 transmits a print request are used as auxiliary printers, any printers 100-2 to 100-n may be used. The auxiliary printer may be one or more of the printers 100-2 to 100-n connected via the network 40 other than the main printer 100-1. Here, if only the main printer 100-1 exists on the network 40, the main printer 100-1 performs the printing process as usual and outputs the result.
[0034]
An outline of a processing flow in the image forming system 1001 will be described with reference to FIG.
[0035]
When the main printer 100-1 receives a print request directly from the PC 300 (step S1), a print parameter indicating a finishing method such as a list of desired printers 100 as output destinations specified by the print request and necessity of stapling. And a job based on the document data to be printed. The job instruction information regarding the generated job includes a print parameter created based on the print parameter from the PC 300 and notification instruction information regarding an event notification of the printing process.
[0036]
The main printer 100-1 transmits a job storage request for storing the job instruction information in the storage 200 to the storage 200 (step S2). When the storage 200 receives a job storage request from the main printer 100-1, the storage 200 stores the job instruction information and the document data with the file name specified by the job storage request.
[0037]
Assume that printers 100-2 to 100-3 are auxiliary printers desired by the user. The main printer 100-1 sequentially transmits auxiliary print requests in which print parameters for the auxiliary printer based on the print parameters instructed from the PC 300 are set to the auxiliary printers 100-2 to 100-3 (steps S3-1 and S3-). 2).
[0038]
The main printer 100-1 executes print processing according to the generated job. Similarly, the auxiliary printers 100-2 and 100-3 respectively acquire all or part of the job instruction information and document data by transmitting a job acquisition request to the storage 200 (steps S4-1 and S4-). 2) The printing process is executed.
[0039]
In such an image forming system 1001, the printer 100-1 that has received a print request from the PC 300 autonomously becomes the main printer and controls the printers 100-2 and 100-3 desired by the user as auxiliary printers. There is no need to provide a dedicated server for controlling the plurality of printers 100-1 to 100-n. Since the main printer 100-1 and the auxiliary printers 100-2 and 100-3 perform printing processing, even if a failure occurs in any of the printers 100-1 to 100-3, printing is performed by another printer. Since the process is performed, the user can always obtain a document printed by any one of the designated printers 100-1 to 100-3. Therefore, it is possible to realize a system with excellent fault tolerance that is not easily affected by printer faults.
[0040]
The printer 100 applied to the image forming system 1001 according to the first embodiment of the present invention has a hardware configuration as shown in FIG. 2, for example. FIG. 2 is a block diagram showing the hardware configuration of the printer according to the first embodiment of the present invention.
[0041]
In FIG. 2, a printer 100 is a device that is controlled by a computer and executes print processing. The printer 100 is a CPU (Central Processing Unit) 11, a ROM (Read-Only Memory) 12, a RAM (Random Access Memory) 13, A non-volatile random access memory (RAM) 14, a real-time clock 15, an Ethernet (registered trademark) I / F (Ethernet (registered trademark) Interface) 21, a USB (Universal Serial Bus) 22, and an IEEE (Institute of Institute) Electrical and Electronics Engineers) 1284 23, a hard disk I / F 24, a video I / F 25, and an RS-232C I / F 26 are connected to the system bus B.
[0042]
The CPU 11 controls the printer 100 according to a program stored in the ROM 12. In the RAM 13, for example, areas are allocated to resources connected to the interfaces 21 to 26. The nonvolatile RAM 14 stores information necessary for processing by the CPU 11 until the printer 100 is turned off. The real-time clock 15 measures the current time and is used by the CPU 11 to synchronize processing.
[0043]
An Ethernet (registered trademark) interface cable such as 10BASE-T or 100BASE-TX is connected to the Ethernet (registered trademark) I / F 21. A USB interface cable is connected to the USB 22. An IEEE1284 interface cable is connected to the IEEE1284 23.
[0044]
A hard disk 34 is connected to the hard disk I / F 24, and document data of a document to be printed or image data after printing processing transmitted via the network is stored in the hard disk 34 via the hard disk I / F 24. . A printer engine 35 is connected to the video I / F 25, and image data is transmitted to the printer engine 25 via the video I / F 25, and an image is formed on a printable medium such as paper based on the image data. . An operation panel 36 is connected to the RS-232C I / F 26 to display information to the user and acquire input information or setting information from the user.
[0045]
The storage 200 applied to the image forming system 1001 according to the first embodiment of the present invention is a computer having a hard disk for storing job instruction information and document data, and requests for job storage and job acquisition from the printer 100. Perform processing according to the request. Further, the PC 300 is a personal computer used by a user, and makes a print request to the printer 100.
[0046]
FIG. 3 is a block diagram illustrating a functional configuration example of the printer according to the first embodiment of the present invention. In FIG. 3, the printer 100 mainly includes a job reception unit 101 that receives a print request and an auxiliary print request, a job issue unit 102 that issues a job to execute a print process, and a printable that exists on the network 40. A service search unit 103 that searches for a printer, a notification issuance unit 104 that notifies a status, and a control unit 105 that analyzes and creates job instruction information related to a job using XML (eXtensible Markup Language) and controls the entire process. The print processing unit 106 that controls the printer engine 35 shown in FIG. 2 to execute the printing process, the lock time control unit 107 that controls the lock time of the job or page, and the storage 200 and the PC 300 via the network 40. And a network control unit 110 that controls each communication.
[0047]
The job reception unit 101 receives a print request from the PC 300, an auxiliary print request from another printer, and job instruction information regarding a job from the storage 200, and notifies the control unit 105 that the job has been received.
[0048]
The job issuing unit 102 generates a job in response to the print request, transmits a job storage request to the storage 200, and transmits an auxiliary print request to another printer desired by the user. Submit the job. Thereafter, a job acquisition request is transmitted to the storage 200. On the other hand, for the auxiliary print request, the job issuing unit 102 generates a job in the same manner as when the print request is received, and transmits a job acquisition request to the storage 200 specified by the auxiliary print request.
[0049]
In response to an instruction from the control unit 105, the service search unit 103 executes a discovery function for searching for other printers on the network 40 that can perform print processing, generates a printer list, and notifies the control unit 105 of the discovery function. .
[0050]
The control unit 105 analyzes job instruction information and the like set in the print request and the auxiliary print request using XML (eXtensible Markup Language), controls the job issuing unit 102 based on the analysis result, and generates the job issuing unit 102 According to the received job, the print processing unit 106 is controlled to execute print processing. When searching for an auxiliary printer, the service search unit 103 is controlled to obtain a list of printers that can perform print processing.
[0051]
The notification issuing unit 104 notifies the client PC 200 with the HTTP protocol by the network control unit 110 based on the status notified from the control unit 105.
[0052]
The print processing unit 106 executes print processing in accordance with an instruction from the control unit 105, forms an image on a predetermined medium, and outputs the image.
[0053]
The lock time control unit 107 performs control to try to lock again after the lock time elapses when a job or page to be printed that is stored in the storage 200 is locked. In response to the notification from the lock time control unit 107, the control unit 105 forcibly releases the lock and sets the lockable state.
[0054]
The network control unit 110 further includes a TCP / IP (Transmission Control Protocol / Internet Protocol) 111, an HTTP 112, a SOAP (Simple Object Access Protocol) 113, and a BMLinkS 114.
[0055]
TCP / IP 111 is a network communication protocol that controls data communication via the network 40. HTTP 112 is an Internet communication protocol that realizes information provision and information acquisition on the Internet. The SOAP 113 is a message exchange protocol for controlling the exchange of messages described according to XML, for example. The BMLinkS 114 controls data communication related to job control procedures, status reference, etc. for one or more OA devices having at least one of a printer, scanner, storage, FAX transmission and reception function on the network 40. OA device I / F protocol.
[0056]
The storage 200 and the PC 300 have the same configuration as that of the network control unit 110, and communicate with the printer 100 via the network 40 according to BMLinkS.
[0057]
Next, processing performed by the control unit 105 that controls processing in the printer 100 will be described. First, processing when a print request is directly received from the PC 300 will be described with reference to FIGS. 4 and 5 are flowcharts for explaining a processing example when a print request of the control unit according to the first embodiment of the present invention is received. In FIG. 4, the control unit 105 determines whether or not a job has been received (step S11). When the job (print request from the PC 300) is not received and the notification from the lock time control unit 107 is received, lock result processing described later is executed (step S19). On the other hand, when a job is received, that is, when a print request is received from the PC 300, the contents of the print request are acquired (step S12).
[0058]
Based on the contents of the print request, it is determined whether printing is in units of copies or printing in units of pages (step S13). If it is determined that the printing is in units of copies, the control unit 105 causes the job issuing unit 102 to generate a job, and sends a job save request for saving job instruction information indicating the lock of the job in the storage 200 to the storage 200. Transmit (step S14). Even if the print request is not specified directly in the copy request, for example, when the print request includes the staple specification, it is determined that the print is in the copy unit. Then, the job issuing unit 102 transmits an auxiliary print request to all the auxiliary printers specified by the print request received from the PC 300 (step S15).
[0059]
The control unit 105 controls the print processing unit 106 to print all pages of document data to be printed received from the PC 300 (step S16). When printing of all pages by the print processing unit 106 is completed, the control unit 105 transmits a page deletion request for requesting the storage 200 to delete all pages (step S17), and then requests the storage 200 to delete the job. The job deletion request to be transmitted is transmitted (step S18), and the processing when the print request is received is terminated.
[0060]
On the other hand, when the control unit 105 determines in step S13 that printing is performed in units of pages, the control unit 105 sets 1 to page X (step S21), causes the job issuing unit 102 to generate a job, and A job save request for saving job instruction information indicating job lock in the storage 200 is transmitted to the storage 200 (step S22). Then, the job issuing unit 102 transmits an auxiliary print request to all the auxiliary printers specified by the print request received from the PC 300 (step S23).
[0061]
The control unit 105 controls the print processing unit 106 to print the page X of document data to be printed received from the PC 300 (step S24). When the printing of the page X is completed, the control unit 105 transmits a page deletion request for requesting the storage 200 to delete the page X (step S25).
[0062]
Then, the control unit 105 determines whether there are still pages (step S26). If there is still a page, the control unit 105 adds 1 to the page X (step S27) and requests the storage 200 to lock the page X (step S28). By locking page X, it is possible to prevent duplicate output from other printers.
[0063]
Then, the control unit 105 determines whether or not the response from the storage 200 has been locked (step S29). If the page X can be locked, the control unit 105 returns to step S24, causes the print processing unit 106 to print the page X, and performs the same processing as described above.
[0064]
On the other hand, when the control unit 105 determines in step S29 that the page X cannot be locked, it determines whether or not the page X has been deleted (step S30). If page X is deleted and does not exist, the process returns to step S26 to determine whether there is a next page. On the other hand, if there is a page X, that is, if either the auxiliary printer 100-2 or 100-3 has locked the page X, the lock time control unit 107 is notified (step S31), and the process returns to step S26. It is determined whether there is any page.
[0065]
As described above, when the page X cannot be locked, the process returns to step S26 so that the printing process can be performed from the lockable page first. In step S31, the lock time may be acquired from the storage 200 and notified to the lock time control unit 107. The acquisition of the lock time may be set in the response from the storage 200. Alternatively, the control unit 105 may make an inquiry about the lock time to the storage 200. Further, the lock time only needs to indicate the time when the other printer is locked and the interval until the lock expires. Alternatively, when it is possible to have a time synchronized with another printer, the lock time may indicate the time when the lock expires.
[0066]
When the control unit 105 determines that there is no page in step S26, it is determined whether or not the lock time control process by the lock time control unit 107 has ended (step S32). If the lock time control process has not ended, the process waits until the lock time control process ends. After the lock time control process is completed, the control unit 105 transmits a job deletion request to the storage 200 and ends the process when a print request is received directly from the PC 300.
[0067]
Next, processing performed by the control unit 105 when an auxiliary print request is received from another printer 100 will be described with reference to FIGS. 6 and 7. 6 and 7 are flowcharts for explaining a processing example when an auxiliary printing request is received from the control unit according to the first embodiment of the present invention. In FIG. 6, the printer 100-2 receives an auxiliary print request from the printer 100-1, and functions as an auxiliary printer. The control unit 105 determines whether a job has been received (step S41). When a job (auxiliary print request from another printer 100) is not received and a notification from the lock time control unit 107 is received, a lock result process described later is executed (step S42), and the process proceeds to step S51. On the other hand, when a job is received, that is, when an auxiliary print request is received from another printer 100, the contents of the auxiliary print request are acquired (step S43).
[0068]
The control unit 105 sets 1 to the page X (step S44). Subsequently, the control unit 105 determines whether printing is in units of copies or printing in units of pages based on the content of the auxiliary print request (step S45). When printing is performed in units of pages, the control unit 105 requests the storage 200 to lock page X and download page X (step S46).
[0069]
Then, the control unit 105 determines whether or not the response from the storage 200 has been locked (step S47). If the page X cannot be locked, it is determined whether or not the page X has been deleted (step S48). If the page X is deleted and does not exist, the process proceeds to step S53, and it is determined whether or not there is a next page.
[0070]
On the other hand, if there is a page X, if either the main printer 100-1 or the auxiliary printer 100-3 locks the page X, the lock time control unit 107 is notified (step S49), and the process proceeds to step S53. Determine whether there is a next page. As described above, when the page X cannot be locked, the process proceeds to step S53 so that the printing process can be performed from the lockable page first.
[0071]
In step S49, the lock time may be acquired from the storage 200 and notified to the lock time control unit 107. The acquisition of the lock time may be set in the response from the storage 200. Alternatively, the control unit 105 may make an inquiry about the lock time to the storage 200. Further, the lock time only needs to indicate the time when the other printer is locked and the interval until the lock expires. Alternatively, when it is possible to have a time synchronized with another printer, the lock time may indicate the time when the lock expires.
[0072]
On the other hand, when the control unit 105 determines in step S47 that the page X has been locked, the page X is downloaded (step S50). When the page X is acquired, the control unit 105 controls the print processing unit 106 to perform print processing for the page X. When the printing of the page X by the print processing unit 106 is completed, the control unit 105 transmits a page deletion request for requesting the storage 200 to delete the page X (step S52).
[0073]
Then, the control unit 105 determines whether there is still a page of document data (step S53). If there are still pages, the control unit 105 adds 1 to the page X (step S54), and determines whether the printing is in units of copies or pages (step S55). In the case of printing in units of copies, the control unit 105 requests the storage 200 to download page X and returns to step S51. On the other hand, if printing is performed in units of pages, the process returns to step S46. If printing is in units of copies, the storage is requested to download page X (step S56), and the process returns to step S50.
[0074]
On the other hand, if the control unit 105 determines that there is no page in step S53, it is determined whether or not the lock time control process has ended (step S57). If the lock time control process has not ended, the process waits until the lock time control process ends. If the lock time control process has been completed, the control unit 105 transmits a job deletion request for deleting a job to the storage 200 (step S58), and ends the auxiliary print request process.
[0075]
On the other hand, if it is determined in step S45 that printing is in units of copies, the control unit 105 requests the storage 200 to lock the job and download page X (step S61). Even if the printing for each copy is not directly specified in the auxiliary print request, for example, when the staple is specified in the printing request, it is determined that the printing is for each copy.
[0076]
Then, the control unit 105 determines whether or not the response from the storage 200 has been locked (step S62). If the job cannot be locked, it is determined whether or not the job has been deleted (step S63). If the job is deleted and does not exist, the auxiliary print request processing ends. On the other hand, if there is a job, the lock time control unit is notified (step S64), and the auxiliary print request processing is once ended. On the other hand, if it is determined in step S62 that the control unit 105 has been locked, the process returns to step S50 and the same processing as described above is performed.
[0077]
In step S64, the lock time may be acquired from the storage 200 and notified to the lock time control unit 107. The acquisition of the lock time may be set in the response from the storage 200. Alternatively, the control unit 105 may make an inquiry about the lock time to the storage 200. Further, the lock time only needs to indicate the time when the other printer is locked and the interval until the lock expires. Alternatively, when it is possible to have a time synchronized with another printer, the lock time may indicate the time when the lock expires.
[0078]
Next, the lock time control process executed by the lock time control unit 107 will be described with reference to FIG. FIG. 8 is a flowchart for explaining the lock time control process. In FIG. 8, the lock time control unit 107 waits for the lock time to elapse according to the notification from the control unit 105 (step S81), and determines the job type after the lock time elapses (step S82). If the job type is a print request directly transmitted from the PC 300, the storage 200 is requested to lock the page X (step S83), and the lock result is notified to the control unit 105 (step S84).
[0079]
If the lock time control unit 107 determines in step S82 that it is an auxiliary print request, it determines whether the job is locked (step S85). If the page is locked, the storage 200 is requested to lock and download page X (step S86), and the lock result is notified to the control unit 105 (step S84).
[0080]
If it is determined in step S85 that the job is locked, the storage 200 is requested to lock the job and download page X (step S87), and the lock result is notified to the control unit 105 (step S84).
[0081]
In this way, when the lock time elapses, the storage 200 is requested to lock or download again, and the result is notified to the control unit 105, whereby the processing according to the processing state in the other printer 100 is performed as shown in FIG. 19 and the lock result process in step S42 of FIG.
[0082]
FIG. 9 is a flowchart for explaining the lock result processing. In FIG. 9, the control unit 105 receives the lock result from the lock time control processing unit (step S91), and determines the type of job (step S92). If the job is a print request, the contents of the lock result are determined (step S93). When the lock result indicates that the page X has been deleted, that is, when the page X has already been printed by the other printer 100, the process proceeds to step S26 in FIG. .
[0083]
On the other hand, if the lock result indicates that it is still locked, that is, it is locked even after the lock time elapses, it is determined that printing cannot be performed by the other printer 100, and the control unit 105 The storage 200 is forcibly released from the lock of the page X (step S94). After unlocking the page X, the control unit 105 requests the storage 200 to lock the page X again (step S95), proceeds to step S29 in FIG. 5, and performs the same processing as described above.
[0084]
If the control unit 105 determines in step S92 that the job is an auxiliary print request, it further determines whether the job is locked or page X is locked (step S96). If it is determined that the page X is locked, the content of the lock result is determined (step S97). If the lock result indicates that the page X has been deleted, that is, if the page X has already been printed by the other printer 100, the process proceeds to step S53 in FIG. .
[0085]
On the other hand, if the lock result indicates that it is still locked, that is, it is locked even after the lock time elapses, it is determined that printing cannot be performed by the other printer 100, and the control unit 105 The storage 200 is forcibly released from the page X lock (step S98). After unlocking the page X, the control unit 105 requests the storage 200 to lock and download the page X again (step S99), proceeds to step S50 in FIG. 6, and performs the same processing as described above.
[0086]
If the control unit 105 determines in step S96 that the job has been locked, the content of the lock result is determined (step S100). If the lock result indicates that the job has been deleted, that is, if the other printer 100 has already printed the entire document data, the process according to the auxiliary print request is terminated.
[0087]
When the lock result indicates that the lock is still locked, that is, since the lock is locked even after the lock time elapses, it is determined that the other printer 100 cannot perform printing, and the control unit 105 stores the storage. The job is forcibly released by 200 (step S101). After unlocking the job, the control unit 105 requests the storage 200 to lock and download the job again (step S101), and proceeds to step S50 in FIG. 6 to perform the same processing as described above.
[0088]
According to the processing shown in FIGS. 4 to 9, in the case of the main printer, the printer 100 locks the storage 200 for each processing unit indicated by the number of copies or the unit of pages, and converts the document data received from the PC 300. Based on this, the printing process is executed without obtaining from the storage 200. Therefore, the same document or page is not duplicately printed by another printer 100 in units of copies or pages. In the case of processing in units of pages, it is possible to search for an unlocked page and print the page with priority. Furthermore, if the page is locked by another printer 100 and remains locked even after the lock time has elapsed, the lock can be forcibly released and printing can be performed by the printer 100 itself.
[0089]
In addition, the printer 100 as the auxiliary printer makes a lock and download request to the storage 200 so that the same document or page is not duplicated by another printer 100 in units of copies or pages. In the case of processing in units of pages, it is possible to search for an unlocked page and print the page with priority. Furthermore, if the page is locked by another printer 100 and remains locked even after the lock time has elapsed, the lock can be forcibly released and printing can be performed by the printer 100 itself.
[0090]
It should be noted that the processing shown in FIGS. 4 to 9 can be performed by all the printers 100-1 to 100-n.
[0091]
Next, a method for spontaneously searching for an auxiliary printer will be described. FIG. 10 is a follow chart for explaining a second processing example of the control unit according to the first embodiment of the present invention. In FIG. 10, steps similar to those in FIG. 4 are denoted by the same reference numerals, and description thereof is omitted. In FIG. 10, after determining that the control unit 105 has received a job and acquiring the contents of the job indicating the print request (steps S <b> 11 and S <b> 12), the control unit 105 performs an auxiliary printer on the print request received from the PC 300. Is determined (step S12-2). If an auxiliary printer is designated, the control unit 105 executes step S13. On the other hand, when an auxiliary printer is not designated, the control unit 105 causes the service search unit 103 to search for a printer 100 that can be printed on the network 40 (step S12-4). Thereafter, the processing from step S13 in FIG. 4 to step S33 in FIG. 5 is executed to print the document without overlapping pages.
[0092]
Even if a print request not specifying the auxiliary printer 100 is received from the PC 300 by such second processing, the printer 100 that has received the print request spontaneously exists on the network 40 and can be printed. Therefore, the user need only make a print request to one printer 100 without designating the auxiliary printer.
[0093]
For example, job instruction information managed by the storage 200 and job data including management information and document data has a structure as shown in FIG. FIG. 11 shows the structure of job data. Based on the job storage request received from each printer 100, the storage 200 stores job management information having job instruction information specified by the job storage request and management information necessary for management in the storage 200 for each job. It has a job management area 291 for storing, and a page data management area 292 for storing at least one or more page data (pages 1 to n) constituting a document associated with job management information. For example, in the job management area 291, the lock time for each job or each page is managed by the job management information.
[0094]
A script for a print request transmitted from the PC 300 to the main printer 100-1 in step S1 in FIG. 1 will be described. FIG. 12 is a diagram illustrating a script example of a print request transmitted from the PC. In FIG. 12, a description 400 indicated by <bm: create_job xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: create_job> indicates that the description is in XML according to BMLinkS. . A description 401 indicating create_job indicates that a create_job command specified by BMLinkS has been issued.
[0095]
A description 402 indicated by <requesting-user-name> to </ request-user-name> indicates the user name “someone” who requested printing.
[0096]
A description 403 indicated by <job-instruction> to </ job-instruction> includes a description 404 indicated by <job-instruction-params> to </ job-instruction-params> for specifying a parameter relating to print processing, and a notification And a description 405 indicated by <notification-instruction> to </ notification-instruction> for designating an event during printing processing to be performed.
[0097]
In the description 404, a description indicated by <job-name> to </ job-name> specifies a job name, for example, “sample-job”. The description from <optional-attributes-fidelity> to </ optional-attributes-fidelity> is specified as, for example, “false”. The description shown from <copies> to </ copies> indicates the number of copies to be printed, for example, “1”.
[0098]
A description 406 indicated by <parallelprint enc: arrayType = "bm: parallelprint [1]"> to </ parallelprint> is an array of storage for storing job instruction information and document data and an auxiliary printer according to BMLinkS. It is specified by “parallelprint [1]”. <storageName uri = ”http://192.168.3.1”> to </ storageName> describes, for example, “storage # 1” and saves job instruction information and document data in the storage name “storage # 1” Specify what to do. In this case, it is assumed that the storage name of the storage 200 is “storage # 1”. The description indicated by <printerName uri = “http://192.168.2.2”> to </ printerName> indicates, for example, “printer # 2”, and designates printing processing with the printer name “printer # 2”. In this case, it is assumed that the printer name of the printer 100-2 is “printer # 2.” The description indicated by <printerName uri = “http://192.168.2.3”> to </ printerName> indicates, for example, “printer # 3” and designates printing processing with the printer name “printer # 3”. In this case, it is assumed that the printer name of the printer 100-3 is “printer # 3”.
[0099]
A description 407 indicated by <finishings enc: arrayType = "bm: finishing [1]"> to </ finishings> specifies finishing after printing processing by the array "finishing [1]" in accordance with BMLinkS. The description from <finishing> to </ finishing> specifies that the printed document is bound with “staple” as finishing.
[0100]
The description shown from <document-format> to </ document-format> specifies the data format “image / tiff” of the document data.
[0101]
A description 405 designates a notification method of the print processing result and is referred to by the notification issuing unit 104. For example, the description 408 from <notification-recipient> to </ notification-recipient> specifies the URI “http://192.168.2.1/event” of the main printer 100-1 as the notification destination. Description 409 from <events enc: arrayType = "bm: Event [2]"> to </ events> indicates that the array “Event [2]” specifies that two events are notified according to BMLinkS. Each event type is specified by a description from <event> to </ event>. For example, an event “job-completed” indicating normal termination and an event “job-canceled” indicating that print processing has been canceled are specified.
[0102]
A job save request script transmitted from the main printer 100-1 to the storage 200 in step S14 of FIG. 4 will be described. FIG. 13 is a diagram illustrating a script example of a job saving request transmitted from the main printer to the storage. In FIG. 13, a description 410 indicated by <bm: create_file xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: create_file> indicates that the description is in XML according to BMLinkS. . A description 411 indicating create_file indicates that a create_file command defined by BMLinkS has been issued.
[0103]
In the description 410, a description 412 indicated by <requesting-user-name> to </ request-user-name> indicates the registered user name “someone”. A description 413 indicated by <file-instruction> to </ file-instruction> specifies data storage conditions. A description 415 from <file-instruction-params> to </ file-instruction-params> specifies a parameter value of a data storage condition. For example, the description from <file-name> to </ file-name> specifies the file name “sample-job”. In the description from <read-only> to </ read-only>, “true” indicating only reading is specified.
[0104]
Further, in the description 410, a description 414 indicated by <file-attribute> to </ file-attribute> specifies an attribute for printing a document. The description 416 indicated by <parallelprint enc: arrayType = "bm: parallelprint [1]"> to </ parallelprint> indicates that the auxiliary printer is designated by one array “parallelprint [1]” according to BMLinkS. Is specified by the description from <printerName> to </ printerName>. The description indicated by <printerName uri = “http://192.168.2.2”> to </ printerName> indicates, for example, “printer # 2”, and designates printing processing with the printer name “printer # 2”. In this case, it is assumed that the printer name of the printer 100-2 is “printer # 2.” The description indicated by <printerName uri = “http://192.168.2.3”> to </ printerName> indicates, for example, “printer # 3” and designates printing processing with the printer name “printer # 3”. In this case, it is assumed that the printer name of the printer 100-3 is “printer # 3”.
[0105]
An auxiliary print request script transmitted from the main printer 100-1 to each of the auxiliary printers 100-2 and 100-3 in step S15 of FIG. 4 will be described. FIG. 14 is a diagram illustrating a script example of an auxiliary print request transmitted from the main printer to the auxiliary printer. In FIG. 14, the description 420 indicated by <bm: create-job xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: create_job> is an XML description according to BMLinkS. Indicates. A description 421 indicating create_job indicates that a create_job command defined by BMLinkS has been issued.
[0106]
A description 422 indicated by <requesting-user-name> to </ request-user-name> indicates the user name “someone” that requested printing.
[0107]
A description 423 indicated by <job-instruction> to </ job-instruction> includes a description 424 indicated by <job-instruction-params> to </ job-instruction-params> for specifying a parameter relating to print processing, and a notification And a description 425 indicated from <notification-instruction> to </ notification-instruction> for designating an event during printing processing to be performed.
[0108]
In the description 424, the description indicated from <job-name> to </ job-name> specifies the job name, and the description indicated from <job-name> to </ job-name> specifies the job name For example, “sample-job” is specified. The description from <optional-attributes-fidelity> to </ optional-attributes-fidelity> is specified as, for example, “false”. The description shown from <copies> to </ copies> indicates the number of copies to be printed, for example, “1”.
[0109]
The description 426 indicated by <finishings enc: arrayType = "bm: finishing [1]"> to </ finishings> designates finishing after printing processing by the array “finishing [1]” in accordance with BMLinkS. The description from <finishing> to </ finishing> specifies that the printed document is bound with “staple” as finishing.
[0110]
The description shown from <document-format> to </ document-format> specifies the data format “image / tiff” of the document data.
[0111]
In the description 427 regarding the job storage location, the description from <source-uri> to </ source-uri> indicates the URI “http://192.168.2.1/sample-job” in which the job is stored, The description from <source-file-id> to </ source-file-id> indicates the file ID “001”.
[0112]
The description 425 designates a printing process result notification method, and is referred to by the notification issuing unit 104 of each of the auxiliary printers 100-2 and 100-3. For example, a description 408 from <notification-recipient> to </ notification-recipient> specifies the URI “http://192.168.1.1/event” of the main printer 100-1 as a notification destination. The description 429 from <events enc: arrayType = "bm: Event [3]"> to </ events> indicates that the array “Event [3]” specifies that three events are notified according to BMLinkS. Each event type is specified by a description from <event> to </ event>. For example, an event “job-completed” indicating normal termination, an event “job-canceled” indicating that the printing process has been canceled, and an event “read-completed” indicating that reading has ended are specified.
[0113]
A script that locks a page by designating only a page in response to a job acquisition request transmitted from the auxiliary printer 100-2 to the storage 200 in step S46 of FIG. 5 will be described. FIG. 15 is a diagram illustrating a first script example of page lock according to a job acquisition request transmitted from the main printer to the storage. In FIG. 15, a description 430 indicated by <bm: file-attribute xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: file-attribute> is an XML description according to BMLinkS. It shows that there is. A description 431 indicating a file-attribute indicates that a file-attribute command specified by BMLinkS has been issued.
[0114]
In the description 430, a description 432 indicated by <requesting-user-name> to </ requesting-user-name> indicates the registered user name “someone”. A description 433 indicated by <source-file-id> to </ source-file-id> indicates a file ID “001”. A description 434 indicated by <lock-page-id> to </ lock-page-id> indicates a page “001” to be locked.
[0115]
A script that locks a page by specifying a page and a lock period by a job acquisition request transmitted from the auxiliary printer 100-2 to the storage 200 in step S46 of FIG. 5 will be described. FIG. 16 is a diagram illustrating a second script example of page lock by a job acquisition request transmitted from the main printer to the storage. In FIG. 16, description 440 indicated by <bm: file-attribute xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: file-attribute> is a description by XML according to BMLinkS. It shows that there is. A description 441 indicating a file-attribute indicates that a file-attribute command specified by BMLinkS has been issued.
[0116]
In the description 440, a description 442 indicated by <requesting-user-name> to </ requesting-user-name> indicates the registered user name “someone”. A description 433 indicated by <source-file-id> to </ source-file-id> indicates a file ID “001”. A description 434 indicated by <lock-page-id> to </ lock-page-id> indicates a page “001” to be locked. Further, a description 455 indicated by <lock-expire-seconds> to </ lock-expire-seconds> specifies, for example, a lock period of “60” seconds. In this case, an end time may be designated.
[0117]
A page deletion request script for deleting a printed page stored in the storage 200 in step S25 of FIG. 5 will be described. FIG. 17 is a diagram illustrating a script example of a page deletion request for deleting a printed page stored in the storage 200. In FIG. 17, a description 450 indicated by <bm: delete_page xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: delete_page> indicates that the description is in XML according to BMLinkS. . A description 451 indicating delete_page indicates that a delete_page command defined by BMLinkS has been issued.
[0118]
In the description 450, a description 452 indicated by <requesting-user-name> to </ requesting-user-name> indicates the registered user name “someone”. A description 453 indicated by <file-id> to </ file-id> indicates a file ID “001”. A description 454 indicated by <page-id> to </ page-id> indicates a page “001” to be deleted.
[0119]
In the image forming system 1001 according to the first embodiment, a method for storing a job in one storage and outputting a document without duplication by a plurality of printers 100-1 to 100-3 has been described. A second embodiment capable of printing a document even when a failure occurs will be described below.
[0120]
FIG. 18 is a diagram showing a network configuration example of an image forming system according to the second embodiment of the present invention. In the image forming system 1002 shown in FIG. 18, the printer 100 has the hardware configuration shown in FIG. 2 of the printer 100 of the image forming system 1001 according to the first embodiment, and also has the functional configuration shown in FIG. Storage 200-1 to 200-3 (hereinafter collectively referred to as storage 200) and PC 300 are equivalent to storage 200 and PC 300 in the first embodiment.
[0121]
An image forming system 1002 illustrated in FIG. 18 includes a printer 100 that performs printing processing, a plurality of storages 200-1 to 200-3 that store printing parameters and document data, and a PC 300 that is used by a user who prints a document. It is a configured system. The printer 100, the plurality of storages 200-1 to 200-3, and the PC 300 are connected via the network 40.
[0122]
In such an image forming system 1002, when a print request is received from the PC 300, the printer 100 transmits a job storage request from the plurality of storages 200-1 to 200-3. For convenience of explanation, the printer 100 transmits a job storage request to the plurality of storages 200-1 to 200-3. However, the number of storages 200 that transmit the job storage request may be one or more.
[0123]
An overview of a processing flow in the image forming system 1002 will be described with reference to FIG.
[0124]
When the printer 100 receives a print request from the PC 300 (step S131), the printer 100 displays a list of the storage 200 desired as a storage destination specified by the print request, a print parameter indicating a finishing method such as necessity of stapling, and print processing. A job is generated based on the document data to be processed. The job instruction information regarding the generated job includes a print parameter created based on the print parameter from the PC 300 and notification instruction information regarding an event notification of the printing process.
[0125]
The printer 100 sequentially transmits job save requests of the job instruction information to the plurality of storages 200-1 to 200-3 (steps S132-1 to S132-3). Upon receiving a job save request from the printer 100, each of the storages 200-1 to 200-3 saves job instruction information and document data with a file name specified by the job save request.
[0126]
  The printer 100 then issues a print request.InsideFor example, first, a job acquisition request is transmitted to the storage 200-1 (step S133-1), and printing processing is executed according to the acquired job instruction information and document data. If the printer 100 cannot acquire a page from the storage 200-1 for printing processing, the printer 100 acquires the page and prints by transmitting a job acquisition request to the next storage 200-2 (step S133-2). To do. Further, when a page cannot be acquired from the storage 200-2, a job acquisition request is transmitted to the next storage 200-3 (step S133-3), and the page is acquired and printed.
[0127]
As described above, when the page to be printed cannot be acquired from the storage 200-1 for some reason, the page to be printed can be acquired from the other storage 200-2 or 200-3. Therefore, the user of the PC 300 designates the storages 200-2 and 200-3 as backups, and does not know the status of each storage 200-1 to 200-3. Can be printed. Therefore, the image forming system 1002 can improve the fault tolerance.
[0128]
Next, processing performed by the control unit 105 that controls processing in the printer 100 will be described. FIG. 19 is a flowchart for explaining a processing example of the control unit according to the second embodiment of the present invention. In FIG. 19, the control unit 105 determines whether or not a job has been received every predetermined time (step S141). If no job has been received, the process waits and repeats step S141 every predetermined time. On the other hand, when a job is received from the PC, step S113 is executed.
[0129]
The control unit 105 causes the job issuing unit 102 to generate a job, and sequentially saves job instruction information instructing job contents in the plurality of storages 200-1 to 200-3 designated by the print request (step S142). Then, the control unit 105 selects the first storage specified in the print request (in this case, the storage 100-1) (step S143).
[0130]
The control unit 105 sets 1 to page X (step S144), and makes a request by transmitting a job acquisition request to the storage 200-1 that has selected acquisition of page X (step S145). The control unit 105 determines whether or not the page X has been acquired from the storage 200-1 (step S146). If the page X cannot be acquired, the next storage 200-2 is selected (step S147), and the process returns to step S145. In this case, when the page X cannot be acquired from the storage 200-1, the storage 200-2 is selected. When the page X cannot be acquired from the storage 200-2, the storage 200-3 is selected in order.
[0131]
On the other hand, if the page X has been acquired, the control unit 105 controls the print processing unit 106 to print the page X (step S148). The control unit 105 determines whether there are still pages to be printed (step S149). If there is still a page, the control unit 105 adds 1 to the page X (step S150) and returns to step S145. On the other hand, when all pages have been printed, in order to delete the job, a job deletion request is transmitted from the storage 200-1 to the storage 200-3, and the processing in the control unit 105 is terminated (step S151).
[0132]
A script for a print request transmitted from the PC 300 to the main printer 100-1 in step S131 in FIG. 18 will be described. FIG. 20 is a diagram illustrating a script example of a print request in which a plurality of storages are specified. In FIG. 20, a description 460 indicated by <bm: create_job xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: create_job> indicates that the description is in XML according to BMLinkS. . A description 461 indicating create_job indicates that a create_job command specified by BMLinkS has been issued.
[0133]
A description 462 indicated by <requesting-user-name> to </ request-user-name> indicates the user name “someone” who has requested printing.
[0134]
A description 463 indicated by <job-instruction> to </ job-instruction> includes a description 464 indicated by <job-instruction-params> to </ job-instruction-params> for specifying a parameter relating to print processing, and a notification And a description 405 indicated by <notification-instruction> to </ notification-instruction> for designating an event during printing processing to be performed.
[0135]
In the description 464, a description indicated by <job-name> to </ job-name> specifies a job name, for example, “sample-job”. The description from <optional-attributes-fidelity> to </ optional-attributes-fidelity> is specified as, for example, “false”. The description shown from <copies> to </ copies> indicates the number of copies to be printed, for example, “1”.
[0136]
A description 466 represented by <parallelprint enc: arrayType = "bm: parallelprint [1]"> to </ parallelprint> specifies a plurality of storages for storing job instruction information and document data according to BMLinkS. <storageName uri = ”http://192.168.3.1”> to </ storageName> describes, for example, “storage # 1” and saves job instruction information and document data in the storage name “storage # 1” Specify what to do. The description from <storageName uri = ”http://192.168.3.2”> to </ storageName> indicates, for example, “storage # 2”, and job instruction information and document data are stored in the storage name “storage # 2”. Specify to save. Furthermore, the description indicated by storageName uri = ”http://192.168.3.3”> to </ storageName> indicates, for example, “storage # 3”, and job instruction information and document data are stored in the storage name “storage # 3”. Specify to save. In this case, the storage name “storage # 1” corresponds to the storage 200-1, the storage name “storage # 2” corresponds to the storage 200-2, and the storage name “storage # 3” corresponds to the storage 200-3.
[0137]
A description 467 indicated by <finishings enc: arrayType = "bm: finishing [1]"> to </ finishings> specifies finishing after printing processing by the array "finishing [1]" in accordance with BMLinkS. The description from <finishing> to </ finishing> specifies that the printed document is bound with “staple” as finishing.
[0138]
The description shown from <document-format> to </ document-format> specifies the data format “image / tiff” of the document data.
[0139]
The description 465 designates a notification method of the print processing result and is referred to by the notification issuing unit 104. For example, the description 468 from <notification-recipient> to </ notification-recipient> specifies the URI “http://192.168.4.1/event” of the PC 300 as the notification destination. Description 469 from <events enc: arrayType = "bm: Event [2]"> to </ events> indicates that the array “Event [2]” specifies that two events are notified according to BMLinkS. Each event type is specified by a description from <event> to </ event>. For example, an event “job-completed” indicating normal termination and an event “job-canceled” indicating that print processing has been canceled are specified.
[0140]
A job save request script transmitted from the printer 100 to the plurality of storages 200-1 to 200-3 in steps S133-1 to S133-3 in FIG. 18 will be described. FIG. 21 is a diagram showing a script example of a job saving request transmitted from the printer to a plurality of storages. In FIG. 21, a description 470 indicated by <bm: create_file xmlns: bm = "urn: schemas-bm: service: bm"> to </ bm: create_file> indicates that the description is in XML according to BMLinkS. . A description 471 indicating create_file indicates that a create_file command defined by BMLinkS has been issued.
[0141]
In the description 470, a description 472 indicated by <requesting-user-name> to </ request-user-name> indicates the registered user name “someone”. A description 473 indicated by <file-instruction> to </ file-instruction> specifies data storage conditions. A description 474 from <file-instruction-params> to </ file-instruction-params> includes a description 475 indicating information about a file and a description 476 indicating a list of a plurality of storages as backups.
[0142]
In the description 475, for example, the description from <file-name> to </ file-name> specifies the file name “sample-job”. In the description from <read-only> to </ read-only>, “true” indicating only reading is specified.
[0143]
In the description 476, three descriptions indicated by <backup-uri> to </ backup-uri> are URIs “http://192.168.3.1/sample-” in which job instruction information and document data are stored as backups. Specify "job", "http://192.168.3.2/sample-job", and "http://192.168.3.3/sample-job".
[0144]
As described above, when the page X cannot be acquired from the storage 200-1 for some reason, the printer 100 can acquire and print the page X from the storage 200-2 or 200-3. Therefore, the user of the PC 300 designates the storages 200-2 and 200-3 as backups, and does not know the status of each storage 200-1 to 200-3. Can be printed. Therefore, the image forming system 1002 can improve the fault tolerance.
[0145]
Next, the printer 100-1 that has received the print request from the PC 300 stores the job in the plurality of storages 200-1 to 200-3 as a main printer, and assists the printers 100-2 and 100-3 as auxiliary printers. A third embodiment for transmitting a print request will be described.
[0146]
FIG. 22 is a diagram illustrating a network configuration example of the image forming system according to the third embodiment of the present invention. In the image forming 1003 shown in FIG. 22, the printers 100-1 to 100-3 form the hardware configuration shown in FIG. 2 of the printer 100 of the image forming system 1001 according to the first embodiment, and also shown in FIG. Configure the functional configuration. Storage 200-1 to 200-3 (hereinafter collectively referred to as storage 200) and PC 300 are equivalent to storage 200 and PC 300 in the first embodiment.
[0147]
An image forming system 1003 shown in FIG. 22 prints a plurality of printers 100-1 to 100-3 that perform print processing, a plurality of storages 200-1 to 200-3 that store print parameters and document data, and a document. This is a system configured with a PC 300 used by a user. The plurality of printers 100-1 to 100-3, the plurality of storages 200-1 to 200-3, and the PC 300 are connected via the network 40.
[0148]
In such an image forming system 1003, the main printer 100-1 is a printer that directly receives a print request from a PC, and an auxiliary printer that the printer 100-1 transmits a print request on behalf of the PC 300 is the printer 100-2. To 100-3. The plurality of printers 100-1 to 100-n are printers having equivalent functions, and are hereinafter simply referred to as the printer 100 when collectively referred to. The main printer 100-1 that directly receives the print request from the PC transmits a job storage request to the plurality of storages 200-1 to 200-3. For convenience of explanation, the printer 100 transmits a job storage request to the plurality of storages 200-1 to 200-3. However, the number of storages 200 that transmit the job storage request may be one or more.
[0149]
For convenience of explanation, the printer 100-1 is a printer that directly receives a print request from the PC 300, but any printer among the printers 100-1 to 100-n may be used. A printer that directly receives a print request from the PC 300 among the printers 100-1 to 100-n is simply defined as a main printer.
[0150]
The outline of the processing flow in the image forming system 1003 will be described with reference to FIG.
[0151]
When the main printer 100-1 receives a print request directly from the PC 300 (step S161), the list of the printer 100 desired as the output destination specified by the print request, the list of the storage 200 for storing the job, and the staple A job is generated based on print parameters indicating a finishing method such as necessity and the document data to be printed. The job instruction information regarding the generated job includes a print parameter created based on the print parameter from the PC 300 and notification instruction information regarding an event notification of the printing process.
[0152]
The main printer 100-1 transmits job storage requests for sequentially storing the job instruction information in accordance with the list of the storage 200 specified by the print request to the storages 200-1 to 200-3 (steps S162-1 to S162). -3). Upon receiving a job save request from the main printer 100-1, each of the storages 200-1 to 200-3 saves job instruction information and document data with a file name specified by the job save request.
[0153]
Assume that printers 100-2 to 100-3 are auxiliary printers desired by the user. The main printer 100-1 sequentially transmits auxiliary print requests in which the print parameters for the auxiliary printer based on the print parameters instructed from the PC 300 are set to the auxiliary printers 100-2 to 100-3 (steps S163-1 and S163-3). 2).
[0154]
Then, the main printer 100-1 acquires all or part of the job instruction information and the document data by transmitting a job acquisition request to the storage 200-1 (step S164-1), and executes print processing. Similarly, the auxiliary printers 100-2 and 100-3 respectively acquire all or part of the job instruction information and the document data by transmitting a job acquisition request to the storage 200 (steps S164-2 and S164-). 3) Print processing is executed.
[0155]
In such an image forming system 1003, the printer 100-1 that has received a print request from the PC 300 autonomously becomes the main printer, and controls the printers 100-2 and 100-3 desired by the user as auxiliary printers. There is no need to provide a dedicated server for controlling the plurality of printers 100-1 to 100-n.
[0156]
Since the main printer 100-1 and the auxiliary printers 100-2 and 100-3 perform printing processing, even if a failure occurs in any of the printers 100-1 to 100-3, printing is performed by another printer. Since the process is performed, the user can always obtain a document printed by any one of the designated printers 100-1 to 100-3. Therefore, it is possible to realize a system with excellent fault tolerance that is not easily affected by printer faults.
[0157]
Further, even if a failure occurs in any of the storages 200-1 to 200-3, the document can be printed by any of the printers 100-1 to 100-3. Therefore, it is possible to realize a system with excellent fault tolerance that is not easily affected by a storage fault.
[0158]
Further, in such an image forming system 1003, each printer 100-1 to 100-3 transmits a job storage request to the storage 200-1 to 200-3, respectively, so that each printer 100-1 to 100- 3 can print a document. For example, since three copies can be printed simultaneously, the printing process can be performed at high speed.
[0159]
【The invention's effect】
As described above, according to the present invention, the image forming process can be performed, and also in other image forming apparatuses, the image forming parameter and the target data can be acquired from the storage unit and the image forming process can be performed. Therefore, even if a failure occurs in itself, image forming processing can be performed by any of the image forming apparatuses. In addition, the image forming apparatus that has received the image forming request voluntarily saves the image forming parameters and the target data in the storage unit, and makes an image forming request to another image forming apparatus. There is no need to provide a server for this.
[0160]
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a network configuration example of an image forming system according to a first embodiment of the present invention.
FIG. 2 is a block diagram illustrating a hardware configuration of the printer according to the first embodiment of the present invention.
FIG. 3 is a block diagram illustrating a functional configuration example of a printer according to a first embodiment of the present invention.
FIG. 4 is a flowchart for explaining a processing example when a print request is received from a control unit according to the first embodiment of the present invention.
FIG. 5 is a flowchart for explaining a processing example when a print request is received from the control unit according to the first embodiment of the present invention;
FIG. 6 is a flowchart for explaining a processing example when an auxiliary print request is received from the control unit according to the first embodiment of the present invention;
FIG. 7 is a flowchart for explaining a processing example when an auxiliary printing request is received from the control unit according to the first embodiment of the present invention;
FIG. 8 is a flowchart for explaining lock time control processing;
FIG. 9 is a flowchart for explaining lock result processing;
FIG. 10 is a follow chart for explaining a second processing example of the control unit according to the first embodiment of the present invention;
FIG. 11 is a diagram illustrating a structure of job data.
FIG. 12 is a diagram illustrating a script example of a print request transmitted from a PC.
FIG. 13 is a diagram illustrating a script example of a job saving request transmitted from the main printer to the storage.
FIG. 14 is a diagram illustrating a script example of an auxiliary print request transmitted from the main printer to the auxiliary printer.
FIG. 15 is a diagram illustrating a first script example of page lock according to a job acquisition request transmitted from the main printer to the storage;
FIG. 16 is a diagram illustrating a second script example of page lock by a job acquisition request transmitted from the main printer to the storage.
FIG. 17 is a diagram illustrating a script example of a page deletion request for deleting a printed page stored in the storage.
FIG. 18 is a diagram illustrating a network configuration example of an image forming system according to a second embodiment of the present invention.
FIG. 19 is a flowchart for explaining a processing example of a control unit according to the second embodiment of the present invention.
FIG. 20 is a diagram illustrating a script example of a print request in which a plurality of storages are specified.
FIG. 21 is a diagram illustrating a script example of a job saving request transmitted from a printer to a plurality of storages.
FIG. 22 is a diagram illustrating a network configuration example of an image forming system according to a third embodiment of the present invention.
[Explanation of symbols]
40 network
100, 100-1, 100-2, 100-3 Printer
101 Job reception department
102 Job issuing department
103 Service Search Department
104 Notification issuing department
105 Control unit
106 Print processing unit
107 Lock time controller
110 Network control unit
200, 200-1, 200-2, 200-3 storage
300 PC

Claims (13)

画像形成を要求する第一画像形成要求に基づいて、他の画像形成装置によってアクセス可能であり、画像形成パラメータと画像形成すべき対象データとを保存する保存手段に対して、該他の画像形成装置による重複出力を抑制するために該対象データの全部又は一部ロックを要求して、上記画像形成パラメータに従って、上記ロックた対象データの全部又は一部に基づいて画像を形成するように画像形成処理を制御す制御手段を有し、
上記制御手段は、所定ロック時間を経過しても上記ロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求することを特徴とする分散型画像形成装置。
Based on the first image forming request for image formation, is accessible by another image forming apparatus, with respect to storage means for storing the target data to be image forming parameters and the image formation, said other image formation In order to suppress duplication output by the apparatus , all or part of the target data is requested to be locked, and an image is formed based on all or part of the locked target data according to the image forming parameter. have a control means that controls the image forming process,
The control means forcibly releases all or a part of the lock of the target data to the storage means when the lock cannot be performed even after a predetermined lock time has elapsed, A distributed image forming apparatus which requires a part of lock .
上記制御手段は、
上記第一画像形成要求の受信時に、上記対象データの全部又は一部にロックを要求すると共に、上記画像形成パラメータと該対象データの保存を要求する保存要求を1つ以上の上記保存手段に行
上記画像形成パラメータの一部を示す第二画像形成要求を1つ以上の他の画像形成装置に対して送信すことを特徴とする請求項1記載の分散型画像形成装置。
The control means includes
Upon receipt of the first image formation request, a request is made to lock all or part of the target data, and a storage request for requesting storage of the image formation parameters and the target data is sent to one or more storage means. Yes ,
Distributed image forming apparatus according to claim 1, wherein the that sends the second imaging request of a portion of the image forming parameters for one or more other image forming apparatus.
上記制御手段は、
他の画像形成装置から上記第二画像形成要求を受信すると上記対象データの全部又は一部ロックを要求すると共に、該対象データの全部又は一部のダウンロードを上記保存手段に対して要求し、
上記保存手段から上記対象データをダウンロードして取得するとを特徴とする請求項1記載の分散型画像形成装置。
The control means includes
When the other image forming apparatus receives the second image forming request, the requesting locking of all or part the target data, in whole or in part of downloading said subject data requests to said storage means ,
Distributed image forming apparatus according to claim 1, wherein the this downloading and acquiring the target data from said storage means.
上記対象データの全部又は一部が上記保存手段に存在しているにも係わらず上記ロックができない場合、上記所定ロック時間の経過後に、上記ロックを上記保存手段に要求するように制御するロック時間制御手段を有し、A lock time for controlling the storage means to request the lock after the lapse of the predetermined lock time when the lock cannot be performed even though all or part of the target data exists in the storage means. Having control means,
上記制御手段は、上記ロック時間制御手段によるロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求することを特徴とする請求項1乃至3のいずれか一項記載の分散型画像形成装置。When the lock means cannot lock by the lock time control means, the control means forces the storage means to release all or part of the target data, and again, all or part of the target data 4. The distributed image forming apparatus according to claim 1, wherein a lock is requested.
記制御手段は、上記保存手段に、上記対象データを所定の区切りで分割した分割データ単位でロック要求することを特徴とする請求項1乃至のいずれか一項記載の分散画像形成装置。 Control written above means, the storage means, variance image forming apparatus according to any one of claims 1 to 4, characterized in that to request a lock split data units obtained by dividing the target data in a predetermined delimiter . 上記制御手段は、上記分割データ単位で画像形成処理を行う場合対象となる分割データごとにロック上記保存手段に要求し分割データが削除されていてロックができなかった場合該画像形成処理の対象として次の分割データのロック上記保存手段に要求することを特徴とする請求項4記載の分散型画像形成装置。 The control means, when performing image forming processing by the division data units, the lock for each divided data to be requested to the storage means, if the divided data could not lock has been removed, the image forming process distribution type image forming apparatus to lock the next divided data as a target according to claim 4, wherein that you request to said storage means. 上記制御手段は、上記分割データ単位で画像形成処理を行う場合、対象となる分割データごとにロックを上記保存手段に要求し、所ロック時間経過しても該分割データのロックができない場合上記保存手段に対して該分割データのロックを解除させ、再度、該分割データのロックを要求することを特徴とする請求項5又は6記載の分散型画像形成装置。 The control means, when performing image forming processing by the division data units, the lock request to the storage means for each divided data of interest, if even after Jo Tokoro lock time can not lock the divided data 7. The distributed image forming apparatus according to claim 5 , wherein the storage unit unlocks the divided data and requests the divided data to be locked again . 上記制御手段は、上記対象データの部数単位で画像形成処理を行う場合、ジョブロック上記保存手段に要求することによって該対象データの全部をロックし、所ロック時間経過しても該ジョブのロックができない場合上記保存手段に対して該ジョブのロックを解除させ、再度、該ジョブのロックを要求することを特徴とする請求項1乃至5のいずれか一項記載の分散型画像形成装置。 The control means, when an image forming process in unit of the number of copies of the target data, to lock all of the subject data by requesting a lock on the job in the storage means, even after Jo Tokoro lock time the If you can not lock the job, to unlock the job to said storage means, again, distributed image of any one of claims 1 to 5, characterized in that to request a lock on the job Forming equipment. 上記第一画像形成要求に1つ以上の他の画像形成装置が指定されていない場合、画像形成処理可能な他の画像形成装置を検索する装置検索手段を有し、
上記制御手段は、上記装置検索手段によって検索された1つ以上の他の画像形成装置に対して上記保存要求を送信することを特徴とする請求項2項記載の分散型画像形成装置。
When one or more other image forming apparatuses are not specified in the first image forming request, the apparatus has a device searching unit that searches for other image forming apparatuses that can perform image forming processing.
3. The distributed image forming apparatus according to claim 2, wherein the control unit transmits the storage request to one or more other image forming apparatuses searched by the apparatus searching unit.
記制御手段は、画像形成した上記分割データを削除す削除要求を上記保存手段に送信することを特徴とする請求項乃至のいずれか一項記載の分散型画像形成装置。 Control written above means, distributed image forming apparatus of the deletion to delete the divided data image forming request according any of claims 5 to 7, characterized in that to send to said storage means. 制御手段は、上記対象データの全部又は上記対象データを構成する分割データ全てに対して画像処理が終了した場合、上記対象データに対するジョブを削除するジョブ削除要求を上記保存手段に行ことを特徴とする請求項乃至10のいずれか一項記載の分散型画像形成装置。Control written above means, when the image processing is completed for all the divided data constituting the whole or the target data of the target data, it intends line to the storage means a job deletion request to delete a job for the target data distributed image forming apparatus according to any one of claims 5 to 10, characterized in. 画像形成装置における分散型画像形成方法であって
画像形成を要求する第一画像形成要求に基づいて、他の画像形成装置によってアクセス可能であり、画像形成パラメータと画像形成すべき対象データとを保存する保存手段に対して、該他の画像形成装置による重複出力を抑制するために該対象データの全部又は一部のロックを要求して、上記画像形成パラメータに従って、上記ロックした対象データの全部又は一部に基づいて画像を形成するように画像形成処理を制御す制御手順を有し、
上記制御手順は、所定ロック時間を経過しても上記ロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求することを特徴とした分散画像形成方法。
A distributed image forming method in an image forming apparatus ,
Based on the first image formation request for requesting image formation, the other image forming apparatus can store the image forming parameters and the target data to be imaged , which can be accessed by another image forming apparatus. An image is requested so that all or part of the target data is locked in order to suppress duplication output by the apparatus, and an image is formed based on all or part of the locked target data according to the image forming parameter. a control procedure that controls the formation process,
In the case where the lock cannot be performed even after a predetermined lock time has elapsed, the control procedure forcibly releases the lock of all or part of the target data to the storage means, and again or again distributed image forming method characterized by requesting a portion of the lock.
ネットワークを介して、利用者が使用する利用者端末と、画像形成処理に関する情報を保存する少なくとも1つの保存装置と、画像形成処理を実行する少なくとも1つの画像形成装置とが接続される画像形成システムにおいて、該利用者端末からの画像形成要求に応じて該画像形成処理を行う画像形成方法において、
上記利用者端末は、
画像形成を要求する第一画像形成要求を上記画像形成装置に送信する第一画像形成要求送信手順を有し、
上記画像形成装置は、
上記第一画像形成要求に基づいて、他の画像形成装置によってアクセス可能であり、画像形成パラメータと画像形成すべき対象データとを保存する保存手段に対して、該他の画像形成装置による重複出力を抑制するために該対象データの全部又は一部ロックを要求して、上記画像形成パラメータに従って、上記ロックた対象データの全部又は一部に基づいて画像を形成するように画像形成処理を制御す制御手順有し、
上記制御手順は、所定ロック時間を経過しても上記ロックができない場合、上記保存手段に対して上記対象データの全部又は一部のロックを強制的に解除させ、再度、該対象データの全部又は一部のロックを要求することを特徴とする分散型画像形成方法。
An image forming system in which a user terminal used by a user, at least one storage device that stores information relating to image forming processing, and at least one image forming device that executes image forming processing are connected via a network. In the image forming method for performing the image forming process in response to an image forming request from the user terminal,
The above user terminal
A first image formation request transmission procedure for transmitting a first image formation request for requesting image formation to the image forming apparatus;
The image forming apparatus includes:
On the basis of the first image formation request, a duplicate output by the other image forming apparatus is provided to a storage unit that is accessible by another image forming apparatus and stores the image forming parameters and target data to be imaged. requesting a lock on all or part the subject data in order to suppress, in accordance with the image forming parameters, the image forming processing to form an image based on all or part of the target data the lock It has you control control procedure,
In the case where the lock cannot be performed even after a predetermined lock time has elapsed, the control procedure forcibly causes the storage means to release all or a part of the lock of the target data, and again A distributed image forming method characterized by requiring a part of lock .
JP2003054202A 2003-02-28 2003-02-28 Distributed image forming apparatus Expired - Fee Related JP4343554B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003054202A JP4343554B2 (en) 2003-02-28 2003-02-28 Distributed image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003054202A JP4343554B2 (en) 2003-02-28 2003-02-28 Distributed image forming apparatus

Publications (2)

Publication Number Publication Date
JP2004262063A JP2004262063A (en) 2004-09-24
JP4343554B2 true JP4343554B2 (en) 2009-10-14

Family

ID=33118612

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003054202A Expired - Fee Related JP4343554B2 (en) 2003-02-28 2003-02-28 Distributed image forming apparatus

Country Status (1)

Country Link
JP (1) JP4343554B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6728840B2 (en) * 2016-03-24 2020-07-22 大日本印刷株式会社 Image processing server, distribution device and program

Also Published As

Publication number Publication date
JP2004262063A (en) 2004-09-24

Similar Documents

Publication Publication Date Title
US8379257B2 (en) System operating under web environment and method of controlling the same
US8379258B2 (en) System operating under web environment and method of controlling the same
US8902458B2 (en) Information processing apparatus, job processing system, and job processing method
JP5180676B2 (en) Image forming apparatus, control method thereof, and program thereof
JP5328332B2 (en) Image processing system, image processing apparatus, and image processing method
JP3492332B2 (en) Image processing apparatus having bulletin board function, control method therefor, program, and storage medium
JP2002202871A (en) Printing system, print control device, information processing method, control program
JP5979822B2 (en) Management device, method thereof, and program
JP2011041214A (en) Document management system and method for controlling the same and information processing apparatus
JP2011095894A (en) Image processor, and control method concerning proxy printing processing in authentication pull-print system
JP5571911B2 (en) Image processing apparatus, control method thereof, and program
JP2006099300A (en) Device configuration management for devices connected to the network
JP6635157B2 (en) Image forming apparatus, its processing method, and program
JP4343554B2 (en) Distributed image forming apparatus
US20050256869A1 (en) Log information management device, log information generation device, and computer-readable medium storing log information management program therein
JP2007149069A (en) Printing system and access control method thereof, information processing apparatus and control method thereof, and control program
JP5434169B2 (en) Information processing apparatus, information processing method, and program
JP4180401B2 (en) Data storage device
JP4231306B2 (en) Image forming system and image forming method
JP2006277474A (en) Monitoring the progress of printing in distributed printing
JP2010072816A (en) Network print system, server device, image forming apparatus, and program
JP2010157134A (en) Apparatus, method and system for information processing
JP2008182704A (en) System and method for cloning document processing device settings
JP4394406B2 (en) Information processing apparatus, distributed storage system, document processing method, document processing program, and recording medium
JP2020057366A (en) Information processing system, information processing apparatus, server, information processing method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090522

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090630

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090709

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130717

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees