(57)【要約】【課題】クラウドプリントサービスにおいて、ジョブの実行中に画像形成装置がジョブの実行を停止した場合であっても、再開した際に他のジョブとの実行順序を好適に制御する仕組みを提供する。【解決手段】本画像形成システムのサーバは、外部装置からジョブを受け付け、受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する。一方、本画像形成装置は、サーバからジョブの提供を受け付けると、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されているか否かを判定し、格納手段に当該ジョブの識別情報が格納されていると判定手段によって判定されると、ジョブの提供を受け付けず、格納手段に当該ジョブの識別情報が格納されていないと判定手段によって判定されると、ジョブの提供を受け付け、サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、格納手段に当該ジョブを示す識別情報を格納する。【選択図】  図８
2018005528.tif 000002
【特許請求の範囲】
【請求項１】
画像形成ジョブを管理するサーバと、画像形成ジョブを実行する画像形成装置とを含む画像形成システムであって、
前記サーバは、
外部装置からジョブを受け付ける受付手段と、
前記受付手段によって受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する管理手段と
を備え、
前記画像形成装置は、
開始された画像形成が未完了のジョブを示す識別情報を格納する格納手段と、
前記サーバからジョブの提供を受け付けると、前記格納手段に当該ジョブの識別情報が格納されているか否かを判定する判定手段と、
前記格納手段に当該ジョブの識別情報が格納されていると前記判定手段によって判定されると、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていないと前記判定手段によって判定されると、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納する制御手段と
を備えることを特徴とする画像形成システム。
【請求項２】
前記制御手段は、前記受け付けたジョブの画像形成が完了すると、前記格納手段に格納した、対応する識別情報を削除するとともに、ジョブの完了を前記サーバに通知することを特徴とする請求項１に記載の画像形成システム。
【請求項３】
前記管理手段は、
前記外部装置から受け付けたジョブを対応する画像形成装置へ提供した際に、当該ジョブの状態情報をジョブ受付済みに変更し、
前記画像形成装置から当該ジョブに関するデータが取得されると、当該ジョブの状態情報を処理中に変更し、
前記画像形成装置から当該ジョブの画像形成が完了したことを示す通知を受けると、当該ジョブの状態情報を印刷済みに変更し、当該ジョブに関するデータを削除することを特徴とする請求項１又は２に記載の画像形成システム。
【請求項４】
前記制御手段は、
ユーザ操作によって前記画像形成装置のジョブ状況を確認するための画面の表示を受けると、当該画面を表示するとともに、前記サーバが管理している前記画像形成装置のジョブリストを取得し、該ジョブリストの中に状態情報が処理中のジョブが有れば当該ジョブに関するデータを前記サーバから取得して画像形成の実行を開始することを特徴とする請求項３に記載の画像形成システム。
【請求項５】
前記制御手段は、
前記ジョブリストを取得した際に、該ジョブリストの中に状態情報が処理中のジョブが無く、かつ、状態情報がジョブ受付済みのジョブがあれば、当該ジョブに関するデータを前記サーバから取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納することを特徴とする請求項４に記載の画像形成システム。
【請求項６】
前記制御手段は、前記ユーザ操作によって前記画像形成装置のジョブ状況を確認するための画面の表示を受けると、前記格納手段に所定のジョブの識別情報が格納されていれば、前記ジョブリストを前記サーバから取得することを特徴とする請求項４又は５に記載の画像形成システム。
【請求項７】
前記格納手段は、不揮発性メモリであることを特徴とする請求項１乃至６の何れか１項に記載の画像形成システム。
【請求項８】
画像形成ジョブを管理するサーバと通信可能な、画像形成ジョブを実行する画像形成装置であって、
開始された画像形成が未完了のジョブを示す識別情報を格納する格納手段と、
前記サーバからジョブの提供を受け付けると、前記格納手段に当該ジョブの識別情報が格納されているか否かを判定する判定手段と、
前記格納手段に当該ジョブの識別情報が格納されていると前記判定手段によって判定されると、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていないと前記判定手段によって判定されると、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納する制御手段と
を備えることを特徴とする画像形成装置。
【請求項９】
画像形成ジョブを実行する画像形成装置と通信可能な、画像形成ジョブを管理するサーバであって、
外部装置からジョブを受け付ける受付手段と、
前記受付手段によって受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する管理手段と
を備え、
前記画像形成装置は、
前記サーバからジョブの提供を受け付けた際に、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されていれば、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていなければ、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納することを特徴とするサーバ。
【請求項１０】
画像形成ジョブを管理するサーバと、画像形成ジョブを実行する画像形成装置とを含む画像形成システムの制御方法であって、
前記サーバにおいて、
外部装置からジョブを受け付ける受付工程と、
前記受付工程で受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する管理工程と
を実行し、
前記画像形成装置において、
前記サーバからジョブの提供を受け付けると、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されているか否かを判定する判定工程と、
前記格納手段に当該ジョブの識別情報が格納されていると判定されると、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていないと判定されると、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納する制御工程と
を実行することを特徴とする画像形成システムの制御方法。
【請求項１１】
画像形成ジョブを管理するサーバと通信可能な、画像形成ジョブを実行する画像形成装置の制御方法であって、
前記サーバからジョブの提供を受け付けると、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されているか否かを判定する判定工程と、
前記格納手段に当該ジョブの識別情報が格納されていると前記判定手段によって判定されると、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていないと前記判定手段によって判定されると、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納する制御工程と
を実行することを特徴とする画像形成装置の制御方法。
【請求項１２】
画像形成ジョブを実行する画像形成装置と通信可能な、画像形成ジョブを管理するサーバの制御方法であって、
外部装置からジョブを受け付ける受付工程と、
前記受付工程で受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する管理工程と
を実行し、
前記画像形成装置は、
前記サーバからジョブの提供を受け付けた際に、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されていれば、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていなければ、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納することを特徴とするサーバの制御方法。
【請求項１３】
画像形成ジョブを管理するサーバと通信可能な、画像形成ジョブを実行する画像形成装置の制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記方法は、
前記サーバからジョブの提供を受け付けると、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されているか否かを判定する判定工程と、
前記格納手段に当該ジョブの識別情報が格納されていると判定されると、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていないと判定されると、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納する制御工程と
を実行することを特徴とするプログラム。
【請求項１４】
画像形成ジョブを実行する画像形成装置と通信可能な、画像形成ジョブを管理するサーバの制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記方法は、
外部装置からジョブを受け付ける受付工程と、
前記受付工程で受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する管理工程と
を実行し、
前記画像形成装置は、
前記サーバからジョブの提供を受け付けた際に、格納手段に当該ジョブの開始された画像形成が未完了であることを示す識別情報が格納されていれば、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていなければ、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウドプリントサービスに対応した画像形成システム、画像形成装置、サーバ、それらの制御方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、複写機、プリンタなどの事務機器でクラウドプリントサービスに対応した機器が増えてきている。クラウドプリントサービスとは、ユーザがスマートフォン（以下、スマフォと略記する。）等の携帯端末にある画像データをクラウドサーバにアップロードし、当該データを遠隔にある画像形成装置に印刷指示することを可能とした技術である。また、クラウドプリントサービスでは、クラウドサーバ上に保持されたデータを遠隔にある画像形成装置に印刷指示したりすることも可能である。
【０００３】
当該サービスのプリント時においては、プリンタドライバを一切必要とせず、直接デスクトップやモバイルアプリケーションから、公知で汎用的な画像フォーマットを介して、あらゆるプリンタへ（プリンタを製造したメーカーを問わず）送信することができる。画像フォーマットには、例えば、ＩＳＯ３２０００−１で国際標準となっているＰＤＦ（Ｐｏｒｔａｂｌｅ Ｄｏｃｕｍｅｎｔ Ｆｏｒｍａｔ）フォーマットといった標準的なデータ形式が含まれる。また、ＩＥＥＥの標準化部会の１つであるＰＷＧ（Ｐｒｉｎｔｅｒ Ｗｏｒｋｉｎｇ Ｇｒｏｕｐ）で標準化されているＰＷＧ−Ｒａｓｔｅｒフォーマットも含まれる。
【０００４】
また、クラウドサーバ上のジョブは、Ｑｕｅｕｅｄ（＝ジョブ受付済み）／ＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）／Ｄｏｎｅ（＝印刷済み）などの状態で保持し管理される。クラウドサーバ上にＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）状態のジョブがあれば、画像形成装置が能動的にそのジョブを取得して印刷し、Ｄｏｎｅ（＝印刷済み）状態にすることが求められている。ジョブの印刷順番を保障する一例として、特許文献１には、ジョブの印刷属性などを有するジョブチケットなどに印刷順番を埋め込み、画像形成装置がジョブチケットの内容を解釈して、事前に決められた順番に従って印刷する処理が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５６５４８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来技術には以下に記載する課題がある。例えば、印刷途中の画像形成装置の電源ＯＦＦや、ネットワークケーブルの外れなどで画像形成装置とクラウドサーバとの間のネットワークが切断されると、クライアントサーバ上に「処理中（＝ＩｎＰｒｏｇｒｅｓｓ）」のままのジョブが保持されることになる。この「処理中（＝ＩｎＰｒｏｇｒｅｓｓ）」のジョブは、画像形成装置が自動的に再印刷する必要があるが、その処理中のジョブを印刷するより前に、画像形成装置が別の新規ジョブを受け付け、この受け付けた新規ジョブの印刷途中で何かしらのエラーが発生すると、クラウドサーバ上に「処理中（＝ＩｎＰｒｏｇｒｅｓｓ）」のジョブが複数存在する状況に成りうる。このような場合、いずれのジョブを最初に印刷すべきかの判断ができなくなるという問題が生じる。さらに、ジョブを複数に分割し、分割したジョブの印刷順番をジョブチケット等のジョブとは異なる別の情報で紐づけるようにしてしまうと、分割されたジョブの一部削除ができなくなるなどの制約が生じ、システム運用において柔軟性に欠けるという問題がある。
【０００７】
本発明は、上述の問題に鑑みて成されたものであり、クラウドプリントサービスにおいて、ジョブの実行中に画像形成装置がジョブの実行を停止した場合であっても、再開した際に他のジョブとの実行順序を好適に制御する仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、画像形成ジョブを管理するサーバと、画像形成ジョブを実行する画像形成装置とを含む画像形成システムであって、前記サーバは、外部装置からジョブを受け付ける受付手段と、前記受付手段によって受け付けたジョブの状態情報を管理するとともに、対応する画像形成装置からの要求に応じてジョブを提供する管理手段とを備え、前記画像形成装置は、開始された画像形成が未完了のジョブを示す識別情報を格納する格納手段と、前記サーバからジョブの提供を受け付けると、前記格納手段に当該ジョブの識別情報が格納されているか否かを判定する判定手段と、前記格納手段に当該ジョブの識別情報が格納されていると前記判定手段によって判定されると、前記ジョブの提供を受け付けず、前記格納手段に当該ジョブの識別情報が格納されていないと前記判定手段によって判定されると、前記ジョブの提供を受け付け、前記サーバから当該ジョブに関するデータを取得して画像形成の実行を開始し、前記格納手段に当該ジョブを示す識別情報を格納する制御手段とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、クラウドプリントサービスにおいて、ジョブの実行中に画像形成装置がジョブの実行を停止した場合であっても、再開した際に他のジョブとの実行順序を好適に制御することができる。
【図面の簡単な説明】
【００１０】
【図１】一実施形態に係る画像形成システムの全体構成の一例を示す図。
【図２】一実施形態に係る画像形成装置１のハードウェア構成を示すブロック図。
【図３】一実施形態に係るクラウドサーバ２及び端末３のハードウェア構成を示すブロック図。
【図４】一実施形態に係る画像形成装置１のソフトウェア構成を示すブロック図。
【図５】一実施形態に係るクラウドサーバ２のソフトウェア構成を示すブロック図。
【図６】一般的なクラウドプリントのシーケンスの一例を示す図。
【図７】一実施形態に係る画像形成システムにおける処理手順を示すシーケンス図。
【図８】一実施形態に係るクラウドプリント１００３が行う印刷処理手順を示すフローチャート。
【図９】一実施形態に係るジョブ通知Ｓ１００３及び図８のＳ３００６、Ｓ３０２３の印刷中情報の一例を示す図。
【図１０】一実施形態に係るジョブリスト返却Ｓ１００５の一例を示す図。
【図１１】複数の処理中のジョブが溜まる原因を説明する図。
【図１２】一実施形態に係る画像形成装置１に表示するジョブ状況画面を示す図。
【図１３】一実施形態に係る画像形成装置１において受けた通知を判定する処理手順を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１２】
＜システム構成＞
以下では、本発明の一実施形態について説明する。まず、図１を参照して、本実施形態に係るクラウドプリントサービスを提供する画像形成システムの構成例について説明する。画像形成システムは、クラウドサーバ２、移動型の端末３（以下、端末３と称する。）、及び画像形成装置１を含んで構成される。
【００１３】
端末３は、無線ＬＡＮ７を介して無線アクセスポイント５に通信可能に接続される。その他の各装置は、有線ＬＡＮ６を介してインターネット４に通信可能に接続される。なお、本実施形態では、クラウドサーバ２を、１台の構成としているが、複数台で構成してもよく、複数のサーバで、後述する図３のクラウドプリントサービスを実現するものでもよい。また、画像形成システムを構成する各装置は、インターネット４を介して通信可能に接続可能であり、互いにデータ通信することができる。さらに、端末３と画像形成装置１とは、インターネット４を介さずとも通信可能に接続可能となっている。また、端末３と、画像形成装置１とは複数台配置されていてもよい。
【００１４】
＜画像形成装置のハードウェア構成＞
次に、図２を参照して、本実施形態に係る画像形成装置１のハードウェア構成の一例について説明する。画像形成装置１は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、プリンタＩ/Ｆ１０４、スキャナＩ/Ｆ１０５、操作部Ｉ/Ｆ１０６、及び通信Ｉ/Ｆ１０７を備える。また、画像形成装置１は、プリンタ１０８、スキャナ１０９、操作部１１０、及び、有線ＬＡＮ１１１、無線ＬＡＮ１１２といったＮＩＣを備える。なお、ＣＰＵは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称である。ＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。ＲＯＭは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略称である。ＮＩＣは、Ｎｅｔｗｏｒｋ ｉｎｔｅｒｆａｃｅ ｃｏｎｔｒｏｌｌｅｒの略称である。
【００１５】
ＣＰＵ１０１は、画像形成装置１全体の動作を制御する。ＣＰＵ１０１は、ＲＯＭ１０３に記憶されているプログラムを必要に応じてＲＡＭ１０２に読み出して実行し、システムバス１１３に接続される各デバイスを総括的に制御する。ＲＡＭ１０２は、ＣＰＵ１０１の主メモリ、ワークエリア等として機能すると共に、画像情報の蓄積領域としても用いられる。ＲＯＭ１０３は、各種フォント、ＣＰＵ１０１により実行される制御プログラム等、及び各種データを記憶する。このＲＯＭ１０３は、ＮＶＲＡＭ（Ｎｏｎ−ｖｏｌａｔｉｌｅ  ＲＡＭ：不揮発性ＲＡＭ）領域も備えており、クラウドプリントサービスによる印刷実行途中に、突然の電源ＯＦＦが発生した場合も、容易に再印刷することができるように構成されている。
【００１６】
プリンタＩ/Ｆ１０４は、プリンタエンジンであるプリンタ１０８とのインタフェースを制御する。スキャナＩ/Ｆ１０５は、スキャナエンジンであるスキャナ１０９とのインタフェースを制御する。操作部Ｉ/Ｆ１０６は、画像形成装置１の各種設定を行うための操作部１１０とのインタフェースを制御する。なお、図２では詳細を図示しないが、入力装置としてのキーボードや表示装置としてのディスプレイを備えるものとする。
【００１７】
通信Ｉ/Ｆ１０７は、有線ＬＡＮ１１１、無線ＬＡＮ１１２といったＮＩＣの通信を制御する。有線ＬＡＮ１１１、及び無線ＬＡＮ１１２は、有線ＬＡＮ６や無線ＬＡＮ７との接続Ｉ/Ｆであり、クラウドサーバ２や端末３との間でのデータの送受信を制御する。通信Ｉ/Ｆ１０７は、ウェブサービスプロトコルなど実施環境に適した実装を備える。
【００１８】
ＣＰＵ１０１は、ＲＯＭ１０３等に記憶されているプログラムを必要に応じてＲＡＭ１０２に読み出し、実行するとしたが、クラウドサーバ２に記録されたプログラムを、ＲＡＭ１０２にロードし、ＣＰＵ１０１が実行することにしてもよい。
【００１９】
＜クラウドサーバ及び端末のハードウェア構成＞
次に、図３を参照して、本実施形態に係るクラウドサーバ２、及び端末３のハードウェア構成の一例について説明する。クラウドサーバ２及び端末３は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、外部メモリＩ/Ｆ２０４、操作部Ｉ/Ｆ２０５、及び通信Ｉ/Ｆ２０６を備える。
【００２０】
ＣＰＵ２０１は、記憶部であるＲＯＭ２０３に記憶されているプログラムを必要に応じてＲＡＭ２０２に読み出して実行することにより、システムバス２１１に接続される各デバイスを総括的に制御する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＲＯＭ２０３は、各種プログラム及びデータを格納する。
【００２１】
外部メモリＩ/Ｆ２０４は、例えばフラッシュメモリ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ）等の外部メモリ２０７とのアクセスを制御する。外部メモリ２０７は、保存又は読み取り可能な記憶媒体として機能し、オペレーティングシステム（ＯＳ）、Ｗｅｂブラウザ、及びアプリケーションが記憶される。アプリケーション、及び各モジュール（ソフトウェア）のプログラムは外部メモリ２０７に記憶され、必要に応じてＲＡＭ２０２に読み出され、ＣＰＵ２０１により実行される。これにより、アプリケーション、又は各モジュール（ソフトウェア）の機能を実現する
操作部Ｉ/Ｆ２０５は、操作部２０８からの入力を制御する。なお、本図では詳細を図示しないが、入力装置としてのキーボードや表示装置としてのディスプレイを備えるものとする。通信Ｉ/Ｆ２０６は、有線ＬＡＮ２０９、無線ＬＡＮ２１０といったＮＩＣの通信を制御する。有線ＬＡＮ２０９は無線ＬＡＮと、無線ＬＡＮ２１０は有線ＬＡＮ６との接続Ｉ/Ｆであり、クラウドサーバ２や端末３との間でのデータの送受信を制御する。通信Ｉ/Ｆ２０６は、ウェブサービスプロトコルなど実施環境に適した実装を備える。
【００２２】
本実施形態で説明する処理は、外部メモリ２０７に記録されたプログラムをＲＡＭ２０２にロードし、ＣＰＵ２０１実行させることも可能な構成である。
【００２３】
＜画像形成装置のソフトウェア構成＞
次に、図４を参照して、画像形成装置１のコントローラ１０におけるソフトウェア構成について説明する。画像形成装置１は、ソフトウェア構成として、ユーザインタフェース（ＵＩ）１００１と、ジョブ制御部１００２と、ネットワークスタック１００４のモジュールとを備える。さらに、ジョブ制御部１００２は、クラウドプリント（Ｃｌｏｕｄ  Ｐｒｉｎｔ）処理部１００３のタスクを含む。それぞれのモジュールやタスクは、図２のＲＯＭ１０３に保存されたプログラムから構成され、それらプログラムが、ＣＰＵ１０１により処理されることで実現される。ＣＰＵ１０１は、図４には記載していないが、コントローラ１０全体の動作を管理する。
【００２４】
ＵＩ１００１は、操作部Ｉ/Ｆ１０６により制御される操作部１１０を介して、コントローラ１０の制御に必要な各種情報の入出力を行う。ネットワークスタック１００４は、ＴＣＰ／ＩＰをはじめ、ＸＭＰＰやＨＴＴＰといったネットワークプロトコルの制御を行うと共に、通信Ｉ／Ｆ１０７を介して、クラウドサーバ２や端末３との通信を実現する。
【００２５】
プリンタＩ／Ｆ１０４及びプリンタ１０８は、図２を用いて説明したため説明を省略する。なお、クラウドプリント（Ｃｌｏｕｄ  Ｐｒｉｎｔ）処理部１００３は、後述する図８におけるフローチャートの処理を制御する。さらに、クラウドプリント処理部１００３は、通信Ｉ/Ｆ１０７を介して受け取ったジョブ情報を用いて、後述するクラウドプリントのシーケンスを実行し、プリンタＩ/Ｆ１０４を介して、プリンタ１０８に印刷を行わせる。
【００２６】
＜クラウドサーバのソフトウェア構成＞
次に、図５を参照して、本実施形態に係るクラウドサーバ２の印刷サービス２０のソフトウェア構成について説明する。なお、以下で説明するソフトウェア構成は、本実施形態ではクラウドサーバ２で実現する構成として説明するが、本発明はこれに限定されず、一部の機能を端末３が有するように構成してもよい。
【００２７】
印刷サービス２０は、クラウドプリントサービス２０００と、ネットワークスタック２００３のモジュールとを備え、後述する図７のフローチャートの処理を制御する。クラウドプリントサービス２０００は、プリンタ（画像形成装置）制御部２００１、及び印刷ジョブ制御部２００２を含んで構成される。それぞれのモジュールやタスクは、クラウドサーバ２のＲＯＭ２０３に保存されたプログラムから構成され、各々のプログラムがＣＰＵ２０１により処理されることで実現される。
【００２８】
プリンタ（画像形成装置）制御部２００１は、画像形成装置であるプリンタの能力やＩＰアドレスなどを管理する。また、アップロードされた印刷ジョブ（画像形成ジョブ）に紐づけられた画像形成装置へ、ジョブ生成の通知や画像形成装置毎のジョブリストの管理等を行う。印刷ジョブ制御部２００２は、ジョブ情報のアップロード（蓄積保存）や、画像形成装置にジョブ情報をダウンロードする部分であり、ジョブの状態管理等を行う。ネットワークスタック２００３は、ＴＣＰ／ＩＰをはじめ、ＸＭＰＰやＨＴＴＰといったネットワークプロトコルの制御を行い、インターネット４を介して、画像形成装置１との通信を実現する。
【００２９】
＜シーケンス＞
次に、図６を参照して、本実施形態に係るクラウドプリントのシーケンスの一例について説明する。特に、本実施形態では、Ｇｏｏｇｌｅ（登録商標）が公開しているＧｏｏｇｌｅ  Ｃｌｏｕｄ  Ｐｒｉｎｔをベースにクラウドプリントのシーケンスを説明する。
【００３０】
まず、Ｓ１００１で、端末３は、印刷する画像情報と印刷させる画像形成装置が紐付けられた印刷ジョブをクラウドサーバ２へ印刷要求（アップロード）する。その後、Ｓ１００２で、クラウドサーバ２は、アップロードの完了を待ってジョブの状態をＱｕｅｕｅｄ（＝ジョブ受付済み）に設定する。ここでは、例えば、対応するジョブの状態情報を示すフラグに対応する値を設定することにより実現してもよい。続いて、Ｓ１００３で、クラウドサーバ２は、Ｓ１００１でアップロードされたジョブ情報の印刷先である画像形成装置１へ当該ジョブを通知する。
【００３１】
Ｓ１００４で、ジョブ通知を受け取った画像形成装置１は、クラウドサーバ２に対して、当該画像形成装置１に紐付けられたジョブのジョブリストを要求する。Ｓ１００５で、クラウドサーバ２は、ジョブリストを要求した画像形成装置１が印刷すべきジョブの一覧を画像形成装置１に返却する。
【００３２】
Ｓ１００６で、画像形成装置１は、Ｓ１００５で取得したジョブリストの中にＳ１００３で通知されたジョブの有無を確認し、該当ジョブの情報のダウンロードをクラウドサーバ２に要求する。Ｓ１００７で、クラウドサーバ２は、該当のジョブ情報を画像形成装置１へダウンロードする。ジョブ情報の画像形成装置１へのダウンロードを全て完了すると、Ｓ１００８で、クラウドサーバ２は、ダウンロードが完了したジョブの状態をＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）に変更する。当該状態は、当該ジョブが印刷処理中であること、即ち、当該ジョブの開始された画像形成が未完了であることを示す。
【００３３】
Ｓ１００９で、画像形成装置１は、Ｓ１００７でダウンロードしたジョブ情報を用いて印刷を実行する。画像形成装置１は、印刷が完了すると、Ｓ１０１０で、クラウドサーバ２に印刷の完了とジョブ情報の削除を依頼する。その後、Ｓ１０１１で、クラウドサーバ２は、画像形成装置１から完了通知されたジョブの状態をＤｏｎｅ（＝印刷済み）に変更し、印刷データを削除する。当該状態は、当該ジョブの開始された画像形成が完了したことを示す。
【００３４】
Ｓ１０１２で、クラウドサーバ２は、Ｓ１００１でアップロードされたジョブが、指示された該当の画像形成装置にて印刷が完了されたことを端末３に通知し、当該シーケンスを終了する。本シーケンスは、一例であり、ジョブの状態は画像形成装置の指示で変更するようにしてもよい。また、ジョブと画像形成装置の紐づけは、端末側で行う処理としたが、サーバ側で行うようにしてもよい。さらに、図６の例では、画像形成装置１とクラウドサーバ２と端末３からなる構成を例に説明したが、端末３の能力アップが進むことが容易に想像できるため、端末３にクラウドサーバ２の少なくとも一部の機能を持たせる構成にしてもよい。
【００３５】
＜処理手順＞
次に、図７を参照して、本実施形態におけるクラウドサーバ２のクラウドプリントサービス２０００における処理手順について説明する。以下で説明する処理は、クラウドプリントサービス２０００を構成するプログラムを、ＣＰＵ２０１が実行することで実現される処理である。
【００３６】
まず、Ｓ２００１で、ＣＰＵ２０１は、外部装置から要求を受け付け、端末３からクラウドサーバ２への印刷要求（ジョブのアップロード）であるか否かを判定する。印刷要求であればＳ２００２に進み、そうでなければＳ２００６に進む。
【００３７】
Ｓ００２で、ＣＰＵ２０１は、端末３からの印刷データを受信し、受信した情報をメモリ等に格納する。続いて、Ｓ２００３に進み、ＣＰＵ２０１は、ジョブのアップロードが完了したか否かを判定する。完了したと判定するとＳ２００４に進み、そうでない場合はＳ２００３の判定を定期的に繰り返す。
【００３８】
Ｓ２００４で、ＣＰＵ２０１は、ジョブの受け付け順の情報を保持し、端末３からアップロード要求のあったジョブの状態をＱｕｅｕｅｄ（＝ジョブ受付済み）に設定する。ここでは、例えば、ジョブの状態情報を示すフラグにジョブ受付済みを示す値を設定する。なお、以下で説明するジョブの状態の変更処理についても同様に対応する値をフラグに設定する処理としてもよい。その後、Ｓ２００５で、ＣＰＵ２０１は、端末３が印刷指示した画像形成装置１にジョブが生成されたことを通知して、本処理を終了する。
【００３９】
一方、Ｓ２００１で外部装置からの要求がジョブアップロードでなかった場合は、Ｓ２００６に進み、ＣＰＵ２０１は、画像形成装置１からのジョブのダウンロード要求であるか否かを判定する。ジョブのダウンロード要求であればＳ２００７へ進み、そうでなければＳ２０１０に進む。
【００４０】
Ｓ２００７で、ＣＰＵ２０１は、Ｓ２００２で端末３からアップロードされた印刷データを、画像形成装置１にダウンロード（転送）する。本実施形態では、Ｓ２００２でアップロードした印刷データを画像変換せずに、Ｓ２００７でダウンロードする構成としたが、クラウドサーバ２が、画像形成装置１の処理できる画像形式に変換し、変換結果を画像形成装置１にダウンロードする構成としてもよい。
【００４１】
次に、Ｓ２００８で、ＣＰＵ２０１は、ジョブのダウンロードが完了したか否かを判定する。完了していればＳ２００９に進み、そうでなければＳ２００８の判定を定期的に繰り返す。Ｓ２００９で、ＣＰＵ２０１は、ジョブの状態をＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）に変更した後、本処理を終了する。
【００４２】
Ｓ２００６で画像形成装置１からのダウンロード要求でないと判定すると、Ｓ２０１０に進み、ＣＰＵ２０１は、画像形成装置１からの印刷完了通知か否かを判定する。印刷完了通知であればＳ２０１１進み、そうでない場合はＳ２０１３に進む。Ｓ２０１１で、ＣＰＵ２０１は、ジョブの状態をＤｏｎｅ（＝印刷済み）に変更する。続いて、Ｓ２０１２で、ＣＰＵ２０１は、該当ジョブの削除処理を行い、本処理を終了する。例えば、ここでは、ＣＰＵ２０１は、該当するジョブの実データを削除する。
【００４３】
Ｓ２０１０でジョブの完了通知でないと判定すると、Ｓ２０１３に進み、ＣＰＵ２０１は、画像形成装置１からのジョブリストの要求か否かを判定する。ジョブリストの要求であればＳ２０１４に進み、そうでなければＳ２０１５に進む。Ｓ２０１４で、ＣＰＵ２０１は、ジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブを先頭に、Ｑｕｅｕｅｄ（＝ジョブ受付済み）なジョブを受付順にリスト化した情報を画像形成装置１に渡し、本処理を終了する。一方、Ｓ２０１３でジョブリストの要求で無かった場合は、Ｓ２０１５に進み、ＣＰＵ２０１は、その他の処理を実行した後、本処理を終了する。
【００４４】
上記Ｓ２０１５のその他の処理の一例としては、Ｓ２００５のジョブの生成通知に対して画像形成装置１からの応答がある一定時間の間に貰えなかった場合に、再度、ジョブの生成通知を画像形成装置１に通知する等である。この場合、外部装置からの要求ではなく、画像形成装置１からのエラー通知や内部で発生したタイムアウトイベントとなる。
【００４５】
次に、図８を参照して、本実施形態における画像形成装置１のクラウドプリント（Ｃｌｏｕｄ  Ｐｒｉｎｔ）処理部１００３が行う処理手順について説明する。以下で説明する処理は、クラウドプリント処理部１００３を構成するプログラムを、ＣＰＵ１０１が実行することで実現される処理である。なお、図８において、点線で示す処理ボックスは、クラウドサーバ２で行われる処理を示すものである。
【００４６】
まず、Ｓ３００１で、ＣＰＵ１０１は、クラウドサーバ２から画像形成装置１にジョブの生成が通知されたか否かを判定する。通知された場合はＳ３００２に進み、そうでない場合はＳ３０１１に進む。Ｓ３００２で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３に格納された印刷中情報が有るか否かを判定する。印刷中情報が無ければ、Ｓ３００３に進む。一方、印刷中情報が有る場合は、ＣＰＵ１０１は、Ｓ３００１で通知されたジョブの生成通知に対して何も処理せずに、本処理を終了する。即ち、ここでは、ＣＰＵ１０１は、ジョブの生成通知に対する応答も返さず、ジョブリストの取得も行わない。なお、ここで、ＣＰＵ１０１は、ジョブの生成通知に対する処理は実行しない（ジョブリストを取得しない）ものの、クラウドサーバ２に対してエラー通知を行ってもよい。さらに、ＣＰＵ１０１は、当該印刷中情報が既にＲＯＭ１０３に格納されていたジョブの実行（印刷）を、現在実行していないようであれば再実施するように制御することが望ましい。この場合、当該ジョブのデータ（印刷データ）が保持されていない場合には、クラウドサーバ２から再度取得して、印刷を実行する。
【００４７】
一方、Ｓ３００３で、ＣＰＵ１０１は、クラウドサーバ２に対して本画像形成装置１が印刷すべきジョブリストを要求する。続いて、Ｓ３００４で、ＣＰＵ１０１は、Ｓ３００１で通知されたジョブが、Ｓ３００３で取得したジョブリスト中に存在するか否かを判定する。ここで、Ｓ３００１で通知されたジョブがＳ３００３で取得したジョブリスト中に存在する場合は、Ｓ３００５に進む。一方、Ｓ３００１で通知されたジョブがＳ３００３で取得したジョブリスト中に無い場合は、ＣＰＵ１０１は、ユーザがクラウドサーバにジョブをアップロードした後に間違いに気付き削除したと判断し、何も処理せずに、本処理を終了する。
【００４８】
Ｓ３００５で、ＣＰＵ１０１は、Ｓ３００１で通知されたジョブのジョブ情報、即ち、印刷データ等をクラウドサーバ２から取得する。クラウドサーバ２からジョブ情報の取得が完了すると、前述したクラウドサーバ２のＳ２００９で、ジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）に変更される。
【００４９】
次に、Ｓ３００６で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３中に印刷中情報を書込む。印刷中情報については図９を用いて後述する。続いて、Ｓ３００７で、ＣＰＵ１０１は、Ｓ３００５で取得した印刷データをビットマップデータである描画データに変換し、プリンタＩ／Ｆ１０４を介してプリンタ１０８に渡す。さらに、ＣＰＵ１０１は、当該描画データを実際の紙に印刷させるために必要な用紙の給紙・排紙等の制御も行って印刷処理を実行する。
【００５０】
Ｓ３００８で、ＣＰＵ１０１は、Ｓ３００５で取得した印刷データの印刷が終了したか否かを判定する。印刷データの印刷が終了するとＳ３００９に進み、そうでない場合はＳ３００８の判定を定期的に繰り返す。Ｓ３００９で、ＣＰＵ１０１は、クラウドサーバ２に印刷終了通知と印刷データの削除要求を通知する。この画像形成装置１からの印刷終了通知を受け取ったクラウドサーバ２は、前述したクラウドサーバ２のＳ２００４でジョブの状態をＤｏｎｅ（＝印刷済み）に変更する。続いて、Ｓ３０１０で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３から、Ｓ３００６で書き込んだ印刷中情報を削除し、本処理を終了する。
【００５１】
一方、Ｓ３００１でジョブの生成通知で無いと判定すると、Ｓ３０１１に進み、ＣＰＵ１０１は、画像形成装置１の操作部１１０を介したユーザ操作により、ジョブ状況画面表示が操作部Ｉ／Ｆ１０６を介して指示されたか否かを判定する。ジョブ状況画面表示が指示された場合はＳ３０１２に進み、そうでない場合はＳ３０２２に進む。
【００５２】
Ｓ３０１２で、ＣＰＵ１０１は、画像形成装置１で処理された、或いは、処理中や処理待ちジョブの一覧を、操作部Ｉ／Ｆ１０６を介して操作部１１０に表示する。ジョブ状況画面の詳細については図１２を用いて後述する。続いて、Ｓ３０１３で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３中に、印刷中情報が存在するか否かを判定する。印刷中情報が存在する場合はＳ３０１４に進み、そうでない場合は、継続する処理は行わずに本処理を終了する。
【００５３】
Ｓ３０１４で、ＣＰＵ１０１は、クラウドサーバ２に本画像形成装置１が印刷すべきジョブリストを要求する。続いて、Ｓ３０１５で、ＣＰＵ１０１は、Ｓ３０１４で取得したジョブリスト中に、ジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブが存在するか否かを判定する。ここで、ジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブが存在する場合は、Ｓ３０１６に進む。一方、Ｓ３０１５で、Ｓ３０１４で取得したジョブリスト中にジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブが存在しない場合は、Ｓ３０２１に進む。
【００５４】
Ｓ３０１６で、ＣＰＵ１０１は、Ｓ３０１４で取得したジョブリストの中にある、ジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブのジョブ情報をクラウドサーバ２から取得する。通常、クラウドサーバ２は、画像形成装置がジョブ情報の取得を完了すると、ジョブの状態をＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）に変更するが、変更前の状態が既にＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）であるため、ここでは何もしない。また、通常ケースで、画像形成装置１は、不揮発性メモリであるＲＯＭ１０３中に印刷中情報を書込むが、既に印刷中情報が存在するため、画像形成装置１も何もしない。
【００５５】
次に、Ｓ３０１７で、ＣＰＵ１０１は、Ｓ３０１６で取得した印刷データをビットマップデータである描画データに変換し、プリンタＩ／Ｆ１０４を介してプリンタ１０８に渡す。さらに、ＣＰＵ１０１は、当該描画データを実際の紙に印刷させるために必要な用紙の給紙・排紙等の制御も行って印刷処理を実行する。その後、Ｓ３０１８で、ＣＰＵ１０１は、Ｓ３０１７で取得した印刷データの印刷が終了したか否かを判定する。印刷データの印刷が終了するとＳ３０１９に進み、そうでない場合はＳ３０１８の判定を定期的に繰り返す。
【００５６】
Ｓ３０１９で、ＣＰＵ１０１は、クラウドサーバ２に印刷終了通知と印刷データの削除要求を通知する。この画像形成装置１からの印刷終了通知を受け取ったクラウドサーバ２は、前述したクラウドサーバ２のＳ２００４でジョブの状態をＤｏｎｅ（＝印刷済み）に変更する。続いて、Ｓ３０２０で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３にある印刷中情報を削除し、処理をＳ３０１４に戻す。
【００５７】
一方、Ｓ３０２１で、ＣＰＵ１０１は、Ｓ３０１４で取得したジョブリスト中に、ジョブの状態がＱｕｅｕｅｄ（＝ジョブ受付済み）なジョブが存在するか否かを判定する。ここで、ジョブの状態がＱｕｅｕｅｄ（＝ジョブ受付済み）なジョブが存在する場合は、Ｓ３０２２に進み、そうでない場合は本処理を終了する。
【００５８】
Ｓ３０２２で、ＣＰＵ１０１は、Ｓ３０１４で取得したジョブリストの中にある、ジョブの状態がＱｕｅｕｅｄ（＝ジョブ受付済み）なジョブのジョブ情報をクラウドサーバ２から取得する。クラウドサーバ２からジョブ情報の取得が完了すると、前述したクラウドサーバ２のＳ２００９で、ジョブの状態がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）に変更される。
【００５９】
Ｓ３０２３で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３中に印刷中情報を書込む。Ｓ３０２４で、ＣＰＵ１０１は、Ｓ３０２２で取得した印刷データをビットマップデータである描画データに変換し、プリンタＩ／Ｆ１０４を介してプリンタ１０８に渡す。さらに、ＣＰＵ１０１は、当該描画データを実際の紙に印刷させるために必要な用紙の給紙・排紙等の制御も行って印刷処理を実行する。
【００６０】
次に、Ｓ３０２５で、ＣＰＵ１０１は、Ｓ３０２２で取得した印刷データの印刷が終了したか否かを判定する。印刷データの印刷が終了すると、Ｓ３０２６に進み、そうでない場合は、Ｓ３０２５の判定を定期的に繰り返す。Ｓ３０２６で、ＣＰＵ１０１は、クラウドサーバ２に印刷終了通知と印刷データの削除要求を通知する。この画像形成装置１からの印刷終了通知を受け取ったクラウドサーバ２は、前述したクラウドサーバ２のＳ２００４でジョブの状態をＤｏｎｅ（＝印刷済み）に変更する。Ｓ３０２７で、ＣＰＵ１０１は、不揮発性メモリであるＲＯＭ１０３にある印刷中情報を削除し、処理をＳ３０１４に戻す。
【００６１】
＜通信の中断＞
次に、図１１を参照して、上記Ｓ１００９の処理中に画像形成装置１が再起動した場合やネットワークケーブルが外れた場合などに発生する画像形成装置１とクラウドサーバ２との間の通信が中断した際の問題点について説明する。１１０１に示すように、通常動作が行われている間は、クラウドサーバ２に受け付けられたジョブはその状態情報がＱｕｅｕｅｄ（＝ジョブ受付済み）に設定され、受け付け順にクラウドサーバ２に蓄積される。その後、画像形成装置１へ上記Ｓ１００３でジョブ通知され、Ｓ１００７で画像形成装置１にジョブ情報をダウンロードすると、Ｓ１００８で状態情報がＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）に変更される。
【００６２】
その後、１１０２に示すように、Ｓ１００９の処理中に画像形成装置１が再起動する場合がある。このような場合に、１１０３に示すように、上記Ｓ３０１２でジョブ状況画面の表示処理に進む場合は、画像形成装置１はＲＯＭ１０３に保持されている印刷中情報を参照して、印刷中情報があれば上記Ｓ３０１４以下の処理が実行される。このような場合においては、印刷処理中状態のジョブが複数存在してしまう虞はない。
【００６３】
しかし、１１０４に示すように、画像形成装置１が再起動した（通信が中断した）後にジョブ状況画面の表示処理へ遷移せず、クラウドサーバ２が新たなジョブを外部装置等から受け付け場合がある。この場合、画像形成装置１へジョブ通知が行われると、上記図８のような制御を行わない場合には、画像形成装置１は新たにジョブを受け付けてしまい、複数の印刷処理中状態のジョブが発生してしまうこととなる。さらに、１１０５において画像形成装置１が再起動してしまうと、１１０６に示すように、印刷処理中状態のジョブが増えてしまう可能性があり、このような場合には、ジョブの印刷順番を保障できないという問題が生じてしまう。そこで、本実施形態に係る画像形成システムでは、上述したように、不揮発メモリに印刷中情報が保持されている場合には、新たなジョブを受け付けないように制御することで上述の問題を解決している。
【００６４】
＜印刷中情報＞
次に、図９を参照して、図６のＳ１００３と、図７のＳ２００５と、図８のＳ３００１と、Ｓ３００６と、Ｓ３０２３とで処理する印刷中情報（ジョブの生成通知を含む）の一例について説明する。本実施形態では、ＸＭＬ(Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＪＳＯＮ（ＪａｖａＳｃｒｉｐｔ（登録商標） Ｏｂｊｅｃｔ Ｎｏｔａｔｉｏｎ：ＲＦＣ４６２７）といった公知のフォーマットで記述するものとした。
【００６５】
図９に示すように、ジョブの生成通知及び印刷中情報には、当該ジョブの識別子と、ジョブの種別と、ジョブのサイズと、ジョブの名称、及び当該ジョブで使用するファイルの取得先との少なくとも１つの情報が含まれる。ＣＰＵ１０１は、当該印刷中情報がＲＯＭ１０３等のメモリに格納されている場合は、画像形成装置１において対応するジョブを印刷中であることを認識する。したがって、対応するジョブを識別することが可能な情報であればよい。つまり、ジョブを示す情報がＲＯＭ１０３等のメモリに格納されていれば、当該情報が印刷中情報となり、当該ジョブが印刷中の状態にあることを示す。
【００６６】
＜ジョブリスト＞
次に、図１０を参照して、図６のＳ１００５と、図７のＳ２０１４と、図８のＳ３００３と、Ｓ３０１４とでやり取りする情報であるジョブリストの一例について説明する。データフォーマットは、図９と同様であるため説明を省略する。
【００６７】
図１０に示すように、ジョブリストには、各ジョブごとのジョブ識別情報（所定のジョブの識別情報）が含まれる。当該ジョブ識別情報には、図９で説明したジョブを識別するための情報（印刷中情報）に加えて、ジョブ状態を示す状態情報が含まれる。
【００６８】
なお、図１０に記載のジョブリストにおいて、“ｊｏｂ＿ｉｄ：００１”のジョブ生成通知を画像形成装置１が受け付けると、状態情報である“ｊｏｂ＿ｓｔａｔｕｓ：Ｑｕｅｕｅｄ”が“ｊｏｂ＿ｓｔａｔｕｓ：ＩｎＰｒｏｇｒｅｓｓ”に変わる。この状態で画像形成装置１の電源がＯＦＦされ電源が再投入された後に、“ｊｏｂ＿ｉｄ：００２”のジョブ生成通知がされ、画像形成装置１が受け付けると、“ｊｏｂ＿ｓｔａｔｕｓ：Ｑｕｅｕｅｄ”が“ｊｏｂ＿ｓｔａｔｕｓ：ＩｎＰｒｏｇｒｅｓｓ”に変わる。また、ここで、この状態で画像形成装置１の電源がＯＦＦされる。このような場合に再起動すると、ＩｎＰｒｏｇｒｅｓｓなジョブが複数できてしまい、印刷の順番を保障できなくなってしまう。そこで、本画像形成システムでは、上述した制御を行うことにより、印刷の順番を保障する仕組みを提供する。
【００６９】
＜ジョブ状況画面＞
次に、図１２を参照して、画像形成装置１の操作部１１０に表示されるジョブ状況画面１２００について説明する。ジョブ状況画面１２００は、画像形成装置１が受け付けたジョブのジョブ状況１２０１の情報が表示される。例えば、図１２に示すように、プリント中のジョブ１２０２や、処理待ち中のジョブ１２０３、１２０４等の受付番号、ジョブ名、ジョブ種別、ジョブ状況などが表示される。なお、上記表示情報については、単なる一例であり、本発明を限定する意図はなく、画像形成装置１が受け付けたジョブについて各ジョブの実行状態が識別可能に表示されればよい。
【００７０】
以上説明したように、画像形成装置の印刷途中の電源ＯＦＦやクラウドサーバとのネットワーク切断等で、ジョブの完了操作ができずに処理中のままのジョブが存在することになった場合、本画像形成装置は新規のジョブを受け付けなくする。これにより、処理中のジョブを最優先で印刷処理することができ、ユーザが意図した順番で、ジョブが処理され、印刷することが可能になる。具体的には、不揮発性メモリ中の印刷中情報からＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブの有無を確認できるため、ＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）なジョブをクラウドサーバに問い合わせずに、新規ジョブの受け付けを止めることができる。さらに、複数のジョブがＩｎＰｒｏｇｒｅｓｓ（＝印刷処理中）になることを防止することで、ジョブの印刷順番を保障することが可能になる。
【００７１】
＜変形例＞
本発明は上記実施形態に限らず様々な変形が可能である。例えば、上記実施形態では、新規のジョブについて、クラウドサーバ２から取得するジョブについてのみ想定している。しかし、画像形成装置１では、例えば、有線ＬＡＮ６を介して、クラウドサーバ２以外の外部装置、例えば、ＰＣなどから画像形成装置１へのジョブの投入（通常ジョブと称する。）を受け付ける可能性もある。当該通常ジョブを受け付けた場合には、識別情報があるか否かに関わらず、当該ジョブを受け付けることが望ましい。
【００７２】
具体的な処理について、図１３を参照して説明する。図１３は、ジョブを受け付けた際の判定処理を示すフローチャートである。以下で説明する処理は、ＣＰＵ１０１がＲＯＭ１０３等に格納された制御プログラムをＲＡＭ１０２に読み出して実行することで実現される。なお、本処理は、図８のＳ３００１の前で実行されることが望ましい。
【００７３】
Ｓ４００１で、ＣＰＵ１０１は、外部装置から通知を受けた際にクラウドサーバ２からの通知であるか否かを判定する。クラウドサーバ２からの通知であれば図８のＳ３００１に進み、そうでない場合はＳ４００２に進む。
【００７４】
Ｓ４００２で、ＣＰＵ１０１は、外部装置からの通知がジョブの実行要求、例えば、印刷の実行要求であるか否かを判定する。ジョブの実行要求であればＳ４００３に進み、ＣＰＵ１０１は、例えば、印刷処理を実行し、処理を終了する。一方、ジョブの実行要求でなければＳ４００４に進み、ＣＰＵ１０１は、その他の処理を実行して、処理を終了する。
【００７５】
上記Ｓ４００１の判定では、通知を発行した装置が特定の装置（クラウドサーバ２）であるか否かによって通常のジョブであるか否かを判定している。つまり、クラウドサーバ２からの通知であれば、クラウドプリントの要求の可能性があり、通常のジョブではないと判断し、Ｓ３００１の処理に進む。一方、クラウドサーバ２以外からの通知であれば、通常のジョブの可能性があるため、不揮発性メモリに印刷中情報があるか否かに関わらず、印刷処理を実行する。
【００７６】
また、上記Ｓ４００１の判定に代えて、受け付けた通知の通信方式がクラウドプリントで用いられるＰＵＬＬ方式でのデータ受信であるか、又は、通常印刷で用いられるＰＵＳＨ方式でのデータ受信であるかを判定してもよい。或いは、印刷データの種別に応じて判定してもよいし、印刷データのヘッダに含まれる情報に従って判定してもよい。なお、画像形成装置１の操作部１１０を介して投入されたジョブも上記通常のジョブとして取り扱うことが望ましい。
【００７７】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７８】
１：画像形成装置、２：クラウドサーバ、３：端末、４：インターネット、５：無線アクセスポイント、６：有線ＬＡＮ、７：無線ＬＡＮ
【図１】
2018005528.tif 000003
【図２】
2018005528.tif 000004
【図３】
2018005528.tif 000005
【図４】
2018005528.tif 000006
【図５】
2018005528.tif 000007
【図６】
2018005528.tif 000008
【図７】
2018005528.tif 000009
【図８】
2018005528.tif 000010
【図９】
2018005528.tif 000011
【図１０】
2018005528.tif 000012
【図１１】
2018005528.tif 000013
【図１２】
2018005528.tif 000014
【図１３】
2018005528.tif 000015