(57)【特許請求の範囲】
【請求項１】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を生成した情報処理装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、
前記他の画像形成装置が有効であるか否かを検出する処理、及び、有効ではない他の画像形成装置が検出された場合に、前記管理情報に基づいて、当該有効ではない画像形成装置に記憶されている画像情報を生成した情報処理装置を特定し、当該特定された情報処理装置に、当該有効ではない画像形成装置に記憶されている画像情報を再処理する必要があることを通知する処理を行う動作確認部と、を備えること
を特徴とする画像形成装置。
【請求項２】
前記情報管理部は、前記同期化処理として、
前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに従って、前記管理情報を更新する処理と、を行うこと
を特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記情報管理部は、前記同期化処理として、
更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理と、を行うこと
を特徴とする請求項１に記載の画像形成装置。
【請求項４】
前記他の画像形成装置を検索するための検索データを送信する処理を行う検索部と、
前記他の画像形成装置が送信した検索データを受信する処理、及び、
前記受信された検索データに応答するために、前記管理情報に含まれている情報を格納する検索応答データを生成し、当該検索応答データを前記検索データの送信元に返信する処理、を行う検索応答部と、をさらに備え、
前記情報管理部は、前記検索応答データに格納されている情報で、前記管理情報に含まれている情報を置き換えること
を特徴とする請求項１から３の何れか一項に記載の画像形成装置。
【請求項５】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理、前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理、前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理、前記他の画像形成装置から前記ロック要求を受信する処理、前記ロック要求の送信元が送信した更新データを受信する処理、前記受信された更新データに従って、前記管理情報を更新する処理、及び、前記他の画像形成装置から前記ロック解除要求を受信する処理を含む、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備え、
前記複数の画像形成装置には、優先順位が設定されており、
前記情報管理部は、前記ロック要求を受信する処理を行った際に、前記ロック要求の送信元に、前記ロック要求に対する応答を送信する処理と、前記他の画像形成装置から前記ロック要求に対する応答を受信する処理と、をさらに行い、
前記情報管理部は、
前記他の画像形成装置に、前記ロック要求を送信する処理を行った後、かつ、前記ロック要求に対する応答を受信する処理を行う前に、前記他の画像形成装置から前記ロック要求を受信する処理を行った場合には、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも高いときには、前記更新データを送信する処理を行い、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも低いときには、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする画像形成装置。
【請求項６】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理、更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理、前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理、前記他の画像形成装置から前記ロック要求を受信する処理、前記ロック要求の送信元が送信した更新データを受信する処理、前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理、及び、前記他の画像形成装置から前記ロック解除要求を受信する処理を含む、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備え、
前記複数の画像形成装置には、優先順位が設定されており、
前記情報管理部は、前記ロック要求を受信する処理を行った際に、前記ロック要求の送信元に、前記ロック要求に対する応答を送信する処理と、前記他の画像形成装置から前記ロック要求に対する応答を受信する処理と、をさらに行い、
前記情報管理部は、
前記他の画像形成装置に、前記ロック要求を送信する処理を行った後、かつ、前記ロック要求に対する応答を受信する処理を行う前に、前記他の画像形成装置から前記ロック要求を受信する処理を行った場合には、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも高いときには、前記更新データを送信する処理を行い、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも低いときには、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする画像形成装置。
【請求項７】
前記管理情報は、前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を記憶する情報処理装置を示す情報を含み、
前記画像形成制御部は、前記管理情報に含まれている情報で示される画像形成装置又は情報処理装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させること
を特徴とする請求項５又は６に記載の画像形成装置。
【請求項８】
前記画像形成制御部は、
前記画像情報を記憶する情報処理装置から、当該情報処理装置を示す個別管理情報を受信する処理と、
前記受信された個別管理情報を前記管理情報に格納する処理と、を行うこと
を特徴とする請求項７に記載の画像形成装置。
【請求項９】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置を備える画像形成システムであって、
前記複数の画像形成装置における各々の画像形成装置は、
ネットワークに接続された複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を生成した情報処理装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、
前記他の画像形成装置が有効であるか否かを検出する処理、及び、有効ではない他の画像形成装置が検出された場合に、前記管理情報に基づいて、当該有効ではない画像形成装置に記憶されている画像情報を生成した情報処理装置を特定し、当該特定された情報処理装置に、当該有効ではない画像形成装置に記憶されている画像情報を再処理する必要があることを通知する処理を行う動作確認部と、を備えること
を特徴とする画像形成システム。
【請求項１０】
前記情報管理部は、前記同期化処理として、
前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに従って、前記管理情報を更新する処理と、を行うこと
を特徴とする請求項９に記載の画像形成システム。
【請求項１１】
前記情報管理部は、前記同期化処理として、
更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理と、
前記他の画像形成装置が送信した更新データを受信する処理と、
前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理と、を行うこと
を特徴とする請求項９に記載の画像形成システム。
【請求項１２】
前記各々の画像形成装置は、
前記他の画像形成装置を検索するための検索データを送信する処理を行う検索部と、
前記他の画像形成装置が送信した検索データを受信する処理、及び、
前記受信された検索データに応答するために、前記管理情報に含まれている情報を格納する検索応答データを生成し、当該検索応答データを前記検索データの送信元に返信する処理、を行う検索応答部と、をさらに備え、
前記情報管理部は、前記検索応答データに格納されている情報で、前記管理情報に含まれている情報を置き換えること
を特徴とする請求項９から１１の何れか一項に記載の画像形成システム。
【請求項１３】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置を備える画像形成システムであって、
前記複数の画像形成装置における各々の画像形成装置は、
ネットワークに接続された複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理、前記管理情報を更新する内容を示す更新データを、前記他の画像形成装置に送信する処理、前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理、前記他の画像形成装置から前記ロック要求を受信する処理、前記ロック要求の送信元が送信した更新データを受信する処理、前記受信された更新データに従って、前記管理情報を更新する処理、及び、前記他の画像形成装置から前記ロック解除要求を受信する処理を含む、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備え、
前記複数の画像形成装置には、優先順位が設定されており、
前記情報管理部は、前記ロック要求を受信する処理を行った際に、前記ロック要求の送信元に、前記ロック要求に対する応答を送信する処理と、前記他の画像形成装置から前記ロック要求に対する応答を受信する処理と、をさらに行い、
前記情報管理部は、
前記他の画像形成装置に、前記ロック要求を送信する処理を行った後、かつ、前記ロック要求に対する応答を受信する処理を行う前に、前記他の画像形成装置から前記ロック要求を受信する処理を行った場合には、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも高いときには、前記更新データを送信する処理を行い、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも低いときには、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする画像形成システム。
【請求項１４】
ネットワークに接続され、画像情報を記憶する複数の画像形成装置を備える画像形成システムであって、
前記複数の画像形成装置における各々の画像形成装置は、
ネットワークに接続された複数の画像形成装置における各々の画像形成装置であって、
前記画像情報に基づいて、画像の形成を行う画像形成部と、
前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報を含む管理情報を記憶する記憶部と、
前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記他の画像形成装置に、前記管理情報の変更の停止を要求するロック要求を送信する処理、更新後の前記管理情報に含まれている情報を含む更新データを、前記他の画像形成装置に送信する処理、前記他の画像形成装置に、前記停止の解除を要求するロック解除要求を送信する処理、前記他の画像形成装置から前記ロック要求を受信する処理、前記ロック要求の送信元が送信した更新データを受信する処理、前記受信された更新データに含まれている情報で、前記管理情報に含まれている情報を置き換える処理、及び、前記他の画像形成装置から前記ロック解除要求を受信する処理を含む、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、
前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、を備え、
前記複数の画像形成装置には、優先順位が設定されており、
前記情報管理部は、前記ロック要求を受信する処理を行った際に、前記ロック要求の送信元に、前記ロック要求に対する応答を送信する処理と、前記他の画像形成装置から前記ロック要求に対する応答を受信する処理と、をさらに行い、
前記情報管理部は、
前記他の画像形成装置に、前記ロック要求を送信する処理を行った後、かつ、前記ロック要求に対する応答を受信する処理を行う前に、前記他の画像形成装置から前記ロック要求を受信する処理を行った場合には、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも高いときには、前記更新データを送信する処理を行い、
自装置の優先順位が、前記ロック要求を送信してきた他の画像形成装置の優先順位よりも低いときには、前記ロック解除要求を受信するまで、前記ロック要求の送信元から送信された更新データに従った処理以外の処理を、前記管理情報に行わないこと
を特徴とする画像形成システム。
【請求項１５】
前記管理情報は、前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を記憶する情報処理装置を示す情報を含み、
前記画像形成制御部は、前記管理情報に含まれている情報で示される画像形成装置又は情報処理装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させること
を特徴とする請求項１３又は１４に記載の画像形成システム。
【請求項１６】
前記画像形成制御部は、
前記画像情報を記憶する情報処理装置から、当該情報処理装置を示す個別管理情報を受信する処理と、
前記受信された個別管理情報を前記管理情報に格納する処理と、を行うこと
を特徴とする請求項１５に記載の画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、情報処理装置及び画像形成システムに関する。
【背景技術】
【０００２】
ネットワークに接続された複数のプリンタの何れかに保存されている印刷データを、利用者が選択した何れかのプリンタで印刷を実行するシステムがある。従来、この種のシステムでは、ネットワークに接続された複数のプリンタの何れかのサーバ機能が有効にされている。そして、印刷データを受信したプリンタは、その印刷データを特定する情報を、サーバ機能が有効にされているプリンタに送信する。何れかのプリンタで認証が行われると、サーバ機能が有効にされているプリンタは、認証された情報に基づいて、印刷データが保存されているプリンタから、認証が行われたプリンタに印刷データを転送させていた（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１１８７８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、サーバ機能が有効となったプリンタに障害が発生した場合、そのプリンタに保存されていた印刷データを管理するための情報が失われてしまう。このため、例えば、利用者が印刷を行うためには、印刷データ自体はプリンタに保存されているにも拘わらず、再び印刷データを生成し直さなければならず、不便であった。
【０００５】
そこで、本発明は、特定のプリンタに障害が発生した場合でも、印刷データを管理するための情報が失われないようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る画像形成装置は、ネットワークに接続され、画像情報を記憶する複数の画像形成装置における各々の画像形成装置であって、前記画像情報に基づいて、画像の形成を行う画像形成部と、前記複数の画像形成装置のうち、前記画像情報を記憶する画像形成装置を示す情報、及び、前記画像情報を生成した情報処理装置を示す情報を含む管理情報を記憶する記憶部と、前記複数の画像形成装置に含まれる他の画像形成装置との間で、前記管理情報の内容を同期化する同期化処理を行う情報管理部と、前記管理情報に含まれている情報で示される画像形成装置に記憶されている画像情報を取得して、当該取得された画像情報に基づいて、前記画像形成部に画像を形成させる画像形成制御部と、前記他の画像形成装置が有効であるか否かを検出する処理、及び、有効ではない他の画像形成装置が検出された場合に、前記管理情報に基づいて、当該有効ではない画像形成装置に記憶されている画像情報を生成した情報処理装置を特定し、当該特定された情報処理装置に、当該有効ではない画像形成装置に記憶されている画像情報を再処理する必要があることを通知する処理を行う動作確認部と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明の一態様によれば、特定のプリンタに障害が発生した場合でも、印刷データを管理するための情報は失われない。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１〜４に係る画像形成システムの構成を示す概略図である。
【図２】実施の形態１におけるプリンタの構成を概略的に示すブロック図である。
【図３】実施の形態１における印刷データを示す概略図である。
【図４】実施の形態１における印刷管理テーブルを示す概略図である。
【図５】実施の形態１におけるプリンタリストテーブルの概略図である。
【図６】実施の形態１におけるＰＣの構成を概略的に示すブロック図である。
【図７】実施の形態１におけるプリンタが他のプリンタを検索する際の処理を示すフローチャートである。
【図８】実施の形態１における検索データの一例を示す概略図である。
【図９】実施の形態１において、他のプリンタ又はＰＣからの検索データに応答する際の処理を示すフローチャートである。
【図１０】実施の形態１における検索応答データを示す概略図である。
【図１１】実施の形態１において、プリンタが印刷データを受信した場合の処理を示すフローチャートである。
【図１２】実施の形態１における印刷管理情報の同期化処理を示すフローチャートである。
【図１３】（Ａ）及び（Ｂ）は、実施の形態１における更新データを示す概略図である。
【図１４】実施の形態１において、更新データを受信したプリンタでの処理を示すフローチャートである。
【図１５】実施の形態１において、プリンタが認証印刷データに基づいて印刷を行う際の処理を示すフローチャートである。
【図１６】実施の形態１における印刷データ選択画面の一例を示す概略図である。
【図１７】実施の形態１において、プリンタがネットワーク上に存在する他のプリンタを検索し、さらに印刷データを送信する際の処理を示すフローチャートである。
【図１８】実施の形態１におけるプリンタの起動時の処理を示すシーケンス図である。
【図１９】実施の形態１におけるＰＣによる印刷時の処理を示すシーケンス図である。
【図２０】（Ａ）及び（Ｂ）は、実施の形態１における更新前の印刷管理テーブルと、更新後の印刷管理テーブルとを示す概略図である。
【図２１】実施の形態１において、ＰＣの利用者より認証の指示を受けた際の処理を示すシーケンス図である。
【図２２】実施の形態２におけるプリンタの構成を概略的に示すブロック図である。
【図２３】実施の形態２における印刷データ削除通知データを示す概略図である。
【図２４】実施の形態２におけるプリンタ削除通知データを示す概略図である。
【図２５】実施の形態２におけるＰＣの構成を概略的に示すブロック図である。
【図２６】実施の形態２における印刷データを示す概略図である。
【図２７】実施の形態２における再印刷画面を示す概略図である。
【図２８】実施の形態２におけるプリンタの動作確認処理を示すフローチャートである。
【図２９】実施の形態２において、プリンタがプリンタ削除通知データを受信した場合の処理を示すフローチャートである。
【図３０】実施の形態２において、ＰＣが印刷削除通知データを受信した場合の処理を示すフローチャートである。
【図３１】実施の形態２における画像形成システムにおける動作を示すシーケンス図である。
【図３２】実施の形態２における印刷管理テーブルの一例を示す概略図である。
【図３３】実施の形態３におけるプリンタの構成を概略的に示すブロック図である。
【図３４】実施の形態３における印刷データを示す概略図である。
【図３５】実施の形態３における印刷管理テーブルを示す概略図である。
【図３６】実施の形態３におけるプリンタリストテーブルの概略図である。
【図３７】実施の形態３におけるＰＣの構成を概略的に示すブロック図である。
【図３８】実施の形態３において、ＰＣで印刷データを作成し、送信する処理を示すフローチャートである。
【図３９】実施の形態３において、プリンタで印刷データを受信した場合の処理を示すフローチャートである。
【図４０】実施の形態３における情報管理部が行う同期化処理を示すフローチャートである。
【図４１】実施の形態３におけるプリンタがロック要求メッセージを受信した際の処理を示すフローチャートである。
【図４２】実施の形態３におけるプリンタがロック解除メッセージを受信した場合の処理を表すフローチャートである。
【図４３】実施の形態３におけるプリンタが更新データを受信した際の処理を示すフローチャートである。
【図４４】実施の形態３において、印刷管理テーブルの同期化を行う際の処理を示すシーケンス図である。
【図４５】実施の形態３において、複数のプリンタで、印刷管理テーブルの更新理由が同時に発生した場合の処理を示すシーケンス図（その１）である。
【図４６】実施の形態３において、複数のプリンタで、印刷管理テーブルの更新理由が同時に発生した場合の処理を示すシーケンス図（その２）である。
【図４７】実施の形態３において、プリンタが認証情報の付加された印刷データを印刷する場合の処理を示すフローチャートである。
【図４８】実施の形態３における印刷データ選択画面の一例を示す概略図である。
【図４９】実施の形態３において、印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。
【図５０】実施の形態３において、プリンタが他のプリンタに障害が発生したことを検知した場合の処理を示すフローチャートである。
【図５１】実施の形態３におけるエラーメッセージ画面の一例を示す概略図である。
【図５２】実施の形態４におけるプリンタの構成を概略的に示すブロック図である。
【図５３】実施の形態４におけるＰＣの構成を概略的に示すブロック図である。
【図５４】実施の形態４において、印刷データ及び個別管理情報を作成し、送信する処理を示すフローチャートである。
【図５５】図実施の形態４において、印刷データ又は個別管理情報を受信した場合の処理を示すフローチャートである。
【図５６】実施の形態４において、プリンタから印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
実施の形態１．
（構成の説明）
図１は、画像形成システム１００の構成を示す概略図である。画像形成システム１００は、画像形成装置としての複数のプリンタ１１０Ａ、１１０Ｂ、１１０Ｃ、・・・、１１０Ｄ（特に各々を区別する必要がないときは、プリンタ１１０という）を備える。プリンタ１１０は、ネットワーク１３０に接続されている。ネットワーク１３０には、情報処理装置としてのパーソナルコンピュータ（以下、ＰＣという）１５０も接続されている。なお、図１の括弧内の符号は、実施の形態２〜４における構成を示す。
【００１０】
図２は、プリンタ１１０の構成を概略的に示すブロック図である。プリンタ１１０は、画像形成部としての印刷部１１１と、画像形成制御部としての印刷制御部１１２と、情報管理部１１３と、検索部１１４と、検索応答部１１５と、記憶部１１６と、認証処理部１１７と、ユーザインタフェース部（以下、ＵＩＦ部という）１１８と、通信部１１９とを備える。
【００１１】
印刷部１１１は、ＰＣ１５０から送られてきた、画像情報としての印刷データに含まれている印刷画像データのラスタライズ化を行い、ラスタライズ化された画像を印刷する。例えば、プリンタ１１０が電子写真方式を採用している場合、印刷部１１１は、感光ドラム上に静電潜像を形成し、その静電潜像にトナーを付着させてトナー像を形成し、このトナー像を記録紙に転写して、定着させることで印刷を行う。
【００１２】
ここで、実施の形態１における印刷データについて説明する。図３は、印刷データ１７０を示す概略図である。印刷データ１７０は、テキストデータより構成される制御データ１７０ａと、バイナリデータより構成される印刷画像データとしての実体データ１７０ｂとにより構成される。図３に示されている制御データ１７０ａにおいて、左端の数字と、その隣のコロンの記号とは、説明のための行番号を示すために追加されたものであり、これらは、制御データ１７０ａには含まれない。制御データ１７０ａは、ＰＪＬ（Ｐｒｉｎｔｅｒ  Ｊｏｂ  Ｌａｎｇｕａｇｅ：プリンタジョブ言語）の集合体であり、プレーンテキストで構成されている。制御データ１７０ａの各行は、行頭の「＠ＰＪＬ」の後に、変数名を記述し、さらに「＝」により変数の内容を記述する。２行目から１１行目までの「ＡＵＸＪＯＢＩＮＦＯ  ＤＡＴＡ」と記述された変数は、拡張変数である。拡張変数の内容は、さらに変数名とその内容を含んでいる。図３では、制御データ１７０ａには、以下のような内容が記述されている。
【００１３】
１行目は、この印刷データ１７０を識別するための名称を表す「ＪＯＢ  Ｎａｍｅ」である。
２行目は、この印刷データ１７０を作成したＰＣ１５０を識別するための名称を表す「ＣｏｍｐｕｔｅｒＮａｍｅ」の拡張変数である。
３行目は、この印刷データ１７０を作成したＰＣ１５０の使用者名を表す「ＵｓｅｒＮａｍｅ」の拡張変数である。
４行目は、この印刷データ１７０を作成したＰＣ１５０の使用者を識別するためのユーザＩＤを表す「ＵｓｅｒＩＤ」の拡張変数である。
５行目は、この印刷データ１７０の作成日時を表す「Ｄａｔｅ」の拡張変数である。
６行目は、この印刷データ１７０の有効期限を表す「Ｌｉｆｅ」の拡張変数である。
７行目は、この印刷データ１７０の元になった、ＰＣ１５０におけるファイルのファイル名を表す「ＤｏｃｕｍｅｎｔＮａｍｅ」の拡張変数である。
８行目は、この印刷データ１７０が印刷された場合に出力されるページ数を表す「Ｐａｇｅ」の拡張変数である。
９行目は、この印刷データ１７０を印刷するジョブのジョブＩＤを表す「ＪｏｂＩＤ」の拡張変数である。この「ＪｏｂＩＤ」の値は、ＰＣ１５０の固有情報と、ＰＣ１５０で生成される連番とを組み合わせることにより生成され、印刷データ１７０において重複することはない。
１０行目は、この印刷データ１７０を印刷する際に、認証が必要であるか否か、言い換えると、この印刷データ１７０が認証印刷データであるか否かを表す「Ｃｏｎｆｉｄｅｎｔｉａｌ」の拡張変数である。「Ｃｏｎｆｉｄｅｎｔｉａｌ」の値が「Ｙｅｓ」の場合には、認証が必要であり、「Ｎｏ」の場合には、認証が必要ないことを示す。
１１行目は、この印刷データ１７０が要求する媒体のサイズを表す「ＭｅｄｉａＳｉｚｅ」の拡張変数である。
１２行目は、この印刷データ１７０に含まれる実体データ１７０ｂの言語を表す「ＬＡＮＧＵＡＧＥ」である。
なお、本実施の形態においては、制御データ１７０ａがテキストデータ、実体データ１７０ｂがバイナリデータで構成されているが、この例に限定されるものではない。例えば、制御データ１７０ａがバイナリデータ、実体データ１７０ｂがテキストデータで構成されていてもよい。
【００１４】
図２の説明に戻り、印刷制御部１１２は、印刷データ１７０を管理する。また、印刷制御部１１２は、印刷部１１１を制御して、印刷する処理を実行させる。例えば、印刷制御部１１２は、通信部１１９を介して、ＰＣ１５０より送信された印刷データ１７０を取得する。印刷制御部１１２は、取得された印刷データ１７０の制御データ１７０ａを参照して、その印刷データ１７０をすぐに印刷するべきか否かを判断する。印刷制御部１１２は、印刷データ１７０をすぐに印刷すべきと判断した場合には、この印刷データ１７０を印刷部１１１に渡して、印刷させる。一方、印刷制御部１１２は、印刷データ１７０をすぐに印刷すべきではないと判断した場合には、この印刷データ１７０を記憶部１１６に記憶させる。ここで、印刷制御部１１２は、印刷データ１７０を記憶させる際に、その印刷データ１７０を識別するための識別情報として、各々の印刷データ１７０に名称を付与する。この名称は、自装置であるプリンタ１１０内で重複しないように付与される。例えば、この名称は、ファイル名として付与される。なお、印刷制御部１１２は、印刷データ１７０を印刷データ記憶部１１３に記憶させた際には、印刷データ１７０から制御データ１７０ａを抽出して、情報管理部１１３に与える。
【００１５】
情報管理部１１３は、記憶部１１６に記憶されている印刷管理情報を管理する処理を行う。印刷管理情報は、記憶部１１６に記憶されている印刷データ１７０を管理するための管理情報である。印刷管理情報は、各々の印刷データ１７０を特定するための特定情報と、当該特定情報で特定される印刷データ１７０の保存先を特定する保存先情報とを含む。
【００１６】
図４は、印刷管理情報としての印刷管理テーブル１７１を示す概略図である。印刷管理テーブル１７１は、制御データ欄１７１ａと、保存先欄１７１ｂと、名称欄１７１ｃとを有する。
制御データ欄１７１ａは、印刷データ１７０から抽出された制御データ１７０ａを格納する。
保存先欄１７１ｂは、制御データ欄１７１ａに格納された制御データ１７０ａが抽出された印刷データ１７０を記憶するプリンタ１１０の識別情報を格納する。ここで、プリンタ１１０の識別情報としては、プリンタ名が使用される。なお、プリンタ１１０の識別情報は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス又はＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス等のようにネットワーク１３０上でプリンタ１１０を一意に識別できるものであればどのようなものであってもよい。
名称欄１７１ｃは、制御データ欄１７１ａに格納された制御データ１７０ａが抽出された印刷データ１７０の名称を格納する。この名称は、印刷制御部１１２により付与されたものである。
なお、図４に示されている例では、制御データ欄１７１ａ及び名称欄１７１ｃに格納される情報が特定情報であり、保存先欄１７１ｂに格納される情報が保存先情報となる。
ここで、例えば、情報管理部１１３は、印刷制御部１１２より制御データ１７０ａを受け取ると、印刷管理テーブル１７１に新たなレコードを追加して、このレコードに、受け取った制御データ１７０ａと、自装置であるプリンタ１１０のプリンタ名と、記憶させた印刷データ１７０の名称とを格納する。
【００１７】
図２の説明に戻り、情報管理部１１３は、印刷管理テーブル１７１を更新する際には、印刷管理テーブル１７１の内容を、ネットワーク１３０に接続されている他のプリンタ１１０との間で一致させるように、印刷管理情報の同期化処理を行う。また、情報管理部１１３は、検索部１１４から印刷管理情報の内容を受け取った場合には、印刷管理テーブル１７１に格納されている内容が、受け取った印刷管理情報の内容と一致するように、印刷管理テーブル１７１の更新を行う。
【００１８】
検索部１１４は、ネットワーク１３０に接続されている他のプリンタ１１０を検索する。例えば、検索部１１４は、通信部１１９を介して、検索データをマルチキャストで送信する処理を行い、通信部１１９が、この検索データに対する検索応答データを受信するか否かにより検索を実行する。そして、検索部１１４は、通信部１１９により受信された検索応答データに印刷管理テーブル１７１の内容が含まれている場合には、含まれている印刷管理情報の内容を情報管理部１１３に与える。また、検索部１１４は、通信部１１９で受信された検索応答データから送信元のプリンタ１１０の識別情報を取得して、この識別情報を記憶部１１６に記憶されている、装置リストとしてのプリンタリストに格納する。
【００１９】
図５は、プリンタリストとしてのプリンタリストテーブル１７２の概略図である。プリンタテーブル１７２は、プリンタ名欄１７２ａと、ＩＰアドレス欄１７２ｂとを有する。
プリンタ名欄１７２ａは、検索データに対する検索応答データの送信元であるプリンタ１１０のプリンタ名を格納する。
ＩＰアドレス欄１７２ｂは、検索データに対する検索応答データの送信元であるプリンタ１１０の通信アドレスであるＩＰアドレスを格納する。
検索部１１４は、通信部１１９が検索データに対する検索応答データを受信すると、この検索応答データからプリンタ名を抽出するとともに、この検索応答データを格納したＩＰパケットから送信元のＩＰアドレスを抽出して、これらをプリンタリストテーブル１７２に格納する。
【００２０】
図２の説明に戻り、検索応答部１１５は、通信部１１９がネットワーク１３０に接続されたプリンタ１１０及びＰＣ１５０からの検索データを受信した場合に、この検索データに応答するための検索応答データを生成する。そして、検索応答部１１５は、通信部１１９を介して、生成された検索応答データを、検索データの送信元に送信する処理を行う。ここで、本実施の形態においては、検索応答部１１５は、プリンタ１１０が送信元になっている検索データに対する検索応答データには、自装置の印刷管理情報の内容を含める。
また、検索応答部１１５は、通信部１１９が検索データを受信すると、この検索データの送信元のプリンタ１１０のプリンタ名を抽出するとともに、この検索データを格納したＩＰパケットから送信元のＩＰアドレスを抽出して、これらをプリンタリストテーブル１７２に格納する。
【００２１】
記憶部１１６は、プリンタ１１０での処理に必要な情報を記憶する。例えば、記憶部１１６は、印刷データ１７０、印刷管理テーブル１７１及びプリンタリストテーブル１７２を記憶する。
【００２２】
認証処理部１１７は、プリンタ１１０の利用者の認証を行う。例えば、認証処理部１１７は、ＵＩＦ部１１８を介して、利用者のＩＤ情報を取得して、当該ＩＤ情報の認証を行う。認証処理部１１７は、認証が成功した場合には、印刷制御部１１２に、認証が成功した利用者のＩＤ情報を与える。なお、このＩＤ情報は、利用者に固有のＩＤ情報であり、利用者を一意に識別するための利用者識別情報として機能する。そして、利用者が同じであれば、ＩＤ情報で示される値は、制御データ１７０ａ（図３参照）に含まれる拡張変数「ＵｓｅｒＩＤ」の値と同じになる。制御データ１７０ａにおける「ＵｓｅｒＩＤ」の値は、例えば、利用者がＰＣ１５０にログインする際に、この利用者が保有するＩＣカードを利用したログイン認証を行うことにより取得される。
【００２３】
ＵＩＦ部１１８は、プリンタ１１０と利用者との間のインタフェースとして機能する。ＵＩＦ部１１８は、例えば、ディスプレイとキーデバイスとの組み合わせ、又は、タッチパネルディスプレイ等のように、利用者への出力部と利用者からの入力部とを備える。なお、ＵＩＦ部１１８は、認証処理部１１７が認証処理を行う際に必要な情報を読み取るための読取装置を備えていてもよい。このような読取装置としては、利用者の生体情報を取得するためのスキャン装置、利用者のＩＣカードからＩＤ情報等を読み取るためのＩＣカードリーダ等がある。
通信部１１９は、ネットワーク１３０との間の通信を実行する。
【００２４】
以上に記載された、印刷制御部１１２、情報管理部１１３、検索部１１４、検索応答部１１５及び認証処理部１１７は、図示してはいないが、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の記憶装置からプログラムを読み出し、実行することにより実現することができる。なお、これらを、例えば、ＡＳＩＣ（Ａｐｐｋｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の集積ロジックＩＣによりハード的に実現されるものでもよい。
また、記憶部１１６は、揮発性メモリ、フラッシュメモリ等の不揮発性メモリ及びＨＤＤ等の記憶装置により実現することができる。
さらに、通信部１１９は、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）により実現することができる。
【００２５】
図６は、ＰＣ１５０の構成を概略的に示すブロック図である。ＰＣ１５０は、印刷データ生成部１５１と、プリンタ検索部１５２と、記憶部１５３と、ＵＩＦ部１５４と、通信部１５５とを備える。
【００２６】
印刷データ生成部１５１は、印刷データ１７０を作成する。例えば、印刷データ生成部１５１は、アプリケーション等を利用して、印刷データ１７０を作成する。印刷データ１７０には、図３に示されているような制御データ１７０ａが含まれている。制御データ１７０ａは、利用者からの指示又は選択により決定されるものと、利用者の指示及び選択によらずに決定されるものがある。さらに、印刷データ生成部１５１は、通信部１５５を介して、作成された印刷データ１７０を、プリンタ検索部１５２で検索されたプリンタ１１０に送信する処理を行う。
プリンタ検索部１５２は、ネットワーク１３０に接続されたプリンタ１１０を検索するネットワーク検索部として機能する。例えば、プリンタ検索部１５２は、通信部１５５を介して、検索データをマルチキャストで送信する処理を行い、通信部１５５が、この検索データに対する検索応答データを受信するか否かにより検索を実行する。そして、プリンタ検索部１５２は、検索により複数のプリンタ１１０が発見された場合には、発見された複数のプリンタ１１０から、印刷データ１７０を送信する１つのプリンタ１１０を選択する。プリンタ検索部１５２は、検索又は選択されたプリンタ１１０のプリンタ名及びＩＰアドレスを印刷データ生成部１５１に与える。
記憶部１５３は、ＰＣ１５０での処理に必要な情報を記憶する。例えば、本実施の形態においては、プリンタ検索部１５２により検索されたプリンタ１１０と、当該プリンタ１１０の通信先とを識別することのできる情報を記憶する。一例として、記憶部１５３は、検索されたプリンタ１１０のプリンタ名及びＩＰアドレスを記憶する。
ＵＩＦ部１５４は、ＰＣ１５０と利用者との間のインタフェースとして機能する。ＵＩＦ部１５４は、例えば、ディスプレイとキーデバイスの組み合わせ、又は、タッチパネルディスプレイ等のように、利用者への出力部と利用者からの入力部とを備える。
通信部１５５は、ネットワーク１３０との間の通信を実行する。
【００２７】
以上に記載された、印刷データ生成部１５１、プリンタ検索部１５２は、図示してはいないが、ＣＰＵがＨＤＤ及びＲＯＭ等の記憶装置からプログラムを読み出し、実行することにより実現することができる。また、記憶部１５３は、揮発性メモリ、フラッシュメモリ等の不揮発性メモリ及びＨＤＤ等の記憶装置により実現することができる。さらに、通信部１５５は、ＮＩＣにより実現することができる。
【００２８】
（動作の説明）
次に、本発明の実施の形態１の動作について説明する。
【００２９】
図７は、プリンタ１１０が他のプリンタ１１０を検索する際の処理を示すフローチャートである。このフローは、例えば、プリンタ１１０の電源が投入されて、ネットワーク１３０への接続が確立された直後に開始される。
【００３０】
まず、プリンタ１１０の検索部１１４は、ネットワーク１３０に接続された他のプリンタ１１０を検索する（Ｓ１０）。例えば、検索部１１４は、検索データを生成し、通信部１１９を介して、この検索データをネットワーク１３０に対しブロードキャストで送信し、他のプリンタ１１０からの応答を所定時間待つ。
【００３１】
図８は、検索データ１７３の一例を示す概略図である。検索データ１７３は、検索を実行するプリンタ１１０の識別情報を少なくとも含んでいる。図８に示されている検索データ１７３は、Ｔｙｐｅ要素と、ＣｏｌｏｒＭｏｎｏ要素と、ＭｅｄｉａＳｉｚｅ要素と、Ｎａｍｅ要素と、Ｃａｐａｃｉｔｙ要素とを備える構造化文書のデータである。
Ｔｙｐｅ要素は、検索を実行するプリンタ１１０の機種情報を示す。
ＣｏｌｏｒＭｏｎｏ要素及びＭｅｄｉａＳｉｚｅ要素は、検索を実行するプリンタ１１０の印刷能力を示す。ここでは、ＣｏｌｏｒＭｏｎｏ要素は、検索を実行するプリンタ１１０がカラー印刷及びモノクロ印刷の何れに対応しているかを示す。ＭｅｄｉａＳｉｚｅ要素は、検索を実行するプリンタ１１０が使用する媒体のサイズを示す。
Ｎａｍｅ要素は、検索を実行するプリンタ１１０のプリンタ名を示す。
Ｃａｐａｃｉｔｙ要素は、検索を実行するプリンタ１１０の記憶容量のうち、空き容量を示す。
なお、検索データ１７３に、送信元のプリンタ１１０のＩＰアドレスが含まれていてもよい。
【００３２】
図７の説明に戻り、検索部１１４は、他のプリンタ１１０から応答があったか否かを確認する（Ｓ１１）。例えば、検索部１１４は、通信部１１９が検索応答データを受信したか否かを確認する。そして、検索部１１４は、応答があった場合（Ｓ１１：Ｙｅｓ）には、ステップＳ１２の処理に進み、応答がなかった場合（Ｓ１１：Ｎｏ）には、ステップＳ１４の処理に進む。
【００３３】
ステップＳ１２では、検索部１１４は、通信部１１９が受信した検索応答データを受け取る。そして、検索部１１４は、受け取った検索応答データから、印刷管理テーブル１７１の内容＃１を抽出して、抽出された印刷管理テーブル１７１の内容を情報管理部１１３に与える。情報管理部１１３は、記憶部１１６に記憶されている印刷管理テーブル１７１の内容＃２を、受け取った印刷管理テーブル１７１の内容＃１に一致するように更新する。例えば、情報管理部１１３は、印刷管理テーブル１７１の内容＃２を、受け取った印刷管理テーブル１７１の内容＃１で置き換える。なお、検索部１１４は、通信部１１９が複数の検索応答データを受信した場合には、何れか１つの検索応答データに含まれている印刷管理テーブル１７１の内容で更新を行えばよい。
【００３４】
また、検索部１１４は、通信部１１９で受信された検索応答データから送信元のプリンタ１１０のプリンタ名を取得し、また、この検索応答データを格納したＩＰパケットの送信元のＩＰアドレスを取得して、これらの情報を記憶部１１６に記憶されているプリンタリストテーブル１７２に格納する（Ｓ１３）。
【００３５】
一方、ステップＳ１４では、検索部１１４は、他のプリンタ１１０が発見されなかったことを示す検索結果を情報管理部１１３に通知する。このような検索結果の通知を受けた情報管理部１１３は、記憶部１１６に記憶されている印刷管理テーブル１７１の初期化を行う。例えば、検索部１１４は、印刷管理テーブル１７１に格納されている情報を全て削除する。
【００３６】
図７で示されているフローにより、プリンタ１１０は、他のプリンタ１１０から印刷管理テーブル１７１の内容を取得して、自装置のテーブルに反映することができる。また、ネットワーク１３０に接続されている他のプリンタ１１０の識別情報を取得することができる。
【００３７】
図９は、プリンタ１１０の検索応答部１１５が、他のプリンタ１１０又はＰＣ１５０からの検索データに応答する際の処理を示すフローチャートである。このフローは、検索応答部１１５が、通信部１１９を介して、他のプリンタ１１０又はＰＣ１５０から送信された検索データを受け取ることにより開始される。
【００３８】
検索応答部１１５は、通信部１１９から受け取った検索データがプリンタ１１０から送信されたものであるか否かを確認する（Ｓ２０）。例えば、本実施の形態では、図８に示されているように、プリンタ１１０からの検索データ１７３には、ＣｏｌｏｒＭｏｎｏ要素、ＭｅｄｉａＳｉｚｅ要素及びＣａｐａｃｉｔｙ要素が含まれているため、検索応答部１１５は、これらの要素の存在を確認することにより、検索データがプリンタ１１０から送信されたものであるか否かを確認することができる。また、例えば、プリンタ名にプリンタであることを示す識別情報を含めておくことにより、検索応答部１１５は、検索データのＮａｍｅ要素の内容を確認することで、検索データがプリンタ１１０から送信されたものであるか否かを確認することができる。そして、検索応答部１１５は、検索データがプリンタ１１０から送信されたものである場合（Ｓ２０：Ｙｅｓ）には、ステップＳ２１の処理に進み、検索データがプリンタ１１０から送信されたものではない場合、言い換えると、これがＰＣ１５０から送信されたものである場合（Ｓ２０：Ｎｏ）には、ステップＳ２３の処理に進む。
【００３９】
ステップＳ２１では、検索応答部１１５は、通信部１１９で受信された検索データ１７３に基づいて、送信元のプリンタ１１０のプリンタ名を取得して、また、この検索１７３を格納したＩＰパケットの送信元のＩＰアドレスを取得して、これらの情報を記憶部１１６に記憶されているプリンタリストテーブル１７２に格納する。
【００４０】
次に、検索応答部１１５は、検索データ１７３を送信してきたプリンタ１１０に対する検索応答データを生成する（Ｓ２２）。ここでは、検索応答部１１５は、記憶部１１６に記憶されている印刷管理テーブル１７１の内容を検索応答データに含める。
【００４１】
図１０は、検索応答データ１７４を示す概略図である。検索応答データ１７４は、応答するプリンタ１１０の識別情報及び応答するプリンタ１１０が有する印刷管理テーブル１７１の内容を少なくとも含んでいる。図１０に示されている検索応答データ１７４は、Ｔｙｐｅ要素と、ＣｏｌｏｒＭｏｎｏ要素と、ＭｅｄｉａＳｉｚｅ要素と、Ｎａｍｅ要素と、Ｃａｐａｃｉｔｙ要素と、Ｔａｂｌｅ要素とを備える構造化文書のデータである。
Ｔｙｐｅ要素は、応答するプリンタ１１０の機種情報を示す。
ＣｏｌｏｒＭｏｎｏ要素及びＭｅｄｉａＳｉｚｅ要素は、応答するプリンタ１１０の印刷能力を示す。ここでは、ＣｏｌｏｒＭｏｎｏ要素は、応答するプリンタ１１０がカラー印刷及びモノクロ印刷の何れに対応しているかを示す。ＭｅｄｉａＳｉｚｅ要素は、応答するプリンタ１１０が使用する媒体のサイズを示す。
Ｎａｍｅ要素は、応答するプリンタ１１０のプリンタ名を示す。
Ｃａｐａｃｉｔｙ要素は、応答するプリンタ１１０の記憶容量のうち、空き容量を示す。
Ｔａｂｌｅ要素は、応答するプリンタ１１０の記憶部１１６に記憶されている印刷管理テーブル１７１の内容を格納する。例えば、Ｔａｂｌｅ要素は、ＰＪＬ要素と、ＰｒｉｎｔｅｒＮａｍｅ要素と、ＦｉｌｅＮａｍｅ要素とを有する。そして、例えば、図４に示されている印刷管理テーブル１７１のレコード毎に、ＰＪＬ要素には、制御データ欄１７１ａの情報が格納され、ＰｒｉｎｔｅｒＮａｍｅ要素には、保存先欄１７１ｂの情報が格納され、ＦｉｌｅＮａｍｅ要素には、名称欄１７１ｃの情報が格納される。
なお、検索応答データ１７４に、応答するプリンタ１１０のＩＰアドレスが含まれていてもよい。
【００４２】
図９の説明に戻り、検索応答部１１５は、ステップＳ２０において検索データの送信元がプリンタ１１０ではないと判断した場合（Ｓ２０：Ｎｏ）には、検索データを送信してきた、プリンタ１１０以外の装置（ここでは、ＰＣ１５０）に対する検索応答データを生成する（Ｓ２３）。ステップＳ２３で生成される検索応答データは、少なくとも、応答するプリンタ１１０の識別情報を含み、応答するプリンタの印刷管理テーブル１７１の内容は含まれない。例えば、ステップＳ２３で生成される検索応答データは、図１０に示されている検索応答データ１７４からＴａｂｌｅ要素を除いた残りの要素により構成することができる。
【００４３】
そして、ステップＳ２４では、検索応答部１１５は、通信部１１９を介して、ステップＳ２２又はＳ２３で生成された検索応答データを、検索データの送信元に送信する処理を行う。
【００４４】
以上のように、図９に示されているフローによれば、検索を行ったプリンタ１１０は、応答したプリンタ１１０が記憶している印刷管理テーブル１７１と同様の内容の印刷管理テーブル１７１を取得することができる。
【００４５】
図１１は、プリンタ１１０が、印刷データ１７０を受信した場合の処理を示すフローチャートである。このフローは、プリンタ１１０の印刷制御部１１２が、通信部１１９から印刷データ１７０を受け取った際に開始される。
【００４６】
印刷制御部１１２は、通信部１１９より、ネットワーク１３０を介して送信されてきた印刷データ１７０を受け取る（Ｓ３０）。そして、印刷制御部１１２は、受け取った印刷データ１７０から制御データ１７０ａを取り出す（Ｓ３１）。
【００４７】
次に、印刷制御部１１２は、ステップＳ３１で取り出された制御データ１７０ａを調査し、受信された印刷データ１７０が、認証を必要とする認証印刷データであるか否かを判断する（Ｓ３２）。例えば、印刷制御部１１２は、制御データ１７０ａの拡張変数である「Ｃｏｎｆｉｄｅｎｔｉａｌ」の値を確認する。この値が「Ｙｅｓ」である場合には、印刷制御部１１２は、受信された印刷データ１７０が認証印刷データであると判断し、この値が「Ｎｏ」である場合には、印刷制御部１１２は、受信された印刷データ１７０が認証印刷データではないと判断する。そして、印刷制御部１１２は、印刷データ１７０が認証印刷データであると判断した場合（Ｓ３２：Ｙｅｓ）には、ステップＳ３３の処理に進み、印刷データ１７０が認証印刷データではないと判断した場合（Ｓ３２：Ｎｏ）には、ステップＳ３５の処理に進む。
【００４８】
ステップＳ３３では、印刷制御部１１２は、印刷データ１７０に自装置内で一意となる名称を与えて、この印刷データ１７０を記憶部１１６に記憶させる。また、印刷制御部１１２は、ステップＳ３１で取り出された制御データ１７０ａを情報管理部１１３に与えて、情報管理部１１３に印刷管理情報の更新指示を与える。
情報管理部１１３は、制御データ１７０ａ、及び、印刷管理情報の更新指示を受け取ると、印刷管理テーブル１７１の同期化処理を行う（Ｓ３４）。ステップＳ３４の処理については、図１１を用いて詳細に説明する。
【００４９】
一方、印刷制御部１１２は、ステップＳ３２において、ステップＳ３０で取得された印刷データ１７０が認証印刷データではないと判断した場合（Ｓ３２：Ｎｏ）には、ステップＳ３５の処理に進む。ステップＳ３５では、印刷制御部１１２は、この印刷データ１７０を印刷部１１１に送り、印刷部１１１に印刷を行わせる。
【００５０】
以上のように、プリンタ１１０の印刷制御部１１２は、受信した印刷データ１７０の制御データ１７０ａを参照し、すぐに印刷するデータなのか、認証を必要とする認証印刷データなのかを判断する。さらに、印刷制御部１１２は、認証が必要な場合には、印刷データ１７０及び制御データ１７０ａを保存させて、他のプリンタ１１０と同期化処理を行う。
【００５１】
図１２は、印刷管理情報の同期化処理を示すフローチャートである。情報管理部１１３は、印刷制御部１１２から印刷管理情報の更新指示を受けた際に、本フローを開始する。
【００５２】
情報管理部１１３は、印刷制御部１１２からの更新指示の内容に応じて、更新データを生成する（Ｓ４０）。更新データは、他のプリンタ１１０との間で印刷管理テーブル１７１の同期を取るために、更新内容を特定するものである。
図１３（Ａ）及び（Ｂ）は、更新データ１７５Ａ、１７５Ｂ（以下、各々を特に区別する必要がないときは、更新データ１７５という）を示す概略図である。
図１３（Ａ）は、印刷管理テーブル１７１に新たな制御データ１７０ａを追加する際の更新データ１７５Ａを示す。図１３（Ａ）に示されているように、更新データ１７５Ａは、Ｃｏｍｍａｎｄ要素と、ＰＪＬ要素と、ＰｒｉｔｅｒＮａｍｅ要素と、ＦｉｌｅＮａｍｅ要素とを備える。Ｃｏｍｍａｎｄ要素は、更新方法として、印刷管理テーブル１７１に新たな制御データ１７０ａを追加する指示であるＡＤＤを示す。ＰＪＬ要素は、印刷管理テーブル１７１の制御データ欄１７１ａに格納する情報を示す。ＰｒｉｔｅｒＮａｍｅ要素は、印刷管理テーブル１７１の保存先欄１７１ｂに格納する情報を示す。ＦｉｌｅＮａｍｅ要素は、印刷管理テーブル１７１の名称欄１７１ｃに格納する情報を示す。
一方、図１３（Ｂ）は、印刷管理テーブル１７１から制御データ１７０ａを削除する際の更新データ１７５Ｂを示す。図１３（Ｂ）に示されているように、更新データ１７５Ａは、Ｃｏｍｍａｎｄ要素と、ＰｒｉｔｅｒＮａｍｅ要素と、ＦｉｌｅＮａｍｅ要素とを備える。Ｃｏｍｍａｎｄ要素は、更新方法として、印刷管理テーブル１７１から制御データ１７０ａを削除する指示であるＤＥＬＥＴＥを示す。ＰｒｉｔｅｒＮａｍｅ要素は、印刷管理テーブル１７１において、削除される制御データ１７０ａと同じレコードの保存先欄１７１ｂに格納されている情報を示す。ＦｉｌｅＮａｍｅ要素は、印刷管理テーブル１７１において、削除される制御データ１７０ａと同じレコードの名称欄１７１ｃに格納されている情報を示す。
そして、印刷制御部１１２からの更新指示の内容が「追加」である場合には、情報管理部１１３は、図１３（Ａ）に示されているような更新データ１７５Ａを生成し、印刷制御部１１２からの更新指示の内容が「削除」である場合には、情報管理部１１３は、図１３（Ｂ）に示されているような更新データ１７５Ｂを生成する。
【００５３】
図１２の説明に戻り、情報管理部１１３は、ステップＳ４０で更新データ１７５を作成すると、記憶部１１６からプリンタリストテーブル１７２を取得する（Ｓ４１）。
そして、情報管理部１１３は、通信部１１９を介して、ステップＳ４０で生成された更新データ１７５を、プリンタリストテーブル１７２に情報が格納されているプリンタ１１０に送信する処理を行う（Ｓ４２）。
【００５４】
そして、情報管理部１１３は、印刷制御部１１２からの更新指示の内容に応じて、記憶部１１６に記憶されている印刷管理テーブル１７１を更新する（Ｓ４３）。例えば、印刷制御部１１２からの更新指示の内容が「追加」である場合には、情報管理部１１３は、印刷管理テーブル１７１に新たなレコードを追加する。一方、印刷制御部１１２からの更新指示の内容が「削除」である場合には、印刷管理テーブル１７１から対応するレコードを削除する。
【００５５】
以上のように、情報管理部１１３は、印刷管理テーブル１７１を更新する際に、その更新内容を示す更新データ１７５を他のプリンタ１１０に送信する処理を行うことで、他のプリンタ１１０との間で、印刷管理テーブル１７１の同期を取ることができる。なお、本実施の形態では、更新データ１７５は、更新の内容を示すデータであるが、このような例に限定されるものではない。例えば、更新データが、更新後の印刷管理テーブル１７１の内容を示すデータであってもよい。
【００５６】
図１４は、更新データ１７５を受信したプリンタ１１０での処理を示すフローチャートである。本フローは、通信部１１９が更新データ１７５を受信した際に開始される。
【００５７】
情報管理部１１３は、通信部１１９から更新データ１７５を受け取る（Ｓ５０）。
そして、情報管理部１１３は、受け取った更新データ１７５で示される更新の内容に応じて、印刷管理テーブル１１７を更新する（Ｓ５１）。例えば、情報管理部１１３は、更新データ１７５のＣｏｍｍａｎｄ要素がＡＤＤである場合には、印刷管理テーブル１７１に新たなレコードを追加して、ＰＪＬ要素、ＰｒｉｔｅｒＮａｍｅ要素及びＦｉｌｅＮａｍｅ要素の情報を、それぞれ、制御データ欄１７１ａ、保存先欄１７１ｂ及び名称欄１７１ｃに格納する。また、情報管理部１１３は、更新データ１７５のＣｏｍｍａｎｄ要素がＤＥＬＥＴＥである場合には、印刷管理テーブル１７１において、更新データ１７５のＰｒｉｔｅｒＮａｍｅ要素及びＦｉｌｅＮａｍｅ要素の情報が、それぞれ保存先欄１７１ｂ及び名称欄１７１ｃに格納されているレコードを特定し、特定されたレコードを削除する。
【００５８】
以上のように、何れかのプリンタ１１０で印刷管理テーブル１１７が更新されると、他のプリンタ１１０でも、同様の更新が行われる。なお、他のプリンタ１１０から、更新データとして、印刷管理テーブル１７１の内容が送信されてきた場合には、情報管理部１１３は、記憶部１１６に記憶されている印刷管理テーブル１７１の内容を、送信されてきた内容で置き換える。さらに、図１４に示されているフローチャートにより、印刷管理テーブル１７１の更新を行ったプリンタ１１０は、更新後の印刷管理テーブル１７１の内容を、更新データ１７５の送信元のプリンタ１１０に送ることで、例えば、更新データ１７５の送信元のプリンタ１１０の情報管理部１１３は、内容の整合性を確認することができる。この際、例えば、プリンタ１１０の情報管理部１１３は、更新後の印刷管理テーブル１７１の内容を、例えば、ハッシュ関数等の一方向関数を用いて計算した値を、更新データ１７５の送信元のプリンタ１１０に送ることも可能である。このような場合には、更新データ１７５の送信元のプリンタ１１０でも、情報管理部１１３が、更新後の印刷管理テーブル１７１の内容から、一方向関数を用いて計算した値を算出して、算出された値と、送られてきた値とを比較することで、整合性を確認することができる。
【００５９】
図１５は、プリンタ１１０が、認証印刷データに基づいて印刷を行う際の処理を示すフローチャートである。このフローは、例えば、プリンタ１１０のＵＩＦ部１１８が、利用者より印刷指示の入力を受けた場合に開始される。
【００６０】
まず、プリンタ１１０の認証処理部１１７は、利用者の認証を実行する（Ｓ６０）。例えば、認証処理部１１７は、ＵＩＦ部１１８を介して、ＩＣカードから利用者の認証情報であるＩＤ情報を取得できるか否かで認証を行う。また、認証処理部１１７は、ＵＩＦ部１１８を介して、ＩＣカードから利用者のＩＤ情報を取得し、例えば、記憶部１１６に記憶されている利用者ＩＤテーブル等の参照情報に登録されている値と比較して、ＩＤ情報で示される値が参照情報に登録されているか否かで認証を行う。また、認証処理部１１７は、ＵＩＦ部１１８を介して、ＩＣカードから利用者のＩＤ情報とパスワードとを取得し、図示しない外部の認証サーバ、例えば、ＬＤＡＰ（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｄｉｒｅｃｔｏｒｙ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）サーバ等でこれらの情報の検証を受けることで、認証を行う。ステップＳ６０での認証により、印刷制御部１１２は、利用者のＩＤ情報を取得する。
【００６１】
次に、認証処理部１１７は、利用者の認証に成功したか否かを判断する（Ｓ６１）。そして、認証処理部１１７は、認証に成功した場合（Ｓ６１：Ｙｅｓ）には、ステップＳ６２の処理に進み、認証に失敗した場合（Ｓ６１：Ｎｏ）には、ステップＳ７０の処理に進む。
【００６２】
ステップＳ６２では、印刷制御部１１２は、記憶部１１６に記憶されている印刷管理テーブル１７１を取得する。
【００６３】
そして、印刷制御部１１２は、ステップＳ６２で取得された印刷管理テーブル１７１に、ステップＳ６０で取得された利用者のＩＤ情報に対応する印刷データ１７０があるか否かを確認する（Ｓ６３）。例えば、印刷制御部１１２は、印刷管理テーブル１７１の制御データ欄１７１ａに格納されている制御データ１７０ａにおいて、「ＵｓｅｒＩＤ」の拡張変数の値が、ステップＳ６０で取得された利用者のＩＤ情報と一致ものがあるか否かにより、この確認を行う。そして、印刷制御部１１２は、このような印刷データ１７０があると判断した場合（Ｓ６３：Ｙｅｓ）には、ステップＳ６４の処理に進み、このような印刷データ１７０がないと判断した場合（Ｓ６３：Ｎｏ）には、ステップＳ７１の処理に進む。
【００６４】
ステップＳ６４では、印刷制御部１１２は、ステップＳ６２で取得した印刷管理テーブル１７１に基づいて、処理対象とする印刷データ１７０を選択するための印刷データ選択画面を生成する。そして、印刷制御部１１２は、この印刷データ選択画面をＵＩＦ部１１８に送り、ＵＩＦ部１１８に印刷データ選択画面を表示させる。ここで、この印刷データ選択画面には、ステップＳ６０で認証に成功した利用者が、何れかのプリンタ１１０に送信し、未だ印刷されていない全ての印刷データ１７０を特定する情報が表示される。また、印刷データ１７０を特定する情報には、例えば、制御データ１７０ａに含まれている、少なくとも１つの変数の値が含まれるのが望ましい。
【００６５】
図１６は、印刷データ選択画面１７６の一例を示す概略図である。印刷データ選択画面１７６は、印刷データ選択領域１７６ａと、印刷指示領域１７６ｂと、削除指示領域１７６ｃと、Ｃａｎｃｅｌ指示領域１７６ｄとを備える。
印刷データ選択領域１７６ａは、印刷データ１７０の選択の入力を受け付ける。例えば、印刷データ選択領域１７６ａには、ステップＳ６２で取得された印刷管理テーブル１７１に含まれている制御データ１７０ａの拡張変数である「ＤｏｃｕｍｅｎｔＮａｍｅ」の値（文書名）と、拡張変数「Ｄａｔａ」の値の一部（日付）と、拡張変数「Ｐａｇｅ」の値（ページ数）とが表示されており、これらの値により、印刷データ１７０が特定される。なお、印刷データ選択領域１７６ａに表示しきれない印刷データ１７０については、スクロールバー１７６ｅを下方に移動させることにより、表示させることができる。
そして、ＵＩＦ部１１８は、利用者により、印刷データ選択領域１７６ａにおいて印刷データ１７０が選択され、印刷指示領域１７６ｂを選択した実行指示の入力を受け付けた場合には、印刷データ選択領域１７６ａにおいて選択された情報と、印刷指示とを印刷制御部１１２に与える。
また、ＵＩＦ部１１８は、利用者により、印刷データ選択領域１７６ａにおいて印刷データ１７０が選択され、削除指示領域１７６ｃを選択した実行指示の入力を受け付けた場合には、印刷データ選択領域１７６ａにおいて選択された情報と、削除指示とを印刷制御部１１２に与える。
さらに、ＵＩＦ部１１８は、利用者により、Ｃａｎｃｅｌ指示領域１７６ｄを選択した実行指示の入力を受け付けた場合には、キャンセル指示を印刷制御部１１２に与える。
【００６６】
図１５の説明に戻り、印刷制御部１１２は、ＵＩＦ部１１８からの指示を確認する（Ｓ６５）。そして、印刷制御部１１２は、ＵＩＦ部１１８から、印刷指示を受けた場合には、ステップＳ６６の処理に進み、削除指示を受けた場合には、ステップＳ６８の処理に進み、キャンセル指示を受けた場合には、フローを終了する。なお、印刷制御部１１２は、ＵＩＦ部１１８から、所定時間指示を受け取らなかった場合には、キャンセル指示を受けたものと判断して、図１５のフローを終了してもよい。
【００６７】
ステップＳ６６では、印刷制御部１１２は、印刷指示を受けた印刷データ１７０を取得する処理を行う。例えば、印刷制御部１１２は、印刷管理テーブル１７１において、図１６の印刷データ選択画面１７６の印刷データ選択領域１７６ａで選択された印刷データ１７０の制御データ１７０ａが制御データ欄１７１ａに格納されているレコードを特定する。そして、印刷制御部１１２は、特定されたレコードの保存先欄１７１ｂの情報を確認する。確認された保存先欄１７１ｂの情報が自装置を示す場合には、特定されたレコードの名称欄１７１ｃに格納されている名称に対応する印刷データ１７０を記憶部１１６から取得する。この際、印刷制御部１１２は、取得された印刷データ１７０を記憶部１１６から削除する。一方、確認された保存先欄１７１ｂの情報が他のプリンタ１１０を示す場合には、印刷制御部１１２は、特定されたレコードの名称欄１７１ｃに格納されている名称を含む転送要求データを生成する。印刷制御部１１２は、通信部１１９を介して、確認された保存先欄１７１ｂの情報で特定されるプリンタ１１０に、生成された転送要求データを送信する処理を行う。なお、送信先のプリンタ１１０の通信アドレスは、記憶部１１６に記憶されているプリンタリストテーブル１７２から取得される。そして、印刷制御部１１２は、通信部１１９を介して、転送要求データの応答として、印刷対象となる印刷データ１７０を取得する。
【００６８】
印刷制御部１１２は、ステップＳ６６で取得された印刷データ１７０を印刷部１１１に送り、印刷部１１１に印刷を行わせる（Ｓ６７）。
【００６９】
一方、印刷制御部１１２は、ステップＳ６５でＵＩＦ部１１８から受けた指示が削除指示である場合には、ステップＳ６８の処理に進む。ステップＳ６８では、印刷制御部１１２は、ＵＩＦ部１１８から指示された印刷データ１７０を削除する処理を行う。例えば、印刷制御部１１２は、印刷管理テーブル１７１において、図１６の印刷データ選択画面１７６の印刷データ選択領域１７６ａで選択された印刷データ１７０の制御データ１７０ａが制御データ欄１７１ａに格納されているレコードを特定する。そして、印刷制御部１１２は、特定されたレコードの保存先欄１７１ｂの情報を確認する。確認された保存先欄１７１ｂの情報が自装置を示す場合には、特定されたレコードの名称欄１７１ｃに格納されている名称に対応する印刷データ１７０を記憶部１１６から削除する。一方、確認された保存先欄１７１ｂの情報が他のプリンタ１１０を示す場合には、印刷制御部１１２は、特定されたレコードの名称欄１７１ｃに格納されている名称を含む削除要求データを生成する。印刷制御部１１２は、通信部１１９を介して、確認された保存先欄１７１ｂの情報で特定されるプリンタ１１０に、生成された削除要求データを送信する処理を行う。なお、送信先のプリンタ１１０の通信アドレスは、記憶部１１６に記憶されているプリンタリストテーブル１７２から取得される。
【００７０】
そして、印刷制御部１１２は、情報管理部１１３に印刷管理情報の更新指示を与える（Ｓ６９）。ここでの更新指示は、印刷データ１７０の削除を指示するものである。
【００７１】
また、ステップＳ６１において、利用者の認証に失敗した場合（Ｓ６１：Ｎｏ）には、ステップＳ７０の処理に進む。ステップＳ７０では、認証処理部１１７は、認証に失敗したことを示すメッセージを含む認証失敗画面を生成する。そして、認証処理部１１７は、この認証失敗画面をＵＩＦ部１１８に送ることで、ＵＩＦ部１１８に認証失敗画面を表示させ、図１５に示すフローを終了する。
【００７２】
さらに、ステップＳ６３において、印刷データ１７０がないと判断された場合（Ｓ６３：Ｎｏ）には、ステップＳ７１の処理に進む。ステップＳ７１では、印刷制御部１１２は、印刷データがないことを示すメッセージを含む印刷データ無し画面を生成する。そして、印刷制御部１１２は、この印刷データ無し画面をＵＩＦ部１１８に送ることで、ＵＩＦ部１１８に印刷データ無し画面を表示させ、図１５に示すフローを終了する。
【００７３】
以上のように、プリンタ１１０では、ネットワーク１３０に接続されているプリンタ１１０の何れかに保存されている印刷データ１７０を他のプリンタ１１０に転送することで、転送先の他のプリンタ１１０で印刷を行うことができる。
【００７４】
なお、図１５に示されているフローでは、印刷管理情報の更新指示（Ｓ６９）を行った後、フローを終了させているが、このような例に限定されるものではない。例えば、印刷制御部１１２は、これらの処理を行った後に、ステップＳ６２の処理に戻ってもよい。また、印刷データ選択画面１７６に、「印刷し、処理を継続」といった処理を選択するための指示領域が追加されていてもよい。このような指示が入力された場合には、例えば、印刷制御部１１２は、ステップＳ６７の処理後に、ステップＳ６４の処理に戻って、処理を継続する。
【００７５】
図１７は、ＰＣ１５０がネットワーク１３０上に存在するプリンタ１１０を検索し、さらに印刷データ１７０を送信する際の処理を示すフローチャートである。このフローは、ＰＣ１５０のＵＩＦ部１５４が利用者より印刷指示の入力を受けた場合に開始される。
【００７６】
まず、ＰＣ１５０のプリンタ検索部１５２は、ネットワーク１３０に接続されたプリンタ１１０を検索する（Ｓ８０）。例えば、プリンタ検索部１５２は、自装置を識別する識別情報を有する検索データを生成する。ここでの識別情報は、自装置がプリンタ１１０ではなくＰＣ１５０であることを示すＰＣ名とするが、この例に限定されない。なお、検索データには、ＰＣ１５０のＩＰアドレスが含まれていてもよい。そして、プリンタ検索部１５２は、通信部１５５を介して、この検索データをネットワーク１３０に対しブロードキャストで送信する処理を行う。そして、プリンタ検索部１５２は、ネットワーク１３０上のプリンタ１１０からの応答を所定時間待つ。
【００７７】
次に、プリンタ検索部１５２は、通信部１５５がネットワーク１３０上のプリンタ１１０からの検索応答データを受信したか否かを確認する（Ｓ８１）。そして、プリンタ検索部１５２は、通信部１５５が検索応答データを受信した場合（Ｓ８１：Ｙｅｓ）には、ステップＳ８２の処理に進み、通信部１５５が検索応答データを受信しなかった場合（Ｓ８１：Ｎｏ）には、ステップＳ８５の処理に進む。
【００７８】
ステップＳ８２では、印刷データ生成部１５１は、印刷データ１７０の実体データ１７０ｂである印刷画像データを作成する。
【００７９】
次に、印刷データ生成部１５１は、制御データ１７０ａを生成する。そして、印刷データ生成部１５１は、ステップＳ８２で生成された印刷画像データに、この制御データ１７０ａを付加することで、印刷データ１７０を作成する（Ｓ８３）。なお、印刷データ生成部１５１は、制御データ１７０ａを生成する際には、必要に応じて、ＵＩＦ部１５４を介して、利用者から必要な情報の入力を受け付ける。
【００８０】
印刷データ生成部１５１は、通信部１１９を介して、ステップＳ８３で生成された印刷データ１７０を、ステップＳ８０で検索された、ネットワーク１３０上のプリンタ１１０に送信する処理を行う（Ｓ８４）。なお、ステップＳ８０において複数のプリンタ１１０が発見されている場合には、印刷データ生成部１５１は、何れかのプリンタ１１０を任意に選択することができる。例えば、印刷データ生成部１５１は、検索データに対して最も早く検索応答データを送信してきたプリンタ１１０、又は、検索応答データを参照して、記憶部１１６の空き容量に最も余裕のあるプリンタ１１０等を選択することができる。
【００８１】
一方、ステップＳ８１において、通信部１５５が検索応答データを受信しなかった場合（Ｓ８１：Ｎｏ）には、プリンタ検索部１５２は、ステップＳ８５の処理に進む。ステップＳ８５では、プリンタ検索部１５２は、プリンタ１１０が発見できなかった旨のメッセージを含む印刷不可画面を作成する。そして、プリンタ検索部１５２は、ＵＩＦ部１５４にこの印刷不可画面を送り、ＵＩＦ部１５４に印刷不可画面を表示させる。
【００８２】
以上のように、実施の形態１においては、ＰＣ１５０からプリンタ１１０に対して印刷指示を行う場合には、ＰＣ１５０がプリンタ１１０を検索し、検索されたプリンタ１１０に対して印刷データ１７０を送信する。なお、ＰＣ１５０から検索データを受信したプリンタ１１０では、図９に示されているフローに従って、検索応答データを送信する。
【００８３】
以下、本実施の形態における画像形成システム１００における動作を、シーケンス図を用いて説明する。以下の説明におけるシーケンス図では、図１に示されている、プリンタ１１０Ａ、プリンタ１１０Ｂ及びプリンタ１１０Ｃにより画像形成システム１００が構成されているものとする。なお、これらのプリンタ１１０Ａ、１１０Ｂ、１１０Ｃが接続されているネットワーク１３０には、ＰＣ１５０も接続されているものとする。
プリンタ１１０Ａ、プリンタ１１０Ｂ及びプリンタ１１０Ｃの構成は、図２に示されている構成と同様であるが、以下では、それぞれのプリンタ１１０Ａ、１１０Ｂ、１１０Ｃの構成要素を区別するために、プリンタ１１０Ａの構成要素には「Ａ」の符号を付し、プリンタ１１０Ｂの構成要素には「Ｂ」の符号を付し、プリンタ１１０Ｃの構成要素には「Ｃ」の符号を付して説明する。なお、プリンタ１１０Ａ、プリンタ１１０Ｂ及びプリンタ１１０Ｃのプリンタ名は、それぞれ、「プリンタＡ」、「プリンタＢ」及び「プリンタＣ」である。
【００８４】
図１８は、プリンタ１１０Ａ、１１０Ｂ、１１０Ｃの起動時の処理を示すシーケンス図である。図１８においては、プリンタ１１０Ａ、プリンタ１１０Ｂ及びプリンタ１１０Ｃが、この順番で起動した場合に、どのような動作によりプリンタ１１０の検索、及び、印刷管理テーブル１７１の同期化が行われるのかを説明する。
【００８５】
まず、プリンタ１１０Ａが起動する（Ｓ１００）。次に、プリンタ１１０Ａの検索部１１４Ａが、ネットワーク１３０に接続された他のプリンタ１１０を検索するため検索データ１７３を生成して（Ｓ１０１）、通信部１１９Ａを介して、この検索データ１７３をブロードキャストで送信する処理を行う（Ｓ１０２、Ｓ１０３）。
【００８６】
ここで、プリンタ１１０Ｂ及びプリンタ１１０Ｃは、未だ起動していないため、プリンタ１１０Ａは、他のプリンタ１１０から検索応答データ１７４を受信しない。このため、プリンタ１１０Ａの検索部１１４Ａは、他のプリンタ１１０が発見できなかったことを示す検索結果を、情報管理部１１３Ａに通知する。このような通知を受けた情報管理部１１３Ａは、記憶部１１６Ａに記憶されている印刷管理テーブル１７１を初期化する（Ｓ１０４）。例えば、情報管理部１１３Ａは、印刷管理テーブル１７１に格納されている全ての情報を削除する。この際、情報管理部１１３Ａは、記憶部１１６Ａに記憶されているプリンタリストテーブル１７２も同様に初期化する。
【００８７】
プリンタ１１０Ａは、ネットワーク１３０に接続されているＰＣ１５０から印刷データ１７０を受信する（Ｓ１０５）と、印刷制御部１１２Ａは、受信された印刷データ１７０を記憶部１１６Ａに記憶するとともに、印刷データ１７０に含まれている制御データ１７０ａを情報管理部１１３Ａに与える。情報管理部１１３Ａは、与えられた制御データ１７０ａに基づいて、記憶部１１６Ａに記憶されている印刷管理テーブル１７１を更新する（Ｓ１０６）。ここでは、記憶部１１６Ａに記憶されているプリンタリストテーブル１７２に他のプリンタ１１０の情報が格納されていないため、他のプリンタに更新内容の通知は行われない。
【００８８】
プリンタ１１０Ａの後に、プリンタ１１０Ｂが起動する（Ｓ１０７）。そして、プリンタ１１０Ｂの検索部１１４Ｂが、ネットワーク１３０に接続された他のプリンタ１１０を検索するため検索データ１７３を生成して（Ｓ１０８）、通信部１１９Ｂを介して、検索データ１７３をブロードキャストで送信する処理を行う（Ｓ１０９、Ｓ１１０）。
このとき、プリンタ１１０Ｃは、未だ起動していないため、検索データ１７３への応答は行わない。一方、プリンタ１１０Ａは、既に起動しているため、検索データ１７３を受信する。
【００８９】
そして、プリンタ１１０Ａの検索応答部１１５Ａは、通信部１１９Ａより検索データ１７３を受け取ると、検索データ１７３に含まれているプリンタ名と、検索データ１７３を格納していたＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１１６Ａに記憶されているプリンタリストテーブル１７２に格納する（Ｓ１１１）。ステップＳ１１１により、プリンタ１１０Ａは、プリンタ１１０Ｂのプリンタ名及びＩＰアドレスを取得することができる。
また、検索応答部１１５Ａは、検索応答データ１７４を生成する（Ｓ１１２）。このとき、検索応答部１１５Ａは、検索応答データ１７４に、印刷管理テーブル１７１の内容を含める。そして、検索応答部１１５Ａは、作成された検索応答データ１７４を、通信部１１９Ａを介して、プリンタ１１０Ｂに返信する処理を行う（Ｓ１１３）。
【００９０】
検索応答データ１７４を受信したプリンタ１１０Ｂでは、通信部１１９Ｂから与えられた検索応答データ１７４を、検索部１１４Ｂが、情報管理部１１３Ｂに与える。情報管理部１１３Ｂは、与えられた検索応答データ１７４に含まれている印刷管理テーブル１７１の内容で、記憶部１１６Ｂに記憶されている印刷管理テーブル１７１の内容を置き換えることで、自装置の印刷管理テーブル１７１を更新する（Ｓ１１４）。
また、検索部１１４Ｂは、通信部１１９Ｂから与えられた検索応答データ１７４に含まれているプリンタ名と、検索応答データ１７４を格納していたＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１１６Ｂに記憶されているプリンタリストテーブル１７２に格納する（Ｓ１１５）。ステップＳ１１５により、プリンタ１１０Ｂは、プリンタ１１０Ａのプリンタ名及びＩＰアドレスを取得することができる。
【００９１】
プリンタ１１０Ｂの後に、プリンタ１１０Ｃが起動する（Ｓ１１６）。そして、プリンタ１１０Ｃの検索部１１４Ｃが、ネットワーク１３０に接続された他のプリンタ１１０を検索するため検索データ１７３を生成して（Ｓ１１７）、通信部１１９Ｃを介して、検索データ１７３をブロードキャストで送信する処理を行う（Ｓ１１８、Ｓ１１９）。
このとき、プリンタ１１０Ａ及びプリンタ１１０Ｂは、既に起動しているため、検索データ１７３を受信する。
【００９２】
そして、プリンタ１１０Ａの検索応答部１１５Ａは、通信部１１９Ａより検索データ１７３を受け取ると、検索データ１７３に含まれているプリンタ名と、検索データ１７３を格納していたＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１１６Ａに記憶されているプリンタリストテーブル１７２に格納する（Ｓ１２０）。ステップＳ１２０により、プリンタ１１０Ａは、プリンタ１１０Ｃのプリンタ名及びＩＰアドレスを取得することができる。プリンタ１１０Ａのプリンタリストテーブル１７２には、プリンタ１１０Ｂ及びプリンタ１１０Ｃのプリンタ名及びＩＰアドレスが格納されることになる。
また、検索応答部１１５Ａは、検索応答データ１７４を生成する（Ｓ１２１）。このとき、検索応答部１１５Ａは、検索応答データ１７４に、印刷管理テーブル１７１の内容を含める。そして、検索応答部１１５Ａは、作成された検索応答データ１７４を、通信部１１９Ａを介して、プリンタ１１０Ｃに返信する処理を行う（Ｓ１２２）。
【００９３】
また、プリンタ１１０Ｂの検索応答部１１５Ｂは、通信部１１９Ｂより検索データ１７３を受け取ると、検索データ１７３に含まれているプリンタ名と、検索データ１７３を格納していたＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１１６Ｂに記憶されているプリンタリストテーブル１７２に格納する（Ｓ１２３）。ステップＳ１２３により、プリンタ１１０Ｂは、プリンタ１１０Ｃのプリンタ名及びＩＰアドレスを取得することができる。プリンタ１１０Ｂのプリンタリストテーブル１７２には、プリンタ１１０Ａ
及びプリンタ１１０Ｃのプリンタ名及びＩＰアドレスが格納されることになる。
また、検索応答部１１５Ｂは、検索応答データ１７４を生成する（Ｓ１２４）。このとき、検索応答部１１５Ｂは、検索応答データ１７４に、印刷管理テーブル１７１の内容を含める。そして、検索応答部１１５Ｂは、作成された検索応答データ１７４を、通信部１１９Ｂを介して、プリンタ１１０Ｃに返信する処理を行う（Ｓ１２５）。
【００９４】
検索応答データ１７４を受信したプリンタ１１０Ｃでは、通信部１１９Ｃから与えられた検索応答データ１７４を、検索部１１４Ｃが、情報管理部１１３Ｃに与える。情報管理部１１３Ｃは、与えられた検索応答データ１７４に含まれている印刷管理テーブル１７１の内容で、記憶部１１６Ｃに記憶されている印刷管理テーブル１７１の内容を置き換えることで、自装置の印刷管理テーブル１７１を更新する（Ｓ１２６）。ここでは、プリンタ１１０Ｃは、プリンタ１１０Ａ及びプリンタ１１０Ｂから検索応答データ１７４を受信しているが、情報管理部１１３Ｃは、何れか一方の検索応答データ１７４に基づいて、自装置の印刷管理テーブル１７１を更新すればよい。
また、検索部１１４Ｃは、通信部１１９Ｃから与えられた検索応答データ１７４に含まれているプリンタ名と、検索応答データ１７４を格納していたＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１１６Ｃに記憶されているプリンタリストテーブル１７２に格納する（Ｓ１２７）。ステップＳ１２７により、プリンタ１１０Ｃは、プリンタ１１０Ａ及びプリンタ１１０Ｂのプリンタ名及びＩＰアドレスを取得することができる。
【００９５】
以上のシーケンスにより、プリンタ１１０Ａ、１１０Ｂ、１１０Ｃは、同じ情報を格納した印刷管理テーブル１７１を取得することができるとともに、ネットワーク１３０に接続されている他のプリンタ１１０のプリンタ名及びＩＰアドレスを取得することができる。
【００９６】
図１９は、ＰＣ１５０による印刷時の処理を示すシーケンス図である。本シーケンスでは、ネットワーク１３０において、プリンタ１１０Ａ及びプリンタ１１０Ｂが既に起動済であり、プリンタ１１０Ｃは未だ起動されていないものとして説明を行う。また、図１９のシーケンスの開始時には、プリンタ１１０Ａ、１１０Ｂの記憶部１１６Ａ、１１６Ｂには、図２０（Ａ）に示されている印刷管理テーブル１７１＃１が記憶されているものとする。さらに、プリンタ１１０Ａの記憶部１１６Ａに記憶されているプリンタリストテーブル１７２には、プリンタ１１０Ｂのプリンタ名及びＩＰアドレスが格納されており、プリンタ１１０Ｂの記憶部１１６Ｂに記憶されているプリンタリストテーブル１７２には、プリンタ１１０Ａのプリンタ名及びＩＰアドレスが格納されているものとする。
【００９７】
ＰＣ１５０のプリンタ検索部１５２は、自装置の識別情報であるＰＣ名を含む検索データを生成し（Ｓ１３０）、通信部１５５を介して、ブロードキャストにより、生成された検索データをネットワーク１３０に送信する処理を行う（Ｓ１３１、Ｓ１３２、Ｓ１３３）。
【００９８】
検索データを受信したプリンタ１１０Ｂでは、検索応答部１１５Ｂが、プリンタ１１０Ｂのプリンタ名を含む検索応答データを生成して（Ｓ１３４）、通信部１１９Ｂを介して、生成された検索応答データをＰＣ１５０に返信する（Ｓ１３５）。検索応答データを受信したＰＣでは、プリンタ検索部１５２は、検索応答データからプリンタ名と、検索応答データを格納したＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１５３に記憶させる。
【００９９】
また、検索データを受信したプリンタ１１０Ａでは、検索応答部１１５Ａが、プリンタ１１０Ａのプリンタ名を含む検索応答データを生成して（Ｓ１３６）、通信部１１９Ａを介して、生成された検索応答データをＰＣ１５０に返信する（Ｓ１３７）。検索応答データを受信したＰＣ１５０では、プリンタ検索部１５２が、検索応答データからプリンタ名と、検索応答データを格納したＩＰパケットの送信元のＩＰアドレスとを抽出して、記憶部１５３に記憶させる。
【０１００】
なお、プリンタ１１０Ｃは、未だ起動されていないため、検索データに対する応答を行わない。
【０１０１】
ＰＣ１５０の印刷データ生成部１５１は、印刷データ１７０を生成する（Ｓ１３８）。ここで生成される印刷データ１７０は、認証印刷データであるものとする。このため、印刷データ生成部１５１は、制御データ１７０ａの拡張変数である「Ｃｏｎｆｉｄｅｎｔｉａｌ」の値を「Ｙｅｓ」にする。
印刷データ生成部１５１は、例えば、検索応答データを最初に送信してきたプリンタ１１０Ｂを選択して、記憶部１５３に記憶されているプリンタ１１０ＢのＩＰアドレスを取得する。そして、印刷データ生成部１５１は、通信部１５５を介して、ステップＳ１３８で生成された印刷データ１７０をプリンタ１１０Ｂに送信する処理を行う（Ｓ１３９）。
【０１０２】
印刷データ１７０を受信したプリンタ１１０Ｂでは、印刷制御部１１２Ｂが、受信された印刷データ１７０が認証印刷データであることを確認し、受信された印刷データ１７０から制御データ１７０ａを抽出する（Ｓ１４０）。そして、印刷制御部１１２Ｂは、受信された印刷データ１７０に自装置において一意となる名称を与え、この印刷データ１７０を記憶部１１６Ｂに記憶させる（Ｓ１４１）。
また、印刷制御部１１２Ｂは、ステップＳ１４０で抽出された制御データ１７０ａとともに、印刷管理テーブル１７１の更新指示を情報管理部１１３Ｂに与える（Ｓ１４２）。ここでは、印刷データ１７０が新たに受信されたため、ここでの更新指示は、印刷管理テーブル１７１への追加指示になる。
【０１０３】
更新指示を受けた情報管理部１１３Ｂは、更新データ１７５を生成する（Ｓ１４３）。ここでは、情報管理部１１３Ｂは、例えば、図１３（Ａ）に示されているように、Ｃｏｍｍａｎｄ要素にＡＤＤを格納し、ＰＪＬ要素に印刷制御部１１２Ｂから与えられた制御データ１７０ａを格納し、ＰｒｉｎｔｅｒＮａｍｅ要素に自装置のプリンタ名を格納し、ＦｉｌｅＮａｍｅ要素に印刷制御部１１２Ｂが印刷データ１７０に与えた名称を格納することで、更新データ１７５Ａを生成する。
情報管理部１１３Ｂは、記憶部１１６に記憶されているプリンタリストテーブル１７２から、プリンタ１１０ＡのＩＰアドレスを取得して（Ｓ１４４）、ステップＳ１４３で生成された更新データ１７５Ａを、プリンタ１１０Ａに送信する処理を行う（Ｓ１４５）。
【０１０４】
更新データを受信したプリンタ１１０Ａでは、情報管理部１１３Ａが、記憶部１１６Ａに記憶されている印刷管理テーブル１７１の更新を行う（Ｓ１４６）。ここでは、更新データ１７５Ａは、制御データ１７０ａの追加を指示するものであるため、情報管理部１１３Ａは、印刷管理テーブル１７１に、更新データ１７５Ａに格納されている制御データ１７０ａ、プリンタ名及び名称を有する新たなレコードを追加する。これにより、例えば、図２０（Ａ）に示されている更新前の印刷管理テーブル１７１＃１は、図２０（Ｂ）に示されている更新後の印刷管理テーブル１７１＃２となる。
そして、情報管理部１１３Ａは、通信部１１９Ａを介して、更新データ１７５Ａの送信元であるプリンタ１１０Ｂに更新完了通知を送信する（Ｓ１４７）。
【０１０５】
更新完了通知を受信したプリンタ１１０Ｂでは、情報管理部１１３Ｂが、記憶部１１６Ｂに記憶されている印刷管理テーブル１７１を更新する（Ｓ１４８）。ここでは、情報管理部１１３Ｂは、印刷管理テーブル１７１に、印刷制御部１１２Ｂから与えられた制御データ１７０ａ、自装置のプリンタ名、及び、印刷制御部１１２Ｂが印刷データ１７０に与えた名称を有する新たなレコードを追加する。これにより、プリンタ１１０Ｂにおいても、図２０（Ａ）に示されている更新前の印刷管理テーブル１７１＃１は、図２０（Ｂ）に示されている更新後の印刷管理テーブル１７１＃２となる。
そして、プリンタ１１０Ｂの印刷制御部１１２は、通信部１１９Ｂを介して、印刷データ１７０の送信元であるＰＣ１５０に、印刷データ１７０の受信を完了したことを通知する受信完了通知を送信する処理を行う（Ｓ１４９）。
【０１０６】
以上のシーケンスにより、あるプリンタ１１０で、認証印刷データである印刷データ１７０を受信した場合には、この印刷データ１７０を特定するための制御データ１７０ａが、ネットワーク１３０に接続され、起動中の他のプリンタ１１０に通知される。このため、ネットワーク１３０に接続され、起動中のプリンタ１１０は、印刷データ１７０を特定するための制御データ１７０ａを共有することができる。
【０１０７】
図２１は、プリンタ１１０のＵＩＦ部１１８が、ＰＣ１５０の利用者より認証の指示を受けた際の処理を示すシーケンス図である。本シーケンスでは、ＰＣ１５０の利用者は、プリンタ１１０Ｃにおいて認証を受けて印刷を行うものとする。
【０１０８】
プリンタ１１０ＣのＵＩＦ部１１８Ｃは、ＰＣ１５０の利用者より認証指示の入力を受ける（Ｓ１５０）。
認証処理部１１７Ｃは、利用者の認証を実行する（Ｓ１５１）。例えば、認証処理部１１７Ｃは、ＵＩＦ部１１８Ｃを介して、認証に必要な情報を取得する。ここでは、利用者の認証情報であるＩＤ情報を取得する。そして、認証処理部１１７Ｃは、認証に成功したか否かを判断する。ここでは、認証に成功したものとする。
【０１０９】
認証が成功すると、印刷制御部１１２Ｃは、記憶部１１６Ｃに記憶されている印刷管理テーブル１７１を取得する（Ｓ１５２）。
【０１１０】
そして、印刷制御部１１２Ｃは、ステップＳ１５１で取得されたＩＤ情報と、ステップＳ１５２で取得された印刷管理テーブル１７１とに基づいて、処理対象とする印刷データ１７０を選択するための印刷データ選択画面を生成する（Ｓ１５３）。
印刷制御部１１２Ｃは、この印刷データ選択画面をＵＩＦ部１１８Ｃに送り、ＵＩＦ部１１８Ｃに印刷データ選択画面を表示させる。そして、ＵＩＦ部１１８Ｃは、利用者からの指示の入力を受け付ける。ここでは、ＵＩＦ部１１８Ｃは、印刷指示の入力を受け付けたものとする。
【０１１１】
ＵＩＦ部１１８Ｃから印刷指示を受けた印刷制御部１１２Ｃは、印刷処理を実行する。まず、印刷制御部１１２Ｃは、印刷管理テーブル１７１を参照して、印刷指示の対象となった印刷データ１７０が自装置の記憶部１１６Ｃに記憶されているか否かを確認する。ここでは、印刷データ１７０が自装置の記憶部１１６Ｃに記憶されておらず、プリンタ１１０Ｂの記憶部１１６Ｂに記憶されているものとする。そこで、印刷制御部１１２Ｃは、印刷指示の対象となった印刷データ１７０を取得するため、この印刷データ１７０の名称を含む転送要求データを生成する（Ｓ１５５）。
そして、印刷制御部１１２Ｃは、通信部１１９Ｃを介して、転送要求データをプリンタ１１０Ｂに送信する処理を行う（Ｓ１５６）。なお、送信先のプリンタ１１０の通信アドレスは、記憶部１１６ｃに記憶されているプリンタリストテーブル１７２から取得される。
【０１１２】
転送要求データを受信したプリンタ１１０Ｂでは、印刷制御部１１２Ｂが、転送要求データに含まれている名称に対応する印刷データ１７０を記憶部１１６Ｂから取得する（Ｓ１５７）。なお、印刷制御部１１２Ｂは、印刷データ１７０を取得した場合には、記憶部１１６Ｂから、取得された印刷データ１７０を削除する。
そして、印刷制御部１１２Ｂは、通信部１１９Ｂを介して、転送要求データの応答として、ステップＳ１５７で取得された印刷データ１７０を、プリンタ１１０Ｃに返信する（Ｓ１５８）。
【０１１３】
印刷データ１７０を受信したプリンタ１１０Ｃでは、印刷制御部１１２Ｃが、受信された印刷データ１７０を印刷部１１１Ｃに送り、印刷部１１１Ｃに印刷を行わせる（Ｓ１５９）。これにより、ＰＣ１５０の利用者は、プリンタ１１０Ｃにおいて、印刷物を取得することができる。
【０１１４】
ここで、印刷制御部１１２Ｃは、印刷管理テーブル１７１の更新指示を情報管理部１１３Ｃに与える（Ｓ１６０）。ここでは、印刷データ１７０に基づいて印刷が行われたため、ここでの更新指示は、印刷管理テーブル１７１からの削除指示となる。また、削除されるのは、ステップＳ１５９で印刷対象となった印刷データ１７０である。
【０１１５】
更新指示を受けた情報管理部１１３Ｃは、更新データ１７５を生成する（Ｓ１６１）。ここでは、情報管理部１１３Ｃは、例えば、図１３（Ｂ）に示されているように、Ｃｏｍｍａｎｄ要素にＤＥＬＥＴＥを格納し、ＰｒｉｎｔｅｒＮａｍｅ要素に印刷対象となった印刷データ１７０の保存先のプリンタ名を格納し、ＦｉｌｅＮａｍｅ要素に印刷対象となった印刷データ１７０の名称を格納することで、更新データ１７５Ｂを生成する。
また、情報管理部１１３Ｃは、記憶部１１６Ｃに記憶されているプリンタリストテーブル１７２から、プリンタ１１０Ｂ及びプリンタ１１０ＣのＩＰアドレスを取得して（Ｓ１６２）、ステップＳ１６１で生成された更新データ１７５Ｂを、プリンタ１１０Ａ及びプリンタ１１０Ｂに送信する処理を行う（Ｓ１６３、Ｓ１６４）。
【０１１６】
更新データ１７５Ｂを受信したプリンタ１１０Ｂでは、情報管理部１１３Ｂが、記憶部１１６Ｂに記憶されている印刷管理テーブル１７１の更新を行う（Ｓ１６５）。ここでは、更新データ１７５Ｂは、制御データ１７０ａの削除を指示するものであるため、情報管理部１１３Ｂは、印刷管理テーブル１７１において、更新データ１７５Ｂに含まれているプリンタ名及び名称が、それぞれ保存先欄１７１ｂ及び名称欄１７１ｃに格納されているレコードを特定し、印刷管理テーブル１７１から特定されたレコードを削除する。
そして、情報管理部１１３Ｂは、通信部１１９Ｂを介して、更新データ１７５Ｂの送信元であるプリンタ１１０Ｃに更新完了通知を送信する（Ｓ１６６）。
【０１１７】
また、更新データ１７５Ｂを受信したプリンタ１１０Ａでは、情報管理部１１３Ａが、記憶部１１６Ａに記憶されている印刷管理テーブル１７１の更新を行う（Ｓ１６７）。ここでは、更新データ１７５Ｂは、制御データ１７０ａの削除を指示するものであるため、情報管理部１１３Ａは、印刷管理テーブル１７１において、更新データ１７５Ｂに含まれているプリンタ名及び名称が、それぞれ保存先欄１７１ｂ及び名称欄１７１ｃに格納されているレコードを特定し、印刷管理テーブル１７１から特定されたレコードを削除する。
そして、情報管理部１１３Ａは、通信部１１９Ａを介して、更新データ１７５Ｂの送信元であるプリンタ１１０Ｃに更新完了通知を送信する（Ｓ１６８）。
【０１１８】
更新完了通知を受信したプリンタ１１０Ｃでは、情報管理部１１３Ｃが、記憶部１１６Ｃに記憶されている印刷管理テーブル１７１を更新して、削除を指示された制御データ１７０ａに対応するレコードを削除する（Ｓ１６９）。
【０１１９】
以上のシーケンスにより、ＰＣ１５０の利用者は、印刷データ１７０を送信したプリンタ１１０だけでなく、ネットワーク１３０に接続されている他のプリンタ１１０においても印刷を実行することができる。また、印刷を実行した際にも、印刷対象となった印刷データ１７０が、プリンタ１１０から削除され、削除された情報についても、ネットワーク１３０に接続されている全てのプリンタ１１０で共有される。
【０１２０】
本実施の形態においては、あるプリンタ１１０が何らかの理由でネットワーク１３０から切断されるという異常が発生しても、ＰＣ１５０の利用者は、他のプリンタ１１０で認証を受けることで、印刷物を取得することができる。これは、全てのプリンタ１１０において、印刷管理テーブル１７１が保持され、同期化されているためである。
【０１２１】
実施の形態２．
（構成の説明）
図１に示すように、実施の形態２に係る画像形成システム２００は、複数のプリンタ２１０Ａ、２１０Ｂ、２１０Ｃ、・・・、２１０Ｄ（特に各々を区別する必要がないときは、プリンタ２１０という）を備える。プリンタ２１０は、ネットワーク１３０に接続されている。ネットワーク１３０には、ＰＣ２５０も接続されている。
【０１２２】
図２２は、実施の形態２におけるプリンタ２１０の構成を概略的に示すブロック図である。プリンタ２１０は、印刷部１１１と、印刷制御部１１２と、情報管理部１１３と、検索部１１４と、検索応答部１１５と、記憶部１１６と、認証処理部１１７と、ユーザインタフェース部（以下、ＵＩＦ部という）１１８と、通信部１１９と、動作確認部２２０と、動作確認応答部２２１とを備える。実施の形態２におけるプリンタ２１０は、動作確認部２２０及び動作確認応答部２２１をさらに備える点において、実施の形態１におけるプリンタ１１０と異なっている。
【０１２３】
動作確認部２２０は、予め定められたとき、例えば、定期的に、ネットワーク１３０に接続された他のプリンタ２１０が有効であるか否かを確認する。動作確認部２２０は、例えば、他のプリンタ２１０の電源が切られている場合、他のプリンタ２１０が省電力モード等となり通信機能が停止されている場合、及び、他のプリンタ２１０のネットワーク１３０への接続が切断された場合等には、他のプリンタ２１０が有効ではないと判断する。ここで、動作確認部２２０は、通信部１１９を介して、ネットワーク１３０に接続されている他のプリンタ２１０に対して確認データを送信し、その確認データに対する応答が所定時間内にない場合には、他のプリンタが有効ではないと判断する。なお、確認データは、記憶部１１６に記憶されているプリンタリストテーブル１７２に情報が格納されている全てのプリンタ２１０に送信される。なお、確認データは、図８に示されている検索データ１７３と同様の情報が含まれていてもよい。
【０１２４】
また、動作確認部２２０は、記憶部１１６に記憶されている印刷管理テーブル１７１において、有効ではないと判断されたプリンタ２１０に保存されている印刷データから抽出された制御データを含むレコードを削除する。さらに、動作確認部２２０は、削除されたレコードに基づいて、有効ではないと判断されたプリンタ２１０に保存されている印刷データの再印刷（再処理）の必要があることを通知する印刷データ削除通知データを生成する。そして、動作確認部２２０は、通信部１１９を介して、有効ではないと判断されたプリンタ２１０に保存されている印刷データの送信元であるＰＣ２５０に、この印刷データ削除通知データを送信する処理を行う。
【０１２５】
図２３は、印刷データ削除通知データ２７７を示す概略図である。印刷データ削除通知データ２７７は、Ｃｏｍｍａｎｄ要素と、ＰＪＬ要素と、ＰｒｉｔｅｒＮａｍｅ要素とを有する構造化文書のデータである。
Ｃｏｍｍａｎｄ要素は、印刷データ削除通知であることを示す。
ＰＪＬ要素は、有効ではないと判断されたプリンタ２１０に保存されている印刷データから抽出された制御データを示す。
ＰｒｉｔｅｒＮａｍｅ要素は、有効ではないと判断されたプリンタ２１０のプリンタ名を示す。
【０１２６】
図２２の説明に戻り、動作確認部２２０は、記憶部１１６に記憶されているプリンタリストテーブル１７２から、有効ではないと判断されたプリンタ２１０の情報を削除する。また、動作確認部２２０は、記憶部１１６に記憶されているプリンタリストテーブル１７２から、有効ではないと判断されたプリンタ２１０の情報を削除する指示を示すプリンタ削除通知データを生成する。そして、動作確認部２２０は、このプリンタ削除通知データを、通信部１１９を介して、記憶部１１６に記憶されているプリンタリストテーブル１７２に情報が格納されている全てのプリンタ２１０に送信する処理を行う。
【０１２７】
図２４は、プリンタ削除通知データ２７８を示す概略図である。プリンタ削除通知データ２７８は、Ｃｏｍｍａｎｄ要素と、ＰｒｉｔｅｒＮａｍｅ要素とを有する構造化文書のデータである。
Ｃｏｍｍａｎｄ要素は、プリンタ削除通知であることを示す。
ＰｒｉｔｅｒＮａｍｅ要素は、有効ではないと判断されたプリンタ２１０のプリンタ名を示す。
【０１２８】
さらに、動作確認部２２０は、通信部１１９より、他のプリンタ２１０から送信されたプリンタ削除通知データ２７８を受け取り、記憶部１１６に記憶されているプリンタリストテーブル１７２を更新する処理を行う。例えば、動作確認部２２０は、記憶部１１６に記憶されているプリンタリストテーブル１７２において、プリンタ削除通知データ２７８のＰｒｉｔｅｒＮａｍｅ要素で示されるプリンタ名が格納されているレコードを特定し、特定されたレコードをプリンタリストテーブル１７２から削除する。
【０１２９】
なお、動作確認部２２０は、所定のときに、動作の確認を行うとしているが、このような例に限定されるものではなく、例えば、利用者からの指示に応じて、動作確認を行ってもよく、また、ランダムに決定されるときに動作確認を行ってもよい。
【０１３０】
動作確認応答部２２１は、通信部１１９が確認データを受信した場合に、受信された確認データへの応答である確認応答データを生成する。確認応答データには、少なくとも自装置のプリンタ名が含まれる。そして、動作確認応答部２２１は、通信部１１９を介して、生成された確認応答データを、確認データの送信元に返信する処理を行う。なお、確認応答データは、図８に示されている検索データ１７３と同様の情報が含まれていてもよい。
【０１３１】
図２５は、ＰＣ２５０の構成を概略的に示すブロック図である。ＰＣ２５０は、印刷データ生成部２５１と、プリンタ検索部１５２と、記憶部１５３と、ＵＩＦ部１５４と、通信部１５５と、表示処理部２５６とを備える。実施の形態２におけるＰＣ２５０は、印刷データ生成部２５１での処理の点と、表示処理部２５６がさらに備えられている点とにおいて、実施の形態１におけるＰＣ１５０と異なっている。
【０１３２】
印刷データ生成部２５１は、印刷データ２７０を生成する。例えば、印刷データ生成部２５１は、アプリケーション等を利用して、印刷データ２７０を作成する。
【０１３３】
図２６は、実施の形態２における印刷データ２７０を示す概略図である。印刷データ２７０は、制御データ２７０ａと、実体データ１７０ｂとを有する。実施の形態２における印刷データ２７０は、制御データ２７０ａにおいて、実施の形態１における印刷データ１７０と異なっている。
実施の形態２における制御データ２７０ａは、１３行目に、この印刷データ２７０を生成したＰＣ２５０の通信アドレスであるＩＰアドレスを示す「Ａｄｄｒｅｓｓ」の拡張変数を備える点で、実施の形態１における制御データ１７０ａと異なっている。
【０１３４】
図２５の説明に戻り、表示処理部２５６は、通信部１５５が印刷データ削除通知データ２７７を受信すると、通信部１５５から印刷データ削除通知データ２７７を受け取る。そして、表示処理部２５６は、受け取った印刷データ削除通知データ２７７に基づいて、再印刷画面を生成して、この再印刷画面をＵＩＦ部１５４に与えて、ＵＩＦ部１５４に再印刷画面を表示させる。
【０１３５】
図２７は、再印刷画面２７９を示す概略図である。再印刷画面２７９は、印刷データ削除通知データ２７７に含まれている制御データ２７０ａから抽出された、少なくとも１つ以上の変数の値を表示することで印刷データ２７０を特定し、この印刷データ２７０が削除されたこと、再印刷をする必要があることを示す。図２７に示されている例では、制御データ２７０ａから抽出された「印刷データ２７０を識別するための名称」と「印刷データ２７０の作成日時」が表示されている。
【０１３６】
（動作の説明）
図２８は、プリンタ２１０の動作確認処理を示すフローチャートである。図２８に示されているフローは、予め定められたとき、例えば、周期的に行われる。
【０１３７】
動作確認部２２０は、記憶部１１６に記憶されているプリンタリストテーブル１７２を取得する（Ｓ１７０）。
そして、動作確認部２２０は、取得されたプリンタリストテーブル１７２に情報が格納されている全てのプリンタ２１０に確認データを送信したか否かを確認する（Ｓ１７１）。そして、動作確認部２２０は、全てのプリンタ２１０に確認データを送信した場合（Ｓ１７１：Ｙｅｓ）、言い換えると、確認データを送信していないプリンタ２１０が存在しない場合には、図２８に示されているフロー終了する。一方、動作確認部２２０は、全てのプリンタ２１０には確認データを送信していない場合（Ｓ１７１：Ｎｏ）、言い換えると、確認データを送信していないプリンタ２１０が存在する場合には、ステップＳ１７２の処理に進む。
【０１３８】
ステップＳ１７２では、動作確認部２２０は、確認データを未送信のプリンタ２１０を１つ特定し、通信部１１９を介して、特定されたプリンタ２１０に確認データを送信する。
そして、動作確認部２２０は、所定の時間内に確認データへの応答である確認応答データを通信部１１９が受信したか否かを確認する（Ｓ１７３）。動作確認部２２０は、確認応答データを受信した場合（Ｓ１７３：Ｙｅｓ）には、ステップＳ１７１の処理に戻り、確認応答データを受信しなかった場合（Ｓ１７３：Ｎｏ）には、ステップＳ１７４の処理に進む。
【０１３９】
ステップＳ１７４では、動作確認部２２０は、記憶部１１６に記憶されている印刷管理テーブル１７１を参照して、応答のないプリンタ２１０のプリンタ名が保存先欄１７１ｂに格納されているレコードを特定する。そして、動作確認部２２０は、特定されたレコードの制御データ欄１７１ａに格納されている制御データ２７０ａを取得する。
【０１４０】
動作確認部２２０は、ステップＳ１７４で取得された制御データ２７０ａと、応答のないプリンタ２１０のプリンタ名とを含む印刷削除通知データ２７７を生成する（Ｓ１７５）。ここで、ステップＳ１７４で取得された制御データ２７０ａが複数ある場合には、制御データ２７０ａの「ＣｏｎｐｕｔｅｒＮａｍｅ」の拡張変数の値及び「Ａｄｄｒｅｓｓ」の拡張変数の値の少なくとも何れか一方で特定されるＰＣ２５０毎に、印刷削除通知データ２７７を生成する。
そして、動作確認部２２０は、通信部１１９を介して、印刷削除通知データ２７７に含まれている「Ａｄｄｒｅｓｓ」の拡張変数の値で示されるＩＰアドレスを宛先として、この印刷削除通知データ２７７を送信する処理を行う（Ｓ１７６）。
【０１４１】
動作確認部２２０は、記憶部１１６に記憶されているプリンタリストテーブル１７２において、応答のないプリンタ２１０の情報を削除する（Ｓ１７７）。
また、動作確認部２２０は、ステップＳ１７４で抽出された制御データ２７０ａとともに、印刷管理情報の更新指示を情報管理部１１３に与える。ここでの更新指示は、削除を指示するものである。情報管理部１１３は、制御データ２７０ａ及び印刷管理情報の更新指示を受け取ると、印刷管理テーブル１７１の同期化処理を行う（Ｓ１７８）。ステップＳ１７８の処理については、図１１で示されている処理と同様である。
【０１４２】
動作確認部２２０は、応答のないプリンタ２１０のプリンタ名を含むプリンタ削除通知データ２７８を生成する（Ｓ１７９）。
そして、動作確認部２２０は、生成されたプリンタ削除通知データ２７８を、記憶部１１６に記憶されているプリンタリストテーブル１７２に情報が格納されているプリンタ２１０に送信する（Ｓ１８０）。
【０１４３】
以上のように、実施の形態２におけるプリンタ２１０では、動作確認部２２０は、動作確認の結果、応答がない場合には、その応答がないプリンタ２１０に関する情報を、印刷管理テーブル１７１及びプリンタリストテーブル１７２から削除する。また、動作確認部２２０は、応答のないプリンタ２１０に保存されている印刷データ２７０を生成したＰＣ２５０に再印刷の通知を行う。
【０１４４】
図２９は、プリンタ２１０がプリンタ削除通知データ２７８を受信した場合の処理を示すフローチャートである。
【０１４５】
まず、プリンタ２１０の通信部１１９が、プリンタ削除通知データ２７８を受信する（Ｓ１９０）。
動作確認部２２０は、通信部１１９から、受信されたプリンタ削除通知データ２７８を取得する。そして、動作確認部２２０は、プリンタリストテーブル１７２において、取得されたプリンタ削除通知データ２７８に含まれているプリンタ名が、プリンタ名欄１７２ａに格納されているレコードを特定する。動作確認部２２０は、プリンタリストテーブル１７２から特定されたレコードを削除する（Ｓ１９１）。
【０１４６】
以上により、動作確認部２２０は、他のプリンタ２１０からの通知により、有効に動作していないプリンタ２１０に関する情報をプリンタリストテーブル１７２から削除することができる。
【０１４７】
図３０は、ＰＣ２５０が印刷削除通知データを受信した場合の処理を示すフローチャートである。
【０１４８】
まず、ＰＣ２５０の通信部１５５が、印刷データ削除通知データを受信する（Ｓ２００）。
表示処理部２５６は、通信部１５５から、受信された印刷データ削除通知データ２７７を取得する。そして、表示処理部２５６は、取得された印刷データ削除通知データ２７７に含まれている制御データ２７０ａの値を利用して、再印刷画面を生成して、この再印刷画面をＵＩＦ部１５４に与える。そして、ＵＩＦ部１５４は、図２７に示されているような再印刷画面２７９を表示する（Ｓ２０１）。
【０１４９】
以上のフローにより、ＰＣ２５０は、利用者に対して、再印刷が必要であることを通知することができる。
【０１５０】
以下、本実施の形態における画像形成システム２００における動作を、シーケンス図を用いて説明する。以下の説明におけるシーケンス図では、図１に示されている、プリンタ２１０Ａ、プリンタ２１０Ｂ及びプリンタ２１０Ｃにより画像形成システム２００が構成されているものとする。なお、これらのプリンタ２１０Ａ、２１０Ｂ、２１０Ｃが接続されているネットワーク１３０には、ＰＣ２５０も接続されているものとする。
プリンタ２１０Ａ、プリンタ２１０Ｂ及びプリンタ２１０Ｃの構成は、図２２に示されている構成と同様であるが、以下では、それぞれのプリンタ２１０Ａ、２１０Ｂ、２１０Ｃの構成要素を区別するために、プリンタ２１０Ａの構成要素には「Ａ」の符号を付し、プリンタ２１０Ｂの構成要素には「Ｂ」の符号を付し、プリンタ２１０Ｃの構成要素には「Ｃ」の符号を付して説明する。なお、プリンタ２１０Ａ、プリンタ２１０Ｂ及びプリンタ２１０Ｃのプリンタ名は、それぞれ、「プリンタＡ」、「プリンタＢ」及び「プリンタＣ」である。
【０１５１】
図３１は、実施の形態２における画像形成システム２００における動作を示すシーケンス図である。本シーケンスでは、プリンタ２１０Ａ、プリンタ２１０Ｂ及びプリンタ２１０Ｃは、それぞれ、図３２に示されている印刷管理テーブル１７１＃３を記憶しているものとする。
【０１５２】
プリンタ２１０Ｃが、電源断等により、ネットワーク１３０から切断される（Ｓ２１０）。
【０１５３】
次に、プリンタ２１０Ａの動作確認部２２０Ａは、確認データを生成する（Ｓ２１１）。そして、動作確認部２２０Ａは、記憶部１１６Ａからプリンタリストテーブル１７２を取得して（Ｓ２１２）、通信部１１９Ａを介して、プリンタリストテーブル１７２に情報が格納されているプリンタ２１０宛てに、確認データを送信する処理を行う（Ｓ２１３、Ｓ２１４）。
【０１５４】
確認データを受信したプリンタ２１０Ｂでは、動作確認応答部２２１Ｂが、確認応答データを生成する（Ｓ２１５）。そして、動作確認部２２１Ｂは、生成された確認応答データを、通信部１１９Ｂを介して、確認データの送信元であるプリンタ２１０Ａに返信する処理を行う（Ｓ２１６）。
プリンタ２１０Ｂからの確認応答データを受信したプリンタ２１０Ａでは、動作確認部２２０Ａは、プリンタ２１０Ｂが有効に動作しているものと判断する。
【０１５５】
プリンタ２１０Ｃは、ネットワーク１３０から切断されているため、確認データに対する応答を行わない。このため、プリンタ２１０Ａの動作確認部２２０Ａは、確認データを送信してから所定の期間が経過することにより、プリンタ２１０Ｃが有効に動作していないものと判断する（Ｓ２１７）。
そして、動作確認部２２０Ａは、記憶部１１６Ａに記憶されている印刷管理テーブル１７１＃３において、保存先欄１７１ｂ＃３にプリンタ２１０Ｃのプリンタ名である「プリンタＣ」が格納されているレコードを特定する。動作確認部２２０Ａは、特定されたレコードの制御データ欄１７１ａ＃３に格納されている制御データ２７０ａを取得する（Ｓ２１８）。動作確認部２２０Ａは、取得された制御データ２７０ａと、プリンタ２１０Ｃの名称である「プリンタＣ」とを含む印刷データ削除通知データ２７７を生成する（Ｓ２１９）。そして、動作確認部２２０Ａは、通信部１１９Ａを介して、取得された制御データ２７０ａの拡張変数「Ａｄｄｒｅｓｓ」の値で示される宛先に、生成された印刷データ削除通知データ２７７を送信する処理を行う（Ｓ２２０）。
【０１５６】
印刷データ削除通知データ２７７を受信したＰＣ２５０では、表示処理部２５６が、受信された印刷データ削除通知データ２７７に基づいて、図２７に示すような再印刷画面２７９をＵＩＦ部１５４に表示させる（Ｓ２２１）。
そして、表示処理部２５６は、通信部１５５を介して、表示完了通知を、印刷データ削除通知データ２７７の送信元であるプリンタ２１０Ａに返信する（Ｓ２２２）。
【０１５７】
表示完了通知を受信したプリンタ２１０Ａでは、動作確認部２２０Ａは、記憶部１１６Ａに記憶されているプリンタリストテーブル１７２を更新して、有効ではないと判断されたプリンタ２１０Ｃの情報を削除する（Ｓ２２３）。
【０１５８】
また、動作確認部２２０Ａは、ステップＳ２１８で取得された制御データ２７０ａと、印刷管理テーブル１７１の更新指示とを情報管理部１１３Ａに与える（Ｓ２２４）。ここでの更新指示は、印刷管理テーブル１７１からの削除指示である。
【０１５９】
更新指示を受けた情報管理部１１３Ａは、更新データ１７５を生成する（Ｓ２２４）。例えば、情報管理部１１３Ａは、記憶部１１６に記憶されている印刷管理テーブル１７１から、動作確認部２２０Ａから与えられた制御データ２７０ａに対応するプリンタ名と名称とを取得する。そして、情報管理部１１３Ａは、図１３（Ｂ）に示されているように、Ｃｏｍｍａｎｄ要素にＤＥＬＥＴＥを格納し、ＰｒｉｎｔｅｒＮａｍｅ要素に取得されたプリンタ名を格納し、ＦｉｌｅＮａｍｅ要素に取得された名称を格納することで、更新データ１７５Ｂを生成する（Ｓ２２５）。
また、情報管理部１１３Ａは、記憶部１１６Ａに記憶されているプリンタリストテーブル１７２から、プリンタ２１０ＢのＩＰアドレスを取得して（Ｓ２２６）、ステップＳ２２５で生成された更新データ１７５Ｂを、通信部１１９Ａを介して、プリンタ２１０Ｂに送信する処理を行う（Ｓ２２７）。
【０１６０】
更新データ１７５Ｂを受信したプリンタ２１０Ｂでは、情報管理部１１３Ｂが、記憶部１１６Ｂに記憶されている印刷管理テーブル１７１の更新を行う（Ｓ２２８）。ここでは、更新データ１７５Ｂは、制御データ１７０ａの削除を指示するものであるため、情報管理部１１３Ｂは、印刷管理テーブル１７１において、更新データ１７５Ｂに含まれているプリンタ名及び名称が、それぞれ保存先欄１７１ｂ及び名称欄１７１ｃに格納されているレコードを特定し、印刷管理テーブル１７１から特定されたレコードを削除する。
そして、情報管理部１１３Ｂは、通信部１１９Ｂを介して、更新データ１７５Ｂの送信元であるプリンタ２１０Ａに更新完了通知を送信する（Ｓ２２９）。
【０１６１】
更新完了通知を受信したプリンタ２１０Ａでは、情報管理部１１３Ａが、記憶部１１６Ａに記憶されている印刷管理テーブル１７１を更新して、削除を指示された制御データ１７０ａに対応するレコードを削除する（Ｓ２３０）。
【０１６２】
また、動作確認部２２０Ａは、図２４に示すように、有効ではないと判断されたプリンタ２１０Ｃのプリンタ名を含むプリンタ削除通知データ２７８を生成する（Ｓ２３１）。
そして、動作確認部２２０は、記憶部１１６に記憶されているプリンタリストテーブル１７２からプリンタ２１０ＢのＩＰアドレスを取得して（Ｓ２３２）、生成されたプリンタ削除通知データ２７８を、通信部１１９Ａを介して、プリンタ２１０Ｂに送信する処理を行う（Ｓ２３３）。
【０１６３】
プリンタ削除通知データ２７８を受信したプリンタ２１０Ｂでは、動作確認部２２０Ｂが、記憶部１１６Ｂに記憶されているプリンタリストテーブル１７２において、取得されたプリンタ削除通知データ２７８に含まれているプリンタ名が、プリンタ名欄１７２ａに格納されているレコードを特定する。動作確認部２２０Ｂは、プリンタリストテーブル１７２から特定されたレコードを削除する（Ｓ２３４）。
そして、動作確認部２２０Ｂは、通信部１１９Ｂを介して、プリンタ削除通知データ２７８の送信元であるプリンタ２１０Ａに更新完了通知を送信する処理を行う（Ｓ２３５）。
【０１６４】
以上のように、実施の形態２におけるプリンタ２１０は、ネットワーク１３０に接続されている他のプリンタ２１０の異常を検知して、異常の発生したプリンタ２１０の情報をネットワーク１３０に接続されているプリンタ２１０間で共有することができる。また、異常の発生したプリンタ２１０に印刷データを保存させたＰＣ２５０には、印刷されない印刷データの情報が通知されるため、ＰＣ２５０の利用者は、別のプリンタ２１０に再印刷を要求する等、利用者の利便性が高くなる。
【０１６５】
実施の形態３．
（構成の説明）
図１に示すように、実施の形態３に係る画像形成システム３００は、複数のプリンタ３１０Ａ、３１０Ｂ、３１０Ｃ、・・・、３１０Ｄ（特に各々を区別する必要がないときは、プリンタ３１０という）を備える。プリンタ３１０は、ネットワーク１３０に接続されている。ネットワーク１３０には、ＰＣ３５０も接続されている。
【０１６６】
図３３は、プリンタ３１０の構成を概略的に示すブロック図である。プリンタ３１０は、印刷部１１１と、印刷制御部３１２と、情報管理部３１３と、検索部３１４と、検索応答部３１５と、記憶部３１６と、認証処理部１１７と、ＵＩＦ部１１８と、通信部１１９とを備える。実施の形態３におけるプリンタ３１０は、印刷制御部３１２、情報管理部３１３、検索部３１４、検索応答部３１５及び記憶部３１６において、実施の形態１と異なっている。
【０１６７】
図３４は、実施の形態３における印刷データ３７０を示す概略図である。印刷データ３７０は、制御データ３７０ａと、実体データ１７０ｂとを有する。実施の形態３における印刷データ３７０は、制御データ３７０ａにおいて、実施の形態１における印刷データ１７０と異なっている。
実施の形態３における制御データ３７０ａは、１３行目に、この印刷データ３７０を生成した利用者の認証情報を示す「ＡｕｔｈｅｎｔｉｃａｔｉｏｎＤａｔａ」の拡張変数を備え、さらに、１４行目に、この印刷データ３７０を生成したＰＣ３５０の通信アドレスであるＩＰアドレスを示す「Ａｄｄｒｅｓｓ」の拡張変数を備える点で、実施の形態１における制御データ１７０ａと異なっている。
【０１６８】
図３３の説明に戻り、印刷制御部３１２は、印刷データ３７０を管理する。また、印刷制御部３１２は、印刷部１１１を制御して、印刷する処理を実行する。例えば、印刷制御部３１２は、通信部１１９が受信した印刷データ３７０を受け取る。印刷制御部３１２は、取得された印刷データ３７０の制御データ３７０ａを参照して、その印刷データ３７０をすぐに印刷するべきか否かを判断する。印刷制御部３１２は、印刷データ３７０をすぐに印刷すべきと判断した場合には、この印刷データ３７０を印刷部１１１に渡して、印刷させる。一方、印刷制御部３１２は、印刷データ３７０をすぐに印刷すべきではないと判断した場合には、この印刷データ３７０を記憶部３１６に記憶させる。ここで、印刷制御部３１２は、印刷データ３７０を記憶させる際に、その印刷データ３７０を識別するための識別情報として、印刷データ３７０の名称を付与する。この名称は、自装置であるプリンタ３１０内で重複しないように付与される。例えば、この名称は、ファイル名として付与される。
また、印刷制御部３１２は、印刷データ３７０を記憶部３１６に記憶させた際に、印刷データ３７０に書誌データが添付されている場合には、この書誌データに、印刷データ３７０の保存先を特定する保存先情報及び印刷データ３７０の名称を付加して個別管理情報を生成し、この個別管理情報を記憶部３１６に記憶されている印刷管理情報に格納する処理を行う。さらに、印刷制御部３１２は、印刷データ３７０を記憶部３１６に記憶させた際に、印刷データ３７０に書誌データが添付されていない場合には、印刷データ３７０の制御データ３７０ａから書誌データを生成するとともに、生成された書誌データに印刷データ３７０の保存先を特定する保存先情報及び印刷データ３７０の名称を付加して個別管理情報を生成し、この個別管理情報を記憶部３１６に記憶されている印刷管理情報に格納する処理を行う。
さらに、印刷制御部３１２は、認証処理部１１７で認証が行われた際に、認証処理部１１７から認証情報を受け取り、この認証情報に対応する印刷データ３７０を印刷する処理を行う。ここで、印刷制御部３１２は、認証情報に対応する印刷データ３７０が、ネットワーク１３０に接続されている他のプリンタ３１０に保存されている場合には、この他のプリンタ３７０から印刷データ３７０の転送を受ける。
なお、印刷制御部３１２は、通信部１１９を介して、ネットワーク１３０に接続されている他のプリンタ３１０から印刷データ３７０の転送要求を受けた場合には、記憶部３１６に記憶されている印刷データ３７０を読み出して、この他のプリンタ３１０に転送する処理を行う。
【０１６９】
情報管理部３１３は、記憶部３１６に記憶されている印刷管理情報を管理する処理を行う。印刷管理情報は、記憶部３１６に記憶されている印刷データ３７０を管理するための情報である。印刷管理情報は、各々の印刷データ３７０を特定するための特定情報と、当該特定情報で特定される印刷データ３７０の保存先を特定する保存先情報とを含む。
【０１７０】
図３５は、印刷管理情報としての印刷管理テーブル３７１を示す概略図である。印刷管理テーブル３７１は、Ｎｏ欄３７１ａと、文書名欄３７１ｂと、作成日時欄３７１ｃと、作成者名欄３７１ｄと、認証情報欄３７１ｅと、ページ数欄３７１ｆと、アドレス欄３７１ｇと、名称欄３７１ｈと、保存先欄３７１ｉと、パス欄３７１ｊとを有する。
Ｎｏ欄３７１ａは、印刷管理テーブル３７１の各々のレコードを識別するための識別情報である識別番号を格納する。
文書名欄３７１ｂは、印刷データ３７０の制御データ３７０ａの「ＤｏｃｕｍｅｎｔＮａｍｅ」の拡張変数の値を格納する。
作成日時欄３７１ｃは、印刷データ３７０の制御データ３７０ａの「Ｄａｔａ」の拡張変数の値を格納する。
作成者名欄３７１ｄは、印刷データ３７０の制御データ３７０ａの「ＵｓｅｒＮａｍｅ」の拡張変数の値を格納する。
認証情報欄３７１ｅは、印刷データ３７０の制御データ３７０ａの「ＡｕｔｈｅｎｔｉｃａｔｉｏｎＤａｔａ」の拡張変数の値を格納する。
ページ数欄３７１ｆは、印刷データ３７０の制御データ３７０ａの「Ｐａｇｅ」の拡張変数の値を格納する。
アドレス欄３７１ｇは、印刷データ３７０の制御データ３７０ａの「Ａｄｄｒｅｓｓ」の拡張変数の値を格納する。
名称欄３７１ｈは、印刷データ３７０を記憶部３１６に記憶する際に、印刷制御部３１２がこの印刷データ３７０に与えた名称を格納する。
保存先欄３７１ｉは、印刷データ３７０が保存されている装置を識別する為の識別情報、例えば、プリンタ名又はＰＣ名を格納する。
パス欄３７１ｊは、装置内における印刷データ３７０の記憶先を示すパスを格納する。
なお、図３５に示されている例では、文書名欄３７１ｂ、作成日時欄３７１ｃ、作成者名欄３７１ｄ、認証情報欄３７１ｅ、ページ数欄３７１ｆ、アドレス欄３７１ｇ及び名称欄３７１ｈに格納される情報が特定情報であり、保存先欄３７１ｉ及びパス欄３７１ｊに格納される情報が保存先情報となる。
【０１７１】
図３３の説明に戻り、情報管理部３１３は、ネットワーク１３０に接続された他のプリンタ３１０との間で、記憶部３１６に記憶されている印刷管理テーブル３７１を同期化する処理を行う。例えば、情報管理部３１３は、印刷管理テーブル３７１の内容に変更が加えられる際には、ネットワーク１３０に接続された他のプリンタ３１０に記憶されている印刷管理テーブル３７１に対しても、同様の変更を行わせることで、同期化を行う。この同期化は、情報管理部３１３が、記憶部３１６に記憶されているプリンタリストに基づいて、変更後の内容を通知することにより行う。このとき、情報管理部３１３は、他のプリンタ３１０が保存している印刷管理テーブル３７１に対して、別の変更が行われないように、他のプリンタ３１０の記憶部３１６に記憶されている印刷管理テーブル３７１に対して、別の変更が行われないようにロックをかける。印刷管理テーブル３７１の変更がロックされると、情報管理部３１３は、ロックを指示したプリンタ３１０からの指示に基づく変更しか受け付けない。情報管理部３１３は、同期化が完了したら、ロックを解除する。
なお、複数のプリンタ３１０が、同時にロックを行おうとした場合、予め定められた優先順位に基づき、優先順位の高いプリンタ３１０からのロックが優先される。ここで、優先順位は、ネットワーク１３０に接続されているプリンタ３１０で重複した順位とならないものであれば、どのような方法で決定されてもよい。例えば、プリンタ３１０のＩＰアドレスを１２桁の数字と見なして、その数字が小さいものから順位が高くなるように決めてもよい。具体的には、プリンタ３１０のＩＰアドレスが「１９２．１６８．０．１」である場合には、「１９２１６８０００００１」の数字と見なして、この数字の大小で順位を定めればよい。なお、この優先順位は、例えば、プリンタ３１０の利用者によって、予め設定されていてもよい。
なお、印刷管理テーブル３７１を参照する場合には、ロックの必要はない。但し、ロックが行われている場合、ロックが解除されるまで参照処理は、一時的に停止される。
【０１７２】
検索部３１４は、ネットワーク１３０に接続されている他のプリンタ３１０を検索する。例えば、検索部３１４は、通信部１１９を介して、検索データをマルチキャストで送信する処理を行い、通信部１１９が、この検索データに対する検索応答データを受信するか否かにより検索を実行する。また、検索部３１４は、検索データに、自装置のプリンタ名、能力情報及び消耗品状態情報等を含めることが望ましい。
【０１７３】
図３６は、プリンタリストとしてのプリンタリストテーブル３７２の概略図である。プリンタリストテーブル３７２は、Ｎｏ欄３７２ａと、ＩＰアドレス欄３７２ｂと、プリンタ名欄３７２ｃと、動作確認の要否欄３７２ｄと、機種名欄３７２ｅと、最大用紙サイズ欄３７２ｆと、トナー残量欄３７２ｇとを有する。
Ｎｏ欄３７２ａは、各々の行を識別するための識別番号を格納する。
ＩＰアドレス欄３７２ｂは、検索データ又は検索応答データの送信元である他のプリンタ３１０の通信アドレスであるＩＰアドレスを格納する。
プリンタ名欄３７２ｃは、ＩＰアドレス欄３７２ｂに格納されたＩＰアドレスを有する他のプリンタ３１０の識別情報であるプリンタ名を格納する。ここで、本実施の形態においては、プリンタ３１０の名称に、プリンタ（画像形成装置）であることを示す情報が含まれているものとする。図３６の例では、「プリンタ」の文字列が含まれている。
動作確認の要否欄３７２ｄは、ＩＰアドレス欄３７２ｂに格納されたＩＰアドレスを有する他のプリンタ３１０の動作確認を行う必要があるか否かを示す動作確認情報を格納する。本実施の形態においては、動作確認情報は、「○」であれば動作確認を行う必要があり、「×」であれば動作確認を行う必要がないことを示す。
機種名欄３７２ｅは、ＩＰアドレス欄３７２ｂに格納されたＩＰアドレスを有する他のプリンタ３１０の機種を識別するための機種名を格納する。
最大用紙サイズ欄３７２ｆは、ＩＰアドレス欄３７２ｂに格納されたＩＰアドレスを有する他のプリンタ３１０で印刷することのできる最大用紙サイズを格納する。
トナー残量欄３７２ｇは、ＩＰアドレス欄３７２ｂに格納されたＩＰアドレスを有する他のプリンタ３１０のトナー残量を格納する。ここでは、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロー）及びＫ（ブラック）の各色のトナーの残量が格納されている。
なお、図３６に示されているプリンタリストテーブル３７２では、他のプリンタ３１０の能力情報は、最大用紙サイズであり、その消耗品状態情報は、トナー残量である。なお、能力情報は、カラー印刷に対応しているか否か、及び、解像度の少なくとも何れか一方であってもよく、これらが含まれていてもよい。さらに、消耗品状態情報は、用紙の残量、及び、感光ドラムの寿命の少なくとも何れか一方であってもよく、これらが含まれていてもよい。さらに、プリンタリストテーブル３７２は、他のプリンタ３１０の状態、例えば、障害が生じている等の状態を示すステータス情報を格納する欄をさらに有してもよい。
【０１７４】
検索部３１４は、通信部１１９が検索データに対する検索応答データを受信すると、この検索応答データから、他のプリンタ３１０に関する情報を抽出し、抽出された情報をプリンタリストテーブル３７２に格納する。
【０１７５】
図３３の説明に戻り、検索応答部３１５は、通信部１１９が、ネットワーク１３０に接続された他のプリンタ３１０及びＰＣ３５０からの検索データを受信した場合に、この検索データに応答するための検索応答データを生成する。そして、検索応答部３１５は、通信部１１９を介して、生成された検索応答データを、検索データの送信元に送信する処理を行う。ここで、本実施の形態においては、検索応答部３１５は、検索応答データに、自装置のプリンタ名、能力情報及び消耗品状態情報等を含める。
また、検索応答部３１５は、通信部１１９が検索データを受信すると、この検索データに含まれている情報を抽出して、抽出された情報をプリンタリストテーブル３７２に格納する。
【０１７６】
記憶部３１６は、プリンタ３１０での処理に必要な情報を記憶する。例えば、記憶部３１６は、印刷データ３７０、印刷管理テーブル３７１及びプリンタリストテーブル３７２を記憶する。
【０１７７】
図３７は、ＰＣ３５０の構成を概略的に示すブロック図である。ＰＣ３５０は、印刷データ生成部３５１と、プリンタ検索部１５２と、記憶部１５３と、ＵＩＦ部１５４と、通信部１５５とを備える。実施の形態３におけるＰＣ３５０は、印刷データ生成部３５１での処理において、実施の形態１におけるＰＣ１５０と異なっている。
【０１７８】
印刷データ生成部３５１は、印刷データ３７０を作成する。例えば、印刷データ生成部３５１は、アプリケーション等を利用して、印刷データ３７０を作成する。印刷データ３７０には、図３４に示されているような制御データ３７０ａが含まれている。制御データ３７０ａは、利用者からの指示又は選択により決定されるものと、利用者の指示及び選択によらずに決定されるものがある。
また、印刷データ生成部３５１は、場合により、印刷データ３７０の制御データ３７０ａから書誌データを生成し、生成された書誌データを印刷データ３７０に添付する。ここで、書誌データは、印刷データ３７０の制御データ３７０ａに含まれている拡張変数の値を少なくとも１つ含むデータである。例えば、本実施の形態においては、書誌データは、印刷データ３７０の制御データ３７０ａの「ＤｏｃｕｍｅｎｔＮａｍｅ」の拡張変数の値と、「Ｄａｔａ」の拡張変数の値と、「ＵｓｅｒＮａｍｅ」の拡張変数の値と、「ＡｕｔｈｅｎｔｉｃａｔｉｏｎＤａｔａ」の拡張変数の値と、「Ｐａｇｅ」の拡張変数の値とを含む。
なお、印刷データ生成部３５１は、例えば、ＵＩＦ部１５４がＰＣ１５０の利用者から書誌データを添付する指示の入力を受け付けた場合等に、印刷データ３７０に書誌データを添付する。
さらに、印刷データ生成部３５１は、通信部１５５を介して、作成された印刷データ３７０を、プリンタ検索部１５２で検索されたプリンタ３１０に送信する処理を行う。
【０１７９】
（動作の説明）
図３８は、実施の形態３におけるＰＣ３５０が印刷データ３７０を作成し、送信する処理を示すフローチャートである。図３８のフローは、例えば、利用者が、ＵＩＦ部１５４を介して、ドキュメントの印刷を指示した場合に開始される。
【０１８０】
印刷データ生成部３５１は、印刷指示の対象となったドキュメントから印刷データを生成する（Ｓ２４０）。
【０１８１】
次に、印刷データ生成部３５１は、印刷データに認証情報を追加するか否かを判断する（Ｓ２４１）。例えば、印刷データ生成部３５１は、ＰＣ３５０の利用者が、ＵＩＦ部１５４を介して、すぐに印刷することを選択した場合には、認証情報を追加しないものと判断し、すぐには印刷しないことを選択した場合には、認証情報を追加するものと判断する。そして、印刷データ生成部３５１は、認証情報を追加すると判断した場合（Ｓ２４１：Ｙｅｓ）には、ステップＳ２４２の処理に進み、認証情報を追加しないと判断した場合（Ｓ２４１：Ｎｏ）には、ステップＳ２４３の処理に進む。
【０１８２】
ステップＳ２４２では、印刷データ生成部３５１は、ステップＳ２４０で生成された印刷データに認証情報を追加する。例えば、印刷データ生成部３５１は、図３４に示されている印刷データ３７０において、１０行目の「Ｃｏｎｆｉｄｅｎｔｉａｌ」の拡張変数の値を「Ｙｅｓ」とし、１３行目の「ＡｕｔｈｅｎｔｉｃａｔｉｏｎＤａｔａ」の拡張変数の値に利用者の認証情報を追加する。なお、印刷データ生成部３５１は、必要に応じて、例えば、ＵＩＦ部１５４を介して、利用者からの認証情報の入力を受け付ける。
【０１８３】
ステップ２４３では、印刷データ生成部３５１は、印刷データに書誌データを添付するか否かを判断する。例えば、印刷データ生成部３５１は、ＰＣ３５０の利用者が、ＵＩＦ部１５４を介して、書誌データを添付することを選択したか否かで、ステップＳ２４３での判断を実行する。そして、印刷データ生成部３５１は、書誌データを添付すると判断した場合（Ｓ２４３：Ｙｅｓ）には、ステップＳ２４４の処理に進み、書誌データを添付しないと判断した場合（Ｓ２４３：Ｎｏ）には、ステップＳ２４５の処理に進む。
【０１８４】
ステップＳ２４４では、印刷データ生成部３５１は、書誌データを生成して、ステップＳ２４０で生成された印刷データに添付する。
【０１８５】
ステップＳ２４５では、印刷データ生成部３５１は、通信部１５５を介して、印刷データ３７０を、書誌データが添付されている場合には書誌データとともに、プリンタ３１０に送信する処理を行う。なお、送信先となるプリンタ３１０は、ネットワーク１３０に接続されたいずれかのプリンタ３１０である。ここで、送信先となるプリンタ３１０は、予めＰＣ３５０に設定されていてもよい。例えば、ＰＣ３５０の利用者又は画像形成システム３００の管理者は、ＵＩＦ部１５４を介して、ＰＣ３５０に送信先となるプリンタ３１０を設定することができる。
【０１８６】
以上のように、実施の形態３におけるＰＣ３５０は、印刷データ３７０を生成して、プリンタ３１０に送信することができる。
【０１８７】
図３９は、実施の形態３におけるプリンタ３１０が印刷データ３７０を受信した場合の処理を示すフローチャートである。このフローは、プリンタ３１０の印刷制御部３１２が、通信部１１９を介して、印刷データ３７０を取得した場合に開始される。
【０１８８】
印刷制御部３１２は、通信部１１９から受け取った印刷データ３７０に認証情報が含まれているか否かを確認する（Ｓ２５０）。そして、印刷制御部３１２は、認証情報が含まれている場合（Ｓ２５０：Ｙｅｓ）には、ステップＳ２５２の処理に進み、認証情報が含まれていない場合（ステップＳ２５０：Ｎｏ）には、ステップＳ２５１の処理に進む。
【０１８９】
ステップＳ２５１では、印刷制御部３１２は、受け取った印刷データ３７０を印刷部１１１に送り、受け取った印刷データ３７０に基づいて、印刷部１１１に印刷を行わせる。
【０１９０】
一方、ステップＳ２５２では、印刷制御部３１２は、印刷データ３７０に書誌データが添付されているか否かを判断する。そして、印刷制御部３１２は、書誌データが添付されている場合（Ｓ２５２：Ｙｅｓ）には、ステップＳ２５４の処理に進み、書誌データが添付されていない場合（Ｓ２５２：Ｎｏ）には、ステップＳ２５３の処理に進む。
【０１９１】
ステップＳ２５３では、印刷制御部３１２は、印刷データ３７０に含まれている制御データ３７０ａの拡張変数の値から、書誌データを生成する（Ｓ２５３）。この書誌データは、少なくとも印刷データ３７０を特定することができるものとする。
【０１９２】
そして、ステップＳ２５４では、印刷制御部３１２は、書誌データに、印刷データ３７０の保存先を特定する情報と、印刷データ３７０の名称と、を追加することで個別管理情報を生成する（Ｓ２５４）。
【０１９３】
そして、印刷制御部３１２は、受け取った印刷データ３７０を記憶部３１６に記憶させるとともに、記憶部３１６に記憶されている印刷管理テーブル３７１に新たなレコードを追加し、このレコードにステップＳ２５４で生成された個別管理情報を格納する（Ｓ２５５）。
【０１９４】
以上のように、実施の形態３におけるプリンタ３１０は、認証情報が付加された印刷データ３７０を受信した場合には、この印刷データ３７０を記憶部３１６に記憶させるとともに、この印刷データ３７０を管理するための個別管理情報を印刷管理テーブル３７１に格納することができる。
【０１９５】
図４０は、情報管理部３１３が行う同期化処理を示すフローチャートである。ここで、本実施の形態における同期化は、変更後の印刷管理テーブル３７１の内容を他のプリンタ３１０に送信し、保存させることで、記憶部３１６に記憶されている印刷管理テーブル３７１の内容を同一化することである。図４０に示されているフローは、記憶部３１６に記憶されている印刷管理テーブル３７１の内容に変更が加えられようとする際に開始される。
【０１９６】
情報管理部３１３は、記憶部３１６に記憶されているプリンタリストテーブル３７２を取得する（Ｓ２６０）。
情報管理部３１３は、取得されたプリンタリストテーブル３７２を参照することで、ネットワークに接続された他のプリンタ３１０が存在するか否かを判断する（Ｓ２６１）。そして、情報管理部３１３は、他のプリンタ３１０が存在する場合（Ｓ２６１：Ｙｅｓ）には、ステップＳ２６２の処理に進み、他のプリンタ３１０が存在しない場合（Ｓ２６１：Ｎｏ）には、ステップＳ２７１の処理に進む。
【０１９７】
ステップＳ２６２では、情報管理部３１３は、変更が加えられようとしている印刷管理テーブル３７１の変更が、他のプリンタ３１０の指示によりロックされているか否かを判断する。そして、情報管理部３１３は、ロックされている場合（Ｓ２６２：Ｙｅｓ）には、ステップＳ２６３の処理に進み、ロックされていない場合（Ｓ２６２：Ｎｏ）には、ステップＳ２６４の処理に進む。
【０１９８】
ステップＳ２６３では、情報管理部３１３は、他のプリンタ３１０からロックの解除が指示されるまで待機する。そして、ロックの解除が指示された場合には、ステップＳ２６２の処理に戻る。
【０１９９】
ステップＳ２６４では、情報管理部３１３は、通信部１１９を介して、ネットワーク１３０に接続されている他のプリンタ３１０に、印刷管理テーブル３７１の変更を停止させるためのロック要求メッセージを送信する処理を行う。送信先は、ステップＳ２６０で取得されたプリンタリストテーブル３７２に情報が登録されているプリンタ３１０である。
そして、情報管理部３１３は、ロック要求メッセージを送信した全てのプリンタ３１０から応答があるまで待機する（Ｓ２６５）。情報管理部３１３は、全てのプリンタ３１０から応答があった場合には、ステップＳ２６６の処理に進む。
【０２００】
ステップＳ２６６では、情報管理部３１３は、ロック要求メッセージを送信した全てのプリンタ３１０でロックが成功したか否かを判断する。例えば、情報管理部３１３は、ロック要求メッセージを送信した全てのプリンタ３１０からの応答が、全て成功応答であった場合には、全てのプリンタ３１０でロックが成功したと判断する。一方、情報管理部３１３は、ロック要求メッセージを送信したプリンタ３１０からの応答に、失敗応答が含まれている場合には、全てのプリンタ３１０でのロックには成功しなかったと判断する。そして、情報管理部３１３は、全てのプリンタ３１０でロックが成功した場合（Ｓ２６６：Ｙｅｓ）には、ステップＳ２６８の処理に進み、全てのプリンタ３１０でのロックには成功しなかった場合（Ｓ２６６：Ｎｏ）には、ステップＳ２６７の処理に進む。
【０２０１】
ステップＳ２６７では、情報管理部３１３は、通信部１１９を介して、ステップＳ２６５でロックの成功応答を送信してきたプリンタ３１０に、ロックの解除を指示するロック解除メッセージを送信する処理を行う。なお、情報管理部３１３は、ステップＳ２６５でロックの失敗応答を送信してきたプリンタ３１０には、ロック解除メッセージを送信する処理を行わない。そして、情報管理部３１３は、ロック解除メッセージを送信した全てのプリンタ３１０からの受信応答があった場合には、ステップＳ２６２の処理に戻る。
【０２０２】
ステップＳ２６８では、情報管理部３１３は、記憶部３１６に記憶されている印刷管理テーブル３７１を更新する。
そして、情報管理部３１３は、更新後の印刷管理テーブル３７１に格納されている内容を全て含む更新データを生成し、通信部１１９を介して、この更新データを、ネットワーク１３０に接続されている他のプリンタ３１０に送信する処理を行う（Ｓ２６９）。ここで、送信先は、ステップＳ２６４でロック要求メッセージを送信した他のプリンタ３１０である。
そして、情報管理部３１３は、通信部１１９を介して、ロック解除メッセージを送信する（Ｓ２７０）。ここで、送信先は、ステップＳ２６４でロック要求メッセージを送信した他のプリンタ３１０である。
【０２０３】
一方、ステップＳ２６１において、他のプリンタ３１０が存在しないと判断された場合（Ｓ２６１：Ｎｏ）には、ステップＳ２７１の処理に進む。ステップＳ２７１では、情報管理部３１３は、記憶部３１６に記憶されている印刷管理テーブル３７１を更新する。
【０２０４】
以上のように、実施の形態３におけるプリンタ３１０では、印刷管理テーブル３７１に変更が加えられる際に、他のプリンタ３１０に記憶されている印刷管理テーブル３７１の変更をロックしてから、自装置の印刷管理テーブル３７１の内容を変更し、変更後の内容を他のプリンタ３１０に通知する。このため、実施の形態３におけるプリンタ３１０では、自装置の印刷管理テーブル３７１を変更している間に、他のプリンタ３１０において、内容が変更されてしまい、これらの印刷管理テーブル３７１の内容が異なるものとなってしまうことを防止することができる。
【０２０５】
なお、図４０に示されているフローチャートでは、情報管理部３１３は、ステップＳ２６９において、更新後の印刷管理テーブル３７１の内容の全てを更新データとして、他のプリンタ３１０に送信しているが、このような例に限定されるものではない。例えば、情報管理部３１３は、ステップＳ２６８で、印刷管理テーブル３７１において更新された内容だけを更新データとして、他のプリンタ３１０に送信してもよい。
【０２０６】
図４１は、プリンタ３１０がロック要求メッセージを受信した際の処理を示すフローチャートである。本フローは、プリンタ３１０の情報管理部３１３が、通信部１１９を介して、他のプリンタ３１０から送信されたロック要求メッセージを取得した際に開始される。
【０２０７】
情報管理部３１３は、他のプリンタ３１０からのロック要求メッセージを受け取った際に、通信部１１９を介して、自装置から他のプリンタ３１０にロック要求メッセージを送信し、他のプリンタ３１０からその応答を待っている状態であるか否かを確認する（Ｓ２８０）。そして、情報管理部３１３は、他のプリンタ３１０から応答を待っている状態である場合（Ｓ２８０：Ｙｅｓ）には、ステップＳ２８１の処理に進み、他のプリンタ３１０からその応答を待っている状態ではない場合（Ｓ２８０：Ｎｏ）には、ステップＳ２８４の処理に進む。
【０２０８】
ステップＳ２８１では、情報管理部３１３は、自装置の優先順位が、情報管理部３１３が取得したロック要求メッセージの送信元である他のプリンタ３１０の優先順位よりも高いか否かを確認する。そして、情報管理部３１３は、自装置の優先順位が高い場合（Ｓ２８１：Ｙｅｓ）には、ステップＳ２８２の処理に進み、自装置の優先順位が低い場合（Ｓ２８１：Ｎｏ）には、ステップＳ２８４の処理に進む。
【０２０９】
ステップＳ２８２では、情報管理部３１３は、自装置が送信したロック要求メッセージに対する全ての応答があるまで、待機する。
そして、情報管理部３１３は、自装置が送信したロック要求メッセージに対する全ての応答があった場合には、通信部１１９を介して、他のプリンタ３１０からのロック要求メッセージに対して失敗したことを応答する失敗応答を、このロック要求メッセージの送信元である他のプリンタ３１０に送信する処理を行う（Ｓ２８３）。
【０２１０】
一方、ステップＳ２８４では、情報管理部３１３は、自装置において、印刷管理テーブル３７１の変更を停止することで、ロックを実施する。ロックが実施されると、情報管理部３１３は、ロックを指示したプリンタ３１０からの更新データに基づいて処理する場合を除いて、印刷管理テーブル３７１に対する処理を行うことができない。このため、情報管理部３１３は、ロック要求メッセージを送信してきたプリンタ３１０を特定する情報（例えば、ＩＰアドレス等）を記憶部３１６に記憶しておく。なお、情報管理部３１３は、既にロックを実施している場合でも、他のプリンタ３１０からロック要求メッセージを受け取った場合には、さらにロックを実施することができる。
そして、情報管理部３１３は、通信部１１９を介して、他のプリンタ３１０からのロック要求メッセージに対して成功したことを応答する成功応答を、このロック要求メッセージの送信元である他のプリンタ３１０に送信する処理を行う（Ｓ２８５）。
【０２１１】
以上のように、実施の形態３における情報管理部３１３は、ロック要求メッセージを受け取ると、自装置がロック要求中ではない場合には、自装置のロックを実施する。一方、自装置もロックの要求中である場合は、情報管理部３１３は、優先順位に基づき、ロック要求に応じるか否かを判断する。なお、情報管理部３１３は、図４１に示されているフローを開始する前に、ロック要求メッセージの送信元であるプリンタ３１０の情報が、プリンタリストテーブル３７２に格納されているか否かを確認し、格納されていない場合には、図４１に示されているフローを終了してもよい。
【０２１２】
また、図４１に示されているフローでは、情報管理部３１３は、自装置が送信したロック要求メッセージに対する全ての応答があるまで待機してから（Ｓ２８２）、失敗応答を送信する処理を行っている（Ｓ２８３）が、この例に限定されない。例えば、情報管理部３１３は、自装置が送信したロック要求メッセージに対する全ての応答がある前に、失敗応答を送信する処理を行ってもよい。
【０２１３】
図４２は、プリンタ３１０がロック解除メッセージを受信した場合の処理を示すフローチャートである。本フローは、情報管理部３１３が、通信部１１９から、他のプリンタ３１０より送信されたロック解除メッセージを受け取った際に開始される。
【０２１４】
情報管理部３１３は、自装置の印刷管理テーブル３７１の変更が既にロックされているか否かを判断する（Ｓ２９０）。そして、情報管理部３１３は、印刷管理テーブル３７１の変更がロックされている場合（Ｓ２９０：Ｙｅｓ）には、ステップＳ２９１の処理に進み、印刷管理テーブル３７１の変更がロックされていない場合（Ｓ２９０：Ｎｏ）には、ステップＳ２９４の処理に進む。
【０２１５】
ステップＳ２９１では、情報管理部３１３は、自装置における印刷管理テーブル３７１の変更のロックの原因となったロック要求メッセージの送信元であるプリンタ３１０と、ロック解除メッセージの送信元であるプリンタ３１０とが同一であるか否かを確認する。情報管理部３１３は、これらのメッセージの送信元のＩＰアドレスが同一であるか否かにより、これらのメッセージの送信元のプリンタ３１０が同一であるか否かを確認すればよい。そして、情報管理部３１３は、これらのメッセージの送信元のプリンタ３１０が同一である場合（Ｓ２９１：Ｙｅｓ）には、ステップＳ２９２の処理に進み、これらのメッセージの送信元のプリンタ３１０が同一ではない場合（Ｓ２９１：Ｎｏ）には、ステップＳ２９４の処理に進む。
【０２１６】
ステップＳ２９２では、情報管理部３１３は、取得されたロック解除メッセージに対応するロックを解除する。なお、情報管理部３１３は、複数のロック要求メッセージに基づいて、自装置における変更をロックしている場合には、全てのロック要求メッセージに対するロック解除メッセージを受信するまで、自装置のロックは継続する。
そして、情報管理部３１３は、通信部１１９を介して、ロック解除メッセージに対する成功の応答である成功応答を、このロック解除メッセージの送信元であるプリンタ３１０に送信する処理を行う（Ｓ２９３）。
【０２１７】
一方、ステップＳ２９４では、情報管理部３１３は、ロック解除メッセージに対する失敗の応答である失敗応答を、このロック解除メッセージの送信元であるプリンタ３１０に送信する処理を行う。
【０２１８】
以上のように、実施の形態３における情報管理部３１３は、ロック解除のメッセージを受信すると、ロックを指示したプリンタ３１０と、ロックの解除を指示したプリンタ３１０とが一致するか否かを判断した後に、ロックの解除を行う。
【０２１９】
図４３は、プリンタ３１０が更新データを受信した際の処理を示すフローチャートである。本フローは、情報管理部３１３が、通信部１１９より他のプリンタ３１０から送信された更新データを受け取ることにより開始される。
【０２２０】
情報管理部３１３は、自装置の印刷管理テーブル３７１の変更が既にロックされているか否かを判断する（Ｓ３００）。そして、情報管理部３１３は、印刷管理テーブル３７１の変更がロックされている場合（Ｓ３００：Ｙｅｓ）には、ステップＳ３０１の処理に進み、印刷管理テーブル３７１の変更がロックされていない場合（Ｓ３００：Ｎｏ）には、ステップＳ３０４の処理に進む。
【０２２１】
ステップＳ３０１では、情報管理部３１３は、自装置における印刷管理テーブル３７１の変更のロックの原因となったロック要求メッセージの送信元であるプリンタ３１０と、更新データの送信元であるプリンタ３１０とが同一であるか否かを確認する。情報管理部３１３は、送信元のＩＰアドレスが同一であるか否かにより、送信元のプリンタ３１０が同一であるか否かを確認すればよい。そして、情報管理部３１３は、送信元のプリンタ３１０が同一である場合（Ｓ３０１：Ｙｅｓ）には、ステップＳ３０２の処理に進み、送信元のプリンタ３１０が同一ではない場合（Ｓ３０１：Ｎｏ）には、ステップＳ３０４の処理に進む。
【０２２２】
ステップＳ３０２では、情報管理部３１３は、受け取った更新データの内容に基づいて、記憶部３１６に記憶されている印刷管理テーブル３７１を更新する。例えば、情報管理部３１３は、印刷管理テーブル３７１に格納されている全ての情報を、受け取った更新データで示される情報に置き換えることで、更新を実行する。
そして、情報管理部３１３は、通信部１１９を介して、更新データに対する成功の応答である成功応答を、この更新データの送信元であるプリンタ３１０に送信する処理を行う（Ｓ３０３）。
【０２２３】
一方、ステップＳ３０４では、情報管理部３１３は、更新データに対する失敗の応答である失敗応答を、この更新データの送信元であるプリンタ３１０に送信する処理を行う。
【０２２４】
なお、情報管理部３１３は、更新データとして、更新された内容だけが送られてくる場合には、印刷管理テーブル３７１において、更新された内容に対応する情報だけを更新する。
【０２２５】
図４４は、実施の形態３に係る画像形成システム３００において、印刷管理テーブル３７１の同期化を行う際の処理を示すシーケンス図である。図４４のシーケンスでは、ネットワークにプリンタ３１０Ａ及びプリンタ３１０Ｂが接続されているものとする。プリンタ３１０Ａ及びプリンタ３１０Ｂの構成は、図３３に示されている構成と同様であるが、以下では、それぞれのプリンタ３１０Ａ及びプリンタ３１０Ｂの構成要素を区別するために、プリンタ３１０Ａの構成要素には「Ａ」の符号を付し、プリンタ３１０Ｂの構成要素には「Ｂ」の符号を付して説明する。なお、プリンタ３１０Ａ及びプリンタ３１０Ｂのプリンタ名は、それぞれ、「プリンタＡ」及び「プリンタＢ」である。
【０２２６】
プリンタ３１０Ａにおいて、印刷管理テーブル３７１の更新理由が発生する（Ｓ３１０）。例えば、印刷管理テーブル３７１の更新理由は、印刷制御部３１２Ａが、通信部１１９Ａを介して、ＰＣ３５０から送信された印刷データ３７０を受け取った場合、印刷制御部３１２Ａが、印刷データ３７０に基づいて印刷を実行した場合、又は、利用者からの指示に応じて、印刷制御部３１２Ａが印刷データ３７０を削除した場合等に、発生する。
情報管理部３１３Ａは、通信部１１９Ａを介して、ロック要求メッセージをプリンタ３１０Ｂに送信する処理を行う（Ｓ３１１）。
【０２２７】
ロック要求メッセージを受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂが、プリンタ３１０Ａからのロック要求に応じて、自装置の印刷管理テーブル３７１の変更を停止する（Ｓ３１２）。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック要求に対する成功応答を、プリンタ３１０Ａに返信する（Ｓ３１３）。
【０２２８】
ここで、プリンタ３１０Ｂにおいて、印刷管理テーブル３７１の更新理由が発生する（Ｓ３１４）。例えば、印刷管理テーブル３７１の更新理由は、印刷制御部３１２Ｂが、通信部１１９Ｂを介して、ＰＣ３５０から送信された印刷データ３７０を受け取った場合、印刷制御部３１２Ｂが、印刷部１１１Ｂに印刷データ３７０に基づいて印刷を実行された場合、又は、利用者からの指示に応じて、印刷制御部３１２Ｂが印刷データ３７０を削除した場合等に、発生する。
但し、情報管理部３１３Ｂは、既に、自装置において印刷管理テーブル３７１の更新が停止されているため、印刷管理テーブル３７１の更新処理を停止する（Ｓ３１５）。
【０２２９】
プリンタ３１０Ｂからの成功応答を受信したプリンタ３１０Ａでは、情報管理部３１３Ａが、記憶部３１６Ａに記憶されている印刷管理テーブル３７１を更新する（Ｓ３１６）。
そして、情報管理部３１３Ａは、更新後の印刷管理テーブル３７１の内容の全てを含む更新データを生成し（Ｓ３１７）、通信部１１９Ａを介して、生成された更新データをプリンタ３１０Ｂに送信する処理を行う（Ｓ３１８）。
【０２３０】
更新データを受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂは、記憶部３１６Ｂに記憶されている印刷管理テーブル３７１に格納されている情報の全てを、更新データの内容で示される情報に置き換えることで、印刷管理テーブル３７１を更新する（Ｓ３１９）。これにより、プリンタ３１０Ａの印刷管理テーブル３７１と、プリンタ３１０Ｂの印刷管理テーブル３７１とは、同一の内容となり、同期化が行われたことになる。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、印刷管理テーブル３７１の更新が成功したことを示す成功応答をプリンタ３１０Ａに送信する処理を行う（Ｓ３２０）。
更新の成功応答を受信したプリンタ３１０Ａでは、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック解除メッセージをプリンタ３１０Ｂに送信する処理を行う（Ｓ３２１）。
【０２３１】
ロック解除メッセージを受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂは、自装置の印刷管理テーブル３７１の変更の停止を解除する（Ｓ３２２）。
また、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロックの解除要求に対する成功応答をプリンタ３１０Ａに送信する処理を行う（Ｓ３２３）。
さらに、情報管理部３１３Ｂは、ステップＳ３１５で停止されていた更新処理を再開する（Ｓ３２４）。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック要求メッセージをプリンタ３１０Ａに送信する処理を行う（Ｓ３２５）。
【０２３２】
ロック要求メッセージを受信したプリンタ３１０Ａでは、情報管理部３１３Ａが、プリンタ３１０Ｂからのロック要求に応じて、自装置の印刷管理テーブル３７１の変更を停止する（Ｓ３２６）。
そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック要求に対する成功応答を、プリンタ３１０Ｂに返信する（Ｓ３２７）。
【０２３３】
プリンタ３１０Ａからの成功応答を受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂが、記憶部３１６Ｂに記憶されている印刷管理テーブル３７１を更新する（Ｓ３２８）。
そして、情報管理部３１３Ｂは、更新後の印刷管理テーブル３７１の内容の全てを含む更新データを生成し（Ｓ３２９）、通信部１１９Ｂを介して、生成された更新データをプリンタ１１０Ａに送信する処理を行う（Ｓ３３０）。
【０２３４】
更新データを受信したプリンタ３１０Ａでは、情報管理部３１３Ａは、記憶部３１６Ａに記憶されている印刷管理テーブル３７１に格納されている情報の全てを、更新データの内容で示される情報に置き換えることで、印刷管理テーブル３７１を更新する（Ｓ３３１）。これにより、プリンタ３１０Ａの印刷管理テーブル３７１と、プリンタ３１０Ａの印刷管理テーブル３７１とは、同一の内容となり、同期化が行われたことになる。
そして、情報管理部３１３Ａは、通信部１１９Ａを介して、印刷管理テーブル３７１の更新が成功したことを示す成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３３２）。
更新の成功応答を受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック解除メッセージをプリンタ３１０Ａに送信する処理を行う（Ｓ３３３）。
【０２３５】
ロック解除メッセージを受信したプリンタ３１０Ａでは、情報管理部３１３Ａは、自装置の印刷管理テーブル３７１の変更の停止を解除する（Ｓ３３４）。
また、情報管理部３１３Ａは、通信部１１９Ａを介して、ロックの解除要求に対する成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３３５）。
【０２３６】
以上のように、複数のプリンタ３１０の情報管理部３１３は、印刷管理テーブル３７１の変更を停止している間に、更新理由が発生しても、ロックが解除されるまで、印刷管理テーブル３７１の内容を変更することができないため、複数のプリンタ３１０における印刷管理テーブル３７１の内容の同一性を確保することができる。
【０２３７】
図４５及び図４６は、実施の形態３に係る画像形成システム３００において、複数のプリンタ３１０で、印刷管理テーブル３７１の更新理由が同時に発生した場合の処理を示すシーケンス図である。図４５及び図４６に示されているシーケンスでは、ネットワーク１３０に、プリンタ３１０Ａ、プリンタ３１０Ｂ及びプリンタ３１０Ｃが接続されているものとする。また、優先順位は、プリンタ３１０Ａ、プリンタ３１０Ｂ及びプリンタ３１０Ｃの順に高いものとする。なお、プリンタ３１０Ａ、プリンタ３１０Ｂ及びプリンタ３１０Ｃの構成は、図３３に示されている構成と同様であるが、以下では、それぞれのプリンタ３１０Ａ、プリンタ３１０Ｂ及びプリンタ３１０Ｃの構成要素を区別するために、プリンタ３１０Ａの構成要素には「Ａ」の符号を付し、プリンタ３１０Ｂの構成要素には「Ｂ」の符号を付して説明する。なお、プリンタ３１０Ａ、プリンタ３１０Ｂ及びプリンタ３１０Ｃのプリンタ名は、それぞれ、「プリンタＡ」、「プリンタＢ」及び「プリンタＣ」である。
【０２３８】
プリンタ３１０Ａにおいて印刷管理テーブル３７１の更新理由が発生する（Ｓ３４０）と、プリンタ３１０Ａの情報管理部３１３Ａは、記憶部３１６Ａに記憶されているプリンタリストテーブル３７２を参照して、通信部１１９Ａを介して、プリンタ３１０Ｂ及びプリンタ３１０Ｃに対してロック要求メッセージを送信する（Ｓ３４１、Ｓ３４２）。
【０２３９】
また、プリンタ３１０Ｂにおいて印刷管理テーブル３７１の更新理由が発生する（Ｓ３４３）と、プリンタ３１０Ｂの情報管理部３１３Ｂは、記憶部３１６Ｂに記憶されているプリンタリストテーブル３７２を参照して、通信部１１９Ｂを介して、プリンタ３１０Ａ及びプリンタ３１０Ｃに対してロック要求メッセージを送信する（Ｓ３４４、Ｓ３４５）。
【０２４０】
さらに、プリンタ３１０Ｃにおいて印刷管理テーブル３７１の更新理由が発生する（Ｓ３４６）と、プリンタ３１０Ｃの情報管理部３１３Ｃは、記憶部３１６Ｃに記憶されているプリンタリストテーブル３７２を参照して、通信部１１９Ｃを介して、プリンタ３１０Ａ及びプリンタ３１０Ｂに対してロック要求メッセージを送信する（Ｓ３４７、Ｓ３４８）。
なお、ステップＳ３４０、Ｓ３４３及びＳ３４６は、同時に起こるものとし、ステップＳ３４１、Ｓ３４２、Ｓ３４４、Ｓ３４５、Ｓ３４７及びＳ３４８は、同時に行われるものとする。
【０２４１】
プリンタ３１０Ａの情報管理部３１３Ａは、プリンタ３１０Ｂ及びプリンタ３１０Ｃに対する応答動作を一時停止する（Ｓ３４９）。これは、プリンタ３１０Ａがロック要求中であり、かつ、プリンタ３１０Ｂとプリンタ３１０Ｃの優先順位が、プリンタ３１０Ａよりも低いからである。動作の一時停止は、ロック要求に対する全ての応答があるまで継続される。
【０２４２】
また、プリンタ３１０Ｂの情報管理部３１３Ｂは、プリンタ３１０Ｃに対する応答動作を一時停止する（Ｓ３５０）。これは、プリンタ３１０Ｂがロック要求中であり、かつ、プリンタ３１０Ｃの優先順位が、プリンタ３１０Ｂよりも低いからである。動作の一時停止は、ロック要求に対する全ての応答があるまで継続される。但し、情報管理部３１３Ｂは、プリンタ３１０Ａに対する応答動作については継続し、プリンタ３１０Ａからのロック要求を受け入れて、記憶部３１６Ｂに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３５１）。そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック要求に対する成功応答をプリンタ３１０Ａに送信する処理を行う（Ｓ３５２）。
【０２４３】
プリンタ３１０Ｃの情報管理部３１３Ｃは、プリンタ３１０Ａからのロック要求を受け入れて、記憶部３１６Ｃに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３５３）。そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、ロック要求に対する成功応答をプリンタ３１０Ａに送信する処理を行う（Ｓ３５４）。
また、情報管理部３１３Ｃは、プリンタ３１０Ｂからのロック要求を受け入れて、記憶部３１６Ｃに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３５５）。そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、ロック要求に対する成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３５６）。
【０２４４】
プリンタ３１０Ｂ及びプリンタ３１０Ｃからの成功応答を受信したプリンタ３１０Ａでは、情報管理部３１３Ａが、ステップＳ３４９で停止されていた応答動作を再開する（Ｓ３５７）。これは、プリンタ３１０Ａから送信された全てのロック要求メッセージに対して応答が行われたためである。
そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ステップＳ３４４及びＳ３４８におけるロック要求に対する失敗応答を、プリンタ３１０Ｂ及びプリンタ３１０Ｃに送信する処理を行う（Ｓ３５８、Ｓ３５９）。
【０２４５】
プリンタ３１０Ｂの情報管理部３１３Ｂは、ステップＳ３５０で停止されていた応答動作を再開する（Ｓ３６０）。これは、プリンタ３１０Ｂから送信された全てのロック要求メッセージに対して応答が行われたためである。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ステップＳ３４７におけるロック要求に対する失敗応答を、プリンタ３１０Ｃに送信する処理を行う（Ｓ３６１）。
また、情報管理部３１３Ｂは、通信部１１９Ｂを介して、プリンタ３１０Ｃにロック解除メッセージを送信する（Ｓ３６２）。これは、プリンタ３１０Ｂが、プリンタ３１０Ａのロックに成功せず、全てのロックには成功していないためである。
【０２４６】
プリンタ３１０Ｂからのロック解除メッセージを受信したプリンタ３１０Ｃでは、情報管理部３１３Ｃが、プリンタ３１０Ｂから要求されたロックを解除する（Ｓ３６３）。そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、ロック解除要求に対する成功応答を、プリンタ３１０Ｂに送信する（Ｓ３６４）。但し、情報管理部３１３Ｃは、プリンタ３１０Ａから要求されたロックは解除しない。
【０２４７】
プリンタ３１０Ａでは、情報管理部３１３Ａが、印刷管理テーブル３７１の同期化処理を行う（Ｓ３６５）。これは、情報管理部３１３Ａが、自装置の印刷管理テーブル３７１を更新し、更新後の印刷管理テーブル３７１の内容を示す更新データをプリンタ３１０Ｂ及び３１０Ｃに送信して、プリンタ３１０Ａ、プリンタ３１０Ｂ及び３１０Ｃの印刷管理テーブル３７１の内容を同一にする処理である。
そして、情報管理部３１３Ａは、通信部１１９Ａを介して、プリンタ３１０Ｂ及び３１０Ｃにロック解除メッセージを送信する処理を行う（Ｓ３６６、Ｓ３６７）。
【０２４８】
ロック解除メッセージを受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂが、プリンタ３１０Ａからのロック要求に対するロックを解除する（Ｓ３６８）。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック解除要求に対する成功応答をプリンタ３１０Ａに送信する処理を行う（Ｓ３６９）。
【０２４９】
また、ロック解除メッセージを受信したプリンタ３１０Ｃでは、情報管理部３１３Ｃが、プリンタ３１０Ａからのロック要求に対するロックを解除する（Ｓ３７０）。
そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、ロック解除要求に対する成功応答をプリンタ３１０Ａに送信する処理を行う（Ｓ３７１）。
ここで、シーケンスは、図４６に続く。
【０２５０】
図４６において、プリンタ３１０Ｂの情報管理部３１３Ｂは、記憶部３１６Ｂに記憶されているプリンタリストテーブル３７２を参照して、通信部１１９Ｂを介して、プリンタ３１０Ａ及びプリンタ３１０Ｃに対してロック要求メッセージを再び送信する（Ｓ３７２、Ｓ３７３）。
【０２５１】
さらに、プリンタ３１０Ｃの情報管理部３１３Ｃも、記憶部３１６Ｃに記憶されているプリンタリストテーブル３７２を参照して、通信部１１９Ｃを介して、プリンタ３１０Ａ及びプリンタ３１０Ｂに対してロック要求メッセージを送信する（Ｓ３７４、Ｓ３７５）。
なお、ステップＳ３７２〜Ｓ３７５は、同時に行われるものとする。
【０２５２】
プリンタ３１０Ａの情報管理部３１３Ａは、プリンタ３１０Ｂからのロック要求を受け入れて、記憶部３１６Ａに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３７６）。そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック要求に対する成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３７７）。
また、情報管理部３１３Ａは、プリンタ３１０Ｃからのロック要求を受け入れて、記憶部３１６Ａに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３７８）。そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック要求に対する成功応答をプリンタ３１０Ｃに送信する処理を行う（Ｓ３７９）。
【０２５３】
一方、プリンタ３１０Ｂの情報管理部３１３Ｂは、プリンタ３１０Ｃに対する応答動作を一時停止する（Ｓ３８０）。これは、プリンタ３１０Ｂがロック要求中であり、かつ、プリンタ３１０Ｃの優先順位が、プリンタ３１０Ｂよりも低いからである。動作の一時停止は、ロック要求に対する全ての応答があるまで継続される。
【０２５４】
プリンタ３１０Ｃの情報管理部３１３Ｃは、プリンタ３１０Ｂからのロック要求を受け入れて、記憶部３１６Ｃに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３８１）。そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、ロック要求に対する成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３８２）。
【０２５５】
プリンタ３１０Ａ及びプリンタ３１０Ｃからの成功応答を受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂが、ステップＳ３８０で停止されていた応答動作を再開する（Ｓ３８３）。これは、プリンタ３１０Ｂから送信された全てのロック要求メッセージに対して応答が行われたためである。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ステップＳ３７４におけるロック要求に対する失敗応答を、プリンタ３１０Ｃに送信する処理を行う（Ｓ３８４）。
【０２５６】
プリンタ３１０Ｃの情報管理部３１３Ｃは、通信部１１９Ｃを介して、プリンタ３１０Ａにロック解除メッセージを送信する（Ｓ３８５）。これは、プリンタ３１０Ｃが、プリンタ３１０Ｂのロックに成功せず、全てのロックには成功していないためである。
【０２５７】
プリンタ３１０Ｃからのロック解除メッセージを受信したプリンタ３１０Ａでは、情報管理部３１３Ａが、プリンタ３１０Ｃから要求されたロックを解除する（Ｓ３８６）。そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック解除要求に対する成功応答を、プリンタ３１０Ｃに送信する（Ｓ３８７）。但し、情報管理部３１３Ａは、プリンタ３１０Ｂから要求されたロックは解除しない。
【０２５８】
プリンタ３１０Ｂでは、情報管理部３１３Ｂが、印刷管理テーブル３７１の同期化処理を行う（Ｓ３８８）。これは、情報管理部３１３Ｂが、自装置の印刷管理テーブル３７１を更新し、更新後の印刷管理テーブル３７１の内容を示す更新データをプリンタ３１０Ａ及び３１０Ｃに送信し、プリンタ３１０Ａ、プリンタ３１０Ｂ及び３１０Ｃの印刷管理テーブル３７１の内容を同一にする処理である。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、プリンタ３１０Ａ及び３１０Ｃにロック解除メッセージを送信する処理を行う（Ｓ３８９、Ｓ３９０）。
【０２５９】
ロック解除メッセージを受信したプリンタ３１０Ａでは、情報管理部３１３Ａが、プリンタ３１０Ｂからのロック要求に対するロックを解除する（Ｓ３９１）。
そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック解除要求に対する成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３９２）。
【０２６０】
また、ロック解除メッセージを受信したプリンタ３１０Ｃでは、情報管理部３１３Ｃが、プリンタ３１０Ｂからのロック要求に対するロックを解除する（Ｓ３９３）。
そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、ロック解除要求に対する成功応答をプリンタ３１０Ｂに送信する処理を行う（Ｓ３９４）。
【０２６１】
プリンタ３１０Ｃの情報管理部３１３Ｃは、記憶部３１６Ｃに記憶されているプリンタリストテーブル３７２を参照して、通信部１１９Ｃを介して、プリンタ３１０Ａ及びプリンタ３１０Ｂに対してロック要求メッセージをまた送信する（Ｓ３９５、Ｓ３９６）。
【０２６２】
プリンタ３１０Ａの情報管理部３１３Ａは、プリンタ３１０Ｂからのロック要求を受け入れて、記憶部３１６Ａに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３９７）。そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック要求に対する成功応答をプリンタ３１０Ｃに送信する処理を行う（Ｓ３９８）。
【０２６３】
また、プリンタ３１０Ｂの情報管理部３１３Ｂは、プリンタ３１０Ｃからのロック要求を受け入れて、記憶部３１６Ｂに記憶されている印刷管理テーブル３７１に対する変更を停止する（Ｓ３９９）。そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック要求に対する成功応答をプリンタ３１０Ｃに送信する処理を行う（Ｓ４００）。
【０２６４】
プリンタ３１０Ｃでは、情報管理部３１３Ｃが、印刷管理テーブル３７１の同期化処理を行う（Ｓ４０１）。これは、情報管理部３１３Ｃが、自装置の印刷管理テーブル３７１を更新し、更新後の印刷管理テーブル３７１の内容を示す更新データをプリンタ３１０Ａ及びプリンタ３１０Ｂに送信し、プリンタ３１０Ａ、プリンタ３１０Ｂ及びプリンタ３１０Ｃの印刷管理テーブル３７１の内容を同一にする処理である。
そして、情報管理部３１３Ｃは、通信部１１９Ｃを介して、プリンタ３１０Ａ及びプリンタ３１０Ｂにロック解除メッセージを送信する処理を行う（Ｓ４０２、Ｓ４０３）。
【０２６５】
ロック解除メッセージを受信したプリンタ３１０Ａでは、情報管理部３１３Ａが、プリンタ３１０Ｃからのロック要求に対するロックを解除する（Ｓ４０４）。
そして、情報管理部３１３Ａは、通信部１１９Ａを介して、ロック解除要求に対する成功応答をプリンタ３１０Ｃに送信する処理を行う（Ｓ４０５）。
【０２６６】
また、ロック解除メッセージを受信したプリンタ３１０Ｂでは、情報管理部３１３Ｂが、プリンタ３１０Ｃからのロック要求に対するロックを解除する（Ｓ４０６）。
そして、情報管理部３１３Ｂは、通信部１１９Ｂを介して、ロック解除要求に対する成功応答をプリンタ３１０Ｃに送信する処理を行う（Ｓ４０７）。
【０２６７】
以上のように、実施の形態３に係る画像形成システム３００においては、複数のプリンタ３１０において、印刷管理テーブル３７１への変更理由が同時に発生した場合、予め定められた優先順位に基づいて順番に印刷管理テーブル３７１の更新を行うことができるため、各々のプリンタ３１０の印刷管理テーブル３７１の内容を順序立てて更新することができる。
【０２６８】
図４７は、実施の形態３におけるプリンタ３１０で、認証情報が付加された印刷データ３７０を印刷する場合の処理を示すフローチャートである。図４７に示されているフローチャートは、利用者がプリンタ３１０の認証処理部１１７を利用して認証を行うことで、開始される。
【０２６９】
印刷制御部３１２は、認証処理部１１７から認証情報を受け取る（Ｓ４１０）。
そして、印刷制御部３１２は、印刷管理テーブル３７１において、ステップＳ４１０で受け取った認証情報と、認証情報欄３７１ｅに格納されている認証情報とが一致するレコードを特定する。そして、印刷制御部３１２は、特定されたレコードから、印刷データ３７０を選択するために必要な情報を抽出して、抽出された情報により印刷データ選択画面を生成する（Ｓ４１２）。
そして、印刷制御部３１２は、生成された印刷データ選択画面をＵＩＦ部１１８に表示させて、利用者からの選択を受け付ける。ここで、印刷データ選択画面は、ネットワーク１３０に接続されているプリンタ３１０において保存されている、認証を行った利用者が印刷可能な印刷データ３７０から、実際に印刷を実行する印刷データ３７０を選択するための選択画面である。
【０２７０】
図４８は、印刷データ選択画面３８０の一例を示す概略図である。印刷データ選択画面３８０は、印刷データ選択領域３８０ａと、印刷指示領域３８０ｂと、Ｃａｎｃｅｌ指示領域３８０ｃとを備える。
印刷データ選択領域３８０ａは、印刷データ３７０の選択の入力を受け付ける。例えば、印刷データ選択領域３８０ａには、印刷管理テーブル３７１から抽出された印刷データ３７０の文書名と、印刷データ３７０の生成日と、印刷データ３７０のページ数とが表示されている。利用者は、表示されているこれらの文書名、生成日及びページ数により印刷データ３７０を識別して、印刷を実行する印刷データ３７０を選択する。なお、印刷データ選択領域３８０ａに表示しきれない印刷データ３７０については、スクロールバー３８０ｄを下方に移動させることにより、表示させることができる。
そして、ＵＩＦ部１１８は、利用者により、印刷データ選択領域３８０ａにおいて印刷データ３７０が選択され、印刷指示領域３８０ｂを選択した実行指示の入力を受け付けた場合には、印刷データ選択領域３８０ａにおいて選択された情報と、印刷指示とを印刷制御部３１２に与える。
また、ＵＩＦ部１１８は、利用者により、Ｃａｎｃｅｌ指示領域３８０ｃを選択した実行指示の入力を受け付けた場合には、キャンセル指示を印刷制御部３１２に与える。
【０２７１】
図４７の説明に戻り、印刷制御部３１２は、ＵＩＦ部１１８を介して、利用者より指示の入力を受け付ける（Ｓ４１３）。そして、印刷制御部３１２は、ＵＩＦ部１１８から印刷指示を受けた場合には、ステップＳ４１４の処理に進み、ＵＩＦ部１１８からキャンセル指示を受けた場合には、フローを終了する。なお、印刷制御部３１２は、一定時間指示の入力が行われない場合には、キャンセル指示の入力が行われたと判断して、フローを終了してもよい。
【０２７２】
ステップＳ４１４では、印刷制御部３１２は、ステップＳ４１３で選択された印刷データ３７０が、自装置の記憶部３１６に保存されているか否かを判断する。そして、印刷制御部３１２は、自装置に選択された印刷データ３７０が保存されていると判断した場合（ステップＳ４１４：Ｙｅｓ）には、ステップＳ４１５の処理に進み、自装置に選択された印刷データ３７０が保存されていないと判断した場合（ステップＳ４１４：Ｎｏ）には、ステップＳ４１７の処理に進む。
【０２７３】
ステップＳ４１５では、印刷制御部３１２は、ステップＳ４１３で選択された印刷データ３７０を、自装置の記憶部３１６から取得する。この際、印刷制御部３１２は、記憶部３１６に取得された印刷データ３７０を残さないように、記憶部３１６から取得された印刷データ３７０を削除する。
【０２７４】
そして、印刷制御部３１２は、ステップＳ４１５で取得された印刷データ３７０を印刷部１１１に与えて、この印刷データ３７０に基づいて、印刷部１１１に印刷を行わせる（Ｓ４１６）。
【０２７５】
次に、印刷制御部３１２は、ステップＳ４１３で選択された印刷データ３７０が、他のプリンタ３１０に保存されているか否かを判断する。そして、印刷制御部３１２は、他のプリンタ３１０に保存されていると判断した場合（ステップＳ４１７：Ｙｅｓ）には、ステップＳ４１８の処理に進み、他のプリンタ３１０に保存されていないと判断した場合（ステップＳ４１７：Ｎｏ）には、ステップＳ４２６の処理に進む。
【０２７６】
ステップＳ４１８では、印刷制御部３１２は、ステップＳ４１３で選択され、他のプリンタ３１０に保存されていると判断された印刷データ３７０の転送を要求するための印刷データ転送要求メッセージを生成する。この印刷データ転送要求メッセージには、ステップＳ４１３で選択され、他のプリンタ３１０に保存されていると判断された印刷データ３７０を特定する情報を含める。例えば、印刷データ３７０を特定する情報は、印刷データ３７０の名称を含む。印刷データ３７０の名称は、印刷管理テーブル３７１の名称欄３７１ｈに格納されている。
そして、印刷制御部３１２は、通信部１１９を介して、生成された印刷データ転送要求メッセージを、ステップＳ４１３で選択された印刷データ３７０を保存しているプリンタ３１０に送信する処理を行う（Ｓ４１９）。
【０２７７】
次に、印刷制御部３１２は、通信部１１９を介して、ステップＳ４１９で送信した印刷データ転送要求メッセージへの応答である印刷データ転送メッセージを受け取ったか否かを確認する（Ｓ４２０）。そして、印刷制御部３１２は、印刷データ転送メッセージを受け取った場合（ステップＳ４２０：Ｙｅｓ）には、ステップＳ４２１の処理に進み、印刷データ転送メッセージを受け取っていない場合（ステップＳ４２０：Ｎｏ）には、ステップＳ４２４の処理に進む。
【０２７８】
ステップＳ４２１では、印刷制御部３１２は、印刷データ転送メッセージから印刷データ３７０を取り出す。さらに、印刷制御部３１２は、取り出された印刷データ３７０を印刷部１１１に渡し、印刷を行わせる。
【０２７９】
次に、印刷制御部３１２は、ステップＳ４１３で選択された全ての印刷データ３７０に基づいて、印刷部１１１に印刷を行わせたか否かを確認する（Ｓ４２２）。そして、印刷制御部３１２は、全ての印刷データ３７０につき印刷を行わせた場合（ステップＳ４２２：Ｙｅｓ）には、ステップＳ４２６の処理に進み、フローを終了し、全ての印刷データ３７０については印刷を行わせていない場合（ステップＳ４２２：Ｎｏ）、言い換えると、ステップＳ４１３で選択された印刷データ３７０の中で、印刷を行わせていない印刷データ３７０が存在する場合には、ステップＳ４２３の処理に進む。
【０２８０】
ステップＳ４２３では、印刷制御部３１２は、ステップＳ４１３で選択された印刷データ３７０のうち、他のプリンタ３１０に保存されているものが、全て受信されているか否かを確認する。そして、印刷制御部３１２は、このような印刷データ３７０が全て受信されている場合（ステップＳ４２３：Ｙｅｓ）には、ステップＳ４２１の処理に戻り、このような印刷データ３７０が全ては受信されていない場合（ステップＳ４２３：Ｎｏ）、言い換えると、ステップＳ４１３で選択され、他のプリンタ３１０に保存されている印刷データ３７０のうち、まだ受信されていないものが存在する場合には、ステップＳ４２４の処理に進む。
【０２８１】
ステップＳ４２４では、印刷制御部３１２は、ステップＳ４１９で印刷データ転送要求メッセージを送信してから所定の時間が経過したか否かを確認する。そして、印刷制御部３１２は、所定の時間が経過した場合（ステップＳ４２４：Ｙｅｓ）には、ステップＳ４２５の処理に進み、所定の時間が経過していない場合（ステップＳ４２４：Ｎｏ）には、ステップＳ４２０の処理に戻る。
【０２８２】
ステップＳ４２５では、印刷制御部３１２は、印刷が完了できなかったというエラーメッセージを表示するエラー画面を生成する。そして、印刷制御部３１２は、生成されたエラー画面をＵＩＦ部１１８に表示させる。このエラー画面には、印刷が完了していない印刷データ３７０を特定するメッセージが含まれていてもよい。
【０２８３】
ステップＳ４２６では、印刷制御部３１２は、印刷された印刷データ３７０に対応する情報を印刷管理テーブル３７１から削除するように、情報管理部３１３に指示を出す。このような指示を受けた情報管理部３１３は、図４０に示されている同期化処理により印刷管理テーブル３７１の更新を行う。
【０２８４】
以上のように、実施の形態３におけるプリンタ３１０は、利用者による認証が行われると、ネットワーク１３０に接続されているプリンタ３１０に保存されている全ての印刷テータ３７０のうち、利用者の認証情報に一致する認証情報を有する印刷データ３７０を、利用者の選択により、利用者が認証を行ったプリンタ３１０で印刷をすることができる。
【０２８５】
図４７に示されているフローチャートにおいて、ステップＳ４１３では、利用者から印刷する印刷データ３７０の選択の入力を受け付けているが、このような処理を省略してもよい。このような処理を省略した場合には、例えば、ネットワーク１３０に接続されているプリンタ３１０に保存されている全ての印刷テータ３７０のうち、利用者の認証情報に一致する認証情報を有する全ての印刷データ３７０を印刷させてもよい。また、プリンタ３１０は、図４７に示されているステップＳ４１７〜Ｓ４２５の処理を省略することで、自装置に保存されている印刷データ３７０だけを印刷するように構成されていてもよい。
【０２８６】
また、図４７に示されているフローチャートにおいては、ステップＳ４１６及びステップＳ４２１で、ステップＳ４１３で選択された印刷データ３７０を全て印刷しているが、このような例に限定されない。例えば、利用者により認証が行われたプリンタ３１０が、選択された印刷データ３７０により要求されるプリンタ３１０の能力を満たさない場合、例えば、プリンタ３１０がＡ４サイズの用紙までしか印刷できないのに対し、印刷データ３７０がＡ３サイズである場合等には、印刷制御部３１２は、警告画面を生成して、ＵＩＦ部１１８にこの警告画面を表示させてもよい。警告画面には、プリンタ３１０の印刷能力に適合しない印刷データ３７０を特定するメッセージが含まれていることが望ましい。また、警告画面には、利用者に処理の継続又は中止を選択させる領域が設けられていることが望ましい。そして、印刷制御部３１２は、利用者が処理の継続を選択した場合には、印刷処理を継続し、利用者が処理の中止を選択した場合には、印刷処理を中止する。
【０２８７】
さらに、図４７に示されているフローチャートにおいては、印刷制御部３１２は、ネットワーク１３０に接続されている他のプリンタ３１０に記憶され、利用者の認証情報に一致する認証情報を含む印刷データ３７０の全てを、ステップＳ４１２において、印刷データ選択画面３８０に表示させているが、このような例に限定されない。例えば、利用者により認証が行われたプリンタ３１０が、選択された印刷データ３７０により要求されたプリンタ３１０の能力を満たさない場合、例えば、プリンタ３１０がＡ４サイズの用紙までしか印刷できないのに対し、印刷データ３７０がＡ３サイズである場合等には、印刷制御部３１２は、プリンタ３１０の印刷能力に適合しない印刷データ３７０に関する情報を、印刷データ選択画面３８０に表示させないようにすることもできる。また、印刷管理部３１２は、このような印刷データ選択画面３８０の表示を行わずに、自装置の印刷能力に適合する印刷データ３７０だけを印刷部１１１に印刷させてもよい。
【０２８８】
図４９は、プリンタ３１０が、印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。本フローは、印刷制御部３１２が、通信部１１９を介して、印刷データ取得要求メッセージを取得した場合に開始される。
【０２８９】
印刷制御部３１２は、取得された印刷データ取得要求メッセージで要求された印刷データ３７０を、記憶部３１６から取得する（Ｓ４３０）。この際、印刷制御部３１２は、記憶部３１６から取得された印刷データ３７０を消去する。
印刷制御部３１２は、取得された印刷データ３７０を含む印刷データ転送メッセージを生成する（Ｓ４３１）。
そして、印刷制御部３１２は、通信部１１９を介して、生成された印刷データ転送メッセージを、印刷データ取得要求メッセージの送信元のプリンタ３１０に返信する処理を行う（Ｓ４３２）。
【０２９０】
以上のように、実施の形態３におけるプリンタ３１０は、記憶部３１６に記憶されている印刷データ３７０を他のプリンタ３１０に送信することができる。
【０２９１】
なお、図４９のフローにおいて、印刷制御部３１２は、ステップＳ４３０の処理の前に、印刷データ転送要求メッセージの送信元であるプリンタ３１０の情報が、プリンタリストテーブル３７２に格納されているか否かを確認し、格納されていない場合には、フローを終了してもよい。
また、印刷制御部３１２は、ステップＳ４３０において、取得された印刷データ３７０を記憶部３１６から消去しているが、このような例に限定されるものではない。例えば、印刷制御部３１２は、取得された印刷データ３７０をそのまま記憶部３１６に保持しておき、再印刷を受け付けてもよい。このような場合には、印刷制御部３１２は、例えば、ＵＩＦ部１１８が利用者からの指示を受け付けたときに、記憶部３１６から印刷データ３７０を削除したり、また、印刷データ３７０が作成されてから所定の時間が経過すると、記憶部３１６からこの印刷データ３７０を削除したりしてもよい。
【０２９２】
図５０は、プリンタ３１０が、他のプリンタ３１０に障害が発生したことを検知した場合の処理を示すフローチャートである。本フローは、検索部３１４又は情報管理部３１３が、ネットワーク１３０に接続された他のプリンタ３１０に障害が発生したことを検出した場合に開始される。例えば、検索部３１４は、通信部１１９を介して、予め定められたとき、例えば、定期的に、記憶部３１６に記憶されているプリンタリストテーブル３７２に情報が格納されているプリンタ３１０に対して、検索データを送信しているものとする。そして、検索部３１４は、検索データを送信してから所定期間内に検索応答データを返信してこないプリンタ３１０に障害が発生したものと判断する。また、情報管理部３１３は、印刷管理テーブル３７１の同期化を行う際に通信エラーが発生した場合に、その通信の相手先の他のプリンタ３１０に障害が発生したものと判断する。
【０２９３】
印刷制御部３１２は、記憶部３１６に記憶されている印刷管理テーブル３７１を取得する（Ｓ４４０）。
【０２９４】
印刷制御部３１２は、ステップＳ４４０で取得した印刷管理テーブル３７１から、エラーが発生したプリンタ３１０に保存されている印刷データ３７０に対応するレコードに格納されている情報を、個別管理情報として抽出する（Ｓ４４１）。
【０２９５】
ステップＳ４４１で抽出された個別管理情報を参照して、印刷制御部３１２は、エラーが発生したプリンタ３１０に保存されている印刷データ３７０を生成したＰＣ３５０に、エラーメッセージを送信する（Ｓ４４２）。例えば、エラーメッセージには、エラーが発生したプリンタ３１０に保存されている印刷データ３７０を特定する情報が含まれているものとし、エラーメッセージの送信先は、印刷管理テーブル３７１のアドレス欄３７１ｇで特定されるものとする。なお、エラーメッセージを受信したＰＣ３５０では、印刷データ生成部３５１は、受信したエラーメッセージに対応したエラーメッセージ画面を生成して、このエラーメッセージ画面をＵＩＦ部１５４に表示する処理を行う。エラーメッセージ画面には、エラーが発生したプリンタ３１０に保存されている印刷データ３７０を特定する情報が表示されるのが望ましい。図５１は、エラーメッセージ画面３８１の一例を示す概略図である。エラーメッセージ画面３８１は、エラーが発生したプリンタ３１０に保存されている印刷データ３７０の文書名と、作成日時とが表示されている。
【０２９６】
印刷制御部３１２は、記憶部３１６に記憶されているプリンタリストテーブル３７２の更新を行う（Ｓ４４３）。ここでは、印刷制御部３１２は、障害の発生したプリンタ３１０の情報をプリンタリストテーブル３７２から削除する。
【０２９７】
印刷制御部３１２は、プリンタリストテーブル３７２の更新メッセージを生成し、記憶部３１６に記憶されているプリンタリストテーブル３７２に情報が格納されているプリンタ３１０に送信する処理を行う（Ｓ４４４）。ここで、更新メッセージは、障害の発生したプリンタ３１０の情報を削除する指示を含む。このような更新メッセージを受信したプリンタ３１０では、印刷制御部３１２が、記憶部３１６に記憶されているプリンタリストテーブル３７２から、障害の発生したプリンタ３１０の情報を削除する。
【０２９８】
そして、印刷制御部３１２は、情報管理部３１３に指示を出し、印刷管理情報の同期化処理を行わせる（Ｓ４４５）。ここでの処理は、印刷管理テーブル３７１から、ステップＳ４４１で情報を抽出したレコードを削除するものである。また、このような指示を受けた情報管理部３１３は、図４０に示されているフローに従って、処理を実行する。
【０２９９】
以上のように、実施の形態３において、ＰＣ３５０で生成された印刷データ３７０を保存するプリンタ３１０に障害が発生した場合、記憶部３１６に記憶されている印刷管理テーブル３７１に基づいて、他のプリンタ３１０がＰＣ３５０にエラーメッセージ画面を表示させることができる。
また、ＰＣ３５０に送信されるエラーメッセージに書誌データを含めることで、ＰＣ３５０の印刷データ生成部３５１は、その書誌データに基づき印刷データ３７０の再生成と、再送信を行ってもよい。このとき、正常に印刷データ３７０の再生成と再送信ができた場合は、エラーメッセージ画面３８１をＵＩＦ部１５４に表示せず、印刷データ３７０の再生成と再送信を行うことができなかった場合に、エラーメッセージ画面３８１をＵＩＦ部１５４に表示してもよい。
【０３００】
実施の形態４．
（構成の説明）
図１に示すように、実施の形態４に係る画像形成システム４００は、複数のプリンタ４１０Ａ、４１０Ｂ、４１０Ｃ、・・・、４１０Ｄ（特に各々を区別する必要がないときは、プリンタ４１０という）を備える。プリンタ４１０は、ネットワーク１３０に接続されている。ネットワーク１３０には、ＰＣ４５０も接続されている。
【０３０１】
図５２は、プリンタ４１０の構成を概略的に示すブロック図である。プリンタ４１０は、印刷部１１１と、印刷制御部４１２と、情報管理部３１３と、検索部３１４と、検索応答部３１５と、記憶部３１６と、認証処理部１１７と、ＵＩＦ部１１８と、通信部１１９とを備える。実施の形態４におけるプリンタ４１０は、印刷制御部４１２において、実施の形態１と異なっている。
【０３０２】
実施の形態４における印刷制御部４１２は、実施の形態３における印刷制御部３１２と同様の処理を行うほか、通信部１１９を介して、ＰＣ４５０より個別管理情報を取得した場合には、記憶部３１６に記憶されている印刷管理テーブル３７１に、取得された個別管理情報を格納する処理を行う。なお、実施の形態４における印刷制御部４１２は、印刷管理テーブル３７１を参照して、印刷対象となっている印刷データ３７０が、ＰＣ４５０に保存されている場合には、ＰＣ４５０から印刷データ３７０の転送を受ける。
【０３０３】
図５３は、ＰＣ４５０の構成を概略的に示すブロック図である。ＰＣ４５０は、印刷データ生成部４５１と、プリンタ検索部１５２と、記憶部４５３と、ＵＩＦ部１５４と、通信部１５５とを備える。実施の形態４におけるＰＣ４５０は、印刷データ生成部４５１及び記憶部４５３において、実施の形態３におけるＰＣ３５０と異なっている。
【０３０４】
印刷データ生成部４５１は、実施の形態３における印刷データ生成部３５１と同様の処理を行うほか、印刷データ３７０を自装置内に保存する場合には、生成された印刷データ３７０に対応する個別管理情報を生成する。ここで、個別管理情報は、印刷データ３７０の書誌データに、印刷データの３７０の保存先である自装置のＰＣ名と、印刷データ３７０に対して自装置内で一意となるように付与した名称と、自装置内において印刷データ３７０を記憶したパスとを追加したものである。
そして、印刷データ生成部４５１は、印刷データ３７０を自装置内に保存する場合には、印刷データ４７０を記憶部４５３に記憶させるとともに、通信部１５５を介して、作成された個別管理情報を、プリンタ検索部１５２で検索されたプリンタ４１０に送信する処理を行う。
なお、印刷データ生成部４５１は、例えば、ＵＩＦ部１５４がＰＣ４５０の利用者から印刷データ３７０を自装置内に保存する指示の入力を受け付けた場合、自装置の種類が特定の種類（例えば、ノートパソコン）である場合、印刷データ３７０を送信するプリンタ４１０の記憶残量が所定のしきい値よりも低い場合、ネットワーク１３０が混雑している場合（例えば、送信したパケットへの応答（ＡＣＫ）の受信時間が所定のしきい値よりも遅い場合）等の予め定められた条件を満たす場合に、印刷データ３７０を自装置内に保存する。
【０３０５】
（動作の説明）
図５４は、実施の形態４におけるＰＣ４５０が印刷データ３７０及び個別管理情報を作成し、送信する処理を示すフローチャートである。図５４のフローは、例えば、利用者が、ＵＩＦ部１５４を介して、ドキュメントの印刷を指示した場合に開始される。
【０３０６】
印刷データ生成部４５１は、印刷指示の対象となったドキュメントから印刷データ３７０を生成する（Ｓ４５０）。
【０３０７】
次に、印刷データ生成部４５１は、印刷データ３７０に認証情報を追加するか否かを判断する（Ｓ４５１）。例えば、印刷データ生成部４５１は、ＰＣ４５０の利用者が、ＵＩＦ部１５４を介して、すぐに印刷することを選択した場合には、認証情報を追加しないものと判断し、すぐには印刷しないことを選択した場合には、認証情報を追加するものと判断する。そして、印刷データ生成部４５１は、認証情報を追加すると判断した場合（Ｓ４５１：Ｙｅｓ）には、ステップＳ４５２の処理に進み、認証情報を追加しないと判断した場合（Ｓ４５１：Ｎｏ）には、ステップＳ４５３の処理に進む。
【０３０８】
ステップＳ４５２では、印刷データ生成部４５１は、ステップＳ４５０で生成された印刷データ３７０に認証情報を追加する。
【０３０９】
ステップＳ４５３では、印刷データ生成部４５１は、印刷データ３７０を自装置内に保存するか否かを判断する。この判断は、上述のように予め定められた条件を満たすか否かにより行われる。そして、印刷データ生成部４５１は、印刷データ３７０を自装置内に保存すると判断した場合には、ステップＳ４５４の処理に進み、印刷データ３７０を自装置内に保存しないと判断し場合には、ステップＳ４５７の処理に進む。
【０３１０】
ステップＳ４５４では、印刷データ生成部４５１は、印刷データ３７０に一意となる名称を付与して、付与された名称をファイル名として、印刷データ３７０を記憶部４５３に記憶する。
【０３１１】
そして、印刷データ生成部４５１は、印刷データ３７０の制御データ３７０ａから抽出される書誌データに、保存先としての自装置のＰＣ名と、印刷データ３７０を記憶部４５３に記憶する際に付与した名称と、印刷データ３７０を記憶部４５３に記憶したパスとを追加することで、個別管理情報を生成する（Ｓ４５５）。
印刷データ生成部４５１は、通信部１５５を介して、生成された個別管理情報をプリンタ４１０に送信する処理を行う（Ｓ４５６）。なお、送信先となるプリンタ４１０は、ネットワーク１３０に接続されたいずれかのプリンタ４１０である。ここで、送信先となるプリンタ４１０は、予めＰＣ４５０に設定されていてもよい。例えば、ＰＣ４５０の利用者又は画像形成システム４００の管理者は、ＵＩＦ部１５４を介して、ＰＣ４５０に送信先となるプリンタ４１０を設定することができる。
【０３１２】
一方、ステップＳ４５３において、印刷データ３７０を自装置内に保存しないと判断した場合（Ｓ４５３：Ｎｏ）には、ステップＳ４５７の処理に進む。ステップＳ４５７では、印刷データ生成部４５１は、印刷データ３７０に書誌データを添付するか否かを判断する。例えば、印刷データ生成部４５１は、ＰＣ４５０の利用者が、ＵＩＦ部１５４を介して、書誌データを添付することを選択したか否かで、ステップＳ４５７での判断を実行する。そして、印刷データ生成部４５１は、書誌データを添付すると判断した場合（Ｓ４５７：Ｙｅｓ）には、ステップＳ４５８の処理に進み、書誌データを添付しないと判断した場合（Ｓ４５７：Ｎｏ）には、ステップＳ４５９の処理に進む。
【０３１３】
ステップＳ４５８では、印刷データ生成部４５１は、書誌データを生成して、ステップＳ４５０で生成された印刷データ３７０に添付する。
【０３１４】
ステップＳ４５９では、印刷データ生成部４５１は、通信部１５５を介して、印刷データ３７０を、書誌データが添付されている場合には書誌データとともに、プリンタ４１０に送信する処理を行う。なお、送信先となるプリンタ４１０は、ネットワーク１３０に接続されたいずれかのプリンタ４１０である。ここで、送信先となるプリンタ４１０は、予めＰＣ４５０に設定されていてもよい。例えば、ＰＣ４５０の利用者又は画像形成システム４００の管理者は、ＵＩＦ部１５４を介して、ＰＣ４５０に送信先となるプリンタ４１０を設定することができる。
【０３１５】
以上のように、実施の形態４におけるＰＣ４５０は、印刷データ３７０を生成して、プリンタ４１０に送信することができ、また、印刷データ３７０を自装置内に保存して、個別管理情報をプリンタ４１０に送信することができる。
【０３１６】
図５５は、実施の形態４におけるプリンタ４１０が印刷データ３７０又は個別管理情報を受信した場合の処理を示すフローチャートである。このフローは、プリンタ４１０の印刷制御部４１２が、通信部１１９を介して、ＰＣ４５０からの受信データを取得した場合に開始される。
【０３１７】
印刷制御部４１２は、通信部１１９から受け取った受信データが印刷データ３７０であるか否かを確認する（Ｓ４６０）。そして、印刷制御部４１２は、受信データが印刷データ３７０である場合（Ｓ４６０：Ｙｅｓ）には、ステップＳ４６２の処理に進み、受信データが印刷データ３７０ではない場合（Ｓ４６０：Ｎｏ）、言い換えると、受信データが個別管理情報である場合には、ステップＳ４６１の処理に進む。
【０３１８】
ステップＳ４６１では、印刷制御部４１２は、記憶部３１６に記憶されている印刷管理テーブル３７１に新たなレコードを追加して、追加されたレコードに、受信された個別管理情報を格納する。
【０３１９】
一方、ステップＳ４６２では、印刷制御部４１２は、通信部１１９から受け取った印刷データ３７０に認証情報が含まれているか否かを確認する（Ｓ４６２）。そして、印刷制御部４１２は、認証情報が含まれている場合（Ｓ４６２：Ｙｅｓ）には、ステップＳ４６４の処理に進み、認証情報が含まれていない場合（Ｓ４６２：Ｎｏ）には、ステップＳ４６３の処理に進む。
【０３２０】
ステップＳ４６３では、印刷制御部４１２は、受け取った印刷データ３７０を印刷部１１１に送り、受け取った印刷データ３７０に基づいて、印刷部１１１に印刷を行わせる。
【０３２１】
一方、ステップＳ４６４では、印刷制御部４１２は、印刷データ３７０に書誌データが添付されているか否かを判断する。そして、印刷制御部４１２は、書誌データが添付されている場合（Ｓ４６４：Ｙｅｓ）には、ステップＳ４６６の処理に進み、書誌データが添付されていない場合（Ｓ４６４：Ｎｏ）には、ステップＳ４６５の処理に進む。
【０３２２】
ステップＳ４６５では、印刷制御部４１２は、印刷データ３７０に含まれている制御データ３７０ａの拡張変数の値から、書誌データを生成する（Ｓ４６５）。この書誌データは、少なくとも印刷データ３７０を特定することができるものとする。
【０３２３】
そして、ステップＳ４６６では、印刷制御部４１２は、書誌データに、印刷データ３７０の保存先を特定する情報と、印刷データ３７０の名称とを追加することで個別管理情報を生成する（Ｓ４６６）。
【０３２４】
そして、印刷制御部４１２は、受け取った印刷データ３７０を記憶部３１６に記憶させるとともに、記憶部３１６に記憶されている印刷管理テーブル３７１に新たなレコードを追加し、このレコードにステップＳ４６６で生成された個別管理情報を格納する（Ｓ４６７）。
【０３２５】
以上のように、実施の形態４におけるプリンタ４１０は、ＰＣ４５０から個別管理情報だけを受信した場合には、この個別管理情報を印刷管理テーブル３７１に格納する。
【０３２６】
図５６は、ＰＣ４５０が、プリンタ４１０から印刷データ取得要求メッセージを受信した場合の動作を示すフローチャートである。本フローは、印刷データ生成部４５１が、通信部１５５を介して、印刷データ取得要求メッセージを取得した場合に開始される。
【０３２７】
印刷データ生成部４５１は、取得された印刷データ取得要求メッセージで要求された印刷データ３７０を、記憶部４５３から取得する（Ｓ４７０）。この際、印刷制御部４１２は、記憶部４５３から取得された印刷データ３７０を消去する。
印刷データ生成部４５１は、取得された印刷データ３７０を含む印刷データ転送メッセージを生成する（Ｓ４７１）。
そして、印刷データ生成部４５１は、通信部１５５を介して、生成された印刷データ転送メッセージを、印刷データ取得要求メッセージの送信元のプリンタ４１０に返信する処理を行う（Ｓ４７２）。
【０３２８】
以上のように、実施の形態４におけるＰＣ４５０は、記憶部４５３に記憶されている印刷データ３７０をプリンタ４１０に送信することができる。
【０３２９】
なお、図５６に示されたフローでは、印刷データ生成部４５１は、ステップＳ４７０で印刷データ３７０を取得した際に、取得された印刷データ３７０を記憶部４５３から削除しているが、このような例に限定されるものではない。印刷データ生成部４５１は、印刷データ３７０をそのまま保存し、再印刷を許可しても構わない。この場合、印刷データ生成部４５１は、ＵＩＦ部１５４が利用者の指示を受け付けた際に、記憶部４５３から印刷データ３７０を削除してもよく、また、印刷データ３７０が作成されてから所定の時間が経過した場合に、印刷データ生成部４５１は、自動的にその印刷データ３７０を削除してもよい。
【０３３０】
実施の形態４では、利用者の認証を受けたプリンタ４１０は、印刷管理テーブル３７１に基づいて、印刷データ３７０がＰＣ４５０に保存されていても、他のプリンタ４１０から印刷データ３７０を取得する場合と同様に、ＰＣ４５０から印刷データ３７０を取得することができる。このため、利用者は、印刷データ３７０がどこに保存されているかを意識せずに、印刷物を取得することができるため、非常に便利である。
【０３３１】
また、実施の形態４では、個別管理情報がＰＣ４５０からプリンタ４１０に送信される場合には、印刷データ３７０は、ＰＣ４５０から実際に印刷が行われるプリンタ４１０にだけしか送信されない。これに対して、実施の形態１〜３では、印刷データ３７０がＰＣ１５０、２５０、３５０からプリンタ１１０、２１０、３１０に、さらにプリンタ１１０、２１０、３１０から別のプリンタ１１０、２１０、３１０に転送されることがある。このため、実施の形態４では、ネットワーク１３０に流れるデータ量を軽減させることができる。
【０３３２】
また、実施の形態１〜３においては、印刷データ３７０が必ずプリンタ１１０、２１０、３１０に保存されるため、プリンタ１１０、２１０、３１０には、比較的大きな容量の記憶装置（例えば、ＨＤＤ）を備える必要がある。一方、実施の形態４においては、ＰＣ４５０が印刷データ３７０を保存し、プリンタ４１０は印刷データ３７０を保存しないようにすることもできる。このような場合には、実施の形態４におけるプリンタ４１０は、比較的小さな容量の記憶装置を備えればよい。
【０３３３】
以上に記載した実施の形態４では、印刷データ生成部４５１は、予め定められた条件を満たす場合に、印刷データ３７０を自装置内に保存するようにしているが、このような例に限定されるものではない。例えば、ＰＣ４５０は、常に、印刷データ３７０を自装置内に保存するように構成することもできる。
【０３３４】
以上に記載された実施の形態１〜４においては、画像処理装置の例として、プリンタ１１０、２１０、３１０、４１０を挙げたが、このような例に限定されるものではない。例えば、本発明に係る画像形成装置は、コピー装置、ファクシミリ装置、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等、印刷データに基づいて画像を印刷することのできる装置であれば、どのような装置であってもよい。また、印刷データを生成する情報処理装置と、印刷データに基づいて画像を印刷する画像形成装置とが一体となった装置であってもよい。
さらに、印刷データを生成する情報処理装置の例として、ＰＣ１５０、２５０、３５０、４５０を挙げたが、このような例に限定されるものではない。例えば、情報処理装置は、携帯端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ａｓｓｉｓｔａｎｃｅ）又は撮像装置等であってもよい。
【０３３５】
また、以上に記載した実施の形態においては、プリンタ１１０、２１０、３１０、４１０により画像形成システム１００、２００、３００、４００が構成されているが、ＰＣ１５０、２５０、３５０、４５０が画像形成システム１００、２００、３００、４００に含まれていてもよい。
【符号の説明】
【０３３６】
１００，２００，３００，４００：画像形成システム、  １１０，２１０，３１０，４１０：プリンタ、  １１１：印刷部、  １１２，３１２，４１２：印刷制御部、  １１３，３１３：情報管理部、  １１４，３１４：検索部、  １１５，３１５：検索応答部、  １１６：記憶部、  １１７：認証処理部、  １１８：ユーザインタフェース部、  １１９：通信部、  ２２０：動作確認部、  ２２１：動作確認応答部、  １５０，２５０，３５０，４５０：ＰＣ、  １５１，２５１，３５１，４５１：印刷データ生成部、  １５２：プリンタ検索部、  １５３，４５３：記憶部、  １５４：ユーザインタフェース部、  １５５：通信部、  ２５６：表示制御部。
【図１】
0005661586.tif 000002
【図２】
0005661586.tif 000003
【図３】
0005661586.tif 000004
【図４】
0005661586.tif 000005
【図５】
0005661586.tif 000006
【図６】
0005661586.tif 000007
【図７】
0005661586.tif 000008
【図８】
0005661586.tif 000009
【図９】
0005661586.tif 000010
【図１０】
0005661586.tif 000011
【図１１】
0005661586.tif 000012
【図１２】
0005661586.tif 000013
【図１３】
0005661586.tif 000014
【図１４】
0005661586.tif 000015
【図１５】
0005661586.tif 000016
【図１６】
0005661586.tif 000017
【図１７】
0005661586.tif 000018
【図１８】
0005661586.tif 000019
【図１９】
0005661586.tif 000020
【図２０】
0005661586.tif 000021
【図２１】
0005661586.tif 000022
【図２２】
0005661586.tif 000023
【図２３】
0005661586.tif 000024
【図２４】
0005661586.tif 000025
【図２５】
0005661586.tif 000026
【図２６】
0005661586.tif 000027
【図２７】
0005661586.tif 000028
【図２８】
0005661586.tif 000029
【図２９】
0005661586.tif 000030
【図３０】
0005661586.tif 000031
【図３１】
0005661586.tif 000032
【図３２】
0005661586.tif 000033
【図３３】
0005661586.tif 000034
【図３４】
0005661586.tif 000035
【図３５】
0005661586.tif 000036
【図３６】
0005661586.tif 000037
【図３７】
0005661586.tif 000038
【図３８】
0005661586.tif 000039
【図３９】
0005661586.tif 000040
【図４０】
0005661586.tif 000041
【図４１】
0005661586.tif 000042
【図４２】
0005661586.tif 000043
【図４３】
0005661586.tif 000044
【図４４】
0005661586.tif 000045
【図４５】
0005661586.tif 000046
【図４６】
0005661586.tif 000047
【図４７】
0005661586.tif 000048
【図４８】
0005661586.tif 000049
【図４９】
0005661586.tif 000050
【図５０】
0005661586.tif 000051
【図５１】
0005661586.tif 000052
【図５２】
0005661586.tif 000053
【図５３】
0005661586.tif 000054
【図５４】
0005661586.tif 000055
【図５５】
0005661586.tif 000056
【図５６】
0005661586.tif 000057