実施の形態1.
(構成の説明)
図1は、画像形成システム100の構成を示す概略図である。画像形成システム100は、画像形成装置としての複数のプリンタ110A、110B、110C、・・・、110D(特に各々を区別する必要がないときは、プリンタ110という)を備える。プリンタ110は、ネットワーク130に接続されており、ネットワーク130には、パーソナルコンピュータ(以下、PCという)150が接続されている。なお、図1の括弧内の符号は、実施の形態2における構成を示す。
図2は、プリンタ110の構成を概略的に示すブロック図である。プリンタ110は、印刷部111と、印刷データ管理部112と、印刷データ記憶部113と、印刷管理部114と、管理情報記憶部115と、印刷データ要求部116と、検索部117と、検索応答部118と、認証部119と、ユーザインタフェース部(以下、UIF部という)120と、処理データ記憶部121と、通信部122とを備える。なお、印刷データ記憶部113、管理情報記憶部115及び処理データ記憶部121により記憶部が構成される。
印刷部111は、PC150から送られてきた印刷データに含まれている印刷画像データのラスタライズ化を行い、ラスタライズ化された画像を印刷する。例えば、プリンタ110が電子写真方式を採用している場合、印刷部111は、感光ドラム上に静電潜像を形成し、その静電潜像にトナーを付着させてトナー像を形成し、このトナー像を記録紙に転写して、定着させることで印刷を行う。
ここで、実施の形態1における印刷データについて説明する。図3は、印刷データ170を示す概略図である。印刷データ170は、テキストデータより構成される制御データ170Aと、バイナリデータより構成される印刷画像データとしての実体データ170Bとにより構成される。図3に示されている制御データ170Aにおいて、左端の数字と、その隣のコロンの記号とは、説明のための行番号を示すために追加されたものであり、これらは、制御データ170Aには含まれない。制御データ170Aは、PJL(Printer Job Language:プリンタジョブ言語)の集合体であり、プレーンテキストで構成されている。制御データ170Aの各行は、行頭の「@PJL」の後に、変数名を記述し、さらに「=」により変数の内容を記述する。2行目から11行目までの「AUXJOBINFO DATA」と記述された変数は、拡張変数である。拡張変数の内容は、さらに変数名とその内容を含んでいる。図3では、制御データ170Aには、以下のような内容が記述されている。
1行目は、この印刷データ170を識別するための名称を表す「JOB Name」である。
2行目は、この印刷データ170を作成したPC150を識別するための名称を表す「ComputerName」の拡張変数である。
3行目は、この印刷データ170を作成したPC150の使用者名を表す「UserName」の拡張変数である。
4行目は、この印刷データ170を作成したPC150の使用者を識別するためのユーザIDを表す「UserID」の拡張変数である。
5行目は、この印刷データ170の作成日時を表す「Date」の拡張変数である。
6行目は、この印刷データ170の有効期限を表す「Life」の拡張変数である。
7行目は、この印刷データ170の元になった、PC150におけるファイルのファイル名を表す「DocumentName」の拡張変数である。
8行目は、この印刷データ170が印刷された場合に出力されるページ数を表す「Page」の拡張変数である。
9行目は、この印刷データ170を印刷するジョブのジョブIDを表す「JobID」の拡張変数である。この「JobID」の値は、PC150の固有情報と、PC150で生成される連番を組み合わせることにより生成され、印刷データ170において重複することはない。
10行目は、この印刷データ170を印刷する際に、認証が必要であるか否か、言い換えると、この印刷データ170が認証印刷データであるか否かを表す「Confidential」の拡張変数である。「Confidential」の値が「Yes」の場合には、認証が必要であり、「No」の場合には、認証が必要ないことを示す。
11行目は、この印刷データ170が要求する媒体の要求サイズを表す「MediaSize」の拡張変数である。
12行目は、この印刷データ170に含まれる実体データ170Bの言語を表す「LANGUAGE」である。
なお、本実施の形態においては、制御データ170Aがテキストデータ、実体データ170Bがバイナリデータで構成されているが、これに限定されるものではない。例えば、制御データ170Aがバイナリデータ、実体データ170Bがテキストデータで構成されていてもよい。また、本実施の形態においては、制御データ170Aが、印刷データ170を一意に識別するための印刷データ識別情報として機能する。
図2の説明に戻り、印刷データ管理部112は、印刷データ170の処理を行う。例えば、印刷データ管理部112は、通信部122を介して、PC150により送信された印刷データ170を取得する。次に、印刷データ管理部112は、取得された印刷データ170の制御データ170Aを参照して、その印刷データ170をすぐに印刷するべきか否かを判断する。例えば、印刷データ管理部112は、制御データ170Aの10行目に記述されている「Confidential」変数の値が「No」である場合には、すぐに印刷すべきと判断する。一方、この変数の値が「Yes」である場合には、印刷データ管理部112は、すぐに印刷すべきではないと判断する。そして、印刷データ管理部112は、印刷データ170をすぐに印刷すべきと判断した場合には、この印刷データ170を印刷部111に渡して、印刷させる。一方、印刷データ管理部112は、印刷データ170をすぐに印刷すべきではないと判断した場合には、この印刷データ170を印刷データ記憶部113に記憶させるとともに、印刷データ170から制御データ170Aを抽出する。印刷データ管理部112は、印刷データ170を記憶させる場合には、その印刷データ170に、その印刷データ170を識別するための識別情報としての名称を付与する。この名称は、自装置であるプリンタ110内で重複しないように付与される。例えば、この名称は、ファイル名として付与される。
印刷データ管理部112は、印刷データ170を印刷データ記憶部113に記憶させた場合には、印刷データ170が自装置に記憶されていることを示す情報を管理情報に登録させる処理を行う。例えば、印刷データ管理部112は、印刷データ170を印刷データ記憶部113に記憶させた場合には、記憶させた印刷データ170から抽出された制御データ170Aと、自装置であるプリンタ110の識別情報と、記憶させた印刷データ170の名称とを含む登録要求を生成する。そして、印刷データ管理部112は、自装置の管理情報記憶部115が有効となっている場合には、印刷管理部114に、この登録要求を与える。一方、印刷データ管理部112は、自装置の管理情報記憶部115が無効となっている場合には、通信部122を介して、管理情報記憶部115が有効となっているプリンタ110に、この登録要求を送信する処理を行う。なお、プリンタ110の識別情報は、ネットワーク130においてプリンタ110を一意に識別するための画像形成装置識別情報として機能する。
また、印刷データ管理部112は、自装置の印刷データ要求部116より印刷データ170の取得要求を受けた場合には、印刷データ記憶部113から要求された印刷データ170を読み出し、この印刷データ要求部116に与える。一方、印刷データ管理部112は、通信部122を介して、他のプリンタ110から、印刷データの取得要求を受けた場合には、印刷データ記憶部113から要求された印刷データ170を読み出し、この印刷データ170を、通信部122を介して、要求元の他のプリンタ110に送信する処理を行う。
さらにまた、印刷データ管理部112は、自装置又は他のプリンタ110から、印刷データ170の削除要求を受けた場合には、印刷データ記憶部113から要求された印刷データ170を削除する処理を行う。
印刷データ記憶部113は、印刷データ170を記憶する。
印刷管理部114は、管理情報記憶部115の管理を行う。例えば、印刷管理部114は、検索部117での検索結果に応じて、管理情報記憶部115を有効化するか又は無効化するかを判断する。そして、印刷管理部114は、この判断結果を設定情報として、処理データ記憶部121に記憶させる。ここで、印刷管理情報記憶部115が有効となっている場合には、自装置であるプリンタ110が、ネットワーク130に接続されている他のプリンタ110の印刷データ170を管理する第1モードになっている。一方、印刷管理情報記憶部115が無効となっている場合には、自装置であるプリンタ110が、ネットワーク130に接続されている他のプリンタ110により印刷データ170の管理を受ける第2モードになっている。
また、印刷管理部114は、印刷管理情報記憶部115に記憶されている管理情報の管理を行う。例えば、印刷管理部114は、印刷データ管理部112又は通信部122から登録要求を取得した場合には、登録要求に含まれている、制御データ170A、プリンタ110の識別情報及び印刷データ170の名称を、管理情報に格納する処理を行う。
さらに、印刷管理部114は、印刷データ要求部116又は通信部122から個別管理情報の取得要求を取得した場合には、管理情報記憶部115に記憶されている管理情報から、要求されたレコードだけを抽出することで、個別管理情報を生成する。そして、印刷管理部114は、印刷データ要求部116から個別管理情報の取得要求を取得した場合には、この個別管理情報を印刷データ要求部116に与える。一方、印刷管理部114は、通信部122から個別管理情報の取得要求を取得した場合には、通信部122を介して、要求元のプリンタ110に、この個別管理情報を送信する処理を行う。
さらにまた、印刷管理部114は、自装置又は他のプリンタ110から管理情報の削除要求があった場合には、管理情報を削除する処理を行う。
管理情報記憶部115は、印刷データ170を記憶しているプリンタ110を示す管理情報を記憶する。図4は、管理情報171の一例を示す概略図である。管理情報171は、制御データ欄171Aと、プリンタ識別情報欄171Bと、名称欄171Cとを有するテーブル形式の情報である。
制御データ欄171Aは、印刷データ170から抽出された制御データ170Aを格納する。
プリンタ識別情報欄171Bは、制御データ欄171Aに格納された制御データ170Aが抽出された印刷データ170を記憶するプリンタ110の識別情報を格納する。ここで、プリンタ110の識別情報としては、プリンタ名が使用される。なお、プリンタ110の識別情報は、IP(Internet Protocol)アドレス又はMAC(Media Access Control)アドレス等のようにネットワーク130上でプリンタ110を一意に識別できるものであればどのようなものであってもよい。
名称欄171Cは、制御データ欄171Aに格納された制御データ170Aが抽出された印刷データ170の名称を格納する。
図2の説明に戻り、印刷データ要求部116は、自装置の管理情報記憶部115が有効となっている場合には、自装置の印刷管理部114に、又は、自装置の管理情報記憶部115が無効となっている場合には、管理情報記憶部115が有効となっているプリンタ110に、個別管理情報の送信を要求する。そして、印刷データ要求部116は、要求の応答として取得された個別管理情報に基づいて、UIF部120を介して、利用者からの印刷指示を受け取る。印刷データ要求部116は、この印刷指示の対象となった印刷データ170が、自装置の印刷データ記憶部113に記憶されている場合には、印刷データ管理部112を介して、印刷データ記憶部113からこの印刷データ170を取得する。一方、印刷データ要求部116は、この印刷指示の対象となった印刷データ170が、他のプリンタ110の印刷データ記憶部113に記憶されている場合には、通信部122を介して、この他のプリンタ110から、この印刷データ170を取得する。そして、印刷データ要求部116は、取得された印刷データ170を印刷部111に与え、印刷部111に印刷を実行させる。
さらに、印刷データ要求部116は、印刷部111による印刷が完了した場合には、自装置の管理情報記憶部115が有効となっているときには、自装置の管理情報記憶部115に、又は、自装置の管理情報記憶部115が無効となっているときには、管理情報記憶部115が有効となっているプリンタ110に、印刷された印刷データ170に対応するレコードを管理情報171から削除するよう要求する。
検索部117は、ネットワーク130に接続されている他のプリンタ110があるか否かを検索する。例えば、検索部117は、通信部122を介して、検索データをマルチキャストで送信する処理を行い、通信部122が、この検索データに対する応答データを受信するか否かにより検索を実行する。そして、検索部117は、検索結果を印刷管理部114に通知する。また、検索部117は、他のプリンタ110が発見できた場合には、発見することのできた他のプリンタ110の中から、管理情報記憶部115が有効となっているプリンタ110を特定し、このプリンタ110の識別情報及び通信アドレス(例えば、IPアドレス)を有効情報として、処理データ記憶部121に記憶させる。さらに、検索部117は、他のプリンタ110が発見できた場合には、発見することのできた他のプリンタ110の識別情報及び通信アドレスを接続情報として、処理データ記憶部121に記憶させる。
検索応答部118は、通信部122が、ネットワーク130に接続されたプリンタ110からの検索データを受信した場合に、通信部122を介して、当該検索データに応答するための応答データを生成して、この応答データを送信する処理を行う。検索応答部118は、自装置であるプリンタ110の識別情報と、自装置の管理情報記憶部115が有効となっているか又は無効となっているかとを、応答データに含める。また、検索応答部118は、通信部122が、PC150からの検索データを受信した場合にも、当該検索データへの応答データを生成して、通信部122を介して、この応答データを送信する処理を行う。さらに、検索応答部118は、他のプリンタ110から検索データが送信されてきた場合には、検索データを送信してきた他のプリンタ110の識別情報及び通信アドレスを接続情報として、処理データ記憶部121に記憶させる。
認証部119は、プリンタ110の利用者の認証を行う。例えば、認証部119は、ICカードの内容を読み取るICカードリーダを備える。そして、認証部119は、ICカードから利用者のID情報を読み取り、当該ID情報の認証を行う。認証部119は、認証が成功した場合には、印刷データ要求部116に、認証が成功した利用者のID情報を与える。なお、このID情報は、利用者に固有のID情報であり、利用者を一意に識別するための利用者識別情報として機能する。そして、利用者が同じであれば、ID情報で示される値は、制御データ170A(図3参照)に含まれる拡張変数「UserID」の値と同じになる。制御データ170Aにおける「UserID」の値は、例えば、利用者がPC150にログインする際に、この利用者が保有するICカードを利用したログイン認証を行うことにより取得される。
UIF部120は、プリンタ110と利用者との間のインタフェースとして機能する。UIF部120は、例えば、ディスプレイとキーの組み合わせ、又は、タッチパネルディスプレイ等のように、利用者への出力部と利用者からの入力部とを備える。
処理データ記憶部121は、自装置の管理情報記憶部115が有効となっているか又は無効となっているかを示す設定情報を記憶する。また、処理データ記憶部121は、管理情報記憶部115が有効となっているプリンタ110の識別情報及び通信アドレスを示す有効情報を記憶する。さらに、処理データ記憶部121は、ネットワーク130に接続されている他のプリンタ110の識別情報及び通信アドレスを示す接続情報を記憶する。
通信部122は、ネットワーク130との間の通信を実行する。
以上に記載された、印刷データ管理部112、印刷管理部114、印刷データ要求部116、検索部117、検索応答部118、及び、認証部119の一部は、図示してはいないが、CPU(Central Processing Unit)が、ハードディスクドライブ及びROM(Read Only Memory)等の記憶装置からプログラムを読み出し、実行することにより実現することができる。
また、印刷データ記憶部113、管理情報記憶部115及び処理データ記憶部121は、揮発性メモリ、フラッシュメモリ等の不揮発性メモリ及びハードディスクドライブ等の記憶装置により実現することができる。
さらに、通信部122は、NIC(Network Interface Card)により実現することができる。
PC150は、印刷データ作成部151と、プリンタ検索部152と、UIF部153と、通信部154とを備える。
印刷データ作成部151は、印刷データ170を作成する。例えば、印刷データ作成部151は、アプリケーション等を利用して、印刷データ170を作成する。印刷データ170には、図3に示されているような制御データ170Aが含まれている。制御データ170Aは、利用者からの指示又は選択により決定されるものと、利用者の指示及び選択によらずに決定されるものがある。さらに、印刷データ作成部151は、通信部154を介して、作成された印刷データ170を、プリンタ検索部152で検索されたプリンタ110に送信する処理を行う。
プリンタ検索部152は、ネットワーク130に接続されたプリンタ110を検索するネットワーク検索部として機能する。例えば、プリンタ検索部152は、通信部154を介して、検索データをマルチキャストで送信する処理を行い、通信部154が、この検索データに対する応答データを受信するか否かにより検索を実行する。そして、プリンタ検索部152は、検索により複数のプリンタ110が発見された場合には、発見された複数のプリンタ110から、印刷データ170を送信する1つのプリンタ110を選択する。プリンタ検索部152は、検索又は選択されたプリンタ110の識別情報及び通信アドレスを印刷データ作成部151に与える。
UIF部153は、PC150と利用者との間のインタフェースとして機能する。UIF部153は、例えば、ディスプレイとキーの組み合わせ、又は、タッチパネルディスプレイ等のように、利用者への出力部と利用者からの入力部とを備える。
通信部154は、ネットワーク130との間の通信を実行する。
以上に記載された、印刷データ作成部151、プリンタ検索部152は、図示してはいないが、CPUがハードディスクドライブ及びROM等の記憶装置からプログラムを読み出し、実行することにより実現することができる。また、通信部154は、NICにより実現することができる。
(動作の説明)
次に、本発明の実施の形態1の動作について説明する。以下の説明におけるシーケンス図では、図5に示されているように、プリンタ110A、プリンタ110B及びプリンタ110Cにより画像形成システム100が構成されており、これらのプリンタ110A、110B、110Cは、ネットワーク130に接続されているものとする。また、ネットワーク130には、PC150も接続されているものとする。
プリンタ110A、プリンタ110B及びプリンタ110Cの構成は、図2に示されている構成と同様であるが、図5では、それぞれの構成を区別するために、プリンタ110Aの構成には「A」の符号が付されており、プリンタ110Bの構成には「B」の符号が付されており、プリンタ110Cの構成には「C」の符号が付されている。なお、プリンタ110A、プリンタ110B及びプリンタ110Cの識別情報は、それぞれ、「プリンタA」、「プリンタB」及び「プリンタC」である。
図6は、プリンタ110が他のプリンタ110を検索する際の処理を示すフローチャートである。このフローは、例えば、プリンタ110の電源が投入されて、ネットワーク130への接続が確立された直後に開始される。
まず、プリンタ110の検索部117は、ネットワーク130に接続された他のプリンタ110を検索する(S10)。例えば、検索部117は、検索データを生成し、通信部122を介して、この検索データをネットワーク130に対しブロードキャストで送信し、他のプリンタ110からの応答を所定時間待つ。
図7は、検索データ172の一例を示す概略図である。検索データ172は、検索を実行するプリンタ110の識別情報(「Name」)を少なくとも含んでいる。その他、検索データ172は、検索を実行するプリンタ110の機種情報(「Type」)及び印刷部111の機能を示す情報(「Color/Mono」及び「Media Size」)を含んでいる。
図6の説明に戻り、検索部117は、他のプリンタ110から応答があったか否かを確認する(S11)。例えば、検索部117は、通信部122が応答データを受信したか否かを確認する。そして、検索部117は、応答があった場合(S11:Yes)には、ステップS12の処理に進み、応答がなかった場合(S11:No)には、ステップS13の処理に進む。
ステップS12では、検索部117は、他のプリンタ110が発見されたことを示す検索結果を印刷管理部114に通知する。ここで、検索結果は、発見された他のプリンタ110の識別情報のリストとして、印刷管理部114に通知される。このリストには、発見された他のプリンタ110の識別情報の他に、応答を受け取った時刻、発見された他のプリンタ110において管理情報記憶部115が有効となっているか否か、及び、発見された他のプリンタ110の印刷データ記憶部113の空き容量等が含まれていることが望ましい。また、検索部117は、通信部122から受け取った応答データを解析して、管理情報記憶部115が有効となっているプリンタ110の識別情報と、当該プリンタ110の通信アドレスとを、有効情報として、処理データ記憶部121に記憶させる。また、このような検索結果の通知を受けた印刷管理部114は、管理情報記憶部115が無効であることを示す設定情報を処理データ記憶部121に記憶させる。さらに、印刷管理部114は、応答してきた他のプリンタ110の識別情報及び通信アドレスを接続情報として、処理データ記憶部121に記憶させる。
ステップS13では、検索部117は、他のプリンタ110が発見されなかったことを示す検索結果を印刷管理部114に通知する。このような検索結果の通知を受けた印刷管理部114は、管理情報記憶部115に記憶されている管理情報の初期化を行い。さらに、印刷管理部114は、管理情報記憶部115が有効であることを示す設定情報を処理データ記憶部121に記憶させる。
図6で示されているフローでは、他のプリンタ110を発見できなかった場合に、検索を実行したプリンタ110の管理情報記憶部115が有効となる。一方、他のプリンタ110を検索できた場合は、検索を実行したプリンタ110の管理情報記憶部115が無効となる。そのため、最初にネットワーク130に接続されたプリンタ110だけが有効な管理情報を有することとなる。
図8は、プリンタ110の検索応答部118が、他のプリンタ110からの検索データ172に応答する際の処理を示すフローチャートである。このフローは、検索応答部118が、通信部122を介して、他のプリンタ110から送信された検索データ172を受け取ることにより開始される。
まず、プリンタ110の検索応答部118は、処理データ記憶部121に記憶されている設定情報を参照することで、自装置の管理情報記憶部115が有効となっているか否かを確認する(S20)。そして、検索応答部118は、自装置の管理情報記憶部115が有効となっている場合(S20:Yes)には、ステップS21の処理に進み、自装置の管理情報記憶部115が無効となっている場合(S20:No)には、ステップS22の処理に進む。
ステップS21では、検索応答部118は、検索データ172に対する応答データを生成する。ここでは、自装置の管理情報記憶部115が有効となっているので、応答データには、自装置の管理情報記憶部115が有効となっていることを示す情報、及び、自装置であるプリンタ110の識別情報が含まれる。
ステップS22では、検索応答部118は、検索データ172に対する応答データを生成する。ここでは、自装置の管理情報記憶部115が無効となっているので、応答データには、自装置の管理情報記憶部115が無効となっていることを示す情報、及び、自装置であるプリンタ110の識別情報が含まれる。
次に、検索応答部118は、通信部122を介して、ステップS21又はS22で生成された応答データを、検索データ172の送信元である他のプリンタ110に返信する処理を行う(S23)。なお、検索応答部118は、検索データ172の送信元である他のプリンタ110の識別情報及び通信アドレスを接続情報として、処理データ記憶部121に記憶させる。
図9(A)及び(B)は、応答データ173A、173Bの一例を示す概略図である。図9(A)は、自装置の管理情報記憶部115が有効となっていることを示す情報を含む応答データ173Aの一例を示す。応答データ173Aは、「Control Data Table」の値を「Yes」とすることにより、管理情報記憶部115が有効となっていることを示す。図9(B)は、自装置の管理情報記憶部115が無効となっていることを示す情報を含む応答データ173Bの一例を示す。応答データ173Bは、「Control Data Table」の値を「No」とすることにより、管理情報記憶部115が無効となっていることを示す。なお、応答データ173A、173Bに含まれている、「Capacity」の値は、自装置の印刷データ記憶部113の空き容量を示している。
図10は、プリンタ110A、110B、110Cの起動時の処理を示すシーケンス図である。図10においては、図5に示されているプリンタ110A、プリンタ110B及びプリンタ110Cが、この順番で起動した場合に、どのような動作によりプリンタ110の検索、及び、管理情報記憶部115の有効化又は無効化が行われるのかを説明する。
まず、プリンタ110Aが起動する(S30)。次に、プリンタ110Aの検索部117Aが、ネットワーク130に接続された他のプリンタ110を検索するため検索データ172を生成して(S31)、通信部122Aを介して、この検索データ172をブロードキャストで送信する処理を行う(S32、S33)。
ここで、プリンタ110B及びプリンタ110Cは、未だ起動していないため、プリンタ110Aは、他のプリンタ110から応答データ173A、173Bを受信しない。このため、プリンタ110Aの検索部117Aは、他のプリンタ110が発見できなかったことを示す検索結果を、印刷管理部114Aに通知する。このような通知を受けた印刷管理部114Aは、プリンタ110Aの管理情報記憶部115Aを有効化し、管理情報を作成する(S34)。
次に、プリンタ110Bが起動する(S35)。そして、プリンタ110Bの検索部117Bが、ネットワーク130に接続された他のプリンタ110を検索するため検索データ172を生成して(S36)、通信部122Bを介して、検索データ172をブロードキャストで送信する処理を行う(S37、S38)。
このとき、プリンタ110Cは、未だ起動していないため、検索データ172への応答は行わない。一方、プリンタ110Aは、既に起動しているため、検索応答部118Aは、応答データ173Aを作成する(S39)。このとき、検索応答部118Aは、応答データ173Aに、管理情報記憶部115Aが有効であることを示す情報を含める(図9(A)参照)。なお、検索応答部118Aは、プリンタ110Bの識別情報及び通信アドレスを接続情報として、処理データ記憶部121Aに記憶させる。そして、検索応答部118Aは、作成された応答データ173Aを、通信部122Aを介して、プリンタ110Bに返信する処理を行う(S40)。
応答データ173Aを受信したプリンタ110Bでは、検索部117Bが、他のプリンタ110が発見できたことを示す検索結果を印刷管理部114Bに通知する。また、検索部117Bは、応答データ173Aを参照して、プリンタ110Aの識別情報及び通信アドレスを、有効情報として、処理データ記憶部121Bに記憶させる(S41)。また、印刷管理部114Bは、管理情報記憶部115Bが無効であることを示す設定情報を処理データ記憶部121Bに記憶させる。さらに、検索部117Bは、プリンタ110Aの識別情報及び通信アドレスを接続情報として、処理データ記憶部121Bに記憶させる。
次に、プリンタ110Cが起動する(S42)。そして、プリンタ110Cの検索部117Cは、ネットワーク130に接続された他のプリンタ110を検索するため、検索データ172を生成して(S43)、通信部122Cを介して、この検索データ172をブロードキャストで送信する処理を行う(S44、S45)。
検索データ172を受信したプリンタ110Aでは、検索応答部118Aが、応答データ173Aを作成する(S46)。このとき、検索応答部118Aは、応答データ173Aに、管理情報記憶部115Aが有効であることを示す情報を含める(図9(A)参照)。さらに、検索応答部118Aは、プリンタ110Cの識別情報及び通信アドレスを接続情報として、処理データ記憶部121Aに記憶させる。そして、検索応答部118Aは、作成された応答データ173Aを、通信部122Aを介して、プリンタ110Cに返信する処理を行う(S47)。
また、検索データ172を受信したプリンタ110Bでは、検索応答部118Bが、応答データ173Bを作成する(S48)。このとき、検索応答部118Bは、応答データ173Bに、管理情報記憶部115Bが無効であることを示す情報を含める(図9(B)参照)。さらに、検索応答部118Bは、プリンタ110Cの識別情報及び通信アドレスを接続情報として、処理データ記憶部121Bに記憶させる。そして、検索応答部118Bは、作成された応答データ173Bを、通信部122Bを介して、プリンタ110Cに返信する処理を行う(S49)。
応答データ173A、173Bを受信したプリンタ110Cでは、検索部117Cが、他のプリンタ110が発見されたことを示す検索結果を印刷管理部114Cに通知する。また、検索部117Cは、応答データ173Aを参照して、プリンタ110Aの識別情報及び通信アドレスを、有効情報として、処理データ記憶部121Cに記憶させる(S50)。また、印刷管理部114Cは、管理情報記憶部115Cが無効であることを示す設定情報を処理データ記憶部121Cに記憶させる。さらに、検索部117Cは、プリンタ110A、110Bの識別情報及び通信アドレスを接続情報として、処理データ記憶部121Cに記憶させる。
以上のように、ネットワーク130に接続されたプリンタ110A、110B、110Cは、起動後に他のプリンタ110を検索する。また、管理情報記憶部115Aが有効となっているプリンタ110Aが、一台だけ特定される。
図11は、プリンタ110が、印刷データ170を受信した場合の処理を示すフローチャートである。このフローは、プリンタ110の通信部122が、PC150から送信された印刷データ170を受信した際に開始される。
プリンタ110の印刷データ管理部112は、通信部122より、ネットワーク130を介して送信されてきた印刷データ170を受け取とり(S60)、その印刷データ170から制御データ170Aを取り出す(S61)。
次に、印刷データ管理部112は、ステップS61で取り出された制御データ170Aを調査し、受信された印刷データ170が、認証を必要とする認証印刷データであるか否かを判断する(S62)。例えば、印刷データ管理部112は、制御データ170Aの拡張変数である「Confidential」の値を確認する。印刷データ管理部112は、この値が「Yes」である場合には、受信された印刷データ170が認証印刷データであると判断し、この値が「No」である場合には、受信された印刷データ170が認証印刷データではないと判断する。そして、印刷データ管理部112は、認証印刷データであると判断した場合(S62:Yes)には、ステップS63の処理に進み、認証印刷データではないと判断した場合(S62:No)には、ステップS66の処理に進む。
ステップS63では、印刷データ管理部112は、印刷データ170に自装置内で一意となる名称を与える。また、印刷データ管理部112は、ステップS61で取り出された制御データ170Aを登録する処理を行う。例えば、印刷データ管理部112は、ステップS63で取り出した制御データ170A、この制御データ170Aが取り出された印刷データ170の名称、及び、自装置であるプリンタ110の識別情報を含む登録要求を生成する。そして、印刷データ管理部112は、処理データ記憶部121に記憶されている設定情報が、管理情報記憶部115が有効であることを示す場合には、この登録要求を印刷管理部114に与える。一方、印刷データ管理部112は、処理データ記憶部121に記憶されている設定情報が、管理情報記憶部115が無効であることを示す場合には、通信部122を介して、処理データ記憶部121に記憶されている有効情報で示される他のプリンタ110に、この登録要求を送信する処理を行う。登録要求を受信したプリンタ110では、印刷管理部114が、通信部122からこの登録要求を受け取る。このような登録要求を受け取った印刷管理部114は、登録要求に含まれている情報を、管理情報記憶部115に記憶されている管理情報171に格納する。
そして、印刷データ管理部112は、印刷管理部114又は通信部122から、登録完了通知を取得した場合(S64:Yes)には、ステップS60で取得された印刷データ170を印刷データ記憶部113に記憶させる(S65)。
一方、印刷データ管理部112は、ステップS62において、ステップS60で取得された印刷データ170が認証印刷データではないと判断した場合(S62:No)には、ステップS66の処理に進む。ステップS66では、印刷データ管理部112は、この印刷データ170を印刷部111に送り、印刷部111に印刷を実行させる。
以上のように、プリンタ110の印刷データ管理部112は、受信した印刷データ170の制御データ170Aを参照し、すぐに印刷するデータなのか、認証を必要とする認証印刷データなのかを判断する。さらに、印刷データ管理部112は、認証が必要な場合には、制御データ170A、印刷データ170の名称及び自装置の識別情報を、管理情報記憶部115が有効なプリンタ110の印刷管理部114に与えて、印刷データ170の登録を行う。
図12は、プリンタ110の印刷管理部114が、登録要求を受け取った場合の処理を示すフローチャートである。このフローは、自装置の印刷データ管理部112が登録要求を印刷管理部114に送った場合、又は、通信部122が登録要求を受信した場合に、開始される。
まず、印刷管理部114が、印刷データ管理部112又は通信部122より登録要求を取得すると(S70)、印刷管理部114は、管理情報記憶部115に記憶されている管理情報171に、受信した登録要求に含まれている、制御データ170Aと、プリンタ110の識別情報と、印刷データ170の名称とを対応付けて格納することで、管理情報171を更新する(S71)。
そして、印刷管理部114は、登録完了通知を行う(S72)。例えば、印刷管理部114は、自装置の印刷データ管理部112から登録要求を取得した場合には、自装置の印刷データ管理部112に登録完了通知を与える。また、印刷管理部114は、通信部122から登録要求を取得した場合には、通信部122を介して、登録要求の送信元であるプリンタ110に、登録完了通知を送信する処理を行う。
図13は、プリンタ110が、認証印刷データに基づいて印刷を行う際の処理を示すフローチャートである。このフローは、例えば、プリンタ110のUIF部120が、利用者より印刷指示の入力を受けた場合に開始される。
まず、プリンタ110の認証部119は、利用者の認証を実行する(S80)。例えば、認証部119は、ICカードから利用者の認証情報であるID情報を取得できるか否かで認証を行う。また、認証部119は、ICカードから利用者のID情報を取得し、例えば、処理データ記憶部121に記憶されている利用者IDテーブル等の参照情報に登録されている値と比較して、ID情報で示される値が参照情報に登録されているか否かで認証を行う。また、認証部119は、ICカードから利用者のID情報とパスワードとを取得し、図示しない外部の認証サーバ(LDAP(Lightweight Directory Access Protocol)サーバ等)でこれらの情報の検証を受けることで、認証を行う。ステップS80での認証により、印刷管理部114は、利用者のID情報を取得する。
次に、認証部119は、利用者の認証に成功したか否かを判断する(S81)。そして、認証部119は、認証に成功した場合(S81:Yes)には、ステップS82の処理に進み、認証に失敗した場合(S81:No)には、ステップS95の処理に進む。
ステップS82では、印刷データ要求部116は、認証に成功した利用者のID情報を認証部119から取得し、このID情報に対応する個別管理情報の取得を要求する処理を行う(S82)。例えば、印刷データ要求部116は、ID情報を含む個別管理情報取得要求を生成する。そして、印刷データ要求部116は、管理情報記憶部115が有効となっていることを設定情報が示す場合には、この個別管理情報取得要求を印刷管理部114に与える。一方、印刷データ要求部116は、管理情報記憶部115が無効となっていることを設定情報が示す場合には、通信部122を介して、処理データ記憶部121に記憶されている有効情報で示されるプリンタ110に、この個別管理情報取得要求を送信する処理を行う。
次に、印刷データ要求部116は、印刷管理部114又は通信部122から、ステップS82で送信した個別管理情報取得要求に対する応答を取得する(S83)。この応答には、ステップS82で送信した個別管理情報取得要求に含まれているID情報に対応する印刷データ170がある場合には、その制御データ170A、プリンタ110の識別情報及び印刷データ170の名称を含む個別管理情報が含まれる。一方、そのような印刷データ170がない場合には、この応答には、このような個別管理情報は含まれない。なお、ID情報に対応する印刷データ170があるか否かは、制御データ170Aの拡張変数である「UserName」の値で判断される。
そして、印刷データ要求部116は、ステップS82で送信した個別管理情報取得要求に含まれているID情報に対応する印刷データ170があるか否かを判断する(S84)。例えば、印刷データ要求部116は、ステップS83で取得した応答に、個別管理情報が含まれている場合には、このような印刷データ170があると判断し、個別管理情報が含まれていない場合には、このような印刷データ170がないと判断する。そして、印刷データ要求部116は、印刷データ170があると判断した場合(S84:Yes)には、ステップS85の処理に進み、印刷データ170がないと判断した場合(S84:No)には、ステップS96の処理に進む。
ステップS85では、印刷データ要求部116は、ステップS83で取得した個別管理情報に基づいて、処理対象とする印刷データを選択するための印刷データ選択画面データを生成する。そして、印刷データ要求部116は、この印刷データ選択画面データをUIF部120に送り、UIF部120に印刷データ選択画面を表示させる。ここで、この印刷データ選択画面には、ステップS80で認証に成功した利用者が、何れかのプリンタ110に送信し、未だ印刷されていない全ての印刷データ170を特定する情報が表示される。また、印刷データ170を特定する情報には、例えば、制御データ170Aに含まれている、少なくとも1つの変数の値が含まれるのが望ましい。
図14は、印刷データ選択画面174の一例を示す概略図である。印刷データ選択画面174は、印刷データ選択領域174Aと、印刷指示領域174Bと、削除指示領域174Cと、Cancel指示領域174Dとを備える。
印刷データ選択領域174Aは、印刷データ170の選択の入力を受け付ける。例えば、印刷データ選択領域174Aには、ステップS83で取得された個別管理情報に含まれている制御データ170Aの拡張変数である「DocumentName」の値(文書名)と、拡張変数「Data」の値の一部(日付)と、拡張変数「Page」の値(ページ数)とが表示されており、これらの値により、印刷データ170が特定される。なお、印刷データ選択領域174Aに表示しきれない印刷データ170については、スクロールバー174Eを下方に移動させることにより、表示させることができる。
図13の説明に戻り、印刷データ要求部116は、印刷データ選択画面174を介して、利用者より、処理指示の入力を受け付ける(S86)。例えば、印刷データ要求部116は、印刷データ選択領域174Aにおいて、対象となる1以上の印刷データ170が選択され、印刷指示領域174Bを選択した実行指示の入力を受け付けた場合(図13のS86)には、図13のステップS87の処理に進む。また、印刷データ要求部116は、印刷データ選択領域174Aにおいて、対象となる1以上の印刷データ170が選択され、削除指示領域174Cを選択した実行指示の入力を受け付けた場合(図13のS86)には、図13のステップS92の処理に進む。さらに、印刷データ要求部116は、Cancel指示領域174Dを選択した実行指示の入力を受け付けた場合(図13のS86)には、印刷データ選択領域174Aにおける選択の有無を問わずに、図13での処理を終了する。なお、印刷データ要求部116は、一定時間指示の入力が行われない場合には、キャンセル指示の入力が行われたと判断して、図13での処理を終了してもよい。
ステップS87では、印刷データ要求部116は、利用者に選択された印刷データ170の取得を要求する処理を行う。例えば、印刷データ要求部116は、選択された印刷データ170に対応する個別管理情報に含まれている制御データ170Aを含む印刷データ取得要求を生成する。そして、印刷データ要求部116は、個別管理情報を参照して、選択された印刷データ170を記憶するプリンタ110が自装置である場合には、印刷データ管理部112に対して、この印刷データ取得要求を与える。一方、印刷データ要求部116は、個別管理情報を参照して、選択された印刷データ170を記憶するプリンタ110が自装置ではない場合には、この印刷データ170を記憶しているプリンタ110の識別情報が他のプリンタ110を示すものである場合には、通信部122を介して、この他のプリンタ110にこの印刷データ取得要求を送信する処理を行う。なお、印刷データ170を記憶しているプリンタ110の通信アドレスは、処理データ記憶部121に記憶されている接続情報から特定される。
次に、印刷データ要求部116は、印刷データ管理部112又は通信部122より、印刷データ170を取得する(S88)。そして、印刷データ要求部116は、ステップS88で取得された印刷データ170を印刷部111に送る。印刷部111は、印刷データ170に基づき印刷を行う(S89)。
次に、印刷データ要求部116は、ステップS89で印刷された印刷データ170に対応する情報を管理情報171から削除させるために、管理情報171の更新要求を行う(S90)。例えば、印刷データ要求部116は、ステップS89で印刷された印刷データ170に対応する制御データ170Aを含む削除更新要求を生成する。そして、印刷データ要求部116は、管理情報記憶部115が有効となっていることを設定情報が示す場合には、この削除更新要求を印刷管理部114に与える。一方、印刷データ要求部116は、管理情報記憶部115が無効となっていることを設定情報が示す場合には、通信部122を介して、管理情報記憶部115が有効となっているプリンタ110に対して、この削除更新要求を送信する処理を行う。なお、管理情報記憶部115が有効となっているプリンタ110の通信アドレスは、処理データ記憶部121に記憶されている有効情報で特定される。
そして、印刷データ要求部116は、印刷管理部114又は通信部122から、ステップS90の削除更新要求に対する削除完了通知があった場合(S91:Yes)には、処理を終了する。
一方、印刷データ要求部116は、ステップS86で入力を受け付けた指示が削除指示である場合には、ステップS92の処理に進む。ステップS92では、印刷データ要求部116は、印刷データの削除要求を行う。例えば、印刷データ要求部116は、個別管理情報を参照して、選択された印刷データ170の制御データ170Aを含む印刷データ削除要求を生成する。そして、印刷データ要求部116は、個別管理情報を参照して、選択された印刷データ170を記憶しているプリンタ110が自装置である場合には、この印刷データ削除要求を、印刷データ管理部112に与える。一方、印刷データ要求部116は、選択された印刷データ170を記憶しているプリンタ110が自装置ではない場合には、通信部122を介して、この印刷データ170を記憶しているプリンタ110に、この印刷データ削除要求を送信する処理を行う。なお、印刷データ170を記憶しているプリンタ110の通信アドレスは、処理データ記憶部121に記憶されている接続情報から特定される。
また、印刷データ要求部116は、ステップS86で選択された印刷データ170に対応する情報を管理情報171から削除させるために、管理情報171の更新要求を行う(S93)。例えば、印刷データ要求部116は、ステップS86で選択された印刷データ170に対応する制御データ170Aを含む削除更新要求を生成する。そして、印刷データ要求部116は、管理情報記憶部115が有効となっていることを設定情報が示す場合には、この削除更新要求を印刷管理部114に与える。一方、印刷データ要求部116は、管理情報記憶部115が無効となっていることを設定情報が示す場合には、通信部122を介して、管理情報記憶部115が有効となっているプリンタ110に、この削除更新要求を送信する処理を行う。ここで、管理情報記憶部115が有効となっているプリンタ110の通信アドレスは、処理データ記憶部121に記憶されている有効情報から特定される。
そして、印刷データ要求部116は、印刷管理部114又は通信部122から、ステップS93の削除更新要求に対する削除完了通知があった場合(S94:Yes)には、処理を終了する。
一方、ステップS81において、利用者の認証に失敗した場合(S81:No)には、ステップS95の処理に進む。ステップS95では、認証部119は、認証に失敗したことを示すメッセージを含む認証失敗画面データを生成する。そして、認証部119は、この認証失敗画面データをUIF部120に送ることで、UIF部120に認証失敗画面を表示させ、処理を終了する。
また、ステップS84において、印刷データ170がないと判断された場合(S84:No)には、ステップS96の処理に進む。ステップS96では、印刷データ要求部116は、印刷データがないことを示すメッセージを含む印刷データ無し画面データを生成する。そして、印刷データ要求部116は、この印刷データ無し画面データをUIF部120に送ることで、UIF部120に印刷データ無し画面を表示させ、処理を終了する。
図13に示されているフローでは、印刷データ170に対して印刷処理又は削除処理を行った後、一連の処理を終了させているが、例えば、印刷データ要求部116は、ステップS81の処理に戻ってもよい。このような場合には、印刷データ要求部116は、管理情報171を改めて取得して、印刷データ選択画面174を再度生成することにより処理を継続する。また、印刷データ選択画面174に、「印刷し処理を継続」といった処理を選択するための指示領域が追加されていてもよい。このような指示が入力された場合には、印刷データ要求部116は、例えば、ステップS81の処理に戻って、処理を継続する。
図15は、印刷管理部114が個別管理情報を送信する処理を示すフローチャートである。このフローは、印刷管理部114が、図13に示されているステップS82の個別管理情報取得要求を受け取ることにより開始される。
まず、印刷管理部114は、管理情報記憶部115から管理情報171を読み出す。そして、印刷管理部114は、個別管理情報取得要求に含まれているID情報の値が、管理情報171の制御データ欄171Aに格納されている制御データ170Aの拡張変数である「UserName」の値と一致しているレコードを特定する。そして、印刷管理部114は、特定されたレコードの情報だけを抽出してテーブル形式のデータとすることにより、個別管理情報を生成する(S100)。
そして、印刷管理部114は、ステップS100で生成された個別管理情報を出力する処理を行う(S101)。例えば、印刷管理部114は、印刷データ要求部116から個別管理情報取得要求を受け取った場合には、印刷データ要求部116にこの個別管理情報を与える。一方、印刷管理部114は、通信部122を介して、個別管理情報取得要求を受け取った場合には、通信部122を介して、個別管理情報取得要求の送信元である他のプリンタ110に、この個別管理情報を送信する処理を行う。
図16は、印刷データ管理部112が印刷データ170を転送する処理を示すフローチャートである。このフローは、印刷データ管理部112が、図13に示されているステップS87の印刷データ取得要求を受け取ることにより開始される。
印刷データ管理部112は、受け取った印刷データ取得要求に含まれている制御データ170Aに対応する印刷データ170を、印刷データ記憶部113から取得する(S110)。
次に、印刷データ管理部112は、ステップS110で取得された印刷データ170を出力する処理を行う(S111)。例えば、印刷データ管理部112は、印刷データ要求部116から印刷データ取得要求を受け取った場合には、ステップS110で取得された印刷データ170を印刷データ要求部116に与える。一方、印刷データ管理部112は、通信部122を介して、印刷データ取得要求を受け取った場合には、通信部122を介して、印刷データ取得要求の送信元である他のプリンタ110に、ステップS110で取得された印刷データ170を送信する処理を行う。
次に、印刷データ管理部112は、ステップS111で出力された印刷データ170を印刷データ記憶部113から削除する(S112)。
図17は、印刷管理部114が管理情報171から制御データ170Aを削除する際の処理を示すフローチャートである。このフローは、印刷管理部114が、図13に示されているステップS90又はS93に示されている削除更新要求を受け取ることにより開始される。
まず、印刷管理部114は、受け取った削除更新要求から、制御データ170Aを取得する(S120)。
次に、印刷管理部114は、管理情報171において、ステップS120で取得された制御データ170Aが制御データ欄171Aに格納されているレコードを特定し、このレコードを削除することで、管理情報171を更新する(S121)。
そして、印刷管理部114は、管理情報171の更新が完了したことを示す完了通知を出力する処理を行う(S122)。例えば、印刷管理部114は、印刷データ要求部116から削除更新要求を受け取った場合には、印刷データ要求部116に更新完了通知を与える。一方、印刷管理部114は、通信部122を介して、削除更新要求を受け取った場合には、通信部122を介して、削除更新要求の送信元である他のプリンタ110に、更新完了通知を送信する処理を行う。
図18は、印刷データ管理部112が、印刷データ記憶部113から印刷データ170を削除する際の処理を示すフローチャートである。このフローは、印刷データ管理部112が、図13に示されている印刷データ削除要求を受け取ることにより開始される。
まず、印刷データ管理部112は、受け取った印刷データ削除要求から、制御データ170Aを取得する(S130)。
次に、印刷データ管理部112は、ステップS130で取得された制御データ170Aに対応する印刷データ170を印刷データ記憶部113から削除する(S131)。
図19は、PC150がネットワーク130上に存在するプリンタ110を検索し、さらに印刷データ170を送信する際の処理を示すフローチャートである。このフローは、PC150のUIF部153が利用者より印刷指示の入力を受けた場合に開始される。
まず、PC150のプリンタ検索部152は、ネットワーク130に接続されたプリンタ110を検索する(S140)。例えば、プリンタ検索部152は、検索データ172を生成し、通信部154を介して、この検索データ172をネットワーク130に対しブロードキャストで送信する処理を行う。そして、プリンタ検索部152は、ネットワーク130上のプリンタ110からの応答を一定時間待つ。
次に、プリンタ検索部152は、通信部154がネットワーク130上のプリンタ110からの応答データ173A、173Bを受信したか否かを確認する(S141)。そして、プリンタ検索部152は、通信部154が応答データ173A、173Bを受信した場合(S141:Yes)には、ステップS142の処理に進み、通信部154が応答データ173A、173Bを受信しなかった場合(S141:No)には、ステップS146の処理に進む。
ステップS142では、印刷データ作成部151は、印刷データ170の実体データ170Bである印刷画像データを作成する。
次に、印刷データ作成部151は、制御データ170Aを生成する。そして、印刷データ作成部151は、ステップS142で作成した印刷画像データに、この制御データ170Aを付加することで、印刷データ170を作成する(S143)。なお、印刷データ作成部151は、制御データ170Aを生成する際には、UIF部153を介して、必要に応じて利用者からの入力を受け付ける。
印刷データ作成部151は、通信部122を介して、ステップS143で作成した印刷データ170を、ステップS140で検索された、ネットワーク130上のプリンタ110に送信する処理を行う(S144)。なお、ステップS140において複数のプリンタ110が発見されている場合には、印刷データ作成部151は、何れかのプリンタ110を任意に選択することができる。例えば、印刷データ作成部151は、検索データ172に対して最も早く応答データ173A、173Bを送信してきたプリンタ110、又は、応答データ173A、173Bを参照して、印刷データ記憶部113の空き容量に最も余裕のあるプリンタ110等を選択することができる。
そして、印刷データ作成部151は、印刷データ170を送信したプリンタ110から、印刷データ170の受信完了通知を受けた場合(S145:Yes)には、処理を終了する。
一方、ステップS141において、通信部154が応答データ173A、173Bを受信しなかった場合(S141:No)には、プリンタ検索部152は、ステップS146の処理に進む。ステップS146では、プリンタ検索部152は、プリンタ110が発見できなかった旨のメッセージを含む印刷不可画面データを作成する。そして、プリンタ検索部152は、UIF部153にこの印刷不可画面データを送り、UIF部153に印刷不可画面を表示させる(S146)。
以上のように、実施の形態1においては、PC150からプリンタ110に対して印刷指示を行う場合には、PC150がプリンタ110を検索し、検索されたプリンタ110に対して印刷データ170を送信する。
図20は、プリンタ110の検索応答部118が、PC150からの検索に応答する際の処理を示すフローチャートである。このフローは、プリンタ110の検索応答部118が、PC150からの検索データ172を取得することにより開始される。
プリンタ110の検索応答部118は、応答データ173A、173Bを作成する(S150)。検索応答部118は、自装置の管理情報記憶部115が有効となっている場合には、図9(A)に示されている応答データ173Aを作成し、これが無効となっている場合には、図9(B)に示されている応答データ173Bを作成する。
次に、検索応答部118は、ステップS150で作成された応答データ173A、173Bを、通信部122を介して、PC150に送信する処理を行う(S151)。
図21は、図5に示す画像形成システム100において、ネットワーク130に接続されたPC150が印刷を要求する場合の動作を示すシーケンス図である。ここでは、ネットワーク130には、プリンタ110A、プリンタ110B及びプリンタ110Cが稼働しているものとする。また、プリンタ110Aの管理情報記憶部115が有効となっており、PC150はプリンタ110Bに印刷データ170を送信するものとする。なお、図21では、プリンタ110Cは省略されている。
まず、PC150のプリンタ検索部152は、ネットワーク130に接続されたプリンタ110を検索するために、検索データ172を生成する(S160)。そして、プリンタ検索部152は、通信部154を介して、ステップS160で生成された検索データ172を、ネットワーク130にブロードキャストで送信する処理を行う(S161、S162)。なお、プリンタ110Cに対しても検索データ172が送信されるが、本シーケンスでは、図示が省略されている。
検索データ172を受信したプリンタ110Bでは、検索応答部118Bが、応答データ173Bを作成する(S163)。プリンタ110Bの管理情報記憶部115Bは無効となっているので、応答データ173Bは、管理情報記憶部115Bが無効となっていることを示している。そして、検索応答部118Bは、通信部122Bを介して、PC150に、応答データ173Bを送信する処理を行う(S164)。
また、検索データ172を受信したプリンタ110Aでは、検索応答部118Aが、応答データ173Aを作成する(S165)。プリンタ110Aの管理情報記憶部115Aは有効となっているので、応答データ173Aは、管理情報記憶部115Aが有効となっていることを示している。そして、検索応答部118Aは、通信部122Aを介して、PC150に、応答データ173Aを送信する処理を行う(S166)。なお、プリンタ110Cでも、応答データ173Bを作成し、PC150に送信する処理を行っているが、本シーケンスでは、図示が省略されている。
次に、応答データ173A、173Bを受信したPC150では、印刷データ作成部151が、印刷画像データに制御データ170Aを付加することにより、印刷データ170を作成する(S167)。そして、印刷データ作成部151は、通信部154を介して、印刷データ170を送信する処理を行う(S168)。ここで、印刷データ170の送信先は、プリンタ110Bとする。
印刷データ170を受信したプリンタ110Bでは、印刷データ管理部112Bが、受信された印刷データ170から、制御データ170Aを分離する(S169)。そして、印刷データ管理部112Bは、分離された制御データ170Aに含まれている拡張変数である「Confidential」の値を確認することで、受信された印刷データ170がすぐに印刷すべきものなのか、利用者の認証を待って印刷すべきものなのかを判断する。ここでは、「Confidential」の値が「Yes」となっており、利用者の認証を待って印刷すべきものであるとする。また、プリンタ110Bでは、管理情報記憶部115Bが無効となっているため、印刷データ管理部112Bは、ステップS169で分離された制御データ170Aと、印刷データ170の名称と、プリンタ110Bの識別情報とを含む登録要求を、通信部122を介して、プリンタ110Aに送信する処理を行う(S170)。なお、プリンタ110Aの通信アドレスは、プリンタ110Bの処理データ記憶部121Bに記憶されている接続情報から取得することができる。
登録要求を受信したプリンタ110Aでは、印刷管理部114Aが、受信された登録要求に含まれている情報を、管理情報記憶部115Aに記憶されている管理情報171に格納することで、管理情報171を更新する(S171)。そして、印刷管理部114Aは、通信部122Aを介して、更新完了通知を、プリンタ110Bに送信する処理を行う(S172)。
更新完了通知を受信したプリンタ110Bでは、印刷データ管理部112Bが、印刷データ記憶部113Bに、ステップS168で受信した印刷データ170を記憶させる(S173)。そして、印刷データ管理部112Bは、印刷データ170の受信を完了したことを示す受信完了通知を、通信部122を介して、PC150に送信する処理を行う(S174)。
以上に記載されたシーケンスにより、PC150で作成された印刷データ170は、プリンタ110Bの印刷データ記憶部113Bに保存される。そして、印刷データ170がプリンタ110Bに保存されていることは、プリンタ110Aが保存する管理情報171に登録されることとなる。
図22は、図21に示されているシーケンスが完了した後に、PC150の利用者がプリンタ110Cで認証を受け、プリンタ110Cに印刷を実行させる際の処理を示すシーケンス図である。このシーケンスにより、利用者は、PC150で作成された印刷データ170を、認証を受けたプリンタ110Cにおいて印刷させることができる。なお、プリンタ110Aの管理情報記憶部115Aに記憶されている管理情報171の内容は、図4に示されている通りであるとする。
プリンタ110CのUIF部120Cが認証指示の入力を受け付けると(S180)、認証部119Cは、PC150の利用者より認証情報の入力を受け付け、認証を実行する(S181)。ここでは、認証部119Cは、認証情報として利用者のID情報を取得するものとする。また、ここでの認証は成功したものする。そして、プリンタ110Cの印刷データ要求部116は、認証が成功したID情報を含む個別管理情報取得要求を生成し(S182)、通信部122Cを介して、この個別管理情報取得要求を、プリンタ110Aに送信する処理を行う(S183)。
個別管理情報取得要求を受信したプリンタ110Aでは、印刷管理部114Aが、管理情報記憶部115Aに記憶されている管理情報171より、個別管理情報取得要求に含まれているID情報に対応するレコードを特定し、特定されたレコードに格納されている情報により個別管理情報を生成する(S184)。そして、印刷管理部114Aは、生成された個別管理情報を、通信部122Aを介して、プリンタ110Cに送信する処理を行う(S185)。
個別管理情報を受信したプリンタ110Cでは、印刷データ要求部116Cが、受信された個別管理情報に基づいて、処理する印刷データ170を選択するための印刷データ選択画面データを生成する(S186)。印刷データ要求部116Cは、この印刷データ選択画面データをUIF部120に送り、UIF部120Cに印刷データ選択画面を表示させる。そして、UIF部120Cは、印刷データ選択画面を介して、PC150の利用者からの指示の入力を受け付ける(S187)。ここでは、UIF部120Cは、利用者から印刷指示の入力を受け付けたものとする。また、ここで選択された印刷データ170は、「特許提案書」という文書データであり、プリンタ110Bに保存されているものとする。次に、印刷データ要求部116Cは、選択された印刷データ170の取得を要求するために、選択された印刷データ170の制御データ170Aを含む印刷データ取得要求を、通信部122Cを介して、プリンタ110Bに送信する処理を行う(S189)。
印刷データ取得要求を受信したプリンタ110Bでは、印刷データ管理部112Bが、受信された印刷データ取得要求に含まれている制御データ170Aに対応する印刷データ170を印刷データ記憶部113Bから取得する(S190)。そして、印刷データ管理部112Bは、取得された印刷データ170を、通信部122Bを介して、プリンタ110Cに送信する処理を行う(S191)。なお、印刷データ管理部112Bは、印刷データ170の送信を行った後に、送信した印刷データ170を印刷データ記憶部113Bから削除する(S192)。なお、印刷データ管理部112Bは、転送先から印刷データ170を正常に受信したことを示す受信完了通知を受けた後に、印刷データ170を削除してもよい。
印刷データ170を受信したプリンタ110Cでは、印刷データ要求部116Cが、受信された印刷データ170を印刷部111Cに送り、印刷部111Cに印刷を実行させる(S193)。そして、印刷完了後に、印刷データ要求部116Cは、管理情報171の更新を要求するために、印刷が実行された印刷データ170の制御データ170Aを含む削除更新要求を生成する(S194)。そして、印刷データ要求部116Cは、生成された削除更新要求を、通信部122Cを介して、プリンタ110Aに送信する処理を行う(S195)。
削除更新要求を受信したプリンタ110Aでは、印刷管理部114Aが、管理情報記憶部115Aに記憶されている管理情報171より、削除更新要求に含まれている制御情報170Aに対応するレコードを削除することにより、管理情報171を更新する(S196)。そして、印刷管理部114Aは、管理情報171の更新が完了したことを示す更新完了通知を生成して、この更新完了通知を、通信部122Aを介して、プリンタ110Cに送信する処理を行う(S197)。
図22に示されたシーケンスでは、利用者がプリンタ110Cにおいて認証を受け、プリンタ110Cで印刷を実行させているが、これに限定されるものではない。例えば、利用者は、プリンタ110A、プリンタ110B及びプリンタ110Cの何れかで認証を受け、プリンタ110A、プリンタ110B及びプリンタ110Cの何れかで印刷を実行させてもよい。
以上、詳細に説明したとおり、本発明の実施の形態1においては、プリンタ110は、ネットワーク130に接続された他のプリンタ110を検索し、他のプリンタ110が発見できない場合には、管理情報記憶部115を有効化し、自装置及び他装置の印刷データ170を管理する。一方、プリンタ110は、検索により他のプリンタ110が発見できた場合には、管理情報記憶部115を無効化し、さらに、管理情報記憶部115が有効となっているプリンタ110を特定し、特定されたプリンタ110に受信された印刷データ170の制御データ170Aを登録する。印刷を行う際には、プリンタ110は、管理情報記憶部115に記憶されている管理情報171に基づいて、処理可能な印刷データ170の一覧を利用者に提示する。そして、プリンタ110は、利用者から印刷指示の入力があった場合には、管理情報171に基づいて、何れかのプリンタ110に保存された印刷データ170を取得し、印刷を行う。このため、利用者は、ネットワーク130に接続される何れのプリンタ110においても、PC150で作成した印刷データ170に基づいて画像を印刷させることができる。
なお、以上に記載された実施の形態において、印刷データ170の転送、削除時に印刷データ170の制御データ170Aを利用して印刷データ170の特定を行っているが、これに限定されるものではない。例えば、印刷データ170の名称で特定を行うこともできる。
以上のように、本実施の形態によれば、ネットワーク130に接続されたプリンタ110の内、最初に起動したプリンタ110が、印刷データ170を管理している。このため、以降に起動したプリンタ110は、最初に起動したプリンタ110の管理を受け、新たに起動されるプリンタ110に対し設定の変更等を行う必要がなくなり、利用者の利便性を向上させることができる。
実施の形態2.
(構成の説明)
図1に示されているように、実施の形態2に係る画像形成システム200は、複数のプリンタ210A、210B、210C、・・・、210D(特に各々を区別する必要がないときは、プリンタ210という)を備える。プリンタ210は、ネットワーク130に接続されており、ネットワーク130には、PC150が接続されている。
図23は、実施の形態2におけるプリンタ210の構成を概略的に示すブロック図である。プリンタ210は、印刷部111と、印刷データ管理部212と、印刷データ記憶部113と、印刷管理部214と、管理情報記憶部115と、印刷データ要求部116と、検索部217と、検索応答部118と、認証部119と、UIF部120と、処理データ記憶部121と、通信部122と、終了処理部223と、終了引継部224とを備える。実施の形態2におけるプリンタ210は、印刷データ管理部212、印刷管理部214及び検索部217での処理の点、並びに、終了処理部223及び終了引継部224が新たに設けられている点において、実施の形態1におけるプリンタ110と異なっている。
印刷データ管理部212は、実施の形態1における印刷データ管理部112と同様の処理を行うほか、終了引継部224からの指示に応じて、印刷データ記憶部113に記憶されている印刷データ170の全てを、通信部122を介して、他のプリンタ210に送信する処理を行う。そして、印刷データ管理部212は、管理情報171において、印刷データ170の記憶先の変更を要求する処理を行う。例えば、印刷データ管理部212は、印刷データ170を記憶しているプリンタ210の識別情報を、印刷データ170を送信した先のプリンタ210の識別情報に更新するよう指示する変更更新要求を生成する。そして、印刷データ管理部212は、自装置の管理情報記憶部115が有効となっている場合には、印刷管理部214にこの変更更新要求を与える。一方、印刷データ管理部212は、自装置の管理情報記憶部115が無効となっている場合には、通信部122を介して、管理情報記憶部115が有効となっているプリンタ210に対して、この変更更新要求を送信する処理を行う。
また、印刷データ管理部212は、通信部122を介して、他のプリンタ210から送信されてきた印刷データ170を取得して、この印刷データ170を印刷データ記憶部113に記憶させる。
印刷管理部214は、実施の形態1における印刷管理部114と同様の処理を行うほか、終了引継部224からの指示に応じて、管理情報記憶部115に記憶されている管理情報171を、通信部122を介して、他のプリンタ210に送信する処理を行う。そして、印刷管理部214は、管理情報記憶部115を無効化し、処理データ記憶部121に記憶されている設定情報を管理情報記憶部115が無効であることを示すように更新する。
また、印刷管理部214は、通信部122を介して、他のプリンタ210から送信されてきた管理情報171を取得し、この管理情報171を管理情報記憶部115に記憶させる。この際、印刷管理部214は、管理情報記憶部115を有効化し、処理データ記憶部121に記憶されている設定情報を管理情報記憶部115が有効であることを示すように更新する。
さらに、印刷管理部214は、印刷データ管理部212からの指示により、管理情報記憶部115に記憶されている管理情報171の更新を行う。
検索部217は、実施の形態1における検索部117と同様の処理を行うほか、終了引継部224の指示によりネットワーク130に存在するプリンタ210の検索を実行し、その検出結果を終了引継部224に与える。また、検索部217は、他のプリンタ210からの有効情報更新要求に応じて、処理データ記憶部121に記憶されている有効情報を更新する。さらに、検索部217は、他のプリンタ210からの再検索要求に応じて、ネットワーク130に接続されている他のプリンタ210の再検索を行い、処理データ記憶部121に記憶されている有効情報を更新する。
終了処理部223は、プリンタ210の終了処理、言い換えると、プリンタ210の電源をOFF状態にする処理を行う。なお、終了処理部223は、例えば、UIF部120が利用者よりプリンタ210の終了指示の入力を受け付けた際に、プリンタ210の終了処理を行う。
終了引継部224は、終了処理部223を監視して、プリンタ210の終了処理が行われているか否かを検出する。そして、終了引継部224は、プリンタ210の終了処理を検出すると、終了処理部223に指示することで、プリンタ210の終了処理を一時停止させる。例えば、終了引継部224は、終了処理部223が終了処理を開始した場合には、すぐにその終了処理を一時停止させることが望ましい。このため、終了引継部224は、終了処理部223による終了処理の開始を検出することが望ましい。
また、終了引継部224は、プリンタ210の終了処理を検出すると、検索部217に検索を指示して、ネットワーク130上で稼働する他のプリンタ210の検索を実行させる。そして、終了引継部224は、検索部217による検索の結果により、ネットワーク130上で稼働するプリンタ210のリストを取得して、印刷データ170を送信する先のプリンタ210を特定する。次に、終了引継部224は、印刷データ記憶部113に記憶されている印刷データ170の全てを、特定されたプリンタ210に転送するように、印刷データ管理部212に指示する。
さらに、終了引継部224は、プリンタ210の終了処理を検出した際に、自装置の管理情報記憶部115が有効となっている場合には、ネットワーク130に接続されている他のプリンタ210に、管理情報記憶部115を有効にするように指示する有効化要求を送信する処理を行う。この有効化要求は、検索部217による検索の結果取得されたリストから選択されたプリンタ210に対して送信される。なお、この有効化要求は、プリンタ210を第2モードから第1モードに変更するためのモード変更要求として機能する。そして、終了引継部224は、印刷管理部214に対し、管理情報記憶部115に記憶されている管理情報171の転送を指示し、加えて、管理情報記憶部115の無効化を指示する。また、終了引継部224は、通信部122を介して、管理情報171の転送先となるプリンタ210に対して、有効情報を更新する有効情報更新要求を送信する処理を行う。さらに、終了引継部224は、通信部122を介して、管理情報記憶部115が無効となっているプリンタ210に対して、再検索要求を送信する処理を行う。そして、終了引継部224は、再検索要求を送信する処理を行った後で、終了処理部223に対して、一時停止させているプリンタ210の終了処理を再開させる。
(動作の説明)
次に、本発明の実施の形態2の動作について説明する。以下の説明におけるシーケンス図では、図24に示されているように、プリンタ210A、プリンタ210B及びプリンタ210Cにより画像形成システム200が構成されており、これらのプリンタ210A、210B、210Cは、ネットワーク130に接続されているものとする。また、ネットワーク130には、PC150も接続されているものとする。
プリンタ210A、プリンタ210B及びプリンタ210Cの構成は、図23に示されている構成と同様であるが、図24では、それぞれの構成を区別するために、プリンタ210Aの構成には「A」の符号が付されており、プリンタ210Bの構成には「B」の符号が付されており、プリンタ210Cの構成には「C」の符号が付されている。なお、プリンタ210A、プリンタ210B及びプリンタ210Cの識別情報は、それぞれ、「プリンタA」、「プリンタB」及び「プリンタC」である。
図25及び図26は、プリンタ210において終了処理が行われる際の処理を示すフローチャートである。このフローは、終了引継部224が、プリンタ210の終了処理を検出することにより開始される。
まず、終了引継部224は、終了処理部223に指示を出し、終了処理を一時停止させる(S200)。
次に、終了引継部224は、検索部217にプリンタ210の検索を指示し、検索部217は、ネットワーク130に接続されたプリンタ210の検索を行う(S201)。ここで、検索部217は、ステップS201での検索結果を、終了引継部224にリストとして与える。
終了引継部224は、ステップS201の検索により、ネットワーク130に存在する他のプリンタ210が発見できたか否かを判断する(S202)。そして、終了引継部224は、他のプリンタ210を発見できた場合(S202:Yes)には、ステップS203の処理に進み、他のプリンタ210を発見できなかった場合(S202:No)には、図26のステップS218の処理に進む。
ステップS203では、終了引継部224は、印刷データ記憶部113に印刷データ170が記憶されているか否かを判断する。そして、終了引継部224は、印刷データ170が記憶されている場合(S203:Yes)には、ステップS204の処理に進み、印刷データ170が記憶されていない場合(S203:No)には、図26のステップS207の処理に進む。
ステップS204では、終了引継部224は、ステップS201で検出されたプリンタ210の中から印刷データ170の転送先を決定する。ここで、ステップS201で複数のプリンタ210が検索されている場合には、終了引継部224は、印刷データ170の転送先とするプリンタ210を任意に選択することができる。例えば、終了引継部224は、検索データ172に対して最も早く応答データ173A、173Bを送信してきたプリンタ210、又は、応答データ173A、173Bを参照して、印刷データ記憶部113の空き容量に最も余裕があるプリンタ210等を選択することができる。
そして、終了引継部224は、印刷データ管理部212に対して、印刷データ記憶部113に保存されている印刷データの全てを転送するように指示する(S205)。転送先は、ステップS204で決定された転送先のプリンタ210である。このような指示を受けた印刷データ管理部212は、通信部122を介して、印刷データ記憶部113に記憶されている全ての印刷データ170を、決定された他のプリンタ210に送信する処理を行う。印刷データ170を受信した他のプリンタ210では、印刷データ管理部212が、受信された印刷データ170を印刷データ記憶部113に記憶させる。
次に、印刷データ管理部212は、管理情報171において、印刷データ170の転送元のプリンタ210の識別情報を、転送先のプリンタ210の識別情報に変更するように要求する処理を行う(S206)。例えば、印刷データ管理部212は、ステップS205で転送した印刷データ170の制御データ170Aと、転送先のプリンタ210の識別情報とを含む変更更新要求を生成する。そして、印刷データ管理部212は、自装置の管理情報記憶部115が有効であることを設定情報が示す場合には、この変更更新要求を印刷管理部214に与える。一方、印刷データ管理部212は、自装置の管理情報記憶部115が無効であることを設定情報が示す場合には、通信部122を介して、管理情報記憶部115が有効となっているプリンタ210に対して、この変更更新要求を送信する処理を行う。そして、終了引継部224は、図26のステップS207に進む。以上のような変更更新要求を受けた印刷管理部214は、変更更新要求に含まれている情報に基づいて、管理情報記憶部115に記憶されている管理情報171を更新する処理を行う。例えば、印刷管理部214は、管理情報記憶部115に記憶されている管理情報171において、変更更新要求に含まれている制御データ170Aが制御データ欄171Aに格納されているレコードを特定し、このレコードのプリンタ識別情報欄171Bに格納されている識別情報を、変更更新要求に含まれている、プリンタ210の識別情報に書き換える。
図26のステップS207では、終了引継部224は、自装置の管理情報記憶部115が有効となっているか否かを判断する。そして、終了引継部224は、有効となっている場合(S207:Yes)には、ステップS208の処理に進み、無効となっている場合(S207:No)には、ステップS218の処理に進む。
ステップS208では、終了引継部224は、ステップS201で検索されたプリンタ210の中から、管理情報171の転送先を決定する。ここで、ステップS201で複数のプリンタ210が検索されている場合には、終了引継部224は、管理情報171の転送先とするプリンタ210を任意に選択することができる。例えば、終了引継部224は、検索データ172に対して最も早く応答データを送信してきたプリンタ210、又は、応答データを参照して、印刷データ記憶部113の空き容量に最も余裕があるプリンタ210等を選択することができる。
次に、終了引継部224は、通信部122を介して、図25のステップS204で決定されたプリンタ210に対して、管理情報記憶部115の有効化を指示する有効化要求を送信する処理を行う(S209)。このような有効化要求を受信したプリンタ210では、印刷管理部214が、自装置の管理情報記憶部115を有効化して、管理情報記憶部115が有効になっていることを示すように設定情報を書き換える。そして、この印刷管理部214は、通信部122を介して、有効化要求の送信元であるプリンタ210に、有効化完了通知を送信する処理を行う。
次に、終了引継部224は、有効化要求の送信先であるプリンタ210から、有効化完了通知を受け取ったか否かを確認し(S210)、受け取った場合(S210:Yes)には、ステップS211の処理に進む。
ステップS211では、終了引継部224は、印刷管理部214に管理情報記憶部115に保存されている管理情報171の転送を依頼する。転送先は、ステップS208で決定されたプリンタ210である。このような依頼を受けた印刷管理部214は、通信部122を介して、決定されたプリンタ210に管理情報171を送信する処理を行う。管理情報171を受信したプリンタ210では、印刷管理部214が、受信された管理情報171を管理情報記憶部115に記憶させ、また、通信部122を介して、管理情報171の送信元であるプリンタ210に、転送完了通知を送信する処理を行う。
次に、終了引継部224は、管理情報171の送信先であるプリンタ210から、転送完了通知を受け取ったか否かを確認し(S212)、受け取った場合(S212:Yes)には、ステップS213の処理に進む。
ステップS213では、終了引継部224は、印刷管理部214に対し、管理情報記憶部115の無効化を指示する。このような指示を受けた印刷管理部214は、管理情報記憶部115を無効化し、また、管理情報記憶部115が無効となっていることを示すように設定情報を書き換える。
次に、終了引継部224は、通信部122を介して、ステップS208で決定されたプリンタ210に対して、処理データ記憶部121に記憶されている有効情報を更新するように指示する有効情報更新要求を送信する処理を行う(S214)。このような有効情報更新要求を受信したプリンタ210では、検索部217が、処理データ記憶部121に記憶されている有効情報を書き換え、有効情報が自装置の識別情報及び通信アドレスを示すようにする。そして、検索部217は、通信部122を介して、有効情報更新要求の送信元であるプリンタ210に対して、更新完了通知を送信する処理を行う。
次に、終了引継部224は、有効情報更新要求の送信先であるプリンタ210から、更新完了通知を受け取ったか否かを確認し(S215)、受け取った場合(S215:Yes)には、ステップS216の処理に進む。
ステップS216では、終了引継部224は、通信部122を介して、他のプリンタ210に対して、プリンタ210の再検索を指示する再検索要求を送信する処理を行う。この再検索要求は、ステップS208で決定されたプリンタ210以外のプリンタ210に送信する。このような再検索要求を受信したプリンタ210では、検索部217が、ネットワーク130に接続されたプリンタ210の再検索を図6に示すフローに従い実行する。これにより、各プリンタ210において、有効情報を更新することができる。そして、この検索部217は、再検索が終了後に、再検索完了通知を、通信部122を介して、再検索要求の送信元であるプリンタ210に送信する処理を行う。
次に、終了引継部224は、再検索要求を送信した全てのプリンタ210から再検索完了通知を受け取ったか否かを確認し(S217)、再検索要求を送信した全てのプリンタ210から再検索完了通知を受け取った場合(S217:Yes)には、ステップS218の処理に進む。
ステップS218では、終了引継部224は、終了処理部223に指示することで、図25のステップ200で一時停止させた終了処理を再開させる。
以上のように、実施の形態2においては、プリンタ210の終了処理が開始されると、このプリンタ210は、自装置の印刷データ170を他のプリンタ210に転送し、管理情報171を更新する処理を行う。また、管理情報記憶部115が有効となっているプリンタ210の終了処理が開始された場合には、このプリンタ210は、自装置の管理情報171及び印刷データ170を他のプリンタ210に転送する。これにより、たとえ一台のプリンタ210が使用不可能となっても、印刷データ170又は管理情報171を他のプリンタ210に転送することにより、画像形成システム200としての機能を継続させることができる。
また、本実施の形態においては、終了引継部224は、印刷データ170及び管理情報171の順にデータの転送を行っているが、この順に行う必要はない。管理情報171及び印刷データ170の順にデータの転送を行っても構わない。
図25及び図26に記載されたフローチャートでは、ステップS202で他のプリンタ210が発見できなかった場合には、ステップ218に進み、終了処理を再開させているが、このようなフローに限定されるものではない。例えば、ステップS202で他のプリンタ210が発見できなかった場合に、終了引継部224は、印刷データ記憶部113に保存されている印刷データ170の制御データ170Aを参照し、印刷データ170を作成したPC150にプリンタ210が終了することを通知してもよい。また、このような通知を受けたPC150では、プリンタ検索部152が、UIF部153にプリンタ210が終了するというメッセージを表示させてもよい。
図27は、図24に示されているプリンタ210A、プリンタ210B及びプリンタ210Cの内、管理情報記憶部115Bが無効となっているプリンタ210Bで終了処理が開始された場合のシーケンス図である。このとき、プリンタ210Aの管理情報記憶部115Aが有効であり、プリンタ210B、プリンタ210Cに印刷データ170が保存されているものとする。
プリンタ210Bの終了引継部224Bは、終了処理部223Bを監視し、プリンタ210Bの終了処理を検出すると(S220)、終了処理部223Bに終了処理を一時停止させ、検索部217Bに他のプリンタ210を検索するように指示する(S221)。
指示を受けた検索部217Bは、他のプリンタ210を検索するために、検索データ172を作成する(S222)。そして、検索部217Bは、通信部122Bを介して、作成された検索データ172を、ブロードキャストでネットワーク130に送信する処理を行う(S223、S224)。
検索データ172を受信したプリンタ210Aでは、検索応答部118Aが、応答データ173Aを作成する(S225)。応答データ173Aには、図9(A)に示されているように、管理情報記憶部115Aが有効であることを示す情報が含まれる。そして、検索応答部118Aは、通信部122Aを介して、プリンタ110Bに、応答データ173Aを送信する処理を行う(S226)。
また、検索データ172を受信したプリンタ210Cでは、検索応答部118Cが、応答データ173Bを作成する(S227)。応答データ173Bには、図9(B)に示されているように、管理情報記憶部115Cが無効であることを示す情報が含まれる。そして、検索応答部118Cは、通信部122Cを介して、プリンタ210Bに、応答データ173Bを送信する処理を行う(S228)。
そして、プリンタ210Bの検索部217Bは、検索結果を終了引継部224Bに与える。ここでは、他のプリンタ210A、210Cが発見されているものとする。このような検索結果を受けた終了引継部224Bは、自装置の印刷データ記憶部113Bに印刷データ170が記憶されているか否かを確認する(S229)。ここでは、印刷データ170が記憶されているものとする。そして、終了引継部224Bは、検索部217Bからの検索結果に基づいて、印刷データ170の転送先となるプリンタ210を決定する(S230)。ここでは、終了引継部224Bは、プリンタ210Cを転送先として決定したとする。終了引継部224Bは、印刷データ管理部212Bに、印刷データ記憶部113Cに記憶されている全ての印刷データ170を、転送先として決定されたプリンタ210Cへ送信するよう指示する。このような指示を受けた印刷データ管理部212Bは、指示に従い、通信部122Bを介して、印刷データ170を送信する処理を行う(S231)。
印刷データ170を受信したプリンタ210Cでは、印刷データ管理部212Cが、受信された印刷データ170を印刷データ記憶部113に記憶させる(S232)。なお、印刷データ管理部212Cは、受信された印刷データ170の名称が、既に記憶されている印刷データ170の名称と重複する場合には、受信された印刷データ170の名称を変更する。そして、印刷データ管理部212Cは、印刷データ170の記憶が完了したことを示す記憶完了通知をプリンタ210Bに送信する(S233)。なお、印刷データ管理部212Cは、印刷データ170の名称を変更した場合には、変更対象となった印刷データ170の制御データ170Aと、変更後の名称とを記憶完了通知に含めることが望ましい。
記憶完了通知を受信したプリンタ210Bでは、印刷データ管理部212Bが、管理情報171の更新を依頼するため、転送した印刷データ170の制御データ170Aと、転送先のプリンタ210Cの識別情報と、転送した印刷データ170の名称とを含む変更更新要求を生成する(S234)。そして、印刷データ管理部212Bは、通信部122Bを介して、この変更更新要求を、管理情報記憶部115が有効となっているプリンタ210Aに送信する処理を行う(S235)。
このような変更更新要求を受信したプリンタ210Aでは、印刷管理部214Aが、変更更新要求に含まれている情報に基づいて、管理情報171の更新を行う(S236)。例えば、変更更新要求を受ける前には、管理情報記憶部115に、図28(A)に示されている管理情報171#1が記憶されているものとする。図28(A)に示されている管理情報171#1は、「特許提案書」のデータが「プリンタB」に記憶されていることを示している。そして、図28(B)は、更新後の管理情報171#2を示している。更新後の管理情報171#2では、「特許提案書」のデータの格納先が、「プリンタB」から「プリンタC」に書き換えられている。そして、印刷管理部214Aは、通信部122Aを介して、管理情報171の更新が完了したことを示す更新完了通知を、プリンタ110Bに送信する処理を行う(S237)。
更新完了通知を受信したプリンタ210Bでは、終了引継部224Bが、自装置の管理情報記憶部115Bが有効となっているか又は無効となっているかを確認する(S238)。ここでは、管理情報記憶部115Bは、無効となっているものとする。
自装置の管理情報記憶部115Bが無効となっている場合には、終了引継部224Bは、終了処理部223Bに指示することにより、プリンタ210Bの終了処理を再開させる(S239)。
以上のように、印刷データ170を有するプリンタ210が終了する場合には、そのプリンタ210は、保存されている印刷データ170を他のプリンタ210に転送し、さらに、管理情報171の更新処理も行う。そのため、利用者は、終了されたプリンタ210とは異なるプリンタ210で認証を受けることにより、認証を受けたプリンタ210で印刷を実行させることができる。
図29及び図30は、図24に示されているプリンタ210A、プリンタ210B及びプリンタ210Cの内、管理情報記憶部115が有効となっているプリンタ210Aが終了処理を行った場合の処理を示すシーケンス図である。ここで、管理情報記憶部115Aが有効となっているプリンタ210Aには、印刷データ170が保存されておらず、その他のプリンタ210B、210Cには、印刷データ170が保存されているものとする。
プリンタ210Aの終了引継部224Aは、終了処理部223Aを監視し、プリンタ210Aの終了処理を検出すると(S250)、終了処理部223Aに終了処理を一時停止させ、また、検索部217Aに他のプリンタ210を検索するように指示する(S251)。
指示を受けた検索部217Aは、他のプリンタ210を検索するために、検索データ172を作成する(S252)。そして、検索部217Aは、通信部122Aを介して、作成された検索データ172を、ブロードキャストでネットワーク130に送信する処理を行う(S253、S254)。
検索データ172を受信したプリンタ210Bでは、検索応答部118Bが、応答データ173Bを作成する(S255)。応答データ173Bには、図9(B)に示されているように、管理情報記憶部115Bが無効であることを示す情報が含まれる。そして、検索応答部118Bは、通信部122Bを介して、プリンタ210Aに、応答データ173Bを送信する処理を行う(S256)。
また、検索データ172を受信したプリンタ210Cでは、検索応答部118Cが、応答データ173Bを作成する(S257)。応答データ173Bには、図9(B)に示されているように、管理情報記憶部115Cが無効であることを示す情報が含まれる。そして、検索応答部118Cは、通信部122Cを介して、プリンタ210Aに、応答データ173Bを送信する処理を行う(S258)。
そして、プリンタ210Aの検索部217Aは、検索結果を終了引継部224Aに与える。ここでは、他のプリンタ210B、210Cが発見されているものとする。このような検索結果を受けた終了引継部224Aは、自装置の印刷データ記憶部113Aに印刷データ170が記憶されているか否かを確認する(S259)。ここでは、印刷データ170が記憶されていないものとする。
次に、プリンタ210Aの終了引継部224Aは、自装置の管理情報記憶部115Aが有効となっているか否かを確認する(S260)。ここでは、管理情報記憶部115Aが有効となっているものとする。そして、終了引継部224Aは、検索部217Aからの検索結果に基づいて、管理情報記憶部115Aに記憶されている管理情報171の転送先となるプリンタ210を決定する(S261)。ここでは、終了引継部224Aは、プリンタ210Bを転送先として決定したとする。終了引継部224Aは、管理情報記憶部115Bを有効化させるための指示である有効化要求を生成する(S262)。そして、終了検索部224Aは、通信部122Aを介して、この有効化要求を、プリンタ210Bに送信する処理を行う(S263)。
このような有効化要求を受信したプリンタ210Bでは、印刷管理部214Bが、管理情報記憶部115Bを有効化して、自装置の管理情報記憶部115Bが有効となっていることを示すように設定情報を更新する。さらに、印刷管理部214Bは、通信部122Aを介して、有効化要求の送信元であるプリンタ210Aに、有効化が完了したことを示す有効化完了通知を送信する処理を行う(S265)。そして、シーケンスは、図30に続く。
図30において、有効化完了通知を受信したプリンタ210Aでは、終了引継部224Aが、印刷管理部214Aに、管理情報記憶部115Aに記憶されている管理情報171を、図29のステップS261で決定されたプリンタ210Bへ転送するよう指示する。このような指示を受けた印刷管理部214Aは、指示に従って、通信部122Aを介して、管理情報記憶部115Aに記憶されている管理情報171を送信する処理を行う(S266)。
管理情報171を受信したプリンタ210Bでは、印刷管理部214Bが、受信された管理情報171を管理情報記憶部115Bに記憶させる(S267)。そして、印刷管理部214Bは、通信部122Bを介して、管理情報171の送信元であるプリンタ210Aに対して、管理情報171の記憶が完了したことを示す記憶完了通知を送信する処理を行う(S268)。
記憶完了通知を受信したプリンタ210Aでは、終了引継部224Aが、印刷管理部214Aに対し、管理情報記憶部115Aの無効化を指示する。このような指示を受けた印刷管理部214Aは、管理情報記憶部115Aの無効化を行い、自装置の管理情報記憶部115Aが無効となっていることを示すように設定情報を更新する(S269)。これにより、プリンタ210Aの検索応答部118Aは、他のプリンタ210からの検索があった場合には、管理情報記憶部115Aが無効であるという応答データ173Bを作成して応答する。
次に、プリンタ210Aの終了引継部224Aは、プリンタ210Bに対して、有効情報の更新を指示するための有効情報更新要求を生成する(S270)。そして、終了引継部224Aは、通信部122Aを介して、この有効情報更新要求を送信する処理を行う(S271)。
有効情報更新要求を受信したプリンタ210Bでは、終了引継部224Bが、検索部217Bに対して、処理データ記憶部121Bに記憶されている有効情報を更新する指示を与える。このような指示を受けた検索部217Bは、自装置の識別情報及び通信アドレスを示すように有効情報を更新する(S272)。そして、終了引継部224Bは、通信部122Bを介して、有効情報更新要求の送信元であるプリンタ210Aに対し、更新が完了したことを示す更新完了通知を送信する処理を行う(S273)。
更新完了通知を受信したプリンタ210Aでは、終了引継部224Aが、改めて他のプリンタ210を検索するように指示する再検索要求を作成する(S274)。そして、終了引継部224Aは、通信部122Bを介して、この再検索要求をプリンタ210Cに送信する処理を行う(S275)。なお、終了引継部224Aは、図29のステップS261において管理情報171の転送先として決定されたプリンタ210B以外のプリンタ210に対して、この再検索要求を送信する処理を行う。
再検索要求を受信したプリンタ210Cでは、終了引継部224Cが、検索部217Cに対して、他のプリンタ210の再検索を指示する。検索部217Cは、ネットワーク130に接続された他のプリンタ210を検索するために、検索データ172を生成する(S276)。そして、検索部217Cは、通信部122Cを介して、検索データ172をブロードキャストで送信する処理を行う(S277、S278)。
検索データ172を受信したプリンタ210Bでは、検索応答部118Bが、応答データ173Aを作成する(S279)。応答データ173Aには、図9(A)に示されているように、管理情報記憶部115Bが有効であることを示す情報が含まれる。そして、検索応答部118Bは、通信部122Bを介して、プリンタ210Cに、応答データ173Bを送信する処理を行う(S280)。
また、検索データ172を受信したプリンタ210Aでは、検索応答部118Aが、応答データ173Bを作成する(S281)。応答データ173Bには、図9(B)に示されているように、管理情報記憶部115Aが無効であることを示す情報が含まれる。そして、検索応答部118Aは、通信部122Aを介して、プリンタ210Cに、応答データ173Bを送信する処理を行う(S282)。
応答データ173A、173Bを受信したプリンタ210Cでは、検索部217Cが、検索結果を終了引継部224Cに通知するとともに、応答データ173Aを参照して、プリンタ210Bの識別情報と、プリンタ210Bの通信アドレスとを、有効情報として、処理データ記憶部121Cに記憶させる(S283)。そして、終了引継部224Cは、通信部122Cを介して、再検索要求の送信元であるプリンタ210Aに、再検索が完了したことを示す再検索完了通知を送信する処理を行う(S284)。
再検索完了通知を受信したプリンタ210Aでは、終了引継部224Aが、終了処理部223Aに指示することにより、プリンタ210Aの終了処理を再開させる(S285)。
以上説明したように、実施の形態2においては、管理情報記憶部115が有効となっているプリンタ210において終了処理が行われる際には、そのプリンタ210は、他のプリンタ210に対して管理情報171を転送する。さらに、そのプリンタ210は、管理情報171の転送先を除いた他のプリンタ210に対し、プリンタ210の再検索を依頼する。再検索を依頼された他のプリンタ210は、管理情報記憶部115が有効であるプリンタ210を改めて検索する。これにより、画像形成システム200は、印刷データ170の管理を行うプリンタ210が終了された後でも、動作を継続して行うことができる。このため、利用者は、他のプリンタ210で認証を受けることにより、認証を受けたプリンタ210に印刷を実行させることができる。
以上に記載された実施の形態1及び2においては、画像処理装置としてプリンタ110、210を例に説明したが、これに限るものではない。例えば、本発明に係る画像形成装置は、コピー装置、ファクシミリ装置、MFP(Multi Function Peripheral)等、印刷データに基づいて画像を印刷することのできる装置であれば、どのような装置であってもよい。また、印刷データを生成する情報処理装置と、印刷データに基づいて画像を印刷する画像形成装置とが一体となった装置であってもよい。さらに、印刷データ170を生成する装置をPC150としたが、これに限られるものではなく、例えば、携帯端末、PDA(Personal Data Assistance)又は撮像装置等であってもよい。
以上に記載された実施の形態1及び2においては、例えば、図22のステップS183において個別管理情報取得要求が送信され、この応答として、個別管理情報が返信されているが、このようなシーケンスに限定されるものではない。例えば、図22のステップS183において管理情報取得要求が送信され、この応答として、管理情報171が返信されるようになっていてもよい。このような場合には、管理情報171を受信したプリンタ110、210において、印刷データ要求部116が、管理情報171からID情報に対応するレコードを特定して、特定されたレコードの情報を用いて、印刷データ選択画面データを作成すればよい。
また、以上に記載した実施の形態においては、プリンタ110、210により画像形成システム100、200が構成されているが、PC150が画像形成システム100に含まれていてもよい。