(57)【要約】【課題】装置の負荷や通信量を増大させることなく、待機ジョブを好適に実現する仕組みを提供する。【解決手段】印刷装置は、受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを複数の外部装置から受信して処理可能である。本印刷装置は、所定の外部装置から印刷ジョブを受信し、受信した印刷ジョブが待機ジョブであるか否かを判定し、受信した情報から印刷装置で印刷を実行するための画像情報を生成する。また、本印刷装置は、画像情報を生成した際に、印刷ジョブが待機ジョブであると判定されていれば、印刷キューの先頭が画像情報に対応する印刷ジョブである場合には、所定の外部装置に待機ジョブに関する通知を行う。一方、印刷キューの先頭が画像情報に対応する印刷ジョブでない場合には、印刷キューの先頭が画像情報に対応する印刷ジョブとなるまで待機ジョブに関する通知を保留する。【選択図】  図４
2019206146.tif 000002
【特許請求の範囲】
【請求項１】
受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを複数の外部装置から受信して処理可能な印刷装置であって、
所定の外部装置から印刷ジョブを受信する受信手段と、
前記受信手段によって受信した前記印刷ジョブが待機ジョブであるか否かを判定する判定手段と、
前記受信手段によって受信した情報から前記印刷装置で印刷を実行するための画像情報を生成する生成手段と、
前記生成手段によって画像情報が生成された際に、前記判定手段によって前記印刷ジョブが待機ジョブであると判定されていれば、印刷キューの先頭が該画像情報に対応する印刷ジョブである場合には、前記所定の外部装置に対して待機ジョブに関する通知を行い、前記印刷キューの先頭が該画像情報に対応する印刷ジョブでない場合には、前記印刷キューの先頭が該画像情報に対応する印刷ジョブとなるまで前記待機ジョブに関する通知を保留する制御手段と
を備えることを特徴とする印刷装置。
【請求項２】
前記待機ジョブに関する通知を行った後に、当該待機ジョブの印刷の開始指示を受け付けると印刷を実行する印刷手段と、
前記印刷手段によって印刷の実行が完了すると、対応する印刷ジョブを印刷キューから削除する更新手段と
をさらに備えることを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記待機ジョブの印刷の開始指示とは、前記印刷装置に設けられた所定キーの押下であることを特徴とする請求項１又は２に記載の印刷装置。
【請求項４】
前記待機ジョブに関する通知を受けた外部装置は、前記印刷装置の印刷キューの情報を取得することを特徴とする請求項１乃至３の何れか１項に記載の印刷装置。
【請求項５】
前記待機ジョブに関する通知を受けた外部装置は、前記取得した印刷キューの先頭が該外部装置が送信した印刷ジョブを示す場合には、前記印刷装置がオフライン状態であることを示す表示を表示部に行うことを特徴とする請求項４に記載の印刷装置。
【請求項６】
前記待機ジョブは、給紙の前に印刷処理を一時停止し、印刷装置においてメッセージ出力を引き起こすジョブであることを特徴とする請求項１に記載の印刷装置。
【請求項７】
情報処理装置であって、
受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを受信して処理可能な印刷装置に対して、該待機ジョブを送信する送信手段と、
前記送信手段によって送信した待機ジョブのジョブＩＤを前記印刷装置から取得する取得手段と、
前記印刷装置において当該待機ジョブの印刷準備が完了し、待機状態になったことを示す待機ジョブに関する通知を受信すると、該印刷装置から印刷キューの情報を取得し、該印刷キューの先頭が当該待機ジョブである場合には、前記印刷装置が待機状態であることを示す表示を表示部に行い、前記印刷キューの先頭が当該待機ジョブでない場合には、前記印刷装置が待機状態であることを示す表示を保留する制御手段と
を備えることを特徴とする情報処理装置。
【請求項８】
受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを複数の外部装置から受信して処理可能な印刷装置の制御方法であって、
受信手段が、所定の外部装置から印刷ジョブを受信する受信工程と、
判定手段が、前記受信工程で受信した前記印刷ジョブが待機ジョブであるか否かを判定する判定工程と、
生成手段が、前記受信工程で受信した情報から前記印刷装置で印刷を実行するための画像情報を生成する生成工程と、
制御手段が、前記生成工程で画像情報が生成された際に、前記判定工程で前記印刷ジョブが待機ジョブであると判定されていれば、印刷キューの先頭が該画像情報に対応する印刷ジョブである場合には、前記所定の外部装置に対して待機ジョブに関する通知を行い、前記印刷キューの先頭が該画像情報に対応する印刷ジョブでない場合には、前記印刷キューの先頭が該画像情報に対応する印刷ジョブとなるまで前記待機ジョブに関する通知を保留する制御工程と
を含むことを特徴とする印刷装置の制御方法。
【請求項９】
情報処理装置の制御方法であって、
送信手段が、受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを受信して処理可能な印刷装置に対して、該待機ジョブを送信する送信工程と、
取得手段が、前記送信工程で送信した待機ジョブのジョブＩＤを前記印刷装置から取得する取得工程と、
制御手段が、前記印刷装置において当該待機ジョブの印刷準備が完了し、待機状態になったことを示す待機ジョブに関する通知を受信すると、該印刷装置から印刷キューの情報を取得し、該印刷キューの先頭が当該待機ジョブである場合には、前記印刷装置が待機状態であることを示す表示を表示部に行い、前記印刷キューの先頭が当該待機ジョブでない場合には、前記印刷装置が待機状態であることを示す表示を保留する制御工程と
を含むことを特徴とする情報処理装置の制御方法。
【請求項１０】
受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを複数の外部装置から受信して処理可能な印刷装置の制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記制御方法は、
受信手段が、所定の外部装置から印刷ジョブを受信する受信工程と、
判定手段が、前記受信工程で受信した前記印刷ジョブが待機ジョブであるか否かを判定する判定工程と、
生成手段が、前記受信工程で受信した情報から前記印刷装置で印刷を実行するための画像情報を生成する生成工程と、
制御手段が、前記生成工程で画像情報が生成された際に、前記判定工程で前記印刷ジョブが待機ジョブであると判定されていれば、印刷キューの先頭が該画像情報に対応する印刷ジョブである場合には、前記所定の外部装置に対して待機ジョブに関する通知を行い、前記印刷キューの先頭が該画像情報に対応する印刷ジョブでない場合には、前記印刷キューの先頭が該画像情報に対応する印刷ジョブとなるまで前記待機ジョブに関する通知を保留する制御工程と
を含むことを特徴とするプログラム。
【請求項１１】
情報処理装置の制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記制御方法は、
送信手段が、受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを受信して処理可能な印刷装置に対して、該待機ジョブを送信する送信工程と、
取得手段が、前記送信工程で送信した待機ジョブのジョブＩＤを前記印刷装置から取得する取得工程と、
制御手段が、前記印刷装置において当該待機ジョブの印刷準備が完了し、待機状態になったことを示す待機に関する通知を受信すると、該印刷装置から印刷キューの情報を取得し、該印刷キューの先頭が当該待機ジョブである場合には、前記印刷装置が待機状態であることを示す表示を表示部に行い、前記印刷キューの先頭が当該待機ジョブでない場合には、前記印刷装置が待機状態であることを示す表示を保留する制御工程と
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オフラインジョブを処理する印刷装置、情報処理装置、それらの制御方法、及びプログラムに関する。
【背景技術】
【０００２】
オフラインジョブとは、給紙直前を含む給紙の前にメッセージ表示等して印刷処理を一時停止し、プリンタをオフライン状態に移行させるジョブのことである。  このオフラインジョブの機能は、複数のユーザが異なる用紙を扱う場合に有効である。プリンタの給紙段の数より多くのユーザがいる場合、その用紙全てをプリンタの給紙段にセットすることはできない。そのため印刷時に用紙を手差しトレイ等にセットする必要がある。このときにオフラインジョブにしておくことで、任意のメッセージを表示することにより、スムーズに当該オフラインジョブに対応する用紙をセットすることができる。
【０００３】
オフラインジョブは、前述のとおり複数のユーザがいる環境下で使われることが想定されるため、そのような環境下における問題にも対応しうる。例えば、特許文献１には、操作パネルがついたプリンタからプルプリントして印刷するシステムにおいて、オフラインジョブがある場合のユーザ間の操作の混在や、操作権限の問題を防ぐ技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０ー２３４０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来技術には以下に記載する課題がある。例えば、前述のプリンタのパネルに表示している用紙のセットを促すメッセージをホストに表示する印刷システムがある。このメッセージ表示をホストで行うことにより、プリンタの近くに行かず、用紙をセットするタイミングの通知を可能にしている。
【０００６】
通常、印刷システムでは、プリンタ内のジョブの有無（プリンタの状態）を確認することによって出力管理を実現している。また、多くのホストが接続するような環境でこのような印刷システムを実現するには、比較的低性能なホストでも運用可能なように、ホストやプリンタの負荷と、それらの間の通信量とを抑えている。例えば、印刷キューとプリンタの状態のみをプリンタから取得することによっても、前述の印刷システムは実現可能である。
【０００７】
ところが、複数ホストからオフラインジョブを連続送信すると、対象のオフラインジョブがオフライン状態になったときに、当該オフラインジョブより先に印刷を行っている先行ジョブが完了していない可能性がある。この場合、印刷キューやプリンタの状態からオフライン状態になったオフラインジョブが特定できず、ホストで適切なメッセージを表示できない。つまり、何れのホストからのオフラインジョブかを特定することができず、例えば、他のホストに対して誤ってメッセージ表示を行う可能性もある。
【０００８】
本発明は、上述の問題の少なくとも一つに鑑みて成されたものであり、装置の負荷や通信量を増大させることなく、待機ジョブを好適に実現する仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、例えば、受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを複数の外部装置から受信して処理可能な印刷装置であって、所定の外部装置から印刷ジョブを受信する受信手段と、前記受信手段によって受信した前記印刷ジョブが待機ジョブであるか否かを判定する判定手段と、前記受信手段によって受信した情報から前記印刷装置で印刷を実行するための画像情報を生成する生成手段と、前記生成手段によって画像情報が生成された際に、前記判定手段によって前記印刷ジョブが待機ジョブであると判定されていれば、印刷キューの先頭が該画像情報に対応する印刷ジョブである場合には、前記所定の外部装置に対して待機ジョブに関する通知を行い、前記印刷キューの先頭が該画像情報に対応する印刷ジョブでない場合には、前記印刷キューの先頭が該画像情報に対応する印刷ジョブとなるまで前記待機ジョブに関する通知を保留する制御手段とを備えることを特徴とする。
【００１０】
また、本発明は、情報処理装置であって、受信された後、給紙する前に印刷の開始指示を待機する待機ジョブを受信して処理可能な印刷装置に対して、該待機ジョブを送信する送信手段と、前記送信手段によって送信した待機ジョブのジョブＩＤを前記印刷装置から取得する取得手段と、前記印刷装置において当該待機ジョブの印刷準備が完了し、待機状態になったことを示す待機ジョブに関する通知を受信すると、該印刷装置から印刷キューの情報を取得し、該印刷キューの先頭が当該待機ジョブである場合には、前記印刷装置が待機状態であることを示す表示を表示部に行い、前記印刷キューの先頭が当該待機ジョブでない場合には、前記印刷装置が待機状態であることを示す表示を保留する制御手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、装置の負荷や通信量を増大させることなく、待機ジョブを好適に実現することができる。
【図面の簡単な説明】
【００１２】
【図１】一実施形態に係る印刷装置のシステム構成を示す図。
【図２Ａ】、
【図２Ｂ】一実施形態に係る印刷装置で用いるデータ構成を示す図。
【図３】一実施形態に係るホストのオフラインジョブ送信処理を示すフローチャート。
【図４】一実施形態に係る印刷装置のオフラインジョブ印刷処理を示すフローチャート。
【図５】一実施形態に係る印刷装置のジョブリスト返信処理を示すフローチャート。
【図６】一実施形態に係るタイミングチャートを示す図。
【図７】ジョブリストと印刷順を示す表。
【発明を実施するための形態】
【００１３】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確立されるのであって、以下の個別の実施形態によって限定されるわけではない。なお、実施形態に係る印刷装置である複合機（デジタル複合機／ＭＦＰ／Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）を例に説明する。しかしながら適用範囲は複合機に限定はせず、通信機能を有する画像処理装置であればよい。
【００１４】
＜第１の実施形態＞
＜印刷装置の構成＞
以下では、添付図面を参照して、本発明の第１の実施形態について説明する。まず、図１を参照して、本実施形態における印刷装置のシステム構成を説明する。
【００１５】
ホストＡ１０３やホストＢ１０４は、例えば、パーソナルコンピュータ（ＰＣ）などの情報処理装置（外部装置）であり、印刷装置１０２に対する画像情報の供給源として機能する。印刷装置１０２は、例えば、電子写真プリンタであり、スキャナ機能やＦＡＸ機能を有するものであってもよい。図１に示すように、印刷装置１０２は、ＵＩ部２０１、コントローラ２０２、プリンタエンジン２０３を備える。印刷装置１０２は、オフラインで印刷の開始を待機するオフラインジョブを複数の外部装置から受信して処理可能である。オフラインジョブは、例えば、複数の外部装置から入力される印刷ジョブで使用される用紙が異なる場合に有効である。オフラインジョブにおいて、印刷装置１０２は、当該ジョブの印刷データ（画像情報）を生成して印刷を実行する際にオフラインで待機する。そして、印刷装置１０２は、対応する外部装置や自装置の操作パネルにオフライン状態になったことや、所定の用紙を載置することを促すメッセージを通知する（オフライン通知）。当該ユーザは、これらのメッセージを確認し、印刷装置１０２へ出向き、所定の用紙を載置して印刷の開始指示を行い、印刷を実行することができる。ここで、オフラインジョブについて説明する。印刷指示する際、ユーザは印刷属性の設定方法の１つとして、例えば、プリンタが「オフラインになる」という設定と、「そのときに『Ａ３を手差しにセットしてください』というメッセージを表示する」という設定を行うことが可能である。ここで、「プリンタがオフライン状態である」とは、コンピュータープリンタとの接続が切り離され、データを受け取れない状態を含む。これらの設定がなされた印刷データをプリンタに送信した場合、プリンタが印刷直前にオフライン状態となり、上記設定ファイルで指定したメッセージがパネルに表示される。ユーザはプリンタの手差しトレイに用紙をセットして、操作パネル又はコピーボタンを介して特定のユーザによるＯＫ／キャンセル操作を行う。これがオフラインジョブと呼んでいるものである。ここで、オフラインジョブは、待機ジョブの一例である。オフラインジョブとは、前述のとおり給紙直前を含む給紙の前にメッセージ表示等して印刷処理を一時停止するジョブのことである。メッセージ表示等が行われた後、印刷用紙をデバイスに設置すると、デバイス操作画面やPC、モバイル端末から印刷装置１０２に対して再開操作を行うと、ジョブの印刷が再開される。
【００１６】
コントローラ２０２は、ホストＡ１０３やホストＢ１０４からＬＡＮ１０１を経由して供給される印刷ジョブデータ（例えば、ページ記述言語（以降、ＰＤＬと称する。））に基づいて、ページ毎にラスタデータを生成する。さらに、コントローラ２０２は、生成したラスタデータをプリンタエンジン２０３に送出する。プリンタエンジン２０３は、コントローラ２０２から供給されるラスタデータに基づいて、印刷装置１０２の感光ドラム上に潜像を形成し、その潜像を記録媒体上に転写・定着（電子写真方式）することにより画像を形成する。
【００１７】
ＵＩ部２０１は、ユーザインターフェースとして使用される。コントローラ２０２は、パネルＩ／Ｆ３０５を介してユーザからの所望の動作指示を受け付ける。また、コントローラ２０２は、ＵＩ部２０１を介して、印刷装置１０２の状態やユーザへの警告等をユーザに通知する。
【００１８】
＜コントローラの構成＞
引き続き、図１を参照して、コントローラ２０２の詳細構成について説明する。コントローラ２０２は、ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、ホストＩ／Ｆ３０４、パネルＩ／Ｆ３０５、エンジンＩ／Ｆ３０６、ＥＥＰＲＯＭ３０７、画像生成部３０８、及びＤＭＡ３０９を備える。これらの各部は、バス３１０を介して信号を相互に伝達することができる。
【００１９】
パネルＩ／Ｆ３０５は、ＵＩ部２０１とのデータ通信を行う。ＣＰＵ３０１は、パネルＩ／Ｆ３０５を介して、ユーザからのＵＩ部２０１を介した設定及び指示内容を受け付ける。ホストＩ／Ｆ３０４は、ＬＡＮ１０１を介してホストコンピュータ等のホストＡ１０３やホストＢ１０４と双方向に通信接続するためのインタフェースである。なお、ここでは、ローカル・エリア・ネットワーク介した接続例を示すが、本発明を限定することは意図しておらず、他のネットワーク等を介して接続されてもよい。また、有線接続でも無線接続でもよい。また、ルータ等の中継装置を介した接続であってもよく、Ｗｉ−Ｆｉダイレクト等により直接接続されてもよい。
【００２０】
画像生成部３０８は、ホストＩ／Ｆ３０４を介してホストから受信した印刷ジョブを印刷装置１０２内部で扱いやすいフォーマットであるビットマップ形式に変換する処理を行う。ＲＯＭ３０２は、本発明で説明する処理や、その他印刷装置１０２の行う制御プログラムコードが保持される。ＣＰＵ３０１がＲＡＭ３０３に格納するデータには、ホストＩ／Ｆ３０４を介して受信した印刷データや、印刷データから生成した印刷画像がある。また、ＲＡＭ３０３に格納するデータには、その他の処理に必要な一時的な各種処理ステータスやログ情報などがある。
【００２１】
エンジンＩ／Ｆ３０６は、プリンタエンジン２０３と通信接続するためのインタフェースである。ＣＰＵ３０１は、エンジンＩ／Ｆ３０６を介して、プリンタエンジン２０３の状態を認識することができる。ＤＭＡ３０９は、ダイレクト・アクセス・メモリ・コントローラである。ＣＰＵ３０１は、ＲＡＭ３０３内に格納されているビットマップデータを、ＤＭＡ３０９を介してエンジンＩ／Ｆ２０３に転送する。
【００２２】
ＣＰＵ３０１は、ＲＯＭ３０２に格納された制御プログラムコードに基づいて、バス３１０に接続されたデバイスを制御する。ＥＥＰＲＯＭ３０７は、印刷装置１０２の設定情報を保持するための不揮発性メモリである。ＣＰＵ３０１は、ホストＡ１０３やホストＢ１０４から受信したデータを印刷ジョブとしてＲＡＭ３０３に保存した上で印刷処理を実行する。さらに、ＣＰＵ３０１は、保存されている印刷ジョブをＲＡＭ３０３から消去したりする。バス３１０は、アドレスバス、データバス、及びコントロールバスを含む。３０１から３０９の各部は、それぞれバス３１０に接続されたすべてのデバイスにアクセスできる。
【００２３】
＜ホストのオフラインジョブ送信処理＞
次に、図２Ａ、図２Ｂ、及び図３を参照して、本実施形態に係るホストのオフラインジョブ送信処理を説明する。以下で説明する処理は、例えばホストＡ１０３のＣＰＵがＲＯＭやＨＤＤ等に予め格納された制御プログラムをＲＡＭに読み出して実行することにより実現される。
【００２４】
Ｓ１０１で、ホストＡ１０３のＣＰＵが、オフラインジョブの設定を行った印刷ジョブデータ５００をＬＡＮ１０１経由で印刷装置１０２へ送信する。図２Ａに示すように、印刷ジョブデータ５００は、ヘッダ部送信パケット５１０と、データ部送信パケット５２０とを含んで構成される。ヘッダ部送信パケット５１０には、印刷ジョブ全体に関わる設定値５１１〜５１３が格納されている。返信設定５１１には、返信パケットを送信するか否かを示す値が設定される。送信種別５１２には、例えばジョブの設定を示す値が設定される。オフラインジョブ５１３には、オフラインジョブであることを示す値が設定される。また、データ部送信パケット５２０には、ＰＤＬ言語で記述された画像データが格納されている。具体的には、データ部送信パケット５２０には、返信設定５２１に返信パケットを送信するか否かを示す値が設定され、送信種別５２２にデータ送信を示す値が設定される。また、データ部送信パケット５２０には、ジョブのデータであるデータ部５２３が含まれる。
【００２５】
Ｓ１０２で、ホストＡ１０３のＣＰＵは、印刷ジョブデータ５００を送信後、印刷装置１０２からＬＡＮ１０１を経由して返信パケット５１０を受信する。ホストＡ１０３のＣＰＵは、受信した返信パケット５１０を解析して、返信パケット５３０に含むジョブＩＤ５３２を抽出してＲＡＭ等に記憶する。図２Ａに示すように、返信パケット５３０には、送信種別５３１にジョブの設定を示す値が設定さ、ジョブＩＤ５３２に対象のジョブを識別するＩＤが含まれる。
【００２６】
Ｓ１０３で、ホストＡ１０３のＣＰＵは、印刷装置１０２からＬＡＮ１０１を経由して、印刷装置１０２がオフライン状態になったことを示す通知パケット７１０の受信を待つ。図２Ｂに示すように、オフライン状態を通知するための通知パケット７１０には、プリンタ状態通知７１１に当該通知パケットがプリンタ状態通知であることを示す値が含まれ、プリンタ状態７１２にプリンタの状態を示す値が含まれる。さらに、通知パケット７１０には、オフラインジョブがオフライン状態になったことを示す詳細ステータスコード７１３が含まれる。
【００２７】
印刷装置１０２がオフライン状態になったことを示す通知パケット７１０を受信すると、Ｓ１０４へ進む。Ｓ１０４で、ホストＡ１０３のＣＰＵは、印刷装置１０２からジョブリストを取得する。印刷装置１０２からジョブリストを取得するには、ホストＡ１０３が、返信設定６１１がＯＮでかつ送信種別６１２がジョブリスト取得を示す送信パケット６１０をＬＡＮ１０１経由で印刷装置１０２に送信することで実現する。ホストＡ１０３が、ジョブリスト取得を示す送信パケット６１０を送信した後、印刷装置１０２からＬＡＮ１０１を経由して返信パケット６２０を受信する。返信パケット６２０には、送信種別６２１と、印刷キューの順に並んだジョブＩＤのリスト６２２、６２３とが含まれる。
【００２８】
次に、Ｓ１０５で、ホストＡ１０３のＣＰＵは、Ｓ１０２で記憶したジョブＩＤとＳ１０４で取得した印刷キュー先頭のジョブＩＤを比較する。両者が合致すればＳ１０６へ進む。両者が合致しなければＳ１０３へ戻る。Ｓ１０６で、ホストＡ１０３のＣＰＵは、ホストＡ１０３の表示部へ印刷装置１０２がオフライン状態になったことを示すメッセージを表示し、処理を終了する。
【００２９】
＜印刷装置のオフラインジョブ印刷処理＞
次に、図４を参照して、本実施形態に係る印刷装置のオフラインジョブ印刷処理を説明する。以下で説明する処理は、例えば印刷装置１０２のＣＰＵ３０１がＲＯＭ３０２等に予め格納された制御プログラムをＲＡＭ３０３に読み出して実行することにより実現される。本フローチャートは、一つのジョブが受信されるたびごとに起動される。例えば、ジョブＡが受信されると図４に示すフローチャートの処理が一つ開始され、ジョブＢが受信されると別の処理として一つ開始される。但し、ジョブＢの処理工程がジョブＡの処理に追いついた場合、ジョブＡの処理が次に移るまで待機（一時停止）する。例えば、ジョブＡを受信後、ジョブＡの画像形成処理が重い場合、ジョブＢの画像形成処理は、ジョブＡの画像形成処理の完了を待って行う。ジョブＢがジョブＡを追い抜かして処理を実行することはここでは原則としてないものとする。これにより、通知パケット７１０等の誤送信を防止する。
【００３０】
Ｓ２０１で、ホストＡ１０３から送信された印刷ジョブデータ５００をホストＩ／Ｆ３０４を介して受信すると、ＣＰＵ３０１は、受信した印刷ジョブデータ５００をＲＡＭ３０３に保存する。続いて、Ｓ２０２で、印刷ジョブデータ５００をＲＡＭ３０３に保存した後に、ＣＰＵ３０１は、印刷ジョブデータ５００のヘッダ部の解析を行う。ヘッダ部送信パケット５１０にオフラインジョブの設定値５１３が含まれていた場合は、ＣＰＵ３０１は、ヘッダ部送信パケット５１０から取得したオフラインジョブか否かを示す設定値５１３と、印刷ジョブを特定するためのジョブＩＤとを紐づけてＲＡＭ３０３に保存する。そして、ＣＰＵ３０１が、印刷装置１０２内の他の印刷ジョブのジョブＩＤと重複しないような固有の番号を、当該印刷ジョブのジョブＩＤとして割り当てる。ジョブＩＤを割り当てると、ＣＰＵ３０１は、ＲＡＭ３０３に保存している印刷キューを具現化したジョブリストの最後に当該ジョブＩＤを追加する。
【００３１】
例えば、図７に示すように、当該印刷ジョブデータを受信する前のジョブリストが７０１であり、当該印刷ジョブのジョブＩＤが０００１であれば、ジョブリストは７０２となる。印刷ジョブデータ５００のヘッダ部の解析の結果、ＣＰＵ３０１は、ヘッダ部返信パケット５１０の返信設定５１１がＯＮであれば、当該ジョブＩＤを含んだ返信パケット５３０をホストＡ１０３へ送信する。
【００３２】
次に、Ｓ２０３で、印刷ジョブデータ５００のヘッダ部送信パケット５１０の解析の後、ＣＰＵ３０１は、印刷ジョブデータ５００のデータ部送信パケット５２０の解析を行う。印刷ジョブデータ５００のデータ部送信パケット５２０の解析の後、ＣＰＵ３０１は、ヘッダ部送信パケット５１０の解析結果とデータ部送信パケット５２０の解析結果に基づいて、印刷ジョブデータ５００の画像生成処理を実行し、印刷画像をＲＡＭ３０３に保存する。
【００３３】
印刷画像を生成すると、Ｓ２０４で、ＣＰＵ３０１は、ＲＡＭ３０３に保存されている当該印刷ジョブのオフラインジョブの設定値を参照して、当該印刷ジョブがオフラインジョブであるか否かを判断する。オフラインジョブであればＳ２０５に進み、オフラインジョブでなければＳ２０８に進む。
【００３４】
Ｓ２０５で、ＣＰＵ３０１は、ＲＡＭ３０３に保存しているジョブリストの先頭のジョブＩＤを参照して、当該印刷ジョブのジョブＩＤと合致するか確認する。例えば、参照したジョブリストが図７の７０２の状態であった場合、先頭のジョブＩＤは０００１である。ジョブリストの先頭のジョブＩＤと当該印刷ジョブのジョブＩＤとが合致すれば、当該印刷ジョブが印刷キューの先頭であると判断して、Ｓ２０６へ進む。一方、ジョブリストの先頭のジョブＩＤと当該印刷ジョブのジョブＩＤとが合致しなければ、当該印刷ジョブが印刷キューの先頭ではないと判断して、再びＳ２０５の判定へ進む。
【００３５】
Ｓ２０６で、ＣＰＵ３０１は、ホストＡ１０３に対してオフライン通知を行う。ここで、オフライン通知とは、印刷装置１０２において画像情報の生成など当該オフラインジョブの印刷準備が完了し、オフライン状態になったことを示す通知である。続いて、Ｓ２０７で、ＣＰＵ３０１は、ＵＩ部２０１にあるオフライン状態からオンライン状態へ移行させるオンラインキー（所定キー）の押下を検知すると、Ｓ２０８へ進む。オンラインキーの押下を検知できなかったら、再びＳ２０７へ進む。なお、本発明を上記オンラインキーの押下に限定する意図はなく、他のキーでもよい。例えば、印刷の開始指示を行うスタートキーでもよいし、ＵＩ部２０１に表示された選択可能な任意のソフトウェアキーでもよい。
【００３６】
Ｓ２０８で、ＣＰＵ３０１は、エンジンＩ／Ｆ３０６を経由して、プリンタエンジン２０３へ印刷開始の指示を行う。印刷開始の指示後、ＣＰＵ３０１は、ＤＭＡ３０９に対して、エンジンＩ／Ｆ３０６を経由して、プリンタエンジン２０３へＲＡＭ４０５に保存した印刷画像を出力するよう指示する。印刷が完了すると、Ｓ２０９で、ＣＰＵ３０１は、印刷キューから当該印刷ジョブの削除を行い、処理を終了する。つまり、印刷ジョブは、プリンタエンジン２０３へＲＡＭ４０５に保存した印刷画像を出力が完了するまで、印刷キューの先頭に存在することになる。裏を返すと、プリンタエンジン２０３へＲＡＭ４０５に保存した印刷画像の出力が完了したことに応じて、次点のジョブが先頭ジョブになることになる。
【００３７】
＜印刷装置のジョブリスト返信処理＞
次に、図５を参照して、本実施形態に係る印刷装置のジョブリスト返信処理を説明する。以下で説明する処理は、例えば印刷装置１０２のＣＰＵ３０１がＲＯＭ３０２等に予め格納された制御プログラムをＲＡＭ３０３に読み出して実行することにより実現される。
【００３８】
ホストＡ１０３からホストＩ／Ｆ３０４経由で送信された送信パケット６１０を受信すると、Ｓ３０１で、ＣＰＵ３０１は、受信した送信パケット６１０の解析を行う。送信パケット６１０に含まれる送信種別６１２がジョブリスト取得を示していれば、Ｓ３０２へ進む。
【００３９】
Ｓ３０２で、ＣＰＵ３０１は、ＲＡＭ３０３に保存されているジョブリストから返信パケット６２０を生成する。続いて、Ｓ３０３で、ＣＰＵ３０１は、生成した返信パケット６２０をホストＩ／Ｆ３０４経由でホストＡ１０３へ返信し、処理を終了する。
【００４０】
＜ジョブリストの更新タイミング＞
図６を参照して、本実施形態に係るジョブリストの更新タイミングの推移を説明する。なお、ここでは、各装置の処理等については、上述したフローチャート等で既に説明しているため詳細な説明を省略する。
【００４１】
区間１では、印刷装置１０２が印刷ジョブを１つも受け付けていない状態であるため、ジョブリストには何もない状態である（図７の７０１）。区間２では、印刷装置１０２がホストＡ１０３から印刷ジョブＡを受け付けて、ジョブＩＤ０００１を割り当てた状態である。印刷装置１０２には印刷ジョブＡだけ存在するため、ジョブリストにはジョブＩＤ０００１だけがある状態である（図７の７０２）。
【００４２】
区間３では、印刷ジョブＡが印刷完了する前に、印刷装置１０２がホストＢ１０４から印刷ジョブＢを受け付けて、ジョブＩＤ０００２を割り当てた状態である。印刷装置１０２は印刷ジョブＡ、印刷ジョブＢの順に印刷を行うため、ジョブリストにはジョブＩＤ０００１、ジョブＩＤ０００２が印刷順に並んでいる（図７の７０３）。
【００４３】
区間４では、印刷ジョブＡの印刷が完了しているが、印刷ジョブＢが印刷完了していないため、ジョブリストにはジョブＩＤ０００２だけがある状態である（図７の７０４）。区間５では、印刷ジョブＡ、印刷ジョブＢの両者の印刷が完了しているため、印刷キューには印刷ジョブがないため、区間１のとき同じ状態のジョブリストに戻る（図７の７０１）。
【００４４】
前述の状況で、印刷ジョブＡが画像生成を完了した時は、区間３に相当するため、ジョブリストの先頭は必ずオフライン状態の印刷ジョブＡとなる。このため、即座に印刷装置１０２がオフライン通知を行っても、ホストＡ１０３やホストＢ１０４はオフライン状態の印刷ジョブがどの印刷ジョブかを特定できる。即ち、各ホストが誤ってオフライン状態の印刷ジョブを認識することがない。
【００４５】
一方、前述の状況で、印刷ジョブＢが画像生成を完了した時も、区間３に相当する可能性がある。印刷ジョブＢにおいて画像生成の完了直後は、ジョブリストの先頭がオフライン状態の印刷ジョブとは限らない。つまり、印刷ジョブＢの画像生成時においても、まだ印刷ジョブＡの印刷が完了していない可能性があり、その場合には、ジョブリストの先頭は印刷ジョブＡのままである。このような場合において、本実施形態のフローによれば、前述の状況で、印刷ジョブＢにおける画像生成の完了直後は、ジョブリストの先頭が印刷ジョブＢではないため、印刷装置１０２はオフライン通知を保留する（Ｓ２０５）。
【００４６】
その後、印刷ジョブＡが完了すると、ジョブリストの先頭が印刷ジョブＢとなるため、印刷装置１０２はオフライン通知を行う（Ｓ２０６）。この場合、印刷ジョブＡの完了後は、区間４に相当するため、ジョブリストの先頭は必ずオフライン状態の印刷ジョブＢとなる。このため、ホストＡ１０３やホストＢ１０４はオフライン状態の印刷ジョブがどの印刷ジョブかを特定することができる。
【００４７】
以上説明したように、本実施形態に係る印刷装置は、オフラインで印刷の開始を待機（一時停止）するオフラインジョブを複数の外部装置から受信して処理可能である。本印刷装置は、所定の外部装置から印刷ジョブを受信し、受信した印刷ジョブがオフラインジョブであるか否かを判定し、受信した情報から印刷装置で印刷を実行するための画像情報を生成する。また、本印刷装置は、画像情報を生成した際に、印刷ジョブがオフラインジョブであると判定されていれば、印刷キューの先頭が画像情報に対応する印刷ジョブである場合には、所定の外部装置にオフライン通知を行う。一方、印刷キューの先頭が画像情報に対応する印刷ジョブでない場合には、印刷キューの先頭が画像情報に対応する印刷ジョブとなるまでオフライン通知を保留する。これにより、プリンタがホストへオフラインを通知タイミングにおいては、印刷キューの先頭は必ずオフライン状態のオフラインジョブとなる。この結果、ホストはオフライン通知を受信した後に印刷キューを確認すれば、通信量を増やさずに、自身が送信したジョブがオフライン状態か否かの判定が可能となる。即ち、本実施形態によれば、装置の負荷や通信量を増大させることなく、待機ジョブを好適に実現することができる。
【００４８】
また、本情報処理装置は、オフラインで印刷の開始を待機するオフラインジョブを受信して処理可能な印刷装置に対して、オフラインジョブを送信し、送信したオフラインジョブのジョブＩＤを印刷装置から取得する。本情報処理装置は、印刷装置において当該オフラインジョブの印刷準備が完了し、オフライン状態になったことを示すオフライン通知を受信すると、印刷装置から印刷キューの情報を取得する。さらに、本情報処理装置は、印刷キューの先頭が当該オフラインジョブである場合には、印刷装置がオフライン状態であることを示す表示を表示部に行う。一方、印刷キューの先頭が当該オフラインジョブでない場合には、印刷装置がオフライン状態であることを示す表示を保留する。このように、情報処理装置においても、印刷キューとの整合性を判断することにより、装置の負荷や通信量を増大させることなく、待機ジョブを好適に実現することができる。
【００４９】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５０】
１０１：ＬＡＮ、１０２：印刷装置、１０３：ホストＡ、１０４：ホストＢ、２０１：ＵＩ部、２０２：コントローラ、２０３：プリントエンジン、３０１：ＣＰＵ、３０２：ＲＯＭ、３０３：ＲＡＭ、３０４：ホストＩ／Ｆ、３０５：パネルＩ／Ｆ、３０６：エンジンＩ／Ｆ、３０７：ＥＥＰＲＯＭ、３０８：画像生成部、３０９：ＤＭＡ、３１０：バス
【図１】
2019206146.tif 000003
【図２Ａ】
2019206146.tif 000004
【図２Ｂ】
2019206146.tif 000005
【図３】
2019206146.tif 000006
【図４】
2019206146.tif 000007
【図５】
2019206146.tif 000008
【図６】
2019206146.tif 000009
【図７】
2019206146.tif 000010