画像を印刷するための印刷データをサーバへアップロードする端末装置と、前記サーバから前記印刷データをダウンロードする1台または複数台の画像形成装置と、を有する印刷システムであって、前記端末装置には、前記サーバへ前記印刷データをアップロードすることができないことを検知するアップロード不能検知手段と、アップロードすることができないことが前記アップロード不能検知手段によって検知された場合に、前記1台または複数台の画像形成装置の中から、当該端末装置から前記印刷データを受信することができる受信可能画像形成装置を検索する、検索手段と、検索された前記受信可能画像形成装置へ前記印刷データを送信する送信手段と、が設けられ、前記画像形成装置には、前記サーバから前記印刷データをダウンロードすることができないことを検知するダウンロード不能検知手段と、ダウンロードすることができないことが前記ダウンロード不能検知手段によって検知された場合に、前記サーバを介することなく前記印刷データを前記端末装置から受信できるように通信の設定を変更する設定変更手段と、前記設定に基づいて前記印刷データを前記端末装置から受信する受信手段と、が設けられている、ことを特徴とする印刷システム。前記画像形成装置には、前記サーバを介することなく前記印刷データをやり取りするためのポートが備わっており、前記設定変更手段は、前記ポートの使用を許可するように前記設定を変更する、請求項1に記載の印刷システム。前記設定変更手段は、前記印刷データが前記端末装置から送信されてきた後、前記ポートの使用を禁止するように前記設定を変更し直す、請求項2記載の印刷システム。前記画像形成装置には、前記受信手段が前記サーバから過去にダウンロードした他の印刷データの送信元を記憶する送信元記憶手段、が設けられており、前記受信手段は、前記端末装置が前記送信元として前記送信元記憶手段に記憶されていれば、前記印刷データを前記端末装置から受信する、請求項1ないし請求項3のいずれかに記載の印刷システム。前記画像形成装置には、前記端末装置のユーザが前記サーバにログインした後、前記印刷データに基づいて前記画像を印刷する、印刷手段、が設けられている、請求項1ないし請求項4のいずれかに記載の印刷システム。前記画像形成装置には、前記印刷手段によって前記画像を印刷した際のリソースの消費に関する情報を前記サーバへ通知する通知手段、が設けられている、請求項1ないし請求項5のいずれかに記載の印刷システム。画像を印刷するための印刷データをサーバへアップロードする端末装置および前記サーバと通信する機能を有する画像形成装置であって、前記サーバから前記印刷データをダウンロードすることができないことを検知するダウンロード不能検知手段と、ダウンロードすることができないことが前記ダウンロード不能検知手段によって検知された場合に、前記サーバを介することなく前記印刷データを前記端末装置から受信できるように通信の設定を変更する設定変更手段と、前記設定に基づいて前記印刷データを前記端末装置から受信する受信手段と、が設けられている、ことを特徴とする画像形成装置。サーバと、画像を印刷するための印刷データを前記サーバへアップロードする端末装置と、前記サーバから前記印刷データをダウンロードする1台または複数台の画像形成装置と、を用いた印刷データ送受信方法であって、前記端末装置は、前記サーバへ前記印刷データをアップロードすることができないことを検知し、アップロードすることができないことを検知した場合に、前記1台または複数台の画像形成装置の中から、当該端末装置から前記印刷データを受信することができる受信可能画像形成装置を検索し、検索した前記受信可能画像形成装置へ前記印刷データを送信し、前記画像形成装置は、前記サーバから前記印刷データをダウンロードすることができないことを検知し、ダウンロードすることができないことを検知した場合に、前記サーバを介することなく前記印刷データを前記端末装置から受信できるように通信の設定を変更し、前記設定に基づいて前記印刷データを前記端末装置から受信する、ことを特徴とする印刷データ送受信方法。画像を印刷するための印刷データをサーバへアップロードする端末装置および前記サーバと通信する機能を有する画像形成装置に、前記サーバから前記印刷データをダウンロードすることができないことを検知する処理を実行させ、ダウンロードすることができないことが検知された場合に、前記サーバを介することなく前記印刷データを前記端末装置から受信できるように通信の設定を変更する処理を実行させ、前記設定に基づいて前記印刷データを前記端末装置から受信する処理を実行させる、ことを特徴とする印刷データ取得方法。画像を印刷するための印刷データをサーバへアップロードする端末装置および前記サーバと通信する機能を有する画像形成装置に用いられるコンピュータプログラムであって、前記画像形成装置に、前記サーバから前記印刷データをダウンロードすることができないことを検知する処理を実行させ、ダウンロードすることができないことが検知された場合に、前記サーバを介することなく前記印刷データを前記端末装置から受信できるように通信の設定を変更する処理を実行させ、前記設定に基づいて前記印刷データを前記端末装置から受信する処理を実行させる、ことを特徴とするコンピュータプログラム。プルプリントサーバがダウンすると、端末装置はプルプリントサーバへ印刷データを送信することができなくなり、画像形成装置はプルプリントサーバから印刷データを受信することができなくなる。しかし、上述の従来の2つの方法では、画像形成装置の障害に対処することはできても、プルプリントサーバの障害に対処することは、できない。そこで、本発明は、このような問題点に鑑み、プルプリントサーバがダウンした場合であっても画像形成装置による印刷を行えるようにすることを、目的とする。本発明に係る印刷システムは、画像を印刷するための印刷データをサーバへアップロードする端末装置と、前記サーバから前記印刷データをダウンロードする1台または複数台の画像形成装置と、を有する印刷システムであって、前記端末装置には、前記サーバへ前記印刷データをアップロードすることができないことを検知するアップロード不能検知手段と、アップロードすることができないことが前記アップロード不能検知手段によって検知された場合に、前記1台または複数台の画像形成装置の中から、当該端末装置から前記印刷データを受信することができる受信可能画像形成装置を検索する、検索手段と、検索された前記受信可能画像形成装置へ前記印刷データを送信する送信手段と、が設けられ、前記画像形成装置には、前記サーバから前記印刷データをダウンロードすることができないことを検知するダウンロード不能検知手段と、ダウンロードすることができないことが前記ダウンロード不能検知手段によって検知された場合に、前記サーバを介することなく前記印刷データを前記端末装置から受信できるように通信の設定を変更する設定変更手段と、前記設定に基づいて前記印刷データを前記端末装置から受信する受信手段と、が設けられている。好ましくは、前記画像形成装置には、前記サーバを介することなく前記印刷データをやり取りするためのポートが備わっており、前記設定変更手段は、前記ポートの使用を許可するように前記設定を変更する。さらに、前記設定変更手段は、前記印刷データが前記端末装置から送信されてきた後、前記ポートの使用を禁止するように前記設定を変更し直す。または、前記画像形成装置には、前記受信手段が前記サーバから過去にダウンロードした他の印刷データの送信元を記憶する送信元記憶手段、が設けられており、前記受信手段は、前記端末装置が前記送信元として前記送信元記憶手段に記憶されていれば、前記印刷データを前記端末装置から受信する。または、前記画像形成装置には、前記端末装置のユーザが前記サーバにログインした後、前記印刷データに基づいて前記画像を印刷する、印刷手段、が設けられている。または、前記画像形成装置には、前記印刷手段によって前記画像を印刷した際のリソースの消費に関する情報を前記サーバへ通知する通知手段、が設けられている。本発明によると、プルプリントサーバがダウンした場合であっても画像形成装置による印刷を行えるようにすることを目的とする。図1は、印刷システム4の全体的な構成の例を示す図である。図2は、画像形成装置1のハードウェア構成の例を示す図である。図3は、クライアント2のハードウェア構成の例を示す図である。図1に示すように、印刷システム4は、複数台の画像形成装置1、複数台のクライアント2、およびプルプリントサーバ3などによって構成される。これらの画像形成装置1、クライアント2、およびプルプリントサーバ3は、いわゆるLANLocalAreaNetwork回線などの通信回線を介して互いに接続可能である。以下、各画像形成装置1を画像形成装置1A、画像形成装置1B、...と区別して記載することがある。同様に、各クライアント2をクライアント2A、クライアント2B、...と区別して記載することがある。各装置には、ユニークなIPアドレスが与えられている。本実施形態では、装置の識別子として、IPアドレスが用いられる。印刷システム4は、役所または企業などの組織の施設に設けられている。したがって、組織のメンバが印刷システム4のユーザである。各ユーザには、ユニークなユーザコードが1つずつ与えられている。画像形成装置1は、複合機またはMFPMultiFunctionPeripheralsなどと呼ばれる装置であって、コピー、ネットワークプリント、ファックス、およびスキャナなどの機能を集約した装置である。ネットワークプリント機能は、印刷データをパーソナルコンピュータなどのクライアントから受信して画像を用紙に印刷する機能である。ネットワークプリンタ機能またはPCプリント機能などと呼ばれることもある。画像形成装置1には、さらに、プルプリント機能が備わっている。プルプリント機能は、パーソナルコンピュータなどのクライアントから送信された印刷データを直ちに受信するのではなくプルプリントサーバに蓄積し、その後、ユーザが所定の操作を行ったらこのプルプリントサーバから印刷データをダウンロードして印刷を行う、という機能である。画像形成装置1は、図2に示すように、CPUCentralProcessingUnit10a、RAMRandomAccessMemory10b、ROMReadOnlyMemory10c、大容量記憶装置10d、スキャナユニット10e、印刷ユニット10f、ネットワークインタフェース10g、タッチパネルディスプレイ10h、モデム10i、およびフィニッシャ10jのほか制御用の回路などによって構成される。ネットワークインタフェース10gは、クライアント2またはプルプリントサーバ3などの装置とTCP/IPTransmissionControlProtocolInternetProtocolなどのプロトコルで通信を行うためのNICNetworkInterfaceCardである。タッチパネルディスプレイ10hは、ユーザに対してメッセージまたは指示を与えるための画面、ユーザが処理の指令および条件を入力するための画面、およびCPU10aの処理の結果を示す画面などを表示する。また、ユーザが指で触れた位置を検知し、検知結果を示す信号をCPU10aに送信する。スキャナユニット10eは、用紙に記されている写真、文字、絵、図表などからなる画像を読み取って画像データを生成する。モデム10iは、他のファックス端末との間でG3などのプロトコルで画像データをやり取りするための装置である。印刷ユニット10fは、スキャナユニット10eによって読み取られた画像のほか、パーソナルコンピュータまたはファックス端末などから受信したデータに示される画像を印刷する。フィニッシャ10jは、印刷ユニット10fによって画像が印刷された印刷物に対して、ステープルで綴じる処理およびパンチ穴を開ける処理などの仕上げの処理を行う。ROM10cまたは大容量記憶装置10dには、オペレーティングシステムおよびミドルウェアなどのソフトウェアが記憶されている。さらに、プルプリントサーバ3などと連携してプルプリントを行うためのプルプリントソフトウェア1SWが記憶されている。これらのソフトウェアを構成するモジュールは、必要に応じてRAM10bにロードされ、CPU10aによって実行される。大容量記憶装置10dとして、HDDHardDiskDriveまたはSSDSolidStateDriveなどが用いられる。図1に戻って、クライアント2は、画像形成装置1およびプルプリントサーバ3が提供する、印刷に関連するサービスを、ユーザが受けるための端末装置である。クライアント2として、パーソナルコンピュータ、PDAPersonalDigitalAssistant、またはスマートフォンなどが用いられる。以下、クライアント2としてパーソナルコンピュータが用いられる場合を例に説明する。クライアント2は、図3に示すように、CPU20a、RAM20b、ROM20c、大容量記憶装置20d、ネットワークインタフェース20e、キーボード20f、ポインティングデバイス20g、および液晶ディスプレイ20hなどによって構成される。ネットワークインタフェース20eは、画像形成装置1およびプルプリントサーバ3などの装置とTCP/IPなどのプロトコルで通信を行うためのNICである。キーボード20fおよびポインティングデバイス20gは、ユーザがデータおよびコマンドをクライアント2に入力するための装置である。液晶ディスプレイ20hは、ユーザに対してメッセージまたは指示を与えるための画面、ユーザが処理の指令および条件を入力するための画面、およびCPU20aの処理の結果を示す画面などを表示する。大容量記憶装置20dには、オペレーティングシステムのほか、画像形成装置1およびプルプリントサーバ3による印刷のサービスを受けるための印刷用ソフトウェア2SWなどが記憶されている。これらのソフトウェアを構成するモジュールは、必要に応じてRAM20bにロードされ、CPU20aによって実行される。大容量記憶装置20dとして、HDDまたはSDDなどが用いられる。次に、プルプリントサーバ3が正常に動作している場合、プルプリントサーバ3が正常に動作していない場合、およびプルプリントサーバ3が回復した場合の各装置の処理の全体的な流れを、あるユーザUxが印刷システム4を使用する場合を例に、図4~図7のシーケンス図を参照しながら説明する。プルプリントサーバ3が正常に動作している場合図4および図5は、プルプリントサーバ3が正常に動作している場合の各装置の処理の流れの例を示すシーケンス図である。あるユーザUxは、自分のユーザコードで任意のクライアント2にログインする。以下、クライアント2Aにログインした場合を例に説明する。さらに、印刷対象のドキュメントの画像データをクライアント2Aに用意する。この画像データは、ワープロソフトまたは描画ソフトなどのアプリケーションでドキュメントを作成することによって用意すればよい。または、インターネット上のウェブサイトからウェブページのデータをダウンロードし、このデータを画像データとして用いることもできる。そして、ユーザUxは、クライアント2Aに、印刷の条件用紙のサイズ、仕上げの有無、解像度、カラーのモードカラー/モノクロ、部数などを指定し、印刷のコマンドを入力する図4の431。クライアント2Aは、印刷の条件およびコマンドを受け付けると231、ドキュメントを印刷するジョブを実行するためのジョブデータ7JDを生成する232。そして、プルプリントサーバ3へ送信アップロードする233。ジョブデータ7JDの詳細は、後述する。プルプリントサーバ3は、ジョブデータ7JDを受信すると330、これを保存する331。なお、クライアント2からプルプリントサーバ3へのジョブデータ7JDの送信アップロードの際に、特定のポートが用いられる。以下、このポートをアップロード用ポートと記載する。また、アップロード用ポートのポート番号をnum_0と記載する。印刷のコマンドの入力後、ユーザUxは、ドキュメントの印刷を行わせたい画像形成装置1のところへ移動し、自分のユーザコードを入力しログインを試みる432。以下、画像形成装置1Aに印刷を行わせる場合を例に説明する。すると、画像形成装置1Aは、入力されたユーザコードに基づいてユーザ認証を行う131。ユーザの正当性を認証できたら、プルプリントサーバ3との接続が可能であるか否かを確認し132、332、ユーザUxが保存させたジョブデータ7JDの一覧を要求し取得する133、134。そして、一覧を表示する図5の135。この際に、プルプリントサーバ3は、ユーザUxが保存させたジョブデータ7JDを検索し、検索結果を一覧として画像形成装置1Aへ送信する333、334。ここで、ユーザUxは、印刷したいドキュメントに係るジョブデータ7JDを選択し、印刷の開始を指令する433。すると、画像形成装置1Aは、選択されたジョブデータ7JDをプルプリントサーバ3へ要求しダウンロードする136~138。この際に、プルプリントサーバ3は、要求に応じてジョブデータ7JDを画像形成装置1Aへ送信する335、336。さらに、画像形成装置1Aは、このジョブデータ7JDの発信元であるクライアント2のIPアドレスをプルプリントサーバ3へ問い合わせ139、140、337、338、このクライアント2本例では、クライアント2AのIPアドレスを、印刷元IPアドレスとして記憶する141。なお、IPアドレスを示すデータをジョブデータ7JDに含ませておき、ステップ138で取得してもよい。そして、画像形成装置1Aは、ダウンロードしたジョブデータ7JDに基づいてドキュメントを用紙に印刷し142、印刷の実績、特に、課金のために必要な情報、例えば、使用した用紙のサイズおよび枚数ならびにカラーのモードつまりリソースの消費に関する情報いわゆるプリントボリュームの情報のほかユーザUxのユーザコードなどを示す実績データ7RDを、プルプリントサーバ3へ送信する143、144、339、340。プルプリントサーバ3が正常に動作していない場合図6および図7は、プルプリントサーバ3が正常に動作していない場合の各装置の処理の流れの例を示すシーケンス図である。一方、クライアント2Aがジョブデータ7JDを生成しプルプリントサーバ3へ送信しても図6の251~253、プルプリントサーバ3にジョブデータ7JDが届かないことがある。クライアント2Aは、ジョブデータ7JDの送信のエラーを検知すると254、印刷を実行させることができる画像形成装置1を検索する255。この際に、検索用データ7KDを各画像形成装置1へ送信する。検索用データ7KDの詳細は、後述する。画像形成装置1Aは、検索用データ7KDを受信すると151、プルプリントサーバ3との接続が可能であるか否かを確認する152。例えば、特定のパケットを送信し返答があるか否かによって、接続が可能であるか否かを確認すればよい。画像形成装置1Aは、接続できないことを検知すると153、検索用データ7KDの送信元であるクライアント2本例では、クライアント2AのIPアドレスを印刷元IPアドレスとして記憶しているか否かを確認する154。記憶している場合は、このクライアント2のために、プルプリントサーバ3を介さずにジョブデータ7JDをやり取りするためのポートを開放する155。以下、プルプリントサーバ3を介さずジョブデータ7JDをやり取りして印刷することをダイレクトプリントと記載する。また、このポートをダイレクト用ポートと記載し、ダイレクト用ポートのポート番号をnum_1と記載する。そのほか、使用できるモードを認証アンド印刷モードに限定し、かつ、ジョブデータ7JDを、検索用データ7KDの送信元であるクライアント2本例では、クライアント2Aからのみ受信するよう、制限する。認証アンド印刷モードは、クライアント2からジョブデータ7JDを受信したら直ちに印刷を開始するのではなく、このクライアント2のユーザの認証に成功したら印刷を開始する、というモードである。なお、通常は、ダイレクト用ポートは閉じられており、ジョブデータ7JDをプルプリントサーバ3から画像形成装置1へ送信ダウンロードするためのポートが開放されている。以下、このポートをダウンロード用ポートと記載し、ダウンロード用ポートのポート番号をnum_2と記載する。ポートの管理の詳細は、後述する。そして、画像形成装置1Aは、プルプリントサーバ3を介さずにジョブデータ7JDを受け付けることができる旨を示す回答データ7ADを、検索用データ7KDの送信元であるクライアント2本例では、クライアント2Aへ送信する図7の156。他の画像形成装置1も、検索用データ7KDを受信すると、同様の処理を実行する。よって、クライアント2Aには、複数の画像形成装置1のそれぞれから回答データ7ADが集まり得る。クライアント2Aは、回答データ7ADを受信すると256、回答データ7ADの送信元である画像形成装置1の一覧を表示する257。ここで、ユーザUxは、ドキュメントの印刷を行わせたい画像形成装置1を一覧の中から選択する453。クライアント2Aは、選択を受け付けると258、送信に用いるポートをアップロード用ポートからダイレクト用ポートに変更し、かつ、宛先を、プルプリントサーバ3から、選択された画像形成装置1へ変更する259。以下、画像形成装置1Aが選択された場合を例に説明する。そして、クライアント2Aは、選択された画像形成装置1本例では、画像形成装置1Aへジョブデータ7JDを送信する260。画像形成装置1Aは、ジョブデータ7JDを受信すると157、これを一時的に保存する158。ユーザUxは、画像形成装置1Aのところへ移動し、自分のユーザコードを入力しログインを試みる452。すると、画像形成装置1Aは、入力されたユーザコードに基づいてユーザ認証を行う160。ユーザの正当性を認証できたら、保存しておいた、ユーザUxのジョブデータ7JDを用いてドキュメントを用紙に印刷する161。なお、プルプリントの場合と同様に、ユーザUxのジョブデータ7JDの一覧を表示し、ユーザが選択したジョブデータ7JDのみを用いて印刷を行ってもよい。そして、ステップ155で行った設定を、元の状態に戻す162。つまり、ダイレクト用ポートを閉鎖する。なお、ステップ157でジョブデータ7JDを受信した直後に元の状態に戻してもよい。または、ジョブデータ7JDを受信してから所定の時間例えば、5分を経過したら、元の状態に戻してもよい。また、画像形成装置1Aは、今回の印刷の実績を記憶しておく。実績の内容は、前に図5のステップ143で説明した通りである。プルプリントサーバ3の復帰の際の処理図8は、プルプリントサーバ3の復帰の際の各装置の処理の流れの例を示すシーケンス図である。画像形成装置1は、プルプリントサーバ3との接続が不能であることを検知した後、プルプリントサーバ3との接続が可能になったか否かを定期的に確認する171、371。確認は、前述の通り、特定のパケットを送信し返答があるか否かによって行えばよい。画像形成装置1は、プルプリントサーバ3との接続が可能になったら、プルプリントサーバ3が正常に動作していないときに記憶しておいた印刷の実績を示す実績データ7RDをプルプリントサーバ3へを送信する172、173、372、373。画像形成装置1およびクライアント2の機能図9は、画像形成装置1の機能的構成の例を示す図である。図10は、クライアント2の機能的構成の例を示す図である。図11は、使用ポート番号テーブル6BTの例を示す図である。図12は、クライアント受付テーブル6CTの例を示す図である。画像形成装置1のプルプリントソフトウェア1SWおよびクライアント2の印刷用ソフトウェア2SWは、図4~図8で説明した処理を実現するためのソフトウェアである。プルプリントソフトウェア1SWによると、図9に示す通信設定データ記憶部101、ユーザ認証処理部102、ジョブデータダウンロード部103、ジョブデータ記憶部104、検索用データ受信部105、接続確認部106、通信許可ポート等切換部107、ジョブデータ受信部108、印刷制御部109、および受付可能回答部110などが画像形成装置1において実現される。また、印刷用ソフトウェア2SWによると、図10に示す通信設定データ記憶部201、ジョブデータ生成部202、ジョブデータ送信部203、送信エラー検知部204、デバイス検索部205、出力先選択受付部206、および送信ポート等切換部207などがクライアント2において実現される。以下、図9に示す画像形成装置1の各部、図10に示すクライアント2の各部、およびプルプリントサーバ3の機能について説明する。画像形成装置1の通信設定データ記憶部101図10参照は、使用ポート番号テーブル6BTおよびクライアント受付テーブル6CTを有する。使用ポート番号テーブル6BTには、図11のように、ポートごとのポート使用レコード7BDが格納されている。ポート使用レコード7BDのポート番号は、そのポートのポート番号を示している。許否は、そのポートの使用の許否許可するか禁止するかを示している。本実施形態では、特に、ダウンロード用ポートおよびダイレクト用ポートそれぞれのポート使用レコード7BDが予め格納されている。ダウンロード用ポートおよびダイレクト用ポートそれぞれのポート番号の値は、固定であり、上述の通りそれぞれnum_1およびnum_2である。一方、許否の値は、可変であり、デフォルト値はそれぞれ許可および禁止である。クライアント受付テーブル6CTには、図12のように、クライアント2ごとのクライアント受付レコード7CDが格納されている。クライアント受付レコード7CDのクライアント識別子は、そのクライアント2のIPアドレスを示している。許否は、そのクライアント2からのダイレクトプリントの要求に対する許否を示している。画像形成装置1の運用を開始した直後は、クライアント受付テーブル6CTには、クライアント受付レコード7CDが1つも格納されていない。クライアント受付レコード7CDの生成および更新については、後に順次説明する。クライアント2の通信設定データ記憶部201図10参照は、クライアント2による印刷データの通信に関する条件を示す通信設定データ72を記憶する。具体的には、通信設定データ72には、ジョブデータ7JDを送信する相手送信先のIPアドレスおよびその際に使用するポートのポート番号などが示される。通信設定データ72には、デフォルトのIPアドレスおよびポート番号として、それぞれ、プルプリントサーバ3のIPアドレスおよびアップロード用ポートのポート番号num_0が示される。通信設定データ72は、後述する送信ポート等切換部207によって適宜、更新される。ジョブデータ生成部202は、ジョブデータ7JDを生成する処理を、次のように実行する。ユーザは、自分のユーザコードでクライアント2にログインする。さらに、印刷対象のドキュメントの画像データをクライアント2に用意し、印刷の条件を入力する。すると、ジョブデータ生成部202は、印刷の条件に基づいて、用意された画像データを用いて、ドキュメントを印刷するための印刷データを生成する。この印刷データは、各画像形成装置1に共通に対応しているページ記述言語で記述される。さらに、ログインしているユーザのユーザコードおよびクライアント2自身のIPアドレスを示す指令元データを生成する。そして、ジョブデータ生成部202は、印刷データおよび指令元データをマージすることによって、ジョブデータ7JDを生成する。ジョブデータ送信部203は、ジョブデータ7JDを通信設定データ72に従って他の装置へ送信する。つまり、ジョブデータ7JDを、通信設定データ72に示されるIPアドレスへ宛てて、通信設定データ72に示されるポート番号のポートで送信する。通信設定データ72には、上述の通り、デフォルトのIPアドレスおよびポート番号として、それぞれ、プルプリントサーバ3のIPアドレスおよびアップロード用ポートのポート番号が示される。よって、当初は、ジョブデータ7JDは、プルプリントサーバ3へ送信される。ユーザは、プルプリントサーバ3へのジョブデータ7JDの送信に成功したら、任意の画像形成装置1のところへ移動し、自分のユーザコードをその画像形成装置1へ入力しログインを試みる。画像形成装置1のユーザ認証処理部102は、ユーザコードが入力されると、予め用意されているユーザの管理用のデータベースを参照するなどして、ユーザの正当性を認証する。認証に成功したら、その画像形成装置1へのユーザのログインが完了する。ジョブデータダウンロード部103は、認証に成功したら、ダウンロード用ポートを用いて、ログインしたユーザのジョブデータ7JDをプルプリントサーバ3に対して要求しダウンロードする。この際に、入力されたユーザコードを示す要求データ7YDをプルプリントサーバ3へ送信する。ただし、ダウンロード用ポートのポート使用レコード7BD図11参照の許否の値が禁止である場合は、要求は行わない。この値の更新については、後述する。ダウンロードの前に、ログインしたユーザのジョブデータ7JDの一覧をユーザに提示し、一覧の中からユーザが選択したジョブデータ7JDのみをダウンロードしてもよい。ジョブデータ7JDは、プルプリントサーバ3からダウンロードされると、ジョブデータ記憶部104に格納される。そして、印刷制御部109は、原則として、ジョブデータ記憶部104へ格納された順にジョブデータ7JDを用いてドキュメントが印刷されるように印刷ユニット10fを制御する。これにより、ユーザは、ドキュメントの印刷物を取得することができる。なお、ダイレクトプリントである場合は、後述するダイレクトプリントフラグがジョブデータ7JDに付いている。ダイレクトプリントフラグが付いているジョブデータ7JDは、順番が回ってきても、保留される。また、ジョブデータダウンロード部103によってジョブデータ7JDが受信されると、このジョブデータ7JDに示されるクライアント2のIPアドレスを示すクライアント受付レコード7CDが未だクライアント受付テーブル6CT図12参照に格納されていない場合は、このIPアドレスを示すクライアント受付レコード7CDが生成され、クライアント受付テーブル6CTに格納される。生成されたクライアント受付レコード7CDの許否のデフォルトの値は禁止である。クライアント2の送信エラー検知部204は、ジョブデータ送信部203によるジョブデータ7JDの送信のエラーを検知する。特に本実施形態では、プルプリントサーバ3への送信のエラーを検知する。エラーは、送信の失敗を示すパケットをルータなどから受信することによって検知してもよい。または、ジョブデータ7JDの送信後、一定の時間が経過しても特定の信号例えば、ACKがプルプリントサーバ3から届かなかった場合に、エラーであると判定してもよい。デバイス検索部205は、プルプリントサーバ3へのジョブデータ7JDの送信のエラーが送信エラー検知部204によって検知された場合に、ダイレクトプリントが可能な画像形成装置1を検索する処理を、例えば次のように行う。デバイス検索部205は、ドキュメントの印刷が可能であるか否かの問合せのための検索用データ7KDを各画像形成装置1へ送信する。画像形成装置1において、検索用データ受信部105は、検索用データ7KDを受信する。接続確認部106は、検索用データ7KDが受信されると、プルプリントサーバ3への接続が可能であるか否かを、PINGなどによって確認する。プルプリントサーバ3への接続が不能であることが確認されたら、通信許可ポート等切換部107および受付可能回答部110は、次の処理を行う。通信許可ポート等切換部107は、使用ポート番号テーブル6BT図11参照の中の、ダイレクト用ポートのポート使用レコード7BDの許否の値を許可に更新するとともに、ダウンロード用ポートのポート使用レコード7BDの許否の値を禁止に更新する。さらに、クライアント受付テーブル6CT図12参照の中の、検索用データ7KDの送信元であるクライアント2のクライアント受付レコード7CDの許否の値を許可に更新する。そのほか、印刷のモードを認証アンド印刷モードに切り換える。一方、受付可能回答部110は、ダイレクトプリントが可能である旨を示す回答データ7ADを、検索用データ7KDの送信元であるクライアント2へ送信する。このようにして、回答データ7ADが、ダイレクトプリントが可能な各画像形成装置1からクライアント2へ送信される。そして、デバイス検索部205は、回答データ7ADを送信してきた画像形成装置1を、ダイレクトプリントが可能であると、判別する。出力先選択受付部206は、ユーザによる、ダイレクトプリントを実行させる画像形成装置1の選択を、次のように受け付ける。出力先選択受付部206は、デバイス検索部205によって検索判別された、ダイレクトプリントが可能である画像形成装置1の一覧を液晶ディスプレイ20hに表示させる。ユーザは、一覧の中から任意の画像形成装置1を選択する。そして、デバイス検索部205は、選択された画像形成装置1を、ダイレクトプリントを実行させる画像形成装置1として受け付ける。画像形成装置1の選択が受け付けられると、送信ポート等切換部207およびジョブデータ送信部203は、ダイレクトプリントのための処理を次のように行う。送信ポート等切換部207は、通信設定データ72を次のように更新する。送信先のIPアドレスを、ユーザが選択した画像形成装置1のIPアドレスに変更する。さらに、使用するポートのポート番号をダイレクト用ポートのポート番号すなわちnum_2に変更する。そして、ジョブデータ送信部203は、更新後の通信設定データ72に基づいて、ジョブデータ7JDを送信する。つまり、ユーザが選択した画像形成装置1へダイレクト用ポートでジョブデータ7JDを送信する。送信後、送信ポート等切換部207は、通信設定データ72をデフォルトの状態に戻す。画像形成装置1のジョブデータ受信部108は、プルプリントサーバ3を介さずにクライアント2からジョブデータ7JDを受信し、ジョブデータ記憶部104に格納する。このジョブデータ7JDには、ダイレクトプリントのためのものであることを示すフラグ以下、ダイレクトプリントフラグと記載する。を付しておく。また、通信許可ポート等切換部107は、ジョブデータ受信部108によるジョブデータ7JDの受信が完了したら、直ちにまたは所定の時間の経過後に、使用ポート番号テーブル6BT図11参照の中の、ダイレクト用ポートのポート使用レコード7BDの許否の値を禁止に戻すとともに、ダウンロード用ポートのポート使用レコード7BDの許否の値を許可に戻す。さらに、すべてのクライアント受付レコード7CDの許否の値を禁止に戻す。そのほか、印刷のモードをプルプリントモードに戻す。ユーザは、画像形成装置1へのジョブデータ7JDの送信に成功したら、その画像形成装置1のところへ移動し、自分のユーザコードをその画像形成装置1へ入力しログインを試みる。すると、ユーザ認証処理部102は、プルプリントの場合と同様に、ユーザの認証の処理を行う。認証に成功したら、印刷制御部109は、そのユーザのユーザコードを示すジョブデータ7JDをジョブデータ記憶部104の中から検索し、見つかったジョブデータ7JDからダイレクトプリントフラグを外す。そして、そのジョブデータ7JDの順番が回ってきたら、そのジョブデータ7JDを用いてドキュメントが印刷されるように印刷ユニット10fを制御する。これにより、ユーザは、プルプリントサーバ3に不具合がある場合でも、ドキュメントの印刷物を取得することができる。実績データ報告部111は、今回実行されたダイレクトプリントの実績データ7RDをプルプリントサーバ3へ送信する。プルプリントの場合も実績データ7RDを送信してもよいが、プルプリントサーバ3は印刷の実績をジョブデータ7JDに基づいて知ることができるので、実績データ7RDを送信しなくてもよい。図13は、クライアント2の全体的な処理の流れの例を説明するフローチャートである。図14および図15は、画像形成装置1の全体的な処理の流れの例を説明するフローチャートである。次に、画像形成装置1およびクライアント2それぞれの全体的な処理の流れの例を、図13~図15のフローチャートを参照しながら説明する。クライアント2は、ジョブデータ7JDを生成し図13の801、プルプリントサーバ3へ送信する802。送信できなかった場合は803でNo、クライアント2は、送信エラーを検知し804、ダイレクトプリントが可能な画像形成装置1を検索する805、806。この際に、各画像形成装置1へ検索用データ7KDを送信し、回答データ7ADを受信する。クライアント2は、回答データ7ADを送信してきた画像形成装置1の一覧を、ダイレクトプリントを行わせる装置の候補として表示する807。そして、選択を受け付けると808、送信先を、選択された画像形成装置1に変更し、送信に使用するポートを、ダイレクト用ポートに変更し809、ジョブデータ7JDを送信する810。送信後、送信先および送信に使用するポートの設定を元に戻す811。画像形成装置1は、ユーザによって操作されまたは他の装置からデータを受信するごとに、その操作またはデータの内容に応じて、次の処理を実行する。画像形成装置1は、ユーザがユーザコードを入力した場合は図14の821でYes、そのユーザの認証を行う822。認証に成功したら823でYes、既にクライアント2からそのユーザのジョブデータ7JDを受信し保存していれば824でYes、そのジョブデータ7JDを用いてドキュメントを印刷する825。つまり、ダイレクトプリントを行う。そして、ダイレクトプリントの実績データ7RDをプルプリントサーバ3へ送信する826。また、プルプリントサーバ3への接続が可能であればプルプリントサーバ3からそのユーザのジョブデータ7JDをダウンロードし827、そのジョブデータ7JDを用いてドキュメントを印刷する828。または、画像形成装置1は、クライアント2から検索用データ7KDを受信した場合は829でYes、プルプリントサーバ3との接続の可否をチェックし830、接続不能であれば831でYes、ダイレクトプリントが可能である旨をそのクライアント2へ回答するとともに832、ダイレクト用ポートを開放しかつそのクライアント2からのジョブデータ7JDの受付を許可する図15の833。または、画像形成装置1は、クライアント2からジョブデータ7JDを受信した場合は834でYes、ダイレクト用ポートを閉鎖するなどして設定をリセットとともに835、そのジョブデータ7JDを保存しておく836。なお、ダイレクト用ポートの開放後、一定時間経過してもジョブデータ7JDがクライアント2から送信されてこない場合も834でNo、837でYes、設定をリセットしてもよい838。本実施形態によると、プルプリントサーバ3がダウンした場合であっても画像形成装置1による印刷を行うことができる。しかも、プルプリントサーバ3を介さずに画像形成装置1がクライアント2からジョブデータ7JDを受信できる期間つまりダイレクト用ポートを開放する期間を限っている。よって、画像形成装置1が無差別にクライアント2からジョブデータ7JDを受信することをできるだけ避けることができる。本実施形態では、ジョブデータ7JDをクライアント2からプルプリントサーバ3へ送信することができない場合に、部分的にダイレクトプリントを許可したが、プルプリントサーバ3に一定以上の負荷が掛かっているなどプルプリントサーバ3に不具合が発生しそうな場合にも、許可してもよい。または、通信以外の障害がプルプリントサーバ3に発生している場合にも、許可してもよい。本実施形態では、プルプリントサーバ3へのジョブデータ7JDの送信ができなかったクライアント2に対してのみ、ダイレクトプリントを許可したが、他のクライアント2に対しても許可してもよい。本実施形態では、画像形成装置1は、ジョブデータ7JDをクライアント2から受信したら、直ちに、または、受信してから所定の時間が経過したら、ダイレクト用ポートの使用を禁止した。または、クライアント2からジョブデータ7JDを受信しなくても、所定の時間が経過したら、使用を禁止した。さらに、クライアント2からジョブデータ7JDを受信しなくても、プルプリントサーバ3からのダウンロードが可能になったら、直ちに使用を禁止してもよい。この際に、画像形成装置1は、定期的に例えば、1分ごとにPINGでパケットをプルプリントサーバ3へ送信するなどして、プルプリントサーバ3からのダウンロードが可能になったか否かをチェックすればよい。または、不具合が解消したらその旨を各画像形成装置1へ通知するようにプルプリントサーバ3を構成してもよい。その他、印刷システム4、画像形成装置1、クライアント2の全体または各部の構成、処理内容、処理順序、テーブル、データの構成などは、本発明の趣旨に沿って適宜変更することができる。