(57)【要約】【課題】サーバから取得した印刷データを記憶する外部メモリが着脱可能に装着される印刷装置において、印刷データを適切に処理する手法を開示すること。【解決手段】仲介サーバ４と通信可能に接続され、ＵＳＢメモリ７が着脱可能に装着されるプリンタ１は、サーバジョブリストと、本体ジョブリストまたはＵＳＢジョブリストとを整合するように特定処理を実行する（Ｓ２１２、Ｓ２１４、Ｓ２２２、Ｓ２２４、Ｓ２２６、Ｓ２３４、Ｓ２３６）。サーバジョブリストは、サーバに記憶された印刷データを識別するジョブＩＤを含む情報であり、本体ジョブリストは、本体メモリ１２ｂに記憶されたジョブＩＤを含む情報であり、ＵＳＢジョブリストは、ＵＳＢメモリ７に記憶されたジョブＩＤを含む情報である。【選択図】  図８
2020152040.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置であって、
印刷対象画像の印刷を実行する印刷実行部と、
サーバと通信可能に接続された通信インターフェースであって、前記サーバは、端末装置から前記印刷対象画像の印刷を前記印刷装置に実行させるための印刷要求が受信される場合に、前記印刷対象画像に対応する印刷データ及び前記印刷データを識別するデータ識別情報を前記印刷装置に関連付けて記憶する、前記通信インターフェースと、
本体メモリと、
外部メモリが着脱可能に装着されるメモリインターフェースと、
前記サーバに前記印刷データ及び前記データ識別情報が記憶された場合、前記通信インターフェースを介して、前記サーバから前記印刷データ及び前記データ識別情報を受信する第１データ受信部と、
前記第１データ受信部が前記印刷データ及び前記データ識別情報を受信したことに応じて、前記印刷データ及び前記データ識別情報を、前記本体メモリ又は前記外部メモリに記憶する記憶制御部と、
前記外部メモリの着脱に関する所定のトリガ情報が取得された場合に、前記通信インターフェースを介して、前記サーバにおいて前記印刷装置に関連付けて記憶される第１のジョブリスト情報を要求するリスト情報要求を前記サーバに送信する送信部であって、前記第１のジョブリスト情報は、前記サーバに記憶された前記データ識別情報を含む情報である、前記送信部と、
前記送信部が前記リスト情報要求を前記サーバに送信したことに応じて、前記通信インターフェースを介して、前記サーバから前記第１のジョブリスト情報を受信する第２データ受信部と、
前記第２データ受信部が前記サーバから前記第１のジョブリスト情報を受信したことに応じて、前記第１のジョブリスト情報と、前記本体メモリ又は前記外部メモリに記憶された第２のジョブリスト情報とが整合するように特定処理を実行する処理実行部であって、前記第２のジョブリスト情報は、前記本体メモリ又は前記外部メモリに記憶された前記データ識別情報を含む情報である、前記処理実行部と、を備えた印刷装置。
【請求項２】
請求項１に記載の印刷装置であって、
前記所定のトリガ情報が、前記外部メモリの抜去である場合、
前記処理実行部の前記特定処理は、
前記第２データ受信部によって受信された前記第１のジョブリスト情報に含まれる前記データ識別情報に対応する前記印刷データを、前記サーバから受信する第１受信処理と、
前記第１受信処理によって受信された前記印刷データ及び前記データ識別情報を前記本体メモリに記憶する第１記憶処理と、を含む印刷装置。
【請求項３】
請求項１または請求項２に記載の印刷装置であって、
前記所定のトリガ情報が、前記外部メモリの装着である場合、
前記処理実行部の前記特定処理は、
前記第２データ受信部によって受信された前記第１のジョブリスト情報と、前記外部メモリに記憶された前記第２のジョブリスト情報との比較を実行する比較処理と、
前記比較処理によって実行された比較に基づいて、前記第１のジョブリスト情報には存在し、かつ、前記第２のジョブリスト情報に存在しない前記データ識別情報である不足データ識別情報が存在するか否かを判定する第１判定処理と、
前記第１判定処理によって前記不足データ識別情報が存在すると判定されたことに応じて、前記不足データ識別情報を前記第２のジョブリスト情報に追加する追加処理と、
前記追加処理が実行されたことに応じて、前記サーバまたは前記本体メモリから前記不足データ識別情報に対応する前記印刷データを受信する第２受信処理と、
前記第２受信処理によって受信された前記印刷データを前記外部メモリに記憶する第２記憶処理と、を含む印刷装置。
【請求項４】
請求項３に記載の印刷装置であって、
前記所定のトリガ情報が、前記外部メモリの装着である場合、
前記処理実行部の前記特定処理は、
前記比較処理によって実行された比較に基づいて、前記第１のジョブリスト情報には存在せず、かつ、前記第２のジョブリスト情報に存在する前記データ識別情報である余剰データ識別情報が存在するか否かを判定する第２判定処理と、
前記第２判定処理によって前記余剰データ識別情報が存在すると判定されたことに応じて、前記余剰データ識別情報を前記第２のジョブリスト情報から削除する第１削除処理と、
前記第１削除処理が実行されたことに応じて、前記余剰データ識別情報に対応する前記印刷データを前記外部メモリから削除する第２削除処理と、を含む印刷装置。
【請求項５】
請求項３または請求項４に記載の印刷装置であって、
前記記憶制御部は、
前記メモリインターフェースに前記外部メモリが装着されていない場合、前記第１データ受信部が前記印刷データ及び前記データ識別情報を受信したことに応じて、前記印刷データ及び前記データ識別情報を、前記本体メモリに記憶するとともに、
前記メモリインターフェースに前記外部メモリが装着されていない場合であって、前記本体メモリに前記印刷データおよび前記データ識別情報が記憶されている場合、前記メモリインターフェースに前記外部メモリが装着されて前記特定処理が実行されたことに応じて、前記本体メモリに記憶された前記印刷データおよび前記データ識別情報を削除する、印刷装置。
【請求項６】
請求項１から請求項５のいずれかに記載の印刷装置であって、さらに、
前記印刷実行部による印刷が実行される前に、前記印刷データを、前記印刷実行部によって印刷を実行可能なデータに変換するデータ変換部を備え、
前記記憶制御部は、
前記印刷データを前記外部メモリに記憶する場合、前記データ変換部によって変換された前記印刷データを記憶し、
前記印刷データを前記本体メモリに記憶する場合、前記データ変換部によって変換される前の前記印刷データを記憶する、印刷装置。
【請求項７】
請求項１から請求項５のいずれかに記載の印刷装置であって、さらに、
前記印刷実行部による印刷が実行される前に、前記印刷データを、前記印刷実行部によって印刷を実行可能なデータに変換するデータ変換部を備え、
前記記憶制御部は、
前記印刷データを前記外部メモリに記憶する場合、前記データ変換部によって変換された前記印刷データを記憶し、
前記印刷データを前記本体メモリに記憶する場合であって、
前記本体メモリの空き容量が所定容量以上である場合、前記データ変換部によって変換された前記印刷データを記憶し、
前記本体メモリの空き容量が前記所定容量より少ない場合、前記データ変換部によって変換される前の前記印刷データを記憶する、印刷装置。
【請求項８】
印刷装置のコンピュータに実行させるプログラムであって、
前記印刷装置は、
印刷対象画像の印刷を実行する印刷実行部と、
サーバと通信可能に接続された通信インターフェースであって、前記サーバは、端末装置から前記印刷対象画像の印刷を前記印刷装置に実行させるための印刷要求が受信される場合に、前記印刷装置に関連付けて前記印刷対象画像に対応する印刷データ及び前記印刷データを識別するデータ識別情報を記憶する、前記通信インターフェースと、
本体メモリと、
外部メモリが着脱可能に装着されるメモリインターフェースと、を備え、
前記コンピュータに、
前記サーバに前記印刷データ及び前記データ識別情報が記憶された場合、前記通信インターフェースを介して、前記サーバから前記印刷データ及び前記データ識別情報を受信する第１データ受信処理と、
前記第１データ受信処理によって前記印刷データ及び前記データ識別情報が受信されたことに応じて、前記印刷データ及び前記データ識別情報を、前記本体メモリ又は前記外部メモリに記憶する記憶処理と、
前記外部メモリの着脱に関する所定のトリガ情報が取得された場合に、前記通信インターフェースを介して、前記サーバにおいて前記印刷装置に関連付けて記憶される第１のジョブリスト情報を要求するリスト情報要求を前記サーバに送信する送信処理であって、前記第１のジョブリスト情報は、前記サーバに記憶された前記データ識別情報を含む情報である、前記送信処理と、
前記送信処理によって前記リスト情報要求が前記サーバに送信されたことに応じて、前記通信インターフェースを介して、前記サーバから前記第１のジョブリスト情報を受信する第２データ受信処理と、
前記第２データ受信処理によって前記サーバから前記第１のジョブリスト情報が受信されたことに応じて、前記本体メモリ又は前記外部メモリに記憶された第２のジョブリスト情報と、前記第１のジョブリスト情報とを整合させる特定処理であって、前記第２のジョブリスト情報は、前記本体メモリ又は前記外部メモリに記憶された前記データ識別情報を含む情報である、前記特定処理と、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置およびプログラムに関する。
【背景技術】
【０００２】
従来より、クラウドサーバから取得した印刷データを、装置内のジョブ記憶部に記憶し、ユーザからの出力指示を待って印刷処理する印刷装置が開示されている。例えば、下記特許文献に記載されているように、印刷装置である画像形成装置１００がクラウドサーバ２００から受け取ったジョブはジョブ記憶部１１８に記憶される。ジョブ記憶部１１８の空き容量が、適正な空き容量の下限閾値を下回ると、ジョブ退避部１２２は、ジョブ記憶部１１８に記憶されているジョブのうちの少なくとも１つを、その画像形成装置１００を出力先に指定して、クラウドサーバ２００に送信（退避）し、送信したジョブをジョブ記憶部１１８から削除する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１７７４３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した印刷装置においては、サーバから取得した印刷データを、印刷装置に着脱可能に装着される外部メモリに記憶させることは考慮されていない。
【０００５】
そこで、本明細書は、サーバから取得した印刷データを記憶する外部メモリが着脱可能に装着される印刷装置において、印刷データを適切に処理する手法を開示する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される印刷装置は、印刷装置であって、印刷対象画像の印刷を実行する印刷実行部と、サーバと通信可能に接続された通信インターフェースであって、サーバは、端末装置から印刷対象画像の印刷を印刷装置に実行させるための印刷要求が受信される場合に、印刷装置に関連付けて印刷対象画像に対応する印刷データ及び印刷データを識別するデータ識別情報を記憶する、通信インターフェースと、本体メモリと、外部メモリが着脱可能に装着されるメモリインターフェースと、サーバに印刷データ及びデータ識別情報が記憶された場合、通信インターフェースを介して、サーバから印刷データ及びデータ識別情報を受信する第１データ受信部と、第１データ受信部が印刷データ及びデータ識別情報を受信したことに応じて、印刷データ及びデータ識別情報を、本体メモリ又は外部メモリに記憶する記憶制御部と、外部メモリの着脱に関する所定のトリガ情報が取得された場合に、通信インターフェースを介して、サーバにおいて印刷装置に関連付けて記憶される第１のジョブリスト情報を要求するリスト情報要求をサーバに送信する送信部であって、第１のジョブリスト情報は、サーバに記憶されたデータ識別情報を含む情報である、送信部と、送信部がリスト情報要求をサーバに送信したことに応じて、通信インターフェースを介して、サーバから第１のジョブリスト情報を受信する第２データ受信部と、第２データ受信部がサーバから第１のジョブリスト情報を受信したことに応じて、第１のジョブリスト情報と、本体メモリ又は外部メモリに記憶された第２のジョブリスト情報とが整合するように特定処理を実行する処理実行部であって、第２のジョブリスト情報は、本体メモリ又は外部メモリに記憶されたデータ識別情報を含む情報である、処理実行部と、を備えた印刷装置。
【０００７】
また、本明細書によって開示されるプログラムは、印刷装置のコンピュータに実行させるプログラムであって、印刷装置は、印刷対象画像の印刷を実行する印刷実行部と、サーバと通信可能に接続された通信インターフェースであって、サーバは、端末装置から印刷対象画像の印刷を印刷装置に実行させるための印刷要求が受信される場合に、印刷装置に関連付けて印刷対象画像に対応する印刷データ及び印刷データを識別するデータ識別情報を記憶する、通信インターフェースと、本体メモリと、外部メモリが着脱可能に装着されるメモリインターフェースと、を備え、コンピュータに、サーバに印刷データ及びデータ識別情報が記憶された場合、通信インターフェースを介して、サーバから印刷データ及びデータ識別情報を受信する第１受信処理と、第１受信処理によって印刷データ及びデータ識別情報が受信されたことに応じて、印刷データ及びデータ識別情報を、本体メモリ又は外部メモリに記憶する記憶処理と、外部メモリの着脱に関する所定のトリガ情報が取得された場合に、通信インターフェースを介して、サーバにおいて印刷装置に関連付けて記憶される第１のジョブリスト情報を要求するリスト情報要求をサーバに送信する送信処理であって、第１のジョブリスト情報は、サーバに記憶されたデータ識別情報を含む情報である、送信処理と、送信処理によってリスト情報要求がサーバに送信されたことに応じて、通信インターフェースを介して、サーバから第１のジョブリスト情報を受信する第２受信処理と、第２受信処理によってサーバから第１のジョブリスト情報が受信されたことに応じて、本体メモリ又は外部メモリに記憶された第２のジョブリスト情報と、第１のジョブリスト情報とを整合させる特定処理であって、第２のジョブリスト情報は、本体メモリ又は外部メモリに記憶されたデータ識別情報を含む情報である、特定処理と、を実行させるプログラム。
【発明の効果】
【０００８】
上記の構成によると、サーバから取得した印刷データを記憶する外部メモリが着脱可能に装着される印刷装置において、外部メモリの着脱が行われた場合においても、印刷データを適切に処理することができる。
【図面の簡単な説明】
【０００９】
【図１】本明細書の実施例に係るプリンタを含む印刷システムの構成図である。
【図２】図１に示すプリンタが実行する登録処理のシーケンス図である。
【図３】図１に示すプリンタが実行するサブミット処理のシーケンス図である。
【図４】図１に示すプリンタが実行する蓄積処理のフローチャートである。
【図５】図４に示す蓄積処理のフローチャートがケースＡおよびケースＢにて実行された場合におけるシーケンス図であり、ケースＡは、プリンタにＵＳＢメモリが装着されているケースであり、ケースＢは、プリンタにＵＳＢメモリが未装着であるケースである。
【図６】図１に示すプリンタが実行する印刷処理のフローチャートである。
【図７】図６に示す印刷処理のフローチャートがケースＣおよびケースＤにて実行された場合におけるシーケンス図であり、ケースＣは、プリンタにＵＳＢメモリが装着されたケースであり、ケースＤは、プリンタにＵＳＢメモリが未装着であるケースである。
【図８】図１に示すプリンタが実行する特定処理を含む処理のフローチャートである。
【図９】図８に示す処理がケースＥにて実行された場合を示すシーケンス図であり、ケースＥは、プリンタにＵＳＢメモリが装着された状態であって、本体メモリにジョブＩＤが存在せず、かつ、ＵＳＢメモリに記憶されたジョブＩＤと仲介サーバに記憶されたジョブＩＤとが一致している状態から、ＵＳＢメモリが抜去されたケースである。
【図１０】図８に示す特定処理がケースＦにて実行された場合を示すシーケンス図であり、ケースＦは、プリンタにＵＳＢメモリが装着されていない状態であって、本体メモリに記憶されたジョブＩＤと仲介サーバに記憶されたジョブＩＤとが一致し、かつ、ＵＳＢメモリに記憶されたジョブＩＤが、本体メモリのジョブＩＤの全部及び本体メモリのジョブＩＤとは異なるジョブＩＤによって構成されている状態から、プリンタにＵＳＢメモリが装着されるケースである。
【図１１】図８に示す特定処理がケースＧにて実行された場合を示すシーケンス図であり、ケースＧは、プリンタにＵＳＢメモリが装着されていない状態であって、本体メモリに記憶されたジョブＩＤと仲介サーバに記憶されたジョブＩＤとが一致し、かつ、ＵＳＢメモリに記憶されたジョブＩＤが、本体メモリのジョブＩＤの一部によって構成されている状態から、プリンタにＵＳＢメモリが装着されるケースである。
【発明を実施するための形態】
【００１０】
（印刷システムの構成）
図１は、本明細書の実施例に係るプリンタ１を含む印刷システムＳの構成図である。印刷システムＳは、複数のプリンタ１，２、ＰＣ（Personal Computerの略）３、及び、仲介サーバ４を備えている。プリンタ１，２とＰＣ３とは、とは同一のＬＡＮ（Local Area Networkの略）５に所属している。このために、ＰＣ３とプリンタ１，２とは、インターネット６を介さずに、ＬＡＮ５を介して、相互に通信可能である。また、ＰＣ３とプリンタ１，２とは、ＬＡＮ５及びインターネット６を介して、仲介サーバ４と通信可能である。
【００１１】
（ＰＣ３の構成）
ＰＣ３は、プリンタ１，２に画像を印刷させるためにユーザが使用するデスクトップＰＣ、ノートＰＣ、タブレットＰＣ等の端末である。なお、変形例では、ＰＣ３は、携帯電話、スマートフォン等のユーザ端末であってもよい。ＰＣ３は、ネットワークインターフェース３１と、制御部３２と、操作部３３と、表示部３４と、を備える。以下では、インターフェースを「Ｉ／Ｆ」と記載する。ネットワークＩ／Ｆ３１は、ＬＡＮやインターネット等のネットワークを介して信号の送受信を行うためのＩ／Ｆである。
【００１２】
制御部３２は、ＣＰＵ３２ａと、ＰＣメモリ３２ｂと、を備える。ＰＣメモリ３２ｂには、プログラム３２ｃが格納されている。ＰＣメモリ３２ｂは、例えばＲＡＭやＲＯＭ，ＨＤＤ等である。ＣＰＵ３２ａは、ＰＣメモリ３２ｂに格納されるブラウザプログラム３２ｄ等のプログラム３２ｃにしたがって、様々な処理を実行する。ブラウザプログラム３２ｄは、ＨＴＭＬ形式を有するウェブページデータを解釈して、ウェブページを表示部３４に表示させるためのプログラムである。ブラウザプログラム３２ｄは、例えば、Google Chrome（登録商標）である。
【００１３】
操作部３３は、キーボードとマウスとを備える。ユーザは、操作部３３を操作することによって、さまざまな指示をＰＣ３に入力することができる。表示部３４は、様々な情報を表示するためのディスプレイである。
【００１４】
ＰＣ３は、プリンタ１，２に、サーバ印刷指示に応じた印刷（以下では「サーバ印刷」と呼ぶ）を実行させることができる。サーバ印刷指示は、ＰＣ３がブラウザプログラム３２ｄを利用して印刷実行要求を仲介サーバ４に送信する場合に、仲介サーバ４からインターネット６を介して受信される指示である。ＰＣ３のユーザが、ブラウザプログラム３２ｄを利用して、仲介サーバ４から提供されるクラウドサービスを受けることによって、サーバ印刷は実現される。具体的には、ＰＣ３は、プリンタ１，２のためのドライバプログラムを備えていなくても、印刷のための所定の操作を受け付ける場合に、ブラウザプログラム３２ｄを利用して、印刷実行要求を仲介サーバ４に送信する。この場合、サーバ印刷指示が仲介サーバ４からプリンタ１，２に送信されて、サーバ印刷をプリンタ１，２に実行させることができる。即ち、サーバ印刷は、仲介サーバ４から提供されるクラウドサービスの仕組みである。なお、ブラウザプログラム３２ｄに限らず、クラウドサービスに適応しているアプリケーションを利用することで、サーバ印刷をプリンタ１，２に実行させることができる。
【００１５】
なお、ＰＣ３は、例えばプリンタ１，２のベンダによって提供されるドライバプログラムを備え得る。この場合、プリンタ１，２は、インターネット６を介さずに、ＰＣ３からドライバプログラムを利用して送信される通常印刷指示を受信する場合に、通常印刷指示に応じた印刷（以下では「通常印刷」と呼ぶ）を実行する。即ち、ＰＣ３は、サーバ印刷のみならず、通常印刷もプリンタ１，２に実行させることができる。ＰＣ３のユーザが、ブラウザプログラム３２ｄを利用しなくても、さらには、仲介サーバ４のベンダによって提供されるサービスを受けなくても、通常印刷は実現される。
【００１６】
（仲介サーバ４の構成）
仲介サーバ４は、ＰＣ３がプリンタ１，２に印刷を実行させるための通信を仲介するためのサーバであり、プリンタ１，２のベンダとは異なる事業者によってインターネット６上に設置される。当該事業者は、例えば、Google（登録商標）である。また、仲介サーバ４によって提供されるクラウドサービスは、例えば、Google Cloud Print（登録商標）である。なお、変形例では、仲介サーバ４は、プリンタ１，２のベンダによって設置されるサーバであってもよい。
【００１７】
仲介サーバ４は、ネットワークＩ／Ｆ４１と、制御部４２と、を備える。ネットワークＩ／Ｆ４１は、ＬＡＮやインターネット等のネットワークを介して信号の送受信を行うためのＩ／Ｆである。
【００１８】
制御部４２は、ＣＰＵ４２ａと、サーバメモリ４２ｂと、を備える。サーバメモリ４２ｂには、プログラム４２ｂ１と、アカウントテーブル４２ｂ２と、サーバジョブ管理テーブル４２ｂ３と、画面データ４２ｂ４と、が格納されている。サーバメモリ４２ｂは、例えばＲＡＭやＲＯＭ，ＨＤＤ等である。ＣＰＵ４２ａは、サーバメモリ４２ｂに格納されるプログラム４２ｂ１にしたがって、様々な処理を実行する。
【００１９】
アカウントテーブル４２ｂ２には、後述する登録処理が実行されることによって、ユーザ情報とプリンタ情報とトークンとが記憶される。ユーザ情報は、複数のユーザに対応する情報であり、仲介サーバ４にログインするための情報である。具体的には、ユーザ情報「ｕ１」，「ｕ２」は、それぞれ、ユーザを識別するためのユーザＩＤ「ｕｓ１」，「ｕｓ２」と、ユーザを認証するためのパスワードと、を含む。プリンタ情報は、複数のプリンタに関係する情報である。具体的には、プリンタ情報「ｐ１」，「ｐ２」は、プリンタ１，２のプリンタ名「ｐｒ１」，「ｐｒ２」と、プリンタ１，２を識別するためのデバイスＩＤ「ｄｖ１」，「ｄｖ２」と、各プリンタが実行可能な印刷機能の能力を示す能力情報と、を含む。なお、プリンタ名と能力情報とは、各プリンタから受信される情報であり、デバイスＩＤはプリンタが仲介サーバ４に登録されることに応じて当該プリンタに一意に発行される情報である。トークンｔｋ１，ｔｋ２は、それぞれプリンタ１，２が仲介サーバ４と通信するための情報であり、プリンタ１，２が仲介サーバ４に登録されることによって発行される。なお、アカウントテーブル４２ｂ２では、上記の情報に加えて、ユーザ情報ｕ２に対応付けて、図示しないプリンタのプリンタ情報ｐ３（プリンタ名「ｐｒ３」，デバイスＩＤ「ｄｖ３」）とトークンｔｋ３とが記憶された状態を示している。
【００２０】
さらに、後述するサブミット処理が実行されることによって、サーバメモリ４２ｂに、印刷データとチケットとが記憶され、サーバジョブ管理テーブル４２ｂ３に、ジョブＩＤとデバイスＩＤとデータアドレスとチケットアドレスとが記憶される。
【００２１】
ジョブＩＤ「ｊｂ１」〜「ｊｂ４」は、それぞれＰＣ３等の外部装置から印刷を要求されること応じて生成されるジョブを識別するための情報である。ジョブＩＤは、デバイスＩＤとデータアドレスとチケットアドレスとが関連付けられて登録される。データアドレス「ｉＵＲＬ１」〜「ｉＵＲＬ４」は、それぞれ、印刷データＰＤ１〜ＰＤ４が記憶されるサーバメモリ４２ｂ内の記憶位置を示すＵＲＬ（Uniform Resource Locatorの略）である。印刷データＰＤ１〜ＰＤ４は、外部装置から送信される画像データを、プリンタ１，２が解釈可能なデータ形式に変換されたものである。チケットアドレス「ｔＵＲＬ１」〜「ｔＵＲＬ４」は、それぞれ、チケットｔｃ１〜ｔｃ４が記憶されるサーバメモリ４２ｂ内の記憶位置を示すＵＲＬである。チケットｔｃ１〜ｔｃ４は、それぞれ、印刷データＰＤ１〜ＰＤ４を印刷するための印刷条件情報を含む。
【００２２】
画面データ４２ｂ４は、ＰＣ３で表示される各選択画面ＳＣ１〜ＳＣ３（詳細は後述）を示す画面データである。
【００２３】
（プリンタ１，２の構成）
プリンタ１は、印刷機能が実行可能な周辺装置（即ち、ＰＣ３の周辺装置）であり、プリンタ名「ｐｒ１」を有する。プリンタ１は、ネットワークＩ／Ｆ１１と、制御部１２と、操作部１３と、表示部１４と、印刷実行部１５と、ＵＳＢＩ／Ｆ１６と、を備える。
【００２４】
ネットワークＩ／Ｆ１１は、ＬＡＮやインターネット等のネットワークを介して信号の送受信を行うためのＩ／Ｆである。制御部１２は、ＣＰＵ１２ａと、本体メモリ１２ｂと、を備える。本体メモリ１２ｂには、プログラム１２ｂ１と、本体ジョブ管理テーブル１２ｂ２と、が格納されている。本体メモリ１２ｂは、例えばＲＡＭやＲＯＭ，ＨＤＤ等である。ＣＰＵ１２ａは、本体メモリ１２ｂに格納されるプログラム１２ｂ１にしたがって、様々な処理を実行する。後述する蓄積処理が実行されることにより、本体メモリ１２ｂ印刷データが記憶され、本体ジョブ管理テーブル１２ｂ２に、ジョブＩＤとチケットが記憶される。
【００２５】
操作部１３は、複数のキーを備える。表示部１４は、様々な情報を表示するためのディスプレイである。なお、表示部１４は、ユーザによる操作を受け入れるためのタッチパネルとしても機能する。ユーザは、表示部１４や操作部１３を操作することによって、様々な指示をプリンタ１に入力することができる。印刷実行部１５は、外部から取得したデータによって表現される画像を、インクジェット方式、レーザー方式等の既知の電子写真方式で印刷媒体に印刷するための処理を実行する。ＵＳＢＩ／Ｆ１６には、外部記憶装置であるＵＳＢメモリ７が着脱可能に装着される。
【００２６】
後述する蓄積処理によって、ＵＳＢメモリ７には、暗号化データが記憶され、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤが記憶される。
【００２７】
プリンタ２は、プリンタ１と同様の構成を有しており、プリンタ名「ｐｒ２」を有する。
【００２８】
（印刷システムＳの動作）
（登録処理）
図２を参照して、印刷システムＳによって行われる登録処理について説明する。図２は、登録処理のシーケンス図である。登録処理は、プリンタに関係するプリンタ情報を仲介サーバ４に登録するための処理である。なお、仲介サーバ４には、ＰＣ３を操作するユーザに対応するユーザ情報があらかじめ登録されている。
【００２９】
Ｔ１０では、ＰＣ３は、ユーザの操作を受け付けることに応じて、ブラウザプログラム３２ｄを起動する。ＰＣ３によって実行されるＴ１２以降の各処理（さらには図３以降の各処理）は、ブラウザプログラム３２ｄ及び図示省略のＯＳプログラムによって実現される。Ｔ１２では、ＰＣ３は、仲介サーバ４にログインするためのログイン画面を表示して、ユーザ情報ｕ１を入力するためのログイン操作を受け付ける。この場合、Ｔ１４では、ＰＣ３は、ユーザ情報ｕ１を利用して、インターネット６を介して、仲介サーバ４にログインする。
【００３０】
Ｔ１６では、ＰＣ３は、プリンタ情報を仲介サーバ４に登録するための登録操作を受け付ける。ＰＣ３は、登録操作を受け付けることに応じて、ＬＡＮ５に所属しているプリンタ１，２を検索する。具体的には、ＰＣ３は、Ｔ２０Ａ、Ｔ２０Ｂにおいて、サーチ信号をＬＡＮ５にブロードキャスト送信し、Ｔ２２Ａ、Ｔ２２Ｂにおいて、プリンタ１，２のそれぞれからサーチ信号に対する応答を受信する。プリンタ１，２からの応答は、それぞれ、プリンタ名「ｐｒ１」，「ｐｒ２」を含む。そして、Ｔ２４では、ＰＣ３は、検索結果である２個のプリンタ名「ｐｒ１」，「ｐｒ２」を示す選択画面ＳＣ１を表示する。
【００３１】
Ｔ２６では、ＰＣ３は、選択画面ＳＣ１を介して、プリンタ１，２の中から、プリンタ１の選択を受け付ける。具体的には、ＰＣ３は、プリンタ名「ｐｒ１」，「ｐｒ２」の中から、プリンタ名「ｐｒ１」の選択を受け付ける。この場合、Ｔ２８では、ＰＣ３は、インターネット６を介さずに、ＬＡＮ５を介して、ユーザ情報ｕ１をプリンタ１に送信する。
【００３２】
Ｔ３０では、プリンタ１は、インターネット６を介して、登録要求を仲介サーバ４に送信する。なお、プリンタ１は、仲介サーバ４のアドレスを本体メモリ１２ｂに予め記憶しており、当該アドレスを送信先として、登録要求を仲介サーバ４に送信する。登録要求は、Ｔ２８で受信されたユーザ情報ｕ１と、プリンタ１のプリンタ情報ｐ１（即ちプリンタ名「ｐｒ１」及び能力情報）と、を含む。
【００３３】
Ｔ３２では、仲介サーバ４は、登録要求に含まれるユーザ情報ｕ１の認証が成功する場合に、ユーザ情報ｕ１に関連付けて、登録要求に含まれるプリンタ情報ｐ１とトークンｔｋ１を登録する。トークンｔｋ１は、プリンタ１が仲介サーバ４と通信するための通信情報であり、プリンタ１が仲介サーバ４に登録されることに応じて、仲介サーバ４によって生成される。仲介サーバ４は、プリンタ１からトークンｔｋ１を用いてアクセスされることによって、プリンタ１を登録処理が完了したプリンタと認識することができる。さらに、仲介サーバ４は、登録されたプリンタ１を一意に識別するためのデバイスＩＤ「ｄｖ１」を生成し、プリンタ情報ｐ１に追加して記憶する。Ｔ３４では、仲介サーバ４は、プリンタ１にデバイスＩＤ「ｄｖ１」及びトークンｔｋ１を送信する。
【００３４】
Ｔ３６では、プリンタ１は、仲介サーバ４から、トークンｔｋ１を受信する場合に、プリンタ１と仲介サーバ４との間にインターネット６を介したＸＭＰＰ（Extensible Messaging and Presence Protocolの略）接続を確立する。ＸＭＰＰ接続はいわゆる常時接続と呼ばれ、プリンタ１の電源が切断されるまで当該接続が確立されている状態が維持される。また、プリンタ１には、デバイスＩＤ「ｄｖ１」及びトークンｔｋ１が登録される。これにより、プリンタ１は、ＸＭＰＰ接続を利用して、インターネット６上の仲介サーバ４から要求、通知等を受信することができる。そして、プリンタ１がサーバ印刷を実行可能な状態になる。
【００３５】
なお、プリンタ２についてもＴ１０〜Ｔ３６と同様にして登録処理が実行される。したがって、例えば、ＰＣ３は、ブラウザを起動した状態でユーザ情報ｕ１を利用して仲介サーバ４にログインし、ユーザからの登録操作を受け付ける（Ｔ１６Ｂ）ことによって、プリンタ１，２を検索する。ＰＣ３は、選択画面ＳＣ１を表示し、ユーザからのプリンタ２の選択を受け付ける（Ｔ２６Ｂ）と、プリンタ２にユーザ情報ｕ１を送信する（Ｔ２８Ｂ）。プリンタ２は、仲介サーバ４にユーザ情報ｕ１と、プリンタ名「ｐｒ２」及び印刷能力情報を含むプリンタ情報ｐ２と、を含む登録要求を送信する（Ｔ３０Ｂ）と、仲介サーバ４において、ユーザ情報ｕ１に関連付けてプリンタ情報ｐ２とトークンｔｋ２とが登録され（Ｔ３２Ｂ）、プリンタ２と仲介サーバ４との間でＸＭＰＰ接続が確立される（Ｔ３６Ｂ）。即ち、Ｔ３２とＴ３２Ｂとが実行されることにより、仲介サーバ４には、図１の様に、ユーザ情報ｕ１に関連付けて、プリンタ情報ｐ１及びトークンｔｋ１と、プリンタ情報ｐ２及びトークンｔｋ２と、がそれぞれ登録される。また、プリンタ２には、デバイスＩＤ「ｄｖ２」及びトークンｔｋ２が登録される。
【００３６】
（サブミット処理）
図３を参照して、印刷システムＳによって行われるサブミット処理について説明する。図３は、サブミット処理のシーケンス図である。サブミット処理は、ＰＣ３から印刷の実行を指示される印刷データと印刷条件に関する情報とを、新たなジョブとして、仲介サーバ４に記憶させるための処理である。
【００３７】
図３のＴ５０〜５４では、ＰＣ３は、ユーザの操作に応じて仲介サーバ４にログインする。具体的な方法はＴ１０〜１４と同様である。なお、図２の登録処理に続けてサブミット処理を実行する場合、すでにＰＣ３は仲介サーバ４にログインしているため、Ｔ５０〜５４の処理は省略される。
【００３８】
Ｔ５６では、ＰＣ３は、サーバ印刷を実行するためのサーバ印刷操作を受け付ける。この場合、ＰＣ３は、インターネット６を介して、仲介サーバ４から選択画面ＳＣ２を表す画面データを要求し、Ｔ５８にて、当該画面データを受信する。Ｔ６０では、ＰＣ３は、当該画面データによって表される選択画面ＳＣ２を表示する。仲介サーバ４には、ユーザ情報ｕ１に関連付けて２個のプリンタ情報ｐ１，ｐ２が登録されている（図１参照）。このため、選択画面ＳＣ２は、２個のプリンタ情報ｐ１，ｐ２に含まれる２個のプリンタ名「ｐｒ１」，「ｐｒ２」を含む。Ｔ６２では、ＰＣ３は、選択画面ＳＣ２を介して、プリンタ１，２の中から（即ちプリンタ名「ｐｒ１」，「ｐｒ２」の中から）、プリンタ１（即ちプリンタ名「ｐｒ１」）の選択を受け付ける。この場合、Ｔ６４では、ＰＣ３は、インターネット６を介して、プリンタ名「ｐｒ１」を含む選択結果を仲介サーバ４に送信する。
【００３９】
Ｔ６６では、ＰＣ３は、インターネット６を介して、仲介サーバ４から選択画面ＳＣ３を表す画面データを受信する。Ｔ６８では、ＰＣ３は、当該画面データによって表される選択画面ＳＣ３を表示する。選択画面ＳＣ３は、印刷対象の印刷データと印刷条件を選択するための画面である。これにより、ユーザは、ＰＣ３に格納されている複数個の印刷データの中から所望の印刷データを選択することができる。また、選択画面ＳＣ３は、プリンタ１の能力情報の範囲内で用紙サイズや印刷部数からなる印刷条件を選択可能に構成される。このために、ユーザは、所望の印刷条件を選択することができる。なお、印刷条件は、他にも、印刷色数、印刷解像度、用紙サイズ、両面印刷の有無等を含んでいてもよい。
【００４０】
Ｔ７０では、ＰＣ３は、選択画面ＳＣ３を介して、印刷データおよび印刷条件の選択を受け付ける。Ｔ７２では、ＰＣ３は、インターネット６を介して、選択された印刷データＰＤ１及び印刷条件を含む印刷実行要求を仲介サーバ４に送信する。印刷実行要求は、印刷データＰＤ１によって表される画像の印刷を当該印刷条件に従ってプリンタ１に実行させることを要求するためのコマンドである。
【００４１】
Ｔ７４では、仲介サーバ４は、印刷実行要求に含まれる印刷データＰＤ１及び印刷条件をサーバメモリ４２ｂに記憶する。なお、印刷条件は、チケットｔｃ１として記憶される。さらに、仲介サーバ４は、この印刷実行要求に対応するジョブの識別情報としてジョブＩＤ「ｊｂ１」を生成し、印刷データＰＤ１に基づく画像を印刷すべきプリンタ１（即ちＴ６２で選択されたプリンタ１）を識別するデバイスＩＤ「ｄｖ１」と、印刷データＰＤ１の記憶位置を示すデータアドレスｉＵＲＬ１と、チケットｔｃ１の記憶位置を示すチケットアドレスｔＵＲＬ１と、を対応付けてサーバジョブ管理テーブル４２ｂ３に記憶する。
【００４２】
Ｔ７６では、仲介サーバ４は、Ｔ３６（図２）のＸＭＰＰ接続を利用して、インターネット６を介して、ジョブ通知をプリンタ１に送信する。ジョブ通知は、サーバ印刷が実行されるべき印刷データＰＤ１及びチケットｔｃ１を記憶したことを通知するためのコマンドである。
【００４３】
なお、他のジョブについてもＴ５０〜Ｔ７６と同様にしてサブミット処理が実行される。したがって、例えば、ＰＣ３は、ブラウザを起動した状態でユーザ情報ｕ１を利用して仲介サーバ４にログインし、サーバ印刷操作を受け付け（Ｔ５６）、プリンタ１の選択を受け付け（Ｔ６２）、印刷データＰＤ２と印刷条件との選択を受け付ける（Ｔ７０）ことに応じて、印刷実行要求を仲介サーバ４に送信する（Ｔ７２）。仲介サーバ４は、印刷実行要求に含まれる印刷データＰＤ２と、印刷条件を含むチケットｔｃ２と、をサーバメモリ４２ｂに記憶する（Ｔ７４）と、プリンタ１にジョブ通知を送信する（Ｔ７６）。サーバジョブ管理テーブル４２ｂ３では、上記の処理によって記憶されたジョブを含む４つのジョブが記憶されている状態を示している（図１）。
【００４４】
（蓄積処理）
図４を参照して、プリンタ１のＣＰＵ１２ａによって実行される蓄積処理について説明する。蓄積処理は、図３のサブミット処理によって仲介サーバ４に記憶されたジョブＩＤ等を本体メモリ１２ｂ又はＵＳＢメモリ７に記憶する処理である。ＣＰＵ１２ａは、図２の登録処理によって仲介サーバ４へのプリンタ１，２の登録が完了したことに応じて、蓄積処理を開始する。
【００４５】
Ｓ１０において、ＣＰＵ１２ａは、仲介サーバ４からジョブ通知を受信することを監視する。ＣＰＵ１２ａは、仲介サーバ４からジョブ通知を受信した場合（図３のＴ７６）に、Ｓ１０でＹＥＳと判断し、Ｓ１２に進む。Ｓ１２において、ＣＰＵ１２ａは、本体メモリ１２ｂ内のデバイスＩＤ「ｄｖ１」を含むジョブ要求を仲介サーバ４に送信する。ジョブ要求は、仲介サーバ４に記憶されたジョブの各情報を受信するためのコマンドである。
【００４６】
Ｓ１４において、ＣＰＵ１２ａは、仲介サーバ４から、ジョブ要求に含まれるデバイスＩＤ「ｄｖ１」に対応付けて記憶されている各情報（即ちジョブＩＤ、チケットアドレス、及び、データアドレス）と、を受信する。Ｓ２０において、ＣＰＵ１２ａは、Ｓ１４で受信されたチケットアドレスを仲介サーバ４に送信し、Ｓ２２において、仲介サーバ４から当該チケットアドレスに対応するチケットの印刷条件情報を受信する。具体的には、ＣＰＵ１２ａは、チケットを受信する。Ｓ２４において、ＣＰＵ１２ａは、Ｓ１４で受信されたデータアドレスを仲介サーバ４に送信し、Ｓ２６において、仲介サーバ４から当該データアドレスに対応する印刷データを受信する。
【００４７】
Ｓ３０において、ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されているか否かを判断する。ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されていない場合に、Ｓ３０でＮＯと判断し、Ｓ４０に進む。Ｓ４０において、ＣＰＵ１２ａは、Ｓ１４で受信されたジョブＩＤと、Ｓ２２で受信された印刷条件情報と、Ｓ２６で受信された印刷データと、を対応付けて、本体メモリ１２ｂに記憶させる。ジョブＩＤおよびチケットは、本体ジョブ管理テーブル１２ｂ２に記憶される。ＣＰＵ１２ａは、Ｓ４０が終了すると、Ｓ１０に戻る。
【００４８】
一方、ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されている場合に、Ｓ３０でＹＥＳと判断し、Ｓ３２に進む。Ｓ３２において、ＣＰＵ１２ａは、Ｓ２６で受信された印刷データをデータ変換して、変換済み印刷データを生成する。具体的には、ＣＰＵ１２ａは、Ｓ２６で受信された印刷データがＰＷＧラスタ形式に従った印刷データである場合に、当該印刷データに対して、色変換処理と、ハーフトーン処理と、を実行する。色変換処理は、多階調のＲＧＢビットマップデータを多階調のＣＭＹＫビットマップデータに変換する処理である。ハーフトーン処理は、多階調のＣＭＹＫビットマップデータを比較的に少ない階調のＣＭＹＫビットマップデータに変換する処理である。また、ＣＰＵ１２ａは、Ｓ２６で受信された印刷データがＰＤＦ形式に従った印刷データである場合に、当該印刷データに対して、当該印刷データをラスタライズするラスタライズ処理と、色変換処理と、ハーフトーン処理と、を実行する。ラスタライズ処理は、ベクタ形式のデータをビットマップ形式のデータに変換する処理である。
【００４９】
Ｓ３４において、ＣＰＵ１２ａは、本体メモリ１２ｂ内に記憶された暗号化キー（図示省略）を鍵として、Ｓ３２で生成された変換済み印刷データを暗号化して暗号化データを生成する。なお、変形例では、ＣＰＵ１２ａは、Ｓ２６で受信された印刷データを変換することなく、暗号化キーを鍵として印刷データを暗号化してもよい。本変形例では、Ｓ３２を省略可能である。さらに、変形例では、ＣＰＵ１２ａは、印刷データまたは変換済み印刷データを暗号化しなくても良い。本変形例では、Ｓ３４を省略可能である。
【００５０】
Ｓ３６において、ＣＰＵ１２ａは、デバイスＩＤ「ｄｖ１」と、Ｓ１４で受信されたジョブＩＤと、Ｓ３４で生成された暗号化データと、を対応付けて、ＵＳＢメモリ７に記憶させる。ジョブＩＤは、ＵＳＢジョブ管理テーブル７１に記憶される。このように、プリンタ１にＵＳＢメモリ７が装着されている場合、ＣＰＵ１２ａは、各データを外部メモリであるＵＳＢメモリ７に記憶させ、データを内部メモリである本体メモリ１２ｂ内に記憶させない。このため、プリンタ１の内部メモリの記憶量が増えることを抑制することができる。また、ＣＰＵ１２ａは、デバイスＩＤ「ｄｖ１」、及び、ジョブＩＤを暗号化しないが、変形例では、これらの情報のうちの少なくとも１個の情報が暗号化されていてもよい。また、ＣＰＵ１２ａは、暗号化キーをＵＳＢメモリ７に記憶させない。ＣＰＵ１２ａは、Ｓ３６が終了すると、Ｓ１０に戻る。
【００５１】
（ケースＡ、Ｂ；図５）
続いて、図５を参照して、図４の蓄積処理によって実現される具体的なケースＡ、Ｂについて説明する。
【００５２】
（ケースＡ）
ケースＡでは、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されている。まず、プリンタ１、ＰＣ３、及び、仲介サーバ４の間で、図３のＴ５０〜Ｔ７６と同様の処理が実行される。プリンタ１は、仲介サーバ４からジョブ通知を受信すると（Ｓ１０でＹＥＳ）、Ｔ９０Ａにおいて、デバイスＩＤ「ｄｖ１」を含むジョブ要求を仲介サーバ４に送信する（Ｓ１２）。
【００５３】
Ｔ９０Ａにおいて、仲介サーバ４は、プリンタ１からジョブ要求を受信すると、当該要求内のデバイスＩＤ「ｄｖ１」を特定し、サーバジョブ管理テーブル４２ｂ３内のデバイスＩＤ「ｄｖ１」に対応付けられているジョブＩＤ「ｊｏｂ１」、データアドレス「ｉＵＲＬ１」、及び、チケットアドレス「ｔＵＲＬ１」を特定する。続けて、Ｔ９２Ａにおいて、仲介サーバ４は、特定済みのジョブＩＤ「ｊｏｂ１」と、特定済みのデータアドレス「ｉＵＲＬ１」と、特定済みのチケットアドレス「ｔＵＲＬ１」と、をプリンタ１に送信する。
【００５４】
Ｔ９２Ａにおいて、プリンタ１は、仲介サーバ４から各情報を受信すると（Ｓ１４）、Ｔ９４Ａにおいて、チケットアドレス「ｔＵＲＬ１」を含む印刷条件情報要求を仲介サーバ４に送信する（Ｓ２０）。
【００５５】
Ｔ９４Ａにおいて、仲介サーバ４は、プリンタ１から印刷条件情報要求を受信すると、当該要求内のチケットアドレス「ｔＵＲＬ１」によって示される位置に記憶されている印刷条件情報Ｃ１（例えば、用紙サイズ「Ａ４」、印刷色数「モノクロ」）を特定し、Ｔ９６Ａにおいて、特定済みの印刷条件情報Ｃ１をプリンタ１に送信する。
【００５６】
Ｔ９６Ａにおいて、プリンタ１は、仲介サーバ４から印刷条件情報Ｃ１を受信すると（Ｓ２２）、Ｔ９８Ａにおいて、Ｔ９２Ａで受信されたデータアドレス「ｉＵＲＬ１」を含む印刷データ要求を仲介サーバ４に送信する（Ｓ２４）。
【００５７】
Ｔ９８Ａにおいて、仲介サーバ４は、プリンタ１から印刷データ要求を受信すると、当該要求内のデータアドレス「ｉＵＲＬ１」によって示される位置に記憶されている印刷データＰＤ１を特定し、Ｔ１００Ａにおいて、特定済みの印刷データＰＤ１をプリンタ１に送信する。
【００５８】
Ｔ１００Ａにおいて、プリンタ１は、仲介サーバ４から印刷データＰＤ１を受信すると（Ｓ２６）、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されていると判断し（Ｓ３０でＹＥＳ）、Ｔ１０２Ａにおいて、印刷データＰＤ１を変換する（Ｓ３２）。次いで、プリンタ１は、Ｔ１０４Ａにおいて、変換済み印刷データを暗号化して暗号化データＥＤ１を生成する（Ｓ３４）。そして、プリンタ１は、Ｔ１０６Ａにおいて、Ｔ９２Ａで受信されたジョブＩＤ「ｊｏｂ１」と、生成済みの暗号化データＥＤ１と、を対応付けてＵＳＢメモリ７に記憶させる（Ｓ３６）。
【００５９】
（ケースＢ）
ケースＢでは、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されていない。まず、プリンタ１、ＰＣ３、及び、仲介サーバ４の間で、図３のＴ５０〜Ｔ７６と同様の処理が実行される。さらに、ケースＡにて述べたＴ９０Ａ〜Ｔ１００Ａと同様の処理が実行される。
【００６０】
プリンタ１は、Ｔ１００Ａにおいて、仲介サーバ４から印刷データＰＤ１を受信すると（Ｓ２６）、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されていないと判断する（Ｓ３０でＮＯ）。さらに、プリンタ１は、Ｔ１１０Ｂにおいて、Ｔ９２Ａで受信されたジョブＩＤ「ｊｏｂ１」と、Ｔ９６Ａで受信された印刷条件情報Ｃ１と、Ｔ１００Ａで受信された印刷データＰＤ１と、を対応付けて本体メモリ１２ｂに記憶させる（Ｓ４０）。
【００６１】
（印刷処理）
図６を参照して、プリンタ１のＣＰＵ１２ａによって行われる印刷処理について説明する。印刷処理は、本体メモリ１２ｂまたはＵＳＢメモリ７に記憶された印刷データの印刷を、印刷実行部１５に実行させるための処理である。印刷処理は、本体ジョブ管理テーブル１２ｂ２が空でない場合、又は、ＵＳＢジョブ管理テーブル７１が空でない場合に、印刷処理を開始する。
【００６２】
Ｓ１００において、ＣＰＵ１２ａは、ジョブ選択画面表示操作がされたか否かを判断する。ジョブ選択画面表示操作は、ジョブ選択画面を表示部１４に表示させるために、操作部１３に対して行われる操作である。ジョブ選択画面は、印刷対象のジョブＩＤを選択させるための画面である。ＣＰＵ１２ａは、ジョブ選択画面表示操作がされていない場合に、Ｓ１００でＮＯと判断し、Ｓ１００を繰り返し実行する。一方、ＣＰＵ１２ａは、ジョブ選択画面表示操作がされた場合に、Ｓ１００でＹＥＳと判断し、Ｓ１０２に進む。
【００６３】
Ｓ１０２において、ＣＰＵ１２ａは、ＵＳＢメモリ７が装着中であるか否かを判定する。ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されている場合に、Ｓ１０２でＹＥＳと判断し、Ｓ１０４に進む。Ｓ１０４において、ＣＰＵ１２ａは、表示部１４に、ＵＳＢメモリ７内のジョブ選択画面を表示する。ＵＳＢメモリ７内のジョブ選択画面には、ＵＳＢメモリ７に記憶されているジョブＩＤが表示される。
【００６４】
Ｓ１０６において、ＣＰＵ１２ａは、ジョブ選択操作を受け付ける。ジョブ選択操作は、ジョブ選択画面に表示されている各ジョブＩＤの中から、印刷対象のジョブＩＤが選択される操作である。続けて、Ｓ１０８において、ＣＰＵ１２ａは、ＵＳＢメモリ７内における選択済みのジョブＩＤに対応付けられている暗号化データを取得し、本体メモリ１２ｂ内の暗号化キーを鍵として暗号化データを復号する。Ｓ１１０において、ＣＰＵ１２ａは、変換済の印刷データに従った印刷を印刷実行部１５に実行させる。
【００６５】
Ｓ１１２において、ＣＰＵ１２ａは、ＵＳＢメモリ７内における選択されたジョブの各情報を削除する。具体的には、ＣＰＵ１２ａは、ＵＳＢメモリ７内における、選択済みのジョブＩＤおよび当該ジョブＩＤに対応付けられている暗号化データを削除する。Ｓ１１４において、ＣＰＵ１２ａは、Ｓ１０６にて選択されたジョブＩＤを含む印刷完了通知を仲介サーバ４に送信する。印刷完了通知は、当該通知内のジョブＩＤに対応する印刷データを利用した印刷が完了したことを示す通知である。ＣＰＵ１２ａは、Ｓ１１４が終了すると、Ｓ１００に戻る。なお、仲介サーバ４は、プリンタ１から、印刷完了通知を受信すると、当該通知内のジョブＩＤを特定し、サーバジョブ管理テーブル４２ｂ３内の特定済みのジョブＩＤに対応する各情報を消去する。従って、Ｓ１０６で選択されたジョブＩＤに対応する印刷データに従った印刷が繰り返し実行されることを防止することができる。
【００６６】
一方、Ｓ１０２において、ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されていない場合に、Ｓ１０２でＮＯと判断し、Ｓ１１６に進む。Ｓ１１６にて、ＣＰＵ１２ａは、表示部１４に、本体メモリ１２ｂ内のジョブ選択画面を表示する。本体メモリ１２ｂ内のジョブ選択画面には、本体メモリ１２ｂに記憶されているジョブＩＤが表示される。
【００６７】
Ｓ１１８において、ＣＰＵ１２ａは、ジョブ選択操作を受け付ける。Ｓ１２０において、ＣＰＵ１２ａは、選択済みのジョブＩＤに対応付けられている印刷データをデータ変換する。データ変換は、図４のＳ３２のデータ変換と同様であり、変換済み印刷データが生成される。Ｓ１２２において、ＣＰＵ１２ａは、変換済印刷データに従った印刷を印刷実行部１５に実行させる。
【００６８】
Ｓ１２４において、ＣＰＵ１２ａは、本体メモリ１２ｂ内における選択されたジョブの各情報を削除する。具体的には、ＣＰＵ１２ａは、本体メモリ１２ｂ内における、選択済みのジョブＩＤおよび当該ジョブＩＤに対応付けられているチケットおよび印刷データを削除する。ＣＰＵ１２ａは、Ｓ１２４が終了すると、Ｓ１１４に進む。
【００６９】
（ケースＣ、Ｄ；図７）
続いて、図７を参照して、図６の印刷処理によって実現される具体的なケースＣ，Ｄについて説明する。
【００７０】
（ケースＣ）
ケースＣでは、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されている。また、ＵＳＢメモリ７には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」、並びに、ジョブＩＤ「ｊｏｂ１」に対応付けられている暗号化データＥＤ１及びジョブＩＤ「ｊｏｂ２」に対応付けられている暗号化データＥＤ２が記憶されている（図１）。また、本体メモリ１２ｂには、ジョブＩＤが記憶されていない。さらに、仲介サーバ４には、プリンタ１のデバイスＩＤ「ｄｖ１」に対応付けられているジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」、並びに、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」それぞれに対応付けられているデータアドレス「ｉＵＲＬ１」，「ｉＵＲＬ２」、チケットアドレス「ｔＵＲＬ１」，「ｔＵＲＬ２」、印刷データＰＤ１，ＰＤ２、及び、チケットｔｃ１，ｔｃ２が記憶されている（図１）
【００７１】
Ｔ２００において、プリンタ１は、ジョブ選択画面表示操作を受け付けると（Ｓ１００でＹＥＳ）、ＵＳＢメモリ７が装着されていると判断して（Ｓ１０２でＹＥＳ）、Ｔ２０２において、ＵＳＢメモリ７内に記憶されているジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」を示す選択画面ＳＣ４を表示する（Ｓ１０４）。Ｔ２０４において、プリンタ１は、選択画面ＳＣ４を介して、ジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」の中からジョブＩＤ「ｊｏｂ１」の選択を受け付ける（Ｓ１０６）。
【００７２】
プリンタ１は、Ｔ２０４にて、ジョブＩＤ「ｊｏｂ１」の選択を受け付けたことに応じて、Ｔ２０６にて、ジョブＩＤ「ｊｏｂ１」に対応付けられた暗号化データＥＤ１を本体メモリ１２ｂ内の暗号化キーを鍵として復号化する（Ｓ１０８）。次いで、プリンタ１は、Ｔ２０８において、復号化された変換済の印刷データに従った印刷を実行し（Ｓ１１０）、Ｔ２１０において、ＵＳＢメモリ７内に記憶されたジョブＩＤ「ｊｏｂ１」及びジョブＩＤ「ｊｏｂ１」に対応付けられた暗号化データＥＤ１を削除する（Ｓ１１２）。そして、Ｔ２１２において、プリンタ１は、ジョブＩＤ「ｊｏｂ１」を含む印刷完了通知を仲介サーバ４に送信する（Ｓ１１４）。
【００７３】
Ｔ２１２において、仲介サーバ４は、印刷完了通知を受信すると、当該通知内のジョブＩＤ「ｊｏｂ１」を特定し、Ｔ２１４において、仲介サーバ４に記憶されているジョブＩＤ「ｊｏｂ１」、並びに、ジョブＩＤ「ｊｏｂ１」に対応付けられているデータアドレス「ｉＵＲＬ１」、チケットアドレス「ｔＵＲＬ１」、印刷データＰＤ１、及び、チケットｔｃ１を削除する。
【００７４】
（ケースＤ）
ケースＤでは、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されていない。また、本体メモリ１２ｂには、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」、並びに、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」それぞれに対応付けられている、チケットｔｃ１，ｔｃ２、及び、印刷データＰＤ１，ＰＤ２が記憶されている（図１）。さらに、仲介サーバ４には、プリンタ１のデバイスＩＤ「ｄｖ１」に対応付けられているジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」、並びに、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」それぞれに対応付けられているデータアドレス「ｉＵＲＬ１」，「ｉＵＲＬ２」、チケットアドレス「ｔＵＲＬ１」，「ｔＵＲＬ２」、印刷データＰＤ１，ＰＤ２、及び、チケットｔｃ１，ｔｃ２が記憶されている（図１）。
【００７５】
プリンタ１は、Ｔ３００において、ジョブ選択画面表示操作を受け付けると（Ｓ１００でＹＥＳ）、ＵＳＢメモリ７が装着されていないと判断して（Ｓ１０２でＮＯ）、Ｔ３０２において、本体メモリ１２ｂ内に記憶されているジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」を示す選択画面ＳＣ５を表示する（Ｓ１１６）。プリンタ１は、Ｔ３０４において、選択画面ＳＣ５を介して、ジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」の中からジョブＩＤ「ｊｏｂ１」の選択を受け付ける（Ｓ１１８）。
【００７６】
Ｔ３０４にて、プリンタ１は、ジョブＩＤ「ｊｏｂ１」の選択を受け付けたことに応じて、Ｔ３０６にて、ジョブＩＤ「ｊｏｂ１」に対応付けられた印刷データＰＤ１をデータ変換する（Ｓ１２０）。次いで、プリンタ１は、Ｔ３０８において、変換済の印刷データに従った印刷を実行し（Ｓ１２２）、Ｔ３１０において、本体メモリ１２ｂ内に記憶されたジョブＩＤ「ｊｏｂ１」及びジョブＩＤ「ｊｏｂ１」に対応付けられたチケットｔｃ１及び印刷データＰＤ１を削除する（Ｓ１２４）。そして、Ｔ３１２において、プリンタ１は、ジョブＩＤ「ｊｏｂ１」を含む印刷完了通知を仲介サーバ４に送信する（Ｓ１１４）。
【００７７】
Ｔ３１２において、仲介サーバ４は、印刷完了通知を受信すると、当該通知内のジョブＩＤ「ｊｏｂ１」を特定し、Ｔ３１４において、仲介サーバ４に記憶されているジョブＩＤ「ｊｏｂ１」、並びに、ジョブＩＤ「ｊｏｂ１」に対応付けられているデータアドレス「ｉＵＲＬ１」、チケットアドレス「ｔＵＲＬ１」、印刷データＰＤ１、及び、チケットｔｃ１を削除する。
【００７８】
（特定処理）
図８を参照して、プリンタ１のＣＰＵ１２ａが実行する特定処理を含む処理について説明する。特定処理は、仲介サーバ４に記憶されているサーバジョブリストと、本体メモリ１２ｂに記憶されている本体ジョブリスト又はＵＳＢメモリ７に記憶されているＵＳＢジョブリストとを整合させる処理である。サーバジョブリストは、サーバジョブ管理テーブル４２ｂ３に記憶されている各情報であって、特定処理を実行するプリンタのデバイスＩＤに対応付けられている各情報（即ちジョブＩＤ、チケットアドレス、及び、データアドレス）である。本体ジョブリストは、特定処理を実行するプリンタの本体ジョブ管理テーブル１２ｂ２に記憶されている各情報（即ちジョブＩＤ、及び、チケット）である。ＵＳＢジョブリストは、特定処理を実行するプリンタに装着されるＵＳＢメモリ７のＵＳＢジョブ管理テーブル７１に記憶されている各情報（即ちジョブＩＤ）である。ＣＰＵ１２ａは、図４の蓄積処理によって仲介サーバ４の各データが、本体メモリ１２ｂまたはＵＳＢメモリ７に蓄積されたことに応じて、図８のフローチャートを実行する。
【００７９】
Ｓ２００において、ＣＰＵ１２ａは、ＵＳＢメモリ７が抜去されたか否かを判断する。ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着された状態からＵＳＢメモリ７が抜かれた状態に変化したことに応じて、Ｓ２００でＹＥＳと判断し、Ｓ２０２に進む。Ｓ２０２において、ＣＰＵ１２ａは、本体メモリ１２ｂ内のデバイスＩＤを含むサーバジョブリスト要求を仲介サーバ４に送信する。Ｓ２０４において、ＣＰＵ１２ａは、仲介サーバ４から、サーバジョブリスト要求に含まれるデバイスＩＤに対応付けて記憶されているサーバジョブリスト（即ちジョブＩＤ、チケットアドレス、及び、データアドレス）を受信する。
【００８０】
Ｓ２０６において、ＣＰＵ１２ａは、Ｓ２０４で受信したチケットアドレスを仲介サーバ４に送信し、Ｓ２０８において、仲介サーバ４から当該チケットアドレスに対応する印刷条件情報を受信する。具体的には、ＣＰＵ１２ａは、印刷条件情報を含むチケットを受信する。Ｓ２１０において、ＣＰＵ１２ａは、Ｓ２０４で受信されたデータアドレスを仲介サーバ４に送信し、Ｓ２１２において、仲介サーバ４から当該データアドレスに対応する印刷データを受信する。Ｓ２１４において、ＣＰＵ１２ａは、Ｓ２０４で受信されたジョブＩＤ、Ｓ２０８で受信された印刷条件情報を含むチケット、及び、印刷データを対応付けて本体メモリ１２ｂに記憶する。
【００８１】
一方、Ｓ２００において、ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７を装着された状態が継続している場合、又は、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７を装着されていない状態が継続している場合にＮＯと判定し、Ｓ２１６に進む。Ｓ２１６において、ＣＰＵ１２ａは、ＵＳＢメモリ７が装着されたか否かを判断する。ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７を装着された状態が継続している場合、又は、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７を装着されていない状態が継続している場合、Ｓ２１６にてＮＯと判定し、Ｓ２００に進む。一方、ＣＰＵ１２ａは、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されていない状態からＵＳＢメモリ７が装着された状態に変化したことに応じて、Ｓ２１６でＹＥＳと判断し、Ｓ２１８に進む。
【００８２】
ＣＰＵ１２ａは、Ｓ２１８において、Ｓ２０２と同様にサーバジョブリストを要求し、Ｓ２２０において、Ｓ２０４と同様にサーバジョブリストを受信する。Ｓ２２２にて、ＣＰＵ１２ａは、仲介サーバ４のジョブとＵＳＢメモリ７のジョブとを比較する。具体的には、ＣＰＵ１２ａは、Ｓ２２０で受信したサーバジョブリストに含まれるジョブＩＤと、ＵＳＢジョブリストに含まれるジョブＩＤとを比較する。
【００８３】
Ｓ２２４において、ＣＰＵ１２ａは、ＵＳＢメモリ７に無く、かつ、仲介サーバ４に有るジョブが存在するか否かを判断する。ＣＰＵ１２ａは、ＵＳＢジョブリストに含まれていないが、サーバジョブリストに含まれているジョブＩＤが存在する場合、Ｓ２２４でＹＥＳと判断し、Ｓ２２６に進む。以下では、当該ジョブＩＤを「不足ジョブＩＤ」と記載する。Ｓ２２６にて、ＣＰＵ１２ａは、本体メモリ１２ｂから、ＵＳＢメモリ７に無く、かつ、本体メモリ１２ｂに有るジョブの各情報を複写して記憶する。具体的には、ＣＰＵ１２ａは、不足ジョブＩＤに対応する各情報（不足ジョブＩＤ及び印刷データ）を、本体メモリ１２ｂからＵＳＢメモリ７に複写して記憶する。本体メモリ１２ｂに記憶されている不足ジョブＩＤに対応する各情報は、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着される前の状態において実行された蓄積処理のＳ４０にて記憶されたものである。なお、変形例では、不足ジョブＩＤに対応する各情報を、仲介サーバ４から受信して、ＵＳＢメモリ７に複写して記憶してもよい。
【００８４】
ＣＰＵ１２ａは、Ｓ２２８において、蓄積処理のＳ３２と同様にデータ変換し、Ｓ２３０において、蓄積処理のＳ３４と同様に、暗号化を実行する。Ｓ２３２において、ＣＰＵ１２ａは、蓄積処理のＳ３６と同様に暗号化データをＵＳＢメモリ７に記憶して、Ｓ２３４に進む。なお、変形例では、ＣＰＵ１２ａは、Ｓ２２６にて記憶した印刷データを変換することなく暗号化してもよい。本変形例では、Ｓ２２８を省略可能である。さらに、ＣＰＵ１２ａは、印刷データまたは変換済み印刷データを暗号化しなくても良い。本変形例では、Ｓ２３０を省略可能である。一方、Ｓ２２４において、ＣＰＵ１２ａは、不足ジョブＩＤが存在しない場合にＮＯと判断し、Ｓ２３４に進む。
【００８５】
Ｓ２３４において、ＣＰＵ１２ａは、ＵＳＢメモリ７に有り、かつ、仲介サーバ４に無いジョブが存在するか否かを判断する。ＣＰＵ１２ａは、ＵＳＢジョブリストに含まれているが、サーバジョブリストに含まれていないジョブＩＤが存在する場合、Ｓ２３４でＹＥＳと判断し、Ｓ２３６に進む。以下では、当該ジョブＩＤを「余剰ジョブＩＤ」と記載する。
【００８６】
Ｓ２３６にて、ＣＰＵ１２ａは、ＵＳＢメモリ７から、ＵＳＢメモリ７に有り、かつ、仲介サーバ４に無いジョブの各情報を削除する。具体的には、ＣＰＵ１２ａは、余剰ジョブＩＤに対応する各情報（余剰ジョブＩＤ及び暗号化データ）を削除する。ＵＳＢメモリ７に記憶された余剰ジョブＩＤに対応する各情報は、Ｓ２１６でＵＳＢメモリ７が装着される前に、当該ＵＳＢメモリ７が装着された状態で実行された蓄積処理のＳ３６にて記憶されたものであり、さらに、ＵＳＢメモリ７が抜去されている状態で実行された印刷処理のＳ１２２にて印刷されたものである。すなわち、ＵＳＢメモリ７に記憶された余剰ジョブＩＤに対応する各情報は、ＵＳＢメモリ７が装着された状態で実行された蓄積処理のＳ３６にて記憶され、その後、ＵＳＢメモリ７が抜去され、ＵＳＢメモリ７が抜去されている状態で実行された印刷処理のＳ１２２にて印刷されたものである。Ｓ１２２にて印刷されると、Ｓ１２４にて本体メモリ１２ｂからジョブの各情報が削除され、さらに、Ｓ１１４にて印刷完了通知を仲介サーバ４に送信することに応じて、サーバジョブ管理テーブル４２ｂ３からジョブの各情報が削除される。
【００８７】
Ｓ２３８にて、ＣＰＵ１２ａは、本体メモリ１２ｂの各情報を削除する。具体的には、ＣＰＵ１２ａは、本体ジョブ管理テーブル１２ｂ２に記憶された各情報（ジョブＩＤ及びチケット）の全部、及び、印刷データの全部を削除して、Ｓ２００に進む。
【００８８】
（ケースＥ）
続いて、図９を参照して、図８の特定処理によって実現される具体的なケースＥについて説明する。ケースＥでは、前提条件として、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されている。
【００８９】
また、特定処理が実行される前のジョブＩＤの状態は、状態Ｅ１に示されるように、本体ジョブ管理テーブル１２ｂ２にはジョブＩＤは存在せず、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」が存在する。また、サーバジョブ管理テーブル４２ｂ３には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」が存在し、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」のそれぞれに対応するデータアドレス（図示省略）およびチケットアドレス（図示省略）が存在する。なお、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されている場合、ＵＳＢジョブ管理テーブル７１を示す図が実線にて示されている（後述するケースＦ，Ｇにおいても同様）。
【００９０】
プリンタ１は、Ｔ４００において、ＵＳＢＩ／Ｆ１６からＵＳＢメモリ７が抜去されると（Ｓ２００でＹＥＳ）、Ｔ４０２において、デバイスＩＤ「ｄｖ１」を含むサーバジョブリスト要求を仲介サーバ４に送信する（Ｓ２０２）。Ｔ４０２において、仲介サーバ４は、プリンタ１からサーバジョブリスト要求を受信すると、当該要求内のデバイスＩＤ「ｄｖ１」を特定し、デバイスＩＤ「ｄｖ１」に対応付けられているジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」、データアドレス「ｉＵＲＬ１」，「ｉＵＲＬ２」、及び、チケットアドレス「ｔＵＲＬ１」，「ｔＵＲＬ２」を特定する。続けて、Ｔ４０４において、仲介サーバ４は、サーバジョブリストとして、特定済みのジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」、特定済みのデータアドレス「ｉＵＲＬ１」，「ｉＵＲＬ２」、及び、特定済みのチケットアドレス「ｔＵＲＬ１」，「ｔＵＲＬ２」をプリンタ１に送信する。
【００９１】
Ｔ４０４において、プリンタ１は、仲介サーバ４からサーバジョブリストを受信すると（Ｓ２０４）、Ｔ４０６において、チケットアドレス「ｔＵＲＬ１」，「ｔＵＲＬ２」を含む印刷条件情報要求を仲介サーバ４に送信する（Ｓ２０６）。Ｔ４０６において、仲介サーバ４は、プリンタ１から印刷条件情報要求を受信すると、当該要求内のチケットアドレス「ｔＵＲＬ１」，「ｔＵＲＬ２」によって示される位置に記憶されている印刷条件情報Ｃ１，Ｃ２を特定し、Ｔ４０８において、特定済みの印刷条件情報Ｃ１，Ｃ２をプリンタ１に送信する。
【００９２】
Ｔ４０８において、プリンタ１は、仲介サーバ４から印刷条件情報Ｃ１，Ｃ２を受信すると（Ｓ２０８）、Ｔ４１０において、Ｔ４０４で受信されたデータアドレス「ｉＵＲＬ１」，「ｉＵＲＬ２」を含む印刷データ要求を仲介サーバ４に送信する（Ｓ２１０）。Ｔ４１０において、仲介サーバ４は、プリンタ１から印刷データ要求を受信すると、当該要求内のデータアドレス「ｉＵＲＬ１」，「ｉＵＲＬ２」によって示される位置に記憶されている印刷データＰＤ１，ＰＤ２を特定し、Ｔ４１２において、特定済みの印刷データＰＤ１，ＰＤ２をプリンタ１に送信する。
【００９３】
Ｔ４１２において、プリンタ１は、仲介サーバ４から印刷データＰＤ１，ＰＤ２を受信すると（Ｓ２１２）、Ｔ４１４にて、Ｔ４０４にて受信したジョブＩＤ「ｊｏｂ１」，「Ｊｏｂ２」、Ｔ４０８において受信した印刷条件情報Ｃ１，Ｃ２（チケットｔｃ１，ｔｃ２）、及び、Ｔ４１２において受信した印刷データＰＤ１，ＰＤ２を本体メモリ１２ｂに記憶する（Ｓ２１４）。
【００９４】
これにより、特定処理が実行された後のジョブＩＤの状態は、状態Ｅ２に示されるように、本体ジョブ管理テーブル１２ｂ２にはジョブＩＤには「ｊｏｂ１」，「ｊｏｂ２」が存在し、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」が存在し、サーバジョブ管理テーブル４２ｂ３には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」が存在する。このように、特定処理によって、サーバジョブリストと本体ジョブリストとが整合される。なお、ＵＳＢＩ／Ｆ１６からＵＳＢメモリ７が抜去されている場合、ＵＳＢジョブ管理テーブル７１を示す図が破線にて示されている（後述するケースＦ，Ｇにおいても同様）。
【００９５】
（ケースＦ）
続いて、図１０を参照して、図８の特定処理によって実現される具体的なケースＦについて説明する。ケースＦでは、前提条件として、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されていない。
【００９６】
また、特定処理が実行される前のジョブＩＤの状態は、状態Ｆ１に示されるように、本体ジョブ管理テーブル１２ｂ２にはジョブＩＤ「ｊｏｂ１」が存在し、ジョブＩＤ「ｊｏｂ１」に対応するチケット（図示省略）が存在する。また、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」が存在する。さらに、サーバジョブ管理テーブル４２ｂ３には、ジョブＩＤ「ｊｏｂ１」が存在し、ジョブＩＤ「ｊｏｂ１」に対応するデータアドレス（図示省略）およびチケットアドレス（図示省略）が存在する。なお、この状態は、例えば図９に示す状態Ｅ２から、ジョブＩＤ「ｊｏｂ２」に対して印刷処理が実行されたことにより、本体メモリ１２ｂおよび仲介サーバ４に記憶されたジョブＩＤ「ｊｏｂ２」及びジョブＩＤ「ｊｏｂ２」に対応する各情報が削除された状態である。
【００９７】
プリンタ１は、Ｔ５００において、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されると（Ｓ２１６でＹＥＳ）、Ｔ５０２において、デバイスＩＤ「ｄｖ１」を含むサーバジョブリスト要求を仲介サーバ４に送信する（Ｓ２１８）。Ｔ５０２において、仲介サーバ４は、プリンタ１からサーバジョブリスト要求を受信すると、当該要求内のデバイスＩＤ「ｄｖ１」を特定し、デバイスＩＤ「ｄｖ１」に対応付けられているジョブＩＤ「ｊｏｂ１」、データアドレス「ｉＵＲＬ１」、及び、チケットアドレス「ｔＵＲＬ１」を特定する。続けて、Ｔ５０４において、仲介サーバ４は、サーバジョブリストとして、特定済みのジョブＩＤ「ｊｏｂ１」、特定済みのデータアドレス「ｉＵＲＬ１」、及び、特定済みのチケットアドレス「ｔＵＲＬ１」をプリンタ１に送信する。
【００９８】
Ｔ５０４において、プリンタ１は、仲介サーバ４からサーバジョブリストを受信する（Ｓ２２０）。Ｔ５０６において、プリンタ１は、Ｓ５０４で受信したサーバジョブリストに含まれるジョブＩＤと、ＵＳＢジョブリストに含まれるジョブＩＤとを比較して、ＵＳＢジョブリストに含まれるジョブＩＤ「ｊｏｂ２」を余剰ジョブＩＤとして存在すると判断する（Ｓ２２４でＮＯ、かつ、Ｓ２３４ｄでＹＥＳ）。
【００９９】
続けて、プリンタ１は、Ｔ５０８において、ＵＳＢメモリ７から余剰ジョブＩＤに相当するジョブＩＤ「ｊｏｂ２」及びジョブＩＤ「ｊｏｂ２」に対応する暗号化データＥＤ１を削除する（Ｓ２３６）。さらに、プリンタ１は、Ｔ５１０において、本体メモリ１２ｂに記憶されたジョブＩＤ「ｊｏｂ１」、チケットｔｃ１、印刷データＰＤ１を削除する（Ｓ２３８）。
【０１００】
これにより、特定処理が実行された後のジョブＩＤの状態は、状態Ｆ２に示されるように、本体ジョブ管理テーブル１２ｂ２にはジョブＩＤが存在せず、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤ「ｊｏｂ１」が存在し、サーバジョブ管理テーブル４２ｂ３には、ジョブＩＤ「ｊｏｂ１」が存在する。このように、特定処理によって、サーバジョブリストとＵＳＢジョブリストとが整合される。
【０１０１】
（ケースＧ）
続いて、図１１を参照して、図８の特定処理によって実現される具体的なケースＧについて説明する。ケースＧでは、前提条件として、プリンタ１のＵＳＢＩ／Ｆ１６にはＵＳＢメモリ７が装着されていない。
【０１０２】
また、特定処理が実行される前のジョブＩＤの状態は、状態Ｇ１に示されるように、本体ジョブ管理テーブル１２ｂ２にはジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」，「ｊｏｂ３」が存在し、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」，「ｊｏｂ３」に対応するチケット（図示省略）が存在する。また、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」が存在する。さらに、サーバジョブ管理テーブル４２ｂ３には、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」，「ｊｏｂ３」が存在し、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」，「ｊｏｂ３」それぞれに対応するデータアドレス（図示省略）およびチケットアドレス（図示省略）が存在する。なお、この状態は、図９に示す状態Ｅ３から、蓄積処理が実行されることによって、ジョブＩＤ「ｊｏｂ３」が仲介サーバ４および本体メモリ１２ｂに追加して記憶された状態である。
【０１０３】
プリンタ１は、Ｔ６００において、ＵＳＢＩ／Ｆ１６にＵＳＢメモリ７が装着されると（Ｓ２１６でＹＥＳ）、Ｔ６０２において、図１０のＴ５０２と同様にサーバジョブリスト要求を仲介サーバ４に送信する（Ｓ２１８）。仲介サーバ４は、Ｔ６０２において、図１０のＴ５０２と同様に、ジョブＩＤ「ｊｏｂ１」、データアドレス「ｉＵＲＬ１」、及び、チケットアドレス「ｔＵＲＬ１」を特定し、Ｔ６０４において、図１０のＴ５０４と同様に、サーバジョブリストとして、ジョブＩＤ「ｊｏｂ１」、データアドレス「ｉＵＲＬ１」、及び、チケットアドレス「ｔＵＲＬ１」をプリンタ１に送信する。
【０１０４】
Ｔ６０４において、プリンタ１は、仲介サーバ４からサーバジョブリストを受信する（Ｓ２２０）。Ｔ６０６において、プリンタ１は、Ｓ６０４で受信したサーバジョブリストに含まれるジョブＩＤと、ＵＳＢジョブリストに含まれるジョブＩＤとを比較して、サーバジョブリストに含まれるジョブＩＤ「ｊｏｂ３」を不足ジョブＩＤとして存在すると判断する（Ｓ２２４でＹＥＳ）。
【０１０５】
続けて、プリンタ１は、Ｔ６０８において、本体メモリ１２ｂから不足ジョブＩＤに相当するジョブＩＤ「ｊｏｂ３」及びジョブＩＤ「ｊｏｂ３」に対応する印刷データＰＤ３を、ＵＳＢメモリ７に複写して記憶する（Ｓ２２６）。プリンタ１は、Ｔ６１０において、印刷データＰＤ３をデータ変換し（Ｓ２２８）、Ｔ６１２において、変換した印刷データＰＤ３を暗号化して暗号化データＥＤ３を生成し（Ｓ２３０）、さらに、Ｔ６１４において、ジョブＩＤ「ｊｏｂ３」に対応付けて暗号化データＥＤ３をＵＳＢメモリ７に記憶する（Ｓ２３２）。
【０１０６】
Ｔ６１６において、プリンタ１は、余剰ジョブＩＤが存在しないと判断し（Ｓ２３４でＮＯ）、本体メモリ１２ｂに記憶されたジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」，「ｊｏｂ３」、並びに、ジョブＩＤ「ｊｏｂ１」，「ｊｏｂ２」，「ｊｏｂ３」に対応するチケットｔｃ１，ｔｃ２，ｔｃ３、及び、印刷データＰＤ１，ＰＤ２，ＰＤ３を削除する（Ｓ２３８）。
【０１０７】
これにより、特定処理が実行された後のジョブＩＤの状態は、状態Ｇ２に示されるように、本体ジョブ管理テーブル１２ｂ２にはジョブＩＤが存在せず、ＵＳＢジョブ管理テーブル７１には、ジョブＩＤ「ｊｏｂ１」「ｊｏｂ２」，「ｊｏｂ３」が存在し、サーバジョブ管理テーブル４２ｂ３には、ジョブＩＤ「ｊｏｂ１」「ｊｏｂ２」，「ｊｏｂ３」が存在する。このように、特定処理によって、サーバジョブリストとＵＳＢジョブリストとが整合される。
【０１０８】
（ケースＥ，Ｆ，Ｇの効果）
図９のケースＥに示されるように、プリンタ１からＵＳＢメモリ７が抜去された場合、仲介サーバ４に記憶された印刷データが本体メモリ１２ｂに記憶される。よって、印刷データが印刷される際に、印刷が比較的早く実行される。
図１０のケースＦに示されるように、プリンタ１にＵＳＢメモリ７が装着された場合、仲介サーバ４には存在するがＵＳＢメモリ７には存在しない印刷データが、ＵＳＢメモリ７に記憶される。よって、印刷データが印刷される際に、印刷が比較的早く実行される。
図１１のケースＧに示されるように、プリンタ１にＵＳＢメモリ７が装着された場合、仲介サーバ４には存在しないがＵＳＢメモリ７には存在する印刷データ（暗号化データ）が、ＵＳＢメモリ７から削除される。よって、ＵＳＢメモリ７の使用容量を抑制できる。仲介サーバ４には存在しないがＵＳＢメモリ７には存在する印刷データ（暗号化データ）は、ＵＳＢメモリ７が抜去されている状態で、印刷されたジョブであるため、ＵＳＢメモリ７から削除してよい。
また、ケースＦ，ケースＧに示されるように、プリンタ１にＵＳＢメモリ７が装着された場合、特定処理によって仲介サーバ４に記憶されている印刷データとＵＳＢメモリ７に記憶されている印刷データが一致したことに応じて、本体メモリ１２ｂから印刷データが削除される。よって、本体メモリ１２ｂの使用容量を抑制できる。
また、ＵＳＢメモリ７に、変換済み印刷データまたは変換済み印刷データを暗号化した暗号化データが記憶された場合において、ＵＳＢメモリ７に記憶された印刷データの印刷が実行される場合、印刷が比較的早く実行される。また、本体メモリ１２ｂに、変換前の印刷データが記憶される場合、本体メモリ１２ｂの使用容量を抑制できる。
【０１０９】
（対応関係）
プリンタ１が「印刷装置」の一例である。画像データが「印刷対象画像」の一例である。仲介サーバ４が「サーバ」の一例である。ネットワークＩ／Ｆ１１が「通信インターフェース」の一例である。ＰＣ３が「端末装置」の一例である。印刷実行要求が「印刷要求」の一例である。ジョブＩＤが「データ識別情報」の一例である。ＵＳＢメモリ７が「外部メモリ」の一例である。ＵＳＢＩ／Ｆ１６が「メモリインターフェース」の一例である。ＣＰＵ１２ａによって実行される図４のＳ１４，Ｓ２２及びＳ２６が「第１データ受信部」及び「第１データ受信処理」によって実行される処理の一例である。ＣＰＵ１２ａによって実行される図４のＳ３６及びＳ４０が「記憶制御部」及び「記憶処理」によって実行される処理の一例である。ＵＳＢメモリ７の抜去およびＵＳＢメモリ７の装着が「外部メモリの着脱に関する所定のトリガ情報」の一例である。サーバジョブリストが「第１のジョブリスト情報」の一例である。サーバジョブリスト要求が「リスト情報要求」の一例である。
【０１１０】
ＣＰＵ１２ａによって実行される図８のＳ２０２、Ｓ２１８が「送信部」及び「送信処理」によって実行される処理の一例である。ＣＰＵ１２ａによって実行される図８のＳ２０４、Ｓ２２０が「第２データ受信部」及び「第２データ受信処理」によって実行される処理の一例である。本体ジョブリストおよびＵＳＢジョブリストが「第２のジョブリスト情報」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２１２が、「処理実行部」によって実行される「特定処理」における「第１受信処理」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２１４が、「処理実行部」によって実行される「特定処理」における「第1記憶処理」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２２２が、「処理実行部」によって実行される「特定処理」における「比較処理」の一例である。不足ジョブＩＤが「不足データ識別情報」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２２４が、「処理実行部」によって実行される「特定処理」における「第１判定処理」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２２６が、「処理実行部」によって実行される「特定処理」における「追加処理」、「第２受信処理」及び「第２記憶処理」の一例である。余剰ジョブＩＤが「余剰データ識別情報」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２３４が、「処理実行部」によって実行される「特定処理」における「第２判定処理」の一例である。ＣＰＵ１２ａによって実行される図８のＳ２３６が、「処理実行部」によって実行される「特定処理」における「第１削除処理」及び「第２削除処理」の一例である。ＣＰＵ１２ａによって実行される図４のＳ３２が、「データ変換部」の一例である。制御部１２が「コンピュータ」の一例である。
【０１１１】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【０１１２】
（変形例１）
上記の実施例において、本体メモリ１２ｂには、変換前の印刷データが記憶される。しかし、それに代えて、本体メモリ１２ｂには、変換済み印刷データ、変換済み印刷データを暗号化したもの、または、変換前の印刷データを暗号化したものを記憶してもよい。本体メモリ１２ｂに変換済み印刷データまたは変換済み印刷データを暗号化したものを記憶した場合においては、印刷が比較的早く実行される。
【０１１３】
（変形例２）
上記の実施例において、本体メモリ１２ｂには、変換前の印刷データが記憶される。しかし、それに代えて、本体メモリ１２ｂの空き容量が所定容量以上である場合に変換済み印刷データまたは変換済み印刷データを暗号化したものを記憶し、本体メモリ１２ｂの空き容量が所定容量より少ない場合に変換前の印刷データを記憶してもよい。所定容量は、本体メモリ１２ｂの全容量の例えば５０％である。
（変形例２の効果）
本体メモリ１２ｂの空き容量が所定容量以上である場合、変換済み印刷データまたは変換済み印刷データを暗号化したものが記憶されるため、印刷が比較的早く実行される。一方、本体メモリ１２ｂの空き容量が所定容量より少ない場合、変換前の印刷データが記憶されるため、本体メモリ１２ｂの使用容量を抑制できる。
【０１１４】
（変形例３）
上記の実施例において、ＣＰＵ１２ａは、図８の処理において、ＵＳＢメモリ７が抜去された場合（Ｓ２００でＹＥＳ）にＳ２０２〜Ｓ２１４の処理を実行する。さらに、ＣＰＵ１２ａは、プリンタ１の電源がＯＦＦからＯＮに切り替わった時において、ＵＳＢメモリ７がＵＳＢＩ／Ｆ１６に装着されていない場合に、Ｓ２０２〜Ｓ２１４の処理を実行してもよい。この場合、本体メモリ１２ｂがＲＡＭで構成されている場合であって、ＵＳＢメモリ７がＵＳＢＩ／Ｆ１６に装着されていない場合においても、本体ジョブリストとサーバジョブリストとが確実に整合される。
【０１１５】
（変形例４）
上記の実施例の各処理は、プリンタ１のＣＰＵ１２ａと、ＰＣ３のＣＰＵ３２ａと、仲介サーバ４のＣＰＵ４２ａと、がソフトウェア（すなわち、プログラム１２ｂ１，３２ｄ，４２ｂ１）にしたがって処理を実行することによって実現されるが、それに代えて、論理回路等のハードウェアによって実現されてもよい。
【０１１６】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１１７】
１：プリンタ、３：ＰＣ、４：仲介サーバ、６：インターネット、７：ＵＳＢメモリ、１１：ネットワークＩ／Ｆ、１２：制御部、１２ｂ：本体メモリ、１２ｂ２：本体ジョブ管理テーブル、１５：印刷実行部、１６：ＵＳＢＩ／Ｆ，３１：ネットワークインターフェース、４２ｂ：サーバメモリ、４２ｂ３：サーバジョブ管理テーブル、７１：ＵＳＢジョブ管理テーブル。
【図１】
2020152040.tif 000003
【図２】
2020152040.tif 000004
【図３】
2020152040.tif 000005
【図４】
2020152040.tif 000006
【図５】
2020152040.tif 000007
【図６】
2020152040.tif 000008
【図７】
2020152040.tif 000009
【図８】
2020152040.tif 000010
【図９】
2020152040.tif 000011
【図１０】
2020152040.tif 000012
【図１１】
2020152040.tif 000013