(57)【要約】【課題】印刷サービスの利用者が印刷ジョブのキャンセル要求に対する応答を即座に受け取ることができる印刷装置を提供する。【解決手段】印刷装置２００が印刷ジョブのキャンセル要求を受信すると、指定された印刷ジョブのキャンセル処理が実行可能であるか否かを判定し、実際の印刷ジョブのキャンセル処理を行う前に、判定結果を印刷サービスの利用者に返信する。印刷ジョブのキャンセル処理は、印刷ジョブのキャンセル要求を受け付けたプロセスとは別のプロセスで行い、キャンセル処理が完了すると、予め指定された宛先に対して新たにコネクションを作成し、そのコネクションを利用して印刷ジョブのキャンセル処理完了通知を送信する。【選択図】      図１１
2004341728.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブを処理する印刷装置であって、
印刷ジョブのキャンセル要求を情報処理装置から受信する受信手段と、
前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の応答情報を前記情報処理装置に向けて送信する応答手段と、
前記キャンセル要求に応じて前記印刷ジョブがキャンセルされた後に、該印刷ジョブがキャンセルされた旨のイベント情報を前記情報処理装置に向けて送信するイベント送信手段とを備えたことを特徴とする印刷装置。
【請求項２】
前記キャンセル要求に応じて、キャンセル対象の印刷ジョブを検索する検索手段を備え、
前記応答手段は、該当する印刷ジョブが前記検索手段により見つけられた場合、前記応答情報を送信し、該当する印刷ジョブが前記検索手段により見つけられなかった場合、エラーを示すエラー応答情報を前記情報処理装置に向けて送信することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記キャンセル要求で指定された識別情報に対応する印刷ジョブの印刷装置管理用識別情報を取得する取得手段と、
前記取得手段により取得された印刷装置管理用識別情報を用いてキャンセル処理を実行するキャンセル手段とを備えることを特徴とする請求項１または２に記載の印刷装置。
【請求項４】
情報処理装置および印刷装置を備え、前記印刷装置が印刷ジョブを処理する印刷システムにおいて、
前記情報処理装置は、前記印刷装置に前記印刷ジョブのキャンセル要求を指示する指示手段を備え、
前記印刷装置は、前記情報処理装置からの前記キャンセル要求を受信する受信手段と、
前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の受付情報を前記情報処理装置に返す応答手段とを備えたことを特徴とする印刷システム。
【請求項５】
印刷装置の印刷ジョブをキャンセルするキャンセル方法であって、
情報処理装置が、前記印刷装置に印刷ジョブのキャンセル要求を指示する指示工程と、
前記印刷装置が、前記情報処理装置からの前記キャンセル要求を受信する受信工程と、
前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の応答情報を前記情報処理装置に向けて送信する応答工程と備えたこと特徴とするキャンセル方法。
【請求項６】
前記キャンセル要求に応じて前記印刷ジョブがキャンセルされた後に、該印刷ジョブがキャンセルされた旨のイベント情報を前記情報処理装置に向けて送信するイベント送信工程とを備えたことを特徴とするキャンセル方法。
【請求項７】
前記キャンセル要求に応じて、キャンセル対象の印刷ジョブを検索する検索工程を備え、
前記応答工程では、該当する印刷ジョブが前記検索工程で見つけられた場合、前記応答情報を送信し、該当する印刷ジョブが前記検索工程で見つけられなかった場合、エラーを示すエラー応答情報を前記情報処理装置に向けて送信することを特徴とする請求項５または６に記載のキャンセル方法。
【請求項８】
前記キャンセル要求で指定された識別情報に対応する印刷ジョブの印刷装置管理用識別情報を取得する取得工程と、
前記取得工程で取得された印刷装置管理用識別情報を用いてキャンセル処理を実行するキャンセル工程とを備えることを特徴とする請求項５乃至７のいずれかに記載のキャンセル方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷ジョブのキャンセル要求を処理する印刷装置、印刷システム及びキャンセル方法に関する。
【０００２】
【従来の技術】
従来、通信内容がＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述された、ネットワーク間の通信プロトコルであるＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）を用いてジョブの転送を行う技術（以下、ＳＯＡＰ−ＸＭＬ技術という）が知られている。このようなＳＯＡＰ−ＸＭＬ技術を用いて印刷サービスを行う印刷システムでは、印刷サービスの利用者が操作するホストコンピュータから印刷ジョブのキャンセル要求を受信すると、指定された印刷ジョブのキャンセル処理が完了した時点で、印刷装置からその利用者に処理結果（レスポンス）を返していた。また、印刷サービスの利用者からのキャンセル要求を受信することからレスポンスを送信するまでの処理は、全てオペレーティングシステム（ＯＳ）のプログラム実行単位である、単一のプロセスで行われていた。
【０００３】
図１５は従来のＳＯＡＰを用いて転送される印刷ジョブのキャンセルプロセスを示す図である。印刷サービスの利用者から印刷ジョブのキャンセル要求（Ｃａｎｃｅｌ  Ｊｏｂリクエスト）をキャンセル処理プロセスＰ１００ａが受け取ると、キャンセル処理プロセスＰ１００ａは、プリンタコントロールプロセス群Ｐ２００ａに対し、キャンセル要求を受けたジョブのキャンセル処理を要求する。プリンタコントロールプロセス群Ｐ２００ａは、要求されたジョブのキャンセル処理を行い、その結果をキャンセル処理プロセスＰ１００ａに返信する。
【０００４】
この返信を待って、キャンセル処理プロセスＰ１００ａは、印刷サービスの利用者に印刷ジョブのキャンセル要求に対する応答を返す。また、イベント送信プロセスＰ３００ａは、プリンタコントロールプロセス群Ｐ２００ａからジョブキャンセルイベント（通知）を受信すると、受信したジョブキャンセルイベント（通知）にイベント送信宛先が指定されている場合、指定された宛先に対し、ジョブキャンセルイベントを送信する。
【０００５】
図１６は印刷装置における印刷ジョブのキャンセル処理手順を示すフローチャートである。印刷サービスの利用者が操作するホストコンピュータから印刷ジョブのキャンセル要求パケット（Ｃａｎｃｅｌ  Ｊｏｂリクエスト、図９参照）が印刷装置に送信されると、印刷装置はキャンセル要求パケット（Ｃａｎｃｅｌ  Ｊｏｂリクエスト）に記述されたＸＭＬデータを解析し（ステップＳ２００）、その解析結果にエラーがあるか否かを判定する（ステップＳ２０１）。
【０００６】
エラーがないと判定された場合、印刷装置内で印刷ジョブのキャンセル処理を行う（ステップＳ２０２）。そして、キャンセル実行結果が正常に行われたか否かを判別する（ステップＳ２０３）。キャンセル実行結果が正常に行われた場合、キャンセル要求パケット（Ｃａｎｃｅｌ  Ｊｏｂリクエスト）に対するレスポンスをＸＭＬデータで作成する（ステップＳ２０４、図１０参照）。作成されたレスポンスを印刷サービスの利用者に送信する（ステップＳ２０５）。
【０００７】
一方、ステップＳ２０１で、キャンセル要求パケット（Ｃａｎｃｅｌ  Ｊｏｂリクエスト）に記述されたＸＭＬデータにエラーがあると判定された場合、あるいはステップＳ２０３で、キャンセル実行の結果、エラーが発生した場合、エラーレスポンスを作成する（ステップＳ２０６）。そして、ステップＳ２０５で、作成されたエラーレスポンス（Ｃａｎｃｅｌ  Ｊｏｂレスポンス）をその利用者に送信する。
【０００８】
また、従来の印刷システムとして、印刷ジョブの印刷データの転送中に印刷ジョブのキャンセル指示がユーザにより出された場合、キャンセルフラグが立てられたダミーの印刷データをプリンタに送信するものが知られている（例えば、特許文献１参照）。これにより、１回のキャンセル指示でプリンタに既に送信されている印刷データを削除したり、その印刷データの印刷処理を停止することができる。したがって、印刷ジョブのキャンセル処理に伴うユーザの負担を軽くすることができ、また、最初のキャンセル指示が出されてから、実際にプリンタ内の印刷データを削除したり、印刷データの印刷処理を停止する処理を迅速に行うことができる。
【０００９】
【特許文献１】
特開２０００−３１１０６９号公報
【００１０】
【発明が解決しようとする課題】
しかしながら、上記ＳＯＡＰ−ＸＭＬ技術を用いて印刷サービスを行う印刷システムでは、利用者からの印刷ジョブのキャンセル要求に対し、キャンセル処理完了後にその利用者に処理結果を返していたので、キャンセル処理に時間がかかる場合、印刷装置からその利用者にレスポンスを送信する前に、その利用者とのネットワークコネクション（接続）がタイムアウトにより切断されてしまうことがあった。このような場合、利用者は、印刷ジョブのキャンセル要求が印刷装置側で受理されたのか否かを知ることができなかった。
【００１１】
また、ネットワークコネクション（接続）が切断されるまで至らなくても、印刷装置側からのキャンセル処理に対するレスポンス（応答）が遅い場合、利用者は不便を感じることが多かった。このことは、特許文献１に記載の印刷システムにおいても同様であった。
【００１２】
そこで、本発明は、印刷サービスの利用者が印刷ジョブのキャンセル要求に対する応答を即座に受け取ることができる印刷装置、印刷システム及びキャンセル方法を提供することを目的とする。また、本発明は、キャンセル処理速度の向上を期待できる印刷装置、印刷システム及びキャンセル方法を提供することを他の目的とする。
【００１３】
【課題を解決するための手段】
上記目的を達成するために、本発明の印刷装置は、印刷ジョブを処理する印刷装置であって、印刷ジョブのキャンセル要求を情報処理装置から受信する受信手段と、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の応答情報を前記情報処理装置に向けて送信する応答手段と、前記キャンセル要求に応じて前記印刷ジョブがキャンセルされた後に、該印刷ジョブがキャンセルされた旨のイベント情報を前記情報処理装置に向けて送信するイベント送信手段とを備えたことを特徴とする。
【００１４】
本発明の印刷システムは、情報処理装置および印刷装置を備え、前記印刷装置が印刷ジョブを処理する印刷システムにおいて、前記情報処理装置は、前記印刷装置に前記印刷ジョブのキャンセル要求を指示する指示手段を備え、前記印刷装置は、前記情報処理装置からの前記キャンセル要求を受信する受信手段と、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の受付情報を前記情報処理装置に返す応答手段とを備えたことを特徴とする。
【００１５】
本発明のキャンセル方法は、印刷装置の印刷ジョブをキャンセルするキャンセル方法であって、情報処理装置が、前記印刷装置に印刷ジョブのキャンセル要求を指示する指示工程と、前記印刷装置が、前記情報処理装置からの前記キャンセル要求を受信する受信工程と、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の応答情報を前記情報処理装置に向けて送信する応答工程と備えたこと特徴とする。
【００１６】
【発明の実施の形態】
本発明の印刷装置、印刷システム及びキャンセル方法の実施の形態について図面を参照しながら説明する。
【００１７】
（印刷システムの構成）
図１は実施の形態における印刷システムの構成を示す図である。この印刷システムは、通信内容がＸＭＬ形式で記述された通信プロトコルであるＳＯＡＰを用いて印刷サービスを提供するものであり、ネットワーク１００を介して印刷装置２００、およびこの印刷サービスの利用者によって操作されるホストコンピュータ（クライアント装置）３００が接続された構成を有する。
【００１８】
（印刷装置の構成）
図２は印刷装置２００の構成を示すブロック図である。図において、２５０は印刷装置２００内の各部を制御するＣＰＵである。ＣＰＵ２５０は、ＲＯＭ２５２に割り当てられたプログラム用ＲＯＭに記憶された制御プログラム、あるいは外部メモリ２６０に記憶された制御プログラムに基づき、システムバス２６１に接続された印刷部Ｉ／Ｆ２５５を介して、印刷部（プリンタエンジン）２５７に出力情報としての画像信号を出力する。
【００１９】
また、ＲＯＭ２５２に割り当てられたフォント用ＲＯＭには、上記出力情報を生成する際に使用されるフォントデータが記憶される。さらに、ＲＯＭ２５２に割り当てられたデータ用ＲＯＭには、ハードディスク等の外部メモリ２６０が存在しない印刷装置の場合、クライアント装置３００で利用される情報等が記憶されている。
【００２０】
ＣＰＵ２５０は、ネットワークＩ／Ｆ２５４を介してネットワーク１００に接続され、クライアント装置３００との通信処理を行い、印刷装置２００内の情報をクライアント装置３００に通知する。
【００２１】
２５１はＣＰＵ２５０の主メモリ、ワークエリア等として機能するＲＡＭであり、増設ポート（図示せず）に接続されるオプションＲＡＭによりメモリ容量を拡張可能である。また、ＲＡＭ２５１はＮＶＲＡＭ（不揮発性メモリ）を有し、ＲＡＭ２５１には、出力情報展開領域、環境データ格納領域等が割り当てられる。
【００２２】
外部メモリ２６０はハードディスク（ＨＤ）、ＩＣカード等からなり、外部メモリＩ／Ｆ２５６を通じてアクセス制御される。また、外部メモリ２６０は、オプションとして外部メモリＩ／Ｆ２５６に接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、外部メモリは少なくとも１つ以上接続され、内蔵フォントの他、オプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムなどを格納する。さらに、外部メモリはＮＶＲＡＭを有し、操作パネルからの印刷装置モード設定情報を記憶するようにしてもよい。
【００２３】
２５８は操作スイッチ、ＬＥＤ表示器等が配された操作パネル（操作部）である。２５９は、印刷サービスの利用者に対して様々な情報を通知する表示部である。また、２５３は時計部であり、証明書が有効期限切れであるか否かを調べる際に使用される。尚、時計部２５３の代わりに、ＲＯＭ２５２に同じような時計機能を持たせてもよいし、あるいは印刷装置２００の外部に、同じような時計機能を備えたものを設けてもよい。
【００２４】
（印刷処理）
図３は印刷サービスの利用者によって印刷が要求される際、印刷装置の動作処理手順を示すフローチャートである。この処理プログラムは、前述したように、印刷装置２００内のＲＯＭ２５２に割り当てられたプログラム用ＲＯＭあるいは外部メモリ２６０に記憶されており、ＣＰＵ２５０によって実行される。
【００２５】
印刷サービスの利用者（クライアント装置）から、印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットが印刷装置２００に送信されると、印刷装置２００は、印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）に記述されたＸＭＬデータを解析する（ステップＳ１００）。図４は印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットを示す図である。この印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）の詳細については後述する。ステップＳ１００の解析結果にエラーがあるか否かを判定する（ステップＳ１０１）。解析結果にエラーがない場合、印刷データ受信用の印刷用ポートを作成する（ステップＳ１０２）。
【００２６】
印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットに対するレスポンスのＸＭＬデータを作成する（ステップＳ１０４）。このとき、印刷データ受信用に作成したポートのＵＲＩを＜ｄａｔａ−ｓｉｎｋ−ｕｒｉ＞タグの値として設定する。図５はＣｒｅａｔｅ  Ｊｏｂパケットに対するレスポンスデータを示す図である。このレスポンスデータの詳細については後述する。図５のＸＭＬデータには、印刷データ受信用に作成されたポートのＵＲＩ（ｈｔｔｐ：／／１９２．１６８．１．４／ｊｏｂ００１）が埋め込まれている。
【００２７】
Ｃｒｅａｔｅ  Ｊｏｂパケットに対するレスポンスデータの作成が終了すると、そのレスポンスデータを通信プロトコルであるＳＯＡＰを用いて、利用者のクライアント装置３００に送信する（ステップＳ１０５）。この後、印刷サービスの利用者によって操作されるクライアント装置（ホストコンピュータ）３００は、図５の＜ｄａｔａ−ｓｉｎｋ−ｕｒｉ＞タグで指定されたＵＲＩを基に、送信先を特定し、特定された送信先に対し、通信プロトコルであるＨＴＴＰのＰＯＳＴメソッドを用いて、印刷データを送信する。
【００２８】
図６は通信プロトコルであるＨＴＴＰのＰＯＳＴメソッドによる印刷データ転送パケットを示す図である。この印刷データ転送パケットの詳細については後述する。印刷装置２００は、印刷用ポートに到着した印刷データを受信すると（ステップＳ１０６）、印刷に適した処理を施しながら印刷部２５７で印刷する。なお、印刷装置２００は、印刷データをネットワークから受信した後に、当該印刷データに対応する印刷装置管理用ＩＤを割り当てて、印刷ジョブを管理できるようにする。ステップＳ１０６における印刷データの受信が正常に終了すると、印刷装置２００は、ＨＴＴＰレスポンス（プリントデータ受信レスポンス）パケットを印刷サービスの利用者に送信し（ステップＳ１０７）、印刷用ポートを削除（クローズ）して印刷動作を終了する。図７はＨＴＴＰレスポンス（プリントデータ受信レスポンス）データを示す図である。このプリントデータ受信レスポンスについても後述する。
【００２９】
一方、ステップＳ１０１で、印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）に記述されたＸＭＬデータにエラーがあると判定された場合、エラーレスポンスデータを作成し（ステップＳ１０３）、ステップＳ１０５でエラーレスポンスデータを送信する。図８はエラーレスポンスデータを示す図である。このエラーレスポンスデータの詳細についても後述する。ステップＳ１０５で、エラーレスポンスが印刷サービスの利用者のクライアント装置３００に送信されると、クライアント装置３００は印刷データを送信しなくなる。
【００３０】
（印刷リクエスト）
印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットは図４に示す通りである。この印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットは、ＨＴＴＰ上のＳＯＡＰを用いてクライアント装置３００から印刷装置２００に送信される、ＸＭＬ形式で記述されたパケットデータであり、印刷装置２００に対してジョブ（印刷）の開始を指示するコマンドを有する。
【００３１】
Ｃｒｅａｔｅ  Ｊｏｂパケットデータには、要求元のユーザ名（＜ｒｅｑｕｅｓｔｉｎｇ−ｕｓｅｒ−ｎａｍｅ＞タグ）やジョブの処理に関する指示（＜ｊｏｂ−ｉｎｓｔｒｕｃｔｉｏｎ＞タグ）等の情報が記述されている。また、＜ｊｏｂ−ｉｎｓｔｒｕｃｔｉｏｎ＞タグには、印刷部数を設定する＜ｃｏｐｉｅｓ＞タグ、両面印刷を設定する＜ｓｉｄｅｓ＞タグ、印刷の仕上げを設定する＜ｆｉｎｉｓｈｉｎｇ＞タグ等が含まれており、印刷装置２００は、これらのタグに設定された値に基づき、ジョブの処理を行う。さらに、＜ｊｏｂ−ｉｎｓｔｒｕｃｔｉｏｎ＞タグには、オプションとして、＜ｎｏｔｉｆｉｃａｔｉｏｎ−ｉｎｓｔｒｕｃｔｉｏｎ＞タグを含めることも可能である。この＜ｎｏｔｉｆｉｃａｔｉｏｎ−ｉｎｓｔｒｕｃｔｉｏｎ＞タグには、ジョブに関する通知情報が記述される。図４では、通知情報として、通知先を設定する＜ｎｏｔｉｆｉｃａｔｉｏｎ−ｒｅｃｉｐｉｅｎｔ＞タグ、および通知条件を設定する＜ｅｖｅｎｔ＞タグが記述されている。印刷装置２００は、これらのタグに設定された値に基づいてイベント送信処理を行う。
【００３２】
（印刷レスポンス）
印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットに対するレスポンス（応答）パケットデータは図５に示す通りである。このレスポンス（Ｃｒｅａｔｅ  Ｊｏｂ応答）パケットデータは、印刷要求が受け付けられた成功時のものであり、印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットと同様、ＸＭＬ形式で記述され、ＨＴＴＰ上のＳＯＡＰを用いて送信される。Ｃｒｅａｔｅ  Ｊｏｂ応答パケットデータには、Ｃｒｅａｔｅ  Ｊｏｂのコマンドに対する結果コード（＜ｒｅｓｕｌｔ−ｃｏｄｅ＞タグ）、作成されたジョブの識別子（＜ｊｏｂ−ｉｄ＞タグ）、印刷用ポートのＵＲＩ（＜ｄａｔａ−ｓｉｎｋ−ｕｒｉ＞タグ）等の情報が含まれている。図５には、前述したように、印刷用ポートのＵＲＩとして、「ｈｔｔｐ：／／１９２．１６８．１．４／ｊｏｂ００１」が記述されている。
【００３３】
（プリントデータ送信）
ステップＳ１０６で受信される印刷データ転送パケットは図６に示す通りである。ここでは、ＨＴＴＰのＰＯＳＴメソッドを利用し、ＨＴＴＰのボディ部として、プリントデータが送信される。
【００３４】
（プリントデータ受信レスポンス）
ステップＳ１０７で返信されるプリントデータ受信レスポンスデータは図７に示す通りである。この受信レスポンスデータには、印刷データを受信し終わって接続（コネクション）を閉じることが示されている。
【００３５】
（印刷レスポンス）
印刷リクエストに対してエラーが発生した場合、ステップＳ１０３で作成されるエラーを示す応答パケットデータ（エラーレスポンスデータ）は図８に示す通りである。この応答パケットデータ（エラーレスポンスデータ）も、印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットと同様、ＸＭＬ形式で記述され、ＨＴＴＰ上のＳＯＡＰを用いて送信される。この応答パケットデータは、ＳＯＡＰ１．１で定義された、ＳＯＡＰのエラーを返すフォーマットに準じている。ここでは、エラーの理由は、「ｃｏｎｆｌｉｃｔｉｎｇ−ａｔｔｒｉｂｕｔｅｓ」であることが、＜ｒｅｓｕｌｔ−ｃｏｄｅ＞タグの値として設定されている。
【００３６】
（印刷ジョブキャンセルリクエスト）
図９は印刷ジョブキャンセルリクエスト（Ｃａｎｃｅｌ  Ｊｏｂ）パケットデータを示す図である。このパケットデータは、ＸＭＬ形式で記述されており、ＨＴＴＰ上のＳＯＡＰを用いてクライアント装置３００から印刷装置２００に送信される。また、このパケットデータは、キャンセルするジョブのＩＤ情報（＜ｊｏｂ−ｉｄ＞タグ）を含んでおり、印刷サービスに対して指定したジョブＩＤの印刷ジョブのキャンセルを要求する。図９では、印刷サービスの利用者は、ジョブＩＤが「００１」である印刷ジョブのキャンセルを要求している。
【００３７】
（印刷ジョブキャンセルレスポンス）
図１０は印刷ジョブキャンセルリクエスト（Ｃａｎｃｅｌ  Ｊｏｂ）パケットに対する応答パケットデータを示す図である。このパケットデータもＸＭＬ形式で記述されており、ＨＴＴＰ上のＳＯＡＰを用いて送受信される。ＣａｎｃｅｌＪｏｂ応答パケットには、Ｃａｎｃｅｌ  Ｊｏｂのコマンド対する結果コード（＜ｒｅｓｕｌｔ−ｃｏｄｅ＞タグ）情報が含まれている。図１０では、＜ｒｅｓｕｌｔ−ｃｏｄｅ＞タグで示される結果コードとして、印刷ジョブキャンセルの成功を表す「ｏｋ」が記述されている。
【００３８】
（印刷ジョブキャンセルプロセス）
図１１は印刷装置２００で実行される印刷ジョブキャンセルプロセスを示す図である。印刷サービスの利用者が操作するクライアント装置３００から印刷ジョブキャンセル要求（Ｃａｎｃｅｌ  Ｊｏｂ）をキャンセル要求受付プロセスＰ１１０が受け取ると、キャンセル要求受付プロセスＰ１１０は、キャンセル処理実行プロセスＰ１２０に対し、キャンセル要求を受けた印刷ジョブのキャンセル処理を命令するとともに、利用者に対して印刷ジョブキャンセル要求に対する応答を返す。
【００３９】
キャンセル処理実行プロセスＰ１２０は、キャンセル要求受付プロセスＰ１１０から受け取ったキャンセル処理命令に従い、プリンタコントロールプロセス群Ｐ２００に対し、要求された印刷ジョブのキャンセル処理を指示する。プリンタコントロールプロセス群Ｐ２００は、受信した印刷ジョブのキャンセル処理を実行する。また、イベント送信プロセスＰ３００は、プリンタコントロールプロセス群Ｐ２００からジョブキャンセルイベントを受信すると、受信した印刷ジョブにイベント送信先（宛先）が指定されている場合、指定された宛先に対してジョブキャンセルイベントを送信する。
【００４０】
（キャンセル要求受付プロセス）
図１２は印刷ジョブキャンセルを行う際、印刷装置２００のプロセスの１つであるキャンセル要求受付処理手順を示すフローチャートである。この処理プログラムは、前述したように、印刷装置２００内のＲＯＭ２５２に割り当てられたプログラム用ＲＯＭあるいは外部メモリ２６０に記憶されており、ＣＰＵ２５０によって実行される。
【００４１】
まず、印刷サービスの利用者が操作するクライアント装置３００から、例えば前述した図９の印刷ジョブキャンセルリクエスト（Ｃａｎｃｅｌ  Ｊｏｂ）パケットが印刷装置２００に送信されると、印刷装置２００は、Ｃａｎｃｅｌ  Ｊｏｂパケットで記述されたＸＭＬデータを解析し（ステップＳ３００）、解析結果にエラーがないか否かを判定する（ステップＳ３０１）。
【００４２】
エラーがない場合、印刷装置２００が管理している複数の印刷ジョブの中から、印刷ジョブキャンセルリクエスト（Ｃａｎｃｅｌ  Ｊｏｂ）で指定されたジョブの識別子に対応する印刷ジョブを検索する（ステップＳ３０２）。検索の結果、キャンセル対象の印刷ジョブが存在するか否かを判別する（ステップＳ３０３）。キャンセル対象の印刷ジョブが存在する場合、その印刷ジョブに対するキャンセル処理命令をキャンセル処理実行プロセスＰ１２０に指示する（ステップＳ３０４）。
【００４３】
そして、キャンセル処理実行プロセスＰ１２０に指示を出した後、例えば前述した図１０に示すＣａｎｃｅｌ  Ｊｏｂパケットに対するレスポンスのＸＭＬデータの作成を行う（ステップＳ３０５）。作成したレスポンスを印刷サービスの利用者が操作するクライアント装置３００に送信する（ステップＳ３０６）。この後、本処理を終了する。
【００４４】
一方、ステップＳ３０１で、印刷ジョブキャンセルリクエスト（ＣａｎｃｅｌＪｏｂ）に記述されたＸＭＬデータにエラーがあると判定された場合、あるいはステップＳ３０３でキャンセル（Ｃａｎｃｅｌ）対象の印刷ジョブが見つからなかった場合、エラーレスポンスデータを作成し（ステップＳ３０７）、ステップＳ３０６で、作成したエラーレスポンスを印刷サービスの利用者が操作するクライアント装置３００に送信する。
【００４５】
（キャンセル処理実行プロセス）
図１３は印刷ジョブキャンセルを行う際、印刷装置２００のプロセスの１つであるキャンセル処理実行処理手順を示すフローチャートである。この処理プログラムは、前述したように、印刷装置２００内のＲＯＭ２５２に割り当てられたプログラム用ＲＯＭあるいは外部メモリ２６０に記憶されており、ＣＰＵ２５０によって実行される。
【００４６】
まず、キャンセル要求受付プロセスＰ１１０からキャンセル実行要求を受信するまで待ち（ステップＳ４００）、キャンセル実行要求を受信すると、指示された印刷ジョブに対応する印刷装置管理用ＩＤを取得する（ステップＳ４０１）。印刷装置管理用のＩＤを取得したか否かを確認し（ステップＳ４０２）、印刷管理用ＩＤを取得できなかった場合、印刷管理用ＩＤの取得待ち状態に移行する（ステップＳ４０５）。そして、ステップＳ４０１の処理に戻る。
【００４７】
一方、ステップＳ４０２で印刷管理用ＩＤを取得した場合、印刷装置２００に対して印刷管理用ＩＤを用いてキャンセル処理を実行する（ステップＳ４０３）。そして、キャンセル処理が完了したか否かを判別し（ステップＳ４０４）、キャンセル処理が完了していない場合、キャンセル処理完了を待ち（ステップＳ４０６）、ステップＳ４０４、Ｓ４０６の処理を繰り返す。そして、キャンセル処理が完了すると、キャンセルイベント（通知）パケットを送信し（ステップＳ４０７）、再度、ステップＳ４００のキャンセル要求待ち状態に移行する。
【００４８】
（キャンセル処理完了通知パケット）
図１４はキャンセル処理完了通知パケットデータを示す図である。ホストコンピュータであるクライアント装置３００に向けて送信されるキャンセル通知パケットデータは、ＸＭＬ形式で記述されており、ＳＯＡＰを用いて送信される。このパケットの通知先は、図４の＜ｎｏｔｉｆｉｃａｔｉｏｎ−ｒｅｃｉｐｉｅｎｔ＞タグ中に示されたＵＲＩとなる。したがって、キャンセル要求を行った利用者だけでなく、予め指定された宛先に対し、キャンセル処理完了通知パケットを送信することが可能である。また、図１４の＜ｔｒｉｇｇｅｒ−ｅｖｅｎｔ＞タグの値として、「ｊｏｂ−ｃａｎｃｅｌｅｄ」が示されており、このパケットがキャンセル通知であることを示している。
【００４９】
このように、本実施形態の印刷システムでは、印刷装置２００が印刷ジョブのキャンセル要求を受信すると、指定された印刷ジョブのキャンセル処理が実行可能であるか否かを判定し、実際の印刷ジョブのキャンセル処理を行う前に、判定結果を印刷サービスの利用者に返信する。そして、印刷ジョブのキャンセル処理は、印刷ジョブのキャンセル要求を受け付けたプロセスとは別のプロセスで行い、キャンセル処理が完了すると、予め指定された宛先に対して新たにコネクションを作成し、そのコネクションを利用して印刷ジョブのキャンセル処理完了通知を送信する。これにより、利用者が印刷ジョブのキャンセル要求に対する応答を即座に受け取ることができる。また、キャンセル処理速度の向上を期待できる。さらに、要求した印刷ジョブのキャンセル処理完了についても印刷装置２００から受け取ることが可能となり、印刷ジョブのキャンセル要求処理が正常に完了したか否かを知ることができる。
【００５０】
以上が本発明の実施の形態の説明であるが、本発明は、これら実施の形態の構成に限られるものではなく、特許請求の範囲で示した機能、または実施の形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
【００５１】
例えば、上記実施形態では、印刷ジョブのキャンセル要求は、印刷装置によって管理されている印刷ジョブを取り消す要求であったが、例えば、クライアント装置と印刷装置との間にネットワーク接続装置が介在し、このネットワーク接続装置によって、クライアント装置からの印刷ジョブが管理されている場合、この印刷ジョブを取り消すことも、上記印刷ジョブのキャンセル要求に含むようにしてもよい。
【００５２】
また、本発明の目的は、実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
【００５３】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００５４】
又、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００５５】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００５６】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００５７】
本発明の実施形態を以下に列挙する。
【００５８】
［実施態様１］  情報処理装置および印刷装置を備え、前記印刷装置が前記情報処理装置から送信された印刷ジョブを実行する印刷システムにおいて、前記情報処理装置は、前記印刷装置に前記印刷ジョブのキャンセル要求を指示する指示手段を備え、前記印刷装置は、前記情報処理装置からの前記キャンセル要求を受信する受信手段と、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の受付情報を前記情報処理装置に返す応答手段とを備えたことを特徴とする印刷システム。
【００５９】
［実施態様２］  前記印刷装置は、前記受信したキャンセル要求にしたがって、前記印刷ジョブのキャンセルを完了した場合、前記印刷ジョブのキャンセル完了を前記情報処理装置に通知する通知手段を備えたことを特徴とする実施態様１記載の印刷システム。
【００６０】
［実施態様３］  前記情報処理装置および前記印刷装置はネットワークを介して接続され、通信内容がＸＭＬ形式で記述された通信プロトコルであるＳＯＡＰを用いて、前記印刷ジョブのキャンセル要求および前記受付情報が送受信されることを特徴とする実施態様１記載の印刷システム。
【００６１】
［実施態様４］  前記印刷ジョブのキャンセル要求は、印刷サービスの利用者によって前記情報処理装置から送信された印刷ジョブ、または前記利用者によって前記情報処理装置から送信され、前記印刷装置によって管理されている印刷ジョブを取り消すための要求であることを特徴とする実施態様１記載の印刷システム。
【００６２】
［実施態様５］  前記応答手段は、前記キャンセル要求で指定された印刷ジョブが前記印刷装置によって管理されている場合、前記受付情報として前記キャンセル要求を受理した旨の正常な応答を返すことを特徴とする実施態様１記載の印刷システム。
【００６３】
［実施態様６］  前記応答手段は、前記キャンセル要求で指定された印刷ジョブが前記印刷装置によって管理されていない場合、前記受付情報として前記キャンセル要求を受理できなかった旨のエラーを返すことを特徴とする実施態様１記載の印刷システム。
【００６４】
［実施態様７］  前記通知手段は、前記情報処理装置の他、指定された宛先に前記印刷ジョブのキャンセル完了を通知可能であることを特徴とする実施態様２記載の印刷システム。
【００６５】
［実施態様８］  前記印刷装置は、前記指示されたキャンセル要求にしたがって実行されるキャンセルプロセスを、複数のプロセスに分割することを特徴とする実施態様１記載の印刷システム。
【００６６】
［実施態様９］  前記複数のプロセスは、前記印刷ジョブのキャンセル要求を受け付けるキャンセル要求受付プロセスと、キャンセル処理を実行するキャンセル処理実行プロセスとからなることを特徴とする実施態様８記載の印刷システム。
【００６７】
［実施態様１０］  前記キャンセル要求受付プロセスでは、前記受信手段によって前記情報処理装置から指示された印刷ジョブのキャンセル要求を受信し、前記応答手段によって前記情報処理装置に前記受付情報を返すことを特徴とする実施態様９記載の印刷システム。
【００６８】
［実施態様１１］  前記キャンセル要求受付プロセスでは、前記キャンセル要求に記述された印刷ジョブの識別番号が前記印刷装置で管理されているか否かを判別し、管理されている場合、前記受付情報として前記キャンセル要求を受理した旨の正常な応答を返す一方、管理されていない場合、前記受付情報として前記キャンセル要求を受理できなかった旨のエラーを返すことを特徴とする実施態様１０記載の印刷システム。
【００６９】
［実施態様１２］  前記キャンセル処理実行プロセスでは、前記キャンセル要求受付プロセスから、特定の印刷ジョブのキャンセル命令を受け取り、該当する印刷ジョブのキャンセル処理を実行することを特徴とする実施態様９記載の印刷システム。
【００７０】
［実施態様１３］  前記プロセスは、前記印刷装置のオペレーティングシステム上のプログラム実行単位であることを特徴とする実施態様８記載の印刷システム。
【００７１】
［実施態様１４］  情報処理装置から送信された印刷ジョブを実行する印刷装置において、前記情報処理装置からのキャンセル要求を受信する受信手段と、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の受付情報を前記情報処理装置に返す応答手段と、前記受信したキャンセル要求にしたがって、前記印刷ジョブのキャンセルを完了した場合、前記印刷ジョブのキャンセル完了を前記情報処理装置に通知する通知手段とを備えたことを特徴とする印刷装置。
【００７２】
［実施態様１５］  印刷装置に印刷ジョブを送信して実行させる情報処理装置において、前記印刷装置に前記印刷ジョブのキャンセル要求を指示する指示手段と、前記キャンセル要求の応答として、前記印刷装置から前記キャンセル要求を受け付けた旨の受付情報を受信する受信手段とを備えたことを特徴とする情報処理装置。
【００７３】
［実施態様１６］  印刷装置が情報処理装置から送信された印刷ジョブのキャンセル処理を実行する印刷ジョブキャンセル処理方法において、前記情報処理装置が前記印刷装置に前記印刷ジョブのキャンセル要求を指示する指示ステップと、前記印刷装置が前記情報処理装置からの前記キャンセル要求を受信する受信ステップと、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の受付情報を前記情報処理装置に返す応答ステップとを有することを特徴とする印刷ジョブキャンセル処理方法。
【００７４】
［実施態様１７］  情報処理装置から送信された印刷ジョブを実行する印刷装置内のコンピュータによって実行されるプログラムであって、前記情報処理装置からのキャンセル要求を受信する受信ステップと、前記キャンセル要求の応答として、該キャンセル要求を受け付けた旨の受付情報を前記情報処理装置に返す応答ステップと、前記受信したキャンセル要求にしたがって、前記印刷ジョブのキャンセルを完了した場合、前記情報処理装置に前記印刷ジョブのキャンセル完了を通知する通知ステップとを含むことを特徴とするプログラム。
【００７５】
【発明の効果】
本発明によれば、印刷サービスの利用者が印刷ジョブのキャンセル要求に対する応答を即座に受け取ることができる。また、キャンセル処理速度の向上を期待できる。
【図面の簡単な説明】
【図１】実施の形態における印刷システムの構成を示す図である。
【図２】印刷装置２００の構成を示すブロック図である。
【図３】印刷サービスの利用者によって印刷が要求される際、印刷装置の動作処理手順を示すフローチャートである。
【図４】印刷要求ジョブ（Ｃｒｅａｔｅ  Ｊｏｂ）パケットを示す図である。
【図５】Ｃｒｅａｔｅ  Ｊｏｂパケットに対するレスポンスデータを示す図である。
【図６】通信プロトコルであるＨＴＴＰのＰＯＳＴメソッドによる印刷データ転送パケットを示す図である。
【図７】ＨＴＴＰレスポンス（プリントデータ受信レスポンス）データを示す図である。
【図８】エラーレスポンスデータを示す図である。
【図９】印刷ジョブキャンセルリクエスト（Ｃａｎｃｅｌ  Ｊｏｂ）パケットデータを示す図である。
【図１０】印刷ジョブキャンセルリクエスト（Ｃａｎｃｅｌ  Ｊｏｂ）パケットに対する応答パケットデータを示す図である。
【図１１】印刷装置２００で実行される印刷ジョブキャンセルプロセスを示す図である。
【図１２】印刷ジョブキャンセルを行う際、印刷装置２００のプロセスの１つであるキャンセル要求受付処理手順を示すフローチャートである。
【図１３】印刷ジョブキャンセルを行う際、印刷装置２００のプロセスの１つであるキャンセル処理実行処理手順を示すフローチャートである。
【図１４】キャンセル処理完了通知パケットデータを示す図である。
【図１５】従来のＳＯＡＰを用いて転送される印刷ジョブのキャンセルプロセスを示す図である。
【図１６】印刷装置における印刷ジョブのキャンセル処理手順を示すフローチャートである。
【符号の説明】
１００  ネットワーク
２００  プリンタ
２５０  ＣＰＵ
２５２  ＲＯＭ
３００  クライアント装置（ホストコンピュータ）
Ｐ１１０  キャンセル要求受付プロセス
Ｐ１２０  キャンセル処理実行プロセス
Ｐ２００  プリンタコントロールプロセス群
Ｐ３００  イベント送信プロセス
【図１】
2004341728.tif 000003
【図２】
2004341728.tif 000004
【図３】
2004341728.tif 000005
【図４】
2004341728.tif 000006
【図５】
2004341728.tif 000007
【図６】
2004341728.tif 000008
【図７】
2004341728.tif 000009
【図８】
2004341728.tif 000010
【図９】
2004341728.tif 000011
【図１０】
2004341728.tif 000012
【図１１】
2004341728.tif 000013
【図１２】
2004341728.tif 000014
【図１３】
2004341728.tif 000015
【図１４】
2004341728.tif 000016
【図１５】
2004341728.tif 000017
【図１６】
2004341728.tif 000018