(57)【要約】【課題】ユーザの利便性が低下するのを抑制することが可能な、サーバレスのロケーションフリー印刷機能を持つ印刷システムを提供する。【解決手段】印刷システム５０は、複数の印刷装置１００と情報処理装置２００とを含む。情報処理装置２００は、ユーザ情報が付加された印刷ジョブデータを印刷装置１００に送信する。そのデータを受信した印刷装置１００は、受信したデータを保持し、当該データの複製を他の印刷装置１００に転送する。いずれかの印刷装置１００がユーザ認証を行なうと、その印刷装置１００は予め登録されている印刷装置に対して認証ユーザの印刷ジョブデータ（複製を含む）を保持するか否かを問合わせる。問合せ先の印刷装置１００が印刷ジョブデータを保持している場合、ユーザ認証を行なった印刷装置１００は、データを保持する印刷装置１００から印刷ジョブデータを取得して印刷処理を実行する。【選択図】図１４
2016111461.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して他の印刷装置と通信可能に接続される印刷装置であって、
ユーザを認証するためのユーザ認証手段と、
ユーザを識別するためのユーザ識別情報が付加された印刷ジョブデータを受信するための受信手段と、
前記受信手段が受信した印刷ジョブデータを記憶するための記憶手段と、
前記記憶手段に記憶された印刷ジョブデータの複製を他の印刷装置に転送するための複製データ転送手段と、
前記ユーザ認証手段がユーザを認証したことに応答して、予め登録されている他の印刷装置に対して、認証したユーザのユーザ識別情報が付された印刷ジョブデータを保持しているか否かを問合せるための問合せ手段と、
他の印刷装置から前記問合せに応答して送信される印刷ジョブデータに関する情報を受信し、当該情報と、前記記憶手段に記憶された印刷ジョブデータに関する情報とから、印刷の対象となる印刷ジョブデータをユーザに選択させるための選択手段と、
前記選択手段により、他の印刷装置が保持している印刷ジョブデータのいずれかが選択されたことに応答して、前記情報を送信した他の印刷装置に対して、選択された印刷ジョブデータを送信するよう要求するためのデータ送信要求手段と、
他の印刷装置から前記データ送信要求手段による送信要求に応答して転送される印刷ジョブデータを受信するための転送データ受信手段と、
前記選択手段による選択に応じて、前記転送データ受信手段が受信した印刷ジョブデータ、又は前記記憶手段に記憶された印刷ジョブデータを用いて印刷処理を実行するための印刷手段と、を含む、印刷装置。
【請求項２】
前記受信手段は、ユーザを識別するためのユーザ識別情報とともに、他の印刷ジョブデータの複製か否かを示すフラグが付加された印刷ジョブデータを受信するための手段を含み、
前記複製データ転送手段は、前記記憶手段に、複製ではない印刷ジョブデータが記憶されたことに応答して、当該印刷ジョブデータの複製を他の印刷装置に転送するための手段を含む、請求項１に記載の印刷装置。
【請求項３】
他の印刷装置において認証されたユーザのユーザ識別情報が付された印刷ジョブデータを保持しているか否かの問合せを受信したことに応答して、前記ユーザ識別情報に基づいて、問合せの印刷ジョブデータ又はその複製が前記記憶手段に記憶されているか否かを判定し、判定結果に応じて、問合せを送信した他の印刷装置に対して、印刷ジョブデータに関する情報を送信するための情報送信手段と、
前記情報送信手段が送信した情報に応じて他の印刷装置から送信される印刷ジョブデータの送信要求を受信し、要求された印刷ジョブデータを、送信要求を送信した他の印刷装置に転送するためのジョブデータ転送手段と、をさらに含む、請求項１又は請求項２に記載の印刷装置。
【請求項４】
前記記憶手段に前記受信手段が受信した印刷ジョブデータを記憶可能な空き容量があるか否かを判定するための空き容量判定手段と、
前記空き容量判定手段の判定結果が否定であることに応答して、前記受信手段が受信した印刷ジョブデータを他の印刷装置に転送するための転送手段とをさらに含む、請求項１〜請求項３のいずれかに記載の印刷装置。
【請求項５】
前記印刷手段による印刷処理が終了したことに応答して、印刷処理が終了した印刷ジョブデータを前記記憶手段から消去するための消去手段と、
前記印刷手段による印刷処理が終了したことに応答して、前記データ送信要求手段による送信要求に応答して印刷ジョブデータを転送した他の印刷装置に対して、印刷処理が終了した印刷ジョブデータを消去するよう指示するための消去指示手段とをさらに含む、請求項１〜請求項４のいずれかに記載の印刷装置。
【請求項６】
他の印刷装置から印刷処理が終了した印刷ジョブデータを消去する指示を受信したことに応答して、指示された印刷ジョブデータを消去するためのデータ消去手段をさらに含む、請求項１〜請求項５のいずれかに記載の印刷装置。
【請求項７】
前記印刷装置は複数の前記他の印刷装置と接続され、
前記複製データ転送手段は、前記複数の他の印刷装置のうちの所定数の印刷装置に対して、予め定められた優先順序にしたがって、前記記憶手段に記憶されている印刷ジョブデータの複製を転送するための優先順転送手段を含む、請求項１に記載の印刷装置。
【請求項８】
前記印刷装置はさらに、情報処理装置と通信可能に接続され、
前記受信手段は、前記情報処理装置から送信される印刷ジョブデータを受信するためのジョブデータ受信手段を含み、
前記複製データ転送手段は、前記ジョブデータ受信手段が受信した印刷ジョブデータが前記記憶手段に記憶されたことに応答して、当該印刷ジョブデータの複製を他の印刷装置に転送するための手段を含む、請求項１に記載の印刷装置。
【請求項９】
ネットワークを介して通信可能に接続される、情報処理装置及び複数の印刷装置を含む印刷システムであって、
前記情報処理装置は、ユーザを識別するためのユーザ識別情報が付加された印刷ジョブデータを前記複数の印刷装置の１つに送信するための印刷ジョブデータ送信手段を含み、
前記複数の印刷装置の各々は、
ユーザを認証するためのユーザ認証手段と、
ユーザを識別するためのユーザ識別情報が付加された印刷ジョブデータを受信するための受信手段と、
前記受信手段が受信した印刷ジョブデータを記憶するための記憶手段と、
前記記憶手段に記憶された印刷ジョブデータの複製を他の印刷装置に転送するための複製データ転送手段と、
前記ユーザ認証手段がユーザを認証したことに応答して、予め登録されている他の印刷装置に対して、認証したユーザのユーザ識別情報が付された印刷ジョブデータを保持しているか否かを問合せるための問合せ手段と、
他の印刷装置から前記問合せに応答して送信される印刷ジョブデータに関する情報を受信し、当該情報と、前記記憶手段に記憶された印刷ジョブデータに関する情報とから、印刷の対象となる印刷ジョブデータをユーザに選択させるための選択手段と、
前記選択手段により、他の印刷装置が保持している印刷ジョブデータのいずれかが選択されたことに応答して、前記情報を送信した他の印刷装置に対して、選択された印刷ジョブデータを送信するよう要求するためのデータ送信要求手段と、
他の印刷装置から前記データ送信要求手段による送信要求に応答して転送される印刷ジョブデータを受信するための転送データ受信手段と、
前記選択手段による選択に応じて、前記転送データ受信手段が受信した印刷ジョブデータ、又は前記記憶手段に記憶された印刷ジョブデータを用いて印刷処理を実行するための印刷手段と、を含む、印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置及び印刷システムに関し、特に、サーバ装置を用いずにロケーションフリー印刷を実現するための技術に関する。
【背景技術】
【０００２】
ネットワークシステムに対して印刷要求を行ない、ネットワークに接続された任意の印刷装置から印刷できる、いわゆるロケーションフリー印刷機能を持つ印刷システムが知られている。従来の印刷システムは、専用のサーバ装置を含む。印刷システムは、パーソナルコンピュータ（ＰＣ）等の情報処理装置から印刷指示を行なう場合、印刷ジョブデータをサーバ装置に一旦記憶する。その後、ネットワークに接続された複数の印刷装置のいずれかから印刷要求を行なうことで、サーバ装置から印刷ジョブデータを取得して印刷を行なう。このシステムを利用すれば、ユーザは、印刷システムで繋がっているどの印刷装置からでも印刷データの出力を行なうことが可能となる。
【０００３】
サーバ装置を含む印刷システムは、サーバ装置を維持及び管理するためのコストがかかるという問題がある。こうした問題に対して、後掲の特許文献１は、サーバ装置を使用しない、いわゆるサーバレスのロケーションフリー印刷システムを提案する。特許文献１のシステムでは、サーバ装置に代えて、ユーザ端末（情報処理装置）に画像データが保持される。ネットワークに接続された複数の印刷装置のいずれかから印刷要求を行なうと、その印刷装置はユーザ端末から画像データを取得して画像データの出力を行なう。
【０００４】
また従来、出力先の印刷装置に印刷ジョブデータを保持するサーバレスロケーションフリー印刷システムも知られている。従来のサーバレスロケーションフリー印刷システムでは、情報処理装置から印刷指示を行なうと出力先の印刷装置に印刷ジョブデータがスプール保存される。他の印刷装置から印刷ジョブデータ（スプールデータ）を保持する印刷装置にアクセスすることにより、そのデータの確認、取得及び印刷を行なうことができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−３９５２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の印刷システムは、ユーザ端末に画像データが保持されるため、印刷処理が終了するまでユーザ端末の電源を落とせない。ユーザ端末の電源が落とされると、ロケーションフリーで印刷出力を行なうことができなくなるため、ユーザの利便性が低下する。
【０００７】
出力先の印刷装置に印刷ジョブデータが保持される従来の印刷システムでは、情報処理装置から印刷指示を行なうと出力先の印刷装置に印刷ジョブデータがスプール保存されるため、印刷指示後は情報処理装置の電源を落とすことが可能となる。
【０００８】
しかし、従来の印刷システムでは、印刷ジョブデータを保持する印刷装置の電源が落とされると、他の印刷装置から印刷ジョブデータを保持する印刷装置にアクセスできなくなる。他の印刷装置からはデータを取得できなくなるため、このような場合は、印刷データの出力を行なうことができなくなる。これによりユーザの利便性が低下するという問題がある。通常、印刷装置の電源が落とされると保持しているスプールデータが消去される。そのため、電源が落とされていることに気付いたユーザが印刷装置の電源を投入したとしても、印刷ジョブデータは消失しているため、印刷データの出力を行なうことができない。
【０００９】
本発明は、上記のような課題を解決するためになされたものであり、本発明の１つの目的は、ユーザの利便性が低下するのを抑制することが可能な印刷装置を提供することである。
【００１０】
本発明のもう１つの目的は、ユーザの利便性が低下するのを抑制することが可能な、サーバレスのロケーションフリー印刷機能を持つ印刷システムを提供することである。
【課題を解決するための手段】
【００１１】
本発明の第１の局面に係る印刷装置は、ネットワークを介して他の印刷装置と通信可能に接続される印刷装置である。この印刷装置は、ユーザを認証するためのユーザ認証手段と、ユーザを識別するためのユーザ識別情報が付加された印刷ジョブデータを受信するための受信手段と、受信手段が受信した印刷ジョブデータを記憶するための記憶手段と、記憶手段に記憶された印刷ジョブデータの複製を他の印刷装置に転送するための複製データ転送手段と、ユーザ認証手段がユーザを認証したことに応答して、予め登録されている他の印刷装置に対して、認証したユーザのユーザ識別情報が付された印刷ジョブデータを保持しているか否かを問合せるための問合せ手段と、他の印刷装置から問合せに応答して送信される印刷ジョブデータに関する情報を受信し、当該情報と、記憶手段に記憶された印刷ジョブデータに関する情報とから、印刷の対象となる印刷ジョブデータをユーザに選択させるための選択手段と、選択手段により、他の印刷装置が保持している印刷ジョブデータのいずれかが選択されたことに応答して、情報を送信した他の印刷装置に対して、選択された印刷ジョブデータを送信するよう要求するためのデータ送信要求手段と、他の印刷装置からデータ送信要求手段による送信要求に応答して転送される印刷ジョブデータを受信するための転送データ受信手段と、選択手段による選択に応じて、転送データ受信手段が受信した印刷ジョブデータ、又は記憶手段に記憶された印刷ジョブデータを用いて印刷処理を実行するための印刷手段と、を含む。
【００１２】
記憶手段は、ユーザ識別情報が付加された印刷ジョブデータを受信すると、受信した印刷ジョブデータを記憶する。複製データ送信手段は、記憶手段に記憶されている印刷ジョブデータの複製を他の印刷装置に転送する。自装置においてユーザ認証を行なうと、問合せ手段は、予め登録されている他の印刷装置に対して、認証したユーザのユーザ情報が付されている印刷ジョブデータを保持しているか否かを問合せる。他の印刷装置から問合せに応答して送信される印刷ジョブデータに関する情報を受信すると、選択手段は、当該情報と、記憶手段に記憶された印刷ジョブデータに関する情報とから、印刷の対象となる印刷ジョブデータをユーザに選択させる。記憶手段が記憶している印刷ジョブデータをユーザが選択すると、印刷手段がその印刷ジョブデータを用いて印刷処理を実行する。ユーザによって、他の印刷装置が保持している印刷ジョブデータのいずれかが選択されると、データ送信要求手段は、情報を送信した他の印刷装置に対して、選択された印刷ジョブデータを送信するよう要求する。印刷手段は、他の印刷装置から送信要求に応答して転送される印刷ジョブデータを受信すると、受信した印刷ジョブデータを用いて印刷処理を実行する。
【００１３】
このように、印刷装置は、受信した印刷ジョブデータの複製を他の印刷装置に転送する機能を持つ。そのため、このような印刷装置を用いて印刷システムを構成することにより、複数の印刷装置で印刷ジョブデータを保持できる。これにより、印刷装置の電源が落とされた場合であっても、他の印刷装置に保持される印刷ジョブデータを用いて印刷処理を実行できる。その結果、ユーザの利便性が低下するのを抑制できる。
【００１４】
好ましくは、受信手段は、ユーザを識別するためのユーザ識別情報とともに、他の印刷ジョブデータの複製か否かを示すフラグが付加された印刷ジョブデータを受信するための手段を含み、複製データ転送手段は、記憶手段に、複製ではない印刷ジョブデータが記憶されたことに応答して、当該印刷ジョブデータの複製を他の印刷装置に転送するための手段を含む。
【００１５】
より好ましくは、印刷装置は、他の印刷装置において認証されたユーザのユーザ識別情報が付された印刷ジョブデータを保持しているか否かの問合せを受信したことに応答して、ユーザ識別情報に基づいて、問合せの印刷ジョブデータ又はその複製が記憶手段に記憶されているか否かを判定し、判定結果に応じて、問合せを送信した他の印刷装置に対して、印刷ジョブデータに関する情報を送信するための情報送信手段と、情報送信手段が送信した情報に応じて他の印刷装置から送信される印刷ジョブデータの送信要求を受信し、要求された印刷ジョブデータを、送信要求を送信した他の印刷装置に転送するためのジョブデータ転送手段と、をさらに含む。
【００１６】
さらに好ましくは、印刷装置は、記憶手段に受信手段が受信した印刷ジョブデータを記憶可能な空き容量があるか否かを判定するための空き容量判定手段と、空き容量判定手段の判定結果が否定であることに応答して、受信手段が受信した印刷ジョブデータを他の印刷装置に転送するための転送手段とをさらに含む。
【００１７】
さらに好ましくは、印刷装置は、印刷手段による印刷処理が終了したことに応答して、印刷処理が終了した印刷ジョブデータを記憶手段から消去するための消去手段と、印刷手段による印刷処理が終了したことに応答して、データ送信要求手段による送信要求に応答して印刷ジョブデータを転送した他の印刷装置に対して、印刷処理が終了した印刷ジョブデータを消去するよう指示するための消去指示手段とをさらに含む。
【００１８】
さらに好ましくは、印刷装置は、他の印刷装置から印刷処理が終了した印刷ジョブデータを消去する指示を受信したことに応答して、指示された印刷ジョブデータを消去するためのデータ消去手段をさらに含む。
【００１９】
さらに好ましくは、印刷装置は複数の他の印刷装置と接続され、複製データ転送手段は、複数の他の印刷装置のうちの所定数の印刷装置に対して、予め定められた優先順序にしたがって、記憶手段に記憶されている印刷ジョブデータの複製を転送するための優先順転送手段を含む。
【００２０】
さらに好ましくは、印刷装置はさらに、情報処理装置と通信可能に接続され、受信手段は、情報処理装置から送信される印刷ジョブデータを受信するためのジョブデータ受信手段を含み、複製データ転送手段は、ジョブデータ受信手段が受信した印刷ジョブデータが記憶手段に記憶されたことに応答して、当該印刷ジョブデータの複製を他の印刷装置に転送するための手段を含む。
【００２１】
本発明の第２の局面に係る印刷システムは、ネットワークを介して通信可能に接続される、情報処理装置及び複数の印刷装置を含む印刷システムである。この印刷システムにおいて、情報処理装置は、ユーザを識別するためのユーザ識別情報が付加された印刷ジョブデータを複数の印刷装置の１つに送信するための印刷ジョブデータ送信手段を含む。複数の印刷装置の各々は、ユーザを認証するためのユーザ認証手段と、ユーザを識別するためのユーザ識別情報が付加された印刷ジョブデータを受信するための受信手段と、受信手段が受信した印刷ジョブデータを記憶するための記憶手段と、記憶手段に記憶された印刷ジョブデータの複製を他の印刷装置に転送するための複製データ転送手段と、ユーザ認証手段がユーザを認証したことに応答して、予め登録されている他の印刷装置に対して、認証したユーザのユーザ識別情報が付された印刷ジョブデータを保持しているか否かを問合せるための問合せ手段と、他の印刷装置から問合せに応答して送信される印刷ジョブデータに関する情報を受信し、当該情報と、記憶手段に記憶された印刷ジョブデータに関する情報とから、印刷の対象となる印刷ジョブデータをユーザに選択させるための選択手段と、選択手段により、他の印刷装置が保持している印刷ジョブデータのいずれかが選択されたことに応答して、情報を送信した他の印刷装置に対して、選択された印刷ジョブデータを送信するよう要求するためのデータ送信要求手段と、他の印刷装置からデータ送信要求手段による送信要求に応答して転送される印刷ジョブデータを受信するための転送データ受信手段と、選択手段による選択に応じて、転送データ受信手段が受信した印刷ジョブデータ、又は記憶手段に記憶された印刷ジョブデータを用いて印刷処理を実行するための印刷手段と、を含む。
【発明の効果】
【００２２】
以上より、本発明によれば、ユーザの利便性が低下するのを抑制することが可能な印刷装置を得ることができる。
【００２３】
さらに本発明によれば、ユーザの利便性が低下するのを抑制することが可能な、サーバレスのロケーションフリー印刷機能を持つ印刷システムを得ることができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の第１の実施の形態に係る印刷システムを示す図である。
【図２】図１に示す印刷装置のハードウェア構成を示す制御ブロック図である。
【図３】図１に示す情報処理装置のハードウェア構成を示す制御ブロック図である。
【図４】図１に示す印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図５】図１に示す印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図６】図５のステップＳ１１１０の詳細なフローを示す図である。
【図７】図５のステップＳ１１１０の詳細なフローを示す図である。
【図８】図１に示す印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図９】図１に示す印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図１０】図１に示す印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図１１】図１に示す印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図１２】図１に示す印刷システムの動作を説明するための図である。
【図１３】図１に示す印刷システムの動作を説明するための図である。
【図１４】図１に示す印刷システムの動作を説明するための図である。
【図１５】図１に示す印刷システムの動作を説明するための図である。
【図１６】本発明の第２の実施の形態に係る印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図１７】本発明の第２の実施の形態に係る印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図１８】本発明の第２の実施の形態に係る印刷装置で実行されるプログラムの制御構造を示すフローチャートである。
【図１９】図１７のステップＳ１４６０の詳細なフローを示す図である。
【図２０】図１７のステップＳ１４６０の詳細なフローを示す図である。
【図２１】図１７のステップＳ１４６０の詳細なフローを示す図である。
【図２２】本発明の第２の実施の形態に係る印刷システム（印刷装置）の動作を説明するための図である。
【図２３】本発明の第２の実施の形態に係る印刷システム（印刷装置）の動作を説明するための図である。
【図２４】本発明の第２の実施の形態に係る印刷システム（印刷装置）の動作を説明するための図である。
【図２５】本発明の第３の実施の形態に係る印刷装置で実行されるプログラムの制御構造を示すフローチャート（ステップＳ１９００の詳細なフローを示す図）である。
【図２６】本発明の第３の実施の形態に係る印刷装置で実行されるプログラムの制御構造を示すフローチャート（ステップＳ１９００の詳細なフローを示す図）である。
【発明を実施するための形態】
【００２５】
以下の実施の形態では、同一の部品には同一の参照番号を付してある。それらの機能及び名称も同一である。したがって、それらについての詳細な説明は繰返さない。
【００２６】
（第１の実施の形態）
［全体システム構成］
図１を参照して、本実施の形態に係る印刷システム５０は、紙媒体に文書及び画像等を印刷する複数の印刷装置１００ａ〜１００ｄ（以下、総称する場合は印刷装置１００と記す。）と、印刷装置１００に対して印刷指示を出力する情報処理装置２００とを含む。
【００２７】
複数の印刷装置１００ａ〜１００ｄ及び情報処理装置２００は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）回線等のネットワーク回線３０を介して通信可能に接続されている。情報処理装置２００と印刷装置１００との接続は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブル３２等を介して直接的に接続される構成であってもよい。
【００２８】
情報処理装置２００は、パーソナルコンピュータからなるクライアント装置である。図１に示した情報処理装置２００は、ノート型であるが、ノート型以外に例えばデスクトップ型であってもよい。この情報処理装置２００は、ユーザの操作に応じて、複数の印刷装置１００ａ〜１００ｄのいずれかに印刷ジョブデータを送信（出力）する。情報処理装置２００から出力された印刷ジョブデータは、出力先の印刷装置１００に保持される。
【００２９】
印刷装置１００は、ユーザを認証するユーザ認証機能を持つ。印刷装置１００はユーザを認証すると、認証したユーザの印刷ジョブデータを保持する印刷装置から当該印刷ジョブデータを取得して印刷処理を実行する。印刷装置１００はさらに、受信した印刷ジョブデータの複製を他の印刷装置１００に送信する機能を持つ。これにより、印刷ジョブデータが複数台の印刷装置１００にて保持される。そのため、一部の印刷装置１００において電源が落とされたりした場合であっても、通信可能な印刷装置１００から印刷ジョブデータを取得して印刷処理が実行される。これらの印刷装置１００は、レーザー光を露光に利用する、所謂レーザー方式（電子写真方式）の印刷機能を備える。しかし、他の形式の印刷機能を備えたものであってもよい。
【００３０】
このように、本実施の形態に係る印刷システム５０は、出力先の印刷装置に保持された印刷ジョブデータを他の印刷装置から印刷できる、いわゆるサーバレスのロケーションフリー印刷機能を持つ。
【００３１】
本実施の形態では、複数の印刷装置１００ａ〜１００ｄは、同じ機能を持つ印刷装置であるものとする。ただし、サーバレスのロケーションフリー印刷を実行可能な機能を備えていれば、複数の印刷装置１００ａ〜１００ｄは同じ機能を備えた装置である必要はない。なお、図１に示した情報処理装置２００及び印刷装置１００の台数及び配置は一例であって、図１に示した台数及び配置に限定されるものではない。情報処理装置２００の台数は１台以上であればよく、印刷装置１００の台数は２台以上の複数台であればよい。以下においては、図面等において、印刷装置をプリンタと記載する場合がある。
【００３２】
［ハードウェア構成］
《印刷装置１００》
図２を参照して、本実施の形態に係る印刷システム５０を構成する印刷装置１００は、制御部１１０、操作部１２０、ユーザ認証部１３０、印刷処理部１４０、ネットワーク通信部１５０及び入出力インターフェイス（以下「インターフェイス」を「ＩＦ」と記す。）１６０を含む。
【００３３】
制御部１１０は、実質的にコンピュータであって、印刷装置１００全体を制御するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１２、プログラム等を記憶するためのＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１４、揮発性の記憶装置であるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１６、及び記憶装置１１８を含む。記憶装置１１８は、通電が遮断された場合にもデータを保持する不揮発性記憶装置であり、例えばハードディスクドライブ（ＨＤＤ）又はフラッシュメモリを含む。ＣＰＵ１１２には、ＢＵＳライン１７０が接続されており、このＢＵＳライン１７０には、ＲＯＭ１１４、ＲＡＭ１１６及び記憶装置１１８が電気的に接続される。
【００３４】
ＣＰＵ１１２は、操作部１２０等からの指示に応じて各種コンピュータプログラムを実行することによって、印刷装置１００の各部の動作及びパーソナルコンピュータ（ＰＣ）等の外部機器との通信等の所望の処理を実行する。ＣＰＵ１１２はさらに、情報処理装置２００又は他の印刷装置１００から受信した印刷ジョブデータに基づいて、印刷データを生成して出力するための各種処理を実行する。上記の各種コンピュータプログラムは、予めＲＯＭ１１４又は記憶装置１１８に記憶されており、所望の処理の実行時において、当該ＲＯＭ１１４又は記憶装置１１８から読出されてＲＡＭ１１６に転送される。ＣＰＵ１１２は、ＣＰＵ１１２内の図示しないプログラムカウンタと呼ばれるレジスタに格納された値によって指定される、ＲＡＭ１１６内のアドレスからプログラムの命令を読出し、解釈する。ＣＰＵ１１２はまた、読出された命令によって指定されるアドレスから演算に必要なデータを読出し、そのデータに対し命令に対応する演算を実行する。実行の結果も、ＲＡＭ１１６、記憶装置１１８及びＣＰＵ１１２内のレジスタ等の、命令によって指定されるアドレスに格納される。
【００３５】
ＲＯＭ１１４又は記憶装置１１８には、印刷装置１００の一般的な動作等を実現するためのコンピュータプログラムとともに、サーバレスのロケーションフリー印刷機能を実現するためのコンピュータプログラムが記憶される。このコンピュータプログラムは、印刷装置１００の製造時にＲＯＭ１１４又は記憶装置１１８に書込まれる。なお、このコンピュータプログラムは、ネットワーク通信部１５０を介して、外部機器等から提供されてもよい。さらにこのコンピュータプログラムは、そのコンピュータプログラムが記録された、例えばＤＶＤ等の記憶媒体によって提供されてもよい。すなわち、例えばコンピュータプログラムの記録媒体としてのＤＶＤが、印刷装置１００内に内蔵されるＤＶＤドライブ（図示せず。）に装着され、そのＤＶＤからコンピュータプログラムが読出されて記憶装置１１８にインストールされてもよい。
【００３６】
記憶装置１１８は、他に、画像データ等を含む各種データを記憶する。本実施の形態では、記憶装置１１８には、通信対象の他の印刷装置１００を識別するためのＩＰアドレスをはじめとして、各種設定情報及びユーザ情報等がさらに記憶される。より具体的には、記憶装置１１８には、例えば、自装置を識別するための識別情報であるＩＰアドレス、ユーザ認証によって認証されたユーザの印刷ジョブデータを保持しているか否かを問合せる対象とする印刷装置１００のＩＰアドレス、受信した印刷ジョブデータの転送を許可する他の印刷装置１００のＩＰアドレス、受信した印刷ジョブデータの複製を自動で送信する送信先候補となる印刷装置１００のＩＰアドレス、及び印刷ジョブデータの複製を送信する印刷装置１００の優先度（優先順）等が設定情報として記憶される。本実施の形態では、ユーザによって登録された登録順に優先度が設定される。複製を送信する候補となる印刷装置１００は、転送を許可する他の印刷装置１００のなかからユーザによって選択される。送信先候補として選択された印刷装置１００には、ユーザによって優先度が設定される。印刷ジョブデータの複製は、優先度の高い順に送信先候補の印刷装置１００に送信される。
【００３７】
このように、本実施の形態に係る印刷装置１００では、印刷ジョブデータを保持しているか否かを問合せる対象とする印刷装置、受信した印刷ジョブデータの転送を許可する他の印刷装置、及び受信した印刷ジョブデータの複製を送信する送信先候補となる印刷装置等が予め登録（設定）される。
【００３８】
記憶装置１１８はさらに、情報処理装置２００から送信された印刷ジョブデータを記憶する印刷データ記憶部１１８ａを含む。印刷データ記憶部１１８ａには、他の印刷装置から送信された、印刷ジョブデータの複製データも記憶される。さらに上記ＲＡＭ１１６は、情報処理装置２００等から受信した印刷ジョブデータを印刷データ記憶部１１８ａに保存するまで保持するためのバッファメモリとしての機能を持つ。
【００３９】
ＢＵＳライン１７０には、さらに、操作部１２０、ユーザ認証部１３０、印刷処理部１４０、ネットワーク通信部１５０及び入出力ＩＦ１６０が電気的に接続される。
【００４０】
操作部１２０はユーザによる操作を受付ける。この操作部１２０は、タッチパネルディスプレイ１２２を含む。タッチパネルディスプレイ１２２は、液晶パネル等で構成された表示パネルと、表示パネルの上に配置され、タッチされた位置を検出するタッチパネル（以上、いずれも図示せず。）とを含む。表示パネルは、印刷装置１００の状態及び各種処理の状態に関する情報等の各種情報をユーザに提供する。このタッチパネルディスプレイ１２２は、ユーザに対して対話的な操作インターフェイス（ＵＩ）を提供する。この対話的な操作インターフェイスは、タッチパネルから印刷装置１００全体の動作に対するユーザの指示を受付け、その指示の内容を表示パネルに表示するとともに、その指示に応じた制御信号を制御部１１０等に対して出力する。
【００４１】
ユーザ認証部１３０は、ＣＰＵ１１２の制御の下で、ユーザに対して認証処理を実行する。ユーザ認証部１３０は、操作部１２０から入力されたユーザ情報（ユーザ識別情報）、又はＩＣカードを読取ることで取得したユーザ情報（ユーザ識別情報）を、記憶装置１１８が保持しているユーザ情報（ユーザ識別情報）と照合することによりユーザ認証を行なう。入力されたユーザ情報又はＩＣカードから読取ったユーザ情報が、記憶装置１１８が保持しているユーザ情報と一致する場合、当該ユーザは認証される（認証成功）。入力されたユーザ情報又はＩＣカードから読取ったユーザ情報が、記憶装置１１８が保持しているユーザ情報と一致しない場合は、当該ユーザは認証されない（認証失敗）。ユーザ認証時には、タッチパネルディスプレイ１２２に認証画面（図示せず。）が表示される。ユーザ情報の入力は認証画面から行なわれる。ＩＣカードを読取る場合は、認証画面にはＩＣカードの読取方法等の認証操作のガイド情報が表示される。ＩＣカードは、印刷装置１００を利用するユーザに配布されている認証用カードである。このＩＣカードには当該ＩＣカードを所持するユーザを特定するユーザ情報（例えばユーザＩＤ）が予め記憶されている。後述するように、情報処理装置２００から送信される印刷ジョブデータには、当該印刷ジョブデータを送信したユーザを識別するためのユーザ情報が付加されている。ユーザ認証部１３０は、ユーザに対して認証処理を実行すると、認証したユーザのユーザ情報と受信した印刷ジョブデータに付加されているユーザ情報とを照合することにより、認証したユーザに対する印刷ジョブデータの印刷の可否を判定する。
【００４２】
印刷処理部１４０は、印刷データによって示される画像をカラー又は単色で記録用紙に印刷するものであって、例えば、感光体ドラム、帯電装置、レーザースキャンユニット（ＬＳＵ）、現像装置、転写装置、クリーニング装置、定着装置、及び除電装置等を備えている。印刷処理部１４０には、記録用紙の搬送路が設けられており、図示しない給紙部から給紙されてきた記録用紙が搬送路に沿って搬送される。印刷処理部１４０の搬送路に沿って記録用紙が搬送されている途中で、記録用紙が感光体ドラムと転写装置との間を通過し、さらに定着装置を通過して、記録用紙に対する印刷が行なわれる。
【００４３】
感光体ドラムは、一方向に回転し、その表面は、クリーニング装置と除電装置によりクリーニングされた後、帯電装置により均一に帯電される。レーザースキャンユニットは、印刷対象の画像データに基づいてレーザー光を変調し、このレーザー光によって感光体ドラムの表面を主走査方向に繰返し走査して、静電潜像を感光体ドラムの表面に形成する。現像装置は、トナーを感光体ドラムの表面に供給して静電潜像を現像し、トナー像を感光体ドラムの表面に形成する。転写装置は、転写装置と感光体ドラムとの間を通過していく記録用紙に感光体ドラムの表面のトナー像を転写する。
【００４４】
定着装置は、記録用紙を加熱するための加熱ローラと、記録用紙を加圧するための加圧ローラとを含む。記録用紙は、加熱ローラによって加熱され、かつ、加圧ローラによって加圧されることによって、記録用紙上に転写されたトナー像が記録用紙に定着される。定着装置から排出された（印刷された）記録用紙は排紙トレイに排出される。
【００４５】
ネットワーク通信部１５０は、有線又は無線（本実施の形態においては有線）によりネットワーク回線３０とのインターフェイスをとる。印刷装置１００は、このネットワーク通信部１５０を介して、ネットワーク回線３０上の他の印刷装置１００及び情報処理装置２００等と、所定の通信プロトコルにしたがったデータ通信を行なうことができる。印刷装置１００は、ネットワーク通信部１５０を介して、情報処理装置２００から印刷ジョブ等の各種処理の実行を命令する命令信号を受信できる。
【００４６】
入出力ＩＦ１６０は、例えばＵＳＢケーブル３２等による情報処理装置２００との接続を提供する。印刷装置１００は、入出力ＩＦ１６０を介して、情報処理装置２００から印刷ジョブ等の各種処理の実行を命令する命令信号を受信することもできる。
【００４７】
《情報処理装置２００》
図３を参照して、情報処理装置２００は、情報処理装置２００全体を制御するＣＰＵ２１０、プログラム等を記憶するＲＯＭ２２０、揮発性の記憶装置であるＲＡＭ２３０、通電が遮断された場合にもデータを保持する不揮発性記憶装置であるＨＤＤ２４０、マウス２５２及びキーボード２５４との間の接続に関するインターフェイスを提供する入力ＩＦ２５０、ディスプレイ２６２との間の接続に関するインターフェイスを提供するディスプレイＩＦ２６０、有線又は無線（本実施の形態においては有線）によりネットワーク回線３０への接続を提供するネットワークＩＦ２７０、光ディスク２８２が装着される光ディスクドライブ２８０、印刷装置１００との間の接続に関するインターフェイスを提供する入出力ＩＦ２９０、並びにバス２９２を含む。
【００４８】
光ディスクドライブ２８０は、光ディスク２８２に対する情報の書込及び光ディスク２８２からの情報の読出を行なう。入出力ＩＦ２９０は、例えばＵＳＢケーブル３２等による印刷装置１００との接続を提供する。
【００４９】
各機能部は、バス２９２に接続されており、各機能部間のデータ（制御情報を含む）交換は、バス２９２を介して行なわれる。バス２９２、ＲＯＭ２２０、ＲＡＭ２３０、ＨＤＤ２４０、入力ＩＦ２５０、ディスプレイＩＦ２６０、ネットワークＩＦ２７０、光ディスクドライブ２８０、及び入出力ＩＦ２９０は、いずれもＣＰＵ２１０の制御のもとに協調して動作し、情報処理装置２００において種々のアプリケーションによる処理を実現する。それらアプリケーションは、例えば、ワードプロセッサ文書作成処理、表計算文書作成処理、又はこれらの作成処理により作成された電子データを印刷装置１００へ送信する印刷処理等を含む。
【００５０】
情報処理装置２００には、図形描画ツール及びワードプロセッサ等のアプリケーションプログラム、並びに、印刷データの印刷ジョブを実現するためのプリンタドライバプログラム（以下単に「プリンタドライバ」と記す場合がある。）がインストールされている。情報処理装置２００は、上記アプリケーションプログラムを使用するユーザの指示に応じて、文字及び図形等を含む文書を出力するための印刷データを作成し、作成した印刷データをプリンタドライバによってプリンタ記述言語に変換して、印刷装置１００に対して送信できる。
【００５１】
情報処理装置２００はさらに、印刷ジョブ送信用のポートの設定を１つ以上持つ。情報処理装置２００は、印刷時には、設定されているポートに対して優先度の高いものから１つずつ利用の可否を判定し、最初に見つかった利用可能なポートを介して印刷ジョブデータを送信する。送信する印刷ジョブデータには、ジョブを識別するための情報（例えばジョブ投入日時、原稿ファイルの名称等）に加えて、ユーザ情報、及びジョブの有効期限等が付加される。
【００５２】
［ソフトウェア構成］
《印刷ジョブデータの受信時に実行されるプログラム》
図４及び図５を参照して、印刷ジョブデータを受信して保持するために、印刷装置１００で実行されるコンピュータプログラムの制御構造について説明する。このプログラムは、印刷ジョブデータの受信を検出したことに応じて開始する。
【００５３】
図４を参照して、このプログラムは、印刷ジョブデータの受信（受信バッファ分の受信）を開始するステップＳ１０００と、ステップＳ１０００の後に実行され、複製であることを判別するための後述するフラグ情報に基づいて、受信した印刷ジョブデータが複製データか否かをチェックするステップＳ１０１０と、ステップＳ１０１０の後に実行され、ステップＳ１０１０のチェック結果に基づいて、受信した印刷ジョブデータが複製データか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１０２０と、ステップＳ１０２０において、受信した印刷ジョブデータが複製データではないと判定された場合に実行され、受信した印刷ジョブデータに自装置の識別情報（ＩＰアドレス）を付加するステップＳ１０３０と、ステップＳ１０３０の後に実行され、受信した印刷ジョブデータにジョブの識別情報（各印刷装置１００で一意に割振られる例えばジョブＩＤ等）を付加するステップＳ１０４０と、ステップＳ１０４０の後、又はステップＳ１０２０において、受信した印刷ジョブデータは複製データであると判定された場合に実行され、受信バッファのデータを印刷データ記憶部１１８ａに保存するステップＳ１０５０と、ステップＳ１０５０の後に実行され、以下に説明するステップＳ１０７０及びステップＳ１０８０を印刷ジョブデータの受信が完了するまで繰返すステップＳ１０６０とを含む。ステップＳ１０３０において印刷ジョブデータに付加される識別情報は、後述する印刷完了時の通知先情報としても利用される。
【００５４】
ステップＳ１０６０で印刷ジョブデータの受信が完了するまで繰返される処理は、印刷ジョブデータの続きのデータを受信（受信バッファ分受信）するステップＳ１０７０と、受信した続きのデータを印刷データ記憶部１１８ａに保存するステップＳ１０８０とを含む。
【００５５】
図５を参照して、このプログラムはさらに、ステップＳ１０６０（図４参照）の後に実行され、受信した印刷ジョブデータが複製データか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１０９０と、ステップＳ１０９０において、受信した印刷ジョブデータが複製データではないと判定された場合に実行され、自装置の設定が複製データを送信する複製送信設定になっているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１１００と、ステップＳ１１００において、自装置の設定が複製送信設定になっていると判定された場合に実行され、ネットワーク通信部１５０を介して、複製の送信処理を実行するステップＳ１１１０とを含む。ステップＳ１１１０の処理が終了した場合、ステップＳ１０９０において、受信した印刷ジョブデータが複製データであると判定された場合、又は、ステップＳ１１００において、自装置の設定が複製送信設定になっていないと判定された場合は、このプログラムは終了する。
【００５６】
図６及び図７は、図５のステップＳ１１１０の詳細なフローである。図６を参照して、このルーチンは、以下に説明するステップＳ１２１０〜ステップＳ１２３０を複製送信先の優先度設定に従い、優先度の高い候補の印刷装置から順に候補がなくなるまで繰返すことにより複製送信先リストを作成するステップＳ１２００と、ステップＳ１２００の後に実行され、印刷データ記憶部１１８ａの印刷ジョブデータに印刷完了時の通知先情報を付加するステップＳ１２４０とを含む。
【００５７】
ステップＳ１２４０では、通知先情報として、送信元の印刷装置１００（自装置）のＩＰアドレス、及び複製送信先となる全ての印刷装置１００のＩＰアドレスが印刷ジョブデータに付加される。
【００５８】
ステップＳ１２００で優先度の高い印刷装置から順に候補がなくなるまで繰返される処理は、複製送信の可否を送信先候補の印刷装置１００に問合せるステップＳ１２１０と、ステップＳ１２１０の後に実行され、問合せ結果に基づいて、複製の送信が可能か否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１２２０と、ステップＳ１２２０において、複製の送信が可能であると判定された場合に実行され、問合せを行なった印刷装置１００を複製送信先リストに加えるステップＳ１２３０とを含む。ステップＳ１２３０の処理が終了した場合、又はステップＳ１２２０において複製の送信が可能ではないと判定された場合は、候補がなくなるまで上記処理を繰返す。
【００５９】
図７を参照して、このルーチンはさらに、ステップＳ１２４０（図６参照）の後に実行され、以下に説明するステップＳ１２６０〜ステップＳ１３２０を複製送信先リストのそれぞれについてリストの項目数だけ繰返すステップＳ１２５０を含む。
【００６０】
ステップＳ１２５０で複製送信先リストの項目数だけ繰返す処理は、印刷データ記憶部１１８ａから印刷ジョブデータを読込む（送信バッファ分読込む）ステップＳ１２６０と、ステップＳ１２６０の後に実行され、読込んだ印刷ジョブデータに対して複製であることを表わすフラグ情報を付加するステップＳ１２７０と、ステップＳ１２７０の後に実行され、読込んだ印刷ジョブデータに対して転送を許可する他の印刷装置１００のＩＰアドレスを付加するステップＳ１２８０と、ステップＳ１２８０の後に実行され、ネットワーク通信部１５０を介して、フラグ情報及び転送を許可する他の印刷装置１００のＩＰアドレス等の情報が付加された印刷ジョブデータを送信する（送信バッファ分送信する）ステップＳ１２９０と、ステップＳ１２９０の後に実行され、以下のステップＳ１３１０及びステップＳ１３２０を印刷ジョブデータの送信が完了するまで繰返すステップＳ１３００とを含む。ステップＳ１３１０では、印刷データ記憶部１１８ａから印刷ジョブデータの続きを送信バッファ分だけ読込む。ステップＳ１３２０では、ステップＳ１３１０で読込んだ印刷ジョブデータの続きを送信する。ステップＳ１２５０では、複製送信先リストの順、すなわち優先度順に印刷ジョブデータの複製が送信される。
【００６１】
《印刷処理プログラム》
図８を参照して、印刷ジョブデータの印刷処理を行なうために、印刷装置１００で実行されるコンピュータプログラムの制御構造について説明する。このプログラムは、認証画面がタッチパネルディスプレイ１２２に表示されたことに応じて開始する。
【００６２】
このプログラムは、ユーザ認証処理によりユーザの認証がされたか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ２０００と、ステップＳ２０００において、ユーザの認証がされなかったと判定された場合に実行され、タッチパネルディスプレイ１２２にエラー表示を行なうステップＳ２０２０と、ステップＳ２０００において、ユーザの認証がされたと判定された場合に実行され、予め登録されているＩＰアドレスの印刷装置に対して、認証されたユーザ（以下「認証ユーザ」と呼ぶ場合がある。）の印刷ジョブデータを保持しているか否かを問合せるステップＳ２０１０と、ステップＳ２０１０の後に実行され、問合せを送信してから所定の時間内に、ネットワーク通信部１５０を介して、問合せに応答して他の印刷装置１００から送信された印刷ジョブの情報を受信するステップＳ２０３０と、ステップＳ２０３０の後に実行され、印刷ジョブの情報を、重複を排して操作部１２０（タッチパネルディスプレイ１２２）にリスト表示するステップＳ２０４０とを含む。ステップＳ２０３０では、所定の時間内に問合せを行なった全ての印刷装置から応答があった場合、所定の時間が経過する前に全ての印刷ジョブデータの情報を受信する。一部の印刷装置からの応答がない場合は、所定の時間になるまで待機する。所定の時間が経過すると、印刷ジョブデータの情報の受信待機状態が終了する。なお、所定の時間内に問合せを行なったいずれの印刷装置からも応答がない場合は、印刷ジョブデータの情報は受信されない。
【００６３】
ステップＳ２０４０では、認証ユーザの印刷ジョブデータが自装置の印刷データ記憶部１１８ａに保持されている場合は、当該印刷ジョブデータの情報についても操作部１２０にリスト表示される。その際、印刷装置１００は、印刷データ記憶部１１８ａの印刷ジョブデータに付加されているユーザ情報と認証ユーザのユーザ情報とを照合することにより、認証ユーザの印刷ジョブデータが印刷データ記憶部１１８ａに保持されているか否かを判定する。リスト表示される印刷ジョブデータの情報は、プリンタドライバが印刷ジョブデータを識別するために付加した情報であって、例えばジョブ投入日時、原稿ファイルの名称等を含む。
【００６４】
このプログラムはさらに、ステップＳ２０４０の後に実行され、操作部１２０にリスト表示された印刷ジョブデータの情報に対して、ユーザによる選択操作がされたか否かを判定し、選択操作がされるまで待機するステップＳ２０５０と、ステップＳ２０５０において、選択操作がされたと判定された場合に実行され、選択された印刷ジョブが他の印刷装置１００が保持するジョブであるか否か、すなわち問合せを行なった他の印刷装置１００から送信された情報に対応する印刷ジョブであるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ２０６０と、ステップＳ２０６０において、選択された印刷ジョブが他の印刷装置１００が保持するジョブであると判定された場合に実行され、当該他の印刷装置１００に対して、選択された印刷ジョブに対応する印刷ジョブデータの転送要求を送信するステップＳ２０７０と、ステップＳ２０７０の後に実行され、転送要求に応答して他の印刷装置１００から送信された印刷ジョブデータを受信するステップＳ２０８０と、ステップＳ２０８０の後、又はステップＳ２０６０において、選択された印刷ジョブが他の印刷装置１００が保持するジョブではない、すなわち自装置が保持するジョブであると判定された場合に実行され、印刷処理部１４０を制御して、受信した印刷ジョブデータ（印刷データ）の印刷処理を実行するステップＳ２０９０と、ステップＳ２０９０の後に実行され、ネットワーク通信部１５０を介して、印刷ジョブデータに付加されている通知送信先の印刷装置１００に対して、印刷完了の通知を送信するステップＳ２１００と、ステップＳ２１００の後に実行され、印刷処理が終了した印刷ジョブデータを印刷データ記憶部１１８ａから消去するステップＳ２１１０とを含む。ステップＳ２０２０、又はステップＳ２１１０の処理が終了すると、このプログラムは終了する。
【００６５】
《印刷ジョブデータの転送プログラム》
図９を参照して、認証ユーザの印刷ジョブデータを保持しているか否かの問合せに応答して印刷ジョブデータを転送するために、印刷装置１００で実行されるコンピュータプログラムの制御構造について説明する。このプログラムは、問合せの受信を検出したことに応じて開始する。
【００６６】
このプログラムは、ネットワーク通信部１５０を介して、認証ユーザの印刷ジョブデータを保持しているか否かの問合せを受信するステップＳ３０００と、ステップＳ３０００の後に実行され、問合せに含まれる認証ユーザのユーザ情報と印刷ジョブデータに付加されているユーザ情報とを照合することにより、問合せの印刷ジョブデータが自装置の印刷データ記憶部１１８ａに保持されているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ３０１０と、ステップＳ３０１０において、問合せの印刷ジョブデータが印刷データ記憶部１１８ａに保持されていると判定された場合に実行され、予め登録されている、又は印刷ジョブデータに付加されている、受信した印刷ジョブデータの転送を許可する印刷装置のＩＰアドレスに基づいて、問合せを送信してきた他の印刷装置１００が、転送を許可する印刷装置であるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ３０２０と、ステップＳ３０２０において、問合せを送信してきた他の印刷装置１００が、転送を許可する印刷装置であると判定された場合に実行され、ネットワーク通信部１５０を介して、問合せを送信してきた他の印刷装置１００に対して、問合せの印刷ジョブデータの情報を送信するステップＳ３０３０とを含む。
【００６７】
このプログラムはさらに、ステップＳ３０３０の後に実行され、印刷ジョブデータの情報を送信してから所定の時間が経過したか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ３０４０と、ステップＳ３０４０において、所定の時間が経過していないと判定された場合に実行され、ネットワーク通信部１５０を介して、印刷ジョブデータの送信を要求する送信要求を受信したか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ３０５０とを含む。ステップＳ３０５０において、送信要求を受信していないと判定された場合は、制御はステップＳ３０４０に戻る。
【００６８】
このプログラムはさらに、ステップＳ３０５０において、送信要求を受信したと判定された場合に実行され、ネットワーク通信部１５０を介して、要求された印刷ジョブデータを、送信要求を送信してきた他の印刷装置１００に送信するステップＳ３０６０と、ステップＳ３０６０の後に実行され、ネットワーク通信部１５０を介して、送信要求を送信してきた他の印刷装置１００からの印刷完了の通知を受信するステップＳ３０７０と、ステップＳ３０７０の後に実行され、受信した送信要求に応じて転送（送信）した印刷ジョブデータを印刷データ記憶部１１８ａから消去するステップＳ３０８０とを含む。ステップＳ３０１０において、問合せの印刷ジョブデータが自装置の印刷データ記憶部１１８ａに保持されていないと判定された場合、ステップＳ３０２０において、問合せを送信してきた他の印刷装置１００が、転送を許可する印刷装置ではないと判定された場合、ステップＳ３０４０において、印刷ジョブデータの情報を送信してから所定の時間が経過したと判定された場合、又はステップＳ３０８０の処理が終了した場合は、このプログラムは終了する。
【００６９】
《未完了の印刷ジョブデータの消去プログラム》
図１０及び図１１を参照して、印刷完了の通知を受信できないことに起因して印刷データ記憶部１１８ａに残っている印刷ジョブデータを消去するために、印刷装置１００で実行されるコンピュータプログラムの制御構造について説明する。このプログラムは、自装置に電源が投入されたことに応じて開始する。
【００７０】
図１０を参照して、このプログラムは、印刷データ記憶部１１８ａのチェックを行なうステップＳ４０００と、ステップＳ４０００の後に実行され、印刷データ記憶部１１８ａに未完了の印刷ジョブデータがあるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ４０１０と、ステップＳ４０１０において、印刷データ記憶部１１８ａに未完了の印刷ジョブデータがあると判定された場合に実行され、以下に説明するステップＳ４０３０〜ステップＳ４０７０をそれぞれの未完了の印刷ジョブデータについて繰返すステップＳ４０２０とを含む。ステップＳ４０１０では、印刷データ記憶部１１８ａに印刷ジョブデータが保持されているか否かに応じて、未完了の印刷ジョブデータがあるか否かが判定される。
【００７１】
ステップＳ４０２０で未完了の印刷ジョブデータの数だけ繰返される処理は、印刷ジョブデータに付加されている有効期限情報に基づいて、有効期限を過ぎているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ４０３０と、ステップＳ４０３０において、有効期限を過ぎていないと判定された場合に実行され、複製であることを表わすフラグ情報に基づいて、未完了の印刷ジョブデータが他の印刷装置１００から受信した複製データであるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ４０４０と、ステップＳ４０４０において、当該印刷ジョブデータは複製データではないと判定された場合に実行され、転送を許可している全ての印刷装置に対して、当該印刷ジョブデータの印刷処理が完了しているか否かを問合せるステップＳ４０５０と、ステップＳ４０５０の後に実行され、問合せ先の他の印刷装置１００から印刷完了の通知があるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ４０６０と、ステップＳ４０３０において、有効期限を過ぎていると判定された場合、ステップＳ４０４０において、当該印刷ジョブデータは複製データであると判定された場合、又はステップＳ４０６０において、問合せ先の他の印刷装置１００から印刷完了の通知があった場合に実行され、当該印刷ジョブデータを消去するステップＳ４０７０とを含む。ステップＳ４０６０において、問合せ先の他の印刷装置１００から印刷完了の通知がなかったと判定された場合、又はステップＳ４０７０の処理が終了した場合は、次の未完了の印刷ジョブデータに対象を移し、上記処理を繰返す。
【００７２】
図１１を参照して、このプログラムはさらに、ステップＳ４０１０（図１０参照）において、印刷データ記憶部１１８ａに未完了の印刷ジョブデータがないと判定された場合、又は、ステップＳ４０２０（図１０参照）の後に実行され、記憶装置１１８に記憶されている印刷完了ジョブ情報をチェックするステップＳ４０８０と、ステップＳ４０８０の後に実行され、印刷完了ジョブ情報のチェック結果に基づいて、他の印刷装置１００に対する印刷完了の通知が未完了のジョブがあるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ４０９０と、ステップＳ４０９０において、通知が未完了の印刷ジョブデータがあると判定された場合に実行され、以下に説明するステップＳ４１１０〜ステップＳ４１５０をそれぞれの通知未完了の印刷ジョブデータについて繰返すステップＳ４１００とを含む。ステップＳ４０８０では、自装置において印刷処理が完了したジョブの情報である上記印刷完了ジョブ情報がチェックされる。
【００７３】
ステップＳ４１００で通知未完了の印刷ジョブデータの数だけ繰返される処理は、ステップＳ４１２０及びステップＳ４１３０をそれぞれの未通知の印刷装置について繰返すステップＳ４１１０と、ステップＳ４１１０の後に実行され、未通知の印刷装置がなくなったか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ４１４０と、ステップＳ４１４０において、未通知の印刷装置がなくなったと判定された場合に実行され、印刷完了の通知に関するステータスを通知完了に更新するステップＳ４１５０とを含む。ステップＳ４１４０において、未通知の印刷装置がなくなっていないと判定された場合、又はステップＳ４１５０の処理が終了した場合は、通知未完了の印刷ジョブデータの数と同じ回数になるまで上記処理を繰返す。ステップＳ４１２０では、未通知の印刷装置と通信可能か否かが判定される。ステップＳ４１３０では、ステップＳ４１２０において通信可能と判定された他の印刷装置１００に対して印刷完了が通知される。
【００７４】
［動作］
本実施の形態に係る印刷システム５０は以下のように動作する。以下の説明では、印刷システム５０の動作の内、本発明に関連する部分のみを説明する。他の動作は従来の印刷システムの動作と同じである。
【００７５】
本実施の形態に係る印刷システム５０では、各印刷装置１００において、受信した印刷ジョブデータの複製を転送するか否かを設定により切替えることが可能である。以下では、印刷ジョブデータの複製を転送しないよう設定されている場合と、複製を転送するよう設定されている場合とに分けて説明する。
【００７６】
《印刷ジョブデータの複製を転送しないよう設定されている場合の動作》
図１２を参照して、印刷装置１００ａには、受信した印刷ジョブデータの転送を許可する印刷装置のＩＰアドレスとして、印刷装置１００ｂのＩＰアドレス、及び印刷装置１００ｄのＩＰアドレスが登録されているものとする。印刷装置１００ｄには、認証ユーザの印刷ジョブデータを保持しているか否かを問合せる対象とする印刷装置のＩＰアドレスとして、印刷装置１００ａのＩＰアドレス、及び印刷装置１００ｂのＩＰアドレスが登録されているものとする。なお、印刷装置１００ｂ及び印刷装置１００ｃには、受信した印刷ジョブデータの転送を許可する印刷装置のＩＰアドレス、及び認証ユーザの印刷ジョブデータを保持しているか否かを問合せる対象とする印刷装置のＩＰアドレスのいずれも登録されていないものとする。
【００７７】
ユーザＡは、情報処理装置２００を操作して、当該情報処理装置２００から印刷装置１００ａに印刷ジョブデータを送信したとする。印刷装置１００ａは、印刷ジョブデータの受信を開始する（図４に示すステップＳ１０００）。印刷装置１００ａは、印刷ジョブデータを受信しても印刷処理を即座に開始せず、受信した印刷ジョブデータの先頭に、受信した印刷装置（印刷装置１００ａ）のＩＰアドレス、及びジョブの識別情報（例えばジョブＩＤ等）を付加して（ステップＳ１０３０及びステップＳ１０４０）、当該印刷ジョブデータを印刷データ記憶部１１８ａに保持する（ステップＳ１０５０及びステップＳ１０６０）。
【００７８】
ユーザＡは、出力先の印刷装置１００ａとは異なる印刷装置１００ｄに出向き、当該印刷装置１００ｄに対して認証操作を行なう。印刷装置１００ｄはユーザ認証処理を実行する。印刷装置１００ｄはユーザＡを認証すると（図８に示すステップＳ２０００においてＹＥＳ）、問合せ先として予め登録されている印刷装置１００ａ及び印刷装置１００ｂに対してユーザＡ（認証ユーザ）の印刷ジョブデータを保持しているか否か問合せる（ステップＳ２０１０）。なお、認証操作を行なったユーザの認証がされない場合は、タッチパネルディスプレイ１２２に認証失敗を示すエラー表示がされる（ステップＳ２０２０）。
【００７９】
印刷装置１００ａ及び印刷装置１００ｂは、印刷装置１００ｄからの問合せを受信すると（図９に示すステップＳ３０００）、問合せに含まれる認証ユーザのユーザ情報と印刷ジョブデータに付加されているユーザ情報とを照合して、問合せの印刷ジョブデータが自装置の印刷データ記憶部１１８ａに保持されているか否かを判定する。なお、印刷データ記憶部１１８ａに印刷ジョブデータが１つも保持されていない場合は、ユーザ情報を照合することなく、問合せの印刷ジョブデータが自装置に保持されていないと判定される。
【００８０】
印刷装置１００ａにはユーザＡの印刷ジョブデータが保持されているため、印刷装置１００ａは、問合せの印刷ジョブデータが自装置の印刷データ記憶部１１８ａに保持されていると判定する（ステップＳ３０１０においてＹＥＳ）。印刷装置１００ａにおいては、問合せを送信してきた印刷装置１００ｄが、受信した印刷ジョブデータの転送を許可する印刷装置として予め登録されている。印刷装置１００ａは、問合せを送信してきた印刷装置１００ｄは転送を許可する印刷装置であると判定して（ステップＳ３０２０においてＹＥＳ）、保持している印刷ジョブデータの情報を印刷装置１００ｄに送信する（ステップＳ３０３０）。
【００８１】
印刷装置１００ｂにもユーザＡの印刷ジョブデータが保持されている場合は、印刷装置１００ａと同様にして、保持している印刷ジョブデータの情報が印刷装置１００ｄに送信される。ここでは、印刷装置１００ｂには、ユーザＡの印刷ジョブデータが保持されていないものとする。ユーザＡの印刷ジョブデータを保持していない印刷装置１００ｂは、その印刷ジョブデータの情報を印刷装置１００ｄに送信できない。そのため、印刷装置１００ｂは、ユーザＡの印刷ジョブデータが保持されていないと判定すると（ステップＳ３０１０においてＮＯ）、問合せを受信した後の処理を終了する。ユーザＡの印刷ジョブデータを保持している場合であっても（ステップＳ３０１０においてＹＥＳ）、印刷ジョブデータの転送を許可する印刷装置として印刷装置１００ｄが登録されていなければ（ステップＳ３０２０においてＮＯ）、同様に、問合せを受信した後の処理を終了する。
【００８２】
印刷装置１００ｄは、問合せを行なった印刷装置（印刷装置１００ａ、印刷装置１００ｂ）から印刷ジョブデータの情報を受信するまで待機する。印刷装置１００ｄは、問合せを送信してから所定の時間が経過するまでに応答があると、その応答による印刷ジョブデータの情報を受信する（ステップＳ２０３０）。具体的には、印刷装置１００ｄは、印刷装置１００ａから送信された印刷ジョブデータの情報を受信する。一方、問合せを送信してから所定の時間が経過した場合、印刷装置１００ｄは、印刷ジョブデータの情報の受信待機状態を終了する。すなわち、タイムアウト処理を行なう。
【００８３】
印刷装置１００ｄは、印刷装置１００ａから取得した情報に加え、自装置が保持しているユーザＡの印刷ジョブデータの情報、及び印刷装置１００ｂから取得したユーザＡの印刷ジョブデータの情報を、重複を排して操作部１２０（タッチパネルディスプレイ１２２）にリスト表示する（ステップＳ２０４０）。この例では、自装置が保持しているユーザＡの印刷ジョブデータはなく、印刷装置１００ｂからも情報を取得していないため、印刷装置１００ａから取得した情報のみがリスト表示される。表示される内容は、例えばジョブ投入日時、原稿ファイルの名称等の、プリンタドライバが印刷ジョブデータを識別するために付加した情報である。
【００８４】
ユーザＡが、印刷装置１００ａで保持されているジョブを選択して印刷実行を指示すると（ステップＳ２０５０においてＹＥＳ、かつステップＳ２０６０においてＹＥＳ）、印刷装置１００ｄは、印刷装置１００ａに対して印刷ジョブデータの転送を要求する（ステップＳ２０７０）。
【００８５】
図１３を参照して、印刷装置１００ａは、所定の時間が経過するまでに、印刷ジョブデータの送信要求を受信すると（図９に示すステップＳ３０５０においてＹＥＳ）、送信要求を送信してきた印刷装置１００ｄに対して、要求された印刷ジョブデータを送信する（ステップＳ３０６０）。
【００８６】
印刷装置１００ｄは、印刷装置１００ａから送信された印刷ジョブデータを受信すると（図８に示すステップＳ２０８０）、受信した印刷ジョブデータの印刷処理を実行する（ステップＳ２０９０）。印刷処理が終了すると、印刷装置１００ｄは、印刷ジョブデータに付加されている印刷完了時の通知先情報にしたがい、印刷装置１００ａに対して、印刷完了の通知を送信する（ステップＳ２１００）。印刷装置１００ｄは、印刷処理が終了した印刷ジョブデータを消去する（ステップＳ２１１０）。印刷装置１００ａは、印刷装置１００ｄから送信された印刷完了の通知を受信すると（図９に示すステップＳ３０７０）、自装置の印刷データ記憶部１１８ａに保持している該当ジョブのデータ（印刷ジョブデータ）を消去する（ステップＳ３０８０）。
【００８７】
一方、印刷装置１００ｄの印刷データ記憶部１１８ａにユーザＡの印刷ジョブデータが保持されている場合であって、ユーザＡが、印刷装置１００ｄで保持されているジョブを選択して印刷実行を指示した場合（図８に示すステップＳ２０６０においてＮＯ）、印刷装置１００ｄは、自装置が保持している印刷ジョブデータの印刷処理を実行する（ステップＳ２０９０）。なお、印刷装置１００ｄが保持するユーザＡの印刷ジョブデータと同じ印刷ジョブデータが他の印刷装置１００に保持されている場合、他の印刷装置１００が保持する印刷ジョブデータを消去するために印刷装置１００ｄは当該他の印刷装置１００に印刷完了の通知を送信する（ステップＳ２１００）。具体的には、印刷ジョブデータに付加されている印刷完了時の通知先情報を参照し、印刷装置１００ｄ以外の印刷装置１００が通知先に含まれている場合には、その印刷装置１００に対して通知を送信する。ただし、ここでは、印刷ジョブデータの複製を転送しないよう設定されているため、印刷装置１００ｄが保持するユーザＡの印刷ジョブデータに付加されている通知先情報に他の印刷装置１００は含まれない。そのため、この場合は、印刷装置１００ｄは印刷完了の通知を送信しない。印刷処理が終了すると、印刷装置１００ｄは、自装置の印刷データ記憶部１１８ａに保持している該当ジョブのデータ（印刷ジョブデータ）を消去する（ステップＳ２１１０）。この場合、印刷装置１００ａには送信要求が送信されないため、印刷装置１００ａは、印刷ジョブデータの情報を送信してから所定の時間が経過すると（図９に示すステップＳ３０４０においてＹＥＳ）、送信要求の受信待機状態を終了する。すなわち、タイムアウト処理を行なう。
【００８８】
ここで、印刷装置１００ｄには、認証ユーザの印刷ジョブデータを保持しているか否かを問合せる対象とする印刷装置として印刷装置１００ｃが登録されていないため、ユーザＡが情報処理装置２００から印刷装置１００ｃに対して印刷ジョブデータを送信した場合は、印刷装置１００ｄからこの印刷ジョブの印刷処理を行なうことができない。また、印刷装置１００ａにおいて、受信した印刷ジョブデータの転送を許可する印刷装置には印刷装置１００ｃが含まれないため、印刷装置１００ｃにおいて、認証ユーザの印刷ジョブデータを保持しているか否かを問合せる対象とする印刷装置として印刷装置１００ａが登録されていたとしても、印刷装置１００ｃから印刷装置１００ａが受信した印刷ジョブの印刷処理を行なうことができない。
【００８９】
こうした状況を考慮して、ユーザＡが使用可能な全ての印刷装置１００について、相互に問合せ先の印刷装置の登録、転送許可の登録を行なうようにすることも可能である。これにより、ユーザＡは、情報処理装置２００からどの印刷装置に印刷ジョブデータを送信したかを意識することなく、手近で空いている印刷装置を使用して印刷処理（ロケーションフリー印刷）を行なうことができる。
【００９０】
《印刷ジョブデータの複製を転送するよう設定されている場合の動作》
ユーザが印刷ジョブデータを印刷装置１００ａに送信した後に、印刷処理を開始する操作をしばらくの間行なわなかった場合、その間に印刷装置１００ａの電源が落とされる等によって印刷装置１００ａが他の印刷装置と通信できない状態になることがある。この状態では、ユーザが、例えば印刷装置１００ｄから印刷処理を行おうとしても、印刷ジョブデータを保持する印刷装置１００ａから当該印刷ジョブデータを取得できないため、印刷処理を実行できない。ユーザが、印刷装置１００ａに対して印刷ジョブを送信していることを認識していれば、印刷装置１００ａの電源を入れればよいことに思い当たる。しかし、この場合、ユーザは印刷装置１００ａが設置されている場所まで移動して電源を入れる必要があるため、手間がかかる。普段からロケーションフリー印刷の環境で印刷を行なっているユーザとってはどの印刷装置に印刷ジョブを投入しているのか意識する必要がないため、印刷が実行できなくなると、どのようにすればよいか分からなくなる場合もある。このような問題が発生するリスクを低減するために、本実施の形態に係る印刷システム５０は、印刷ジョブデータを受信した印刷装置１００が、設定に基づいて他の印刷装置１００に印刷ジョブデータの複製を送信することが可能に構成されている。
【００９１】
図１４を参照して、印刷装置１００ａには、受信した印刷ジョブデータの転送を許可する印刷装置のＩＰアドレスとして、印刷装置１００ｂのＩＰアドレス、及び印刷装置１００ｄのＩＰアドレスが登録されているものとする。印刷装置１００ａでは、転送を許可する印刷装置のうち印刷装置１００ｂが複製を送信する送信先候補として設定されているものとする。印刷装置１００ｂ、印刷装置１００ｃ、及び印刷装置１００ｄの設定は、上述した印刷ジョブデータの複製を転送しない設定の場合と同じである。
【００９２】
この例においても、情報処理装置２００から印刷装置１００ａに印刷ジョブデータが送信された後に、印刷装置１００ｄから印刷を行なうものとする。ユーザＡが印刷装置１００ａに対して印刷ジョブデータを送信すると、これを受信した印刷装置１００ａは、印刷装置１００ｂと通信を行ない、印刷装置１００ｂに印刷ジョブデータの複製を送信する。
【００９３】
より詳細には、情報処理装置２００から印刷装置１００ａに印刷ジョブデータが送信されると、印刷装置１００ａは送信された印刷ジョブデータの受信を開始する（図４に示すステップＳ１０００）。印刷装置１００ａは、受信した印刷ジョブデータの先頭に、受信した印刷装置（印刷装置１００ａ）のＩＰアドレス、及びジョブの識別情報（例えばジョブＩＤ等）を付加して（ステップＳ１０３０及びステップＳ１０４０）、当該印刷ジョブデータを印刷データ記憶部１１８ａに保持する（ステップＳ１０５０及びステップＳ１０６０）。
【００９４】
受信した印刷ジョブデータは複製データではないため（図５に示すステップＳ１０９０においてＮＯ）、印刷装置１００ａは、自装置の設定が複製を送信する設定となっているか否かを判定する。複製を送信する送信先候補として印刷装置１００ｂが設定されているため、印刷装置１００ａは、自装置の設定が複製を送信する設定になっていると判定する（ステップＳ１１００においてＹＥＳ）。印刷装置１００ａは、複製の送信処理を実行する（ステップＳ１１１０）。
【００９５】
図６を参照して、印刷装置１００ａには、送信先の候補として印刷装置１００ｂのみが設定されているため、印刷装置１００ｂに対して複製送信の可否を問合せる（ステップＳ１２１０）。印刷装置１００ｂは電源が投入された状態であるものとする。印刷装置１００ａは、印刷装置１００ｂに複製を送信することが可能であると判定して（ステップＳ１２２０においてＹＥＳ）、印刷装置１００ｂを複製送信先リストに加える（ステップＳ１２３０）。これにより、複製送信先リストが作成される（ステップＳ１２００）。複製送信先リストの作成処理が終了すると、印刷装置１００ａは、印刷データ記憶部１１８ａに保持した、情報処理装置２００から受信した印刷ジョブデータに印刷完了時の通知先情報を付加する（ステップＳ１２４０）。具体的には、印刷装置１００ａは、印刷完了時の通知先情報として、自装置（送信元となる印刷装置１００ａ）のＩＰアドレス、及び複製送信先となる全ての印刷装置１００（ここでは、印刷装置１００ｂ）のＩＰアドレスを印刷ジョブデータに付加する。印刷完了時の通知先情報は、印刷データ記憶部１１８ａに保持された印刷ジョブデータに付加されるため、複製元のデータ、及び複製データの両方に付加されることになる。
【００９６】
印刷装置１００ａは、印刷データ記憶部１１８ａから印刷ジョブデータを読出し、複製であることを判別するためのフラグ情報、及び印刷ジョブデータの転送を許可する印刷装置のＩＰアドレスを先頭に付加して、複製送信先リストに含まれる印刷装置１００ｂに送信する（図７に示すステップＳ１２５０）。印刷ジョブデータの転送を許可する印刷装置のＩＰアドレスは、印刷装置１００ａが許可している印刷装置のＩＰアドレス（この場合、印刷装置１００ｂ及び印刷装置１００ｄのＩＰアドレス）である。
【００９７】
印刷装置１００ｂは、印刷装置１００ａから印刷ジョブデータを受信すると（図４に示すステップＳ１０００）、受信したデータが複製データか否かをチェックする（ステップＳ１０１０）。印刷装置１００ａから送信された印刷ジョブデータ（複製データ）には複製であることを判別するためのフラグ情報が付加されているため、印刷装置１００ｂは、このフラグ情報に基づいて、受信した印刷ジョブデータは複製データであると判定する（ステップＳ１０２０においてＹＥＳ）。印刷装置１００ｂは、受信した複製データを自装置の印刷データ記憶部１１８ａに保存する（ステップＳ１０５０及びステップＳ１０６０）。印刷データ記憶部１１８ａに保存した印刷ジョブデータは複製データであるため（図５に示すステップＳ１０９０においてＹＥＳ）、印刷装置１００ｂにおいて、複製を送信するよう設定されていたとしても、複製データの複製が直ちに他の印刷装置１００に送信されることはない。したがって、ユーザＡが情報処理装置２００から送信した印刷ジョブデータは、印刷装置１００ａ及び印刷装置１００ｂにおいて保持される。
【００９８】
図１５を参照して、印刷装置１００ａの電源が落とされた後に、ユーザＡは、印刷装置１００ｄの設置場所に出向き、印刷装置１００ｄで認証操作を行なったとする。印刷装置１００ｄはユーザ認証処理を実行し、ユーザＡを認証すると（図８に示すステップＳ２０００においてＹＥＳ）、登録されている印刷装置１００ａ及び印刷装置１００ｂに対してユーザＡ（認証ユーザ）の印刷ジョブデータを保持しているか否か問合せる（ステップＳ２０１０）。印刷装置１００ａは電源が落とされているため、印刷装置１００ｄからの問合せを受信できない。電源が落とされていない印刷装置１００ｂは、印刷装置１００ｄからの問合せを受信することが可能である。印刷装置１００ｂが保持する複製データには、印刷ジョブデータの転送を許可する印刷装置のＩＰアドレスとして印刷装置１００ｄのＩＰアドレスが付加されている。そのため、印刷装置１００ｂは、印刷装置１００ｄからの問合せを受信すると（図９に示すステップＳ３０００）、上述の動作と同様にして、ユーザＡの印刷ジョブデータ（複製データ）の情報を印刷装置１００ｄに送信する（図９に示すステップＳ３０３０）。
【００９９】
印刷装置１００ｂは、所定の時間が経過するまでに、印刷装置１００ｄから送信された印刷ジョブデータの送信要求を受信すると（図９に示すステップＳ３０５０においてＹＥＳ）、印刷装置１００ｄに対して、要求された印刷ジョブデータを送信する（ステップＳ３０６０）。
【０１００】
印刷装置１００ｄは、印刷装置１００ｂから送信された印刷ジョブデータを受信すると（図８に示すステップＳ２０８０）、受信した印刷ジョブデータの印刷処理を実行する（ステップＳ２０９０）。印刷処理が終了すると、印刷装置１００ｄは、印刷ジョブデータに付加されている印刷完了の通知先情報にしたがい、印刷装置１００ａ及び印刷装置１００ｂに対して印刷完了の通知を送信する（ステップＳ２１００）。印刷装置１００ｂは、印刷装置１００ｄから送信された印刷完了の通知を受信すると（図９に示すステップＳ３０７０）、自装置の印刷データ記憶部１１８ａに保持している該当ジョブのデータ（印刷ジョブデータの複製データ）を消去する（ステップＳ３０８０）。
【０１０１】
印刷装置１００ａは電源が落とされているため、印刷装置１００ｄから送信された印刷完了の通知を受信できない。印刷装置１００ｄは、印刷が完了したという情報を、ジョブの識別情報及び通知未完了というステータス情報等と併せて、プリンタドライバによって付加されたジョブの有効期限の間、記憶装置１１８で保持する。
【０１０２】
一方、印刷装置１００ｄの印刷データ記憶部１１８ａにユーザＡの印刷ジョブデータが保持されている場合であって、ユーザＡが、印刷装置１００ｄで保持されているジョブを選択して印刷実行を指示した場合（図８に示すステップＳ２０６０においてＮＯ）、印刷装置１００ｄは、自装置が保持している印刷ジョブデータの印刷処理を実行する（ステップＳ２０９０）。印刷装置１００ｄが保持するユーザＡの印刷ジョブデータと同じ印刷ジョブデータが他の印刷装置１００に保持されている場合、他の印刷装置１００が保持する印刷ジョブデータを消去するために印刷装置１００ｄは当該他の印刷装置１００に印刷完了の通知を送信する（ステップＳ２１００）。印刷処理が終了すると、印刷装置１００ｄは、自装置の印刷データ記憶部１１８ａに保持している該当ジョブのデータ（印刷ジョブデータ）を消去する（ステップＳ２１１０）。
【０１０３】
なお、印刷装置１００ａ及び印刷装置１００ｂがともに動作している状態で、印刷装置１００ｄからユーザＡの印刷ジョブデータの問合せが行なわれた場合、印刷装置１００ｄは、印刷装置１００ａ及び印刷装置１００ｂの両方から同じ印刷ジョブデータに関する情報を取得することになる。印刷装置１００ａ及び印刷装置１００ｂが保持する印刷ジョブデータには、情報処理装置２００が出力先に指定した印刷装置の識別情報（ここでは、印刷装置１００ａのＩＰアドレス）及びジョブの識別情報が付加されているため（図４のステップＳ１０３０及びステップＳ１０４０）、印刷装置１００ｄが取得した印刷ジョブデータに関する情報にもこれらの情報が含まれる。そのため、印刷装置１００ａ及び印刷装置１００ｂの両方から同じ印刷ジョブデータに関する情報を取得した場合であっても情報の重複を検出できる。したがって、印刷装置１００ｄは、ユーザＡの印刷ジョブデータの情報を、重複を排して操作部１２０（タッチパネルディスプレイ１２２）にリスト表示できる。印刷装置１００ｂは、ユーザＡの印刷ジョブデータ（複製データ）を保持している。そのため、ユーザＡが印刷装置１００ｂを操作して印刷処理を行なう場合、印刷装置１００ｂは、自装置で保持している複製データを用いて印刷処理を実行する。
【０１０４】
《印刷ジョブデータの消去》
印刷が完了した印刷装置１００ｄは、印刷ジョブデータに付加された通知先に印刷完了の通知を行なう。基本的には、これにより複製を含む印刷ジョブデータの消去が行なわれる。本実施の形態に係る印刷システム５０では、電源が落とされている等により通信ができない状態にあって、この通知を受けられない印刷装置が存在する場合を考慮して、各印刷装置１００の起動時に保持している印刷ジョブデータの印刷が完了したか否かを判定して、確実に印刷ジョブデータを消去する。
【０１０５】
上述のように、印刷装置１００ａは、印刷装置１００ｄから送信された印刷完了の通知を受信できない状態にあるため、印刷ジョブデータが保持されたままの状態となっている。図１０を参照して、印刷装置１００ａは、電源が入れられると、印刷データ記憶部１１８ａのデータをチェックし（ステップＳ４０００）、未完了の印刷ジョブデータがあるか否かを判定する。印刷データ記憶部１１８ａに印刷ジョブデータが保持されていると、印刷装置１００ａは、未完了の印刷ジョブデータがあると判定する。印刷装置１００ａは、未完了の印刷ジョブデータを検出すると（ステップＳ４０１０においてＹＥＳ）、転送を許可している全ての印刷装置（この場合、印刷装置１００ｂ及び印刷装置１００ｄ）に対して、当該ジョブの印刷処理が完了しているか否かを問合せる（ステップＳ４０５０）。印刷装置１００ｄは、この問合せを受けて、記憶装置１１８で保持している情報（印刷が完了したという情報）に基づいて、印刷が完了していることを印刷装置１００ａに通知する。その後、印刷装置１００ｄは、自装置が保持している情報（印刷が完了したという情報を含む情報）を消去する、又は、ステータス情報を通知済みに更新する。
【０１０６】
印刷装置１００ａは、印刷装置１００ｄからの印刷完了の通知を受信すると（ステップＳ４０６０においてＹＥＳ）、当該印刷ジョブデータを消去する（ステップＳ４０７０）。なお、印刷が完了しているか否かに関わらず、印刷ジョブデータを消去するようにしてもよい。
【０１０７】
このように、自装置が情報処理装置２００から直接受信した印刷ジョブデータ（複製を表わすフラグ情報が付加されていないデータ）については（ステップＳ４０４０においてＮＯ）、印刷ジョブデータの転送を許可している他の印刷装置１００に対して当該ジョブの印刷処理が完了しているか否かを問合せる（ステップＳ４０５０）。一方、他の印刷装置が受信した印刷ジョブデータの複製データ（複製を表わすフラグ情報が付加されているデータ）については（ステップＳ４０４０においてＹＥＳ）、印刷が完了しているか否かに関わらず消去する（ステップＳ４０７０）。
【０１０８】
印刷ジョブデータの転送を許可している他の印刷装置１００に対して当該ジョブの印刷処理が完了しているか否かを問合せる場合に、印刷処理を行なった印刷装置（この場合、印刷装置１００ｄ）の電源が落とされていて通信ができない場合は（ステップＳ４０６０においてＮＯ）、印刷処理が完了しているか否かが判定できない。この場合、該当の印刷ジョブデータ（未完了の印刷ジョブデータ）を残しておいてもよいし、データを消去するようにしてもよい。データを残しておく場合は、印刷済みであってもデータが残るので、２回目の印刷処理を行なうことが可能となる。データを消去する場合は、印刷未完了であってもデータが消えてしまう。
【０１０９】
印刷ジョブデータを残す場合であっても、他の印刷装置１００において印刷が完了していると判別できれば速やかに印刷ジョブデータを消去するのが好ましい。そのため、印刷処理を行なった印刷装置（この場合、印刷装置１００ｄ）は起動時に、通知未完了ステータスの印刷完了ジョブの情報をチェックし（図１１に示すステップＳ４０８０）、通知が未完了の印刷完了ジョブ情報があれば（ステップＳ４０９０においてＹＥＳ）、印刷完了の通知を行なう（ステップＳ４１３０）。印刷完了の通知を受信した印刷装置は、印刷が完了した印刷ジョブデータを消去する。
【０１１０】
それでも入れ替わりで電源が落とされていたり、印刷を行なった印刷装置の電源が落とされたままでいたりして継続的に通信ができないこともあり得る。本実施の形態では、プリンタドライバが印刷ジョブの有効期限を印刷ジョブデータに付加しているため、印刷装置１００（例えば印刷装置１００ａ）は、保持している印刷ジョブデータの保持期限が有効期限に達していると（図１０に示すステップＳ４０３０においてＹＥＳ）、その印刷ジョブデータを消去する（ステップＳ４０７０）。これにより、印刷ジョブデータが印刷データ記憶部１１８ａに残り続けることが回避される。
【０１１１】
［本実施の形態の効果］
以上の説明から明らかなように、本実施の形態に係る印刷システム５０を利用することにより、以下に述べる効果を奏する。
【０１１２】
印刷装置１００は、情報処理装置２００から印刷ジョブデータを受信すると、受信した印刷ジョブデータを印刷データ記憶部１１８ａに保持する。印刷装置１００は、印刷データ記憶部１１８ａに保持されている印刷ジョブデータの複製を他の印刷装置１００に転送する。他の印刷装置１００は、転送された複製の印刷ジョブデータ（複製データ）を受信すると、受信した複製データを印刷データ記憶部１１８ａに保持する。
【０１１３】
印刷装置１００は、認証ユーザの印刷ジョブデータを保持しているか否かの問合せを受信すると、ユーザ情報に基づいて、問合せの印刷ジョブデータを保持しているか否かを判定する。印刷装置１００は、この判定結果に応じて、問合せを送信した他の印刷装置１００に対して、印刷ジョブデータに関する情報を送信する。送信した情報に応じて他の印刷装置１００から送信される印刷ジョブデータの送信要求を受信すると、印刷装置１００は、要求された印刷ジョブデータを、送信要求を送信した他の印刷装置１００に転送する。
【０１１４】
一方、印刷装置１００は、自装置においてユーザ認証を行なうと、予め登録されている他の印刷装置１００に対して、認証ユーザのユーザ情報が付加された印刷ジョブデータを保持しているか否かを問合せる。印刷装置１００は、他の印刷装置１００から問合せに応答して送信される印刷ジョブデータに関する情報を受信すると、当該情報と、自装置の印刷データ記憶部１１８ａに保持された印刷ジョブデータに関する情報とから、印刷の対象となる印刷ジョブデータをユーザに選択させる。ユーザによって、他の印刷装置１００が保持している印刷ジョブデータのいずれかが選択されると、印刷装置１００は、情報を送信した他の印刷装置１００に対して、選択された印刷ジョブデータを送信するよう要求する。印刷装置１００は、他の印刷装置１００から送信要求に応答して転送される印刷ジョブデータを受信すると、受信した印刷ジョブデータを用いて印刷処理を実行する。
【０１１５】
このように、印刷装置１００は、受信した印刷ジョブデータの複製を他の印刷装置１００に転送する機能、及び、他の印刷装置１００から転送された印刷ジョブデータの複製を記憶する機能を持つ。そのため、このような印刷装置１００を用いて印刷システム５０を構成することにより、複数の印刷装置１００で印刷ジョブデータを保持できるので、情報処理装置２００からの印刷指示を受信した印刷装置１００の電源が落とされた場合であっても、他の印刷装置１００に保持される印刷ジョブデータを用いて印刷処理を実行できる。これにより、ユーザの利便性がより高い、サーバレスのロケーションフリー印刷機能を持つ印刷システム５０を実現できる。
【０１１６】
（第２の実施の形態）
本実施の形態に係る印刷システムは、印刷データ記憶部１１８ａ（図２参照）の容量に空きがない状態の印刷装置が情報処理装置から印刷指示を受信した場合に、情報処理装置から送信された印刷ジョブデータを、転送を許可している印刷装置に転送する点において、第１の実施の形態に係る印刷システム５０とは異なる。その他の点では、各印刷システムは同一の構成である。
【０１１７】
印刷装置は、印刷データ記憶部１１８ａの容量に空きがない状態で情報処理装置から印刷ジョブデータが送信されてきた場合、自装置の印刷データ記憶部１１８ａに印刷ジョブデータを保存せずに、転送を許可している他の印刷装置に対して、メモリ（受信バッファ）のデータを順次転送する。印刷装置は、転送を許可している印刷装置のうち何台の印刷装置にデータを転送するかが設定される。すなわち、予め登録されている転送を許可する印刷装置が転送先候補となり、この転送先候補のなかの何台の印刷装置にデータを転送するかが予め設定される。本実施の形態では、転送先候補のなかの１台にデータが転送されるよう設定されているものとする。また、データを転送する際には、複製を表わすフラグ情報が付加される。換言すると、情報処理装置から印刷ジョブデータを受信した印刷装置は、受信した印刷ジョブデータを複製データとして他の印刷装置に転送する。
【０１１８】
印刷装置が受信した印刷ジョブデータが複製データの場合、同じ印刷ジョブデータが他の印刷装置で保持されているため、当該印刷装置の印刷データ記憶部１１８ａの容量に空きがない状態であっても受信したデータは転送されない。この場合、印刷ジョブデータの受信が中断されて、受信バッファが解放される。
【０１１９】
［ソフトウェア構成］
本実施の形態に係る印刷システムを構成する印刷装置では、図４及び図５に示されるプログラムに代えて、図１６〜図１８に示されるプログラムが実行される。図１６〜図１８のプログラムは、図４のプログラムのステップＳ１０６０に代えてステップＳ１４１０を含み、さらにステップＳ１４００、及びステップＳ１４５０〜ステップＳ１５００を含む。図１６〜図１８のステップＳ１０００〜ステップＳ１０５０及びステップＳ１０９０〜ステップＳ１１１０における処理は、図４及び図５に示される各ステップにおける処理と同じである。以下、異なる部分について説明する。
【０１２０】
図１６を参照して、このプログラムは、ステップＳ１０４０の後、又はステップＳ１０２０において、受信した印刷ジョブデータは複製データであると判定された場合に実行され、印刷データ記憶部１１８ａの容量に空きがあるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１４００と、ステップＳ１０５０の後に実行され、以下のステップＳ１４２０〜ステップＳ１４４０を印刷ジョブデータの受信が完了するまで繰返すステップＳ１４１０とを含む。ステップＳ１４００において、印刷データ記憶部１１８ａの容量に空きがあると判定された場合は、制御はステップＳ１０５０に進む。
【０１２１】
ステップＳ１４１０で印刷ジョブデータの受信が完了するまで繰返される処理は、印刷ジョブデータの続きのデータを受信バッファ分受信するステップＳ１４２０と、ステップＳ１４２０の後に実行され、印刷データ記憶部１１８ａの容量に空きがあるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１４３０と、ステップＳ１４３０において、印刷データ記憶部１１８ａの容量に空きがあると判定された場合に実行され、受信した続きのデータを印刷データ記憶部１１８ａに保存するステップＳ１４４０とを含む。
【０１２２】
図１７を参照して、このプログラムはさらに、図１６に示すステップＳ１４００又はステップＳ１４３０において、印刷データ記憶部１１８ａの容量に空きがないと判定された場合に実行され、受信した印刷ジョブデータが複製データか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１４５０と、ステップＳ１４５０において、受信した印刷ジョブデータは複製データではないと判定された場合に実行され、印刷データ記憶部１１８ａに空き容量がない場合の処理を実行するステップＳ１４６０と、ステップＳ１４５０において、受信した印刷ジョブデータは複製データであると判定された場合に実行され、印刷ジョブデータの受信を中断し、送信元の他の印刷装置に対してエラー応答を行なうステップＳ１４７０と、ステップＳ１４７０の後に実行され、受信バッファを解放するステップＳ１４８０と、ステップＳ１４８０の後に実行され、印刷データ記憶部１１８ａに途中まで印刷ジョブデータが保存されているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１４９０と、ステップＳ１４９０において、途中まで印刷ジョブデータが保存されていると判定された場合に実行され、途中まで受信（保存）した印刷ジョブデータを消去するステップＳ１５００とを含む。ステップＳ１４６０又はステップＳ１５００の処理が終了した場合、若しくは、ステップＳ１４９０において、途中まで印刷ジョブデータが保存されていないと判定された場合は、このプログラムは終了する。
【０１２３】
図１９〜図２１は、図１７のステップＳ１４６０の詳細なフローである。図１９を参照して、このルーチンは、転送を許可する印刷装置が設定（登録）されているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１６００と、ステップＳ１６００において、転送を許可する印刷装置が設定されていると判定された場合に実行され、以下のステップＳ１６２０を転送可能な印刷装置が見つかるか、転送先候補がなくなるまで繰返すステップＳ１６１０と、ステップＳ１６１０の後に実行され、転送可能な印刷装置が見つかったか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１６３０とを含む。
【０１２４】
ステップＳ１６１０で転送可能な印刷装置が見つかるか、転送先候補がなくなるまで繰返される処理は、転送を許可している印刷装置（転送先候補）に対して転送可否を問合せるステップＳ１６２０を含む。
【０１２５】
図２０を参照して、このルーチンはさらに、ステップＳ１６３０（図１９参照）において、転送可能な印刷装置が見つかったと判定された場合に実行され、印刷データ記憶部１１８ａに途中まで印刷ジョブデータが保存されているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１６４０と、ステップＳ１６４０において、途中まで印刷ジョブデータが保存されていると判定された場合に実行され、印刷データ記憶部１１８ａから印刷ジョブデータを読込む（送信バッファ分読込む）ステップＳ１６５０と、ステップＳ１６５０の後に実行され、読込んだ印刷ジョブデータに対して複製であることを表わすフラグ情報を付加するステップＳ１６６０と、ステップＳ１６６０の後に実行され、読込んだ印刷ジョブデータに対して転送を許可する印刷装置のＩＰアドレスを付加するステップＳ１６７０と、ステップＳ１６７０の後に実行され、フラグ情報及び転送を許可する印刷装置のＩＰアドレス等の情報が付加された、送信バッファ分の印刷ジョブデータを送信するステップＳ１６８０とを含む。
【０１２６】
このルーチンはさらに、ステップＳ１６８０の後に実行され、以下のステップＳ１７００及びステップＳ１７１０を印刷データ記憶部１１８ａに保存されている分だけ繰返すステップＳ１６９０と、ステップＳ１６９０の後に実行され、印刷ジョブデータの続き（受信バッファで保持していた分）を送信するステップＳ１７２０と、ステップＳ１６４０において、途中まで印刷ジョブデータが保存されていないと判定された場合に実行され、受信バッファで保持している印刷ジョブデータに対して複製であることを表わすフラグ情報を付加するステップＳ１７３０と、ステップＳ１７３０の後に実行され、受信バッファで保持している印刷ジョブデータに対して転送を許可する印刷装置のＩＰアドレスを付加するステップＳ１７４０と、ステップＳ１７４０の後に実行され、フラグ情報及び転送を許可する印刷装置のＩＰアドレス等の情報が付加された、送信バッファ分の印刷ジョブデータを送信するステップＳ１７５０とを含む。
【０１２７】
ステップＳ１６９０で印刷データ記憶部１１８ａに保存されている分だけ繰返される処理は、印刷データ記憶部１１８ａから印刷ジョブデータの続きを送信バッファ分だけ読込むステップＳ１７００と、読込んだ印刷ジョブデータの続きを送信するステップＳ１７１０とを含む。
【０１２８】
図２１を参照して、このルーチンはさらに、ステップＳ１７２０又はステップＳ１７５０（図２０参照）の後に実行され、以下のステップＳ１７７０及びステップＳ１７８０を印刷ジョブデータの転送が完了するまで繰返すステップＳ１７６０を含む。
【０１２９】
ステップＳ１７６０で印刷ジョブデータの転送が完了するまで繰返される処理は、情報処理装置からバッファ分の印刷ジョブデータを受信するステップＳ１７７０と、転送を許可している印刷装置（転送可能な印刷装置）に対して、受信したバッファ分の印刷ジョブデータを送信するステップＳ１７８０とを含む。
【０１３０】
このルーチンはさらに、ステップＳ１６００（図１９参照）において、転送を許可する印刷装置が設定されていないと判定された場合、又はステップＳ１６３０（図１９参照）において、転送可能な印刷装置が見つからないと判定された場合に実行され、印刷ジョブデータの受信を中断し、情報処理装置に対してエラー応答を行なうステップＳ１７９０と、ステップＳ１７９０の後に実行され、受信バッファを解放するステップＳ１８００と、ステップＳ１８００の後に実行され、印刷データ記憶部１１８ａに途中まで印刷ジョブデータが保存されているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１８１０と、ステップＳ１８１０において、途中まで印刷ジョブデータが保存されていると判定された場合に実行され、途中まで受信（保存）した印刷ジョブデータを消去するステップＳ１８２０とを含む。ステップＳ１７６０又はステップＳ１８２０の処理が終了した場合、若しくは、ステップＳ１８１０において、途中まで印刷ジョブデータが保存されていないと判定された場合は、このルーチンは終了する。
【０１３１】
［動作］
本実施の形態に係る印刷システムは以下のように動作する。なお、印刷データ記憶部１１８ａの容量に空きがない状態で情報処理装置から印刷ジョブデータが送信されてきた場合の動作を除いた動作は、上記第１の実施の形態と同様である。したがって、同様の動作についての詳細な説明は繰返さない。
【０１３２】
印刷装置は、印刷データ記憶部１１８ａの容量に空きがない状態で情報処理装置からの印刷ジョブデータを受信すると（図１６に示すステップＳ１０２０においてＮＯ）、受信した印刷ジョブデータの先頭に、受信した印刷装置（自装置）のＩＰアドレス、及びジョブの識別情報（例えばジョブＩＤ等）を付加する（ステップＳ１０３０及びステップＳ１０４０）。印刷データ記憶部１１８ａに空き容量がないため（ステップＳ１４００においてＮＯ）、印刷装置は、転送を許可する印刷装置が設定されているか否かを判定する。ここでは、転送を許可する印刷装置が設定されており、その印刷装置（転送先候補）のなかの１台にデータが転送されるよう設定されているものとする（図１９に示すステップＳ１６００においてＹＥＳ）。印刷装置は、転送先候補の印刷装置に対して、転送可能な印刷装置が見つかるか、転送先候補がなくなるまで転送先候補の印刷装置に対して順に転送可否を問合せる（ステップＳ１６１０）。
【０１３３】
転送可能な印刷装置が見つかると（ステップＳ１６３０においてＹＥＳ）、受信バッファに保持している印刷ジョブデータに複製を表わすフラグ情報、及び転送を許可する印刷装置のＩＰアドレスを付加して（図２０に示すステップＳ１７３０及びステップＳ１７４０）、当該転送可能な印刷装置に対してデータを転送する（ステップＳ１７５０）。受信バッファ分の転送が終了すると、バッファのデータを解放（消去）して続きのデータを受信し順次転送を行なう（図２１に示すステップＳ１７６０）。
【０１３４】
一方、情報処理装置から印刷ジョブデータを受信している途中で印刷データ記憶部１１８ａの空き容量がなくなった場合（図１６に示すステップＳ１４３０においてＮＯ）、印刷データ記憶部１１８ａには途中まで印刷ジョブデータが保存されているため（図２０に示すステップＳ１６４０においてＹＥＳ）、印刷装置は、途中まで印刷データ記憶部１１８ａに保存したデータをメモリ（ＲＡＭ）に読出して転送先に送信する。続きのデータは印刷データ記憶部１１８ａを使用せずに受信及び転送される。
【０１３５】
より具体的には、印刷装置は、印刷データ記憶部１１８ａから印刷ジョブデータを送信バッファ分だけメモリに読込み（ステップＳ１６５０）、読込んだ印刷ジョブデータに複製であることを表わすフラグ情報、及び転送を許可する印刷装置のＩＰアドレスを付加して（ステップＳ１６６０及びステップＳ１６７０）、当該転送可能な印刷装置に対してデータの転送を開始する（ステップＳ１６８０）。印刷装置は、印刷データ記憶部１１８ａから印刷ジョブデータの続きを読込み、読込んだ印刷ジョブデータを当該転送可能な印刷装置に対して転送する。この処理は、印刷データ記憶部１１８ａに保存されている分だけ繰返される（ステップＳ１６９０）。印刷データ記憶部１１８ａに途中まで保存されていた印刷ジョブデータの転送が終了すると、印刷装置は、受信バッファで保持していた分の続きの印刷ジョブデータを転送先の印刷装置に転送する（ステップＳ１７２０）。受信バッファ分の転送が終了すると、印刷装置は、バッファのデータを解放（消去）して続きのデータを受信し順次転送を行なう（図２１に示すステップＳ１７６０）。
【０１３６】
図２２を参照して、このように、印刷データ記憶部１１８ａの容量に空きがない場合は、ネットワーク通信部１５０で受信した印刷ジョブデータは、ＲＡＭ１１６で保持された後、印刷データ記憶部１１８ａに保存されずに、ネットワーク通信部１５０を介して、他の印刷装置に送信される。
【０１３７】
これに対し、印刷データ記憶部１１８ａの容量に空きがある場合（通常時）には、図２３に示すように、ネットワーク通信部１５０で受信した印刷ジョブデータは、一旦ＲＡＭ１１６で保持された後に、印刷データ記憶部１１８ａに保存される。ＲＡＭ１１６に保持されている印刷ジョブデータは、印刷データ記憶部１１８ａでの保存処理が完了した後に消去される。その後、例えば印刷ジョブデータの複製を送信する場合は、図２４に示すように、印刷データ記憶部１１８ａから読出された印刷ジョブデータは再度ＲＡＭ１１６（送信バッファ）で保持され、ネットワーク通信部１５０を介して他の印刷装置に送信される。
【０１３８】
上述したように、印刷データ記憶部１１８ａの容量に空きがない状態であっても、受信した印刷ジョブデータが複製データの場合は（図１７に示すステップＳ１４５０においてＹＥＳ）、受信したデータは他の印刷装置に転送されない（ステップＳ１４７０〜ステップＳ１５００）。
【０１３９】
また、転送を許可する印刷装置が設定されていない場合（図１９に示すステップＳ１６００においてＮＯ）、及び、転送を許可する印刷装置が設定されていても、通信ができない等の理由で転送不可能な場合（ステップＳ１６３０においてＮＯ）は、印刷装置は、印刷ジョブデータの受信を中断して処理を終了する（図２１に示すステップＳ１７９０〜ステップＳ１８２０）。この場合、印刷処理は実行できない。
【０１４０】
［作用・効果］
本実施の形態に係る印刷システムは、第１の実施の形態と同様の効果に加えて、以下に述べる効果をさらに奏する。
【０１４１】
印刷システムを構成する印刷装置は、印刷データ記憶部１１８ａに、ネットワーク通信部１５０を介して情報処理装置から受信した印刷ジョブデータを記憶可能な空き容量があるか否かを判定する。印刷装置は、印刷データ記憶部１１８ａの容量に空きがないと判定すると、ネットワーク通信部１５０で受信した印刷ジョブデータを印刷データ記憶部１１８ａに保存せずに、他の印刷装置に転送する。これにより、情報処理装置が出力先に指定している印刷装置の印刷データ記憶部１１８ａに空き容量がない状態であっても、サーバレスでのロケーションフリー印刷処理を実行できる。その結果、ユーザの利便性をさらに高めることができる。
【０１４２】
なお、印刷処理を実行する印刷装置では、ネットワーク通信部１５０を介して受信した印刷ジョブデータがメモリ（ＲＡＭ）に展開され順次ＣＰＵ１１２（図２参照）で処理されて印刷用の出力データが生成される。生成された出力データもメモリ（ＲＡＭ）に展開される。印刷処理を実行する印刷装置は、自装置の印刷データ記憶部１１８ａの容量に空きがない状態であっても印刷処理を実行できる。
【０１４３】
（第３の実施の形態）
本実施の形態に係る印刷システムは、受信した印刷ジョブデータの複製を自動で送信する際に、最大で何台の印刷装置に複製データの送信を行なうかの設定が可能である点において、上記第１の実施の形態に係る印刷システム５０とは異なる。その他の点では、各印刷システムは同一の構成である。
【０１４４】
本実施の形態に係る印刷装置では、転送を許可する印刷装置のなかからユーザによって選択された印刷装置が複製データの送信先候補として設定される。印刷装置はさらに、設定された送信先候補に対して、最大で何台の印刷装置に複製データを送信するかについても設定される。この場合、印刷装置は、どのような優先順（優先度）で複製データを送信するのかについて決定する。具体的には、印刷装置は、優先順として、印刷データ記憶部１１８ａ（図２参照）の空き容量が多い順、及びユーザにより設定された順のいずれかをユーザに選択させる。空き容量の多い順がユーザに選択されると、印刷装置は送信先候補と通信して、予め送信先候補の空き容量に関する情報を取得する。印刷装置は、取得した空き容量に関する情報に基づいて、優先順を決定（優先度を設定）する。ユーザにより設定された順が選択されると、印刷装置は、優先順に関するユーザの操作入力を受付けて、送信先の優先順を決定（優先度を設定）する。
【０１４５】
情報処理装置からの印刷ジョブデータを受信した印刷装置は、受信した印刷ジョブデータの複製を他の印刷装置に送信する際に、複製データの送信先の設定数及び設定された優先順（優先度）を考慮して複製送信先リストを作成する。印刷装置は、作成した複製送信先リストに基づいて、複製送信先リストの順、すなわち優先度順に印刷ジョブデータの複製を他の印刷装置に送信する。
【０１４６】
［ソフトウェア構成］
本実施の形態に係る印刷システムを構成する印刷装置では、複製データの送信時に、図６及び図７に示されるステップＳ１１１０の処理（ルーチン）に代えて、図２５及び図２６に示されるステップＳ１９００の処理（ルーチン）が実行される。図２５及び図２６のルーチンは、図６のルーチンのステップＳ１２００に代えて、ステップＳ１９１０を含む。図２５及び図２６のステップＳ１２４０〜ステップＳ１３２０における処理は、図６及び図７に示される各ステップにおける処理と同じである。以下、異なる部分について説明する。
【０１４７】
図２５を参照して、このルーチンは、以下に説明するステップＳ１９２０〜ステップＳ１９４０を複製送信先の優先度設定に従い、優先度の高い候補の印刷装置から順に候補がなくなるか、送信先の設定数に達するまで繰返すことにより複製送信先リストを作成するステップＳ１９１０を含む。ステップＳ１９１０の処理が終了すると、制御はステップＳ１２４０に進む。
【０１４８】
ステップＳ１９１０で優先度の高い印刷装置から順に候補がなくなるか、送信先の設定数に達するまで繰返される処理は、複製送信の可否を送信先候補の印刷装置に問合せるステップＳ１９２０と、ステップＳ１９２０の後に実行され、問合せ結果に基づいて、複製の送信が可能か否かを判定し、判定結果に応じて制御の流れを分岐させるステップＳ１９３０と、ステップＳ１９３０において、複製の送信が可能であると判定された場合に実行され、問合せを行なった印刷装置を複製送信先リストに加えるステップＳ１９４０とを含む。ステップＳ１９４０の処理が終了した場合、又はステップＳ１９３０において複製の送信が可能ではないと判定された場合は、次に優先度の高い候補に対象を移し、上記処理を繰返す。
【０１４９】
［作用・効果］
本実施の形態に係る印刷システムは、第１の実施の形態と同様の効果に加えて、以下に述べる効果をさらに奏する。
【０１５０】
印刷装置は、ネットワーク回線３０（図１参照）を介して接続されている複数の他の印刷装置のうちの所定数の印刷装置に対して、予め定められた優先順序にしたがって、情報処理装置から受信した印刷ジョブデータの複製を順に転送する。そのため、例えば印刷ジョブデータの複製を保持することが可能であって、電源が落とされる可能性が少ない印刷装置に複製データを保持させることができる。これにより、複製データを送信する印刷装置の設定において設定台数に上限を設けた場合でも、より確実に、複製データを印刷装置に保持させることができる。設定台数に上限を設けることによって、複製データを送信することによるユーザの利便性を維持しながら、１つのジョブに対してシステム全体で使用する印刷データ記憶部の容量、及びデータ通信の処理負荷を抑制できる。
【０１５１】
（変形例）
上記実施の形態では、パーソナルコンピュータからなる情報処理装置を含む印刷システムの例について示したが、本発明はそのような実施の形態には限定されない。情報処理装置はパーソナルコンピュータ以外の端末装置であってもよい。例えば、情報処理装置はタブレット端末等の端末装置であってもよい。さらに、印刷システムに含まれる印刷装置は、プリンタであってもよいし、複合機（ＭＦＰ：Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等であってもよい。さらに印刷システムには、プリンタと複合機とが混在していてもよい。
【０１５２】
上記実施の形態では、タッチパネルディスプレイを含む操作部を備えた印刷装置の例について示したが、本発明はそのような実施の形態には限定されない。例えば、印刷装置の操作部は、タッチパネルディスプレイに代えて、情報を表示する表示装置と、ハードキー等の入力装置とを含む構成であってもよい。
【０１５３】
上記実施の形態では、通信対象の印刷装置のＩＰアドレスをはじめとする各種設定情報、及びユーザ情報等を保持するための記憶装置が、印刷ジョブデータを保持する印刷データ記憶部を含む例について示したが、本発明はそのような実施の形態には限定されない。印刷ジョブデータを保持する印刷データ保持部は、各種設定情報等を保持する記憶装置とは別の記憶媒体であってもよい。さらに、記憶装置及び印刷データ保持部は、メモリカード等の外部記憶媒体から構成されていてもよい。
【０１５４】
上記実施の形態では、印刷ジョブデータの複製を送信する送信対象の印刷装置を１台だけ設定した例について示したが、本発明はそのような実施の形態には限定されない。印刷ジョブデータの複製を送信する送信対象の印刷装置は複数台設定してもよい。これにより、より多くの印刷装置に印刷ジョブデータを保持させることができるので、より確実にロケーションフリー印刷を実行することが可能となる。
【０１５５】
上記実施の形態では、転送を許可する他の印刷装置のなかからユーザによって選択された印刷装置を、印刷ジョブデータの複製を送信する送信先候補として設定する例について示したが、本発明はそのような実施の形態には限定されない。例えば、予め登録されている転送を許可する他の印刷装置の全てを、印刷ジョブデータの複製を送信する送信先候補として自動的に設定するように構成されていてもよい。
【０１５６】
上記実施の形態では、予め設定された優先順にしたがって印刷ジョブデータの複製を他の印刷装置に送信する例について示したが、本発明はそのような実施の形態には限定されない。印刷装置において、例えば優先順が設定されていない場合は、転送を許可する他の印刷装置に対して、任意の順序で印刷ジョブデータの複製を送信するようにしてもよい。
【０１５７】
上記実施の形態では、通信対象の印刷装置を識別する識別情報としてＩＰアドレスを用いた例について示したが、本発明はそのような実施の形態には限定されない。印刷装置を一意に識別することが可能な情報であれば、識別情報はＩＰアドレス以外の情報であってもよい。そうした識別情報としては、例えばＭＡＣアドレス（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  ａｄｄｒｅｓｓ）等が考えられる。
【０１５８】
上記実施の形態では、ＬＡＮ回線等のネットワーク回線を介して複数の印刷装置が通信可能に接続される印刷システムの例について示したが、本発明はそのような実施の形態には限定されない。印刷システムは、例えば、インターネット回線を含むネットワーク回線を介して複数の印刷装置が通信可能に接続される構成であってもよい。
【０１５９】
上記実施の形態では、印刷データ記憶部の容量に空きがない状態で情報処理装置から印刷ジョブデータを印刷装置が受信したときに、当該印刷装置において、転送先候補のなかの１台にデータが転送されるよう設定された例について示したが、本発明はそのような実施の形態には限定されない。受信した印刷ジョブデータを複数の印刷装置に転送するように設定することもできる。
【０１６０】
さらに上記実施の形態では、印刷データ記憶部の容量に空きがない状態で情報処理装置から印刷ジョブデータを印刷装置が受信したときに、当該印刷装置において、受信した印刷ジョブデータに複製を表わすフラグ情報を付加して当該印刷ジョブデータを他の印刷装置に転送する例について示したが、本発明はそのような実施の形態には限定されない。受信した印刷ジョブデータに複製を表わすフラグ情報を付加せずに、当該印刷ジョブデータを他の印刷装置に転送するようにしてもよい。この場合、転送先の印刷装置の設定に応じて、転送した印刷ジョブデータの複製がさらに別の印刷装置に送信されることも起こり得る。
【０１６１】
上記実施の形態では、印刷データ記憶部の容量に空きがない状態であっても、受信した印刷ジョブデータが複製データの場合は、他の印刷装置に転送せずに印刷ジョブデータの受信を中断する例について示したが、本発明はそのような実施の形態には限定されない。印刷装置の印刷データ記憶部に空き容量がない場合は、受信した印刷ジョブデータが複製データの場合であっても、他の印刷装置に転送するようにしてもよい。
【０１６２】
上記第１の実施の形態では、印刷ジョブデータの複製を送信する印刷装置の優先度（優先順）をユーザによって登録された登録順とした例について示したが、本発明はそのような実施の形態には限定されない。例えば上記第３の実施の形態で示したように、印刷データ記憶部の空き容量が多い順、又はユーザにより設定された順に優先度が設定されるようにしてもよい。
【０１６３】
上記で開示された技術を適宜組合せて得られる実施の形態についても、本発明の技術的範囲に含まれる。
【０１６４】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに限定されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【０１６５】
３０                            ネットワーク回線
５０                            印刷システム
１００、１００ａ〜１００ｄ      印刷装置
１１０                          制御部
１１２、２１０                  ＣＰＵ
１１４、２２０                  ＲＯＭ
１１６、２３０                  ＲＡＭ
１１８                          記憶装置
１１８ａ                        印刷データ記憶部
１２０                          操作部
１２２                          タッチパネルディスプレイ
１３０                          ユーザ認証部
１４０                          印刷処理部
１５０                          ネットワーク通信部
１６０、２９０                  入出力ＩＦ
２００                          情報処理装置
２５０                          入力ＩＦ
２６０                          ディスプレイＩＦ
２６２                          ディスプレイ
２７０                          ネットワークＩＦ
【図１】
2016111461.tif 000003
【図２】
2016111461.tif 000004
【図３】
2016111461.tif 000005
【図４】
2016111461.tif 000006
【図５】
2016111461.tif 000007
【図６】
2016111461.tif 000008
【図７】
2016111461.tif 000009
【図８】
2016111461.tif 000010
【図９】
2016111461.tif 000011
【図１０】
2016111461.tif 000012
【図１１】
2016111461.tif 000013
【図１２】
2016111461.tif 000014
【図１３】
2016111461.tif 000015
【図１４】
2016111461.tif 000016
【図１５】
2016111461.tif 000017
【図１６】
2016111461.tif 000018
【図１７】
2016111461.tif 000019
【図１８】
2016111461.tif 000020
【図１９】
2016111461.tif 000021
【図２０】
2016111461.tif 000022
【図２１】
2016111461.tif 000023
【図２２】
2016111461.tif 000024
【図２３】
2016111461.tif 000025
【図２４】
2016111461.tif 000026
【図２５】
2016111461.tif 000027
【図２６】
2016111461.tif 000028