(57)【要約】【課題】ネットワーク品質に左右されずに安定したデータ送信および印刷を提供することができ、印刷の信頼性を上げることができる印刷システム、印刷装置、ホスト装置およびプログラムを提供する。【解決手段】ネットワーク通信が切断された時点でセッションをクローズせず、次の再接続で印刷途中のデータを継続利用することができるようにする。これにより、ネットワーク印刷で回線断による影響を軽減するとともに、データの再送信を不要にすることができるので、ネットワーク品質に左右されずに安定したデータ送信および印刷を提供することができる。【選択図】図１９
2014044734.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行する印刷装置を少なくとも２台以上ネットワーク接続する印刷システムにおいて、
前記ホスト装置と当該ホスト装置にネットワーク接続された前記印刷装置との間でセッションを成立させるセッション成立手段と、
一の前記印刷装置で前記印刷ジョブにかかる印刷処理を実行した場合、当該印刷装置とセッションが成立している他の前記印刷装置で保持する前記印刷ジョブの同期を保つジョブ同期手段と、
ネットワークの回線断が発生した場合、前記ジョブ同期手段により同期を保って前記各印刷装置に保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない回線断対応手段と、
ネットワークの回線断後に再接続された場合、前記各印刷装置に保持されている前記印刷ジョブの前記印刷データを参照して、前記ホスト装置から前記印刷装置に対する続きの印刷データを送信する送信手段と、
を備えることを特徴とする印刷システム。
【請求項２】
前記回線断対応手段は、ネットワークの回線断後に再接続されずに一定時間経過した場合には、前記ジョブ同期手段により同期を保って前記各印刷装置に保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズを行なう、
ことを特徴とする請求項１記載の印刷システム。
【請求項３】
前記回線断対応手段は、１番目の前記印刷データの受信途中にネットワークの回線断があった場合には、前記ジョブ同期手段により同期を保って前記各印刷装置に保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズを行なう、
ことを特徴とする請求項１記載の印刷システム。
【請求項４】
前記回線断対応手段は、ｎ番目（ｎ＞１）の前記印刷データの受信途中にネットワークの回線断があった場合には、前記ジョブ同期手段により同期を保って前記各印刷装置に保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない、
ことを特徴とする請求項１記載の印刷システム。
【請求項５】
ホスト装置から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行する印刷装置において、
前記ホスト装置および他の印刷装置との間でセッションを成立させるセッション成立手段と、
前記印刷ジョブにかかる印刷処理を実行した場合、当該印刷装置とセッションが成立している他の前記印刷装置で保持する前記印刷ジョブの同期を保つジョブ同期手段と、
ネットワークの回線断が発生した場合、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない回線断対応手段と、
ネットワークの回線断後に再接続された場合、前記ホスト装置からの問い合わせに応じて保持されている前記印刷ジョブの前記印刷データの数を応答する応答手段と、
を備えることを特徴とする印刷装置。
【請求項６】
前記回線断対応手段は、ネットワークの回線断後に再接続されずに一定時間経過した場合には、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズを行なう、
ことを特徴とする請求項５記載の印刷装置。
【請求項７】
前記回線断対応手段は、１番目の前記印刷データの受信途中にネットワークの回線断があった場合には、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズを行なう、
ことを特徴とする請求項５記載の印刷装置。
【請求項８】
前記回線断対応手段は、ｎ番目（ｎ＞１）の前記印刷データの受信途中にネットワークの回線断があった場合には、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない、
ことを特徴とする請求項５記載の印刷装置。
【請求項９】
請求項５ないし８のいずれか一記載の印刷装置に対して１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブを送信するホスト装置において、
ネットワークの回線断の発生後、再接続された場合、前記印刷装置に対して回線断時の状態を問い合わせる問合せ手段と、
前記印刷装置からの応答に応じ、前記印刷装置に対して送信完了した印刷データの次の印刷データを送信する送信手段と、
を備えることを特徴とするホスト装置。
【請求項１０】
ホスト装置から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行する印刷装置を制御するコンピュータを、
前記ホスト装置および他の印刷装置との間でセッションを成立させるセッション成立手段と、
前記印刷ジョブにかかる印刷処理を実行した場合、当該印刷装置とセッションが成立している他の前記印刷装置で保持する前記印刷ジョブの同期を保つジョブ同期手段と、
ネットワークの回線断が発生した場合、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない回線断対応手段と、
ネットワークの回線断後に再接続された場合、前記ホスト装置からの問い合わせに応じて保持されている前記印刷ジョブの前記印刷データの数を応答する応答手段と、
として実行させることを特徴とするプログラム。
【請求項１１】
請求項５ないし８のいずれか一記載の印刷装置に対して１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブを送信するホスト装置を制御するコンピュータを、
ネットワークの回線断の発生後、再接続された場合、前記印刷装置に対して回線断時の状態を問い合わせる問合せ手段と、
前記印刷装置からの応答に応じ、前記印刷装置に対して送信完了した印刷データの次の印刷データを送信する送信手段と、
として実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レーザプリンタやＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）などの印刷装置を備える印刷システム、印刷装置、ホスト装置およびプログラムに関する。
【背景技術】
【０００２】
近年においては、インターネット網を経由して印刷を行うインターネットプリントシステムが開発されている（例えば、特許文献１参照）。
【０００３】
また、近年においては、図２４に示すように、複数の企業や事業所のイントラネット２００，３００を、インターネット網４００を介して相互接続したエクストラネットも利用されつつある。図２４に示すようなエクストラネットによれば、一方のイントラネット２００上のサーバなどのホストコンピュータから他方のイントラネット３００上のプリンタに対して印刷処理を実行することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示されているようなインターネットプリントシステムや図２４に示すようなエクストラネットにおいては、印刷の途中でプリンタにオペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）が生じて印刷が停止した場合であっても、ホストコンピュータ側ではプリンタ側の状況を把握することができず、印刷停止状態のまま放置されてしまう事態が生じるという問題がある。
【０００５】
加えて、従来のプリンタシステムのようなエクストラネット環境においては、インターネット品質が印刷の信頼性を左右することになる。より詳細には、エクストラネット環境においては、伝送路状態により、回線遅延、回線断が頻発することがある。このように回線遅延、回線断が頻発するような場合には、再接続することになるが、再接続毎のデータ再送はサーバの負荷増の原因となっている。
【０００６】
本発明は、上記に鑑みてなされたものであって、ネットワーク品質に左右されずに安定したデータ送信および印刷を提供することができ、印刷の信頼性を上げることができる印刷システム、印刷装置、ホスト装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の印刷システムは、ホスト装置から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行する印刷装置を少なくとも２台以上ネットワーク接続する印刷システムにおいて、前記ホスト装置と当該ホスト装置にネットワーク接続された前記印刷装置との間でセッションを成立させるセッション成立手段と、一の前記印刷装置で前記印刷ジョブにかかる印刷処理を実行した場合、当該印刷装置とセッションが成立している他の前記印刷装置で保持する前記印刷ジョブの同期を保つジョブ同期手段と、ネットワークの回線断が発生した場合、前記ジョブ同期手段により同期を保って前記各印刷装置に保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない回線断対応手段と、ネットワークの回線断後に再接続された場合、前記各印刷装置に保持されている前記印刷ジョブの前記印刷データを参照して、前記ホスト装置から前記印刷装置に対する続きの印刷データを送信する送信手段と、を備えることを特徴とする。
【０００８】
また、本発明の印刷装置は、ホスト装置から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行する印刷装置において、前記ホスト装置および他の印刷装置との間でセッションを成立させるセッション成立手段と、前記印刷ジョブにかかる印刷処理を実行した場合、当該印刷装置とセッションが成立している他の前記印刷装置で保持する前記印刷ジョブの同期を保つジョブ同期手段と、ネットワークの回線断が発生した場合、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない回線断対応手段と、ネットワークの回線断後に再接続された場合、前記ホスト装置からの問い合わせに応じて保持されている前記印刷ジョブの前記印刷データの数を応答する応答手段と、を備えることを特徴とする。
【０００９】
また、本発明のホスト装置は、請求項５ないし８のいずれか一記載の印刷装置に対して１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブを送信するホスト装置において、ネットワークの回線断の発生後、再接続された場合、前記印刷装置に対して回線断時の状態を問い合わせる問合せ手段と、前記印刷装置からの応答に応じ、前記印刷装置に対して送信完了した印刷データの次の印刷データを送信する送信手段と、を備えることを特徴とする。
【００１０】
また、本発明のプログラムは、ホスト装置から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行する印刷装置を制御するコンピュータを、前記ホスト装置および他の印刷装置との間でセッションを成立させるセッション成立手段と、前記印刷ジョブにかかる印刷処理を実行した場合、当該印刷装置とセッションが成立している他の前記印刷装置で保持する前記印刷ジョブの同期を保つジョブ同期手段と、ネットワークの回線断が発生した場合、保持されている前記印刷ジョブのキャンセルおよび前記セッション成立手段により成立されたセッションのクローズは行なわない回線断対応手段と、ネットワークの回線断後に再接続された場合、前記ホスト装置からの問い合わせに応じて保持されている前記印刷ジョブの前記印刷データの数を応答する応答手段と、として実行させることを特徴とする。
【００１１】
また、本発明のプログラムは、請求項５ないし８のいずれか一記載の印刷装置に対して１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブを送信するホスト装置を制御するコンピュータを、ネットワークの回線断の発生後、再接続された場合、前記印刷装置に対して回線断時の状態を問い合わせる問合せ手段と、前記印刷装置からの応答に応じ、前記印刷装置に対して送信完了した印刷データの次の印刷データを送信する送信手段と、として実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、印刷中のプリンタにオペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）が発生した場合であっても、代替のプリンタが継続して印刷を引き継ぐことで、障害が発生しても印刷が止まることがなくなるので、確実に印刷することができるようになり、印刷の信頼性を上げることができる、という効果を奏する。また、ネットワーク通信が切断された時点でセッションをクローズせず、次の再接続で印刷途中のデータを継続利用することができるようにすることにより、ネットワーク印刷で回線断による影響を軽減するとともに、データの再送信を不要にすることができるので、ネットワーク品質に左右されずに安定したデータ送信および印刷を提供することができる、という効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の実施の一形態にかかるネットプリントシステムのシステム構築例を示す模式図である。
【図２】図２は、ネットプリントシステムのシステム構築例を示す模式図である。
【図３】図３は、印刷サーバの構成の一例を示すブロック図である。
【図４】図４は、プリンタの構成の一例を示すブロック図である。
【図５】図５は、プリンタのプリンタ代替処理にかかる機能構成を概略的に示す模式図である。
【図６】図６は、印刷サーバのプリンタ代替処理にかかる機能構成を概略的に示す模式図である。
【図７】図７は、プリンタ代替処理を含むネットプリント処理の処理手順を示すシーケンス図である。
【図８】図８は、応答情報を順にマージして送信する方式を示す模式図である。
【図９】図９は、プリンタ代替処理におけるジョブ同期処理にかかる機能構成を概略的に示す模式図である。
【図１０】図１０は、通常時の印刷処理の処理手順を示すシーケンス図である。
【図１１】図１１は、応答情報のマージ処理を示す模式図である。
【図１２】図１２は、ページ情報テーブルを示す模式図である。
【図１３】図１３は、障害情報テーブルを示す模式図である。
【図１４】図１４は、印刷処理中に印刷不可状態が発生した場合の印刷処理の処理手順を示すシーケンス図である。
【図１５】図１５は、代替印刷機能を示す模式図である。
【図１６】図１６は、代替印刷の一例を示す模式図である。
【図１７】図１７は、印刷結果レポートの印刷を示す模式図である。
【図１８】図１８は、印刷結果レポートの一例を示す平面図である。
【図１９】図１９は、回線断発生時の印刷処理の処理手順を示すシーケンス図である。
【図２０】図２０は、再接続タイムアウト前に再接続が有った場合の処理手順を示すシーケンス図である。
【図２１】図２１は、再接続タイムアウトした場合の処理手順を示すシーケンス図である。
【図２２】図２２は、回線断があった場合のデータ送信例（回線断時にデータ受信完了）を示すシーケンス図である。
【図２３】図２３は、回線断があった場合のデータ送信例（回線断時にデータ受信未完了）を示すシーケンス図である。
【図２４】図２４は、従来のエクストラネットのシステム構築例を示す模式図である。
【発明を実施するための形態】
【００１４】
以下に添付図面を参照して、この発明にかかる印刷システム、印刷装置、ホスト装置およびプログラムの最良な実施の形態を詳細に説明する。
【００１５】
本発明の実施の一形態を図１ないし図２３に基づいて説明する。本実施の形態は印刷装置としてレーザプリンタやＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）を適用した例である。
【００１６】
［１．システムの全体構成］
図１は、本発明の実施の一形態にかかるネットプリントシステム１００のシステム構築例を示す模式図である。図１に示すように、本実施の形態のネットプリントシステム１００は、複数の企業や事業所のイントラネットＡ，Ｂ、すなわちインターネット技術をベースにした社内ネットワークであるイントラネットＡ，Ｂを、インターネット網１５０を介して相互接続したエクストラネットを想定する。
【００１７】
図１に示すように、例えばコンビニエンスストア本社内のイントラネットＡは、各種のサーバコンピュータ（以下、サーバという）１にＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク２を介してコンピュータやプリンタなどのクライアント３が複数台接続されたサーバクライアントシステムを想定する。このようなイントラネットＡにおいては、インターネット網１５０と、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバなどの公開サーバ４を除く社内ネットワーク５との境界にファイアウォール６が設けられている。このファイアウォール６は、社内ネットワーク５とインターネット網１５０との間で出入りするパケットを監視し、決められたルールに従って、その通過を許可したり、阻止（廃棄）したりすることにより、社内ネットワーク５内のセキュリティを確保する。
【００１８】
一方、例えばフランチャイズ店舗内のイントラネットＢも、各種のサーバ１にＬＡＮ等のネットワーク２を介してコンピュータやプリンタなどのクライアント３が複数台接続されたサーバクライアントシステムを想定する。このようなイントラネットＢにおいても、インターネット網１５０と、公開サーバ４を除く社内ネットワーク５との境界にファイアウォール６が設けられている。
【００１９】
なお、イントラネットＡ，Ｂのネットワーク接続としては、インターネット網１５０に限るものではなく、専用の通信回線を用いて各イントラネットＡ，Ｂを接続するようにしても良い。
【００２０】
また、ネットワーク２は有線通信に限るものではなく、無線通信（赤外線や電波等）であっても良い。また、光ファイバを用いたものであっても良い。
【００２１】
図２に示すように、上述したようなネットプリントシステム１００は、例えばコンビニエンスストア本社のイントラネットＡが備えるサーバ１の一つである印刷サーバ１１から、フランチャイズ店舗のイントラネットＢが備えるクライアント３の一つであるプリンタ３１に対して販促資料等の印刷処理をダイレクトに実行することができる。なお、図２に示すように、イントラネットＢにおいては、同機能を有する複数のプリンタ３１を備えている。
【００２２】
［２．印刷サーバの構成］
まず、イントラネットＡが備える印刷サーバ１１（サーバ１）について説明する。図３は、印刷サーバ１１の構成の一例を示すブロック図である。図３に示すように、印刷サーバ１１は、この印刷サーバ１１の動作制御を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）４１を備えている。このＣＰＵ４１には、ＣＰＵ４１が起動時に実行するプログラムや必要なデータ等を記憶するためのＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４２と、ＣＰＵ４１のワークエリア等を構成するためのＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４３とが内部バス５６を介して接続されている。
【００２３】
さらに、ＣＰＵ４１には、キャラクタジェネレータ４４、時計回路４５、ネットワーク伝送制御部４７、磁気ディスク装置４８、ＣＤ−ＲＯＭ装置４９、表示制御部４２および入力制御部５５が、内部バス５６を介して接続されており、これらの各要素間のデータのやりとりは、主としてこの内部バス５６を介して行われる。
【００２４】
キャラクタジェネレータ４４は、図形文字の表示データを発生するためのものである。時計回路４５は、現在日時情報を出力するためのものである。
【００２５】
ネットワークインタフェース回路４６は、この印刷サーバ１１をＬＡＮであるネットワーク２に接続するためのものであり、ネットワーク伝送制御部４７は、ネットワーク２を介して、他のサーバ１やクライアント３との間で種々のデータをやりとりするための各種所定のプロトコルスイートの通信制御処理を実行するためのものである。例えば、ネットワークインタフェース回路４６は、ネットワーク２およびインターネット網１５０を介して他のイントラネット（ここでは、イントラネットＢ）が備えるクライアント３の一つであるプリンタ３１を接続し、プリンタ３１へ印刷データ等を送信したり、プリンタ３１より印刷処理状態等を受信したりする等の動作を行う。
【００２６】
磁気ディスク装置４８は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、ＯＳ上で走る種々のアプリケーションプログラム、ワークデータ、ファイルデータ、画情報データなどの種々のデータを記憶するためのものである。本実施の形態においては、アプリケーションプログラムとして、印刷データ送信プログラムなどが記憶されている。ＣＤ−ＲＯＭ装置４９は、交換可能な記録媒体であるＣＤ−ＲＯＭ５０に記憶されているデータ（種々のアプリケーションプログラム、ワークデータ、ファイルデータ、画情報データなどの種々のデータ）を読み込むためのものである。
【００２７】
このような印刷サーバ１１では、ユーザが電源を投入するとＣＰＵ４１がＲＯＭ４２内のローダーというプログラムを起動させ、磁気ディスク装置４８よりＯＳをＲＡＭ４３に読み込み、このＯＳを起動させる。このようなＯＳは、ユーザの操作に応じてアプリケーションプログラムを起動したり、情報を読み込んだり、保存を行ったりする。なお、記録媒体はＣＤ−ＲＯＭ５０に限るものではなく、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ、半導体メモリ等のコンピュータで読み取り可能な記録媒体であれば良い。この場合、ＣＤ−ＲＯＭ装置４９を記憶媒体のデータを読み込み可能なものに変更することはいうまでもない。また、アプリケーションプログラムは、所定のＯＳ上で動作するものに限らず、後述の各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【００２８】
なお、一般的には、印刷サーバ１１の磁気ディスク装置４８にインストールされるアプリケーションプログラムは、ＣＤ−ＲＯＭ５０などの記憶媒体に記録され、この記憶媒体に記録されたアプリケーションプログラムが磁気ディスク装置４８にインストールされる。このため、ＣＤ−ＲＯＭ５０等の可搬性を有する記憶媒体も、アプリケーションプログラムを記憶する記憶媒体となり得る。さらには、アプリケーションプログラムは、例えばネットワークインタフェース回路４６を介して外部から取り込まれ、磁気ディスク装置４８にインストールされても良い。
【００２９】
ＣＲＴなどの表示装置５１は、この印刷サーバ１１を操作するための画面を表示するためのものであり、表示制御部５２は、表示装置５１の表示内容を制御するためのものである。
【００３０】
キーボード装置５３は、この印刷サーバ１１に対する各種の指示を種々のキー操作により行わせるためのものであり、画面指示装置５４は、表示装置５１の任意の点を指示する等の操作作業を行うためのもの（例えば、マウス等のポインティングデバイス）であり、入力制御部５５は、キーボード装置５３および画面指示装置５４の入力情報を取り込む等するためのものである。
【００３１】
また、印刷文書情報は、この印刷サーバ１１で適宜なアプリケーションプログラムが起動され、当該アプリケーションプログラムにより作成されて磁気ディスク装置５８に保存されたり、ＣＤ−ＲＯＭ５０に保存されているものがＣＤ−ＲＯＭ装置４９により読み出されて、印刷サーバ１１に取り込まれたり、ネットワーク２およびインターネット網１５０を介して電子メール等で受信した情報から再構築されて印刷サーバ１１に取り込まれたりすることで、印刷サーバ１１に保存される。
【００３２】
［３．プリンタの構成］
次に、イントラネットＢが備える印刷装置であるプリンタ３１（クライアント３）について説明する。図４は、プリンタ３１の構成の一例を示すブロック図である。図４に示すように、プリンタ３１は、このプリンタ３１の各部の制御処理および画像形成処理などの各種制御処理を行うプリンタコントローラ（マザーボード）６１を備えている。このプリンタコントローラ６１には、オペレーションパネル６２、プリンタエンジン６３および磁気ディスク装置６４が接続されている。
【００３３】
プリンタコントローラ６１は、その時設定されている制御モードおよび各イントラネットＡ，Ｂの各種サーバ１（例えば、イントラネットＡの印刷サーバ１１）からの制御コードに従って各イントラネットＡ，Ｂの各種サーバ１（例えば、イントラネットＡの印刷サーバ１１）からの印刷データを描画データに変換してプリンタエンジン６３へ出力する制御機構の総称で次のようなモジュールで構成される。プリンタコントローラ６１には、制御の主体となるＣＰＵ８１、ＲＡＭ８２、このプリンタ３１に固有な各種の情報を記憶するためのＲＯＭ８３、電源のＯＮ／ＯＦＦに関わらずデータを保持できる不揮発性メモリであるＮＶ−ＲＡＭ８４、印刷の時に使用される数種の書体を保持しているメモリであるＦｏｎｔ  ＲＯＭ８５、エンジンＩ／Ｆ８６、オペレーションパネル６２を接続するパネルＩ／Ｆ８７、磁気ディスク装置６４を接続するディスクＩ／Ｆ８８、ネットワークＩ／Ｆ８９などで構成されている。
【００３４】
ＲＡＭ８２は、ＣＰＵ８１のワーク領域、各イントラネットＡ，Ｂの各種サーバ１からのデータ受信バッファ、また処理後のイメージ展開領域に使用される。
【００３５】
エンジンＩ／Ｆ８６は、プリンタコントローラ６１とプリンタエンジン６３への制御信号とプリンタエンジン６３からプリンタコントローラ６１へのステータス信号を送受信するＩ／Ｆである。
【００３６】
ネットワークＩ／Ｆ８９は、ネットワーク２を介して各イントラネットＡ，Ｂの各種サーバ１（例えば、印刷サーバ１１）からプリンタ３１への制御信号およびデータとプリンタ３１からのステータス信号を送受信するためのものである。
【００３７】
オペレーションパネル６２は、プリンタ３１のステータス表示およびモード、印刷条件を変更することができるスイッチ部である。
【００３８】
プリンタエンジン６３は、電子写真プロセス方式により画像を形成して記録用紙に記録出力するためのものである。より詳細には、プリンタコントローラ６１からの描画データと制御情報に基づいて、感光体上に静電作像し給紙部より転写紙を給紙して画像を形成する。
【００３９】
磁気ディスク装置６４は、種々の印刷文書情報を格納したり、それ以外の適宜な情報ファイル等を保存したりするためのものである。加えて、磁気ディスク装置６４には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、ＯＳ上で走る種々のアプリケーションプログラムが記憶されている。本実施の形態においては、アプリケーションプログラムとして、印刷処理プログラムなどが記憶されている。
【００４０】
このような構成のプリンタ３１は、サーバ１などと同様に、ユーザが電源を投入すると磁気ディスク装置６４よりＯＳをＲＡＭ８２に読み込み、このＯＳを起動させる。このようにして起動したＯＳは、ユーザの操作に応じてアプリケーションプログラムを起動したり、情報を読み込んだり、保存を行ったりする。また、アプリケーションプログラムは、所定のＯＳ上で動作するものに限らず、後述の各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションプログラムやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【００４１】
なお、一般的には、プリンタ３１の磁気ディスク装置６４にインストールされるアプリケーションプログラムは、ＣＤ−ＲＯＭ（図示せず）などの記憶媒体に記録され、この記憶媒体に記録されたアプリケーションプログラムが磁気ディスク装置６４にインストールされる。このため、ＣＤ−ＲＯＭ等の可搬性を有する記憶媒体も、アプリケーションプログラムを記憶する記憶媒体となり得る。さらには、アプリケーションプログラムは、例えばネットワークＩ／Ｆ８９を介して外部から取り込まれ、磁気ディスク装置６４にインストールされても良い。
【００４２】
なお、本実施の形態のプリンタ３１は、磁気ディスク装置６４を備えるものとしたが、これに限るものではなく、半導体メモリ等のコンピュータで読み取り可能な記録媒体にアプリケーションプログラムやＯＳなどを格納するようにしても良い。
【００４３】
［４．プリンタ代替処理］
次に、印刷サーバ１１のＣＰＵ４１およびプリンタ３１のＣＰＵ８１が実行する各種の演算処理のうち、本実施の形態のネットプリントシステム１００が発揮する特徴的な処理であるプリンタ代替処理について以下に説明する。
【００４４】
ネットプリントシステム１００においては、インターネット網１５０を介してイントラネットＡのホスト装置である印刷サーバ１１からイントラネットＢのプリンタ３１に印刷データが入力されると、イントラネットＢのプリンタ３１側で、入力された印刷データについての描画データがプリンタコントローラ６１の制御情報に基づいて生成され、生成された描画データがプリンタコントローラ６１からプリンタエンジン６３に渡され、プリンタスタート命令がかかり印刷が開始されることになる。ここで、イントラネットＢのプリンタ３１において、印刷の途中にもかかわらず、印刷処理が実行されているプリンタ３１にオペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）が発生することがある。そこで、本実施の形態のネットプリントシステム１００においては、印刷処理が実行されているプリンタ３１にオペレータ操作が必要な印刷不可状態が発生した場合には、印刷処理の対象を他のプリンタ３１に切り替えることによって、印刷を継続することを可能にし、イントラネットＢにおいて印刷停止状態にならないようにする、というプリンタ代替処理を実行するようにしたものである。
【００４５】
印刷サーバ１１は、アプリケーションプログラムとして、印刷データ送信プログラムを磁気ディスク装置４８に記憶している。すなわち、印刷サーバ１１は、ＯＳ上で動作する印刷データ送信プログラムが起動すると、この印刷データ送信プログラムに従い、ＣＰＵ４１が各部を制御してプリンタ代替処理の一部となる印刷データ送信処理を実行する。
【００４６】
プリンタ３１は、アプリケーションプログラムとして、印刷処理プログラムを磁気ディスク装置６４に記憶している。すなわち、プリンタ３１は、ＯＳ上で動作する印刷処理プログラムが起動すると、この印刷データ送信プログラムに従い、ＣＰＵ８１が各部を制御してプリンタ代替処理の一部となる印刷処理を実行する。
【００４７】
ここで、図５はプリンタ３１のプリンタ代替処理にかかる機能構成を概略的に示す模式図である。図５に示すように、プリンタ３１は、印刷サーバ１１およびネットワーク接続された他のプリンタ３１との間でセッションを成立させるセッション成立手段として機能するセッション成立部１０１と、印刷サーバ１１から送信された１つまたは複数の印刷データおよび一連の処理命令で構成される印刷ジョブにかかる印刷処理を実行した場合、当該プリンタ３１とセッションが成立している他のプリンタ３１で保持する印刷ジョブの同期を保つジョブ同期手段として機能するジョブ同期部１０２と、ネットワークの回線断が発生した場合、保持されている印刷ジョブのキャンセルおよびセッション成立部１０１により成立されたセッションのクローズは行なわない回線断対応手段として機能する回線断対応部１０３と、ネットワークの回線断後に再接続された場合、印刷サーバ１１からの問い合わせに応じて保持されている印刷ジョブの印刷データの数を応答する応答手段として機能する応答部１０４と、を備えている。
【００４８】
また、図６は印刷サーバ１１のプリンタ代替処理にかかる機能構成を概略的に示す模式図である。図６に示すように、印刷サーバ１１は、ネットワークの回線断の発生後、再接続された場合、プリンタ３１に対して回線断時の状態を問い合わせる問合せ手段として機能する問合せ部１１１と、プリンタ３１からの応答に応じ、プリンタ３１に対して送信完了した印刷データの次の印刷データを送信する送信手段として機能する送信再開部１１２と、を備えている。
【００４９】
次いで、セッション成立部１０１とジョブ同期部１０２とにより実現されるプリンタ代替処理の主要な処理について、シーン毎に具体的に説明する。
【００５０】
図７は、プリンタ代替処理を含むネットプリント処理の処理手順を示すシーケンス図である。なお、図７においては、「メインプリンタ」となるプリンタ３１ａ、「サブプリンタ１」となるプリンタ３１ｂ、「サブプリンタ２」となるプリンタ３１ｃの３台がネットワーク接続されているイントラネットＢを想定している。
【００５１】
なお、「メインプリンタ」、「サブプリンタ１」、「サブプリンタ２」は便宜上設定されたものであって、プリンタ３１ａとプリンタ３１ｂとプリンタ３１ｃとは、同じ実装のプリンタである。
【００５２】
また、「メインプリンタ」はホスト装置から一意に決定されるが、「サブプリンタ１」、「サブプリンタ２」については固定的に決められるものであっても良いし、その順序が処理毎に変わるものであっても良い。例えば、「サブプリンタ１」、「サブプリンタ２」のような順序については、プリンタの記憶部（ＲＯＭ８３、ＮＶ−ＲＡＭ８４、磁気ディスク装置６４など）に、次にデータを送るプリンタのＩＰアドレスを記憶しておき、データ転送の際に記憶されたＩＰアドレスを参照することで実現可能である。
【００５３】
まず、ネットプリント処理においては、セッション成立部１０１によって印刷サーバ１１およびネットワーク接続された他のプリンタ３１との間でセッションを成立した後、装置獲得処理が実行される。
【００５４】
（１）メインプリンタは、印刷サーバ１１から「装置獲得」コマンドを受信すると、プリンタの占有処理を行い、サブプリンタ（図７のサブプリンタ１）へ「装置獲得」コマンドを送信する。この時、メインプリンタは排紙抑制を情報に指定する。この情報は、印刷処理を抑制する印刷抑制情報である。
【００５５】
（２）サブプリンタ（図７のサブプリンタ１）は、プリンタの占有処理を行う。また、情報には排紙抑制することが指定されているので、サブプリンタはプリンタの排紙抑制を行う。サブプリンタはさらに下位（データ送信方向下流）のサブプリンタ（図７のサブプリンタ２）がある場合、上位（データ送信方向上流）から受信した「装置獲得」コマンドを送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「装置獲得応答」コマンドを送信する。また、下位プリンタは上位プリンタへ「装置獲得応答」コマンドを送信する。装置獲得応答には、プリンタのＩＰアドレスが含まれており、図８に示すように、上位プリンタは下位プリンタの応答情報（プリンタのＩＰアドレス）を順にマージして送信する。そして、メインプリンタはサブプリンタからの応答を待ち合わせし、印刷サーバ１１へ「装置獲得応答」のコマンドを送信する。
【００５６】
これにより、印刷サーバ１１側では、全てのプリンタの情報がマージされた結果の情報を受け取ることになる。
【００５７】
なお、プリンタから印刷サーバ１１側への情報送信は、インターネット網１５０およびファイアウォール６を介して行うため、ルール付けによりその通過を許可するか、メールに添付するなどにより行うものとする。以下におけるプリンタから印刷サーバ１１側への情報送信についても同様である。
【００５８】
印刷サーバ１１側では、各サブプリンタおよびメインプリンタの情報をマージしたプリンタ情報をログとして管理する。
【００５９】
（３）メインプリンタは、印刷サーバ１１から「ＪＯＢ開始」コマンドを受信すると、ＪＯＢ開始処理を行い、サブプリンタ（図７のサブプリンタ１）へ「ＪＯＢ開始」コマンドを送信する。この時、メインプリンタは取得したＪＯＢ  ＩＤを情報に追加する。
【００６０】
（４）サブプリンタ（図７のサブプリンタ１）は、ＪＯＢ開始処理を行うが、ＪＯＢ  ＩＤの作成は行わず、メインプリンタから通知されたＪＯＢ  ＩＤを使用することで、プリンタ間のジョブ管理の同期をとる。サブプリンタはさらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、上位から受信した「ＪＯＢ開始」コマンドを送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「ＪＯＢ開始応答」コマンドを送信する。また、下位プリンタは上位プリンタへ「ＪＯＢ開始応答」コマンドを送信する。メインプリンタはサブプリンタからの応答を待ち合わせし、印刷サーバ１１へ「ＪＯＢ開始応答」コマンドを送信する。
【００６１】
以上のようにネットプリント処理における装置獲得処理が終了すると、印刷処理が実行される。
【００６２】
ここで、図９はプリンタ３１のプリンタ代替処理におけるジョブ同期処理にかかる機能構成を概略的に示す模式図である。図９に示すように、プリンタ３１は、ジョブ同期処理にかかる機能構成として、排紙通知受信手段３１１と、ＮＶ−ＲＡＭ８４に形成されるジョブ管理テーブル３１２と、コマンド受信手段３１３とを備えている。
【００６３】
排紙通知受信手段３１１は、プリンタエンジン６３から印刷完了通知を受け取る。そして、ジョブ管理テーブル３１２を読み込み、ＪＯＢ  ＩＤ毎に印刷完了ページ数をカウントアップして、ジョブ管理テーブル３１２へ保存する。加えて、排紙通知受信手段３１１は、プリンタエンジン６３から障害通知を受け取った場合には、障害通知にかかるエラーコードをジョブ管理テーブル３１２へ保存する。
【００６４】
コマンド受信手段３１３は、印刷サーバ１１（サーバ１）またはデータ送信方向上流に位置する上位プリンタ３１から送信されるコマンド（データ送信／状態監視）を受信し、受信したコマンドをデータ送信方向下流に位置する下位プリンタ（サブプリンタ）３１へ送信する。また、コマンド受信手段３１３は、下位プリンタ（サブプリンタ）３１から状態監視コマンドに応じた応答情報を受け取ると、ジョブ管理テーブル３１２を読み込み、応答情報に含まれるページ情報（印刷完了ページ数を含んでいる）のマージ処理を行う。また、コマンド受信手段３１３は、下位プリンタ（サブプリンタ）３１から受け取った状態監視コマンドに応じた応答情報中に、エラーコードがある場合または応答情報に障害情報がある場合には、障害情報のマージ処理を行う。そして、コマンド受信手段３１３は、ジョブ管理テーブル３１２内の応答情報を印刷サーバ１１（サーバ１）または上位プリンタ３１へ返す。
【００６５】
このような機能構成の下に、通常時の印刷処理の処理手順について、図１０に示すシーケンス図を参照して説明する。
【００６６】
（１１）メインプリンタは、印刷サーバ１１から「データ送信」コマンドを受信すると、サブプリンタ（図７のサブプリンタ１）へ「データ送信」コマンドを送信する。
【００６７】
（１２）サブプリンタ（図７のサブプリンタ１）は、さらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、サブプリンタは上位から受信した「データ送信」コマンドを下位のサブプリンタに送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「データ送信応答」コマンドを送信する。また、下位プリンタは上位プリンタへ「データ送信応答」コマンドを送信する。下位プリンタはその後、印刷データ処理を行う。メインプリンタは、サブプリンタからの応答を待ち合わせし、印刷サーバ１１へ「データ送信応答」コマンドを送信した後、印刷データ処理を行う。
【００６８】
（１３）メインプリンタは、排紙毎にサブプリンタへ「ページ削除」コマンドを送信する。サブプリンタは「ページ削除」コマンドを受信し、さらに下位のサブプリンタがある場合、上位から受信した「ページ削除」コマンドを送信する。「ページ削除」コマンドを受信したサブプリンタは、印刷完了ページ数の同期を取り、印刷処理済みページの削除を行う。
【００６９】
（１４）メインプリンタは、印刷サーバ１１から「状態監視」コマンドを受信すると、サブプリンタ（図７のサブプリンタ１）へ「状態監視」コマンドを送信する。
【００７０】
（１５）サブプリンタ（図７のサブプリンタ１）は、さらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、上位のメインプリンタから受信した「状態監視」コマンドを下位のサブプリンタ（図７のサブプリンタ２）に送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「状態監視応答」コマンドを送信する。本実施の形態においては、図１１に示すように、上位のプリンタは下位のプリンタからの応答情報をマージして、更に上位のプリンタ（最上位のプリンタであるメインプリンタは印刷サーバ）に対して送信する。
【００７１】
図１１に示すように、上位プリンタは、ＪＯＢ  ＩＤ毎に、応答した全ての下位プリンタの印刷完了ページ数および当該上位プリンタの印刷完了ページを加算した印刷完了ページ数と、応答した全ての下位プリンタおよび当該上位プリンタを加算した総数であるプリンタ数と、プリンタ情報（応答した全ての下位プリンタおよび当該上位プリンタ毎のＩＰアドレス、ＪＯＢ  ＩＤ、印刷完了ページ数）とを含むページ情報を、応答情報の一部として生成する。
【００７２】
加えて、本実施の形態においては、応答情報の一部として障害情報も生成する。ここで、障害とは、オペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）がプリンタに発生した状態をいう。図１１に示すように、上位プリンタは、エラーとなったＪＯＢ  ＩＤ毎に、障害内容にかかるエラーコードと、エラーとなったプリンタ数と、プリンタ情報（エラーを応答した全ての下位プリンタおよびエラーがある場合の当該上位プリンタ毎のＩＰアドレス、エラーコード、エラーとなったＪＯＢ  ＩＤ）とを含む障害情報を、応答情報の一部として生成する。図１１は、下位プリンタに障害情報が無い場合を示している。
【００７３】
上述したように、メインプリンタは、サブプリンタからの応答を待ち合わせて応答情報をマージし、印刷サーバ１１に「状態監視応答」コマンドを送信する。メインプリンタ側において、オペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）が発生しない場合は、ここで印刷処理が完了する。
【００７４】
一方、メインプリンタからの「状態監視応答」コマンドを受信した印刷サーバ１１側では、全てのプリンタの情報がマージされた印刷結果の応答情報を受け取ることになる。状態監視応答には印刷状態が含まれ、それによって印刷サーバ１１は印刷完了ページ数と印刷完了を検知できる。この場合はメインプリンタでのみ印刷されているので、メインプリンタの印刷完了ページ数のみが印刷サーバ１１に対して応答される。印刷サーバ１１側では、全てのプリンタの応答情報がマージされた印刷結果の応答情報をログとして管理する。
【００７５】
ここで、図１２はページ情報テーブルＴ１を示す模式図である。図１２に示すように、印刷サーバ１１のＲＡＭ４３に形成されるページ情報テーブルＴ１には、イントラネットＢのメインプリンタから送信された応答情報の一部であるページ情報が格納されている。ページ情報テーブルＴ１は、基本部ａ、応答した全てのプリンタの総数であるプリンタ数ｂ、詳細部ｃで構成されている。基本部ａには、ＪＯＢ  ＩＤ及び全プリンタの印刷完了ページ数がログとして格納されている。また、詳細部ｃには、各プリンタのＩＰアドレス、各プリンタのＪＯＢ  ＩＤ（全て一致する）、各プリンタの印刷完了ページ数が、ログとして格納されている。
【００７６】
また、図１３は障害情報テーブルＴ２を示す模式図である。図１３に示すように、印刷サーバ１１のＲＡＭ４３に形成される障害情報テーブルＴ２には、イントラネットＢのメインプリンタから送信された応答情報の一部である障害情報が格納されている。障害情報テーブルＴ２は、基本部ｄ、障害が発生した全てのプリンタの総数であるプリンタ数ｅ、詳細部ｆで構成されている。基本部ｄには、障害内容にかかるエラーコード及び障害が発生したＪＯＢ  ＩＤがログとして格納されている。また、詳細部ｆには、障害が発生した各プリンタのＩＰアドレス、障害が発生した各プリンタのエラーコード、障害が発生した各プリンタのＪＯＢ  ＩＤ（全て一致する）が、ログとして格納されている。
【００７７】
次に、印刷処理中のプリンタにおいて、オペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）が発生した場合における代替印刷機能について説明する。代替印刷機能とは、複数台のプリンタをＬＡＮ経由でチェインして構成されるプリンタ群で印刷を行う機能である。なお、複数台のプリンタの接続方法はチェイン型に限るものではなく、スター型、バス型、リング型などの各種の接続方法を適用することが可能である。図１４は、印刷処理中に印刷不可状態が発生した場合の印刷処理の処理手順を示すシーケンス図である。
【００７８】
（１６）オペレータ操作が必要な印刷不可状態（例えば、紙なし）がメインプリンタで発生した場合には、メインプリンタはサブプリンタ（図７のサブプリンタ１）へ「排紙抑制解除」コマンドを送信する。また、メインプリンタは排紙機能を停止し、その後の排紙を行わない。
【００７９】
（１７）「排紙抑制解除」コマンドを受信したサブプリンタ（図７のサブプリンタ１）は、排紙抑制解除処理を行い、継続印刷を開始する。
【００８０】
（１８）サブプリンタ（図７のサブプリンタ１）は、排紙毎にメインプリンタへ「ページ削除」コマンドを送信する。また、サブプリンタは、さらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、下位のサブプリンタへ「ページ削除」コマンドを送信する。「ページ削除」コマンドを受信したメインプリンタと下位プリンタは、印刷完了ページ数の同期を取り、印刷処理済みページの削除を行う。
【００８１】
（１９）メインプリンタは、印刷サーバ１１から「状態監視」コマンドを受信すると、サブプリンタ（図７のサブプリンタ１）へ「状態監視」コマンドを送信する。
【００８２】
（２０）サブプリンタ（図７のサブプリンタ１）は、さらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、上位のメインプリンタから受信した「状態監視」コマンドを下位のサブプリンタ（図７のサブプリンタ２）に送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「状態監視応答」コマンドを送信する。メインプリンタは、サブプリンタからの応答を待ち合わせし、印刷サーバ１１に「状態監視応答」コマンドを送信する。これにより、印刷サーバ１１側では、全てのプリンタの情報がマージされた印刷結果の情報を受け取ることになる。状態監視応答には印刷状態が含まれ、それによって印刷サーバ１１は印刷完了ページ数と印刷完了を検知できる。状態監視応答には印刷状態が含まれ、それによって印刷サーバ１１は印刷完了ページ数と印刷完了を検知できる。この場合はメインプリンタとサブプリンタ１とで印刷されているので、メインプリンタとサブプリンタ１の印刷完了ページ数がマージされて応答される。
【００８３】
本実施の形態においては、図１５に示すように、オペレータ操作が必要な印刷不可状態（例えば、紙なし）の障害がメインプリンタで発生した場合には、印刷サーバ１１へは障害を応答せずにサブプリンタ１で印刷を継続する。また、オペレータ操作が必要な印刷不可状態（例えば、紙なし）の障害がサブプリンタ１で発生した場合には、更にサブプリンタ２が用意されているので、印刷サーバ１１へは障害を応答せずにサブプリンタ２で印刷を継続する。
【００８４】
また、メインプリンタで障害発生中のため、上述したように、応答情報の一部として障害情報が設定される。ただし、サブプリンタ１が稼働中のため、プリンタとしての障害情報は設定されず、内訳としてメインプリンタの障害情報を設定する。これは、代替印刷機能というものが、印刷先をプリンタ「群」として見ているためである。
【００８５】
ここで、図１６は代替印刷の一例を示す模式図である。図１６は、１０枚の印刷データを使用したケースであって、メインプリンタで５枚を印刷後に用紙切れが発生した後、印刷処理がサブプリンタ１に移行し、サブプリンタ１で３枚を印刷後に紙ジャムが発生している。その後、印刷処理がサブプリンタ２に移行し、サブプリンタ２で２枚が印刷されている。図１６に示すように、障害が発生した場合には、応答情報の一部として障害情報が付加されることになる。
【００８６】
一方、メインプリンタからの「状態監視応答」コマンドを受信した印刷サーバ１１側では、全てのプリンタの情報がマージされた印刷結果の応答情報を受け取ることになる。状態監視応答には印刷状態が含まれ、それによって印刷サーバ１１は印刷完了ページ数と印刷完了を検知できる。この場合はメインプリンタ、サブプリンタ１、サブプリンタ２で印刷されているので、メインプリンタ、サブプリンタ１、サブプリンタ２の印刷完了ページ数が印刷サーバ１１に対して応答される。印刷サーバ１１側では、図１２および図１３に示すように、全てのプリンタの応答情報がマージされた印刷結果の応答情報をログとして管理する。
【００８７】
以上のようにネットプリント処理における印刷処理が終了すると、図７に示すような装置解放処理が実行される。
【００８８】
（５）メインプリンタは、印刷サーバ１１から「ＪＯＢ終了」コマンドを受信すると、ＪＯＢ終了処理を行い、サブプリンタ（図７のサブプリンタ１）へ「ＪＯＢ終了」コマンドを送信する。
【００８９】
（６）メインプリンタから「ＪＯＢ終了」コマンドを受信したサブプリンタ（図７のサブプリンタ１）は、ＪＯＢ終了処理を行う。また、サブプリンタ（図７のサブプリンタ１）は、さらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、上位のメインプリンタから受信した「ＪＯＢ終了」コマンドを下位のサブプリンタ（図７のサブプリンタ２）に送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「ＪＯＢ終了応答」コマンドを送信する。メインプリンタは、サブプリンタからの応答を待ち合わせし、印刷サーバ１１に「ＪＯＢ終了応答」コマンドを送信する。
【００９０】
（７）メインプリンタは、印刷サーバ１１から「装置解放」コマンドを受信すると、プリンタの解放処理を行い、サブプリンタ（図７のサブプリンタ１）へ「装置解放」コマンドを送信する。
【００９１】
（８）メインプリンタから「装置解放」コマンドを受信したサブプリンタ（図７のサブプリンタ１）は、プリンタの解放処理を行う。また、サブプリンタ（図７のサブプリンタ１）は、さらに下位のサブプリンタ（図７のサブプリンタ２）がある場合、上位のメインプリンタから受信した「装置解放」コマンドを下位のサブプリンタ（図７のサブプリンタ２）に送信する。サブプリンタは下位のサブプリンタが無い場合、上位プリンタへ「装置解放」コマンドを送信する。メインプリンタは、サブプリンタからの応答を待ち合わせし、印刷サーバ１１に「装置解放応答」コマンドを送信する。
【００９２】
以上のように、ジョブ同期部１０２は、プリンタ３１が保持する印刷ジョブとセッションが成立している他のプリンタ３１で保持する印刷ジョブとの同期を保つように制御することができる。
【００９３】
［５．印刷結果レポート印刷処理］
次に、印刷結果レポートの印刷処理について説明する。図１７に示すように、印刷サーバ１１は、印刷サーバ１１がログとして管理するプリンタ情報および全てのプリンタの情報がマージされた印刷結果の情報（図１２および図１３参照）に基づき、印刷結果レポートの出力データを生成し、メインプリンタに送信する。ここに、レポート生成手段の機能およびレポート送信手段の機能が実行される。
【００９４】
印刷結果レポートは、上述した印刷処理に従い、最後に印刷処理を実行したプリンタにおいて印刷される。
【００９５】
図１８は、印刷結果レポートの一例を示す平面図である。図１８に示す印刷結果レポートには、ＪＯＢ  ＩＤ、文書名、総印刷完了ページ数とともに、プリンタ毎のプリンタ情報（ＩＰアドレス）、開始ページ、終了ページ、印刷ページ数が印字されている。また、障害が発生しているプリンタについては、その内容も印字されている。送信側、受信側の両方が、印刷結果レポートを確認することで、代替印刷されたことを確認することができるとともに、代替印刷されたプリンタの履歴により印刷された用紙の取り忘れや取り間違いを防止することができる。
【００９６】
［６．回線断発生時の印刷処理］
次に、回線断発生時の印刷処理について説明する。
【００９７】
従来、上位ホストはプリンタへ一方通行でデータを送信しており、回線断が発生した時にプリンタがどこまでデータ受信を完了したかを上位ホストが知る方法が無かった。そのため、回線の再接続時においては、通信断時点からの印刷データの継続送信は不可能であり、回線断発生時には印刷の継続が出来ないものとして、印刷ジョブがキャンセルされていた。
【００９８】
本実施の形態のネットプリントシステム１００は、前述したように、上位ホストとプリンタの間のやり取りを、コマンドとそれに対する応答で行うプロトコルを実装したことによって、回線断が発生した際にプリンタが印刷データをどこまで受け付けたか把握できるようになっている。概略的には、プリンタは上位ホストから送信された印刷データ数を、受信完了時に受信印刷データ数として随時保存する。回線断後に再接続が行われた場合、上位ホストの要求に応じて、プリンタが受信印刷データ数を応答することで、上位ホストから印刷データの継続送信を可能とする。この点について、以下において詳述する。
【００９９】
図１９は、回線断発生時の印刷処理の処理手順を示すシーケンス図である。なお、図１９においては、説明の簡略化のため、上位ホストとプリンタのみを図示している。上位ホストは、印刷サーバ、メインプリンタ、上位のサブプリンタのいずれであっても良い。
【０１００】
前述したように、プリンタは、上位ホストから「装置獲得」コマンドを受信すると、プリンタの占有処理を行い、上位ホストへ「装置獲得応答」のコマンドを送信する。
【０１０１】
また、プリンタは、上位ホストから「ＪＯＢ開始」コマンドを受信すると、ＪＯＢ開始処理を行い、上位ホストへ「ＪＯＢ開始応答」コマンドを送信する。プリンタは、ＪＯＢ開始処理として、印刷バッファのオープンを行うとともに、印刷データ数を０クリアする。
【０１０２】
以上のようにネットプリント処理における装置獲得処理が終了すると、印刷処理が実行される。
【０１０３】
プリンタは、上位ホストから「データ送信」コマンドを受信すると、上位ホストへ「データ送信応答」コマンドを送信した後、印刷データ処理を行う。図１９に示すように、プリンタは、印刷データ処理として、データ受信完了時に印刷データ数をカウントアップし、印刷データを印刷バッファに書き込む。なお、このような「データ送信」コマンドの受信は、全印刷データの送信が完了するまで、複数回行なわれることになる。
【０１０４】
ここで、図１９に示すように、全印刷データの送信が完了する前に（ここでは、印刷データ数ｎの受信が完了したところ）、回線断が発生したとする。このように回線断が発生した場合、プリンタの回線断対応部１０３は、印刷バッファの印刷ジョブのキャンセルおよび印刷バッファのクローズは行わず、データ受信待ちのまま保持する。ここで、回線断のタイミングにおける印刷ジョブの扱いと、再接続時に応答する直前情報とについて、下記の表に示す。
【表１】
2014044734.tif 000003
【０１０５】
表１に示されるように、
・データ送信（ｎ番目受信完了）
・データ送信（ｎ番目受信途中（ただし、ｎ＞１））
・データ送信（全データ受信完了）
・ＪＯＢ終了
の際に回線断が発生した場合には、印刷ジョブのキャンセルは行わないものとする。一方、表１に示されるように、
・装置獲得
・ＪＯＢ開始
・データ送信（１番目受信途中）
・装置解放
の際に回線断が発生した場合には、印刷ジョブのキャンセルは行うものとする。
【０１０６】
また、プリンタは、回線断が発生したと同時に、再接続待ちタイマーを起動し、上位ホストからの再接続待ちを行う。このように再接続待ちをタイマーで限定するのは、プリンタの占有をある程度で収めてプリンタの稼働率をなるべく落とさないようにする為である。
【０１０７】
図２０は、再接続タイムアウト前に再接続が有った場合の処理手順を示すシーケンス図である。図２０に示すように、再接続タイムアウト前に回線接続が有った場合、再接続待ちタイマーは停止し、上位ホストより受信したコマンドの処理を行う。
【０１０８】
図２１は、再接続タイムアウトした場合の処理手順を示すシーケンス図である。図２１に示すように、タイマーがタイムアウトした場合、印刷ジョブはキャンセルされる。
【０１０９】
図１９に戻り、上位ホストとプリンタとの再接続後は、上位ホストの問合せ部１１１は回線断時の状態の問い合わせを行うために、プリンタに対して「直前情報取得」コマンドを送信して、前回はどこまでデータを送信完了したのかを確認する。
【０１１０】
「直前情報取得」コマンドを受信したプリンタの応答部１０４は、ジョブ継続に必要な情報として回線断までに受信完了した「印刷データ数ｎ」を、「直前情報取得応答」コマンドとして上位ホストに応答する。
【０１１１】
上位ホストの送信再開部１１２は、受信印刷データ数とプロトコルで規定された１送信データサイズから、プリンタが受信済みの印刷データ量を算出する。そして、上位ホストは、続きのデータ、すなわち送信完了した次のデータから送信を再開する。このように本実施の形態においては、上位ホストはプリンタから応答送信された受信印刷データ数からプリンタが受信済みの印刷データ量を算出して続きのデータから送信を再開するようにしたことにより、次の再接続で印刷途中のデータを継続利用することができ、データの再送信を不要にすることができる。
【０１１２】
プリンタの印刷ジョブは回線断時にキャンセルされずにデータ受信待ちで保持されており、上位ホストから送信された印刷データの処理が引き続き可能である。なお、プリンタは、印刷データ受信完了毎に、印刷データ数をカウントアップする。
【０１１３】
以上の処理により、ネットワーク通信が切断された時点でセッションをクローズせず、次の再接続した時に印刷途中のデータを継続処理することができることにより、ネットワーク印刷における回線断による影響を軽減して、データの再送信が不要となるので、ネットワーク品質に左右されずに安定したデータ送信および印刷を提供することができるようになる。
【０１１４】
ここで、図２２は回線断があった場合のデータ送信例（回線断時にデータ受信完了）を示すシーケンス図である。図２２に示すデータは、印刷データを一定サイズで１０分割したものである。図２２に示すデータは、上位ホストで作成した文書が１０ページである場合に１ページ目がデータ１となるように、データ１からデータ１０に順番付けがなされている。図２２に示すデータは、プリンタ（受信部）に対して、データ１から順番に送信される。例えば、分割した各データは、その最大サイズが１６ＫＢになるように分割されている。
【０１１５】
図２２に示す例は、データ６を受信完了したが、応答を返す前に回線断が発生した場合について示すものである。このような場合には、回線断後の再接続において、上位ホストは直前状態確認コマンドをプリンタへ送信し、プリンタは受信済データ数を応答する（この例では、受信データ数：６）。そして、上位ホストは、プリンタから応答された受信済みデータ数の次のデータより送信を再開する（この例では、データ数：７）。
【０１１６】
なお、図２２では印刷データを１０分割しているが必ずしも分割する必要は無く、上位ホストに導入されているアプリケーションにより分割方法が異なる。
【０１１７】
ここで、図２３は回線断があった場合のデータ送信例（回線断時にデータ受信未完了）を示すシーケンス図である。図２３に示す例は、データ６を受信中に回線断が発生した場合について示すものである。このような場合には、回線断後の再接続において、上位ホストは直前状態確認コマンドをプリンタへ送信し、プリンタは受信済データ数を応答する（この例では、受信データ数：５）。そして、上位ホストは、プリンタから応答された受信済みデータ数の次のデータより送信を再開する（この例では、データ数：６）。
【０１１８】
このように本実施の形態によれば、印刷中のプリンタにオペレータ操作が必要な印刷不可状態（紙なし、紙ジャム、トナーエンド、その他障害）が発生した場合であっても、代替のプリンタが継続して印刷を引き継ぐことで、障害が発生しても印刷が止まることがなくなるので、確実に印刷することができるようになり、印刷の信頼性を上げることができる。また、ネットワーク通信が切断された時点でセッションをクローズせず、次の再接続で印刷途中のデータを継続利用することができるようにすることにより、ネットワーク印刷で回線断による影響を軽減するとともに、データの再送信を不要にすることができるので、ネットワーク品質に左右されずに安定したデータ送信および印刷を提供することができる。すなわち、従来技術では、各ページ単位の印刷データを印刷装置が受信していない状態で回線切断が発生した場合、ホスト装置はそのページの印刷データを再送信しなければならなかったが、本実施の形態によれば、ホスト装置は印刷装置から応答送信された受信印刷データ数からプリンタが受信済みの印刷データ量を算出して続きのデータから送信を再開するようにしたことにより、次の再接続で印刷途中のデータを継続利用することができ、データの再送信は発生しないようにすることができる。
【０１１９】
また、下位のプリンタの情報と上位のプリンタの情報とをマージして、さらに上位のプリンタ（又はホスト装置）へ応答することにより、ホスト装置において確実に各種情報を把握することができるようになる。例えば、各印刷装置における印刷処理状態（出力先や出力ページ数など）を含む情報をマージして、さらに上位のプリンタ（又は印刷サーバ）へ応答することにより、送信側（印刷サーバ）は確実に各印刷装置における印刷結果を把握することができるようになる。
【０１２０】
さらに、ホスト装置が得た各印刷装置における印刷処理状態（出力先や出力ページ数など）を含む情報に基づきレポート印刷を行なうため、一元管理されたデータを印刷結果レポートとして印刷することが出来るので、送信側、受信側の両方が、印刷結果レポートを確認することで、代替印刷されたことを確認することができるとともに、代替印刷されたプリンタの履歴により印刷された用紙の取り忘れや取り間違いを防止することができる。
【０１２１】
さらにまた、ネットワーク接続されたプリンタ群が、同機能を有する複数のプリンタで構成されているため、プリンタが切り替わったとしても同様の印刷結果を得ることが出来る。
【０１２２】
また、印刷サーバ側においては、プリンタ側に代替印刷機能を実装したことにより、障害の発生による印刷停止を無くすようにしたので、プリンタに障害が生じた際のリカバリ処理の開発工数を削減することができる。
【０１２３】
さらに、プリンタ側においては、メインプリンタおよびサブプリンタを共通のアプリケーションで構成することで、プリンタを安価に提供することができる。
【符号の説明】
【０１２４】
１１      ホスト装置
３１      印刷装置
１００    印刷システム
１０１    セッション成立手段
１０２    ジョブ同期手段
１０３    回線断対応手段
１０４    応答手段
１１１    問合せ手段
１１２    送信手段
【先行技術文献】
【特許文献】
【０１２５】
【特許文献１】特開２００３−２７１３４７号公報
【図１】
2014044734.tif 000004
【図２】
2014044734.tif 000005
【図３】
2014044734.tif 000006
【図４】
2014044734.tif 000007
【図５】
2014044734.tif 000008
【図６】
2014044734.tif 000009
【図７】
2014044734.tif 000010
【図８】
2014044734.tif 000011
【図９】
2014044734.tif 000012
【図１０】
2014044734.tif 000013
【図１１】
2014044734.tif 000014
【図１２】
2014044734.tif 000015
【図１３】
2014044734.tif 000016
【図１４】
2014044734.tif 000017
【図１５】
2014044734.tif 000018
【図１６】
2014044734.tif 000019
【図１７】
2014044734.tif 000020
【図１８】
2014044734.tif 000021
【図１９】
2014044734.tif 000022
【図２０】
2014044734.tif 000023
【図２１】
2014044734.tif 000024
【図２２】
2014044734.tif 000025
【図２３】
2014044734.tif 000026
【図２４】
2014044734.tif 000027