説明

画像形成装置、情報処理装置及び画像形成システム

【課題】特定のプリンタに障害が発生した場合でも、印刷データを管理するための情報が失われないようにすること。
【解決手段】プリンタ110は、印刷データに基づいて、印刷を行う印刷部111と、印刷データを記憶するプリンタ110を示す情報を含む管理情報を記憶する記憶部116と、他のプリンタ110との間で、管理情報の内容を同期化する同期化処理を行う情報管理部113と、管理情報に含まれている情報で示されるプリンタ110に記憶されている印刷データを取得して、取得された印刷データに基づいて、印刷部111に印刷を行わせる印刷制御部112とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置、情報処理装置及び画像形成システムに関する。
【背景技術】
【0002】
ネットワークに接続された複数のプリンタの何れかに保存されている印刷データを、利用者が選択した何れかのプリンタで印刷を実行するシステムがある。従来、この種のシステムでは、ネットワークに接続された複数のプリンタの何れかのサーバ機能が有効にされている。そして、印刷データを受信したプリンタは、その印刷データを特定する情報を、サーバ機能が有効にされているプリンタに送信する。何れかのプリンタで認証が行われると、サーバ機能が有効にされているプリンタは、認証された情報に基づいて、印刷データが保存されているプリンタから、認証が行われたプリンタに印刷データを転送させていた(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−118788号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、サーバ機能が有効となったプリンタに障害が発生した場合、そのプリンタに保存されていた印刷データを管理するための情報が失われてしまう。このため、例えば、利用者が印刷を行うためには、印刷データ自体はプリンタに保存されているにも拘わらず、再び印刷データを生成し直さなければならず、不便であった。
【0005】
そこで、本発明は、特定のプリンタに障害が発生した場合でも、印刷データを管理するための情報が失われないようにすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る画像形成装置は、ネットワークに接続され、画像情報を記憶する複数の画像形成装置における各々の画像形成装置であって、前記画像情報に基づいて、画像の形成を行う画像形成部と、前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備えることを特徴とする。
【発明の効果】
【0007】
本発明の一態様によれば、特定のプリンタに障害が発生した場合でも、印刷データを管理するための情報は失われない。
【図面の簡単な説明】
【0008】
【図1】実施の形態1〜4に係る画像形成システムの構成を示す概略図である。
【図2】実施の形態1におけるプリンタの構成を概略的に示すブロック図である。
【図3】実施の形態1における印刷データを示す概略図である。
【図4】実施の形態1における印刷管理テーブルを示す概略図である。
【図5】実施の形態1におけるプリンタリストテーブルの概略図である。
【図6】実施の形態1におけるPCの構成を概略的に示すブロック図である。
【図7】実施の形態1におけるプリンタが他のプリンタを検索する際の処理を示すフローチャートである。
【図8】実施の形態1における検索データの一例を示す概略図である。
【図9】実施の形態1において、他のプリンタ又はPCからの検索データに応答する際の処理を示すフローチャートである。
【図10】実施の形態1における検索応答データを示す概略図である。
【図11】実施の形態1において、プリンタが印刷データを受信した場合の処理を示すフローチャートである。
【図12】実施の形態1における印刷管理情報の同期化処理を示すフローチャートである。
【図13】(A)及び(B)は、実施の形態1における更新データを示す概略図である。
【図14】実施の形態1において、更新データを受信したプリンタでの処理を示すフローチャートである。
【図15】実施の形態1において、プリンタが認証印刷データに基づいて印刷を行う際の処理を示すフローチャートである。
【図16】実施の形態1における印刷データ選択画面の一例を示す概略図である。
【図17】実施の形態1において、プリンタがネットワーク上に存在する他のプリンタを検索し、さらに印刷データを送信する際の処理を示すフローチャートである。
【図18】実施の形態1におけるプリンタの起動時の処理を示すシーケンス図である。
【図19】実施の形態1におけるPCによる印刷時の処理を示すシーケンス図である。
【図20】(A)及び(B)は、実施の形態1における更新前の印刷管理テーブルと、更新後の印刷管理テーブルとを示す概略図である。
【図21】実施の形態1において、PCの利用者より認証の指示を受けた際の処理を示すシーケンス図である。
【図22】実施の形態2におけるプリンタの構成を概略的に示すブロック図である。
【図23】実施の形態2における印刷データ削除通知データを示す概略図である。
【図24】実施の形態2におけるプリンタ削除通知データを示す概略図である。
【図25】実施の形態2におけるPCの構成を概略的に示すブロック図である。
【図26】実施の形態2における印刷データを示す概略図である。
【図27】実施の形態2における再印刷画面を示す概略図である。
【図28】実施の形態2におけるプリンタの動作確認処理を示すフローチャートである。
【図29】実施の形態2において、プリンタがプリンタ削除通知データを受信した場合の処理を示すフローチャートである。
【図30】実施の形態2において、PCが印刷削除通知データを受信した場合の処理を示すフローチャートである。
【図31】実施の形態2における画像形成システムにおける動作を示すシーケンス図である。
【図32】実施の形態2における印刷管理テーブルの一例を示す概略図である。
【図33】実施の形態3におけるプリンタの構成を概略的に示すブロック図である。
【図34】実施の形態3における印刷データを示す概略図である。
【図35】実施の形態3における印刷管理テーブルを示す概略図である。
【図36】実施の形態3におけるプリンタリストテーブルの概略図である。
【図37】実施の形態3におけるPCの構成を概略的に示すブロック図である。
【図38】実施の形態3において、PCで印刷データを作成し、送信する処理を示すフローチャートである。
【図39】実施の形態3において、プリンタで印刷データを受信した場合の処理を示すフローチャートである。
【図40】実施の形態3における情報管理部が行う同期化処理を示すフローチャートである。
【図41】実施の形態3におけるプリンタがロック要求メッセージを受信した際の処理を示すフローチャートである。
【図42】実施の形態3におけるプリンタがロック解除メッセージを受信した場合の処理を表すフローチャートである。
【図43】実施の形態3におけるプリンタが更新データを受信した際の処理を示すフローチャートである。
【図44】実施の形態3において、印刷管理テーブルの同期化を行う際の処理を示すシーケンス図である。
【図45】実施の形態3において、複数のプリンタで、印刷管理テーブルの更新理由が同時に発生した場合の処理を示すシーケンス図(その1)である。
【図46】実施の形態3において、複数のプリンタで、印刷管理テーブルの更新理由が同時に発生した場合の処理を示すシーケンス図(その2)である。
【図47】実施の形態3において、プリンタが認証情報の付加された印刷データを印刷する場合の処理を示すフローチャートである。
【図48】実施の形態3における印刷データ選択画面の一例を示す概略図である。
【図49】実施の形態3において、印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。
【図50】実施の形態3において、プリンタが他のプリンタに障害が発生したことを検知した場合の処理を示すフローチャートである。
【図51】実施の形態3におけるエラーメッセージ画面の一例を示す概略図である。
【図52】実施の形態4におけるプリンタの構成を概略的に示すブロック図である。
【図53】実施の形態4におけるPCの構成を概略的に示すブロック図である。
【図54】実施の形態4において、印刷データ及び個別管理情報を作成し、送信する処理を示すフローチャートである。
【図55】図実施の形態4において、印刷データ又は個別管理情報を受信した場合の処理を示すフローチャートである。
【図56】実施の形態4において、プリンタから印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。
【発明を実施するための形態】
【0009】
実施の形態1.
(構成の説明)
図1は、画像形成システム100の構成を示す概略図である。画像形成システム100は、画像形成装置としての複数のプリンタ110A、110B、110C、・・・、110D(特に各々を区別する必要がないときは、プリンタ110という)を備える。プリンタ110は、ネットワーク130に接続されている。ネットワーク130には、情報処理装置としてのパーソナルコンピュータ(以下、PCという)150も接続されている。なお、図1の括弧内の符号は、実施の形態2〜4における構成を示す。
【0010】
図2は、プリンタ110の構成を概略的に示すブロック図である。プリンタ110は、画像形成部としての印刷部111と、画像形成制御部としての印刷制御部112と、情報管理部113と、検索部114と、検索応答部115と、記憶部116と、認証処理部117と、ユーザインタフェース部(以下、UIF部という)118と、通信部119とを備える。
【0011】
印刷部111は、PC150から送られてきた、画像情報としての印刷データに含まれている印刷画像データのラスタライズ化を行い、ラスタライズ化された画像を印刷する。例えば、プリンタ110が電子写真方式を採用している場合、印刷部111は、感光ドラム上に静電潜像を形成し、その静電潜像にトナーを付着させてトナー像を形成し、このトナー像を記録紙に転写して、定着させることで印刷を行う。
【0012】
ここで、実施の形態1における印刷データについて説明する。図3は、印刷データ170を示す概略図である。印刷データ170は、テキストデータより構成される制御データ170aと、バイナリデータより構成される印刷画像データとしての実体データ170bとにより構成される。図3に示されている制御データ170aにおいて、左端の数字と、その隣のコロンの記号とは、説明のための行番号を示すために追加されたものであり、これらは、制御データ170aには含まれない。制御データ170aは、PJL(Printer Job Language:プリンタジョブ言語)の集合体であり、プレーンテキストで構成されている。制御データ170aの各行は、行頭の「@PJL」の後に、変数名を記述し、さらに「=」により変数の内容を記述する。2行目から11行目までの「AUXJOBINFO DATA」と記述された変数は、拡張変数である。拡張変数の内容は、さらに変数名とその内容を含んでいる。図3では、制御データ170aには、以下のような内容が記述されている。
【0013】
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がテキストデータで構成されていてもよい。
【0014】
図2の説明に戻り、印刷制御部112は、印刷データ170を管理する。また、印刷制御部112は、印刷部111を制御して、印刷する処理を実行させる。例えば、印刷制御部112は、通信部119を介して、PC150より送信された印刷データ170を取得する。印刷制御部112は、取得された印刷データ170の制御データ170aを参照して、その印刷データ170をすぐに印刷するべきか否かを判断する。印刷制御部112は、印刷データ170をすぐに印刷すべきと判断した場合には、この印刷データ170を印刷部111に渡して、印刷させる。一方、印刷制御部112は、印刷データ170をすぐに印刷すべきではないと判断した場合には、この印刷データ170を記憶部116に記憶させる。ここで、印刷制御部112は、印刷データ170を記憶させる際に、その印刷データ170を識別するための識別情報として、各々の印刷データ170に名称を付与する。この名称は、自装置であるプリンタ110内で重複しないように付与される。例えば、この名称は、ファイル名として付与される。なお、印刷制御部112は、印刷データ170を印刷データ記憶部113に記憶させた際には、印刷データ170から制御データ170aを抽出して、情報管理部113に与える。
【0015】
情報管理部113は、記憶部116に記憶されている印刷管理情報を管理する処理を行う。印刷管理情報は、記憶部116に記憶されている印刷データ170を管理するための管理情報である。印刷管理情報は、各々の印刷データ170を特定するための特定情報と、当該特定情報で特定される印刷データ170の保存先を特定する保存先情報とを含む。
【0016】
図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の名称を格納する。この名称は、印刷制御部112により付与されたものである。
なお、図4に示されている例では、制御データ欄171a及び名称欄171cに格納される情報が特定情報であり、保存先欄171bに格納される情報が保存先情報となる。
ここで、例えば、情報管理部113は、印刷制御部112より制御データ170aを受け取ると、印刷管理テーブル171に新たなレコードを追加して、このレコードに、受け取った制御データ170aと、自装置であるプリンタ110のプリンタ名と、記憶させた印刷データ170の名称とを格納する。
【0017】
図2の説明に戻り、情報管理部113は、印刷管理テーブル171を更新する際には、印刷管理テーブル171の内容を、ネットワーク130に接続されている他のプリンタ110との間で一致させるように、印刷管理情報の同期化処理を行う。また、情報管理部113は、検索部114から印刷管理情報の内容を受け取った場合には、印刷管理テーブル171に格納されている内容が、受け取った印刷管理情報の内容と一致するように、印刷管理テーブル171の更新を行う。
【0018】
検索部114は、ネットワーク130に接続されている他のプリンタ110を検索する。例えば、検索部114は、通信部119を介して、検索データをマルチキャストで送信する処理を行い、通信部119が、この検索データに対する検索応答データを受信するか否かにより検索を実行する。そして、検索部114は、通信部119により受信された検索応答データに印刷管理テーブル171の内容が含まれている場合には、含まれている印刷管理情報の内容を情報管理部113に与える。また、検索部114は、通信部119で受信された検索応答データから送信元のプリンタ110の識別情報を取得して、この識別情報を記憶部116に記憶されている、装置リストとしてのプリンタリストに格納する。
【0019】
図5は、プリンタリストとしてのプリンタリストテーブル172の概略図である。プリンタテーブル172は、プリンタ名欄172aと、IPアドレス欄172bとを有する。
プリンタ名欄172aは、検索データに対する検索応答データの送信元であるプリンタ110のプリンタ名を格納する。
IPアドレス欄172bは、検索データに対する検索応答データの送信元であるプリンタ110の通信アドレスであるIPアドレスを格納する。
検索部114は、通信部119が検索データに対する検索応答データを受信すると、この検索応答データからプリンタ名を抽出するとともに、この検索応答データを格納したIPパケットから送信元のIPアドレスを抽出して、これらをプリンタリストテーブル172に格納する。
【0020】
図2の説明に戻り、検索応答部115は、通信部119がネットワーク130に接続されたプリンタ110及びPC150からの検索データを受信した場合に、この検索データに応答するための検索応答データを生成する。そして、検索応答部115は、通信部119を介して、生成された検索応答データを、検索データの送信元に送信する処理を行う。ここで、本実施の形態においては、検索応答部115は、プリンタ110が送信元になっている検索データに対する検索応答データには、自装置の印刷管理情報の内容を含める。
また、検索応答部115は、通信部119が検索データを受信すると、この検索データの送信元のプリンタ110のプリンタ名を抽出するとともに、この検索データを格納したIPパケットから送信元のIPアドレスを抽出して、これらをプリンタリストテーブル172に格納する。
【0021】
記憶部116は、プリンタ110での処理に必要な情報を記憶する。例えば、記憶部116は、印刷データ170、印刷管理テーブル171及びプリンタリストテーブル172を記憶する。
【0022】
認証処理部117は、プリンタ110の利用者の認証を行う。例えば、認証処理部117は、UIF部118を介して、利用者のID情報を取得して、当該ID情報の認証を行う。認証処理部117は、認証が成功した場合には、印刷制御部112に、認証が成功した利用者のID情報を与える。なお、このID情報は、利用者に固有のID情報であり、利用者を一意に識別するための利用者識別情報として機能する。そして、利用者が同じであれば、ID情報で示される値は、制御データ170a(図3参照)に含まれる拡張変数「UserID」の値と同じになる。制御データ170aにおける「UserID」の値は、例えば、利用者がPC150にログインする際に、この利用者が保有するICカードを利用したログイン認証を行うことにより取得される。
【0023】
UIF部118は、プリンタ110と利用者との間のインタフェースとして機能する。UIF部118は、例えば、ディスプレイとキーデバイスとの組み合わせ、又は、タッチパネルディスプレイ等のように、利用者への出力部と利用者からの入力部とを備える。なお、UIF部118は、認証処理部117が認証処理を行う際に必要な情報を読み取るための読取装置を備えていてもよい。このような読取装置としては、利用者の生体情報を取得するためのスキャン装置、利用者のICカードからID情報等を読み取るためのICカードリーダ等がある。
通信部119は、ネットワーク130との間の通信を実行する。
【0024】
以上に記載された、印刷制御部112、情報管理部113、検索部114、検索応答部115及び認証処理部117は、図示してはいないが、CPU(Central Processing Unit)が、HDD(Hard Disk Drive)及びROM(Read Only Memory)等の記憶装置からプログラムを読み出し、実行することにより実現することができる。なお、これらを、例えば、ASIC(Appkication Specific Integrated Circuits)、FPGA(Field Programmable Gate Array)等の集積ロジックICによりハード的に実現されるものでもよい。
また、記憶部116は、揮発性メモリ、フラッシュメモリ等の不揮発性メモリ及びHDD等の記憶装置により実現することができる。
さらに、通信部119は、NIC(Network Interface Card)により実現することができる。
【0025】
図6は、PC150の構成を概略的に示すブロック図である。PC150は、印刷データ生成部151と、プリンタ検索部152と、記憶部153と、UIF部154と、通信部155とを備える。
【0026】
印刷データ生成部151は、印刷データ170を作成する。例えば、印刷データ生成部151は、アプリケーション等を利用して、印刷データ170を作成する。印刷データ170には、図3に示されているような制御データ170aが含まれている。制御データ170aは、利用者からの指示又は選択により決定されるものと、利用者の指示及び選択によらずに決定されるものがある。さらに、印刷データ生成部151は、通信部155を介して、作成された印刷データ170を、プリンタ検索部152で検索されたプリンタ110に送信する処理を行う。
プリンタ検索部152は、ネットワーク130に接続されたプリンタ110を検索するネットワーク検索部として機能する。例えば、プリンタ検索部152は、通信部155を介して、検索データをマルチキャストで送信する処理を行い、通信部155が、この検索データに対する検索応答データを受信するか否かにより検索を実行する。そして、プリンタ検索部152は、検索により複数のプリンタ110が発見された場合には、発見された複数のプリンタ110から、印刷データ170を送信する1つのプリンタ110を選択する。プリンタ検索部152は、検索又は選択されたプリンタ110のプリンタ名及びIPアドレスを印刷データ生成部151に与える。
記憶部153は、PC150での処理に必要な情報を記憶する。例えば、本実施の形態においては、プリンタ検索部152により検索されたプリンタ110と、当該プリンタ110の通信先とを識別することのできる情報を記憶する。一例として、記憶部153は、検索されたプリンタ110のプリンタ名及びIPアドレスを記憶する。
UIF部154は、PC150と利用者との間のインタフェースとして機能する。UIF部154は、例えば、ディスプレイとキーデバイスの組み合わせ、又は、タッチパネルディスプレイ等のように、利用者への出力部と利用者からの入力部とを備える。
通信部155は、ネットワーク130との間の通信を実行する。
【0027】
以上に記載された、印刷データ生成部151、プリンタ検索部152は、図示してはいないが、CPUがHDD及びROM等の記憶装置からプログラムを読み出し、実行することにより実現することができる。また、記憶部153は、揮発性メモリ、フラッシュメモリ等の不揮発性メモリ及びHDD等の記憶装置により実現することができる。さらに、通信部155は、NICにより実現することができる。
【0028】
(動作の説明)
次に、本発明の実施の形態1の動作について説明する。
【0029】
図7は、プリンタ110が他のプリンタ110を検索する際の処理を示すフローチャートである。このフローは、例えば、プリンタ110の電源が投入されて、ネットワーク130への接続が確立された直後に開始される。
【0030】
まず、プリンタ110の検索部114は、ネットワーク130に接続された他のプリンタ110を検索する(S10)。例えば、検索部114は、検索データを生成し、通信部119を介して、この検索データをネットワーク130に対しブロードキャストで送信し、他のプリンタ110からの応答を所定時間待つ。
【0031】
図8は、検索データ173の一例を示す概略図である。検索データ173は、検索を実行するプリンタ110の識別情報を少なくとも含んでいる。図8に示されている検索データ173は、Type要素と、ColorMono要素と、MediaSize要素と、Name要素と、Capacity要素とを備える構造化文書のデータである。
Type要素は、検索を実行するプリンタ110の機種情報を示す。
ColorMono要素及びMediaSize要素は、検索を実行するプリンタ110の印刷能力を示す。ここでは、ColorMono要素は、検索を実行するプリンタ110がカラー印刷及びモノクロ印刷の何れに対応しているかを示す。MediaSize要素は、検索を実行するプリンタ110が使用する媒体のサイズを示す。
Name要素は、検索を実行するプリンタ110のプリンタ名を示す。
Capacity要素は、検索を実行するプリンタ110の記憶容量のうち、空き容量を示す。
なお、検索データ173に、送信元のプリンタ110のIPアドレスが含まれていてもよい。
【0032】
図7の説明に戻り、検索部114は、他のプリンタ110から応答があったか否かを確認する(S11)。例えば、検索部114は、通信部119が検索応答データを受信したか否かを確認する。そして、検索部114は、応答があった場合(S11:Yes)には、ステップS12の処理に進み、応答がなかった場合(S11:No)には、ステップS14の処理に進む。
【0033】
ステップS12では、検索部114は、通信部119が受信した検索応答データを受け取る。そして、検索部114は、受け取った検索応答データから、印刷管理テーブル171の内容#1を抽出して、抽出された印刷管理テーブル171の内容を情報管理部113に与える。情報管理部113は、記憶部116に記憶されている印刷管理テーブル171の内容#2を、受け取った印刷管理テーブル171の内容#1に一致するように更新する。例えば、情報管理部113は、印刷管理テーブル171の内容#2を、受け取った印刷管理テーブル171の内容#1で置き換える。なお、検索部114は、通信部119が複数の検索応答データを受信した場合には、何れか1つの検索応答データに含まれている印刷管理テーブル171の内容で更新を行えばよい。
【0034】
また、検索部114は、通信部119で受信された検索応答データから送信元のプリンタ110のプリンタ名を取得し、また、この検索応答データを格納したIPパケットの送信元のIPアドレスを取得して、これらの情報を記憶部116に記憶されているプリンタリストテーブル172に格納する(S13)。
【0035】
一方、ステップS14では、検索部114は、他のプリンタ110が発見されなかったことを示す検索結果を情報管理部113に通知する。このような検索結果の通知を受けた情報管理部113は、記憶部116に記憶されている印刷管理テーブル171の初期化を行う。例えば、検索部114は、印刷管理テーブル171に格納されている情報を全て削除する。
【0036】
図7で示されているフローにより、プリンタ110は、他のプリンタ110から印刷管理テーブル171の内容を取得して、自装置のテーブルに反映することができる。また、ネットワーク130に接続されている他のプリンタ110の識別情報を取得することができる。
【0037】
図9は、プリンタ110の検索応答部115が、他のプリンタ110又はPC150からの検索データに応答する際の処理を示すフローチャートである。このフローは、検索応答部115が、通信部119を介して、他のプリンタ110又はPC150から送信された検索データを受け取ることにより開始される。
【0038】
検索応答部115は、通信部119から受け取った検索データがプリンタ110から送信されたものであるか否かを確認する(S20)。例えば、本実施の形態では、図8に示されているように、プリンタ110からの検索データ173には、ColorMono要素、MediaSize要素及びCapacity要素が含まれているため、検索応答部115は、これらの要素の存在を確認することにより、検索データがプリンタ110から送信されたものであるか否かを確認することができる。また、例えば、プリンタ名にプリンタであることを示す識別情報を含めておくことにより、検索応答部115は、検索データのName要素の内容を確認することで、検索データがプリンタ110から送信されたものであるか否かを確認することができる。そして、検索応答部115は、検索データがプリンタ110から送信されたものである場合(S20:Yes)には、ステップS21の処理に進み、検索データがプリンタ110から送信されたものではない場合、言い換えると、これがPC150から送信されたものである場合(S20:No)には、ステップS23の処理に進む。
【0039】
ステップS21では、検索応答部115は、通信部119で受信された検索データ173に基づいて、送信元のプリンタ110のプリンタ名を取得して、また、この検索173を格納したIPパケットの送信元のIPアドレスを取得して、これらの情報を記憶部116に記憶されているプリンタリストテーブル172に格納する。
【0040】
次に、検索応答部115は、検索データ173を送信してきたプリンタ110に対する検索応答データを生成する(S22)。ここでは、検索応答部115は、記憶部116に記憶されている印刷管理テーブル171の内容を検索応答データに含める。
【0041】
図10は、検索応答データ174を示す概略図である。検索応答データ174は、応答するプリンタ110の識別情報及び応答するプリンタ110が有する印刷管理テーブル171の内容を少なくとも含んでいる。図10に示されている検索応答データ174は、Type要素と、ColorMono要素と、MediaSize要素と、Name要素と、Capacity要素と、Table要素とを備える構造化文書のデータである。
Type要素は、応答するプリンタ110の機種情報を示す。
ColorMono要素及びMediaSize要素は、応答するプリンタ110の印刷能力を示す。ここでは、ColorMono要素は、応答するプリンタ110がカラー印刷及びモノクロ印刷の何れに対応しているかを示す。MediaSize要素は、応答するプリンタ110が使用する媒体のサイズを示す。
Name要素は、応答するプリンタ110のプリンタ名を示す。
Capacity要素は、応答するプリンタ110の記憶容量のうち、空き容量を示す。
Table要素は、応答するプリンタ110の記憶部116に記憶されている印刷管理テーブル171の内容を格納する。例えば、Table要素は、PJL要素と、PrinterName要素と、FileName要素とを有する。そして、例えば、図4に示されている印刷管理テーブル171のレコード毎に、PJL要素には、制御データ欄171aの情報が格納され、PrinterName要素には、保存先欄171bの情報が格納され、FileName要素には、名称欄171cの情報が格納される。
なお、検索応答データ174に、応答するプリンタ110のIPアドレスが含まれていてもよい。
【0042】
図9の説明に戻り、検索応答部115は、ステップS20において検索データの送信元がプリンタ110ではないと判断した場合(S20:No)には、検索データを送信してきた、プリンタ110以外の装置(ここでは、PC150)に対する検索応答データを生成する(S23)。ステップS23で生成される検索応答データは、少なくとも、応答するプリンタ110の識別情報を含み、応答するプリンタの印刷管理テーブル171の内容は含まれない。例えば、ステップS23で生成される検索応答データは、図10に示されている検索応答データ174からTable要素を除いた残りの要素により構成することができる。
【0043】
そして、ステップS24では、検索応答部115は、通信部119を介して、ステップS22又はS23で生成された検索応答データを、検索データの送信元に送信する処理を行う。
【0044】
以上のように、図9に示されているフローによれば、検索を行ったプリンタ110は、応答したプリンタ110が記憶している印刷管理テーブル171と同様の内容の印刷管理テーブル171を取得することができる。
【0045】
図11は、プリンタ110が、印刷データ170を受信した場合の処理を示すフローチャートである。このフローは、プリンタ110の印刷制御部112が、通信部119から印刷データ170を受け取った際に開始される。
【0046】
印刷制御部112は、通信部119より、ネットワーク130を介して送信されてきた印刷データ170を受け取る(S30)。そして、印刷制御部112は、受け取った印刷データ170から制御データ170aを取り出す(S31)。
【0047】
次に、印刷制御部112は、ステップS31で取り出された制御データ170aを調査し、受信された印刷データ170が、認証を必要とする認証印刷データであるか否かを判断する(S32)。例えば、印刷制御部112は、制御データ170aの拡張変数である「Confidential」の値を確認する。この値が「Yes」である場合には、印刷制御部112は、受信された印刷データ170が認証印刷データであると判断し、この値が「No」である場合には、印刷制御部112は、受信された印刷データ170が認証印刷データではないと判断する。そして、印刷制御部112は、印刷データ170が認証印刷データであると判断した場合(S32:Yes)には、ステップS33の処理に進み、印刷データ170が認証印刷データではないと判断した場合(S32:No)には、ステップS35の処理に進む。
【0048】
ステップS33では、印刷制御部112は、印刷データ170に自装置内で一意となる名称を与えて、この印刷データ170を記憶部116に記憶させる。また、印刷制御部112は、ステップS31で取り出された制御データ170aを情報管理部113に与えて、情報管理部113に印刷管理情報の更新指示を与える。
情報管理部113は、制御データ170a、及び、印刷管理情報の更新指示を受け取ると、印刷管理テーブル171の同期化処理を行う(S34)。ステップS34の処理については、図11を用いて詳細に説明する。
【0049】
一方、印刷制御部112は、ステップS32において、ステップS30で取得された印刷データ170が認証印刷データではないと判断した場合(S32:No)には、ステップS35の処理に進む。ステップS35では、印刷制御部112は、この印刷データ170を印刷部111に送り、印刷部111に印刷を行わせる。
【0050】
以上のように、プリンタ110の印刷制御部112は、受信した印刷データ170の制御データ170aを参照し、すぐに印刷するデータなのか、認証を必要とする認証印刷データなのかを判断する。さらに、印刷制御部112は、認証が必要な場合には、印刷データ170及び制御データ170aを保存させて、他のプリンタ110と同期化処理を行う。
【0051】
図12は、印刷管理情報の同期化処理を示すフローチャートである。情報管理部113は、印刷制御部112から印刷管理情報の更新指示を受けた際に、本フローを開始する。
【0052】
情報管理部113は、印刷制御部112からの更新指示の内容に応じて、更新データを生成する(S40)。更新データは、他のプリンタ110との間で印刷管理テーブル171の同期を取るために、更新内容を特定するものである。
図13(A)及び(B)は、更新データ175A、175B(以下、各々を特に区別する必要がないときは、更新データ175という)を示す概略図である。
図13(A)は、印刷管理テーブル171に新たな制御データ170aを追加する際の更新データ175Aを示す。図13(A)に示されているように、更新データ175Aは、Command要素と、PJL要素と、PriterName要素と、FileName要素とを備える。Command要素は、更新方法として、印刷管理テーブル171に新たな制御データ170aを追加する指示であるADDを示す。PJL要素は、印刷管理テーブル171の制御データ欄171aに格納する情報を示す。PriterName要素は、印刷管理テーブル171の保存先欄171bに格納する情報を示す。FileName要素は、印刷管理テーブル171の名称欄171cに格納する情報を示す。
一方、図13(B)は、印刷管理テーブル171から制御データ170aを削除する際の更新データ175Bを示す。図13(B)に示されているように、更新データ175Aは、Command要素と、PriterName要素と、FileName要素とを備える。Command要素は、更新方法として、印刷管理テーブル171から制御データ170aを削除する指示であるDELETEを示す。PriterName要素は、印刷管理テーブル171において、削除される制御データ170aと同じレコードの保存先欄171bに格納されている情報を示す。FileName要素は、印刷管理テーブル171において、削除される制御データ170aと同じレコードの名称欄171cに格納されている情報を示す。
そして、印刷制御部112からの更新指示の内容が「追加」である場合には、情報管理部113は、図13(A)に示されているような更新データ175Aを生成し、印刷制御部112からの更新指示の内容が「削除」である場合には、情報管理部113は、図13(B)に示されているような更新データ175Bを生成する。
【0053】
図12の説明に戻り、情報管理部113は、ステップS40で更新データ175を作成すると、記憶部116からプリンタリストテーブル172を取得する(S41)。
そして、情報管理部113は、通信部119を介して、ステップS40で生成された更新データ175を、プリンタリストテーブル172に情報が格納されているプリンタ110に送信する処理を行う(S42)。
【0054】
そして、情報管理部113は、印刷制御部112からの更新指示の内容に応じて、記憶部116に記憶されている印刷管理テーブル171を更新する(S43)。例えば、印刷制御部112からの更新指示の内容が「追加」である場合には、情報管理部113は、印刷管理テーブル171に新たなレコードを追加する。一方、印刷制御部112からの更新指示の内容が「削除」である場合には、印刷管理テーブル171から対応するレコードを削除する。
【0055】
以上のように、情報管理部113は、印刷管理テーブル171を更新する際に、その更新内容を示す更新データ175を他のプリンタ110に送信する処理を行うことで、他のプリンタ110との間で、印刷管理テーブル171の同期を取ることができる。なお、本実施の形態では、更新データ175は、更新の内容を示すデータであるが、このような例に限定されるものではない。例えば、更新データが、更新後の印刷管理テーブル171の内容を示すデータであってもよい。
【0056】
図14は、更新データ175を受信したプリンタ110での処理を示すフローチャートである。本フローは、通信部119が更新データ175を受信した際に開始される。
【0057】
情報管理部113は、通信部119から更新データ175を受け取る(S50)。
そして、情報管理部113は、受け取った更新データ175で示される更新の内容に応じて、印刷管理テーブル117を更新する(S51)。例えば、情報管理部113は、更新データ175のCommand要素がADDである場合には、印刷管理テーブル171に新たなレコードを追加して、PJL要素、PriterName要素及びFileName要素の情報を、それぞれ、制御データ欄171a、保存先欄171b及び名称欄171cに格納する。また、情報管理部113は、更新データ175のCommand要素がDELETEである場合には、印刷管理テーブル171において、更新データ175のPriterName要素及びFileName要素の情報が、それぞれ保存先欄171b及び名称欄171cに格納されているレコードを特定し、特定されたレコードを削除する。
【0058】
以上のように、何れかのプリンタ110で印刷管理テーブル117が更新されると、他のプリンタ110でも、同様の更新が行われる。なお、他のプリンタ110から、更新データとして、印刷管理テーブル171の内容が送信されてきた場合には、情報管理部113は、記憶部116に記憶されている印刷管理テーブル171の内容を、送信されてきた内容で置き換える。さらに、図14に示されているフローチャートにより、印刷管理テーブル171の更新を行ったプリンタ110は、更新後の印刷管理テーブル171の内容を、更新データ175の送信元のプリンタ110に送ることで、例えば、更新データ175の送信元のプリンタ110の情報管理部113は、内容の整合性を確認することができる。この際、例えば、プリンタ110の情報管理部113は、更新後の印刷管理テーブル171の内容を、例えば、ハッシュ関数等の一方向関数を用いて計算した値を、更新データ175の送信元のプリンタ110に送ることも可能である。このような場合には、更新データ175の送信元のプリンタ110でも、情報管理部113が、更新後の印刷管理テーブル171の内容から、一方向関数を用いて計算した値を算出して、算出された値と、送られてきた値とを比較することで、整合性を確認することができる。
【0059】
図15は、プリンタ110が、認証印刷データに基づいて印刷を行う際の処理を示すフローチャートである。このフローは、例えば、プリンタ110のUIF部118が、利用者より印刷指示の入力を受けた場合に開始される。
【0060】
まず、プリンタ110の認証処理部117は、利用者の認証を実行する(S60)。例えば、認証処理部117は、UIF部118を介して、ICカードから利用者の認証情報であるID情報を取得できるか否かで認証を行う。また、認証処理部117は、UIF部118を介して、ICカードから利用者のID情報を取得し、例えば、記憶部116に記憶されている利用者IDテーブル等の参照情報に登録されている値と比較して、ID情報で示される値が参照情報に登録されているか否かで認証を行う。また、認証処理部117は、UIF部118を介して、ICカードから利用者のID情報とパスワードとを取得し、図示しない外部の認証サーバ、例えば、LDAP(Lightweight Directory Access Protocol)サーバ等でこれらの情報の検証を受けることで、認証を行う。ステップS60での認証により、印刷制御部112は、利用者のID情報を取得する。
【0061】
次に、認証処理部117は、利用者の認証に成功したか否かを判断する(S61)。そして、認証処理部117は、認証に成功した場合(S61:Yes)には、ステップS62の処理に進み、認証に失敗した場合(S61:No)には、ステップS70の処理に進む。
【0062】
ステップS62では、印刷制御部112は、記憶部116に記憶されている印刷管理テーブル171を取得する。
【0063】
そして、印刷制御部112は、ステップS62で取得された印刷管理テーブル171に、ステップS60で取得された利用者のID情報に対応する印刷データ170があるか否かを確認する(S63)。例えば、印刷制御部112は、印刷管理テーブル171の制御データ欄171aに格納されている制御データ170aにおいて、「UserID」の拡張変数の値が、ステップS60で取得された利用者のID情報と一致ものがあるか否かにより、この確認を行う。そして、印刷制御部112は、このような印刷データ170があると判断した場合(S63:Yes)には、ステップS64の処理に進み、このような印刷データ170がないと判断した場合(S63:No)には、ステップS71の処理に進む。
【0064】
ステップS64では、印刷制御部112は、ステップS62で取得した印刷管理テーブル171に基づいて、処理対象とする印刷データ170を選択するための印刷データ選択画面を生成する。そして、印刷制御部112は、この印刷データ選択画面をUIF部118に送り、UIF部118に印刷データ選択画面を表示させる。ここで、この印刷データ選択画面には、ステップS60で認証に成功した利用者が、何れかのプリンタ110に送信し、未だ印刷されていない全ての印刷データ170を特定する情報が表示される。また、印刷データ170を特定する情報には、例えば、制御データ170aに含まれている、少なくとも1つの変数の値が含まれるのが望ましい。
【0065】
図16は、印刷データ選択画面176の一例を示す概略図である。印刷データ選択画面176は、印刷データ選択領域176aと、印刷指示領域176bと、削除指示領域176cと、Cancel指示領域176dとを備える。
印刷データ選択領域176aは、印刷データ170の選択の入力を受け付ける。例えば、印刷データ選択領域176aには、ステップS62で取得された印刷管理テーブル171に含まれている制御データ170aの拡張変数である「DocumentName」の値(文書名)と、拡張変数「Data」の値の一部(日付)と、拡張変数「Page」の値(ページ数)とが表示されており、これらの値により、印刷データ170が特定される。なお、印刷データ選択領域176aに表示しきれない印刷データ170については、スクロールバー176eを下方に移動させることにより、表示させることができる。
そして、UIF部118は、利用者により、印刷データ選択領域176aにおいて印刷データ170が選択され、印刷指示領域176bを選択した実行指示の入力を受け付けた場合には、印刷データ選択領域176aにおいて選択された情報と、印刷指示とを印刷制御部112に与える。
また、UIF部118は、利用者により、印刷データ選択領域176aにおいて印刷データ170が選択され、削除指示領域176cを選択した実行指示の入力を受け付けた場合には、印刷データ選択領域176aにおいて選択された情報と、削除指示とを印刷制御部112に与える。
さらに、UIF部118は、利用者により、Cancel指示領域176dを選択した実行指示の入力を受け付けた場合には、キャンセル指示を印刷制御部112に与える。
【0066】
図15の説明に戻り、印刷制御部112は、UIF部118からの指示を確認する(S65)。そして、印刷制御部112は、UIF部118から、印刷指示を受けた場合には、ステップS66の処理に進み、削除指示を受けた場合には、ステップS68の処理に進み、キャンセル指示を受けた場合には、フローを終了する。なお、印刷制御部112は、UIF部118から、所定時間指示を受け取らなかった場合には、キャンセル指示を受けたものと判断して、図15のフローを終了してもよい。
【0067】
ステップS66では、印刷制御部112は、印刷指示を受けた印刷データ170を取得する処理を行う。例えば、印刷制御部112は、印刷管理テーブル171において、図16の印刷データ選択画面176の印刷データ選択領域176aで選択された印刷データ170の制御データ170aが制御データ欄171aに格納されているレコードを特定する。そして、印刷制御部112は、特定されたレコードの保存先欄171bの情報を確認する。確認された保存先欄171bの情報が自装置を示す場合には、特定されたレコードの名称欄171cに格納されている名称に対応する印刷データ170を記憶部116から取得する。この際、印刷制御部112は、取得された印刷データ170を記憶部116から削除する。一方、確認された保存先欄171bの情報が他のプリンタ110を示す場合には、印刷制御部112は、特定されたレコードの名称欄171cに格納されている名称を含む転送要求データを生成する。印刷制御部112は、通信部119を介して、確認された保存先欄171bの情報で特定されるプリンタ110に、生成された転送要求データを送信する処理を行う。なお、送信先のプリンタ110の通信アドレスは、記憶部116に記憶されているプリンタリストテーブル172から取得される。そして、印刷制御部112は、通信部119を介して、転送要求データの応答として、印刷対象となる印刷データ170を取得する。
【0068】
印刷制御部112は、ステップS66で取得された印刷データ170を印刷部111に送り、印刷部111に印刷を行わせる(S67)。
【0069】
一方、印刷制御部112は、ステップS65でUIF部118から受けた指示が削除指示である場合には、ステップS68の処理に進む。ステップS68では、印刷制御部112は、UIF部118から指示された印刷データ170を削除する処理を行う。例えば、印刷制御部112は、印刷管理テーブル171において、図16の印刷データ選択画面176の印刷データ選択領域176aで選択された印刷データ170の制御データ170aが制御データ欄171aに格納されているレコードを特定する。そして、印刷制御部112は、特定されたレコードの保存先欄171bの情報を確認する。確認された保存先欄171bの情報が自装置を示す場合には、特定されたレコードの名称欄171cに格納されている名称に対応する印刷データ170を記憶部116から削除する。一方、確認された保存先欄171bの情報が他のプリンタ110を示す場合には、印刷制御部112は、特定されたレコードの名称欄171cに格納されている名称を含む削除要求データを生成する。印刷制御部112は、通信部119を介して、確認された保存先欄171bの情報で特定されるプリンタ110に、生成された削除要求データを送信する処理を行う。なお、送信先のプリンタ110の通信アドレスは、記憶部116に記憶されているプリンタリストテーブル172から取得される。
【0070】
そして、印刷制御部112は、情報管理部113に印刷管理情報の更新指示を与える(S69)。ここでの更新指示は、印刷データ170の削除を指示するものである。
【0071】
また、ステップS61において、利用者の認証に失敗した場合(S61:No)には、ステップS70の処理に進む。ステップS70では、認証処理部117は、認証に失敗したことを示すメッセージを含む認証失敗画面を生成する。そして、認証処理部117は、この認証失敗画面をUIF部118に送ることで、UIF部118に認証失敗画面を表示させ、図15に示すフローを終了する。
【0072】
さらに、ステップS63において、印刷データ170がないと判断された場合(S63:No)には、ステップS71の処理に進む。ステップS71では、印刷制御部112は、印刷データがないことを示すメッセージを含む印刷データ無し画面を生成する。そして、印刷制御部112は、この印刷データ無し画面をUIF部118に送ることで、UIF部118に印刷データ無し画面を表示させ、図15に示すフローを終了する。
【0073】
以上のように、プリンタ110では、ネットワーク130に接続されているプリンタ110の何れかに保存されている印刷データ170を他のプリンタ110に転送することで、転送先の他のプリンタ110で印刷を行うことができる。
【0074】
なお、図15に示されているフローでは、印刷管理情報の更新指示(S69)を行った後、フローを終了させているが、このような例に限定されるものではない。例えば、印刷制御部112は、これらの処理を行った後に、ステップS62の処理に戻ってもよい。また、印刷データ選択画面176に、「印刷し、処理を継続」といった処理を選択するための指示領域が追加されていてもよい。このような指示が入力された場合には、例えば、印刷制御部112は、ステップS67の処理後に、ステップS64の処理に戻って、処理を継続する。
【0075】
図17は、PC150がネットワーク130上に存在するプリンタ110を検索し、さらに印刷データ170を送信する際の処理を示すフローチャートである。このフローは、PC150のUIF部154が利用者より印刷指示の入力を受けた場合に開始される。
【0076】
まず、PC150のプリンタ検索部152は、ネットワーク130に接続されたプリンタ110を検索する(S80)。例えば、プリンタ検索部152は、自装置を識別する識別情報を有する検索データを生成する。ここでの識別情報は、自装置がプリンタ110ではなくPC150であることを示すPC名とするが、この例に限定されない。なお、検索データには、PC150のIPアドレスが含まれていてもよい。そして、プリンタ検索部152は、通信部155を介して、この検索データをネットワーク130に対しブロードキャストで送信する処理を行う。そして、プリンタ検索部152は、ネットワーク130上のプリンタ110からの応答を所定時間待つ。
【0077】
次に、プリンタ検索部152は、通信部155がネットワーク130上のプリンタ110からの検索応答データを受信したか否かを確認する(S81)。そして、プリンタ検索部152は、通信部155が検索応答データを受信した場合(S81:Yes)には、ステップS82の処理に進み、通信部155が検索応答データを受信しなかった場合(S81:No)には、ステップS85の処理に進む。
【0078】
ステップS82では、印刷データ生成部151は、印刷データ170の実体データ170bである印刷画像データを作成する。
【0079】
次に、印刷データ生成部151は、制御データ170aを生成する。そして、印刷データ生成部151は、ステップS82で生成された印刷画像データに、この制御データ170aを付加することで、印刷データ170を作成する(S83)。なお、印刷データ生成部151は、制御データ170aを生成する際には、必要に応じて、UIF部154を介して、利用者から必要な情報の入力を受け付ける。
【0080】
印刷データ生成部151は、通信部119を介して、ステップS83で生成された印刷データ170を、ステップS80で検索された、ネットワーク130上のプリンタ110に送信する処理を行う(S84)。なお、ステップS80において複数のプリンタ110が発見されている場合には、印刷データ生成部151は、何れかのプリンタ110を任意に選択することができる。例えば、印刷データ生成部151は、検索データに対して最も早く検索応答データを送信してきたプリンタ110、又は、検索応答データを参照して、記憶部116の空き容量に最も余裕のあるプリンタ110等を選択することができる。
【0081】
一方、ステップS81において、通信部155が検索応答データを受信しなかった場合(S81:No)には、プリンタ検索部152は、ステップS85の処理に進む。ステップS85では、プリンタ検索部152は、プリンタ110が発見できなかった旨のメッセージを含む印刷不可画面を作成する。そして、プリンタ検索部152は、UIF部154にこの印刷不可画面を送り、UIF部154に印刷不可画面を表示させる。
【0082】
以上のように、実施の形態1においては、PC150からプリンタ110に対して印刷指示を行う場合には、PC150がプリンタ110を検索し、検索されたプリンタ110に対して印刷データ170を送信する。なお、PC150から検索データを受信したプリンタ110では、図9に示されているフローに従って、検索応答データを送信する。
【0083】
以下、本実施の形態における画像形成システム100における動作を、シーケンス図を用いて説明する。以下の説明におけるシーケンス図では、図1に示されている、プリンタ110A、プリンタ110B及びプリンタ110Cにより画像形成システム100が構成されているものとする。なお、これらのプリンタ110A、110B、110Cが接続されているネットワーク130には、PC150も接続されているものとする。
プリンタ110A、プリンタ110B及びプリンタ110Cの構成は、図2に示されている構成と同様であるが、以下では、それぞれのプリンタ110A、110B、110Cの構成要素を区別するために、プリンタ110Aの構成要素には「A」の符号を付し、プリンタ110Bの構成要素には「B」の符号を付し、プリンタ110Cの構成要素には「C」の符号を付して説明する。なお、プリンタ110A、プリンタ110B及びプリンタ110Cのプリンタ名は、それぞれ、「プリンタA」、「プリンタB」及び「プリンタC」である。
【0084】
図18は、プリンタ110A、110B、110Cの起動時の処理を示すシーケンス図である。図18においては、プリンタ110A、プリンタ110B及びプリンタ110Cが、この順番で起動した場合に、どのような動作によりプリンタ110の検索、及び、印刷管理テーブル171の同期化が行われるのかを説明する。
【0085】
まず、プリンタ110Aが起動する(S100)。次に、プリンタ110Aの検索部114Aが、ネットワーク130に接続された他のプリンタ110を検索するため検索データ173を生成して(S101)、通信部119Aを介して、この検索データ173をブロードキャストで送信する処理を行う(S102、S103)。
【0086】
ここで、プリンタ110B及びプリンタ110Cは、未だ起動していないため、プリンタ110Aは、他のプリンタ110から検索応答データ174を受信しない。このため、プリンタ110Aの検索部114Aは、他のプリンタ110が発見できなかったことを示す検索結果を、情報管理部113Aに通知する。このような通知を受けた情報管理部113Aは、記憶部116Aに記憶されている印刷管理テーブル171を初期化する(S104)。例えば、情報管理部113Aは、印刷管理テーブル171に格納されている全ての情報を削除する。この際、情報管理部113Aは、記憶部116Aに記憶されているプリンタリストテーブル172も同様に初期化する。
【0087】
プリンタ110Aは、ネットワーク130に接続されているPC150から印刷データ170を受信する(S105)と、印刷制御部112Aは、受信された印刷データ170を記憶部116Aに記憶するとともに、印刷データ170に含まれている制御データ170aを情報管理部113Aに与える。情報管理部113Aは、与えられた制御データ170aに基づいて、記憶部116Aに記憶されている印刷管理テーブル171を更新する(S106)。ここでは、記憶部116Aに記憶されているプリンタリストテーブル172に他のプリンタ110の情報が格納されていないため、他のプリンタに更新内容の通知は行われない。
【0088】
プリンタ110Aの後に、プリンタ110Bが起動する(S107)。そして、プリンタ110Bの検索部114Bが、ネットワーク130に接続された他のプリンタ110を検索するため検索データ173を生成して(S108)、通信部119Bを介して、検索データ173をブロードキャストで送信する処理を行う(S109、S110)。
このとき、プリンタ110Cは、未だ起動していないため、検索データ173への応答は行わない。一方、プリンタ110Aは、既に起動しているため、検索データ173を受信する。
【0089】
そして、プリンタ110Aの検索応答部115Aは、通信部119Aより検索データ173を受け取ると、検索データ173に含まれているプリンタ名と、検索データ173を格納していたIPパケットの送信元のIPアドレスとを抽出して、記憶部116Aに記憶されているプリンタリストテーブル172に格納する(S111)。ステップS111により、プリンタ110Aは、プリンタ110Bのプリンタ名及びIPアドレスを取得することができる。
また、検索応答部115Aは、検索応答データ174を生成する(S112)。このとき、検索応答部115Aは、検索応答データ174に、印刷管理テーブル171の内容を含める。そして、検索応答部115Aは、作成された検索応答データ174を、通信部119Aを介して、プリンタ110Bに返信する処理を行う(S113)。
【0090】
検索応答データ174を受信したプリンタ110Bでは、通信部119Bから与えられた検索応答データ174を、検索部114Bが、情報管理部113Bに与える。情報管理部113Bは、与えられた検索応答データ174に含まれている印刷管理テーブル171の内容で、記憶部116Bに記憶されている印刷管理テーブル171の内容を置き換えることで、自装置の印刷管理テーブル171を更新する(S114)。
また、検索部114Bは、通信部119Bから与えられた検索応答データ174に含まれているプリンタ名と、検索応答データ174を格納していたIPパケットの送信元のIPアドレスとを抽出して、記憶部116Bに記憶されているプリンタリストテーブル172に格納する(S115)。ステップS115により、プリンタ110Bは、プリンタ110Aのプリンタ名及びIPアドレスを取得することができる。
【0091】
プリンタ110Bの後に、プリンタ110Cが起動する(S116)。そして、プリンタ110Cの検索部114Cが、ネットワーク130に接続された他のプリンタ110を検索するため検索データ173を生成して(S117)、通信部119Cを介して、検索データ173をブロードキャストで送信する処理を行う(S118、S119)。
このとき、プリンタ110A及びプリンタ110Bは、既に起動しているため、検索データ173を受信する。
【0092】
そして、プリンタ110Aの検索応答部115Aは、通信部119Aより検索データ173を受け取ると、検索データ173に含まれているプリンタ名と、検索データ173を格納していたIPパケットの送信元のIPアドレスとを抽出して、記憶部116Aに記憶されているプリンタリストテーブル172に格納する(S120)。ステップS120により、プリンタ110Aは、プリンタ110Cのプリンタ名及びIPアドレスを取得することができる。プリンタ110Aのプリンタリストテーブル172には、プリンタ110B及びプリンタ110Cのプリンタ名及びIPアドレスが格納されることになる。
また、検索応答部115Aは、検索応答データ174を生成する(S121)。このとき、検索応答部115Aは、検索応答データ174に、印刷管理テーブル171の内容を含める。そして、検索応答部115Aは、作成された検索応答データ174を、通信部119Aを介して、プリンタ110Cに返信する処理を行う(S122)。
【0093】
また、プリンタ110Bの検索応答部115Bは、通信部119Bより検索データ173を受け取ると、検索データ173に含まれているプリンタ名と、検索データ173を格納していたIPパケットの送信元のIPアドレスとを抽出して、記憶部116Bに記憶されているプリンタリストテーブル172に格納する(S123)。ステップS123により、プリンタ110Bは、プリンタ110Cのプリンタ名及びIPアドレスを取得することができる。プリンタ110Bのプリンタリストテーブル172には、プリンタ110A
及びプリンタ110Cのプリンタ名及びIPアドレスが格納されることになる。
また、検索応答部115Bは、検索応答データ174を生成する(S124)。このとき、検索応答部115Bは、検索応答データ174に、印刷管理テーブル171の内容を含める。そして、検索応答部115Bは、作成された検索応答データ174を、通信部119Bを介して、プリンタ110Cに返信する処理を行う(S125)。
【0094】
検索応答データ174を受信したプリンタ110Cでは、通信部119Cから与えられた検索応答データ174を、検索部114Cが、情報管理部113Cに与える。情報管理部113Cは、与えられた検索応答データ174に含まれている印刷管理テーブル171の内容で、記憶部116Cに記憶されている印刷管理テーブル171の内容を置き換えることで、自装置の印刷管理テーブル171を更新する(S126)。ここでは、プリンタ110Cは、プリンタ110A及びプリンタ110Bから検索応答データ174を受信しているが、情報管理部113Cは、何れか一方の検索応答データ174に基づいて、自装置の印刷管理テーブル171を更新すればよい。
また、検索部114Cは、通信部119Cから与えられた検索応答データ174に含まれているプリンタ名と、検索応答データ174を格納していたIPパケットの送信元のIPアドレスとを抽出して、記憶部116Cに記憶されているプリンタリストテーブル172に格納する(S127)。ステップS127により、プリンタ110Cは、プリンタ110A及びプリンタ110Bのプリンタ名及びIPアドレスを取得することができる。
【0095】
以上のシーケンスにより、プリンタ110A、110B、110Cは、同じ情報を格納した印刷管理テーブル171を取得することができるとともに、ネットワーク130に接続されている他のプリンタ110のプリンタ名及びIPアドレスを取得することができる。
【0096】
図19は、PC150による印刷時の処理を示すシーケンス図である。本シーケンスでは、ネットワーク130において、プリンタ110A及びプリンタ110Bが既に起動済であり、プリンタ110Cは未だ起動されていないものとして説明を行う。また、図19のシーケンスの開始時には、プリンタ110A、110Bの記憶部116A、116Bには、図20(A)に示されている印刷管理テーブル171#1が記憶されているものとする。さらに、プリンタ110Aの記憶部116Aに記憶されているプリンタリストテーブル172には、プリンタ110Bのプリンタ名及びIPアドレスが格納されており、プリンタ110Bの記憶部116Bに記憶されているプリンタリストテーブル172には、プリンタ110Aのプリンタ名及びIPアドレスが格納されているものとする。
【0097】
PC150のプリンタ検索部152は、自装置の識別情報であるPC名を含む検索データを生成し(S130)、通信部155を介して、ブロードキャストにより、生成された検索データをネットワーク130に送信する処理を行う(S131、S132、S133)。
【0098】
検索データを受信したプリンタ110Bでは、検索応答部115Bが、プリンタ110Bのプリンタ名を含む検索応答データを生成して(S134)、通信部119Bを介して、生成された検索応答データをPC150に返信する(S135)。検索応答データを受信したPCでは、プリンタ検索部152は、検索応答データからプリンタ名と、検索応答データを格納したIPパケットの送信元のIPアドレスとを抽出して、記憶部153に記憶させる。
【0099】
また、検索データを受信したプリンタ110Aでは、検索応答部115Aが、プリンタ110Aのプリンタ名を含む検索応答データを生成して(S136)、通信部119Aを介して、生成された検索応答データをPC150に返信する(S137)。検索応答データを受信したPC150では、プリンタ検索部152が、検索応答データからプリンタ名と、検索応答データを格納したIPパケットの送信元のIPアドレスとを抽出して、記憶部153に記憶させる。
【0100】
なお、プリンタ110Cは、未だ起動されていないため、検索データに対する応答を行わない。
【0101】
PC150の印刷データ生成部151は、印刷データ170を生成する(S138)。ここで生成される印刷データ170は、認証印刷データであるものとする。このため、印刷データ生成部151は、制御データ170aの拡張変数である「Confidential」の値を「Yes」にする。
印刷データ生成部151は、例えば、検索応答データを最初に送信してきたプリンタ110Bを選択して、記憶部153に記憶されているプリンタ110BのIPアドレスを取得する。そして、印刷データ生成部151は、通信部155を介して、ステップS138で生成された印刷データ170をプリンタ110Bに送信する処理を行う(S139)。
【0102】
印刷データ170を受信したプリンタ110Bでは、印刷制御部112Bが、受信された印刷データ170が認証印刷データであることを確認し、受信された印刷データ170から制御データ170aを抽出する(S140)。そして、印刷制御部112Bは、受信された印刷データ170に自装置において一意となる名称を与え、この印刷データ170を記憶部116Bに記憶させる(S141)。
また、印刷制御部112Bは、ステップS140で抽出された制御データ170aとともに、印刷管理テーブル171の更新指示を情報管理部113Bに与える(S142)。ここでは、印刷データ170が新たに受信されたため、ここでの更新指示は、印刷管理テーブル171への追加指示になる。
【0103】
更新指示を受けた情報管理部113Bは、更新データ175を生成する(S143)。ここでは、情報管理部113Bは、例えば、図13(A)に示されているように、Command要素にADDを格納し、PJL要素に印刷制御部112Bから与えられた制御データ170aを格納し、PrinterName要素に自装置のプリンタ名を格納し、FileName要素に印刷制御部112Bが印刷データ170に与えた名称を格納することで、更新データ175Aを生成する。
情報管理部113Bは、記憶部116に記憶されているプリンタリストテーブル172から、プリンタ110AのIPアドレスを取得して(S144)、ステップS143で生成された更新データ175Aを、プリンタ110Aに送信する処理を行う(S145)。
【0104】
更新データを受信したプリンタ110Aでは、情報管理部113Aが、記憶部116Aに記憶されている印刷管理テーブル171の更新を行う(S146)。ここでは、更新データ175Aは、制御データ170aの追加を指示するものであるため、情報管理部113Aは、印刷管理テーブル171に、更新データ175Aに格納されている制御データ170a、プリンタ名及び名称を有する新たなレコードを追加する。これにより、例えば、図20(A)に示されている更新前の印刷管理テーブル171#1は、図20(B)に示されている更新後の印刷管理テーブル171#2となる。
そして、情報管理部113Aは、通信部119Aを介して、更新データ175Aの送信元であるプリンタ110Bに更新完了通知を送信する(S147)。
【0105】
更新完了通知を受信したプリンタ110Bでは、情報管理部113Bが、記憶部116Bに記憶されている印刷管理テーブル171を更新する(S148)。ここでは、情報管理部113Bは、印刷管理テーブル171に、印刷制御部112Bから与えられた制御データ170a、自装置のプリンタ名、及び、印刷制御部112Bが印刷データ170に与えた名称を有する新たなレコードを追加する。これにより、プリンタ110Bにおいても、図20(A)に示されている更新前の印刷管理テーブル171#1は、図20(B)に示されている更新後の印刷管理テーブル171#2となる。
そして、プリンタ110Bの印刷制御部112は、通信部119Bを介して、印刷データ170の送信元であるPC150に、印刷データ170の受信を完了したことを通知する受信完了通知を送信する処理を行う(S149)。
【0106】
以上のシーケンスにより、あるプリンタ110で、認証印刷データである印刷データ170を受信した場合には、この印刷データ170を特定するための制御データ170aが、ネットワーク130に接続され、起動中の他のプリンタ110に通知される。このため、ネットワーク130に接続され、起動中のプリンタ110は、印刷データ170を特定するための制御データ170aを共有することができる。
【0107】
図21は、プリンタ110のUIF部118が、PC150の利用者より認証の指示を受けた際の処理を示すシーケンス図である。本シーケンスでは、PC150の利用者は、プリンタ110Cにおいて認証を受けて印刷を行うものとする。
【0108】
プリンタ110CのUIF部118Cは、PC150の利用者より認証指示の入力を受ける(S150)。
認証処理部117Cは、利用者の認証を実行する(S151)。例えば、認証処理部117Cは、UIF部118Cを介して、認証に必要な情報を取得する。ここでは、利用者の認証情報であるID情報を取得する。そして、認証処理部117Cは、認証に成功したか否かを判断する。ここでは、認証に成功したものとする。
【0109】
認証が成功すると、印刷制御部112Cは、記憶部116Cに記憶されている印刷管理テーブル171を取得する(S152)。
【0110】
そして、印刷制御部112Cは、ステップS151で取得されたID情報と、ステップS152で取得された印刷管理テーブル171とに基づいて、処理対象とする印刷データ170を選択するための印刷データ選択画面を生成する(S153)。
印刷制御部112Cは、この印刷データ選択画面をUIF部118Cに送り、UIF部118Cに印刷データ選択画面を表示させる。そして、UIF部118Cは、利用者からの指示の入力を受け付ける。ここでは、UIF部118Cは、印刷指示の入力を受け付けたものとする。
【0111】
UIF部118Cから印刷指示を受けた印刷制御部112Cは、印刷処理を実行する。まず、印刷制御部112Cは、印刷管理テーブル171を参照して、印刷指示の対象となった印刷データ170が自装置の記憶部116Cに記憶されているか否かを確認する。ここでは、印刷データ170が自装置の記憶部116Cに記憶されておらず、プリンタ110Bの記憶部116Bに記憶されているものとする。そこで、印刷制御部112Cは、印刷指示の対象となった印刷データ170を取得するため、この印刷データ170の名称を含む転送要求データを生成する(S155)。
そして、印刷制御部112Cは、通信部119Cを介して、転送要求データをプリンタ110Bに送信する処理を行う(S156)。なお、送信先のプリンタ110の通信アドレスは、記憶部116cに記憶されているプリンタリストテーブル172から取得される。
【0112】
転送要求データを受信したプリンタ110Bでは、印刷制御部112Bが、転送要求データに含まれている名称に対応する印刷データ170を記憶部116Bから取得する(S157)。なお、印刷制御部112Bは、印刷データ170を取得した場合には、記憶部116Bから、取得された印刷データ170を削除する。
そして、印刷制御部112Bは、通信部119Bを介して、転送要求データの応答として、ステップS157で取得された印刷データ170を、プリンタ110Cに返信する(S158)。
【0113】
印刷データ170を受信したプリンタ110Cでは、印刷制御部112Cが、受信された印刷データ170を印刷部111Cに送り、印刷部111Cに印刷を行わせる(S159)。これにより、PC150の利用者は、プリンタ110Cにおいて、印刷物を取得することができる。
【0114】
ここで、印刷制御部112Cは、印刷管理テーブル171の更新指示を情報管理部113Cに与える(S160)。ここでは、印刷データ170に基づいて印刷が行われたため、ここでの更新指示は、印刷管理テーブル171からの削除指示となる。また、削除されるのは、ステップS159で印刷対象となった印刷データ170である。
【0115】
更新指示を受けた情報管理部113Cは、更新データ175を生成する(S161)。ここでは、情報管理部113Cは、例えば、図13(B)に示されているように、Command要素にDELETEを格納し、PrinterName要素に印刷対象となった印刷データ170の保存先のプリンタ名を格納し、FileName要素に印刷対象となった印刷データ170の名称を格納することで、更新データ175Bを生成する。
また、情報管理部113Cは、記憶部116Cに記憶されているプリンタリストテーブル172から、プリンタ110B及びプリンタ110CのIPアドレスを取得して(S162)、ステップS161で生成された更新データ175Bを、プリンタ110A及びプリンタ110Bに送信する処理を行う(S163、S164)。
【0116】
更新データ175Bを受信したプリンタ110Bでは、情報管理部113Bが、記憶部116Bに記憶されている印刷管理テーブル171の更新を行う(S165)。ここでは、更新データ175Bは、制御データ170aの削除を指示するものであるため、情報管理部113Bは、印刷管理テーブル171において、更新データ175Bに含まれているプリンタ名及び名称が、それぞれ保存先欄171b及び名称欄171cに格納されているレコードを特定し、印刷管理テーブル171から特定されたレコードを削除する。
そして、情報管理部113Bは、通信部119Bを介して、更新データ175Bの送信元であるプリンタ110Cに更新完了通知を送信する(S166)。
【0117】
また、更新データ175Bを受信したプリンタ110Aでは、情報管理部113Aが、記憶部116Aに記憶されている印刷管理テーブル171の更新を行う(S167)。ここでは、更新データ175Bは、制御データ170aの削除を指示するものであるため、情報管理部113Aは、印刷管理テーブル171において、更新データ175Bに含まれているプリンタ名及び名称が、それぞれ保存先欄171b及び名称欄171cに格納されているレコードを特定し、印刷管理テーブル171から特定されたレコードを削除する。
そして、情報管理部113Aは、通信部119Aを介して、更新データ175Bの送信元であるプリンタ110Cに更新完了通知を送信する(S168)。
【0118】
更新完了通知を受信したプリンタ110Cでは、情報管理部113Cが、記憶部116Cに記憶されている印刷管理テーブル171を更新して、削除を指示された制御データ170aに対応するレコードを削除する(S169)。
【0119】
以上のシーケンスにより、PC150の利用者は、印刷データ170を送信したプリンタ110だけでなく、ネットワーク130に接続されている他のプリンタ110においても印刷を実行することができる。また、印刷を実行した際にも、印刷対象となった印刷データ170が、プリンタ110から削除され、削除された情報についても、ネットワーク130に接続されている全てのプリンタ110で共有される。
【0120】
本実施の形態においては、あるプリンタ110が何らかの理由でネットワーク130から切断されるという異常が発生しても、PC150の利用者は、他のプリンタ110で認証を受けることで、印刷物を取得することができる。これは、全てのプリンタ110において、印刷管理テーブル171が保持され、同期化されているためである。
【0121】
実施の形態2.
(構成の説明)
図1に示すように、実施の形態2に係る画像形成システム200は、複数のプリンタ210A、210B、210C、・・・、210D(特に各々を区別する必要がないときは、プリンタ210という)を備える。プリンタ210は、ネットワーク130に接続されている。ネットワーク130には、PC250も接続されている。
【0122】
図22は、実施の形態2におけるプリンタ210の構成を概略的に示すブロック図である。プリンタ210は、印刷部111と、印刷制御部112と、情報管理部113と、検索部114と、検索応答部115と、記憶部116と、認証処理部117と、ユーザインタフェース部(以下、UIF部という)118と、通信部119と、動作確認部220と、動作確認応答部221とを備える。実施の形態2におけるプリンタ210は、動作確認部220及び動作確認応答部221をさらに備える点において、実施の形態1におけるプリンタ110と異なっている。
【0123】
動作確認部220は、予め定められたとき、例えば、定期的に、ネットワーク130に接続された他のプリンタ210が有効であるか否かを確認する。動作確認部220は、例えば、他のプリンタ210の電源が切られている場合、他のプリンタ210が省電力モード等となり通信機能が停止されている場合、及び、他のプリンタ210のネットワーク130への接続が切断された場合等には、他のプリンタ210が有効ではないと判断する。ここで、動作確認部220は、通信部119を介して、ネットワーク130に接続されている他のプリンタ210に対して確認データを送信し、その確認データに対する応答が所定時間内にない場合には、他のプリンタが有効ではないと判断する。なお、確認データは、記憶部116に記憶されているプリンタリストテーブル172に情報が格納されている全てのプリンタ210に送信される。なお、確認データは、図8に示されている検索データ173と同様の情報が含まれていてもよい。
【0124】
また、動作確認部220は、記憶部116に記憶されている印刷管理テーブル171において、有効ではないと判断されたプリンタ210に保存されている印刷データから抽出された制御データを含むレコードを削除する。さらに、動作確認部220は、削除されたレコードに基づいて、有効ではないと判断されたプリンタ210に保存されている印刷データの再印刷(再処理)の必要があることを通知する印刷データ削除通知データを生成する。そして、動作確認部220は、通信部119を介して、有効ではないと判断されたプリンタ210に保存されている印刷データの送信元であるPC250に、この印刷データ削除通知データを送信する処理を行う。
【0125】
図23は、印刷データ削除通知データ277を示す概略図である。印刷データ削除通知データ277は、Command要素と、PJL要素と、PriterName要素とを有する構造化文書のデータである。
Command要素は、印刷データ削除通知であることを示す。
PJL要素は、有効ではないと判断されたプリンタ210に保存されている印刷データから抽出された制御データを示す。
PriterName要素は、有効ではないと判断されたプリンタ210のプリンタ名を示す。
【0126】
図22の説明に戻り、動作確認部220は、記憶部116に記憶されているプリンタリストテーブル172から、有効ではないと判断されたプリンタ210の情報を削除する。また、動作確認部220は、記憶部116に記憶されているプリンタリストテーブル172から、有効ではないと判断されたプリンタ210の情報を削除する指示を示すプリンタ削除通知データを生成する。そして、動作確認部220は、このプリンタ削除通知データを、通信部119を介して、記憶部116に記憶されているプリンタリストテーブル172に情報が格納されている全てのプリンタ210に送信する処理を行う。
【0127】
図24は、プリンタ削除通知データ278を示す概略図である。プリンタ削除通知データ278は、Command要素と、PriterName要素とを有する構造化文書のデータである。
Command要素は、プリンタ削除通知であることを示す。
PriterName要素は、有効ではないと判断されたプリンタ210のプリンタ名を示す。
【0128】
さらに、動作確認部220は、通信部119より、他のプリンタ210から送信されたプリンタ削除通知データ278を受け取り、記憶部116に記憶されているプリンタリストテーブル172を更新する処理を行う。例えば、動作確認部220は、記憶部116に記憶されているプリンタリストテーブル172において、プリンタ削除通知データ278のPriterName要素で示されるプリンタ名が格納されているレコードを特定し、特定されたレコードをプリンタリストテーブル172から削除する。
【0129】
なお、動作確認部220は、所定のときに、動作の確認を行うとしているが、このような例に限定されるものではなく、例えば、利用者からの指示に応じて、動作確認を行ってもよく、また、ランダムに決定されるときに動作確認を行ってもよい。
【0130】
動作確認応答部221は、通信部119が確認データを受信した場合に、受信された確認データへの応答である確認応答データを生成する。確認応答データには、少なくとも自装置のプリンタ名が含まれる。そして、動作確認応答部221は、通信部119を介して、生成された確認応答データを、確認データの送信元に返信する処理を行う。なお、確認応答データは、図8に示されている検索データ173と同様の情報が含まれていてもよい。
【0131】
図25は、PC250の構成を概略的に示すブロック図である。PC250は、印刷データ生成部251と、プリンタ検索部152と、記憶部153と、UIF部154と、通信部155と、表示処理部256とを備える。実施の形態2におけるPC250は、印刷データ生成部251での処理の点と、表示処理部256がさらに備えられている点とにおいて、実施の形態1におけるPC150と異なっている。
【0132】
印刷データ生成部251は、印刷データ270を生成する。例えば、印刷データ生成部251は、アプリケーション等を利用して、印刷データ270を作成する。
【0133】
図26は、実施の形態2における印刷データ270を示す概略図である。印刷データ270は、制御データ270aと、実体データ170bとを有する。実施の形態2における印刷データ270は、制御データ270aにおいて、実施の形態1における印刷データ170と異なっている。
実施の形態2における制御データ270aは、13行目に、この印刷データ270を生成したPC250の通信アドレスであるIPアドレスを示す「Address」の拡張変数を備える点で、実施の形態1における制御データ170aと異なっている。
【0134】
図25の説明に戻り、表示処理部256は、通信部155が印刷データ削除通知データ277を受信すると、通信部155から印刷データ削除通知データ277を受け取る。そして、表示処理部256は、受け取った印刷データ削除通知データ277に基づいて、再印刷画面を生成して、この再印刷画面をUIF部154に与えて、UIF部154に再印刷画面を表示させる。
【0135】
図27は、再印刷画面279を示す概略図である。再印刷画面279は、印刷データ削除通知データ277に含まれている制御データ270aから抽出された、少なくとも1つ以上の変数の値を表示することで印刷データ270を特定し、この印刷データ270が削除されたこと、再印刷をする必要があることを示す。図27に示されている例では、制御データ270aから抽出された「印刷データ270を識別するための名称」と「印刷データ270の作成日時」が表示されている。
【0136】
(動作の説明)
図28は、プリンタ210の動作確認処理を示すフローチャートである。図28に示されているフローは、予め定められたとき、例えば、周期的に行われる。
【0137】
動作確認部220は、記憶部116に記憶されているプリンタリストテーブル172を取得する(S170)。
そして、動作確認部220は、取得されたプリンタリストテーブル172に情報が格納されている全てのプリンタ210に確認データを送信したか否かを確認する(S171)。そして、動作確認部220は、全てのプリンタ210に確認データを送信した場合(S171:Yes)、言い換えると、確認データを送信していないプリンタ210が存在しない場合には、図28に示されているフロー終了する。一方、動作確認部220は、全てのプリンタ210には確認データを送信していない場合(S171:No)、言い換えると、確認データを送信していないプリンタ210が存在する場合には、ステップS172の処理に進む。
【0138】
ステップS172では、動作確認部220は、確認データを未送信のプリンタ210を1つ特定し、通信部119を介して、特定されたプリンタ210に確認データを送信する。
そして、動作確認部220は、所定の時間内に確認データへの応答である確認応答データを通信部119が受信したか否かを確認する(S173)。動作確認部220は、確認応答データを受信した場合(S173:Yes)には、ステップS171の処理に戻り、確認応答データを受信しなかった場合(S173:No)には、ステップS174の処理に進む。
【0139】
ステップS174では、動作確認部220は、記憶部116に記憶されている印刷管理テーブル171を参照して、応答のないプリンタ210のプリンタ名が保存先欄171bに格納されているレコードを特定する。そして、動作確認部220は、特定されたレコードの制御データ欄171aに格納されている制御データ270aを取得する。
【0140】
動作確認部220は、ステップS174で取得された制御データ270aと、応答のないプリンタ210のプリンタ名とを含む印刷削除通知データ277を生成する(S175)。ここで、ステップS174で取得された制御データ270aが複数ある場合には、制御データ270aの「ConputerName」の拡張変数の値及び「Address」の拡張変数の値の少なくとも何れか一方で特定されるPC250毎に、印刷削除通知データ277を生成する。
そして、動作確認部220は、通信部119を介して、印刷削除通知データ277に含まれている「Address」の拡張変数の値で示されるIPアドレスを宛先として、この印刷削除通知データ277を送信する処理を行う(S176)。
【0141】
動作確認部220は、記憶部116に記憶されているプリンタリストテーブル172において、応答のないプリンタ210の情報を削除する(S177)。
また、動作確認部220は、ステップS174で抽出された制御データ270aとともに、印刷管理情報の更新指示を情報管理部113に与える。ここでの更新指示は、削除を指示するものである。情報管理部113は、制御データ270a及び印刷管理情報の更新指示を受け取ると、印刷管理テーブル171の同期化処理を行う(S178)。ステップS178の処理については、図11で示されている処理と同様である。
【0142】
動作確認部220は、応答のないプリンタ210のプリンタ名を含むプリンタ削除通知データ278を生成する(S179)。
そして、動作確認部220は、生成されたプリンタ削除通知データ278を、記憶部116に記憶されているプリンタリストテーブル172に情報が格納されているプリンタ210に送信する(S180)。
【0143】
以上のように、実施の形態2におけるプリンタ210では、動作確認部220は、動作確認の結果、応答がない場合には、その応答がないプリンタ210に関する情報を、印刷管理テーブル171及びプリンタリストテーブル172から削除する。また、動作確認部220は、応答のないプリンタ210に保存されている印刷データ270を生成したPC250に再印刷の通知を行う。
【0144】
図29は、プリンタ210がプリンタ削除通知データ278を受信した場合の処理を示すフローチャートである。
【0145】
まず、プリンタ210の通信部119が、プリンタ削除通知データ278を受信する(S190)。
動作確認部220は、通信部119から、受信されたプリンタ削除通知データ278を取得する。そして、動作確認部220は、プリンタリストテーブル172において、取得されたプリンタ削除通知データ278に含まれているプリンタ名が、プリンタ名欄172aに格納されているレコードを特定する。動作確認部220は、プリンタリストテーブル172から特定されたレコードを削除する(S191)。
【0146】
以上により、動作確認部220は、他のプリンタ210からの通知により、有効に動作していないプリンタ210に関する情報をプリンタリストテーブル172から削除することができる。
【0147】
図30は、PC250が印刷削除通知データを受信した場合の処理を示すフローチャートである。
【0148】
まず、PC250の通信部155が、印刷データ削除通知データを受信する(S200)。
表示処理部256は、通信部155から、受信された印刷データ削除通知データ277を取得する。そして、表示処理部256は、取得された印刷データ削除通知データ277に含まれている制御データ270aの値を利用して、再印刷画面を生成して、この再印刷画面をUIF部154に与える。そして、UIF部154は、図27に示されているような再印刷画面279を表示する(S201)。
【0149】
以上のフローにより、PC250は、利用者に対して、再印刷が必要であることを通知することができる。
【0150】
以下、本実施の形態における画像形成システム200における動作を、シーケンス図を用いて説明する。以下の説明におけるシーケンス図では、図1に示されている、プリンタ210A、プリンタ210B及びプリンタ210Cにより画像形成システム200が構成されているものとする。なお、これらのプリンタ210A、210B、210Cが接続されているネットワーク130には、PC250も接続されているものとする。
プリンタ210A、プリンタ210B及びプリンタ210Cの構成は、図22に示されている構成と同様であるが、以下では、それぞれのプリンタ210A、210B、210Cの構成要素を区別するために、プリンタ210Aの構成要素には「A」の符号を付し、プリンタ210Bの構成要素には「B」の符号を付し、プリンタ210Cの構成要素には「C」の符号を付して説明する。なお、プリンタ210A、プリンタ210B及びプリンタ210Cのプリンタ名は、それぞれ、「プリンタA」、「プリンタB」及び「プリンタC」である。
【0151】
図31は、実施の形態2における画像形成システム200における動作を示すシーケンス図である。本シーケンスでは、プリンタ210A、プリンタ210B及びプリンタ210Cは、それぞれ、図32に示されている印刷管理テーブル171#3を記憶しているものとする。
【0152】
プリンタ210Cが、電源断等により、ネットワーク130から切断される(S210)。
【0153】
次に、プリンタ210Aの動作確認部220Aは、確認データを生成する(S211)。そして、動作確認部220Aは、記憶部116Aからプリンタリストテーブル172を取得して(S212)、通信部119Aを介して、プリンタリストテーブル172に情報が格納されているプリンタ210宛てに、確認データを送信する処理を行う(S213、S214)。
【0154】
確認データを受信したプリンタ210Bでは、動作確認応答部221Bが、確認応答データを生成する(S215)。そして、動作確認部221Bは、生成された確認応答データを、通信部119Bを介して、確認データの送信元であるプリンタ210Aに返信する処理を行う(S216)。
プリンタ210Bからの確認応答データを受信したプリンタ210Aでは、動作確認部220Aは、プリンタ210Bが有効に動作しているものと判断する。
【0155】
プリンタ210Cは、ネットワーク130から切断されているため、確認データに対する応答を行わない。このため、プリンタ210Aの動作確認部220Aは、確認データを送信してから所定の期間が経過することにより、プリンタ210Cが有効に動作していないものと判断する(S217)。
そして、動作確認部220Aは、記憶部116Aに記憶されている印刷管理テーブル171#3において、保存先欄171b#3にプリンタ210Cのプリンタ名である「プリンタC」が格納されているレコードを特定する。動作確認部220Aは、特定されたレコードの制御データ欄171a#3に格納されている制御データ270aを取得する(S218)。動作確認部220Aは、取得された制御データ270aと、プリンタ210Cの名称である「プリンタC」とを含む印刷データ削除通知データ277を生成する(S219)。そして、動作確認部220Aは、通信部119Aを介して、取得された制御データ270aの拡張変数「Address」の値で示される宛先に、生成された印刷データ削除通知データ277を送信する処理を行う(S220)。
【0156】
印刷データ削除通知データ277を受信したPC250では、表示処理部256が、受信された印刷データ削除通知データ277に基づいて、図27に示すような再印刷画面279をUIF部154に表示させる(S221)。
そして、表示処理部256は、通信部155を介して、表示完了通知を、印刷データ削除通知データ277の送信元であるプリンタ210Aに返信する(S222)。
【0157】
表示完了通知を受信したプリンタ210Aでは、動作確認部220Aは、記憶部116Aに記憶されているプリンタリストテーブル172を更新して、有効ではないと判断されたプリンタ210Cの情報を削除する(S223)。
【0158】
また、動作確認部220Aは、ステップS218で取得された制御データ270aと、印刷管理テーブル171の更新指示とを情報管理部113Aに与える(S224)。ここでの更新指示は、印刷管理テーブル171からの削除指示である。
【0159】
更新指示を受けた情報管理部113Aは、更新データ175を生成する(S224)。例えば、情報管理部113Aは、記憶部116に記憶されている印刷管理テーブル171から、動作確認部220Aから与えられた制御データ270aに対応するプリンタ名と名称とを取得する。そして、情報管理部113Aは、図13(B)に示されているように、Command要素にDELETEを格納し、PrinterName要素に取得されたプリンタ名を格納し、FileName要素に取得された名称を格納することで、更新データ175Bを生成する(S225)。
また、情報管理部113Aは、記憶部116Aに記憶されているプリンタリストテーブル172から、プリンタ210BのIPアドレスを取得して(S226)、ステップS225で生成された更新データ175Bを、通信部119Aを介して、プリンタ210Bに送信する処理を行う(S227)。
【0160】
更新データ175Bを受信したプリンタ210Bでは、情報管理部113Bが、記憶部116Bに記憶されている印刷管理テーブル171の更新を行う(S228)。ここでは、更新データ175Bは、制御データ170aの削除を指示するものであるため、情報管理部113Bは、印刷管理テーブル171において、更新データ175Bに含まれているプリンタ名及び名称が、それぞれ保存先欄171b及び名称欄171cに格納されているレコードを特定し、印刷管理テーブル171から特定されたレコードを削除する。
そして、情報管理部113Bは、通信部119Bを介して、更新データ175Bの送信元であるプリンタ210Aに更新完了通知を送信する(S229)。
【0161】
更新完了通知を受信したプリンタ210Aでは、情報管理部113Aが、記憶部116Aに記憶されている印刷管理テーブル171を更新して、削除を指示された制御データ170aに対応するレコードを削除する(S230)。
【0162】
また、動作確認部220Aは、図24に示すように、有効ではないと判断されたプリンタ210Cのプリンタ名を含むプリンタ削除通知データ278を生成する(S231)。
そして、動作確認部220は、記憶部116に記憶されているプリンタリストテーブル172からプリンタ210BのIPアドレスを取得して(S232)、生成されたプリンタ削除通知データ278を、通信部119Aを介して、プリンタ210Bに送信する処理を行う(S233)。
【0163】
プリンタ削除通知データ278を受信したプリンタ210Bでは、動作確認部220Bが、記憶部116Bに記憶されているプリンタリストテーブル172において、取得されたプリンタ削除通知データ278に含まれているプリンタ名が、プリンタ名欄172aに格納されているレコードを特定する。動作確認部220Bは、プリンタリストテーブル172から特定されたレコードを削除する(S234)。
そして、動作確認部220Bは、通信部119Bを介して、プリンタ削除通知データ278の送信元であるプリンタ210Aに更新完了通知を送信する処理を行う(S235)。
【0164】
以上のように、実施の形態2におけるプリンタ210は、ネットワーク130に接続されている他のプリンタ210の異常を検知して、異常の発生したプリンタ210の情報をネットワーク130に接続されているプリンタ210間で共有することができる。また、異常の発生したプリンタ210に印刷データを保存させたPC250には、印刷されない印刷データの情報が通知されるため、PC250の利用者は、別のプリンタ210に再印刷を要求する等、利用者の利便性が高くなる。
【0165】
実施の形態3.
(構成の説明)
図1に示すように、実施の形態3に係る画像形成システム300は、複数のプリンタ310A、310B、310C、・・・、310D(特に各々を区別する必要がないときは、プリンタ310という)を備える。プリンタ310は、ネットワーク130に接続されている。ネットワーク130には、PC350も接続されている。
【0166】
図33は、プリンタ310の構成を概略的に示すブロック図である。プリンタ310は、印刷部111と、印刷制御部312と、情報管理部313と、検索部314と、検索応答部315と、記憶部316と、認証処理部117と、UIF部118と、通信部119とを備える。実施の形態3におけるプリンタ310は、印刷制御部312、情報管理部313、検索部314、検索応答部315及び記憶部316において、実施の形態1と異なっている。
【0167】
図34は、実施の形態3における印刷データ370を示す概略図である。印刷データ370は、制御データ370aと、実体データ170bとを有する。実施の形態3における印刷データ370は、制御データ370aにおいて、実施の形態1における印刷データ170と異なっている。
実施の形態3における制御データ370aは、13行目に、この印刷データ370を生成した利用者の認証情報を示す「AuthenticationData」の拡張変数を備え、さらに、14行目に、この印刷データ370を生成したPC350の通信アドレスであるIPアドレスを示す「Address」の拡張変数を備える点で、実施の形態1における制御データ170aと異なっている。
【0168】
図33の説明に戻り、印刷制御部312は、印刷データ370を管理する。また、印刷制御部312は、印刷部111を制御して、印刷する処理を実行する。例えば、印刷制御部312は、通信部119が受信した印刷データ370を受け取る。印刷制御部312は、取得された印刷データ370の制御データ370aを参照して、その印刷データ370をすぐに印刷するべきか否かを判断する。印刷制御部312は、印刷データ370をすぐに印刷すべきと判断した場合には、この印刷データ370を印刷部111に渡して、印刷させる。一方、印刷制御部312は、印刷データ370をすぐに印刷すべきではないと判断した場合には、この印刷データ370を記憶部316に記憶させる。ここで、印刷制御部312は、印刷データ370を記憶させる際に、その印刷データ370を識別するための識別情報として、印刷データ370の名称を付与する。この名称は、自装置であるプリンタ310内で重複しないように付与される。例えば、この名称は、ファイル名として付与される。
また、印刷制御部312は、印刷データ370を記憶部316に記憶させた際に、印刷データ370に書誌データが添付されている場合には、この書誌データに、印刷データ370の保存先を特定する保存先情報及び印刷データ370の名称を付加して個別管理情報を生成し、この個別管理情報を記憶部316に記憶されている印刷管理情報に格納する処理を行う。さらに、印刷制御部312は、印刷データ370を記憶部316に記憶させた際に、印刷データ370に書誌データが添付されていない場合には、印刷データ370の制御データ370aから書誌データを生成するとともに、生成された書誌データに印刷データ370の保存先を特定する保存先情報及び印刷データ370の名称を付加して個別管理情報を生成し、この個別管理情報を記憶部316に記憶されている印刷管理情報に格納する処理を行う。
さらに、印刷制御部312は、認証処理部117で認証が行われた際に、認証処理部117から認証情報を受け取り、この認証情報に対応する印刷データ370を印刷する処理を行う。ここで、印刷制御部312は、認証情報に対応する印刷データ370が、ネットワーク130に接続されている他のプリンタ310に保存されている場合には、この他のプリンタ370から印刷データ370の転送を受ける。
なお、印刷制御部312は、通信部119を介して、ネットワーク130に接続されている他のプリンタ310から印刷データ370の転送要求を受けた場合には、記憶部316に記憶されている印刷データ370を読み出して、この他のプリンタ310に転送する処理を行う。
【0169】
情報管理部313は、記憶部316に記憶されている印刷管理情報を管理する処理を行う。印刷管理情報は、記憶部316に記憶されている印刷データ370を管理するための情報である。印刷管理情報は、各々の印刷データ370を特定するための特定情報と、当該特定情報で特定される印刷データ370の保存先を特定する保存先情報とを含む。
【0170】
図35は、印刷管理情報としての印刷管理テーブル371を示す概略図である。印刷管理テーブル371は、No欄371aと、文書名欄371bと、作成日時欄371cと、作成者名欄371dと、認証情報欄371eと、ページ数欄371fと、アドレス欄371gと、名称欄371hと、保存先欄371iと、パス欄371jとを有する。
No欄371aは、印刷管理テーブル371の各々のレコードを識別するための識別情報である識別番号を格納する。
文書名欄371bは、印刷データ370の制御データ370aの「DocumentName」の拡張変数の値を格納する。
作成日時欄371cは、印刷データ370の制御データ370aの「Data」の拡張変数の値を格納する。
作成者名欄371dは、印刷データ370の制御データ370aの「UserName」の拡張変数の値を格納する。
認証情報欄371eは、印刷データ370の制御データ370aの「AuthenticationData」の拡張変数の値を格納する。
ページ数欄371fは、印刷データ370の制御データ370aの「Page」の拡張変数の値を格納する。
アドレス欄371gは、印刷データ370の制御データ370aの「Address」の拡張変数の値を格納する。
名称欄371hは、印刷データ370を記憶部316に記憶する際に、印刷制御部312がこの印刷データ370に与えた名称を格納する。
保存先欄371iは、印刷データ370が保存されている装置を識別する為の識別情報、例えば、プリンタ名又はPC名を格納する。
パス欄371jは、装置内における印刷データ370の記憶先を示すパスを格納する。
なお、図35に示されている例では、文書名欄371b、作成日時欄371c、作成者名欄371d、認証情報欄371e、ページ数欄371f、アドレス欄371g及び名称欄371hに格納される情報が特定情報であり、保存先欄371i及びパス欄371jに格納される情報が保存先情報となる。
【0171】
図33の説明に戻り、情報管理部313は、ネットワーク130に接続された他のプリンタ310との間で、記憶部316に記憶されている印刷管理テーブル371を同期化する処理を行う。例えば、情報管理部313は、印刷管理テーブル371の内容に変更が加えられる際には、ネットワーク130に接続された他のプリンタ310に記憶されている印刷管理テーブル371に対しても、同様の変更を行わせることで、同期化を行う。この同期化は、情報管理部313が、記憶部316に記憶されているプリンタリストに基づいて、変更後の内容を通知することにより行う。このとき、情報管理部313は、他のプリンタ310が保存している印刷管理テーブル371に対して、別の変更が行われないように、他のプリンタ310の記憶部316に記憶されている印刷管理テーブル371に対して、別の変更が行われないようにロックをかける。印刷管理テーブル371の変更がロックされると、情報管理部313は、ロックを指示したプリンタ310からの指示に基づく変更しか受け付けない。情報管理部313は、同期化が完了したら、ロックを解除する。
なお、複数のプリンタ310が、同時にロックを行おうとした場合、予め定められた優先順位に基づき、優先順位の高いプリンタ310からのロックが優先される。ここで、優先順位は、ネットワーク130に接続されているプリンタ310で重複した順位とならないものであれば、どのような方法で決定されてもよい。例えば、プリンタ310のIPアドレスを12桁の数字と見なして、その数字が小さいものから順位が高くなるように決めてもよい。具体的には、プリンタ310のIPアドレスが「192.168.0.1」である場合には、「192168000001」の数字と見なして、この数字の大小で順位を定めればよい。なお、この優先順位は、例えば、プリンタ310の利用者によって、予め設定されていてもよい。
なお、印刷管理テーブル371を参照する場合には、ロックの必要はない。但し、ロックが行われている場合、ロックが解除されるまで参照処理は、一時的に停止される。
【0172】
検索部314は、ネットワーク130に接続されている他のプリンタ310を検索する。例えば、検索部314は、通信部119を介して、検索データをマルチキャストで送信する処理を行い、通信部119が、この検索データに対する検索応答データを受信するか否かにより検索を実行する。また、検索部314は、検索データに、自装置のプリンタ名、能力情報及び消耗品状態情報等を含めることが望ましい。
【0173】
図36は、プリンタリストとしてのプリンタリストテーブル372の概略図である。プリンタリストテーブル372は、No欄372aと、IPアドレス欄372bと、プリンタ名欄372cと、動作確認の要否欄372dと、機種名欄372eと、最大用紙サイズ欄372fと、トナー残量欄372gとを有する。
No欄372aは、各々の行を識別するための識別番号を格納する。
IPアドレス欄372bは、検索データ又は検索応答データの送信元である他のプリンタ310の通信アドレスであるIPアドレスを格納する。
プリンタ名欄372cは、IPアドレス欄372bに格納されたIPアドレスを有する他のプリンタ310の識別情報であるプリンタ名を格納する。ここで、本実施の形態においては、プリンタ310の名称に、プリンタ(画像形成装置)であることを示す情報が含まれているものとする。図36の例では、「プリンタ」の文字列が含まれている。
動作確認の要否欄372dは、IPアドレス欄372bに格納されたIPアドレスを有する他のプリンタ310の動作確認を行う必要があるか否かを示す動作確認情報を格納する。本実施の形態においては、動作確認情報は、「○」であれば動作確認を行う必要があり、「×」であれば動作確認を行う必要がないことを示す。
機種名欄372eは、IPアドレス欄372bに格納されたIPアドレスを有する他のプリンタ310の機種を識別するための機種名を格納する。
最大用紙サイズ欄372fは、IPアドレス欄372bに格納されたIPアドレスを有する他のプリンタ310で印刷することのできる最大用紙サイズを格納する。
トナー残量欄372gは、IPアドレス欄372bに格納されたIPアドレスを有する他のプリンタ310のトナー残量を格納する。ここでは、C(シアン)、M(マゼンタ)、Y(イエロー)及びK(ブラック)の各色のトナーの残量が格納されている。
なお、図36に示されているプリンタリストテーブル372では、他のプリンタ310の能力情報は、最大用紙サイズであり、その消耗品状態情報は、トナー残量である。なお、能力情報は、カラー印刷に対応しているか否か、及び、解像度の少なくとも何れか一方であってもよく、これらが含まれていてもよい。さらに、消耗品状態情報は、用紙の残量、及び、感光ドラムの寿命の少なくとも何れか一方であってもよく、これらが含まれていてもよい。さらに、プリンタリストテーブル372は、他のプリンタ310の状態、例えば、障害が生じている等の状態を示すステータス情報を格納する欄をさらに有してもよい。
【0174】
検索部314は、通信部119が検索データに対する検索応答データを受信すると、この検索応答データから、他のプリンタ310に関する情報を抽出し、抽出された情報をプリンタリストテーブル372に格納する。
【0175】
図33の説明に戻り、検索応答部315は、通信部119が、ネットワーク130に接続された他のプリンタ310及びPC350からの検索データを受信した場合に、この検索データに応答するための検索応答データを生成する。そして、検索応答部315は、通信部119を介して、生成された検索応答データを、検索データの送信元に送信する処理を行う。ここで、本実施の形態においては、検索応答部315は、検索応答データに、自装置のプリンタ名、能力情報及び消耗品状態情報等を含める。
また、検索応答部315は、通信部119が検索データを受信すると、この検索データに含まれている情報を抽出して、抽出された情報をプリンタリストテーブル372に格納する。
【0176】
記憶部316は、プリンタ310での処理に必要な情報を記憶する。例えば、記憶部316は、印刷データ370、印刷管理テーブル371及びプリンタリストテーブル372を記憶する。
【0177】
図37は、PC350の構成を概略的に示すブロック図である。PC350は、印刷データ生成部351と、プリンタ検索部152と、記憶部153と、UIF部154と、通信部155とを備える。実施の形態3におけるPC350は、印刷データ生成部351での処理において、実施の形態1におけるPC150と異なっている。
【0178】
印刷データ生成部351は、印刷データ370を作成する。例えば、印刷データ生成部351は、アプリケーション等を利用して、印刷データ370を作成する。印刷データ370には、図34に示されているような制御データ370aが含まれている。制御データ370aは、利用者からの指示又は選択により決定されるものと、利用者の指示及び選択によらずに決定されるものがある。
また、印刷データ生成部351は、場合により、印刷データ370の制御データ370aから書誌データを生成し、生成された書誌データを印刷データ370に添付する。ここで、書誌データは、印刷データ370の制御データ370aに含まれている拡張変数の値を少なくとも1つ含むデータである。例えば、本実施の形態においては、書誌データは、印刷データ370の制御データ370aの「DocumentName」の拡張変数の値と、「Data」の拡張変数の値と、「UserName」の拡張変数の値と、「AuthenticationData」の拡張変数の値と、「Page」の拡張変数の値とを含む。
なお、印刷データ生成部351は、例えば、UIF部154がPC150の利用者から書誌データを添付する指示の入力を受け付けた場合等に、印刷データ370に書誌データを添付する。
さらに、印刷データ生成部351は、通信部155を介して、作成された印刷データ370を、プリンタ検索部152で検索されたプリンタ310に送信する処理を行う。
【0179】
(動作の説明)
図38は、実施の形態3におけるPC350が印刷データ370を作成し、送信する処理を示すフローチャートである。図38のフローは、例えば、利用者が、UIF部154を介して、ドキュメントの印刷を指示した場合に開始される。
【0180】
印刷データ生成部351は、印刷指示の対象となったドキュメントから印刷データを生成する(S240)。
【0181】
次に、印刷データ生成部351は、印刷データに認証情報を追加するか否かを判断する(S241)。例えば、印刷データ生成部351は、PC350の利用者が、UIF部154を介して、すぐに印刷することを選択した場合には、認証情報を追加しないものと判断し、すぐには印刷しないことを選択した場合には、認証情報を追加するものと判断する。そして、印刷データ生成部351は、認証情報を追加すると判断した場合(S241:Yes)には、ステップS242の処理に進み、認証情報を追加しないと判断した場合(S241:No)には、ステップS243の処理に進む。
【0182】
ステップS242では、印刷データ生成部351は、ステップS240で生成された印刷データに認証情報を追加する。例えば、印刷データ生成部351は、図34に示されている印刷データ370において、10行目の「Confidential」の拡張変数の値を「Yes」とし、13行目の「AuthenticationData」の拡張変数の値に利用者の認証情報を追加する。なお、印刷データ生成部351は、必要に応じて、例えば、UIF部154を介して、利用者からの認証情報の入力を受け付ける。
【0183】
ステップ243では、印刷データ生成部351は、印刷データに書誌データを添付するか否かを判断する。例えば、印刷データ生成部351は、PC350の利用者が、UIF部154を介して、書誌データを添付することを選択したか否かで、ステップS243での判断を実行する。そして、印刷データ生成部351は、書誌データを添付すると判断した場合(S243:Yes)には、ステップS244の処理に進み、書誌データを添付しないと判断した場合(S243:No)には、ステップS245の処理に進む。
【0184】
ステップS244では、印刷データ生成部351は、書誌データを生成して、ステップS240で生成された印刷データに添付する。
【0185】
ステップS245では、印刷データ生成部351は、通信部155を介して、印刷データ370を、書誌データが添付されている場合には書誌データとともに、プリンタ310に送信する処理を行う。なお、送信先となるプリンタ310は、ネットワーク130に接続されたいずれかのプリンタ310である。ここで、送信先となるプリンタ310は、予めPC350に設定されていてもよい。例えば、PC350の利用者又は画像形成システム300の管理者は、UIF部154を介して、PC350に送信先となるプリンタ310を設定することができる。
【0186】
以上のように、実施の形態3におけるPC350は、印刷データ370を生成して、プリンタ310に送信することができる。
【0187】
図39は、実施の形態3におけるプリンタ310が印刷データ370を受信した場合の処理を示すフローチャートである。このフローは、プリンタ310の印刷制御部312が、通信部119を介して、印刷データ370を取得した場合に開始される。
【0188】
印刷制御部312は、通信部119から受け取った印刷データ370に認証情報が含まれているか否かを確認する(S250)。そして、印刷制御部312は、認証情報が含まれている場合(S250:Yes)には、ステップS252の処理に進み、認証情報が含まれていない場合(ステップS250:No)には、ステップS251の処理に進む。
【0189】
ステップS251では、印刷制御部312は、受け取った印刷データ370を印刷部111に送り、受け取った印刷データ370に基づいて、印刷部111に印刷を行わせる。
【0190】
一方、ステップS252では、印刷制御部312は、印刷データ370に書誌データが添付されているか否かを判断する。そして、印刷制御部312は、書誌データが添付されている場合(S252:Yes)には、ステップS254の処理に進み、書誌データが添付されていない場合(S252:No)には、ステップS253の処理に進む。
【0191】
ステップS253では、印刷制御部312は、印刷データ370に含まれている制御データ370aの拡張変数の値から、書誌データを生成する(S253)。この書誌データは、少なくとも印刷データ370を特定することができるものとする。
【0192】
そして、ステップS254では、印刷制御部312は、書誌データに、印刷データ370の保存先を特定する情報と、印刷データ370の名称と、を追加することで個別管理情報を生成する(S254)。
【0193】
そして、印刷制御部312は、受け取った印刷データ370を記憶部316に記憶させるとともに、記憶部316に記憶されている印刷管理テーブル371に新たなレコードを追加し、このレコードにステップS254で生成された個別管理情報を格納する(S255)。
【0194】
以上のように、実施の形態3におけるプリンタ310は、認証情報が付加された印刷データ370を受信した場合には、この印刷データ370を記憶部316に記憶させるとともに、この印刷データ370を管理するための個別管理情報を印刷管理テーブル371に格納することができる。
【0195】
図40は、情報管理部313が行う同期化処理を示すフローチャートである。ここで、本実施の形態における同期化は、変更後の印刷管理テーブル371の内容を他のプリンタ310に送信し、保存させることで、記憶部316に記憶されている印刷管理テーブル371の内容を同一化することである。図40に示されているフローは、記憶部316に記憶されている印刷管理テーブル371の内容に変更が加えられようとする際に開始される。
【0196】
情報管理部313は、記憶部316に記憶されているプリンタリストテーブル372を取得する(S260)。
情報管理部313は、取得されたプリンタリストテーブル372を参照することで、ネットワークに接続された他のプリンタ310が存在するか否かを判断する(S261)。そして、情報管理部313は、他のプリンタ310が存在する場合(S261:Yes)には、ステップS262の処理に進み、他のプリンタ310が存在しない場合(S261:No)には、ステップS271の処理に進む。
【0197】
ステップS262では、情報管理部313は、変更が加えられようとしている印刷管理テーブル371の変更が、他のプリンタ310の指示によりロックされているか否かを判断する。そして、情報管理部313は、ロックされている場合(S262:Yes)には、ステップS263の処理に進み、ロックされていない場合(S262:No)には、ステップS264の処理に進む。
【0198】
ステップS263では、情報管理部313は、他のプリンタ310からロックの解除が指示されるまで待機する。そして、ロックの解除が指示された場合には、ステップS262の処理に戻る。
【0199】
ステップS264では、情報管理部313は、通信部119を介して、ネットワーク130に接続されている他のプリンタ310に、印刷管理テーブル371の変更を停止させるためのロック要求メッセージを送信する処理を行う。送信先は、ステップS260で取得されたプリンタリストテーブル372に情報が登録されているプリンタ310である。
そして、情報管理部313は、ロック要求メッセージを送信した全てのプリンタ310から応答があるまで待機する(S265)。情報管理部313は、全てのプリンタ310から応答があった場合には、ステップS266の処理に進む。
【0200】
ステップS266では、情報管理部313は、ロック要求メッセージを送信した全てのプリンタ310でロックが成功したか否かを判断する。例えば、情報管理部313は、ロック要求メッセージを送信した全てのプリンタ310からの応答が、全て成功応答であった場合には、全てのプリンタ310でロックが成功したと判断する。一方、情報管理部313は、ロック要求メッセージを送信したプリンタ310からの応答に、失敗応答が含まれている場合には、全てのプリンタ310でのロックには成功しなかったと判断する。そして、情報管理部313は、全てのプリンタ310でロックが成功した場合(S266:Yes)には、ステップS268の処理に進み、全てのプリンタ310でのロックには成功しなかった場合(S266:No)には、ステップS267の処理に進む。
【0201】
ステップS267では、情報管理部313は、通信部119を介して、ステップS265でロックの成功応答を送信してきたプリンタ310に、ロックの解除を指示するロック解除メッセージを送信する処理を行う。なお、情報管理部313は、ステップS265でロックの失敗応答を送信してきたプリンタ310には、ロック解除メッセージを送信する処理を行わない。そして、情報管理部313は、ロック解除メッセージを送信した全てのプリンタ310からの受信応答があった場合には、ステップS262の処理に戻る。
【0202】
ステップS268では、情報管理部313は、記憶部316に記憶されている印刷管理テーブル371を更新する。
そして、情報管理部313は、更新後の印刷管理テーブル371に格納されている内容を全て含む更新データを生成し、通信部119を介して、この更新データを、ネットワーク130に接続されている他のプリンタ310に送信する処理を行う(S269)。ここで、送信先は、ステップS264でロック要求メッセージを送信した他のプリンタ310である。
そして、情報管理部313は、通信部119を介して、ロック解除メッセージを送信する(S270)。ここで、送信先は、ステップS264でロック要求メッセージを送信した他のプリンタ310である。
【0203】
一方、ステップS261において、他のプリンタ310が存在しないと判断された場合(S261:No)には、ステップS271の処理に進む。ステップS271では、情報管理部313は、記憶部316に記憶されている印刷管理テーブル371を更新する。
【0204】
以上のように、実施の形態3におけるプリンタ310では、印刷管理テーブル371に変更が加えられる際に、他のプリンタ310に記憶されている印刷管理テーブル371の変更をロックしてから、自装置の印刷管理テーブル371の内容を変更し、変更後の内容を他のプリンタ310に通知する。このため、実施の形態3におけるプリンタ310では、自装置の印刷管理テーブル371を変更している間に、他のプリンタ310において、内容が変更されてしまい、これらの印刷管理テーブル371の内容が異なるものとなってしまうことを防止することができる。
【0205】
なお、図40に示されているフローチャートでは、情報管理部313は、ステップS269において、更新後の印刷管理テーブル371の内容の全てを更新データとして、他のプリンタ310に送信しているが、このような例に限定されるものではない。例えば、情報管理部313は、ステップS268で、印刷管理テーブル371において更新された内容だけを更新データとして、他のプリンタ310に送信してもよい。
【0206】
図41は、プリンタ310がロック要求メッセージを受信した際の処理を示すフローチャートである。本フローは、プリンタ310の情報管理部313が、通信部119を介して、他のプリンタ310から送信されたロック要求メッセージを取得した際に開始される。
【0207】
情報管理部313は、他のプリンタ310からのロック要求メッセージを受け取った際に、通信部119を介して、自装置から他のプリンタ310にロック要求メッセージを送信し、他のプリンタ310からその応答を待っている状態であるか否かを確認する(S280)。そして、情報管理部313は、他のプリンタ310から応答を待っている状態である場合(S280:Yes)には、ステップS281の処理に進み、他のプリンタ310からその応答を待っている状態ではない場合(S280:No)には、ステップS284の処理に進む。
【0208】
ステップS281では、情報管理部313は、自装置の優先順位が、情報管理部313が取得したロック要求メッセージの送信元である他のプリンタ310の優先順位よりも高いか否かを確認する。そして、情報管理部313は、自装置の優先順位が高い場合(S281:Yes)には、ステップS282の処理に進み、自装置の優先順位が低い場合(S281:No)には、ステップS284の処理に進む。
【0209】
ステップS282では、情報管理部313は、自装置が送信したロック要求メッセージに対する全ての応答があるまで、待機する。
そして、情報管理部313は、自装置が送信したロック要求メッセージに対する全ての応答があった場合には、通信部119を介して、他のプリンタ310からのロック要求メッセージに対して失敗したことを応答する失敗応答を、このロック要求メッセージの送信元である他のプリンタ310に送信する処理を行う(S283)。
【0210】
一方、ステップS284では、情報管理部313は、自装置において、印刷管理テーブル371の変更を停止することで、ロックを実施する。ロックが実施されると、情報管理部313は、ロックを指示したプリンタ310からの更新データに基づいて処理する場合を除いて、印刷管理テーブル371に対する処理を行うことができない。このため、情報管理部313は、ロック要求メッセージを送信してきたプリンタ310を特定する情報(例えば、IPアドレス等)を記憶部316に記憶しておく。なお、情報管理部313は、既にロックを実施している場合でも、他のプリンタ310からロック要求メッセージを受け取った場合には、さらにロックを実施することができる。
そして、情報管理部313は、通信部119を介して、他のプリンタ310からのロック要求メッセージに対して成功したことを応答する成功応答を、このロック要求メッセージの送信元である他のプリンタ310に送信する処理を行う(S285)。
【0211】
以上のように、実施の形態3における情報管理部313は、ロック要求メッセージを受け取ると、自装置がロック要求中ではない場合には、自装置のロックを実施する。一方、自装置もロックの要求中である場合は、情報管理部313は、優先順位に基づき、ロック要求に応じるか否かを判断する。なお、情報管理部313は、図41に示されているフローを開始する前に、ロック要求メッセージの送信元であるプリンタ310の情報が、プリンタリストテーブル372に格納されているか否かを確認し、格納されていない場合には、図41に示されているフローを終了してもよい。
【0212】
また、図41に示されているフローでは、情報管理部313は、自装置が送信したロック要求メッセージに対する全ての応答があるまで待機してから(S282)、失敗応答を送信する処理を行っている(S283)が、この例に限定されない。例えば、情報管理部313は、自装置が送信したロック要求メッセージに対する全ての応答がある前に、失敗応答を送信する処理を行ってもよい。
【0213】
図42は、プリンタ310がロック解除メッセージを受信した場合の処理を示すフローチャートである。本フローは、情報管理部313が、通信部119から、他のプリンタ310より送信されたロック解除メッセージを受け取った際に開始される。
【0214】
情報管理部313は、自装置の印刷管理テーブル371の変更が既にロックされているか否かを判断する(S290)。そして、情報管理部313は、印刷管理テーブル371の変更がロックされている場合(S290:Yes)には、ステップS291の処理に進み、印刷管理テーブル371の変更がロックされていない場合(S290:No)には、ステップS294の処理に進む。
【0215】
ステップS291では、情報管理部313は、自装置における印刷管理テーブル371の変更のロックの原因となったロック要求メッセージの送信元であるプリンタ310と、ロック解除メッセージの送信元であるプリンタ310とが同一であるか否かを確認する。情報管理部313は、これらのメッセージの送信元のIPアドレスが同一であるか否かにより、これらのメッセージの送信元のプリンタ310が同一であるか否かを確認すればよい。そして、情報管理部313は、これらのメッセージの送信元のプリンタ310が同一である場合(S291:Yes)には、ステップS292の処理に進み、これらのメッセージの送信元のプリンタ310が同一ではない場合(S291:No)には、ステップS294の処理に進む。
【0216】
ステップS292では、情報管理部313は、取得されたロック解除メッセージに対応するロックを解除する。なお、情報管理部313は、複数のロック要求メッセージに基づいて、自装置における変更をロックしている場合には、全てのロック要求メッセージに対するロック解除メッセージを受信するまで、自装置のロックは継続する。
そして、情報管理部313は、通信部119を介して、ロック解除メッセージに対する成功の応答である成功応答を、このロック解除メッセージの送信元であるプリンタ310に送信する処理を行う(S293)。
【0217】
一方、ステップS294では、情報管理部313は、ロック解除メッセージに対する失敗の応答である失敗応答を、このロック解除メッセージの送信元であるプリンタ310に送信する処理を行う。
【0218】
以上のように、実施の形態3における情報管理部313は、ロック解除のメッセージを受信すると、ロックを指示したプリンタ310と、ロックの解除を指示したプリンタ310とが一致するか否かを判断した後に、ロックの解除を行う。
【0219】
図43は、プリンタ310が更新データを受信した際の処理を示すフローチャートである。本フローは、情報管理部313が、通信部119より他のプリンタ310から送信された更新データを受け取ることにより開始される。
【0220】
情報管理部313は、自装置の印刷管理テーブル371の変更が既にロックされているか否かを判断する(S300)。そして、情報管理部313は、印刷管理テーブル371の変更がロックされている場合(S300:Yes)には、ステップS301の処理に進み、印刷管理テーブル371の変更がロックされていない場合(S300:No)には、ステップS304の処理に進む。
【0221】
ステップS301では、情報管理部313は、自装置における印刷管理テーブル371の変更のロックの原因となったロック要求メッセージの送信元であるプリンタ310と、更新データの送信元であるプリンタ310とが同一であるか否かを確認する。情報管理部313は、送信元のIPアドレスが同一であるか否かにより、送信元のプリンタ310が同一であるか否かを確認すればよい。そして、情報管理部313は、送信元のプリンタ310が同一である場合(S301:Yes)には、ステップS302の処理に進み、送信元のプリンタ310が同一ではない場合(S301:No)には、ステップS304の処理に進む。
【0222】
ステップS302では、情報管理部313は、受け取った更新データの内容に基づいて、記憶部316に記憶されている印刷管理テーブル371を更新する。例えば、情報管理部313は、印刷管理テーブル371に格納されている全ての情報を、受け取った更新データで示される情報に置き換えることで、更新を実行する。
そして、情報管理部313は、通信部119を介して、更新データに対する成功の応答である成功応答を、この更新データの送信元であるプリンタ310に送信する処理を行う(S303)。
【0223】
一方、ステップS304では、情報管理部313は、更新データに対する失敗の応答である失敗応答を、この更新データの送信元であるプリンタ310に送信する処理を行う。
【0224】
なお、情報管理部313は、更新データとして、更新された内容だけが送られてくる場合には、印刷管理テーブル371において、更新された内容に対応する情報だけを更新する。
【0225】
図44は、実施の形態3に係る画像形成システム300において、印刷管理テーブル371の同期化を行う際の処理を示すシーケンス図である。図44のシーケンスでは、ネットワークにプリンタ310A及びプリンタ310Bが接続されているものとする。プリンタ310A及びプリンタ310Bの構成は、図33に示されている構成と同様であるが、以下では、それぞれのプリンタ310A及びプリンタ310Bの構成要素を区別するために、プリンタ310Aの構成要素には「A」の符号を付し、プリンタ310Bの構成要素には「B」の符号を付して説明する。なお、プリンタ310A及びプリンタ310Bのプリンタ名は、それぞれ、「プリンタA」及び「プリンタB」である。
【0226】
プリンタ310Aにおいて、印刷管理テーブル371の更新理由が発生する(S310)。例えば、印刷管理テーブル371の更新理由は、印刷制御部312Aが、通信部119Aを介して、PC350から送信された印刷データ370を受け取った場合、印刷制御部312Aが、印刷データ370に基づいて印刷を実行した場合、又は、利用者からの指示に応じて、印刷制御部312Aが印刷データ370を削除した場合等に、発生する。
情報管理部313Aは、通信部119Aを介して、ロック要求メッセージをプリンタ310Bに送信する処理を行う(S311)。
【0227】
ロック要求メッセージを受信したプリンタ310Bでは、情報管理部313Bが、プリンタ310Aからのロック要求に応じて、自装置の印刷管理テーブル371の変更を停止する(S312)。
そして、情報管理部313Bは、通信部119Bを介して、ロック要求に対する成功応答を、プリンタ310Aに返信する(S313)。
【0228】
ここで、プリンタ310Bにおいて、印刷管理テーブル371の更新理由が発生する(S314)。例えば、印刷管理テーブル371の更新理由は、印刷制御部312Bが、通信部119Bを介して、PC350から送信された印刷データ370を受け取った場合、印刷制御部312Bが、印刷部111Bに印刷データ370に基づいて印刷を実行された場合、又は、利用者からの指示に応じて、印刷制御部312Bが印刷データ370を削除した場合等に、発生する。
但し、情報管理部313Bは、既に、自装置において印刷管理テーブル371の更新が停止されているため、印刷管理テーブル371の更新処理を停止する(S315)。
【0229】
プリンタ310Bからの成功応答を受信したプリンタ310Aでは、情報管理部313Aが、記憶部316Aに記憶されている印刷管理テーブル371を更新する(S316)。
そして、情報管理部313Aは、更新後の印刷管理テーブル371の内容の全てを含む更新データを生成し(S317)、通信部119Aを介して、生成された更新データをプリンタ310Bに送信する処理を行う(S318)。
【0230】
更新データを受信したプリンタ310Bでは、情報管理部313Bは、記憶部316Bに記憶されている印刷管理テーブル371に格納されている情報の全てを、更新データの内容で示される情報に置き換えることで、印刷管理テーブル371を更新する(S319)。これにより、プリンタ310Aの印刷管理テーブル371と、プリンタ310Bの印刷管理テーブル371とは、同一の内容となり、同期化が行われたことになる。
そして、情報管理部313Bは、通信部119Bを介して、印刷管理テーブル371の更新が成功したことを示す成功応答をプリンタ310Aに送信する処理を行う(S320)。
更新の成功応答を受信したプリンタ310Aでは、情報管理部313Aは、通信部119Aを介して、ロック解除メッセージをプリンタ310Bに送信する処理を行う(S321)。
【0231】
ロック解除メッセージを受信したプリンタ310Bでは、情報管理部313Bは、自装置の印刷管理テーブル371の変更の停止を解除する(S322)。
また、情報管理部313Bは、通信部119Bを介して、ロックの解除要求に対する成功応答をプリンタ310Aに送信する処理を行う(S323)。
さらに、情報管理部313Bは、ステップS315で停止されていた更新処理を再開する(S324)。
そして、情報管理部313Bは、通信部119Bを介して、ロック要求メッセージをプリンタ310Aに送信する処理を行う(S325)。
【0232】
ロック要求メッセージを受信したプリンタ310Aでは、情報管理部313Aが、プリンタ310Bからのロック要求に応じて、自装置の印刷管理テーブル371の変更を停止する(S326)。
そして、情報管理部313Aは、通信部119Aを介して、ロック要求に対する成功応答を、プリンタ310Bに返信する(S327)。
【0233】
プリンタ310Aからの成功応答を受信したプリンタ310Bでは、情報管理部313Bが、記憶部316Bに記憶されている印刷管理テーブル371を更新する(S328)。
そして、情報管理部313Bは、更新後の印刷管理テーブル371の内容の全てを含む更新データを生成し(S329)、通信部119Bを介して、生成された更新データをプリンタ110Aに送信する処理を行う(S330)。
【0234】
更新データを受信したプリンタ310Aでは、情報管理部313Aは、記憶部316Aに記憶されている印刷管理テーブル371に格納されている情報の全てを、更新データの内容で示される情報に置き換えることで、印刷管理テーブル371を更新する(S331)。これにより、プリンタ310Aの印刷管理テーブル371と、プリンタ310Aの印刷管理テーブル371とは、同一の内容となり、同期化が行われたことになる。
そして、情報管理部313Aは、通信部119Aを介して、印刷管理テーブル371の更新が成功したことを示す成功応答をプリンタ310Bに送信する処理を行う(S332)。
更新の成功応答を受信したプリンタ310Bでは、情報管理部313Bは、通信部119Bを介して、ロック解除メッセージをプリンタ310Aに送信する処理を行う(S333)。
【0235】
ロック解除メッセージを受信したプリンタ310Aでは、情報管理部313Aは、自装置の印刷管理テーブル371の変更の停止を解除する(S334)。
また、情報管理部313Aは、通信部119Aを介して、ロックの解除要求に対する成功応答をプリンタ310Bに送信する処理を行う(S335)。
【0236】
以上のように、複数のプリンタ310の情報管理部313は、印刷管理テーブル371の変更を停止している間に、更新理由が発生しても、ロックが解除されるまで、印刷管理テーブル371の内容を変更することができないため、複数のプリンタ310における印刷管理テーブル371の内容の同一性を確保することができる。
【0237】
図45及び図46は、実施の形態3に係る画像形成システム300において、複数のプリンタ310で、印刷管理テーブル371の更新理由が同時に発生した場合の処理を示すシーケンス図である。図45及び図46に示されているシーケンスでは、ネットワーク130に、プリンタ310A、プリンタ310B及びプリンタ310Cが接続されているものとする。また、優先順位は、プリンタ310A、プリンタ310B及びプリンタ310Cの順に高いものとする。なお、プリンタ310A、プリンタ310B及びプリンタ310Cの構成は、図33に示されている構成と同様であるが、以下では、それぞれのプリンタ310A、プリンタ310B及びプリンタ310Cの構成要素を区別するために、プリンタ310Aの構成要素には「A」の符号を付し、プリンタ310Bの構成要素には「B」の符号を付して説明する。なお、プリンタ310A、プリンタ310B及びプリンタ310Cのプリンタ名は、それぞれ、「プリンタA」、「プリンタB」及び「プリンタC」である。
【0238】
プリンタ310Aにおいて印刷管理テーブル371の更新理由が発生する(S340)と、プリンタ310Aの情報管理部313Aは、記憶部316Aに記憶されているプリンタリストテーブル372を参照して、通信部119Aを介して、プリンタ310B及びプリンタ310Cに対してロック要求メッセージを送信する(S341、S342)。
【0239】
また、プリンタ310Bにおいて印刷管理テーブル371の更新理由が発生する(S343)と、プリンタ310Bの情報管理部313Bは、記憶部316Bに記憶されているプリンタリストテーブル372を参照して、通信部119Bを介して、プリンタ310A及びプリンタ310Cに対してロック要求メッセージを送信する(S344、S345)。
【0240】
さらに、プリンタ310Cにおいて印刷管理テーブル371の更新理由が発生する(S346)と、プリンタ310Cの情報管理部313Cは、記憶部316Cに記憶されているプリンタリストテーブル372を参照して、通信部119Cを介して、プリンタ310A及びプリンタ310Bに対してロック要求メッセージを送信する(S347、S348)。
なお、ステップS340、S343及びS346は、同時に起こるものとし、ステップS341、S342、S344、S345、S347及びS348は、同時に行われるものとする。
【0241】
プリンタ310Aの情報管理部313Aは、プリンタ310B及びプリンタ310Cに対する応答動作を一時停止する(S349)。これは、プリンタ310Aがロック要求中であり、かつ、プリンタ310Bとプリンタ310Cの優先順位が、プリンタ310Aよりも低いからである。動作の一時停止は、ロック要求に対する全ての応答があるまで継続される。
【0242】
また、プリンタ310Bの情報管理部313Bは、プリンタ310Cに対する応答動作を一時停止する(S350)。これは、プリンタ310Bがロック要求中であり、かつ、プリンタ310Cの優先順位が、プリンタ310Bよりも低いからである。動作の一時停止は、ロック要求に対する全ての応答があるまで継続される。但し、情報管理部313Bは、プリンタ310Aに対する応答動作については継続し、プリンタ310Aからのロック要求を受け入れて、記憶部316Bに記憶されている印刷管理テーブル371に対する変更を停止する(S351)。そして、情報管理部313Bは、通信部119Bを介して、ロック要求に対する成功応答をプリンタ310Aに送信する処理を行う(S352)。
【0243】
プリンタ310Cの情報管理部313Cは、プリンタ310Aからのロック要求を受け入れて、記憶部316Cに記憶されている印刷管理テーブル371に対する変更を停止する(S353)。そして、情報管理部313Cは、通信部119Cを介して、ロック要求に対する成功応答をプリンタ310Aに送信する処理を行う(S354)。
また、情報管理部313Cは、プリンタ310Bからのロック要求を受け入れて、記憶部316Cに記憶されている印刷管理テーブル371に対する変更を停止する(S355)。そして、情報管理部313Cは、通信部119Cを介して、ロック要求に対する成功応答をプリンタ310Bに送信する処理を行う(S356)。
【0244】
プリンタ310B及びプリンタ310Cからの成功応答を受信したプリンタ310Aでは、情報管理部313Aが、ステップS349で停止されていた応答動作を再開する(S357)。これは、プリンタ310Aから送信された全てのロック要求メッセージに対して応答が行われたためである。
そして、情報管理部313Aは、通信部119Aを介して、ステップS344及びS348におけるロック要求に対する失敗応答を、プリンタ310B及びプリンタ310Cに送信する処理を行う(S358、S359)。
【0245】
プリンタ310Bの情報管理部313Bは、ステップS350で停止されていた応答動作を再開する(S360)。これは、プリンタ310Bから送信された全てのロック要求メッセージに対して応答が行われたためである。
そして、情報管理部313Bは、通信部119Bを介して、ステップS347におけるロック要求に対する失敗応答を、プリンタ310Cに送信する処理を行う(S361)。
また、情報管理部313Bは、通信部119Bを介して、プリンタ310Cにロック解除メッセージを送信する(S362)。これは、プリンタ310Bが、プリンタ310Aのロックに成功せず、全てのロックには成功していないためである。
【0246】
プリンタ310Bからのロック解除メッセージを受信したプリンタ310Cでは、情報管理部313Cが、プリンタ310Bから要求されたロックを解除する(S363)。そして、情報管理部313Cは、通信部119Cを介して、ロック解除要求に対する成功応答を、プリンタ310Bに送信する(S364)。但し、情報管理部313Cは、プリンタ310Aから要求されたロックは解除しない。
【0247】
プリンタ310Aでは、情報管理部313Aが、印刷管理テーブル371の同期化処理を行う(S365)。これは、情報管理部313Aが、自装置の印刷管理テーブル371を更新し、更新後の印刷管理テーブル371の内容を示す更新データをプリンタ310B及び310Cに送信して、プリンタ310A、プリンタ310B及び310Cの印刷管理テーブル371の内容を同一にする処理である。
そして、情報管理部313Aは、通信部119Aを介して、プリンタ310B及び310Cにロック解除メッセージを送信する処理を行う(S366、S367)。
【0248】
ロック解除メッセージを受信したプリンタ310Bでは、情報管理部313Bが、プリンタ310Aからのロック要求に対するロックを解除する(S368)。
そして、情報管理部313Bは、通信部119Bを介して、ロック解除要求に対する成功応答をプリンタ310Aに送信する処理を行う(S369)。
【0249】
また、ロック解除メッセージを受信したプリンタ310Cでは、情報管理部313Cが、プリンタ310Aからのロック要求に対するロックを解除する(S370)。
そして、情報管理部313Cは、通信部119Cを介して、ロック解除要求に対する成功応答をプリンタ310Aに送信する処理を行う(S371)。
ここで、シーケンスは、図46に続く。
【0250】
図46において、プリンタ310Bの情報管理部313Bは、記憶部316Bに記憶されているプリンタリストテーブル372を参照して、通信部119Bを介して、プリンタ310A及びプリンタ310Cに対してロック要求メッセージを再び送信する(S372、S373)。
【0251】
さらに、プリンタ310Cの情報管理部313Cも、記憶部316Cに記憶されているプリンタリストテーブル372を参照して、通信部119Cを介して、プリンタ310A及びプリンタ310Bに対してロック要求メッセージを送信する(S374、S375)。
なお、ステップS372〜S375は、同時に行われるものとする。
【0252】
プリンタ310Aの情報管理部313Aは、プリンタ310Bからのロック要求を受け入れて、記憶部316Aに記憶されている印刷管理テーブル371に対する変更を停止する(S376)。そして、情報管理部313Aは、通信部119Aを介して、ロック要求に対する成功応答をプリンタ310Bに送信する処理を行う(S377)。
また、情報管理部313Aは、プリンタ310Cからのロック要求を受け入れて、記憶部316Aに記憶されている印刷管理テーブル371に対する変更を停止する(S378)。そして、情報管理部313Aは、通信部119Aを介して、ロック要求に対する成功応答をプリンタ310Cに送信する処理を行う(S379)。
【0253】
一方、プリンタ310Bの情報管理部313Bは、プリンタ310Cに対する応答動作を一時停止する(S380)。これは、プリンタ310Bがロック要求中であり、かつ、プリンタ310Cの優先順位が、プリンタ310Bよりも低いからである。動作の一時停止は、ロック要求に対する全ての応答があるまで継続される。
【0254】
プリンタ310Cの情報管理部313Cは、プリンタ310Bからのロック要求を受け入れて、記憶部316Cに記憶されている印刷管理テーブル371に対する変更を停止する(S381)。そして、情報管理部313Cは、通信部119Cを介して、ロック要求に対する成功応答をプリンタ310Bに送信する処理を行う(S382)。
【0255】
プリンタ310A及びプリンタ310Cからの成功応答を受信したプリンタ310Bでは、情報管理部313Bが、ステップS380で停止されていた応答動作を再開する(S383)。これは、プリンタ310Bから送信された全てのロック要求メッセージに対して応答が行われたためである。
そして、情報管理部313Bは、通信部119Bを介して、ステップS374におけるロック要求に対する失敗応答を、プリンタ310Cに送信する処理を行う(S384)。
【0256】
プリンタ310Cの情報管理部313Cは、通信部119Cを介して、プリンタ310Aにロック解除メッセージを送信する(S385)。これは、プリンタ310Cが、プリンタ310Bのロックに成功せず、全てのロックには成功していないためである。
【0257】
プリンタ310Cからのロック解除メッセージを受信したプリンタ310Aでは、情報管理部313Aが、プリンタ310Cから要求されたロックを解除する(S386)。そして、情報管理部313Aは、通信部119Aを介して、ロック解除要求に対する成功応答を、プリンタ310Cに送信する(S387)。但し、情報管理部313Aは、プリンタ310Bから要求されたロックは解除しない。
【0258】
プリンタ310Bでは、情報管理部313Bが、印刷管理テーブル371の同期化処理を行う(S388)。これは、情報管理部313Bが、自装置の印刷管理テーブル371を更新し、更新後の印刷管理テーブル371の内容を示す更新データをプリンタ310A及び310Cに送信し、プリンタ310A、プリンタ310B及び310Cの印刷管理テーブル371の内容を同一にする処理である。
そして、情報管理部313Bは、通信部119Bを介して、プリンタ310A及び310Cにロック解除メッセージを送信する処理を行う(S389、S390)。
【0259】
ロック解除メッセージを受信したプリンタ310Aでは、情報管理部313Aが、プリンタ310Bからのロック要求に対するロックを解除する(S391)。
そして、情報管理部313Aは、通信部119Aを介して、ロック解除要求に対する成功応答をプリンタ310Bに送信する処理を行う(S392)。
【0260】
また、ロック解除メッセージを受信したプリンタ310Cでは、情報管理部313Cが、プリンタ310Bからのロック要求に対するロックを解除する(S393)。
そして、情報管理部313Cは、通信部119Cを介して、ロック解除要求に対する成功応答をプリンタ310Bに送信する処理を行う(S394)。
【0261】
プリンタ310Cの情報管理部313Cは、記憶部316Cに記憶されているプリンタリストテーブル372を参照して、通信部119Cを介して、プリンタ310A及びプリンタ310Bに対してロック要求メッセージをまた送信する(S395、S396)。
【0262】
プリンタ310Aの情報管理部313Aは、プリンタ310Bからのロック要求を受け入れて、記憶部316Aに記憶されている印刷管理テーブル371に対する変更を停止する(S397)。そして、情報管理部313Aは、通信部119Aを介して、ロック要求に対する成功応答をプリンタ310Cに送信する処理を行う(S398)。
【0263】
また、プリンタ310Bの情報管理部313Bは、プリンタ310Cからのロック要求を受け入れて、記憶部316Bに記憶されている印刷管理テーブル371に対する変更を停止する(S399)。そして、情報管理部313Bは、通信部119Bを介して、ロック要求に対する成功応答をプリンタ310Cに送信する処理を行う(S400)。
【0264】
プリンタ310Cでは、情報管理部313Cが、印刷管理テーブル371の同期化処理を行う(S401)。これは、情報管理部313Cが、自装置の印刷管理テーブル371を更新し、更新後の印刷管理テーブル371の内容を示す更新データをプリンタ310A及びプリンタ310Bに送信し、プリンタ310A、プリンタ310B及びプリンタ310Cの印刷管理テーブル371の内容を同一にする処理である。
そして、情報管理部313Cは、通信部119Cを介して、プリンタ310A及びプリンタ310Bにロック解除メッセージを送信する処理を行う(S402、S403)。
【0265】
ロック解除メッセージを受信したプリンタ310Aでは、情報管理部313Aが、プリンタ310Cからのロック要求に対するロックを解除する(S404)。
そして、情報管理部313Aは、通信部119Aを介して、ロック解除要求に対する成功応答をプリンタ310Cに送信する処理を行う(S405)。
【0266】
また、ロック解除メッセージを受信したプリンタ310Bでは、情報管理部313Bが、プリンタ310Cからのロック要求に対するロックを解除する(S406)。
そして、情報管理部313Bは、通信部119Bを介して、ロック解除要求に対する成功応答をプリンタ310Cに送信する処理を行う(S407)。
【0267】
以上のように、実施の形態3に係る画像形成システム300においては、複数のプリンタ310において、印刷管理テーブル371への変更理由が同時に発生した場合、予め定められた優先順位に基づいて順番に印刷管理テーブル371の更新を行うことができるため、各々のプリンタ310の印刷管理テーブル371の内容を順序立てて更新することができる。
【0268】
図47は、実施の形態3におけるプリンタ310で、認証情報が付加された印刷データ370を印刷する場合の処理を示すフローチャートである。図47に示されているフローチャートは、利用者がプリンタ310の認証処理部117を利用して認証を行うことで、開始される。
【0269】
印刷制御部312は、認証処理部117から認証情報を受け取る(S410)。
そして、印刷制御部312は、印刷管理テーブル371において、ステップS410で受け取った認証情報と、認証情報欄371eに格納されている認証情報とが一致するレコードを特定する。そして、印刷制御部312は、特定されたレコードから、印刷データ370を選択するために必要な情報を抽出して、抽出された情報により印刷データ選択画面を生成する(S412)。
そして、印刷制御部312は、生成された印刷データ選択画面をUIF部118に表示させて、利用者からの選択を受け付ける。ここで、印刷データ選択画面は、ネットワーク130に接続されているプリンタ310において保存されている、認証を行った利用者が印刷可能な印刷データ370から、実際に印刷を実行する印刷データ370を選択するための選択画面である。
【0270】
図48は、印刷データ選択画面380の一例を示す概略図である。印刷データ選択画面380は、印刷データ選択領域380aと、印刷指示領域380bと、Cancel指示領域380cとを備える。
印刷データ選択領域380aは、印刷データ370の選択の入力を受け付ける。例えば、印刷データ選択領域380aには、印刷管理テーブル371から抽出された印刷データ370の文書名と、印刷データ370の生成日と、印刷データ370のページ数とが表示されている。利用者は、表示されているこれらの文書名、生成日及びページ数により印刷データ370を識別して、印刷を実行する印刷データ370を選択する。なお、印刷データ選択領域380aに表示しきれない印刷データ370については、スクロールバー380dを下方に移動させることにより、表示させることができる。
そして、UIF部118は、利用者により、印刷データ選択領域380aにおいて印刷データ370が選択され、印刷指示領域380bを選択した実行指示の入力を受け付けた場合には、印刷データ選択領域380aにおいて選択された情報と、印刷指示とを印刷制御部312に与える。
また、UIF部118は、利用者により、Cancel指示領域380cを選択した実行指示の入力を受け付けた場合には、キャンセル指示を印刷制御部312に与える。
【0271】
図47の説明に戻り、印刷制御部312は、UIF部118を介して、利用者より指示の入力を受け付ける(S413)。そして、印刷制御部312は、UIF部118から印刷指示を受けた場合には、ステップS414の処理に進み、UIF部118からキャンセル指示を受けた場合には、フローを終了する。なお、印刷制御部312は、一定時間指示の入力が行われない場合には、キャンセル指示の入力が行われたと判断して、フローを終了してもよい。
【0272】
ステップS414では、印刷制御部312は、ステップS413で選択された印刷データ370が、自装置の記憶部316に保存されているか否かを判断する。そして、印刷制御部312は、自装置に選択された印刷データ370が保存されていると判断した場合(ステップS414:Yes)には、ステップS415の処理に進み、自装置に選択された印刷データ370が保存されていないと判断した場合(ステップS414:No)には、ステップS417の処理に進む。
【0273】
ステップS415では、印刷制御部312は、ステップS413で選択された印刷データ370を、自装置の記憶部316から取得する。この際、印刷制御部312は、記憶部316に取得された印刷データ370を残さないように、記憶部316から取得された印刷データ370を削除する。
【0274】
そして、印刷制御部312は、ステップS415で取得された印刷データ370を印刷部111に与えて、この印刷データ370に基づいて、印刷部111に印刷を行わせる(S416)。
【0275】
次に、印刷制御部312は、ステップS413で選択された印刷データ370が、他のプリンタ310に保存されているか否かを判断する。そして、印刷制御部312は、他のプリンタ310に保存されていると判断した場合(ステップS417:Yes)には、ステップS418の処理に進み、他のプリンタ310に保存されていないと判断した場合(ステップS417:No)には、ステップS426の処理に進む。
【0276】
ステップS418では、印刷制御部312は、ステップS413で選択され、他のプリンタ310に保存されていると判断された印刷データ370の転送を要求するための印刷データ転送要求メッセージを生成する。この印刷データ転送要求メッセージには、ステップS413で選択され、他のプリンタ310に保存されていると判断された印刷データ370を特定する情報を含める。例えば、印刷データ370を特定する情報は、印刷データ370の名称を含む。印刷データ370の名称は、印刷管理テーブル371の名称欄371hに格納されている。
そして、印刷制御部312は、通信部119を介して、生成された印刷データ転送要求メッセージを、ステップS413で選択された印刷データ370を保存しているプリンタ310に送信する処理を行う(S419)。
【0277】
次に、印刷制御部312は、通信部119を介して、ステップS419で送信した印刷データ転送要求メッセージへの応答である印刷データ転送メッセージを受け取ったか否かを確認する(S420)。そして、印刷制御部312は、印刷データ転送メッセージを受け取った場合(ステップS420:Yes)には、ステップS421の処理に進み、印刷データ転送メッセージを受け取っていない場合(ステップS420:No)には、ステップS424の処理に進む。
【0278】
ステップS421では、印刷制御部312は、印刷データ転送メッセージから印刷データ370を取り出す。さらに、印刷制御部312は、取り出された印刷データ370を印刷部111に渡し、印刷を行わせる。
【0279】
次に、印刷制御部312は、ステップS413で選択された全ての印刷データ370に基づいて、印刷部111に印刷を行わせたか否かを確認する(S422)。そして、印刷制御部312は、全ての印刷データ370につき印刷を行わせた場合(ステップS422:Yes)には、ステップS426の処理に進み、フローを終了し、全ての印刷データ370については印刷を行わせていない場合(ステップS422:No)、言い換えると、ステップS413で選択された印刷データ370の中で、印刷を行わせていない印刷データ370が存在する場合には、ステップS423の処理に進む。
【0280】
ステップS423では、印刷制御部312は、ステップS413で選択された印刷データ370のうち、他のプリンタ310に保存されているものが、全て受信されているか否かを確認する。そして、印刷制御部312は、このような印刷データ370が全て受信されている場合(ステップS423:Yes)には、ステップS421の処理に戻り、このような印刷データ370が全ては受信されていない場合(ステップS423:No)、言い換えると、ステップS413で選択され、他のプリンタ310に保存されている印刷データ370のうち、まだ受信されていないものが存在する場合には、ステップS424の処理に進む。
【0281】
ステップS424では、印刷制御部312は、ステップS419で印刷データ転送要求メッセージを送信してから所定の時間が経過したか否かを確認する。そして、印刷制御部312は、所定の時間が経過した場合(ステップS424:Yes)には、ステップS425の処理に進み、所定の時間が経過していない場合(ステップS424:No)には、ステップS420の処理に戻る。
【0282】
ステップS425では、印刷制御部312は、印刷が完了できなかったというエラーメッセージを表示するエラー画面を生成する。そして、印刷制御部312は、生成されたエラー画面をUIF部118に表示させる。このエラー画面には、印刷が完了していない印刷データ370を特定するメッセージが含まれていてもよい。
【0283】
ステップS426では、印刷制御部312は、印刷された印刷データ370に対応する情報を印刷管理テーブル371から削除するように、情報管理部313に指示を出す。このような指示を受けた情報管理部313は、図40に示されている同期化処理により印刷管理テーブル371の更新を行う。
【0284】
以上のように、実施の形態3におけるプリンタ310は、利用者による認証が行われると、ネットワーク130に接続されているプリンタ310に保存されている全ての印刷テータ370のうち、利用者の認証情報に一致する認証情報を有する印刷データ370を、利用者の選択により、利用者が認証を行ったプリンタ310で印刷をすることができる。
【0285】
図47に示されているフローチャートにおいて、ステップS413では、利用者から印刷する印刷データ370の選択の入力を受け付けているが、このような処理を省略してもよい。このような処理を省略した場合には、例えば、ネットワーク130に接続されているプリンタ310に保存されている全ての印刷テータ370のうち、利用者の認証情報に一致する認証情報を有する全ての印刷データ370を印刷させてもよい。また、プリンタ310は、図47に示されているステップS417〜S425の処理を省略することで、自装置に保存されている印刷データ370だけを印刷するように構成されていてもよい。
【0286】
また、図47に示されているフローチャートにおいては、ステップS416及びステップS421で、ステップS413で選択された印刷データ370を全て印刷しているが、このような例に限定されない。例えば、利用者により認証が行われたプリンタ310が、選択された印刷データ370により要求されるプリンタ310の能力を満たさない場合、例えば、プリンタ310がA4サイズの用紙までしか印刷できないのに対し、印刷データ370がA3サイズである場合等には、印刷制御部312は、警告画面を生成して、UIF部118にこの警告画面を表示させてもよい。警告画面には、プリンタ310の印刷能力に適合しない印刷データ370を特定するメッセージが含まれていることが望ましい。また、警告画面には、利用者に処理の継続又は中止を選択させる領域が設けられていることが望ましい。そして、印刷制御部312は、利用者が処理の継続を選択した場合には、印刷処理を継続し、利用者が処理の中止を選択した場合には、印刷処理を中止する。
【0287】
さらに、図47に示されているフローチャートにおいては、印刷制御部312は、ネットワーク130に接続されている他のプリンタ310に記憶され、利用者の認証情報に一致する認証情報を含む印刷データ370の全てを、ステップS412において、印刷データ選択画面380に表示させているが、このような例に限定されない。例えば、利用者により認証が行われたプリンタ310が、選択された印刷データ370により要求されたプリンタ310の能力を満たさない場合、例えば、プリンタ310がA4サイズの用紙までしか印刷できないのに対し、印刷データ370がA3サイズである場合等には、印刷制御部312は、プリンタ310の印刷能力に適合しない印刷データ370に関する情報を、印刷データ選択画面380に表示させないようにすることもできる。また、印刷管理部312は、このような印刷データ選択画面380の表示を行わずに、自装置の印刷能力に適合する印刷データ370だけを印刷部111に印刷させてもよい。
【0288】
図49は、プリンタ310が、印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。本フローは、印刷制御部312が、通信部119を介して、印刷データ取得要求メッセージを取得した場合に開始される。
【0289】
印刷制御部312は、取得された印刷データ取得要求メッセージで要求された印刷データ370を、記憶部316から取得する(S430)。この際、印刷制御部312は、記憶部316から取得された印刷データ370を消去する。
印刷制御部312は、取得された印刷データ370を含む印刷データ転送メッセージを生成する(S431)。
そして、印刷制御部312は、通信部119を介して、生成された印刷データ転送メッセージを、印刷データ取得要求メッセージの送信元のプリンタ310に返信する処理を行う(S432)。
【0290】
以上のように、実施の形態3におけるプリンタ310は、記憶部316に記憶されている印刷データ370を他のプリンタ310に送信することができる。
【0291】
なお、図49のフローにおいて、印刷制御部312は、ステップS430の処理の前に、印刷データ転送要求メッセージの送信元であるプリンタ310の情報が、プリンタリストテーブル372に格納されているか否かを確認し、格納されていない場合には、フローを終了してもよい。
また、印刷制御部312は、ステップS430において、取得された印刷データ370を記憶部316から消去しているが、このような例に限定されるものではない。例えば、印刷制御部312は、取得された印刷データ370をそのまま記憶部316に保持しておき、再印刷を受け付けてもよい。このような場合には、印刷制御部312は、例えば、UIF部118が利用者からの指示を受け付けたときに、記憶部316から印刷データ370を削除したり、また、印刷データ370が作成されてから所定の時間が経過すると、記憶部316からこの印刷データ370を削除したりしてもよい。
【0292】
図50は、プリンタ310が、他のプリンタ310に障害が発生したことを検知した場合の処理を示すフローチャートである。本フローは、検索部314又は情報管理部313が、ネットワーク130に接続された他のプリンタ310に障害が発生したことを検出した場合に開始される。例えば、検索部314は、通信部119を介して、予め定められたとき、例えば、定期的に、記憶部316に記憶されているプリンタリストテーブル372に情報が格納されているプリンタ310に対して、検索データを送信しているものとする。そして、検索部314は、検索データを送信してから所定期間内に検索応答データを返信してこないプリンタ310に障害が発生したものと判断する。また、情報管理部313は、印刷管理テーブル371の同期化を行う際に通信エラーが発生した場合に、その通信の相手先の他のプリンタ310に障害が発生したものと判断する。
【0293】
印刷制御部312は、記憶部316に記憶されている印刷管理テーブル371を取得する(S440)。
【0294】
印刷制御部312は、ステップS440で取得した印刷管理テーブル371から、エラーが発生したプリンタ310に保存されている印刷データ370に対応するレコードに格納されている情報を、個別管理情報として抽出する(S441)。
【0295】
ステップS441で抽出された個別管理情報を参照して、印刷制御部312は、エラーが発生したプリンタ310に保存されている印刷データ370を生成したPC350に、エラーメッセージを送信する(S442)。例えば、エラーメッセージには、エラーが発生したプリンタ310に保存されている印刷データ370を特定する情報が含まれているものとし、エラーメッセージの送信先は、印刷管理テーブル371のアドレス欄371gで特定されるものとする。なお、エラーメッセージを受信したPC350では、印刷データ生成部351は、受信したエラーメッセージに対応したエラーメッセージ画面を生成して、このエラーメッセージ画面をUIF部154に表示する処理を行う。エラーメッセージ画面には、エラーが発生したプリンタ310に保存されている印刷データ370を特定する情報が表示されるのが望ましい。図51は、エラーメッセージ画面381の一例を示す概略図である。エラーメッセージ画面381は、エラーが発生したプリンタ310に保存されている印刷データ370の文書名と、作成日時とが表示されている。
【0296】
印刷制御部312は、記憶部316に記憶されているプリンタリストテーブル372の更新を行う(S443)。ここでは、印刷制御部312は、障害の発生したプリンタ310の情報をプリンタリストテーブル372から削除する。
【0297】
印刷制御部312は、プリンタリストテーブル372の更新メッセージを生成し、記憶部316に記憶されているプリンタリストテーブル372に情報が格納されているプリンタ310に送信する処理を行う(S444)。ここで、更新メッセージは、障害の発生したプリンタ310の情報を削除する指示を含む。このような更新メッセージを受信したプリンタ310では、印刷制御部312が、記憶部316に記憶されているプリンタリストテーブル372から、障害の発生したプリンタ310の情報を削除する。
【0298】
そして、印刷制御部312は、情報管理部313に指示を出し、印刷管理情報の同期化処理を行わせる(S445)。ここでの処理は、印刷管理テーブル371から、ステップS441で情報を抽出したレコードを削除するものである。また、このような指示を受けた情報管理部313は、図40に示されているフローに従って、処理を実行する。
【0299】
以上のように、実施の形態3において、PC350で生成された印刷データ370を保存するプリンタ310に障害が発生した場合、記憶部316に記憶されている印刷管理テーブル371に基づいて、他のプリンタ310がPC350にエラーメッセージ画面を表示させることができる。
また、PC350に送信されるエラーメッセージに書誌データを含めることで、PC350の印刷データ生成部351は、その書誌データに基づき印刷データ370の再生成と、再送信を行ってもよい。このとき、正常に印刷データ370の再生成と再送信ができた場合は、エラーメッセージ画面381をUIF部154に表示せず、印刷データ370の再生成と再送信を行うことができなかった場合に、エラーメッセージ画面381をUIF部154に表示してもよい。
【0300】
実施の形態4.
(構成の説明)
図1に示すように、実施の形態4に係る画像形成システム400は、複数のプリンタ410A、410B、410C、・・・、410D(特に各々を区別する必要がないときは、プリンタ410という)を備える。プリンタ410は、ネットワーク130に接続されている。ネットワーク130には、PC450も接続されている。
【0301】
図52は、プリンタ410の構成を概略的に示すブロック図である。プリンタ410は、印刷部111と、印刷制御部412と、情報管理部313と、検索部314と、検索応答部315と、記憶部316と、認証処理部117と、UIF部118と、通信部119とを備える。実施の形態4におけるプリンタ410は、印刷制御部412において、実施の形態1と異なっている。
【0302】
実施の形態4における印刷制御部412は、実施の形態3における印刷制御部312と同様の処理を行うほか、通信部119を介して、PC450より個別管理情報を取得した場合には、記憶部316に記憶されている印刷管理テーブル371に、取得された個別管理情報を格納する処理を行う。なお、実施の形態4における印刷制御部412は、印刷管理テーブル371を参照して、印刷対象となっている印刷データ370が、PC450に保存されている場合には、PC450から印刷データ370の転送を受ける。
【0303】
図53は、PC450の構成を概略的に示すブロック図である。PC450は、印刷データ生成部451と、プリンタ検索部152と、記憶部453と、UIF部154と、通信部155とを備える。実施の形態4におけるPC450は、印刷データ生成部451及び記憶部453において、実施の形態3におけるPC350と異なっている。
【0304】
印刷データ生成部451は、実施の形態3における印刷データ生成部351と同様の処理を行うほか、印刷データ370を自装置内に保存する場合には、生成された印刷データ370に対応する個別管理情報を生成する。ここで、個別管理情報は、印刷データ370の書誌データに、印刷データの370の保存先である自装置のPC名と、印刷データ370に対して自装置内で一意となるように付与した名称と、自装置内において印刷データ370を記憶したパスとを追加したものである。
そして、印刷データ生成部451は、印刷データ370を自装置内に保存する場合には、印刷データ470を記憶部453に記憶させるとともに、通信部155を介して、作成された個別管理情報を、プリンタ検索部152で検索されたプリンタ410に送信する処理を行う。
なお、印刷データ生成部451は、例えば、UIF部154がPC450の利用者から印刷データ370を自装置内に保存する指示の入力を受け付けた場合、自装置の種類が特定の種類(例えば、ノートパソコン)である場合、印刷データ370を送信するプリンタ410の記憶残量が所定のしきい値よりも低い場合、ネットワーク130が混雑している場合(例えば、送信したパケットへの応答(ACK)の受信時間が所定のしきい値よりも遅い場合)等の予め定められた条件を満たす場合に、印刷データ370を自装置内に保存する。
【0305】
(動作の説明)
図54は、実施の形態4におけるPC450が印刷データ370及び個別管理情報を作成し、送信する処理を示すフローチャートである。図54のフローは、例えば、利用者が、UIF部154を介して、ドキュメントの印刷を指示した場合に開始される。
【0306】
印刷データ生成部451は、印刷指示の対象となったドキュメントから印刷データ370を生成する(S450)。
【0307】
次に、印刷データ生成部451は、印刷データ370に認証情報を追加するか否かを判断する(S451)。例えば、印刷データ生成部451は、PC450の利用者が、UIF部154を介して、すぐに印刷することを選択した場合には、認証情報を追加しないものと判断し、すぐには印刷しないことを選択した場合には、認証情報を追加するものと判断する。そして、印刷データ生成部451は、認証情報を追加すると判断した場合(S451:Yes)には、ステップS452の処理に進み、認証情報を追加しないと判断した場合(S451:No)には、ステップS453の処理に進む。
【0308】
ステップS452では、印刷データ生成部451は、ステップS450で生成された印刷データ370に認証情報を追加する。
【0309】
ステップS453では、印刷データ生成部451は、印刷データ370を自装置内に保存するか否かを判断する。この判断は、上述のように予め定められた条件を満たすか否かにより行われる。そして、印刷データ生成部451は、印刷データ370を自装置内に保存すると判断した場合には、ステップS454の処理に進み、印刷データ370を自装置内に保存しないと判断し場合には、ステップS457の処理に進む。
【0310】
ステップS454では、印刷データ生成部451は、印刷データ370に一意となる名称を付与して、付与された名称をファイル名として、印刷データ370を記憶部453に記憶する。
【0311】
そして、印刷データ生成部451は、印刷データ370の制御データ370aから抽出される書誌データに、保存先としての自装置のPC名と、印刷データ370を記憶部453に記憶する際に付与した名称と、印刷データ370を記憶部453に記憶したパスとを追加することで、個別管理情報を生成する(S455)。
印刷データ生成部451は、通信部155を介して、生成された個別管理情報をプリンタ410に送信する処理を行う(S456)。なお、送信先となるプリンタ410は、ネットワーク130に接続されたいずれかのプリンタ410である。ここで、送信先となるプリンタ410は、予めPC450に設定されていてもよい。例えば、PC450の利用者又は画像形成システム400の管理者は、UIF部154を介して、PC450に送信先となるプリンタ410を設定することができる。
【0312】
一方、ステップS453において、印刷データ370を自装置内に保存しないと判断した場合(S453:No)には、ステップS457の処理に進む。ステップS457では、印刷データ生成部451は、印刷データ370に書誌データを添付するか否かを判断する。例えば、印刷データ生成部451は、PC450の利用者が、UIF部154を介して、書誌データを添付することを選択したか否かで、ステップS457での判断を実行する。そして、印刷データ生成部451は、書誌データを添付すると判断した場合(S457:Yes)には、ステップS458の処理に進み、書誌データを添付しないと判断した場合(S457:No)には、ステップS459の処理に進む。
【0313】
ステップS458では、印刷データ生成部451は、書誌データを生成して、ステップS450で生成された印刷データ370に添付する。
【0314】
ステップS459では、印刷データ生成部451は、通信部155を介して、印刷データ370を、書誌データが添付されている場合には書誌データとともに、プリンタ410に送信する処理を行う。なお、送信先となるプリンタ410は、ネットワーク130に接続されたいずれかのプリンタ410である。ここで、送信先となるプリンタ410は、予めPC450に設定されていてもよい。例えば、PC450の利用者又は画像形成システム400の管理者は、UIF部154を介して、PC450に送信先となるプリンタ410を設定することができる。
【0315】
以上のように、実施の形態4におけるPC450は、印刷データ370を生成して、プリンタ410に送信することができ、また、印刷データ370を自装置内に保存して、個別管理情報をプリンタ410に送信することができる。
【0316】
図55は、実施の形態4におけるプリンタ410が印刷データ370又は個別管理情報を受信した場合の処理を示すフローチャートである。このフローは、プリンタ410の印刷制御部412が、通信部119を介して、PC450からの受信データを取得した場合に開始される。
【0317】
印刷制御部412は、通信部119から受け取った受信データが印刷データ370であるか否かを確認する(S460)。そして、印刷制御部412は、受信データが印刷データ370である場合(S460:Yes)には、ステップS462の処理に進み、受信データが印刷データ370ではない場合(S460:No)、言い換えると、受信データが個別管理情報である場合には、ステップS461の処理に進む。
【0318】
ステップS461では、印刷制御部412は、記憶部316に記憶されている印刷管理テーブル371に新たなレコードを追加して、追加されたレコードに、受信された個別管理情報を格納する。
【0319】
一方、ステップS462では、印刷制御部412は、通信部119から受け取った印刷データ370に認証情報が含まれているか否かを確認する(S462)。そして、印刷制御部412は、認証情報が含まれている場合(S462:Yes)には、ステップS464の処理に進み、認証情報が含まれていない場合(S462:No)には、ステップS463の処理に進む。
【0320】
ステップS463では、印刷制御部412は、受け取った印刷データ370を印刷部111に送り、受け取った印刷データ370に基づいて、印刷部111に印刷を行わせる。
【0321】
一方、ステップS464では、印刷制御部412は、印刷データ370に書誌データが添付されているか否かを判断する。そして、印刷制御部412は、書誌データが添付されている場合(S464:Yes)には、ステップS466の処理に進み、書誌データが添付されていない場合(S464:No)には、ステップS465の処理に進む。
【0322】
ステップS465では、印刷制御部412は、印刷データ370に含まれている制御データ370aの拡張変数の値から、書誌データを生成する(S465)。この書誌データは、少なくとも印刷データ370を特定することができるものとする。
【0323】
そして、ステップS466では、印刷制御部412は、書誌データに、印刷データ370の保存先を特定する情報と、印刷データ370の名称とを追加することで個別管理情報を生成する(S466)。
【0324】
そして、印刷制御部412は、受け取った印刷データ370を記憶部316に記憶させるとともに、記憶部316に記憶されている印刷管理テーブル371に新たなレコードを追加し、このレコードにステップS466で生成された個別管理情報を格納する(S467)。
【0325】
以上のように、実施の形態4におけるプリンタ410は、PC450から個別管理情報だけを受信した場合には、この個別管理情報を印刷管理テーブル371に格納する。
【0326】
図56は、PC450が、プリンタ410から印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。本フローは、印刷データ生成部451が、通信部155を介して、印刷データ取得要求メッセージを取得した場合に開始される。
【0327】
印刷データ生成部451は、取得された印刷データ取得要求メッセージで要求された印刷データ370を、記憶部453から取得する(S470)。この際、印刷制御部412は、記憶部453から取得された印刷データ370を消去する。
印刷データ生成部451は、取得された印刷データ370を含む印刷データ転送メッセージを生成する(S471)。
そして、印刷データ生成部451は、通信部155を介して、生成された印刷データ転送メッセージを、印刷データ取得要求メッセージの送信元のプリンタ410に返信する処理を行う(S472)。
【0328】
以上のように、実施の形態4におけるPC450は、記憶部453に記憶されている印刷データ370をプリンタ410に送信することができる。
【0329】
なお、図56に示されたフローでは、印刷データ生成部451は、ステップS470で印刷データ370を取得した際に、取得された印刷データ370を記憶部453から削除しているが、このような例に限定されるものではない。印刷データ生成部451は、印刷データ370をそのまま保存し、再印刷を許可しても構わない。この場合、印刷データ生成部451は、UIF部154が利用者の指示を受け付けた際に、記憶部453から印刷データ370を削除してもよく、また、印刷データ370が作成されてから所定の時間が経過した場合に、印刷データ生成部451は、自動的にその印刷データ370を削除してもよい。
【0330】
実施の形態4では、利用者の認証を受けたプリンタ410は、印刷管理テーブル371に基づいて、印刷データ370がPC450に保存されていても、他のプリンタ410から印刷データ370を取得する場合と同様に、PC450から印刷データ370を取得することができる。このため、利用者は、印刷データ370がどこに保存されているかを意識せずに、印刷物を取得することができるため、非常に便利である。
【0331】
また、実施の形態4では、個別管理情報がPC450からプリンタ410に送信される場合には、印刷データ370は、PC450から実際に印刷が行われるプリンタ410にだけしか送信されない。これに対して、実施の形態1〜3では、印刷データ370がPC150、250、350からプリンタ110、210、310に、さらにプリンタ110、210、310から別のプリンタ110、210、310に転送されることがある。このため、実施の形態4では、ネットワーク130に流れるデータ量を軽減させることができる。
【0332】
また、実施の形態1〜3においては、印刷データ370が必ずプリンタ110、210、310に保存されるため、プリンタ110、210、310には、比較的大きな容量の記憶装置(例えば、HDD)を備える必要がある。一方、実施の形態4においては、PC450が印刷データ370を保存し、プリンタ410は印刷データ370を保存しないようにすることもできる。このような場合には、実施の形態4におけるプリンタ410は、比較的小さな容量の記憶装置を備えればよい。
【0333】
以上に記載した実施の形態4では、印刷データ生成部451は、予め定められた条件を満たす場合に、印刷データ370を自装置内に保存するようにしているが、このような例に限定されるものではない。例えば、PC450は、常に、印刷データ370を自装置内に保存するように構成することもできる。
【0334】
以上に記載された実施の形態1〜4においては、画像処理装置の例として、プリンタ110、210、310、410を挙げたが、このような例に限定されるものではない。例えば、本発明に係る画像形成装置は、コピー装置、ファクシミリ装置、MFP(Multi Function Peripheral)等、印刷データに基づいて画像を印刷することのできる装置であれば、どのような装置であってもよい。また、印刷データを生成する情報処理装置と、印刷データに基づいて画像を印刷する画像形成装置とが一体となった装置であってもよい。
さらに、印刷データを生成する情報処理装置の例として、PC150、250、350、450を挙げたが、このような例に限定されるものではない。例えば、情報処理装置は、携帯端末、PDA(Personal Data Assistance)又は撮像装置等であってもよい。
【0335】
また、以上に記載した実施の形態においては、プリンタ110、210、310、410により画像形成システム100、200、300、400が構成されているが、PC150、250、350、450が画像形成システム100、200、300、400に含まれていてもよい。
【符号の説明】
【0336】
100,200,300,400:画像形成システム、 110,210,310,410:プリンタ、 111:印刷部、 112,312,412:印刷制御部、 113,313:情報管理部、 114,314:検索部、 115,315:検索応答部、 116:記憶部、 117:認証処理部、 118:ユーザインタフェース部、 119:通信部、 220:動作確認部、 221:動作確認応答部、 150,250,350,450:PC、 151,251,351,451:印刷データ生成部、 152:プリンタ検索部、 153,453:記憶部、 154:ユーザインタフェース部、 155:通信部、 256:表示制御部。

【特許請求の範囲】
【請求項1】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備えること
を特徴とする画像形成装置。
【請求項2】
前記情報管理部は、前記同期化処理として、
前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに従って、前記管理情報を更新する処理と、を行うこと
を特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記情報管理部は、前記同期化処理として、
更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理と、を行うこと
を特徴とする請求項1に記載の画像形成装置。
【請求項4】
前記他の画像形成装置を検索するための検索データを送信する処理を行う検索部と、
前記他の画像形成装置が送信した検索データを受信する処理、及び、
前記受信された検索データに応答するために、前記管理情報に含まれている情報を格納する検索応答データを生成し、当該検索応答データを前記検索データの送信元に返信する処理、を行う検索応答部と、をさらに備え、
前記情報管理部は、前記検索応答データに格納されている情報で、前記管理情報に含まれている情報を置き換えること
を特徴とする請求項1から3の何れか一項に記載の画像形成装置。
【請求項5】
前記管理情報は、前記画像情報を生成した情報処理装置を示す情報をさらに含み、
前記他の画像形成装置が有効であるか否かを検出する処理と、
有効ではない他の画像形成装置が検出された場合に、前記管理情報に基づいて、当該有効ではない画像形成装置に記憶されている画像情報を生成した情報処理装置を特定し、当該特定された情報処理装置に、当該有効ではない画像形成装置に記憶されている画像情報を再処理する必要があることを通知する処理と、
を行う動作確認部をさらに備えること
を特徴とする請求項1から4の何れか一項に記載の画像形成装置。
【請求項6】
前記情報管理部は、前記同期化処理として、
前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理と、
前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理と、
前記他の画像形成装置から前記ロック要求を受信する処理と、
前記ロック要求の送信元が送信した更新データを受信する処理と、
前記受信された更新データに従って、前記管理情報を更新する処理と、
前記他の画像形成装置から前記ロック解除要求を受信する処理と、を行い、
前記情報管理部は、前記ロック要求を受信してから、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする請求項1に記載の画像形成装置。
【請求項7】
前記情報管理部は、前記同期化処理として、
前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理と、
更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理と、
前記他の画像形成装置から前記ロック要求を受信する処理と、
前記ロック要求の送信元が送信した更新データを受信する処理と、
前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理と、
前記他の画像形成装置から前記ロック解除要求を受信する処理と、を行い、
前記情報管理部は、前記ロック要求を受信してから、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする請求項1に記載の画像形成装置。
【請求項8】
前記複数の画像形成装置には、優先順位が設定されており、
前記情報管理部は、前記ロック要求を受信する処理を行った際に、前記ロック要求の送信元に、前記ロック要求に対する応答を送信する処理と、前記他の画像形成装置から前記ロック要求に対する応答を受信する処理と、をさらに行い。
前記情報管理部は、
前記他の画像形成装置に、前記ロック要求を送信する処理を行った後、かつ、前記ロック要求に対する応答を受信する処理を行う前に、前記他の画像形成装置から前記ロック要求を受信する処理を行った場合には、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも高いときには、前記更新データを送信する処理を行い、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも低いときには、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする請求項6又は7に記載の画像形成装置。
【請求項9】
前記管理情報は、前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を記憶する情報処理装置を示す情報を含み、
前記画像形成制御部は、前記管理情報に含まれている情報で示される画像形成装置又は情報処理装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させること
を特徴とする請求項6から8の何れか一項に記載の画像形成装置。
【請求項10】
前記画像形成制御部は、
前記画像情報を記憶する情報処理装置から、当該情報処理装置を示す個別管理情報を受信する処理と、
前記受信された個別管理情報を前記管理情報に格納する処理と、を行うこと
を特徴とする請求項9に記載の画像形成装置。
【請求項11】
複数の画像形成装置が接続されたネットワークに接続された情報処理装置であって、
画像情報を生成する画像情報生成部と、
前記生成された画像情報を記憶する記憶部と、を備え、
前記画像情報生成部は、予め定められた条件を満たす場合に、前記生成された画像情報を、前記複数の画像形成装置の何れかに送信する処理と、前記生成された画像情報を前記記憶部に記憶させ、前記生成された画像情報が自装置に記憶されていることを示す個別管理情報を、前記複数の画像形成装置の何れかに送信する処理と、を切り替えること
を特徴とする情報処理装置。
【請求項12】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置を備える画像形成システムであって、
前記複数の画像形成装置における各々の画像形成装置は、
ネットワークに接続された複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備えること
を特徴とする画像形成システム。
【請求項13】
前記情報管理部は、前記同期化処理として、
前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに従って、前記管理情報を更新する処理と、を行うこと
を特徴とする請求項12に記載の画像形成システム。
【請求項14】
前記情報管理部は、前記同期化処理として、
更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理と、を行うこと
を特徴とする請求項12に記載の画像形成システム。
【請求項15】
前記各々の画像形成装置は、
前記他の画像形成装置を検索するための検索データを送信する処理を行う検索部と、
前記他の画像形成装置が送信した検索データを受信する処理、及び、
前記受信された検索データに応答するために、前記管理情報に含まれている情報を格納する検索応答データを生成し、当該検索応答データを前記検索データの送信元に返信する処理、を行う検索応答部と、をさらに備え、
前記情報管理部は、前記検索応答データに格納されている情報で、前記管理情報に含まれている情報を置き換えること
を特徴とする請求項12から14の何れか一項に記載の画像形成システム。
【請求項16】
前記管理情報は、前記画像情報を生成した情報処理装置を示す情報をさらに含み、
前記各々の画像形成装置は、
前記他の画像形成装置が有効であるか否かを検出する処理と、
有効ではない他の画像形成装置が検出された場合に、前記管理情報に基づいて、当該有効ではない画像形成装置に記憶されている画像情報を生成した情報処理装置を特定し、当該特定された情報処理装置に、当該有効ではない画像形成装置に記憶されている画像情報を再処理する必要があることを通知する処理と、
を行う動作確認部をさらに備えること
を特徴とする請求項12から15の何れか一項に記載の画像形成システム。
【請求項17】
前記情報管理部は、前記同期化処理として、
前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理と、
前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理と、
前記他の画像形成装置から前記ロック要求を受信する処理と、
前記ロック要求の送信元が送信した更新データを受信する処理と、
前記受信された更新データに従って、前記管理情報を更新する処理と、
前記他の画像形成装置から前記ロック解除要求を受信する処理と、を行い、
前記情報管理部は、前記ロック要求を受信してから、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする請求項12に記載の画像形成システム。
【請求項18】
前記情報管理部は、前記同期化処理として、
前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理と、
更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理と、
前記他の画像形成装置から前記ロック要求を受信する処理と、
前記ロック要求の送信元が送信した更新データを受信する処理と、
前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理と、
前記他の画像形成装置から前記ロック解除要求を受信する処理と、を行い、
前記情報管理部は、前記ロック要求を受信してから、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする請求項12に記載の画像形成システム。
【請求項19】
前記複数の画像形成装置には、優先順位が設定されており、
前記情報管理部は、前記ロック要求を受信する処理を行った際に、前記ロック要求の送信元に、前記ロック要求に対する応答を送信する処理と、前記他の画像形成装置から前記ロック要求に対する応答を受信する処理と、をさらに行い。
前記情報管理部は、
前記他の画像形成装置に、前記ロック要求を送信する処理を行った後、かつ、前記ロック要求に対する応答を受信する処理を行う前に、前記他の画像形成装置から前記ロック要求を受信する処理を行った場合には、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも高いときには、前記更新データを送信する処理を行い、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも低いときには、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする請求項17又は18に記載の画像形成システム。
【請求項20】
前記管理情報は、前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を記憶する情報処理装置を示す情報を含み、
前記画像形成制御部は、前記管理情報に含まれている情報で示される画像形成装置又は情報処理装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させること
を特徴とする請求項17から19の何れか一項に記載の画像形成システム。
【請求項21】
前記画像形成制御部は、
前記画像情報を記憶する情報処理装置から、当該情報処理装置を示す個別管理情報を受信する処理と、
前記受信された個別管理情報を前記管理情報に格納する処理と、を行うこと
を特徴とする請求項20に記載の画像形成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate

【図48】
image rotate

【図49】
image rotate

【図50】
image rotate

【図51】
image rotate

【図52】
image rotate

【図53】
image rotate

【図54】
image rotate

【図55】
image rotate

【図56】
image rotate


【公開番号】特開2013−77183(P2013−77183A)
【公開日】平成25年4月25日(2013.4.25)
【国際特許分類】
【出願番号】特願2011−216816(P2011−216816)
【出願日】平成23年9月30日(2011.9.30)
【出願人】(591044164)株式会社沖データ (2,444)
【Fターム(参考)】