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
JP4231306B2 - Image forming system and image forming method - Google Patents
[go: Go Back, main page]

JP4231306B2 - Image forming system and image forming method - Google Patents

Image forming system and image forming method Download PDF

Info

Publication number
JP4231306B2
JP4231306B2 JP2003054204A JP2003054204A JP4231306B2 JP 4231306 B2 JP4231306 B2 JP 4231306B2 JP 2003054204 A JP2003054204 A JP 2003054204A JP 2003054204 A JP2003054204 A JP 2003054204A JP 4231306 B2 JP4231306 B2 JP 4231306B2
Authority
JP
Japan
Prior art keywords
image forming
request
job
storage
printer
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
JP2003054204A
Other languages
Japanese (ja)
Other versions
JP2004265093A (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 JP2003054204A priority Critical patent/JP4231306B2/en
Publication of JP2004265093A publication Critical patent/JP2004265093A/en
Application granted granted Critical
Publication of JP4231306B2 publication Critical patent/JP4231306B2/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つの画像形成装置に対して印刷パラメータと画像形成される文書データとを送信して画像形成要求を行うのみで、ネットワークを介して接続される複数の画像形成装置によって、該文書データに対する画像形成処理を分散して行わせる画像形成システム及び画像形成方法を提供するものである。
【0002】
【従来の技術】
ネットワークを介してプリンタと接続されるPC(Personal Computer)から印刷を該プリンタに行わせる際、プリンタ側での紙切れ、紙詰まり、トナー切れ等の要因によって印刷が中断されることがあった。そこで、必ず印刷されるようにするために、複数のプリンタと接続され、それらプリンタへの印刷処理を制御するサーバによって、印刷が中断された場合には、他プリンタへ処理を切り替えるようにすることが可能となった。
【0003】
【発明が解決しようとする課題】
しかしながら、上記従来のサーバを備えたプリンタシステムでは、該サーバに接続されるプリンタの設定等を行う利用者による作業を必要としていた。そのため、プリンタを追加又は取り除かれる等によって該サーバへの接続されるプリンタの構成が変更した際には、その都度、利用者によって設定を変更しなければならなかった。
【0004】
そこで、本発明の課題は、1つの画像形成装置に対して印刷パラメータと画像形成される文書データとを送信して画像形成要求を行うのみで、ネットワークを介して接続される複数の画像形成装置によって、該文書データに対する画像形成処理を分散して行わせる画像形成システム及び画像形成方法を提供するものである。
【0005】
【課題を解決するための手段】
上記課題を解決するため、本発明は、請求項1に記載されるように、情報処理装置からの画像形成要求を受信した第一画像形成装置が一以上の第二画像形成装置と保存装置とをネットワークを介して制御して画像形成処理を実行する画像形成システムにおいて、上記情報処理装置が、利用者によってネットワーク上に存在する上記第一画像形成装置と上記一以上の第二画像形成装置を選択させる選択手段と、上記利用者によって選択された上記一以上の第二画像形成装置と上記保存装置とを指定した画像形成要求を生成する要求生成手段と、上記選択手段によって選択された上記第一画像形成装置に上記画像形成要求と文書データとを送信する要求送信手段とを有し、上記画像形成要求を送信した上記第一画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記保存装置に保存させて上記一以上の第二画像形成装置に補助印刷要求を送信させることによって、自身と該補助印刷要求に応じて上記保存装置から保存されている文書データを取得した上記一以上の第二画像形成装置とで該文書データに対して画像形成処理を行わせるように構成される。
【0006】
このような情報処理装置では、利用者が選択した複数の画像形成装置の1つに画像形成要求を送信するのみで、同一の画像形成パラメータと画像形成すべき対象データとに基づいて、複数の画像形成装置が画像形成処理を行うことができる。従って、利用者によって選択された複数の画像形成装置のいずれかに障害が発生したとしても、他の画像形成装置によって画像形成処理を完了させることができる。また、複数の画像形成装置を制御するための専用のサーバコンピュータを備える必要がない。
【0007】
また、本発明は、請求項2に記載されるように、上記要求生成手段は、上記第一画像形成要求に基づいて画像形成パラメータと画像形成すべき対象データを上記要求先装置によって保存する保存装置を上記第一画像形成要求に指定するように構成することができる。
【0008】
また、このような情報処理装置では、保存装置を画像形成要求にて指定するため、画像形成要求を送信した要求先装置に障害が発生したとしても、画像形成パラメータと対象データとが保存装置に保存されるため、他の画像形成装置が該保存装置から画像形成パラメータと対象データとを取得することができるため、画像形成処理を完了することができる。
【0009】
更に、本発明は、請求項に記載されるように、上記ネットワーク上に存在する処理可能な上記第一及び第二の画像形成装置を検索する検索手段を有するように構成することができる。
【0010】
このような情報処理装置では、画像形成要求時にネットワーク上に存在する処理可能な複数の画像形成装置を検索することができるため、確実に画像形成処理が行える画像形成装置に対して一回の画像形成要求を行うのみでよい。
【0011】
また、本発明は、請求項に記載されるように、上記画像形成要求によって成された画像形成処理のイベントの通知を処理する通知処理手段を有するように構成することができる。
【0012】
このような情報処理装置では、イベントの通知を処理することができるため、1回の画像形成要求に対して複数の画像形成装置が処理を行える状態において、実行された画像形成処理でのイベント(例えば、完了、キャンセル等)を知ることができる。
【0013】
更に、本発明は、請求項に記載されるように、上記ネットワークを介して上記複数の画像形成装置との間で共通に通信可能とする装置間インターフェースプロトコルに従って通信制御を行う通信制御手段を有するように構成することができる。また、本発明は、請求項に記載されるように、上記通信制御手段は、パケットデータ転送プロトコルと、情報提供及び情報取得を実現するインターネット通信プロトコルと、メッセージ交換プロトコルと、上記装置間インターフェースプロトコルとによって通信プロトコル層を構成することができる。
【0014】
このような情報処理装置では、装置間インターフェースプロトコル(例えば、BMLinkS)で通信可能であればいかなる画像形成装置に対しても、1回の画像形成要求にて、複数の画像形成装置に対して画像形成処理を分散して行わせることができる。
【0015】
また、上記課題を解決するため、本発明は、請求項に記載されるように、情報処理装置からの画像形成要求を受信した画像形成装置が複数の保存装置をネットワークを介して制御して画像形成処理を実行する画像形成システムにおいて、上記情報処理装置が、利用者によってネットワーク上に存在する上記画像形成処理を行わせる画像形成装置を選択させる選択手段と、画像形成パラメータと画像形成すべき対象データを保存すべき上記複数の保存装置を指定した上記画像形成処理を要求す画像形成要求を生成する要求生成手段と、上記選択手段によって選択された上記画像形成装置に上記画像形成要求と文書データとを送信する要求送信手段とを有し、上画像形成要求を送信した上記画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記複数の保存装置に保存させて、該複数の保存装置の一つ以上を用いて画像形成処理を行わせるように構成することができる。
【0016】
このような情報処理装置では、利用者は、ネットワークを介して、1つの画像形成装置に対して画像形成要求を行うのみで、保存装置にて障害が発生した場合においても、いずれかの保存装置によって画像形成処理が行うことができる。
【0017】
また、上記課題を解決するため、本発明は、請求項に記載されるように、情報処理装置からの画像形成要求を受信した第一画像形成装置が一以上の第二画像形成装置と複数の保存装置とをネットワークを介して制御して画像形成処理を実行する画像形成システムにおいて、上記情報処理装置が、利用者によってネットワーク上に存在する上記第一画像形成装置と上記一以上の第二画像形成装置を選択させる選択手段と、上記利用者によって選択された上記一以上の第二画像形成装置と上記複数の保存装置とを指定した上記画像形成処理を要求す画像形成要求を生成する要求生成手段と、上記選択手段によって選択された上記第一画像形成装置上記画像形成要求と文書データとを送信する要求送信手段とを有し、上画像形成要求を送信した上記第一画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記保存装置に保存させて自身と上記一以上の第二画像形成装置とで該複数の保存装置を用いて画像形成処理を分散させて行わせるように構成される。
【0018】
このような情報処理装置では、利用者は、ネットワークを介して、1つの画像形成装置に対して画像形成要求を行うのみで、画像形成装置又は保存装置にて障害が発生した場合においても、いずれかの画像形成装置又は保存装置によって画像形成処理が行うことができる。
【0019】
上記課題を解決するための手段として、本発明は、コンピュータに行なわせるための上記プログラム及び該プログラムを記録した記録媒体とすることもできる。
【0020】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【0021】
本発明の第一実施例に係る画像形成システムは、図1に示すようなネットワーク構成を成す。図1は、本発明の第一実施例に係る画像形成システムのネットワーク構成例を示す図である。図1において、画像形成システム1001は、印刷処理を行う複数のプリンタ100−1〜100−nと、印刷パラメータ及び文書データを保存するストレージ200と、文書を印刷する利用者が使用するPC(Personal Computer)300とによって構成されるシステムである。複数のプリンタ100−1〜100−nと、ストレージ200と、PC300とは、ネットワーク40を介して接続される。
【0022】
このような画像形成システム1001において、PC300から印刷要求を直接受信するプリンタを主となるプリンタ100−1とし、プリンタ100−1がPC300に代わって印刷要求を送信する補助のプリンタをプリンタ100−2から100−3とする。複数のプリンタ100−1〜100−nは、同等の機能を有するプリンタであって、以下、総称する場合には単にプリンタ100と言う。
【0023】
説明の便宜上、プリンタ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にて印刷処理が実行されて出力される。
【0024】
図1を参照しつつ、画像形成システム1001での処理フローの概要を説明する。
【0025】
主プリンタ100−1は、PC300から直接印刷要求を受信すると(ステップS1)、該印刷要求で指定される出力先として所望するプリンタ100の一覧及びステープルの要否等のフィニッシングの方法を示す印刷パラメータと、印刷処理の対象となる文書データとに基づいてジョブを生成する。その生成したジョブに関するジョブ指示情報には、PC300からの印刷パラメータに基づいて作成された印刷パラメータと、印刷処理のイベント通知に関する通知指示情報とが含まれる。
【0026】
主プリンタ100−1は、そのジョブ指示情報をストレージ200に保存するためのジョブ保存要求をストレージ200に送信する(ステップS2)。ストレージ200は、主プリンタ100−1からジョブ保存要求を受信すると、該ジョブ保存要求で指定されるファイル名でジョブ指示情報及び文書データを保存する。
【0027】
利用者が所望する補助としてのプリンタがプリンタ100−2から100−3であるとする。主プリンタ100−1は、PC300から指示された印刷パラメータに基づく補助プリンタ用の印刷パラメータを設定した補助印刷要求を補助プリンタ100−2から100−3へ順次送信する(ステップS3−1及びS3−2)。
【0028】
そして、主プリンタ100−1は、生成したジョブに従って印刷処理を実行する。同様に、補助プリンタ100−2及び100−3は、夫々、ストレージ200へジョブ取得要求を送信することによってジョブ指示情報の全部又は一部と文書データとを取得し(ステップS4−1及びS4−2)、印刷処理を実行する。
【0029】
このような画像形成システム1001では、PC300から印刷要求を受信したプリンタ100−1が自立的に主プリンタとなって、利用者が所望するプリンタ100−2及び100−3を補助プリンタとして制御するため、複数のプリンタ100−1から100−nを制御するための専用のサーバを設ける必要がない。また、主プリンタ100−1及び補助プリンタ100−2及び100−3からのジョブ取得要求に応じて、ストレージ200は、主プリンタ100−1及び補助プリンタ100−2及び100−3へジョブ指示情報及び文書データを提供することができるため、プリンタ100−1から100−3のいずれかのプリンタに障害が発生したとしても、他のプリンタによって印刷処理が行われるため、利用者は、必ず、指定したプリンタ100−1から100−3のいずれかで印刷された文書を取得することができる。従って、プリンタの障害に影響されにくい耐障害性に優れたシステムを実現することができる。
【0030】
本発明の第一実施例に係る画像形成システム1001に適用されるPC300は、例えば、図2に示すようなハードウェア構成を成す。図2は、本発明の第一実施例に係るPCのハードウェア構成を示すブロック図である。
【0031】
図2において、PC300は、コンピュータによって制御され印刷処理を実行する装置であって、CPU(中央処理装置)51と、メモリユニット52と、表示ユニット53と、入力ユニット54と、通信ユニット55と、記憶装置56と、ドライバ57とで構成され、システムバスB3に接続される。
【0032】
CPU51は、メモリユニット52に格納されたプログラムに従ってPC300を制御する。メモリユニット52は、RAM及びROM等にて構成され、CPU51にて実行されるプログラム、CPU51での処理に必要なデータ、CPU51での処理にて得られたデータ等を格納する。また、メモリユニット52の一部の領域が、CPU51での処理に利用されるワークエリアとして割り付けられている。
【0033】
表示ユニット53は、CPU51の制御のもとに必要な各種情報を表示する。入力ユニット54は、マウス、キーボード等を有し、利用者がPC300が処理を行なうための必要な各種情報を入力するために用いられる。通信ユニット55は、PC300が複数のプリンタ100とストレージ200とに例えばLAN(Local Area Network)等で接続される場合に、それら複数のプリンタ100又はストレージ200との間で通信制御をするための装置である。記憶装置56は、例えば、ハードディスクユニットにて構成され、各種処理を実行するプログラム、文書データ等を格納する。
【0034】
PC300によって行われる印刷処理を実現するプログラムは、例えば、CD−ROM等の記憶媒体58によってPC300に提供される。即ち、プログラムが保存された記憶媒体58がドライバ57にセットされると、ドライバ57が記憶媒体58からプログラムを読み出し、その読み出されたプログラムがシステムバスB3を介して記憶装置56にインストールされる。そして、プログラムが起動されると、記憶装置56にインストールされたプログラムに従ってCPU51がその処理を開始する。尚、プログラムを格納する媒体としてCD−ROMに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。本発明に係る印刷処理を実現するプログラムは、通信ユニット55によってネットワーク40を介してダウンロードし、記憶装置56にインストールするようにしても良い。
【0035】
また、本発明の第一実施例に係る画像形成システム1001に適用される複数のプリンタ100は、PC300からの印刷要求に応じて、ジョブ保存要求、補助印刷要求、ジョブ取得要求等の処理を実行可能なコンピュータである。更に、ストレージ200は、ジョブ指示情報及び文書データを保存するハードディスクを有するコンピュータであって、プリンタ100からのジョブ保存要求及びジョブ取得要求に応じた処理を実行する。
【0036】
図3は、本発明の第一実施例に係るPCの機能構成例を示すブロック図である。図3において、PC300は、主に、ネットワーク40上に存在する印刷可能なプリンタを検索するサービス検索部301と、XML(eXtensible Markup Language)によって印刷要求を生成して送信する印刷要求部302と、受信した通知をXMLに従って処理する通知処理部303と、文書データを生成し印刷処理を要求するアプリケーション304と、記憶媒体58から本発明に係るプログラムをインストールするインストーラ309と、ネットワーク40を介して複数のプリンタ100との通信を制御するネットワーク制御部210とを有する。
【0037】
サービス検索部301は、印刷要求部302からのサービス検索要求に応じて、ネットワーク制御部310によって、BMLinkSに従って、ネットワーク40上に存在するサービス可能(印刷可能)な複数のプリンタ100を検索するディスカバリ(Discovery)を実行する。又は、サービス検索部301は、PC300の起動時に、ディスカバリを実行してサービス可能な画像形成装置を検索する。検索結果は、例えば、プリントサービス一覧として記憶装置57の所定記憶領域に格納され、印刷要求部302へサービス検索要求に対する検索結果として通知する。
【0038】
印刷要求部302は、アプリケーション304からの印刷の要求に応じて、XMLによって印刷要求を生成し、利用者が所望するプリンタ100に対してBMLinkSに従って印刷要求を送信する。
【0039】
通知処理部303は、受信した通知をXMLによって処理し、印刷要求部302が解釈可能なデータ形式に変換して印刷要求部302に送信する。
【0040】
アプリケーション304は、所定データ形式にてデータを作成、編集、削除等を実現するアプリケーションである。アプリケーション304は、例えば、表計算用アプリケーション、作図用アプリケーション等であって、印刷処理を要求するアプリケーションであれば良い。
【0041】
ネットワーク制御部310は、更に、TCP/IP(Transmission Control Protocol/Internet Protocol)311と、HTTP312と、SOAP(Simple Object Access Protocol)313と、BMLinkS314とで構成される。
【0042】
TCP/IP311は、ネットワーク40を介したデータ通信を制御するネットワーク通信プロトコルである。HTTP312は、インターネット上の情報提供及び情報取得を実現するインターネット通信プロトコルである。SOAP313は、例えばXMLに従って記述されたメッセージの交換を制御するメッセージ交換プロトコルである。BMLinkS314は、ネットワーク40上に存在するプリンタ、スキャナ、ストレージ、FAX送信及び受信の少なくともいずれか1つの機能を有する1つ以上のOA機器に対して、ジョブ制御手順、ステータス参照等に関するデータ通信を制御するOA機器I/Fプロトコルである。
【0043】
プリンタ100及びストレージ200は、ネットワーク制御部310の構成と同様の構成を有し、ネットワーク40を介して、BMLinkSに従ってPC300とで通信を行う。
【0044】
次に、PC300での処理について説明する。図4は、本発明の第一実施例に係るPCでの印刷処理例を説明するためのフローチャート図である。図4において、PC300において、サービス検索部301は、ディスカバリによってネットワーク40上で印刷可能なプリンタを検索して、利用者が所望する複数のプリンタを取得する(ステップS301)。
【0045】
この場合、利用者がアプリケーション304から印刷を指示すると、印刷要求部302が実行さる。印刷要求部302による指示に応じて、サービス検索部301は、ディスカバリによってネットワーク40上で印刷可能なプリンタを検索して、例えば、プリンタ100−1から100−nが印刷可能なプリンタとして応答を受信する。そして、利用者は、印刷要求部302によって応答のあったプリンタ100の一覧が表示ユニット53に表示されると、例えば、その一覧から所望するプリンタ100−1、100−2及び100−3を選択する。利用者がプリンタ100−1、100−2及び100−3を選択する際、予め、主プリンタを指定するようにしても良い。
【0046】
続けて、印刷要求部302は、利用者から所望する印刷パラメータを取得する(ステップS302)。例えば、印刷要求部302は、表示ユニット53に印刷パラメータを設定する画面を表示して、利用者によって設定された印刷パラメータを取得する。そして、印刷要求部302は、利用者が所望する複数のプリンタのURIと、プリンタによって生成されるジョブ指示情報と文書データとを保存するストレージのURIと、利用者から取得した印刷パラメータとに従って印刷要求を生成(ステップS303)する。
【0047】
そして、その印刷要求と文書データとを利用者が選択したプリンタ100−1、100−2及び100−3の1つに送信する(ステップS304)。例えば、利用者によって主プリンタとして指定されたプリンタ100−1に印刷要求及び文書データを送信する。そして、PC300による印刷処理を終了する(ステップS305)。
【0048】
本発明の第一実施例に係る画像形成システム1001に適用されるプリンタ100は、例えば、図5に示すようなハードウェア構成を成す。図5は、本発明の第一実施例に係るプリンタのハードウェア構成を示すブロック図である。
【0049】
図5において、プリンタ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に接続される。
【0050】
CPU11は、ROM12に格納されたプログラムに従ってプリンタ100を制御する。RAM13には、例えば、各インターフェース21から26に接続される資源に領域が割り当てられる。不揮発性RAM14には、プリンタ100の電源がオフになるまでCPU11による処理で必要な情報が格納される。リアルタイムクロック15は、現時刻を計ると共に、処理を同期させる場合にCPU11によって使用される。
【0051】
イーサネット(登録商標)I/F21には、10BASE−T又は100BASE−TX等のイーサネット(登録商標)用インターフェースケーブルが接続される。USB22には、USB用インターフェースケーブルが接続される。IEEE1284 23には、IEEE1284用インターフェースケーブルが接続される。
【0052】
ハードディスクI/F24には、ハードディスク34が接続され、ネットワークを介して送信された印刷される文書の文書データ、又は、印刷処理後の画像データがハードディスクI/F24を介してハードディスク34に格納される。ビデオI/F25には、プリンタエンジン35が接続され、画像データがビデオI/F25を介してプリンタエンジン25に送信され、該画像データに基づいて用紙等の印刷可能な媒体に画像が形成される。RS−232C I/F26には、オペレーションパネル36が接続され、ユーザへの情報の表示及びユーザから入力情報又は設定情報の取得が行われる。
【0053】
また、本発明の第一実施例に係る画像形成システム1001に適用されるストレージ200は、ジョブ指示情報及び文書データを保存するハードディスクを有するコンピュータであって、プリンタ100からのジョブ保存要求及びジョブ取得要求に応じた処理を実行する。更に、PC300は、利用者によって使用されるパーソナルコンピュータであって、プリンタ100への印刷要求を行う。
【0054】
図6は、本発明の第一実施例に係るプリンタの機能構成例を示すブロック図である。図6において、プリンタ100は、主に、印刷要求及び補助印刷要求を受付けるジョブ受付部101と、印刷処理を実行するためにジョブを発行するジョブ発行部102と、ネットワーク40上に存在する印刷可能なプリンタを検索するサービス検索部103と、ステータスを通知する通知発行部104と、ジョブに関するジョブ指示情報等をXML(eXtensible Markup Language)によって解析及び作成すると共に、処理全体を制御する制御部105と、図5に示すプリンタエンジン35を制御して印刷処理を実行する印刷処理部106と、ジョブ又はページのロック時間を制御するロック時間制御部107と、ネットワーク40を介してストレージ200とPC300とで夫々の通信を制御するネットワーク制御部110とを有する。
【0055】
ジョブ受付部101は、PC300からの印刷要求、他プリンタからの補助印刷要求、及び、ストレージ200からのジョブに関するジョブ指示情報を受付け、ジョブを受付けたことを制御部105に通知する。
【0056】
ジョブ発行部102は、印刷要求に応じてジョブを生成し、ストレージ200に対しては、ジョブ保存要求を送信し、利用者が所望する他プリンタに対しては、補助印刷要求を送信することによってジョブを発行する。その後、ストレージ200に対してジョブ取得要求を送信する。一方、補助印刷要求に対しては、ジョブ発行部102は、印刷要求の受信時と同様にジョブを生成し、該補助印刷要求で指定されるストレージ200に対してジョブ取得要求を送信する。
【0057】
サービス検索部103は、制御部105からの指示に応じて、ネットワーク40上に存在する印刷処理可能な他プリンタを検索するディスカバリ機能を実行し、プリンタ一覧を生成して、制御部105へ通知する。
【0058】
制御部105は、印刷要求及び補助印刷要求に設定されるジョブ指示情報等をXML(eXtensible Markup Language)によって解析し、解析結果に基づいて、ジョブ発行部102を制御し、ジョブ発行部102によって生成されたジョブに従って印刷処理部106を制御し印刷処理を実行する。また、補助プリンタを検索する際には、サービス検索部103を制御して印刷処理可能なプリンタの一覧を取得する。
【0059】
通知発行部104は、制御部105から通知されるステータスに基づいて、ネットワーク制御部110によってHTTPプロトコルでクライアントPC200に通知する。
【0060】
印刷処理部106は、制御部105からの指示に応じて印刷処理を実行し、所定の媒体に画像を形成して出力する。
【0061】
ロック時間制御部107は、ストレージ200に保存された印刷処理対象となるジョブ又はページがロックされている場合に、ロック時間経過後に再度ロックを試みる制御を行う。
【0062】
ネットワーク制御部110は、更に、TCP/IP(Transmission Control Protocol/Internet Protocol)111と、HTTP112と、SOAP(Simple Object Access Protocol)113と、BMLinkS114とで構成される。
【0063】
TCP/IP111は、ネットワーク40を介したデータ通信を制御するネットワーク通信プロトコルである。HTTP112は、インターネット上の情報提供及び情報取得を実現するインターネット通信プロトコルである。SOAP113は、例えばXMLに従って記述されたメッセージの交換を制御するメッセージ交換プロトコルである。BMLinkS114は、ネットワーク40上に存在するプリンタ、スキャナ、ストレージ、FAX送信及び受信の少なくともいずれか1つの機能を有する1つ以上のOA機器に対して、ジョブ制御手順、ステータス参照等に関するデータ通信を制御するOA機器I/Fプロトコルである。
【0064】
ストレージ200及びPC300は、ネットワーク制御部110の構成と同様の構成を有し、ネットワーク40を介して、BMLinkSに従ってプリンタ100とで通信を行う。
【0065】
次に、プリンタ100での処理を制御する制御部105にて行われる処理について説明する。先ず、PC300から印刷要求を直接受信した場合の処理について図7及び図8で説明する。図7及び図7は、本発明の第一実施例に係るプリンタの制御部の印刷要求を受信した場合の処理例を説明するためのフローチャート図である。図7において、制御部105は、所定時間毎にジョブを受信したか否かを判断する(ステップS11)。ジョブ(PC300からの印刷要求)を受信せず、ロック時間制御部107からの通知を受信した場合、後述されるロック結果処理を実行する(ステップS19−2)。一方、ジョブを受信した場合、つまり、PC300から印刷要求を受信した場合、印刷要求の内容を取得する(ステップS12)。
【0066】
印刷要求の内容に基づいて、部数単位の印刷か、又は、ページ単位の印刷かを判断する(ステップS13)。部単位の印刷であると判断した場合、制御部105は、ジョブ発行部102にジョブを生成させ、そのジョブのロックを示すジョブ指示情報をストレージ200に保存するためのジョブ保存要求をストレージ200に送信する(ステップS14)。印刷要求に直接的に部単位の印刷が指定されていないくても、例えば、印刷要求にステープルの指定がある場合、部単位の印刷であると判断される。そして、ジョブ発行部102は、PC300から受信した印刷要求にて指定される補助としてのプリンタ全てに対して補助印刷要求を送信する(ステップS15)。
【0067】
制御部105は、印刷処理部106を制御してPC300から受信した印刷すべき文書データの全ページを印刷する(ステップS16)。印刷処理部106による全ページの印刷が終了すると、制御部105は、全ページの削除をストレージ200に要求するページ削除要求を送信し(ステップS17)、続けて、ジョブの削除をストレージ200に要求するジョブ削除要求を送信して(ステップS18)、印刷要求を受信した場合の処理を終了する。
【0068】
一方、ステップS13にて、制御部105がページ単位の印刷であると判断した場合、制御部105は、ページXに1を設定し(ステップS21)、ジョブ発行部102にジョブを生成させ、そのジョブのロックを示すジョブ指示情報をストレージ200に保存するためのジョブ保存要求をストレージ200に送信する(ステップS22)。そして、ジョブ発行部102は、PC300から受信した印刷要求にて指定される補助としてのプリンタ全てに対して補助印刷要求を送信する(ステップS23)。
【0069】
制御部105は、印刷処理部106を制御してPC300から受信した印刷すべき文書データのページXを印刷する(ステップS24)。ページXの印刷が終了すると、制御部105は、ページXの削除をストレージ200に要求するページ削除要求を送信する(ステップS25)。
【0070】
そして、制御部105は、ページがまだあるか否かを判断する(ステップS26)。ページがまだある場合、制御部105は、ページXに1を加えて(ステップS27)、ページXのロックをストレージ200に要求する(ステップS28)。ページXをロックすることによって、他プリンタから重複して出力されないようにすることができる。
【0071】
そして、制御部105は、ストレージ200からの応答がロックできたことを示しているか否かを判断する(ステップS29)。ページXのロックができた場合、制御部105は、ステップS24へ戻り、印刷処理部106にページXの印刷を行わせ、上記同様の処理を行う。
【0072】
一方、ステップS29にて制御部105がページXのロックができなかったと判断した場合、ページXが削除されているか否かを判断する(ステップS30)。ページXが削除されて存在しない場合、ステップS26へ戻り次のページがあるか否かを判断する。一方、ページXがある場合、つまり、補助プリンタ100−2又は100−3のいずれかがページXをロックしている場合、ロック時間制御部107に通知し(ステップS31)、ステップS26へ戻り次のページがあるか否かを判断する。
【0073】
このようにページXがロックできなかった場合には、ステップS26に戻ることによって、ロックできるページから先に印刷処理を行うことができる。また、ステップS31にて、ロック時間をストレージ200から取得しロック時間制御部107に通知するようにしても良い。ロック時間の取得は、ストレージ200からの応答に設定されるようにすれば良い。又は、制御部105がロック時間の問い合わせをストレージ200に対して行うようにしても良い。また、ロック時間とは、他プリンタがロックした時刻とロックが満了となるまでの間隔とが示されれば良い。又は、他プリンタと同期した時間を持つことができる場合には、ロック時間がロックが満了となる時刻を示しても良い。
【0074】
ステップS26にて制御部105がページがないと判断した場合、ロック時間制御部107によるロック時間制御処理が終了しているか否かを判断する(ステップS32)。ロック時間制御処理が終了していない場合、終了するまで待ち状態となる。ロック時間制御処理が終了後、制御部105は、ストレージ200に対してジョブ削除要求を送信し、PC300から直接印刷要求を受信した場合の処理を終了する。
【0075】
次に、他プリンタ100から補助印刷要求を受信した場合の制御部105での処理について図9及び図10で説明する。図9及び図10は、本発明の第一実施例に係るプリンタの制御部の補助印刷要求を受信した場合の処理例を説明するためのフローチャート図である。図9において、プリンタ100−2がプリンタ100−1から補助印刷要求を受信し補助プリンタとして機能する。制御部105は、ジョブを受信したか否かを判断する(ステップS41)。ジョブ(他プリンタ100からの補助印刷要求)を受信せず、ロック時間制御部107からの通知を受信した場合、後述されるロック結果処理を実行して(ステップS42−2)、ステップS51へ進む。一方、ジョブを受信した場合、つまり、他プリンタ100から補助印刷要求を受信した場合、補助印刷要求の内容を取得する(ステップS43)。
【0076】
制御部105は、ページXに1を設定する(ステップS44)。続けて、制御部105は、補助印刷要求の内容に基づいて、部数単位の印刷か、又は、ページ単位の印刷かを判断する(ステップS45)。ページ単位の印刷でる場合、制御部105は、ページXのロック及びページXのダウンロードをストレージ200に要求する(ステップS46)。
【0077】
そして、制御部105は、ストレージ200からの応答がロックできたことを示しているか否かを判断する(ステップS47)。ページXのロックができなかった場合、ページXが削除されているか否かを判断する(ステップS48)。ページXが削除されて存在しない場合、ステップS53へ進み、次のページがあるか否かを判断する。
【0078】
一方、ページXがある場合、主プリンタ100−1又は補助プリンタ100−3のいずれかがページXをロックしている場合、ロック時間制御部107に通知し(ステップS49)、ステップS53へ進み、次のページがあるか否かを判断する。このようにページXがロックできなかった場合には、ステップS53へ進むことによって、ロックできるページから先に印刷処理を行うことができる。
【0079】
ステップS49にて、ロック時間をストレージ200から取得しロック時間制御部107に通知するようにしても良い。ロック時間の取得は、ストレージ200からの応答に設定されるようにすれば良い。又は、制御部105がロック時間の問い合わせをストレージ200に対して行うようにしても良い。また、ロック時間とは、他プリンタがロックした時刻とロックが満了となるまでの間隔とが示されれば良い。又は、他プリンタと同期した時間を持つことができる場合には、ロック時間がロックが満了となる時刻を示しても良い。
【0080】
一方、ステップS47にて制御部105がページXのロックができたと判断した場合、ページXがダウンロードされる(ステップS50)。ページXを取得すると、制御部105は、印刷処理部106を制御してページXの印刷処理を行う。印刷処理部106によるページXの印刷が終了すると、制御部105は、ページXの削除をストレージ200に要求するページ削除要求を送信する(ステップS52)。
【0081】
そして、制御部105は、文書データのページがまだあるか否かを判断する(ステップS53)。ページがまだある場合、制御部105は、ページXに1を加えて(ステップS54)、部数単位又はページ単位の印刷であるかを判断する(ステップS55)。部単位の印刷である場合、制御部105は、ページXのダウンロードをストレージ200に要求して、ステップS51へ戻る。一方、ページ単位の印刷である場合、ステップS46へ戻る。部数単位の印刷である場合、ページXのダウンロードをストレージに要求し(ステップS56)、ステップS50へ戻る。
【0082】
一方、ステップS53にて制御部105がページがないと判断すると、ロック時間制御処理が終了したか否かを判断する(ステップS57)。ロック時間制御処理が終了していない場合、終了するまで待ち状態となる。ロック時間制御処理が終了している場合、制御部105は、ストレージ200に対してジョブを削除するジョブ削除要求を送信して(ステップS58)、補助印刷要求の処理を終了する。
【0083】
一方、ステップS45にて部単位の印刷であると判断した場合、制御部105は、ジョブのロック及びページXのダウンロードをストレージ200に要求する(ステップS61)。補助印刷要求に直接的に部単位の印刷が指定されていないくても、例えば、印刷要求にステープルの指定がある場合、部単位の印刷であると判断される。
【0084】
そして、制御部105は、ストレージ200からの応答がロックできたことを示しているか否かを判断する(ステップS62)。ジョブのロックができなかった場合、ジョブが削除されているか否かを判断する(ステップS63)。ジョブが削除されて存在しない場合、補助印刷要求の処理を終了する。一方、ジョブがある場合、ロック時間制御部に通知し(ステップS64)、一旦、補助印刷要求の処理を終了する。一方、ステップS62にて制御部105がロックできたと判断した場合、ステップS50へ戻り、上記同様の処理を行う。
【0085】
ステップS64にて、ロック時間をストレージ200から取得しロック時間制御部107に通知するようにしても良い。ロック時間の取得は、ストレージ200からの応答に設定されるようにすれば良い。又は、制御部105がロック時間の問い合わせをストレージ200に対して行うようにしても良い。また、ロック時間とは、他プリンタがロックした時刻とロックが満了となるまでの間隔とが示されれば良い。又は、他プリンタと同期した時間を持つことができる場合には、ロック時間がロックが満了となる時刻を示しても良い。
【0086】
次に、ロック時間制御部107にて実行されるロック時間制御処理について図11で説明する。図11は、ロック時間制御処理を説明するためのフローチャート図である。図11において、ロック時間制御部107は、制御部105からの通知に応じて、ロック時間が経過する待ち(ステップS81)、ロック時間の経過後、ジョブの種類を判断する(ステップS82)。ジョブの種類がPC300から直接送信された印刷要求である場合、ページXのロックをストレージ200に要求し(ステップS83)、制御部105へロック結果を通知する(ステップS84)。
【0087】
ステップS82にて、ロック時間制御部107が補助印刷要求であると判断した場合、ジョブのロックであったか否かを判断する(ステップS85)。ページのロックであった場合、ページXのロック及びダウンロードをストレージ200に要求し(ステップS86)、制御部105へロック結果を通知する(ステップS84)。
【0088】
ステップS85にて、ジョブのロックであると判断した場合、ジョブのロック及びページXのダウンロードをストレージ200に要求し(ステップS87)、制御部105へロック結果を通知する(ステップS84)。
【0089】
このように、ロック時間の経過に再び、ストレージ200にロック又はダウンロードを要求し、その結果を制御部105に通知することによって、他プリンタ100での処理の状態に応じた処理を図7のステップ19−2及び図9のステップS42−2におけるロック結果処理にて行うことができる。
【0090】
図12は、ロック結果処理を説明するためのフローチャート図である。図12において、制御部105は、ロック時間制御処理部からロック結果を受信し(ステップS91)、ジョブの種類を判断する(ステップS92)。ジョブが印刷要求である場合、ロック結果の内容を判断する(ステップS93−2)。ロック結果がページXが削除されていることを示す場合、つまり、既に、他プリンタ100によってページXが印刷されたことを示している場合、図8のステップS26へ進み、上記同様の処理を行う。
【0091】
一方、ロックできたことを示す場合、つまり、ストレージ200がロック時間を経過してもロックされているため、他プリンタ100にて印刷を行えない状態であると判断し、ストレージ200がページXのロックを強制的に解除し、ロックできる状態になったことを示す場合、図8のステップS29へ進み、上記同様の処理を行う。
【0092】
ステップS92にて制御部105がジョブが補助印刷要求であると判断すると、更に、ジョブをロックしたのか或いはページXをロックしたのかを判断する(ステップS96)。ページXをロックしたと判断した場合、ロック結果の内容を判断する(ステップS97−2)。ロック結果がページXが削除されていることを示す場合、つまり、既に、他プリンタ100によってページXが印刷されたことを示している場合、図9のステップS53へ進み、上記同様の処理を行う。
【0093】
一方、ロックできたことを示す場合、つまり、ストレージ200がロック時間を経過してもロックされているため、他プリンタ100にて印刷を行えない状態であると判断し、ストレージ200がページXのロックを強制的に解除し、ロックできる状態になったことを示す場合、図9のステップS50へ進み、上記同様の処理を行う。
【0094】
ステップS96にて制御部105がジョブをロックしたと判断した場合、ロック結果の内容を判断する(ステップS100−2)。ロック結果がジョブが削除されていることを示す場合、つまり、既に、他プリンタ100によって文書データ全体の印刷が終了したことを示している場合、補助印刷要求による処理を終了する。
【0095】
ロックできたことを示す場合、つまり、ストレージ200がロック時間を経過してもロックされているため、他プリンタ100にて印刷を行えない状態であると判断し、ストレージ200がページXのロックを強制的に解除し、ロックできる状態になったことを示す場合、図9のステップS50へ進み、上記同様の処理を行う。
【0096】
図7から図12に示される処理によると、プリンタ100は、主プリンタの場合、部数単位又はページ単位で示される処理単位毎にストレージ200に対してロックをかけて、PC300から受信した文書データに基づいて、ストレージ200から取得することなく印刷処理を実行する。従って、他プリンタ100によって部数単位又はページ単位で同一の文書又はページを重複して印刷することがない。また、ページ単位での処理の場合、ロックされていないページを検索し、そのページを優先して印刷することができる。更に、他のプリンタ100によってページがロックされ、ロック時間を経過してもロックされたままである場合、そのロック時間経過後に再度ロックを試みて、自プリンタ100で印刷することができる。
【0097】
また、補助プリンタとしてのプリンタ100は、ロックとダウンロードの要求をストレージ200に行うことによって、他プリンタ100によって部数単位又はページ単位で同一の文書又はページを重複して印刷することがない。また、ページ単位での処理の場合、ロックされていないページを検索し、そのページを優先して印刷することができる。更に、他のプリンタ100によってページがロックされ、ロック時間を経過してもロックされたままである場合、そのロック時間経過後に再度ロックを試みて、自プリンタ100で印刷することができる。
【0098】
尚、図7から図12に示される処理を全てのプリンタ100−1〜100−nにて行えるように構成することができる。
【0099】
本発明の第一実施例に係る画像形成システム1001に適用されるストレージ200は、例えば、図13に示すようなハードウェア構成を成す。図13は、本発明の第一実施例に係るストレージのハードウェア構成を示すブロック図である。
【0100】
図13において、ストレージ200は、コンピュータによって制御されデータ管理を行う装置であって、CPU(中央処理装置)41と、メモリユニット42と、表示ユニット43と、入力ユニット44と、通信ユニット45と、記憶装置46とで構成され、システムバスB2に接続される。
【0101】
CPU41は、メモリユニット42に格納されたプログラムに従ってストレージ200を制御する。メモリユニット42は、RAM及びROM等にて構成され、CPU41にて実行されるプログラム、CPU41での処理に必要なデータ、CPU41での処理にて得られたデータ等を格納する。また、メモリユニット42の一部の領域が、CPU41での処理に利用されるワークエリアとして割り付けられている。
【0102】
表示ユニット43は、CPU41の制御のもとに必要な各種情報を表示する。通信ユニット45は、ストレージ200がコンピュータとして機能し、複数のプリンタ100とPC300と例えばLAN(Local Area Network)等で接続される場合に、それら複数のプリンタ100とPC300との間で通信制御をするための装置である。記憶装置46は、例えば、ハードディスクユニットにて構成され、各プリンタ100からのジョブ保存要求に応じてジョブ指示情報及び文書データとを保存する。
【0103】
ストレージ200を制御するプログラムは、予め、記憶装置46にインストールされている。但し、必要に応じて、通信ユニット45によってネットワーク40を介して、制御プログラムをダウンロードするようにしても良い。
【0104】
また、本発明の第一実施例に係る画像形成システム1001に適用される複数のプリンタ100は、PC300からの印刷要求に応じて、ジョブ保存要求、補助印刷要求、ジョブ取得要求等の処理を実行可能なコンピュータである。更に、PC300は、利用者によって使用されるパーソナルコンピュータであって、プリンタ100への印刷要求を行う。
【0105】
図14は、本発明の第一実施例に係るストレージの機能構成例を示すブロック図である。図14において、ストレージ200は、主に、ジョブ保存要求及びジョブ取得要求を受付ける要求処理部201と、要求処理部201で受付けた要求に応じた応答を処理する応答処理部203と、要求処理部201から通知される要求内容及び要求に応じた処理結果をXML(eXtensible Markup Language)によって解析及び作成すると共に、図13に示す記憶装置46を制御するジョブ管理部205と、記憶装置46で管理されるジョブのロック時間を制御するロック時間制御部207と、ネットワーク40を介して複数のプリンタ100との通信を制御するネットワーク制御部210とを有する。
【0106】
要求処理部201は、プリンタ100からのジョブ保存要求及びジョブ取得要求を受付け、要求を受付けたことをジョブ管理部205に通知する。応答処理部203は、ジョブ管理部205からジョブ保存要求又はジョブ取得要求に応じた処理結果が通知されると、その処理結果を示す応答を生成し、ネットワーク制御部210によって要求元へ送信する。
【0107】
ジョブ管理部205は、ジョブ保存要求に応じて、記憶装置46にファイルを生成し、そのファイルへジョブ指示情報及び文書データを格納する。文書データは、ページ単位で格納する。また、ジョブ取得要求に応じて、記憶装置46からジョブ取得要求によって指定されるページを取り出す。
【0108】
ロック時間制御部207は、所定時間毎に、記憶装置46にて管理されるジョブ指示情報に設定されたジョブ毎又はページ毎のロック時間を監視し、所定時間が経過している場合、ロックを解除する制御を行う。この制御によって、ジョブ又はページをロックしたプリンタ100に障害が発生して印刷処理が完了しなかった場合においても、他のプリンタ100によって印刷処理が行いえるようになる。
【0109】
ネットワーク制御部210は、更に、TCP/IP(Transmission Control Protocol/Internet Protocol)211と、HTTP212と、SOAP(Simple Object Access Protocol)213と、BMLinkS214とで構成される。
【0110】
TCP/IP211は、ネットワーク40を介したデータ通信を制御するネットワーク通信プロトコルである。HTTP212は、インターネット上の情報提供及び情報取得を実現するインターネット通信プロトコルである。SOAP213は、例えばXMLに従って記述されたメッセージの交換を制御するメッセージ交換プロトコルである。BMLinkS214は、ネットワーク40上に存在するプリンタ、スキャナ、ストレージ、FAX送信及び受信の少なくともいずれか1つの機能を有する1つ以上のOA機器に対して、ジョブ制御手順、ステータス参照等に関するデータ通信を制御するOA機器I/Fプロトコルである。
【0111】
プリンタ100及びPC300は、ネットワーク制御部210の構成と同様の構成を有し、ネットワーク40を介して、BMLinkSに従ってストレージ200とで通信を行う。
【0112】
次に、ストレージ200での処理について図15及び図16で説明する。図15は、本発明の第一実施例に係るストレージのジョブ管理部の処理例を説明するためのフローチャート図である。図15において、ストレージ200のジョブ管理部205は、要求処理部201から要求を受信すると(ステップS271)、その要求がジョブ保存要求か否かを判断する(ステップS272)。ジョブ保存要求である場合、記憶装置46に空きファイルを生成して、その空きファイルにジョブ保存要求に設定されるジョブ指示情報と文書データとを保存する(ステップS273)。この際、ジョブ保存要求で指定されるジョブ又はページをロックする。
【0113】
ステップS272にてジョブ保存要求でないと判断すると、ジョブ取得要求か否かを判断する(ステップS274)。ジョブ取得要求である場合、ステップS281からステップS285までを実行する。一方、ジョブ取得要求でない場合、ページ削除要求か否かを判断する(ステップS275)。ページ削除要求の場合、ページ削除要求にて指定されるジョブのページを記憶装置46から削除する(ステップS276)。
【0114】
ステップS275にてページ削除要求でないと判断すると、ジョブ削除要求か否かを判断する(ステップS277)。ジョブ削除要求である場合、ジョブ削除要求にて指定されるジョブを記憶装置46から削除し(ステップS278)、この処理を終了する。一方、ジョブ削除要求でない場合、この処理を終了する。
【0115】
ステップS274にてジョブ取得要求であると判断された場合について説明する。ジョブ管理部205は、ジョブ取得要求にて指定されるジョブのページをロックする(ステップS281)。ジョブ取得要求にてロック時間が指定されている場合は、そのロック時間をもってロックし、ロック時間が指定されていない場合は、所定ロック時間をもってロックするようにすれば良い。
【0116】
ジョブ管理部205は、ページをロックすることができたか否かを判断する(ステップS282)。既に、ページがロックされているためロックできなかった場合、ページがロックできなかったことを、ジョブ取得要求を行ったプリンタ100に応答処理部203によって通知する(ステップS283)。一方、ページをロックすることができた場合、ページロック完了をジョブ取得要求を行ったプリンタ100に応答処理部203によって通知し(ステップS284)、ロックしたページをプリンタ100へ送信(アップロード)する(ステップS285)。
【0117】
また、図15に示す処理において、ジョブ取得要求にてジョブが指定される場合、ジョブをロックするようにしても良い。
【0118】
次に、ストレージ200のロック時間制御部207によるロック時間の制御処理を説明する。図16は、本発明の第一実施例に係るストレージのロック時間制御部によるロック時間の制御処理例を説明するためのフローチャート図である。図16において、ロック時間制御部207は、ジョブを1つ記憶装置46から読み出し(ステップS251)、ジョブがロックされているか否かを判断する(ステップS252)。ジョブがロックされていない場合、ページ毎のロック時間を制御するため、ステップS257からステップS262までを実行する。
【0119】
ステップS252において、ジョブがロックされている場合、所定ロック時間が経過しているか否かを判断する(ステップS253)。所定ロック時間が経過していない場合、ステップS255へ進む。一方、所定ロック時間が経過している場合、ジョブjのロックを解除する(ステップS254)。
【0120】
ロック時間制御部207は、ジョブがまだあるか否かを判断し(ステップS255)、ジョブがまだある場合、次のジョブを記憶装置46から取り出してステップS252へ戻り、上記同様の処理を行う。
【0121】
ステップS252において、ジョブがロックされていない場合、ページpに1を設定し(ステップS257)、ページpがロックされているか否かを判断する(ステップS258)。ロックされていない場合、ステップS261へ進む。一方、ロックされている場合、所定ロック時間が経過しているか否かを判断する(ステップS259)。所定ロック時間が経過していない場合、ステップS261へ進む。所定ロック時間が経過している場合、ページpのロックを解除する(ステップS260)。
【0122】
ロック時間制御部207は、ページがまだあるか否かを判断し(ステップS261)、ページがまだある場合、ページpに1を追加してステップS258へ戻り、次のページpについて上記同様の処理を行う。一方、ページがない場合、ステップS255に戻り、次のジョブがあるか否かを判断する。ステップS255において、ジョブがないと判断した場合、ロック時間の制御処理を終了する。
【0123】
このようなロック時間の制御処理によって、ジョブがロックされている場合は、ジョブ毎にロック時間を制御し、ジョブがロックされていないがページがロックされている場合は、ページ毎にロック時間を制御することができる。従って、何らかの障害によって、ジョブ又はページをロックしたプリンタ100が印刷処理を行うことができなくなったとしても、ストレージ200にて所定時間後にロックが解除されるため、他のプリンタ100によって印刷処理することが可能となる。
【0124】
このようにジョブをロックすることによって、PC300は、ただ1つのプリンタ100に対して印刷要求を行うのみで、複数のプリンタ100の状態を知る必要なく、確実に文書全体を印刷した1部を1つのプリンタ100によって行わせることができる。
【0125】
また、ページをロックすることによって、PC300は、ただ1つのプリンタ100に対して印刷要求を行うのみで、複数のプリンタ100の状態を知る必要なく、ページが重複することなく、確実に文書全体を印刷させることができる。
【0126】
ストレージ200の記憶装置46にて管理されるジョブ指示情報及び管理情報と文書データとで構成されるジョブデータは、例えば、図17に示されるような構造を成す。図17は、ジョブデータの構造を示す図である。ストレージ200は、各プリンタ100から受信したジョブ保存要求に基づいて、ジョブ保存要求によって指定されるジョブ指示情報とストレージ200にて管理するために必要な管理情報とを有するジョブ管理情報をジョブ毎に格納するジョブ管理領域291と、ジョブ管理情報と関連付けされる文書を構成する少なくとも1つ以上のページデータ(ページ1からn)を格納するページデータ管理領域292とを有する。例えば、ジョブ管理領域291において、ジョブ毎又はページ毎のロック時間等がジョブ管理情報にて管理される。
【0127】
図1のステップS1にて、PC300から主プリンタ100−1へ送信される印刷要求のスクリプトについて説明する。図18は、PCから送信される印刷要求のスクリプト例を示す図である。図18において、<bm:create_job xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_job>で示される記述400は、BMLinkSに従ったXMLによる記述であることを示す。create_jobを示す記述401によってBMLinkSによって規定されるcreate_jobコマンドが発行されたことが示される。
【0128】
<requesting-user-name>から</request-user-name>で示される記述402によって、印刷を要求したユーザ名「someone」が示される。
【0129】
<job-instruction>から</job-instruction>で示される記述403は、印刷処理に関するパレメータを指定する<job-instruction-params>から</job-instruction-params>で示される記述404と、通知すべき印刷処理中のイベントを指定する<notification-instruction>から</notification-instruction>で示される記述405とで構成される。
【0130】
記述404において、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、例えば、「sample-job」のように指定される。<optional-attributes-fidelity>から</optional-attributes-fidelity>で示される記述は、例えば、「false」のように指定される。<copies>から</copies>で示される記述は、印刷すべき部数を示し、例えば、「1」部が示される。
【0131】
<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」であるとする。
【0132】
<finishings enc:arrayType="bm:finishing[1]">から</finishings>で示される記述407は、BMLinkSに従って、印刷処理後のフィニッシングを配列「finishing[1]」によって指定している。<finishing>から</finishing>で示される記述は、フィニッシングとして、印刷した文書を「staple」で綴じることを指定している。
【0133】
<document-format>から</document-format>で示される記述は、文書データのデータ形式「image/tiff」を指定する。
【0134】
記述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」とが指定される。
【0135】
図7のステップS14にて、主プリンタ100−1からストレージ200へ送信されるジョブ保存要求のスクリプトについて説明する。図19は、主プリンタからストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。図19において、<bm:create_file xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_file>で示される記述410は、BMLinkSに従ったXMLによる記述であることを示す。create_fileを示す記述411によってBMLinkSによって規定されるcreate_fileコマンドが発行されたことが示される。
【0136】
記述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」を指定する。
【0137】
更に、記述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」であるとする。
【0138】
図7のステップS15にて、主プリンタ100−1から補助プリンタ100−2及び100−3の夫々へ送信される補助印刷要求のスクリプトについて説明する。図20は、主プリンタから補助プリンタへ送信される補助印刷要求のスクリプト例を示す図である。図20において、<bm:create-job xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_job>で示される記述420は、BMLinkSに従ったXMLによる記述であることを示す。create_jobを示す記述421によってBMLinkSによって規定されるcreate_jobコマンドが発行されたことが示される。
【0139】
<requesting-user-name>から</request-user-name>で示される記述422によって、印刷を要求したユーザ名「someone」が示される。
【0140】
<job-instruction>から</job-instruction>で示される記述423は、印刷処理に関するパレメータを指定する<job-instruction-params>から</job-instruction-params>で示される記述424と、通知すべき印刷処理中のイベントを指定する<notification-instruction>から</notification-instruction>で示される記述425とで構成される。
【0141】
記述424において、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、例えば、「sample-job」のように指定される。<optional-attributes-fidelity>から</optional-attributes-fidelity>で示される記述は、例えば、「false」のように指定される。<copies>から</copies>で示される記述は、印刷すべき部数を示し、例えば、「1」部が示される。
【0142】
<finishings enc:arrayType="bm:finishing[1]">から</finishings>で示される記述426は、BMLinkSに従って、印刷処理後のフィニッシングを配列「finishing[1]」によって指定している。<finishing>から</finishing>で示される記述は、フィニッシングとして、印刷した文書を「staple」で綴じることを指定している。
【0143】
<document-format>から</document-format>で示される記述は、文書データのデータ形式「image/tiff」を指定する。
【0144】
ジョブの格納場所に関する記述427において、<source-uri>から</source-uri>で示される記述は、ジョブが格納されているURI「http://192.168.2.1/sample-job」を示し、<source-file-id>から</source-file-id>で示される記述は、ファイルID「001」を示す。
【0145】
記述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」とが指定される。
【0146】
図8のステップS46にて、補助プリンタプリンタ100−2からストレージ200へ送信されるジョブ取得要求によって、ページのみを指定してページロックするスクリプトについて説明する。図21は、主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第一スクリプト例を示す図である。図21において、<bm:file-attribute xmlns:bm="urn:schemas-bm:service:bm">から</bm:file-attribute >で示される記述430は、BMLinkSに従ったXMLによる記述であることを示す。file−attributeを示す記述431によってBMLinkSによって規定されるfile−attributeコマンドが発行されたことが示される。
【0147】
記述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」を示す。
【0148】
図8のステップS46にて、補助プリンタプリンタ100−2からストレージ200へ送信されるジョブ取得要求によって、ページ及びロック期間を指定してページロックするスクリプトについて説明する。図22は、主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第二スクリプト例を示す図である。図22において、<bm:file-attribute xmlns:bm="urn:schemas-bm:service:bm">から</bm:file-attribute>で示される記述440は、BMLinkSに従ったXMLによる記述であることを示す。file−attributeを示す記述441によってBMLinkSによって規定されるfile−attributeコマンドが発行されたことが示される。
【0149】
記述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」秒のロック期間を指定する。この場合、終了時刻を指定するようにしても良い。
【0150】
図8のステップS25にて、ストレージ200に保存されている印刷済みのページを削除するページ削除要求のスクリプトについて説明する。図23は、ストレージ200に保存されている印刷済みのページを削除するページ削除要求のスクリプト例を示す図である。図23において、<bm:delete_page xmlns:bm="urn:schemas-bm:service:bm">から</bm:delete_page>で示される記述450は、BMLinkSに従ったXMLによる記述であることを示す。delete_pageを示す記述451によってBMLinkSによって規定されるdelete_pageコマンドが発行されたことが示される。
【0151】
記述450において、<requesting-user-name>から</requesting-user-name>で示される記述452は、登録されたユーザ名「someone」を示す。<file-id>から</file-id>で示される記述453は、ファイルID「001」を示す。<page-id>から</page-id>で示される記述454は、削除すべきページ「001」を示す。
【0152】
上記第一実施例に係る画像形成システム1001おいて、1つのストレージにジョブを保存し、複数のプリンタ100−1から100−3にて文書を重複なく出力する方法について説明したが、ストレージ200に障害が発生した場合にも、文書の印刷を行うことができる第二実施例について以下に説明する。
【0153】
図24は、本発明の第二実施例に係る画像形成システムのネットワーク構成例を示す図である。図24に示す画像形成システム1002において、ストレージ200−1から200−3(以下、総称する場合ストレージ200と言う)は、第一実施例に係る画像形成システム1001のストレージ200の図13に示すハードウェア構成を成し、また、図14に示す機能構成を成す。プリンタ100及びPC300は、第一実施例におけるプリンタ100とPC300と同等である。
【0154】
図24に示す画像形成システム1002は、印刷処理を行うプリンタ100と、印刷パラメータ及び文書データを保存する複数のストレージ200−1から200−3と、文書を印刷する利用者が使用するPC300とによって構成されるシステムである。プリンタ100と、複数のストレージ200−1から200−3と、PC300とは、ネットワーク40を介して接続される。
【0155】
このような画像形成システム1002において、PC300から印刷要求を受信すると、プリンタ100は、複数のストレージ200−1から200−3へジョブ保存要求を送信する。説明の便宜上、プリンタ100は、複数のストレージ200−1から200−3へジョブ保存要求を送信するとしているが、ジョブ保存要求を送信するストレージ200は1つ以上であればよい。
【0156】
図24を参照しつつ、画像形成システム1002での処理フローの概要を説明する。
【0157】
プリンタ100は、PC300から印刷要求を受信すると(ステップS131)、該印刷要求で指定される保存先として所望するストレージ200の一覧及びステープルの要否等のフィニッシングの方法を示す印刷パラメータと、印刷処理の対象となる文書データとに基づいてジョブを生成する。その生成したジョブに関するジョブ指示情報には、PC300からの印刷パラメータに基づいて作成された印刷パラメータと、印刷処理のイベント通知に関する通知指示情報とが含まれる。
【0158】
プリンタ100は、そのジョブ指示情報を複数のストレージ200−1から200−3に対してジョブ保存要求を順次送信する(ステップS132−1からS132−3)。各ストレージ200−1から200−3は、プリンタ100からジョブ保存要求を受信すると、該ジョブ保存要求で指定されるファイル名でジョブ指示情報及び文書データを保存する。
【0159】
そして、プリンタ100は、印刷要求に指定されたストレージ200の一覧の順に、例えば、先ずストレージ200−1に対してジョブ取得要求を送信し(ステップS133−1)、取得したジョブ指示情報及び文書データに従って印刷処理を実行する。プリンタ100は、印刷処理をするためにストレージ200−1からページを取得できない場合、次のストレージ200−2へジョブ取得要求を送信することによって(ステップS133−2)、該ページを取得して印刷する。更に、ストレージ200−2からもページを取得できない場合、次のストレージ200−3に対してジョブ取得要求を送信し(ステップS133−3)、該ページを取得して印刷する。
【0160】
このように、何らかの理由でストレージ200−1から印刷すべきページを取得できない場合、他のストレージ200−2又は200−3から印刷すべきページを取得することができる。したがって、PC300の利用者は、バックアップとしてストレージ200−2及び200−3を指定することによって各ストレージ200−1から200−3の状態を知ることなく、印刷要求を送信したプリンタ100にて文書を印刷させることができる。よって、画像形成システム1002は対障害性を向上させることができる。
【0161】
次に、プリンタ100での処理を制御する制御部105にて行われる処理について説明する。図25は、本発明の第二実施例に係るプリンタでの処理例を説明するためのフローチャート図である。図25において、プリンタ100は、所定時間毎にジョブを受信したか否かを判断する(ステップS141)。ジョブを受信していない場合、待ち状態となり、所定時間毎にステップS141を繰り返す。一方、PCからジョブを受信した場合、ステップS113を実行する。
【0162】
制御部105は、ジョブ発行部102にジョブを生成させ、ジョブ内容を指示するジョブ指示情報を、印刷要求で指定される複数のストレージ200−1から200−3に順次保存する(ステップS142)。そして、プリンタ100は、印刷要求で指定される最初のストレージ(この場合、ストレージ100−1とする)を選択する(ステップS143)。
【0163】
制御部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を選択する。
【0164】
一方、ページXを取得できた場合、制御部105は、印刷処理部106を制御してページXを印刷する(ステップS148)。制御部105は、印刷すべきページがまだあるか否かを判断する(ステップS149)。ページがまだある場合、制御部105は、ページXに1を加えて(ステップS150)、ステップS145へ戻る。一方、全てのページを印刷した場合、ジョブを削除するため、ストレージ200−1から200−3に対してジョブ削除要求を送信し、プリンタ100での処理を終了する(ステップS151)。
【0165】
図24のステップS131にて、PC300から主プリンタ100−1へ送信される印刷要求のスクリプトについて説明する。図26は、複数のストレージが指定される印刷要求のスクリプト例を示す図である。図26において、<bm:create_job xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_job>で示される記述460は、BMLinkSに従ったXMLによる記述であることを示す。create_jobを示す記述461によってBMLinkSによって規定されるcreate_jobコマンドが発行されたことが示される。
【0166】
<requesting-user-name>から</request-user-name>で示される記述462によって、印刷を要求したユーザ名「someone」が示される。
【0167】
<job-instruction>から</job-instruction>で示される記述463は、印刷処理に関するパレメータを指定する<job-instruction-params>から</job-instruction-params>で示される記述464と、通知すべき印刷処理中のイベントを指定する<notification-instruction>から</notification-instruction>で示される記述405とで構成される。
【0168】
記述464において、<job-name>から</job-name>で示される記述は、ジョブ名を指定し、例えば、「sample-job」のように指定される。<optional-attributes-fidelity>から</optional-attributes-fidelity>で示される記述は、例えば、「false」のように指定される。<copies>から</copies>で示される記述は、印刷すべき部数を示し、例えば、「1」部が示される。
【0169】
<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に対応するとする。
【0170】
<finishings enc:arrayType="bm:finishing[1]">から</finishings>で示される記述467は、BMLinkSに従って、印刷処理後のフィニッシングを配列「finishing[1]」によって指定している。<finishing>から</finishing>で示される記述は、フィニッシングとして、印刷した文書を「staple」で綴じることを指定している。
【0171】
<document-format>から</document-format>で示される記述は、文書データのデータ形式「image/tiff」を指定する。
【0172】
記述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」とが指定される。
【0173】
図24のステップS133−1からS133−3にて、プリンタ100から複数のストレージ200−1から200−3へ送信されるジョブ保存要求のスクリプトについて説明する。図27は、プリンタから複数のストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。図27において、<bm:create_file xmlns:bm="urn:schemas-bm:service:bm">から</bm:create_file>で示される記述470は、BMLinkSに従ったXMLによる記述であることを示す。create_fileを示す記述471によってBMLinkSによって規定されるcreate_fileコマンドが発行されたことが示される。
【0174】
記述470において、<requesting-user-name>から</request-user-name>で示される記述472は、登録されたユーザ名「someone」を示す。<file-instruction>から</file-instruction>で示される記述473は、データ保存条件を指定する。<file-instruction-params>から</file-instruction-params>までの記述474は、ファイルに関する情報を示す記述475と、バックアップとしての複数のストレージの一覧を示す記述476とで構成される。
【0175】
記述475において、例えば、<file-name>から</file-name>までの記述は、ファイル名「sample-job」を指定する。また、<read-only>から</read-only>までの記述は、読み取りのみを示す「true」を指定する。
【0176】
また、記述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」を指定する。
【0177】
このように、何らかの理由でストレージ200−1からページXが取得できない場合、プリンタ100は、ストレージ200−2又は200−3からページXを取得し印刷することができる。したがって、PC300の利用者は、バックアップとしてストレージ200−2及び200−3を指定することによって各ストレージ200−1から200−3の状態を知ることなく、印刷要求を送信したプリンタ100にて文書を印刷させることができる。よって、画像形成システム1002は対障害性を向上させることができる。
【0178】
次に、PC300から印刷要求を受信したプリンタ100−1は、主プリンタとして、複数のストレージ200−1から200−3にジョブを保存すると共に、プリンタ100−2及び100−3に補助プリンタとして補助印刷要求を送信する第三実施例について説明する。
【0179】
図28は、本発明の第三実施例に係る画像形成システムのネットワーク構成例を示す図である。図21に示す画像形成1003において、ストレージ200−1から200−3(以下、総称する場合ストレージ200と言う)は、第一実施例に係る画像形成システム1001のストレージ200−1から200−3の図13に示すハードウェア構成を成し、また、図14に示す機能構成を成す。プリンタ100−1から100−3及びPC300は、第一実施例におけるプリンタ100−1から100−3とPC300と同等である。
【0180】
図28に示す画像形成システム1003は、印刷処理を行う複数のプリンタ100−1から100−3と、印刷パラメータ及び文書データを保存する複数のストレージ200−1から200−3と、文書を印刷する利用者が使用するPC300とによって構成されるシステムである。複数のプリンタ100−1から100−3と、複数のストレージ200−1から200−3と、PC300とは、ネットワーク40を介して接続される。
【0181】
このような画像形成システム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つ以上であればよい。
【0182】
説明の便宜上、プリンタ100−1をPC300から直接印刷要求を受信するプリンタとしているが、プリンタ100−1から100−nのどのプリンタであっても良い。単に、プリンタ100−1から100−nのうちのPC300から印刷要求を直接受信したプリンタを主プリンタと定義する。
【0183】
図28を参照しつつ、画像形成システム1003での処理フローの概要を説明する。
【0184】
主プリンタ100−1は、PC300から直接印刷要求を受信すると(ステップS161)、該印刷要求で指定される出力先として所望するプリンタ100の一覧、ジョブを保存するストレージ200の一覧、及び、ステープルの要否等のフィニッシングの方法を示す印刷パラメータと、印刷処理の対象となる文書データとに基づいてジョブを生成する。その生成したジョブに関するジョブ指示情報には、PC300からの印刷パラメータに基づいて作成された印刷パラメータと、印刷処理のイベント通知に関する通知指示情報とが含まれる。
【0185】
主プリンタ100−1は、そのジョブ指示情報を印刷要求で指定されるストレージ200の一覧に従って順に保存するためのジョブ保存要求をストレージ200−1から200−3に送信する(ステップS162−1からS162−3)。各ストレージ200−1から200−3は、主プリンタ100−1からジョブ保存要求を受信すると、該ジョブ保存要求で指定されるファイル名でジョブ指示情報及び文書データを保存する。
【0186】
利用者が所望する補助としてのプリンタがプリンタ100−2から100−3であるとする。主プリンタ100−1は、PC300から指示された印刷パラメータに基づく補助プリンタ用の印刷パラメータを設定した補助印刷要求を補助プリンタ100−2から100−3へ順次送信する(ステップS163−1及びS163−2)。
【0187】
そして、主プリンタ100−1は、ストレージ200−1へジョブ取得要求を送信することによってジョブ指示情報の全部又は一部と文書データとを取得し(ステップS164−1)、印刷処理を実行する。同様に、補助プリンタ100−2及び100−3は、夫々、ストレージ200へジョブ取得要求を送信することによってジョブ指示情報の全部又は一部と文書データとを取得し(ステップS164−2及びS164−3)、印刷処理を実行する。
【0188】
このような画像形成システム1003では、PC300から印刷要求を受信したプリンタ100−1が自立的に主プリンタとなって、利用者が所望するプリンタ100−2及び100−3を補助プリンタとして制御するため、複数のプリンタ100−1から100−nを制御するための専用のサーバを設ける必要がない。
【0189】
また、主プリンタ100−1及び補助プリンタ100−2及び100−3が印刷処理を行うため、プリンタ100−1から100−3のいずれかのプリンタに障害が発生したとしても、他のプリンタによって印刷処理が行われるため、利用者は、必ず、指定したプリンタ100−1から100−3のいずれかで印刷された文書を取得することができる。従って、プリンタの障害に影響されにくい耐障害性に優れたシステムを実現することができる。
【0190】
更に、ストレージ200−1から200−3のいずれかに障害が発生したとしても、プリンタ100−1から100−3のいずれかで文書を印刷させることができる。従って、ストレージの障害に影響されにくい耐障害性に優れたシステムを実現することができる。
【0191】
また、このような画像形成システム1003では、各プリンタ100−1から100−3が夫々ストレージ200−1から200−3に対してジョブ保存要求を送信することによって、各プリンタ100−1から100−3によって文書印刷することができる。例えば、同時に3部を印刷するができるため、高速に印刷処理をすることができる。
【0192】
【発明の効果】
以上、説明してきたように、本願発明によれば、利用者が選択した複数の画像形成装置の1つに画像形成要求を送信するのみで、同一の画像形成パラメータと画像形成すべき対象データとに基づいて、複数の画像形成装置が画像形成処理を行うことができる。従って、利用者によって選択された複数の画像形成装置のいずれかに障害が発生したとしても、他の画像形成装置によって画像形成処理を完了させることができる。また、複数の画像形成装置を制御するための専用のサーバコンピュータを備える必要がない。
【0193】
【図面の簡単な説明】
【図1】本発明の第一実施例に係る画像形成システムのネットワーク構成例を示す図である。
【図2】本発明の第一実施例に係るPCのハードウェア構成を示すブロック図である。
【図3】本発明の第一実施例に係るPCの機能構成例を示すブロック図である。
【図4】本発明の第一実施例に係るPCによる印刷処理例を説明するためのフローチャート図である。
【図5】本発明の第一実施例に係るプリンタのハードウェア構成を示すブロック図である。
【図6】本発明の第一実施例に係るプリンタの機能構成例を示すブロック図である。
【図7】本発明の第一実施例に係るプリンタの制御部の印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図8】本発明の第一実施例に係るプリンタの制御部の印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図9】本発明の第一実施例に係るプリンタの制御部の補助印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図10】本発明の第一実施例に係るプリンタの制御部の補助印刷要求を受信した場合の処理例を説明するためのフローチャート図である。
【図11】ロック時間制御処理を説明するためのフローチャート図である。
【図12】ロック結果処理を説明するためのフローチャート図である。
【図13】本発明の第一実施例に係るストレージのハードウェア構成を示すブロック図である。
【図14】本発明の第一実施例に係るストレージの機能構成例を示すブロック図である。
【図15】本発明の第一実施例に係るストレージのジョブ管理部の処理例を説明するためのフローチャート図である。
【図16】本発明の第一実施例に係るストレージのロック時間制御部によるロック時間の制御処理例を説明するためのフローチャート図である。
【図17】ジョブデータの構造を示す図である。
【図18】PCから送信される印刷要求のスクリプト例を示す図である。
【図19】主プリンタからストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。
【図20】主プリンタから補助プリンタへ送信される補助印刷要求のスクリプト例を示す図である。
【図21】主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第一スクリプト例を示す図である。
【図22】主プリンタからストレージへ送信されるジョブ取得要求によるページロックの第二スクリプト例を示す図である。
【図23】ストレージに保存されている印刷済みのページを削除するページ削除要求のスクリプト例を示す図である。
【図24】本発明の第二実施例に係る画像形成システムのネットワーク構成例を示す図である。
【図25】本発明の第二実施例に係るプリンタでの処理例を説明するためのフローチャート図である。
【図26】複数のストレージが指定される印刷要求のスクリプト例を示す図である。
【図27】プリンタから複数のストレージへ送信されるジョブ保存要求のスクリプト例を示す図である。
【図28】本発明の第三実施例に係る画像形成システムのネットワーク構成例を示す図である。
【符号の説明】
40 ネットワーク
100、100−1、100−2、100−3 プリンタ
101 ジョブ受付部
102 ジョブ発行部
103 サービス検索部
104 通知発行部
105 制御部
106 印刷処理部
107 ロック時間制御部
200、200−1、200−2、200−3 ストレージ
201 要求処理部
203 応答処理部
205 ジョブ管理部
207 ロック時間制御部
210 ネットワーク制御部
300 PC
301 サービス検索部
302 印刷要求部
303 通知処理部
304 アプリケーション
309 インストーラ
310 ネットワーク制御部
[0001]
BACKGROUND OF THE INVENTION
The present invention via a network Information processing device An image formation request is issued to the connected image forming apparatus. Image forming system and image forming method In particular, only by sending print parameters and document data to be imaged to one image forming apparatus and making an image formation request, the document is transmitted by a plurality of image forming apparatuses connected via a network. Distributing image formation processing to data Image forming system and image forming method Is to provide.
[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 transmit a print parameter and document data to be imaged to one image forming apparatus and make an image formation request, and a plurality of image forming apparatuses connected via a network. To distribute the image forming process for the document data Image forming system and image forming method Is to provide.
[0005]
[Means for Solving the Problems]
In order to solve the above-described problem, according to the present invention, as described in claim 1, the first image forming apparatus that has received the image forming request from the information processing apparatus includes one or more second image forming apparatuses and storage devices. In the image forming system that executes image forming processing by controlling the network via the network, the information processing device includes the first image forming device and the one or more second image forming devices existing on the network by a user. Selecting means for selecting; request generating means for generating an image forming request specifying the one or more second image forming apparatuses selected by the user; and the storage apparatus; and the first selected by the selecting means. A request transmission unit configured to transmit the image formation request and document data to one image forming apparatus, and send the image formation request to the first image forming apparatus that has transmitted the image formation request; To generate job instruction information Zui, and the job instruction information and the document data by saved to the storage device By sending an auxiliary print request to the one or more second image forming apparatuses , With myself Document data stored from the storage device is acquired in response to the auxiliary print request The one or more second image forming apparatuses; For document data An image forming process is performed.
[0006]
In such an information processing apparatus, it is only necessary to transmit an image formation request to one of the plurality of image forming apparatuses selected by the user, and based on the same image formation parameters and target data to be image formed, The image forming apparatus can perform image forming processing. Therefore, even if a failure occurs in any of the plurality of image forming apparatuses selected by the user, the image forming process can be completed by another image forming apparatus. Further, it is not necessary to provide a dedicated server computer for controlling a plurality of image forming apparatuses.
[0007]
According to a second aspect of the present invention, the request generation unit stores the image forming parameter and target data to be imaged based on the first image forming request by the request destination device. The apparatus can be configured to designate the first image formation request.
[0008]
Also, In such an information processing apparatus, since the storage device is specified by the image formation request, even if a failure occurs in the request destination device that transmitted the image formation request, the image formation parameters and the target data are stored in the storage device. Therefore, the image forming process can be completed because the other image forming apparatus can acquire the image forming parameter and the target data from the storage device.
[0009]
Furthermore, the present invention provides the claims. 2 Can be processed on the network as described in First and second above The image forming apparatus can be configured to have search means for searching for the image forming apparatus.
[0010]
In such an information processing apparatus, a plurality of processable image forming apparatuses existing on the network can be searched at the time of an image formation request. It is only necessary to make a formation request.
[0011]
The present invention also includes claims. 3 As described in (1), a notification processing means for processing a notification of an event of an image forming process made by the image forming request can be provided.
[0012]
In such an information processing apparatus, event notification can be processed. Therefore, in a state where a plurality of image forming apparatuses can process one image formation request, the event ( For example, completion, cancellation, etc.) can be known.
[0013]
Furthermore, the present invention provides the claims. 4 As described in the above, a communication control unit that performs communication control according to an inter-device interface protocol that enables common communication with the plurality of image forming apparatuses via the network can be provided. The present invention also includes claims. 5 As described above, the communication control means constitutes a communication protocol layer by a packet data transfer protocol, an Internet communication protocol that realizes information provision and information acquisition, a message exchange protocol, and the inter-device interface protocol. be able to.
[0014]
In such an information processing apparatus, an image can be sent to a plurality of image forming apparatuses with a single image forming request to any image forming apparatus as long as communication is possible using an apparatus interface protocol (for example, BMLinkS). The formation process can be performed in a distributed manner.
[0015]
In order to solve the above problems, the present invention provides 6 As described in In an image forming system in which an image forming apparatus that has received an image forming request from an information processing apparatus controls a plurality of storage devices via a network to execute image forming processing, the information processing apparatus includes: Present on the network by the user the above Selection means for selecting an image forming apparatus to perform image forming processing, and image forming parameters and target data to be formed should be stored the above Requesting the above image forming process specifying multiple storage devices Ru A request generating means for generating an image forming request, and the image forming request to the image forming apparatus selected by the selecting means; And document data A request transmission means for transmitting Record Image formation request Sent the above Image formation Equipment And generating job instruction information based on the image formation request, and combining the job instruction information and the document data. In the multiple storage devices Save and perform image formation using one or more of the plurality of storage devices Can be configured.
[0016]
In such an information processing apparatus, a user only makes an image formation request to one image forming apparatus via a network, and even when a failure occurs in the storage apparatus, any one of the storage apparatuses Thus, the image forming process can be performed.
[0017]
In order to solve the above problems, the present invention provides 7 As described in In the image forming system in which the first image forming apparatus that has received the image forming request from the information processing apparatus controls one or more second image forming apparatuses and a plurality of storage devices via a network to execute image forming processing. The information processing apparatus is Present on the network by the user The first image forming apparatus and the one or more second Selection means for selecting an image forming apparatus, and the above-mentioned user-selected above One or more second With image forming device the above Requesting the above image forming process specifying multiple storage devices Ru Request generation means for generating an image formation request, and the above selected by the selection means first Image forming apparatus In Image formation request And document data A request transmission means for transmitting Record Image formation request To the first image forming apparatus that has transmitted On the basis of the Generate job instruction information, and store the job instruction information and the document data in the storage device. , With myself the above One or more second Image forming apparatus And using the plurality of storage devices Distribute image formation processing Let Configured to be
[0018]
In such an information processing apparatus, a user only makes an image formation request to one image forming apparatus via a network, and even if a failure occurs in the image forming apparatus or the storage apparatus, The image forming process can be performed by the image forming apparatus or the storage apparatus.
[0019]
As means for solving the above-described problems, the present invention may be the above-described program for causing a computer to execute and a recording medium on which the program is recorded.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0021]
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.
[0022]
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.
[0023]
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.
[0024]
An outline of a processing flow in the image forming system 1001 will be described with reference to FIG.
[0025]
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.
[0026]
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.
[0027]
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).
[0028]
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.
[0029]
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. Further, in response to a job acquisition request from the main printer 100-1 and the auxiliary printers 100-2 and 100-3, the storage 200 sends job instruction information and information to the main printer 100-1 and the auxiliary printers 100-2 and 100-3. Since the document data can be provided, even if a failure occurs in any of the printers 100-1 to 100-3, the printing process is performed by the other printer. A document printed by any of the printers 100-1 to 100-3 can be acquired. Therefore, it is possible to realize a system with excellent fault tolerance that is not easily affected by printer faults.
[0030]
The PC 300 applied to the image forming system 1001 according to the first embodiment of the present invention has a hardware configuration as shown in FIG. FIG. 2 is a block diagram showing the hardware configuration of the PC according to the first embodiment of the present invention.
[0031]
In FIG. 2, a PC 300 is a device that is controlled by a computer and executes a printing process, and includes a CPU (central processing unit) 51, a memory unit 52, a display unit 53, an input unit 54, a communication unit 55, The storage device 56 and the driver 57 are configured and connected to the system bus B3.
[0032]
The CPU 51 controls the PC 300 according to a program stored in the memory unit 52. The memory unit 52 includes a RAM and a ROM, and stores programs executed by the CPU 51, data necessary for processing by the CPU 51, data obtained by processing by the CPU 51, and the like. Further, a partial area of the memory unit 52 is allocated as a work area used for processing by the CPU 51.
[0033]
The display unit 53 displays various information required under the control of the CPU 51. The input unit 54 includes a mouse, a keyboard, and the like, and is used for a user to input various information necessary for the PC 300 to perform processing. The communication unit 55 is a device for controlling communication with the plurality of printers 100 or the storage 200 when the PC 300 is connected to the plurality of printers 100 and the storage 200 via, for example, a LAN (Local Area Network). It is. The storage device 56 is composed of, for example, a hard disk unit, and stores programs for executing various processes, document data, and the like.
[0034]
A program that realizes a printing process performed by the PC 300 is provided to the PC 300 by a storage medium 58 such as a CD-ROM. That is, when the storage medium 58 storing the program is set in the driver 57, the driver 57 reads the program from the storage medium 58, and the read program is installed in the storage device 56 via the system bus B3. . When the program is activated, the CPU 51 starts its processing according to the program installed in the storage device 56. The medium for storing the program is not limited to a CD-ROM, and any medium that can be read by a computer may be used. The program for realizing the printing process according to the present invention may be downloaded via the network 40 by the communication unit 55 and installed in the storage device 56.
[0035]
Further, the plurality of printers 100 applied to the image forming system 1001 according to the first embodiment of the present invention execute processes such as a job storage request, an auxiliary print request, and a job acquisition request in response to a print request from the PC 300. It is a possible computer. Further, the storage 200 is a computer having a hard disk for storing job instruction information and document data, and executes processing corresponding to a job storage request and a job acquisition request from the printer 100.
[0036]
FIG. 3 is a block diagram showing a functional configuration example of the PC according to the first embodiment of the present invention. In FIG. 3, a PC 300 mainly includes a service search unit 301 that searches for printable printers on the network 40, a print request unit 302 that generates and transmits a print request using XML (eXtensible Markup Language), A notification processing unit 303 that processes the received notification according to XML, an application 304 that generates document data and requests print processing, an installer 309 that installs a program according to the present invention from the storage medium 58, and a plurality of devices via the network 40 A network control unit 210 that controls communication with the printer 100.
[0037]
In response to a service search request from the print request unit 302, the service search unit 301 uses the network control unit 310 to search for a plurality of serviceable (printable) printers 100 existing on the network 40 according to BMLinkS ( Run Discovery). Alternatively, the service search unit 301 executes discovery to search for serviceable image forming apparatuses when the PC 300 is activated. The search result is stored in a predetermined storage area of the storage device 57 as a print service list, for example, and is notified to the print request unit 302 as a search result for the service search request.
[0038]
In response to a print request from the application 304, the print request unit 302 generates a print request using XML, and transmits the print request to the printer 100 desired by the user according to BMLinkS.
[0039]
The notification processing unit 303 processes the received notification using XML, converts the notification into a data format that can be interpreted by the print request unit 302, and transmits the data format to the print request unit 302.
[0040]
The application 304 is an application that creates, edits, deletes data in a predetermined data format. The application 304 may be, for example, a spreadsheet application, a drawing application, or the like, and any application that requests print processing.
[0041]
The network control unit 310 further includes a TCP / IP (Transmission Control Protocol / Internet Protocol) 311, an HTTP 312, a SOAP (Simple Object Access Protocol) 313, and a BMLinkS 314.
[0042]
TCP / IP 311 is a network communication protocol that controls data communication via the network 40. The HTTP 312 is an Internet communication protocol that realizes information provision and information acquisition on the Internet. The SOAP 313 is a message exchange protocol that controls the exchange of messages described according to XML, for example. The BMLinkS 314 controls data communication related to job control procedures, status reference, etc. for one or more OA devices having at least one of the functions of a printer, scanner, storage, FAX transmission and reception existing on the network 40. OA device I / F protocol.
[0043]
The printer 100 and the storage 200 have the same configuration as that of the network control unit 310, and communicate with the PC 300 via the network 40 according to BMLinkS.
[0044]
Next, processing in the PC 300 will be described. FIG. 4 is a flowchart for explaining an example of print processing on the PC according to the first embodiment of the present invention. 4, in the PC 300, the service search unit 301 searches for printers that can be printed on the network 40 by discovery, and acquires a plurality of printers desired by the user (step S301).
[0045]
In this case, when the user instructs printing from the application 304, the print request unit 302 is executed. In response to an instruction from the print request unit 302, the service search unit 301 searches for printers that can be printed on the network 40 by discovery, and receives responses as printers that can be printed by the printers 100-1 to 100-n, for example. To do. When the list of printers 100 that responded by the print request unit 302 is displayed on the display unit 53, the user selects the desired printers 100-1, 100-2, and 100-3 from the list, for example. To do. When the user selects the printers 100-1, 100-2, and 100-3, the main printer may be designated in advance.
[0046]
Subsequently, the print request unit 302 acquires desired print parameters from the user (step S302). For example, the print request unit 302 displays a screen for setting print parameters on the display unit 53 and acquires the print parameters set by the user. Then, the print request unit 302 prints according to the URIs of a plurality of printers desired by the user, the URI of the storage for storing job instruction information and document data generated by the printer, and the print parameters acquired from the user. A request is generated (step S303).
[0047]
Then, the print request and document data are transmitted to one of the printers 100-1, 100-2, and 100-3 selected by the user (step S304). For example, the print request and document data are transmitted to the printer 100-1 designated as the main printer by the user. Then, the printing process by the PC 300 ends (step S305).
[0048]
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. 5, for example. FIG. 5 is a block diagram showing the hardware configuration of the printer according to the first embodiment of the present invention.
[0049]
In FIG. 5, a printer 100 is a device that is controlled by a computer and executes a printing process, and includes a CPU (Central Processing Unit) 11, a ROM (Read-Only Memory) 12, a RAM (Random Access Memory) 13, Non-volatile random access memory (RAM) 14, real-time clock 15, Ethernet (registered trademark) I / F (Ethernet (registered trademark) Interface) 21, USB (Universal Serial Bus) 22, 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.
[0050]
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.
[0051]
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.
[0052]
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.
[0053]
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.
[0054]
FIG. 6 is a block diagram illustrating a functional configuration example of the printer according to the first embodiment of the present invention. In FIG. 6, 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 print processing, 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. 5 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.
[0055]
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.
[0056]
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.
[0057]
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. .
[0058]
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.
[0059]
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.
[0060]
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.
[0061]
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.
[0062]
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.
[0063]
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.
[0064]
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.
[0065]
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. 7 and 7 are flowcharts for explaining an example of processing when a print request is received from the control unit of the printer according to the first embodiment of the present invention. In FIG. 7, the control unit 105 determines whether a job is received every predetermined time (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-2). 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).
[0066]
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).
[0067]
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.
[0068]
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).
[0069]
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).
[0070]
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.
[0071]
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.
[0072]
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.
[0073]
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.
[0074]
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.
[0075]
Next, processing in the control unit 105 when an auxiliary print request is received from the other printer 100 will be described with reference to FIGS. 9 and 10. 9 and 10 are flowcharts for explaining an example of processing when an auxiliary print request is received from the control unit of the printer according to the first embodiment of the present invention. In FIG. 9, 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-2), 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).
[0076]
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).
[0077]
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.
[0078]
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.
[0079]
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.
[0080]
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).
[0081]
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.
[0082]
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.
[0083]
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.
[0084]
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.
[0085]
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.
[0086]
Next, a lock time control process executed by the lock time control unit 107 will be described with reference to FIG. FIG. 11 is a flowchart for explaining the lock time control process. In FIG. 11, 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).
[0087]
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).
[0088]
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).
[0089]
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-2 and the lock result processing in step S42-2 in FIG.
[0090]
FIG. 12 is a flowchart for explaining the lock result processing. In FIG. 12, 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-2). 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 S26 in FIG. .
[0091]
On the other hand, if it indicates that it has been locked, that is, since the storage 200 is locked even after the lock time has elapsed, it is determined that printing cannot be performed by another printer 100, and the storage 200 is in page X. When the lock is forcibly released to indicate that the lock is ready, the process proceeds to step S29 in FIG. 8 and the same processing as described above is performed.
[0092]
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-2). 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. .
[0093]
On the other hand, if it indicates that it has been locked, that is, since the storage 200 is locked even after the lock time has elapsed, it is determined that printing cannot be performed by another printer 100, and the storage 200 is in page X. When the lock is forcibly released to indicate that the lock is ready, the process proceeds to step S50 in FIG. 9 and the same processing as described above is performed.
[0094]
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-2). 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.
[0095]
If it indicates that it has been locked, that is, since the storage 200 is locked even after the lock time has elapsed, it is determined that printing cannot be performed by another printer 100, and the storage 200 locks page X. If it is forcibly released to indicate that it can be locked, the process proceeds to step S50 in FIG. 9 and the same processing as described above is performed.
[0096]
According to the processing shown in FIG. 7 to FIG. 12, 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 page, and converts the document data received from the PC 300 into the document data. 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. Further, when the page is locked by another printer 100 and remains locked even after the lock time elapses, it can be locked again after the lock time elapses and the printer 100 can print.
[0097]
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. Further, when the page is locked by another printer 100 and remains locked even after the lock time elapses, it can be locked again after the lock time elapses and the printer 100 can print.
[0098]
It should be noted that the processing shown in FIGS. 7 to 12 can be performed by all the printers 100-1 to 100-n.
[0099]
The storage 200 applied to the image forming system 1001 according to the first embodiment of the present invention has a hardware configuration as shown in FIG. 13, for example. FIG. 13 is a block diagram showing the hardware configuration of the storage according to the first embodiment of the present invention.
[0100]
In FIG. 13, a storage 200 is a device that is controlled by a computer and performs data management, and includes a CPU (central processing unit) 41, a memory unit 42, a display unit 43, an input unit 44, a communication unit 45, The storage device 46 is connected to the system bus B2.
[0101]
The CPU 41 controls the storage 200 according to a program stored in the memory unit 42. The memory unit 42 includes a RAM and a ROM, and stores programs executed by the CPU 41, data necessary for processing by the CPU 41, data obtained by processing by the CPU 41, and the like. A part of the memory unit 42 is allocated as a work area used for processing by the CPU 41.
[0102]
The display unit 43 displays various information necessary under the control of the CPU 41. The communication unit 45 controls communication between the plurality of printers 100 and the PC 300 when the storage 200 functions as a computer and is connected to the plurality of printers 100 and the PC 300 via, for example, a LAN (Local Area Network). It is a device for. The storage device 46 is configured by, for example, a hard disk unit, and stores job instruction information and document data in response to a job storage request from each printer 100.
[0103]
A program for controlling the storage 200 is installed in the storage device 46 in advance. However, the control program may be downloaded via the network 40 by the communication unit 45 as necessary.
[0104]
Further, the plurality of printers 100 applied to the image forming system 1001 according to the first embodiment of the present invention execute processes such as a job storage request, an auxiliary print request, and a job acquisition request in response to a print request from the PC 300. It is a possible computer. Further, the PC 300 is a personal computer used by a user, and makes a print request to the printer 100.
[0105]
FIG. 14 is a block diagram illustrating a functional configuration example of the storage according to the first embodiment of this invention. In FIG. 14, the storage 200 mainly includes a request processing unit 201 that receives a job storage request and a job acquisition request, a response processing unit 203 that processes a response according to the request received by the request processing unit 201, and a request processing unit. The request content notified from 201 and the processing result corresponding to the request are analyzed and created by XML (eXtensible Markup Language), and are managed by the job management unit 205 that controls the storage device 46 shown in FIG. A lock time control unit 207 that controls the lock time of the job to be processed, and a network control unit 210 that controls communication with the plurality of printers 100 via the network 40.
[0106]
The request processing unit 201 receives a job storage request and a job acquisition request from the printer 100 and notifies the job management unit 205 that the request has been received. When the processing result according to the job storage request or the job acquisition request is notified from the job management unit 205, the response processing unit 203 generates a response indicating the processing result and transmits the response to the request source by the network control unit 210.
[0107]
The job management unit 205 generates a file in the storage device 46 in response to the job storage request, and stores job instruction information and document data in the file. Document data is stored in units of pages. Further, in response to the job acquisition request, the page specified by the job acquisition request is taken out from the storage device 46.
[0108]
The lock time control unit 207 monitors the lock time for each job or page set in the job instruction information managed by the storage device 46 at predetermined time intervals. If the predetermined time has elapsed, the lock time control unit 207 locks the lock time. Control to cancel. With this control, even when a failure occurs in the printer 100 that locked the job or page and the printing process is not completed, the printing process can be performed by another printer 100.
[0109]
The network control unit 210 further includes a TCP / IP (Transmission Control Protocol / Internet Protocol) 211, an HTTP 212, a SOAP (Simple Object Access Protocol) 213, and a BMLinkS 214.
[0110]
TCP / IP 211 is a network communication protocol for controlling data communication via the network 40. HTTP 212 is an Internet communication protocol that realizes information provision and information acquisition on the Internet. The SOAP 213 is a message exchange protocol that controls the exchange of messages described according to XML, for example. The BMLinkS 214 controls data communication relating to job control procedures, status reference, etc. for one or more OA devices having at least one of the functions of a printer, scanner, storage, FAX transmission and reception existing on the network 40. OA device I / F protocol.
[0111]
The printer 100 and the PC 300 have the same configuration as that of the network control unit 210 and communicate with the storage 200 via the network 40 according to BMLinkS.
[0112]
Next, processing in the storage 200 will be described with reference to FIGS. 15 and 16. FIG. 15 is a flowchart for explaining a processing example of the storage job management unit according to the first embodiment of the present invention. In FIG. 15, when the job management unit 205 of the storage 200 receives a request from the request processing unit 201 (step S271), the job management unit 205 determines whether the request is a job storage request (step S272). If it is a job save request, an empty file is generated in the storage device 46, and job instruction information and document data set in the job save request are saved in the empty file (step S273). At this time, the job or page specified by the job saving request is locked.
[0113]
If it is determined in step S272 that it is not a job storage request, it is determined whether or not it is a job acquisition request (step S274). If it is a job acquisition request, steps S281 to S285 are executed. On the other hand, if it is not a job acquisition request, it is determined whether it is a page deletion request (step S275). In the case of a page deletion request, the page of the job specified by the page deletion request is deleted from the storage device 46 (step S276).
[0114]
If it is determined in step S275 that it is not a page deletion request, it is determined whether or not it is a job deletion request (step S277). If it is a job deletion request, the job designated by the job deletion request is deleted from the storage device 46 (step S278), and this process is terminated. On the other hand, if it is not a job deletion request, this process ends.
[0115]
A case where it is determined in step S274 that the request is a job acquisition request will be described. The job management unit 205 locks the page of the job specified by the job acquisition request (step S281). When the lock time is specified in the job acquisition request, the lock is performed with the lock time. When the lock time is not specified, the lock is performed with the predetermined lock time.
[0116]
The job management unit 205 determines whether the page can be locked (step S282). If the page cannot be locked because the page is already locked, the response processing unit 203 notifies the printer 100 that has issued the job acquisition request that the page could not be locked (step S283). On the other hand, if the page can be locked, the response processing unit 203 notifies the printer 100 that has issued the job acquisition request of the page lock completion (step S284), and transmits (uploads) the locked page to the printer 100 ( Step S285).
[0117]
In the process shown in FIG. 15, when a job is specified by a job acquisition request, the job may be locked.
[0118]
Next, lock time control processing by the lock time control unit 207 of the storage 200 will be described. FIG. 16 is a flowchart for explaining an example of lock time control processing by the storage lock time control unit according to the first embodiment of the present invention. In FIG. 16, the lock time control unit 207 reads one job from the storage device 46 (step S251), and determines whether or not the job is locked (step S252). If the job is not locked, steps S257 to S262 are executed to control the lock time for each page.
[0119]
If the job is locked in step S252, it is determined whether a predetermined lock time has elapsed (step S253). If the predetermined lock time has not elapsed, the process proceeds to step S255. On the other hand, if the predetermined lock time has elapsed, the job j is unlocked (step S254).
[0120]
The lock time control unit 207 determines whether or not there is a job (step S255). If there is a job, the lock time control unit 207 retrieves the next job from the storage device 46, returns to step S252, and performs the same processing as described above.
[0121]
If the job is not locked in step S252, 1 is set to page p (step S257), and it is determined whether page p is locked (step S258). If not locked, the process proceeds to step S261. On the other hand, if it is locked, it is determined whether a predetermined lock time has elapsed (step S259). If the predetermined lock time has not elapsed, the process proceeds to step S261. If the predetermined lock time has elapsed, the page p is unlocked (step S260).
[0122]
The lock time control unit 207 determines whether or not there is a page (step S261). If there is still a page, 1 is added to the page p and the process returns to step S258, and the same processing as described above is performed for the next page p. I do. On the other hand, if there is no page, the process returns to step S255 to determine whether there is a next job. If it is determined in step S255 that there is no job, the lock time control process ends.
[0123]
When a job is locked by such a lock time control process, the lock time is controlled for each job. When a job is not locked but a page is locked, the lock time is set for each page. Can be controlled. Therefore, even if the printer 100 that locked the job or page cannot perform the printing process due to some trouble, the lock is released after a predetermined time in the storage 200, so the printing process is performed by another printer 100. Is possible.
[0124]
By locking the job in this way, the PC 300 only makes a print request to one printer 100, and it is not necessary to know the status of the plurality of printers 100, and one copy of the entire document is printed reliably. This can be done by one printer 100.
[0125]
In addition, by locking the page, the PC 300 only issues a print request to one printer 100, and it is not necessary to know the status of the plurality of printers 100. Can be printed.
[0126]
The job instruction information managed by the storage device 46 of the storage 200 and the job data composed of the management information and the document data have a structure as shown in FIG. 17, for example. FIG. 17 is a diagram illustrating 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.
[0127]
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. 18 is a diagram illustrating a script example of a print request transmitted from the PC. In FIG. From <bm: create_job xmlns: bm = "urn: schemas-bm: service: bm"> A description 400 indicated by </ 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.
[0128]
From <requesting-user-name> The description 402 indicated by </ request-user-name> indicates the user name “someone” who requested printing.
[0129]
From <job-instruction> A description 403 indicated by </ job-instruction> specifies a parameter related to the printing process. From <job-instruction-params> Specify the description 404 indicated by </ job-instruction-params> and the event during print processing to be notified. From <notification-instruction></notification-instruction>.
[0130]
In description 404, From <job-name> The description indicated by </ job-name> specifies a job name, for example, “sample-job”. From <optional-attributes-fidelity> The description indicated by </ optional-attributes-fidelity> is specified as “false”, for example. From <copies> The description indicated by </ copies> indicates the number of copies to be printed, for example, “1”.
[0131]
From <parallelprint enc: arrayType = "bm: parallelprint [1]"> A description 406 indicated by </ parallelprint> specifies, according to BMLinkS, a storage for storing job instruction information and document data and an auxiliary printer by an array “parallelprint [1]”. From <storageName uri = ”http://192.168.3.1”> The description indicated by </ storageName> indicates, for example, “storage # 1”, and specifies that job instruction information and document data are stored in the storage name “storage # 1”. In this case, it is assumed that the storage name of the storage 200 is “storage # 1”. From <printerName uri = ”http://192.168.2.2”> The description indicated by </ 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.” From <printerName uri = ”http://192.168.2.3”> The description indicated by </ 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”.
[0132]
From <finishings enc: arrayType = "bm: finishing [1]"> The description 407 indicated by </ finishings> specifies finishing after the printing process by the array “finishing [1]” in accordance with BMLinkS. From <finishing> The description indicated by </ finishing> specifies that the printed document is bound by “staple” as finishing.
[0133]
From <document-format> The description indicated by </ document-format> specifies the data format “image / tiff” of the document data.
[0134]
A description 405 designates a notification method of the print processing result and is referred to by the notification issuing unit 104. For example, From <notification-recipient> A description 408 up to </ notification-recipient> specifies the URI “http://192.168.2.1/event” of the main printer 100-1 as a notification destination. From <events enc: arrayType = "bm: Event [2]"> The description 409 up to </ events> indicates that two events are notified according to BMLinkS by the array “Event [2]”. From <event> It is specified by description up 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.
[0135]
A job save request script transmitted from the main printer 100-1 to the storage 200 in step S14 of FIG. 7 will be described. FIG. 19 is a diagram illustrating a script example of a job saving request transmitted from the main printer to the storage. In FIG. From <bm: create_file xmlns: bm = "urn: schemas-bm: service: bm"> A description 410 indicated by </ 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.
[0136]
In description 410, From <requesting-user-name> A description 412 indicated by </ request-user-name> indicates the registered user name “someone”. From <file-instruction> A description 413 indicated by </ file-instruction> specifies data storage conditions. From <file-instruction-params> A description 415 up to </ file-instruction-params> specifies a parameter value of the data storage condition. For example, From <file-name> For the description up to </ file-name>, specify the file name “sample-job”. Also, From <read-only> In the description up to </ read-only>, specify "true" indicating only reading.
[0137]
Further, in description 410, From <file-attribute> A description 414 indicated by </ file-attribute> specifies an attribute for printing a document. From <parallelprint enc: arrayType = "bm: parallelprint [1]"></parallelprint> indicates that the auxiliary printer is designated by an array “parallelprint [1]” according to BMLinkS, From <printerName> It is specified by the description up to </ printerName>. From <printerName uri = ”http://192.168.2.2”> The description indicated by </ 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.” From <printerName uri = ”http://192.168.2.3”> The description indicated by </ 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”.
[0138]
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 in FIG. 7 will be described. FIG. 20 is a diagram illustrating a script example of an auxiliary print request transmitted from the main printer to the auxiliary printer. In FIG. From <bm: create-job xmlns: bm = "urn: schemas-bm: service: bm"> A description 420 indicated by </ bm: create_job> indicates that the description is in XML according to BMLinkS. A description 421 indicating create_job indicates that a create_job command defined by BMLinkS has been issued.
[0139]
From <requesting-user-name> The description 422 indicated by </ request-user-name> indicates the user name “someone” who has requested printing.
[0140]
From <job-instruction> A description 423 indicated by </ job-instruction> specifies a parameter related to the printing process. From <job-instruction-params> Specify the description 424 indicated by </ job-instruction-params> and the event during print processing to be notified From <notification-instruction></notification-instruction>.
[0141]
In description 424, From <job-name> The description indicated by </ job-name> specifies the job name, From <job-name> The description indicated by </ job-name> specifies a job name, for example, “sample-job”. From <optional-attributes-fidelity> The description indicated by </ optional-attributes-fidelity> is specified as “false”, for example. From <copies> The description indicated by </ copies> indicates the number of copies to be printed, for example, “1”.
[0142]
From <finishings enc: arrayType = "bm: finishing [1]"> The description 426 indicated by </ finishings> specifies the finishing after the printing process by the array “finishing [1]” in accordance with BMLinkS. From <finishing> The description indicated by </ finishing> specifies that the printed document is bound by “staple” as finishing.
[0143]
From <document-format> The description indicated by </ document-format> specifies the data format “image / tiff” of the document data.
[0144]
In the description 427 regarding the job storage location, From <source-uri></source-uri> indicates the URI “http://192.168.2.1/sample-job” where the job is stored, From <source-file-id> The description indicated by </ source-file-id> indicates the file ID “001”.
[0145]
The description 425 designates a printing process result notification method and is referred to by the notification issuing unit 104 of each auxiliary printer 100-2 and 100-3. For example, From <notification-recipient> A description 408 up to </ notification-recipient> specifies the URI “http://192.168.1.1/event” of the main printer 100-1 as a notification destination. From <events enc: arrayType = "bm: Event [3]"> A description 429 up to </ events> indicates that the array “Event [3]” specifies that three events are notified in accordance with BMLinkS. From <event> It is specified by description up 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.
[0146]
A script for specifying only a page and locking the page in response to a job acquisition request transmitted from the auxiliary printer 100-2 to the storage 200 in step S46 of FIG. 8 will be described. FIG. 21 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. From <bm: file-attribute xmlns: bm = "urn: schemas-bm: service: bm"> A description 430 indicated by </ bm: file-attribute> indicates that the description is in XML according to BMLinkS. A description 431 indicating a file-attribute indicates that a file-attribute command specified by BMLinkS has been issued.
[0147]
In description 430, From <requesting-user-name> A description 432 indicated by </ requesting-user-name> indicates the registered user name “someone”. From <source-file-id> A description 433 indicated by </ source-file-id> indicates the file ID “001”. From <lock-page-id> A description 434 indicated by </ lock-page-id> indicates a page “001” to be locked.
[0148]
A script that locks a page by specifying a page and a lock period in response to a job acquisition request transmitted from the auxiliary printer 100-2 to the storage 200 in step S46 of FIG. FIG. 22 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. From <bm: file-attribute xmlns: bm = "urn: schemas-bm: service: bm"> A description 440 indicated by </ bm: file-attribute> indicates that the description is in XML according to BMLinkS. A description 441 indicating a file-attribute indicates that a file-attribute command specified by BMLinkS has been issued.
[0149]
In description 440, From <requesting-user-name> A description 442 indicated by </ requesting-user-name> indicates the registered user name “someone”. From <source-file-id> A description 433 indicated by </ source-file-id> indicates the file ID “001”. From <lock-page-id> A description 434 indicated by </ lock-page-id> indicates a page “001” to be locked. Furthermore, From <lock-expire-seconds> A description 455 indicated by </ lock-expire-seconds> specifies, for example, a lock period of “60” seconds. In this case, an end time may be designated.
[0150]
A script for page deletion request for deleting a printed page stored in the storage 200 in step S25 of FIG. 8 will be described. FIG. 23 is a diagram illustrating a script example of a page deletion request for deleting a printed page stored in the storage 200. In FIG. From <bm: delete_page xmlns: bm = "urn: schemas-bm: service: bm"> A description 450 indicated by </ 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.
[0151]
In description 450, From <requesting-user-name> A description 452 indicated by </ requesting-user-name> indicates the registered user name “someone”. From <file-id> A description 453 indicated by </ file-id> indicates the file ID “001”. From <page-id> A description 454 indicated by </ page-id> indicates the page “001” to be deleted.
[0152]
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.
[0153]
FIG. 24 is a diagram illustrating a network configuration example of the image forming system according to the second embodiment of the present invention. In the image forming system 1002 shown in FIG. 24, the storages 200-1 to 200-3 (hereinafter collectively referred to as the storage 200) are the hardware shown in FIG. 13 of the storage 200 of the image forming system 1001 according to the first embodiment. And a functional configuration shown in FIG. The printer 100 and the PC 300 are equivalent to the printer 100 and the PC 300 in the first embodiment.
[0154]
An image forming system 1002 shown in FIG. 24 includes a printer 100 that performs print processing, a plurality of storages 200-1 to 200-3 that store print 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.
[0155]
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.
[0156]
The outline of the processing flow in the image forming system 1002 will be described with reference to FIG.
[0157]
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.
[0158]
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.
[0159]
The printer 100 then issues a print request. Inside For 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.
[0160]
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.
[0161]
Next, processing performed by the control unit 105 that controls processing in the printer 100 will be described. FIG. 25 is a flowchart for explaining an example of processing in the printer according to the second embodiment of the present invention. In FIG. 25, the printer 100 determines whether a job is 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.
[0162]
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 printer 100 selects the first storage specified in the print request (in this case, the storage 100-1) (step S143).
[0163]
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.
[0164]
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 200-3, and the processing in the printer 100 is terminated (step S151).
[0165]
A print request script transmitted from the PC 300 to the main printer 100-1 in step S131 of FIG. 24 will be described. FIG. 26 is a diagram illustrating a script example of a print request in which a plurality of storages are specified. In FIG. From <bm: create_job xmlns: bm = "urn: schemas-bm: service: bm"> A description 460 indicated by </ 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.
[0166]
From <requesting-user-name> The description 462 indicated by </ request-user-name> indicates the user name “someone” who requested printing.
[0167]
From <job-instruction> A description 463 indicated by </ job-instruction> specifies a parameter relating to the printing process. From <job-instruction-params> Specify description 464 indicated by </ job-instruction-params> and event during print processing to be notified From <notification-instruction></notification-instruction>.
[0168]
In description 464, From <job-name> The description indicated by </ job-name> specifies a job name, for example, “sample-job”. From <optional-attributes-fidelity> The description indicated by </ optional-attributes-fidelity> is specified as “false”, for example. From <copies> The description indicated by </ copies> indicates the number of copies to be printed, for example, “1”.
[0169]
From <parallelprint enc: arrayType = "bm: parallelprint [1]"> A description 466 indicated by </ parallelprint> designates a plurality of storages for storing job instruction information and document data according to BMLinkS. From <storageName uri = ”http://192.168.3.1”> The description indicated by </ storageName> indicates, for example, “storage # 1”, and specifies that job instruction information and document data are stored in the storage name “storage # 1”. Also, From <storageName uri = ”http://192.168.3.2”> The description indicated by </ storageName> indicates, for example, “storage # 2”, and specifies that job instruction information and document data are stored in the storage name “storage # 2”. Furthermore, from storageName uri = ”http://192.168.3.3”> The description indicated by </ storageName> indicates, for example, “storage # 3”, and specifies that job instruction information and document data are stored in the storage name “storage # 3”. 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.
[0170]
From <finishings enc: arrayType = "bm: finishing [1]"> The description 467 indicated by </ finishings> specifies the finishing after the printing process by the array “finishing [1]” in accordance with BMLinkS. From <finishing> The description indicated by </ finishing> specifies that the printed document is bound by “staple” as finishing.
[0171]
From <document-format> The description indicated by </ document-format> specifies the data format “image / tiff” of the document data.
[0172]
The description 465 designates a notification method of the print processing result and is referred to by the notification issuing unit 104. For example, From <notification-recipient> The description 468 up to </ notification-recipient> specifies the URI “http://192.168.4.1/event” of the PC 300 as the notification destination. From <events enc: arrayType = "bm: Event [2]"></events> description 469 indicates that two events are notified according to BMLinkS by the array “Event [2]”. From <event> It is specified by description up 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.
[0173]
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. 24 will be described. FIG. 27 is a diagram illustrating a script example of a job saving request transmitted from the printer to a plurality of storages. In FIG. From <bm: create_file xmlns: bm = "urn: schemas-bm: service: bm"> A description 470 indicated by </ 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.
[0174]
In description 470, From <requesting-user-name> A description 472 indicated by </ request-user-name> indicates the registered user name “someone”. From <file-instruction> A description 473 indicated by </ file-instruction> specifies data storage conditions. From <file-instruction-params> The description 474 up to </ file-instruction-params> is composed of a description 475 indicating information about the file and a description 476 indicating a list of a plurality of storages as backups.
[0175]
In description 475, for example, From <file-name> For the description up to </ file-name>, specify the file name “sample-job”. Also, From <read-only> In the description up to </ read-only>, specify "true" indicating only reading.
[0176]
In the description 476, From <backup-uri></backup-uri> indicates three URIs “http://192.168.3.1/sample-job”, “http://192.168.3.2/” where job instruction information and document data are stored as backups. Specify “sample-job” and “http://192.168.3.3/sample-job”.
[0177]
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.
[0178]
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.
[0179]
FIG. 28 is a diagram showing a network configuration example of an image forming system according to the third embodiment of the present invention. In the image forming 1003 shown in FIG. 21, storages 200-1 to 200-3 (hereinafter collectively referred to as storage 200) are storages 200-1 to 200-3 of the image forming system 1001 according to the first embodiment. The hardware configuration shown in FIG. 13 is formed, and the functional configuration shown in FIG. 14 is formed. The printers 100-1 to 100-3 and the PC 300 are equivalent to the printers 100-1 to 100-3 and the PC 300 in the first embodiment.
[0180]
An image forming system 1003 illustrated in FIG. 28 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.
[0181]
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.
[0182]
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.
[0183]
The outline of the processing flow in the image forming system 1003 will be described with reference to FIG.
[0184]
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.
[0185]
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.
[0186]
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).
[0187]
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.
[0188]
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.
[0189]
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.
[0190]
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.
[0191]
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.
[0192]
【The invention's effect】
As described above, according to the present invention, the same image forming parameters and target data to be formed can be obtained only by transmitting an image forming request to one of the plurality of image forming apparatuses selected by the user. Based on the above, a plurality of image forming apparatuses can perform image forming processing. Therefore, even if a failure occurs in any of the plurality of image forming apparatuses selected by the user, the image forming process can be completed by another image forming apparatus. Further, it is not necessary to provide a dedicated server computer for controlling a plurality of image forming apparatuses.
[0193]
[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 showing a hardware configuration of a PC according to the first embodiment of the present invention.
FIG. 3 is a block diagram showing a functional configuration example of a PC according to the first embodiment of the present invention.
FIG. 4 is a flowchart for explaining an example of print processing by a PC according to the first embodiment of the present invention.
FIG. 5 is a block diagram illustrating a hardware configuration of the printer according to the first embodiment of the present invention.
FIG. 6 is a block diagram illustrating a functional configuration example of the printer according to the first embodiment of the invention.
FIG. 7 is a flowchart for explaining a processing example when a print request is received from the control unit of the printer according to the first embodiment of the present invention;
FIG. 8 is a flowchart for explaining a processing example when a print request is received from the control unit of the printer according to the first embodiment of the present invention;
FIG. 9 is a flowchart for explaining a processing example when an auxiliary printing request is received from the control unit of the printer according to the first embodiment of the present invention;
FIG. 10 is a flowchart for explaining a processing example when an auxiliary print request is received from the control unit of the printer according to the first embodiment of the invention.
FIG. 11 is a flowchart for explaining lock time control processing;
FIG. 12 is a flowchart for explaining lock result processing;
FIG. 13 is a block diagram showing a hardware configuration of a storage according to the first embodiment of the present invention.
FIG. 14 is a block diagram showing a functional configuration example of a storage according to the first embodiment of the present invention.
FIG. 15 is a flowchart for explaining a processing example of a storage job management unit according to the first embodiment of the present invention;
FIG. 16 is a flowchart for explaining an example of lock time control processing by a storage lock time control unit according to the first embodiment of the present invention;
FIG. 17 is a diagram illustrating a structure of job data.
FIG. 18 is a diagram illustrating a script example of a print request transmitted from a PC.
FIG. 19 is a diagram illustrating a script example of a job saving request transmitted from the main printer to the storage.
FIG. 20 is a diagram illustrating a script example of an auxiliary print request transmitted from the main printer to the auxiliary printer.
FIG. 21 is a diagram illustrating a first script example of page lock by a job acquisition request transmitted from the main printer to the storage.
FIG. 22 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. 23 is a diagram illustrating a script example of a page deletion request for deleting a printed page stored in the storage.
FIG. 24 is a diagram illustrating a network configuration example of an image forming system according to a second embodiment of the present invention.
FIG. 25 is a flowchart for explaining an example of processing in the printer according to the second embodiment of the present invention.
FIG. 26 is a diagram illustrating a script example of a print request in which a plurality of storages are specified.
FIG. 27 is a diagram illustrating a script example of a job saving request transmitted from the printer to a plurality of storages.
FIG. 28 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
200, 200-1, 200-2, 200-3 storage
201 Request processing part
203 Response processing unit
205 Job management department
207 Lock time controller
210 Network controller
300 PC
301 Service Search Department
302 Print request section
303 Notification processor
304 applications
309 installer
310 Network control unit

Claims (10)

情報処理装置からの画像形成要求を受信した第一画像形成装置が一以上の第二画像形成装置と保存装置とをネットワークを介して制御して画像形成処理を実行する画像形成システムにおいて、
上記情報処理装置が、
利用者によってネットワーク上に存在する上記第一画像形成装置と上記一以上の第二画像形成装置を選択させる選択手段と、
上記利用者によって選択された上記一以上の第二画像形成装置と上記保存装置とを指定した画像形成要求を生成する要求生成手段と、
上記選択手段によって選択された上記第一画像形成装置に上記画像形成要求と文書データとを送信する要求送信手段とを有し、
上記画像形成要求を送信した上記第一画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記保存装置に保存させて上記一以上の第二画像形成装置に補助印刷要求を送信させることによって、自身と該補助印刷要求に応じて上記保存装置から保存されている文書データを取得した上記一以上の第二画像形成装置とで該文書データに対して画像形成処理を行わせることを特徴とする画像形成システム。
In the image forming system in which the first image forming apparatus that has received the image forming request from the information processing apparatus controls the one or more second image forming apparatuses and the storage device via the network to execute the image forming process.
The information processing apparatus is
Selection means for allowing the user to select the first image forming apparatus and the one or more second image forming apparatuses existing on the network;
Request generation means for generating an image formation request designating the one or more second image forming apparatuses selected by the user and the storage apparatus;
Request transmission means for transmitting the image formation request and document data to the first image forming apparatus selected by the selection means;
The first image forming apparatus that has transmitted the image formation request generates job instruction information based on the image formation request, stores the job instruction information and the document data in the storage device, and the document by sending an auxiliary print request to the second image forming apparatus itself and with the auxiliary print request of the one or more acquired document data stored from the storage device in response to the second image forming apparatus An image forming system that performs an image forming process on data .
上記ネットワーク上に存在する処理可能な上記第一及び第二の画像形成装置を検索する検索手段を有することを特徴とする請求項1記載の画像形成システム。  2. The image forming system according to claim 1, further comprising search means for searching for the processable first and second image forming apparatuses existing on the network. 上記画像形成要求によって成された画像形成処理のイベントの通知を処理する通知処理手段を有することを特徴とする請求項1又は2記載の画像形成システム。  3. The image forming system according to claim 1, further comprising notification processing means for processing a notification of an image forming process event made by the image forming request. 上記ネットワークを介して上記複数の画像形成装置との間で共通に通信可能とする装置間インターフェースプロトコルに従って通信制御を行う通信制御手段を有することを特徴とする請求項1乃至3のいずれか一項記載の画像形成システム。  4. The communication control unit according to claim 1, further comprising a communication control unit configured to perform communication control according to an inter-device interface protocol that enables common communication with the plurality of image forming apparatuses via the network. The image forming system described. 上記通信制御手段は、パケットデータ転送プロトコルと、情報提供及び情報取得を実現するインターネット通信プロトコルと、メッセージ交換プロトコルと、上記装置間インターフェースプロトコルとによって通信プロトコル層を構成することを特徴とする請求項4記載の画像形成システム。  The communication control means comprises a communication protocol layer by a packet data transfer protocol, an internet communication protocol for realizing information provision and information acquisition, a message exchange protocol, and the inter-device interface protocol. 4. The image forming system according to 4. 情報処理装置からの画像形成要求を受信した画像形成装置が複数の保存装置をネットワークを介して制御して画像形成処理を実行する画像形成システムにおいて、
上記情報処理装置が、
利用者によってネットワーク上に存在する上記画像形成処理を行わせる画像形成装置を選択させる選択手段と、
画像形成パラメータと画像形成すべき対象データを保存すべき上記複数の保存装置を指定した上記画像形成処理を要求する画像形成要求を生成する要求生成手段と、
上記選択手段によって選択された上記画像形成装置に上記画像形成要求と文書データとを送信する要求送信手段とを有し、
上記画像形成要求を送信した上記画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記複数の保存装置に保存させて、画像形成する該文書データの次のページが取得できなかった場合には保存装置を切り替えることによって該複数の保存装置の以上を用いて画像形成処理を行わせることを特徴とする画像形成システム。
In an image forming system in which an image forming apparatus that has received an image forming request from an information processing apparatus controls a plurality of storage devices via a network and executes image forming processing.
The information processing apparatus is
A selection unit that allows the user to select an image forming apparatus that performs the image forming process on the network;
Request generation means for generating an image formation request for requesting the image formation processing designating the plurality of storage devices to store the image formation parameters and target data to be imaged;
Request transmission means for transmitting the image formation request and document data to the image forming apparatus selected by the selection means;
The image forming apparatus that has transmitted the image formation request generates job instruction information based on the image formation request, stores the job instruction information and the document data in the plurality of storage devices, and forms an image. An image forming system, wherein when a next page of the document data cannot be acquired, an image forming process is performed using two or more of the plurality of storage devices by switching storage devices.
情報処理装置からの画像形成要求を受信した第一画像形成装置が一以上の第二画像形成装置と複数の保存装置とをネットワークを介して制御して画像形成処理を実行する画像形成システムにおいて、
上記情報処理装置が、
利用者によってネットワーク上に存在する上記第一画像形成装置と上記一以上の第二画像形成装置を選択させる選択手段と、
上記利用者によって選択された上記一以上の第二画像形成装置と上記複数の保存装置とを指定した上記画像形成処理を要求する画像形成要求を生成する要求生成手段と、
上記選択手段によって選択された上記第一画像形成装置に上記画像形成要求と文書データとを送信する要求送信手段とを有し、
上記画像形成要求を送信した上記第一画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記複数の保存装置に保存させて上記一以上の第二画像形成装置に補助印刷要求を送信させることによって、自身と該補助印刷要求に応じて上記保存装置から保存されている文書データを取得した上記一以上の第二画像形成装置とで、画像形成する該文書データの次のページが取得できなかった場合には保存装置を切り替えることによって該複数の保存装置を用いて画像形成処理を分散させて行わせることを特徴とする画像形成システム。
In the image forming system in which the first image forming apparatus that has received the image forming request from the information processing apparatus controls one or more second image forming apparatuses and a plurality of storage devices via a network to execute image forming processing.
The information processing apparatus is
Selection means for allowing the user to select the first image forming apparatus and the one or more second image forming apparatuses existing on the network;
Request generation means for generating an image formation request for requesting the image formation processing specifying the one or more second image forming apparatuses selected by the user and the plurality of storage devices;
Request transmission means for transmitting the image formation request and document data to the first image forming apparatus selected by the selection means;
In the first image forming apparatus that has transmitted the image forming request, to generate job instruction information based on the image forming request, the one and the job instruction information and the document data by saving to the plurality of storage devices By causing the second image forming apparatus to transmit an auxiliary print request , the self and the one or more second image forming apparatuses that have acquired the document data stored from the storage apparatus in response to the auxiliary print request. When the next page of the document data to be image-formed cannot be acquired, the image forming processing is distributed and performed using the plurality of storage devices by switching the storage devices. .
情報処理装置からの画像形成要求を受信した第一画像形成装置が一以上の第二画像形成装置と保存装置とをネットワークを介して制御して画像形成処理を実行する画像形成システムにおける画像形成方法において、
上記情報処理装置が、
利用者によってネットワーク上に存在する上記第一画像形成装置と上記一以上の第二画像形成装置を選択させる選択手順と、
上記利用者によって選択された上記一以上の第二画像形成装置と上記保存装置と指定した画像形成要求を生成する要求生成手順と、
上記選択手順によって選択された上記第一画像形成装置に上記画像形成要求と文書データとを送信する要求送信手順とを実行させ、
上記画像形成要求を送信した上記第一画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記保存装置に保存させて上記一以上の第二画像形成装置に補助印刷要求を送信させることによって、自身と該補助印刷要求に応じて上記保存装置から保存されている文書データを取得した上記一以上の第二画像形成装置とで該文書データに対して保存装置を用いて画像形成処理を分散させて行わせることを特徴とする画像形成方法。
Image forming method in image forming system in which first image forming apparatus receiving image forming request from information processing apparatus controls one or more second image forming apparatuses and storage device via network to execute image forming process In
The information processing apparatus is
A selection procedure for causing the user to select the first image forming apparatus and the one or more second image forming apparatuses existing on the network;
A request generating procedure for generating the one or more second image forming apparatuses selected by the user and the storage apparatus and generating a designated image forming request;
Causing the first image forming apparatus selected by the selection procedure to execute a request transmission procedure for transmitting the image formation request and document data;
The first image forming apparatus that has transmitted the image formation request generates job instruction information based on the image formation request, stores the job instruction information and the document data in the storage device, and stores the one or more ones. the document by sending an auxiliary print request to the second image forming apparatus itself and with the auxiliary print request of the one or more acquired document data stored from the storage device in response to the second image forming apparatus An image forming method characterized in that image forming processing is distributed and performed on data using a storage device.
情報処理装置からの画像形成要求を受信した画像形成装置が複数の保存装置をネットワークを介して制御して画像形成処理を実行する画像形成システムにおける画像形成方法において、
上記情報処理装置が、
利用者によってネットワーク上に存在する上記画像形成処理を行わせる画像形成装置を選択させる選択手順と、
画像形成パラメータと画像形成すべき対象データを保存すべき上記複数の保存装置を指定した上記画像形成処理を要求する画像形成要求を生成する要求生成手順と、
上記選択手順によって選択された上記画像形成装置に上記画像形成要求と文書データとを送信する要求送信手順とを実行させ、
上記画像形成要求を送信した上記画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記複数の保存装置に保存させて、画像形成する該文書データの次のページが取得できなかった場合には保存装置を切り替えることによって該複数の保存装置の以上を用いて画像形成処理を行わせることを特徴とする画像形成方法。
An image forming method in an image forming system in which an image forming apparatus that has received an image forming request from an information processing apparatus controls a plurality of storage devices via a network and executes image forming processing.
The information processing apparatus is
A selection procedure for allowing the user to select an image forming apparatus that performs the image forming process on the network;
A request generation procedure for generating an image formation request for requesting the image formation processing specifying the plurality of storage devices to store the image formation parameters and target data to be imaged;
Causing the image forming apparatus selected by the selection procedure to execute a request transmission procedure for transmitting the image formation request and document data;
The image forming apparatus that has transmitted the image formation request generates job instruction information based on the image formation request, stores the job instruction information and the document data in the plurality of storage devices, and forms an image. An image forming method, wherein when a next page of the document data cannot be acquired, an image forming process is performed using two or more of the plurality of storage devices by switching storage devices.
情報処理装置からの画像形成要求を受信した第一画像形成装置が一以上の第二画像形成装置と複数の保存装置とをネットワークを介して制御して画像形成処理を実行する画像形成システムにおける画像形成方法において、
上記情報処理装置が、
利用者によってネットワーク上に存在する上記第一画像形成装置と上記一以上の第二画像形成装置を選択させる選択手順と、
上記利用者によって選択された上記一以上の第二画像形成装置と上記複数の保存装置とを指定した上記画像形成処理を要求する画像形成要求を生成する要求生成手順と、
上記選択手順によって選択された上記第一画像形成装置に上記画像形成要求と文書データとを送信する要求送信手順とを実行させ、
上記画像形成要求を送信した上記第一画像形成装置に、該画像形成要求に基づいてジョブ指示情報を生成させ、該ジョブ指示情報と上記文書データとを上記複数の保存装置に保存させて上記一以上の第二画像形成装置に補助印刷要求を送信させることによって、自身と該補助印刷要求に応じて上記保存装置から保存されている文書データを取得した上記一以上の第二画像形成装置とで、画像形成する該文書データの次のページが取得できなかった場合には保存装置を切り替えることによって該複数の保存装置を用いて画像形成処理を分散させて行わせることを特徴とする画像形成方法。
The image in the image forming system in which the first image forming apparatus that has received the image forming request from the information processing apparatus controls one or more second image forming apparatuses and a plurality of storage devices via the network to execute image forming processing In the forming method,
The information processing apparatus is
A selection procedure for causing the user to select the first image forming apparatus and the one or more second image forming apparatuses existing on the network;
A request generating procedure for generating an image forming request for requesting the image forming process designating the one or more second image forming apparatuses selected by the user and the plurality of storage devices;
Causing the first image forming apparatus selected by the selection procedure to execute a request transmission procedure for transmitting the image formation request and document data;
In the first image forming apparatus that has transmitted the image forming request, to generate job instruction information based on the image forming request, the one and the job instruction information and the document data by saving to the plurality of storage devices By causing the second image forming apparatus to transmit an auxiliary print request , the self and the one or more second image forming apparatuses that have acquired the document data stored from the storage apparatus in response to the auxiliary print request. An image forming method for performing distributed image forming processing using the plurality of storage devices by switching storage devices when the next page of the document data to be imaged cannot be acquired .
JP2003054204A 2003-02-28 2003-02-28 Image forming system and image forming method Expired - Fee Related JP4231306B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003054204A JP4231306B2 (en) 2003-02-28 2003-02-28 Image forming system and image forming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003054204A JP4231306B2 (en) 2003-02-28 2003-02-28 Image forming system and image forming method

Publications (2)

Publication Number Publication Date
JP2004265093A JP2004265093A (en) 2004-09-24
JP4231306B2 true JP4231306B2 (en) 2009-02-25

Family

ID=33118614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003054204A Expired - Fee Related JP4231306B2 (en) 2003-02-28 2003-02-28 Image forming system and image forming method

Country Status (1)

Country Link
JP (1) JP4231306B2 (en)

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5180676B2 (en) Image forming apparatus, control method thereof, and program thereof
JP4966097B2 (en) Information processing apparatus and information processing method
US9075627B2 (en) Server connected to image forming apparatus and client, client, and method of remotely installing driver of image forming apparatus
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
JP4810318B2 (en) Port monitor program, data processing method, information processing apparatus, and storage medium
US20130003115A1 (en) Pull-print system, print job management method, print server, control method therefor and computer-readable medium
JP5786439B2 (en) PRINT CONTROL DEVICE, PRINT CONTROL SYSTEM, PRINT CONTROL PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM
JP5571911B2 (en) Image processing apparatus, control method thereof, and program
JP2011095894A (en) Image processor, and control method concerning proxy printing processing in authentication pull-print system
JP4231306B2 (en) Image forming system and image forming method
JP2009214333A (en) Printer, print job management method, and print job management program
JP4180401B2 (en) Data storage device
JP2007149069A (en) Printing system and access control method thereof, information processing apparatus and control method thereof, and control program
JP4343554B2 (en) Distributed image forming apparatus
JP2014141058A (en) Image formation device, image formation system, control method for the same and program
JP2020057366A (en) Information processing system, information processing apparatus, server, information processing method, and program
JP2010157134A (en) Apparatus, method and system for information processing
JP2008182704A (en) System and method for cloning document processing device settings
JP4036221B2 (en) client
JP4110021B2 (en) Print processing program, information processing apparatus, information processing method, and storage medium for performing print processing with department management
JP2009141774A (en) Data processing apparatus, control method therefor, and computer program
JP4394406B2 (en) Information processing apparatus, distributed storage system, document processing method, document processing program, and recording medium
JP2004220098A (en) Image forming apparatus capable of reusing target data for image formation and its processing conditions
JP4378338B2 (en) Information processing apparatus, device setting method, storage medium, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081010

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: 20081111

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: 20081205

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: 20111212

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees