(57)【要約】【課題】  効率の良い印刷処理を実行する。【解決手段】    印刷データを生成可能なサーバと通信可能な画像処理装にいて、第１データが前記画像処理装置で処理できないフォーマットである場合、前記第１データを前記サーバに送信する。そして、前記第１データの後に受信された第２データが前記画像処理装置で処理可能なフォーマットであり、かつ、前記第１データが変換中の状況である場合、前記第１データよりも先に前記第２データの印刷処理を実行することを特徴とする画像処理装置の。【選択図】  図５
2015022405.tif 000002
【特許請求の範囲】
【請求項１】
印刷データを生成可能なサーバと通信可能な画像処理装置であって、
第１データが前記画像処理装置で処理できないフォーマットである場合、前記第１データを前記サーバに送信する送信手段と、
前記第１データの後に受信された第２データが前記画像処理装置で処理可能なフォーマットであり、かつ、前記第１データが変換中の状況である場合、前記第１データよりも先に前記第２データの印刷処理を実行する実行手段を備えることを特徴とする画像処理装置。
【請求項２】
印刷処理の実行順序の入れ換え制御が実行可能である場合、前記第１データを入れ換え可能なデータとして管理することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記第１データのオーナー情報と前記第２データのオーナー情報が同じである場合、前記第１データが処理されてから前記第２データが処理される処理順序を維持することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記第１データの再プリントが指示された場合、前記第１データが処理されてから前記第２データが処理される処理順序を維持することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記実行手段は、前記サーバとの通信状態に応じて、前記第１データよりも先に前記第２データの印刷処理を実行するか否かを決定することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記第１および第２データの処理順序を表示する表示制御手段を備えることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
印刷データを生成可能なサーバと通信可能な画像処理装置の制御方法であって、
第１データが前記画像処理装置で処理できないフォーマットである場合、前記第１データを前記サーバに送信する送信工程と、
前記第１データの後に受信された第２データが前記画像処理装置で処理可能なフォーマットであり、かつ、前記第１データが変換中の状況である場合、前記第１データよりも先に前記第２データの印刷処理を実行する実行工程を備えることを特徴とする画像処理装置の制御方法。
【請求項８】
請求項１乃至６のいずれか１項に記載の手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置または情報処理装置と通信する画像処理装置、画像処理装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、印刷対象ファイルの指定を受けた画像処理装置が、印刷対象ファイルを画像処理サーバ（サーバ装置）に送信し、画像処理サーバは当該ファイルを画像処理装置が解釈可能な印刷データに変換する。そして、画像処理装置は、画像処理サーバにより変換された印刷データを印刷する技術が知られている（例えば、特許文献１を参照）。この技術によれば、画像処理装置自身が解釈可能でないファイル形式についても印刷が可能である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１３１３８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら特許文献１の技術では、画像処理サーバにおいて印刷対象ファイルが印刷データに変換される間、画像処理装置は処理待ち状態となる。そのため、例えば、画像処理装置自身のみで処理を完結できるジョブが存在していても、画像処理サーバの処理待ち状態となる間、後続のジョブを効率よく処理できないという課題があった。
【課題を解決するための手段】
【０００５】
上記課題を解決するため本発明の画像処理装置は以下に示す構成を備える。
印刷データを生成可能なサーバと通信可能な画像処理装置であって、第１データが前記画像処理装置で処理できないフォーマットである場合、前記第１データを前記サーバに送信する送信手段と、前記第１データの後に受信された第２データが前記画像処理装置で処理可能なフォーマットであり、かつ、前記第１データが変換中の状況である場合、前記第１データよりも先に前記第２データの印刷処理を実行する実行手段を備えることを特徴とする。
【発明の効果】
【０００６】
本発明によれば、効率の良い印刷処理を実行できる。
【図面の簡単な説明】
【０００７】
【図１】画像処理装置を適用する画像形成システムの一例を示す図である。
【図２】図１に示した画像処理サーバの構成の一例を示すブロック図である。
【図３】図１に示した画像処理装置の構成の一例を示すブロック図である。
【図４】コントローラのソフトウェアモジュールを示すブロック図である。
【図５】画像処理装置の制御方法を説明するフローチャートである。
【図６】ジョブ実行順序の変更処理を説明する図である。
【図７】ジョブ順序変更処理におけるジョブ実行順序変更の条件を説明する図である。
【図８】画像処理装置で表示可能なＵＩ画面の一例を示す図である。
【図９】画像処理装置の制御方法を説明するフローチャートである。
【発明を実施するための形態】
【０００８】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
【０００９】
図１は、本実施形態を示す画像処理装置を適用する画像形成システムの一例を示す図である。本例に示す画像形成システムは、画像処理装置１０１、１０２、１０６，１０７をはじめとする複数の画像処理装置と、情報処理端末（情報処理装置）１０３、１０４に加えて所定の画像処理を行う画像処理サーバ１０５から構成される。各装置は、各々ネットワークにより通信可能に接続されている。ここで、画像処理サーバ１０５は、クラウドコンピューティング環境に適応したサーバ装置である場合を想定する。また、各画像処理装置は、処理能力が同一であっても、異なる処理能力であっても構わない。例えばカラー出力可能な画像処理装置と、モノクロ出力可能な画像処理装置とが組み合わされた環境であっても本発明を適用可能である。
【００１０】
以下、画像処理装置に関する説明は、代表して画像処理装置１０１について行う。なお、ここでいうネットワークはＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、Ｉｎｔｅｒｎｅｔなど、画像形成システム内の装置が相互に通信できる方式であれば方法は問わない。
【００１１】
画像処理装置１０１は、情報処理端末１０３から印刷対象ファイルの印刷依頼を受信して画像を印刷したり、装置に具備されているスキャナを用いて原稿の画像を読み取ったり、読み取った画像を印刷することが可能である。
【００１２】
加えて、画像処理装置１０１は、情報処理端末内のＳＭＢ（Ｓｅｒｖｅｒ  Ｍｅｓｓａｇｅ  Ｂｌｏｃｋ）共有フォルダや画像処理装置１０１に接続されたＵＳＢメモリの内容をユーザに提示し、この中からユーザが選択した印刷対象ファイルを印刷することが可能である。また、画像処理装置１０１は、自身で処理できない印刷対象ファイルについては画像処理サーバ１０５に印刷対象ファイルから印刷データへの変換を依頼することが可能である。例えば、画像処理装置１０１は、受信した印刷対象ファイルを解釈できない場合、印刷対象ファイルの変換依頼を画像処理サーバに送信する。この変換依頼により、画像処理サーバは、印刷対象ファイルを画像処理装置１０１が解釈可能な印刷データ（ＰＤＬ、変換後の画像データ等）に変換して、印刷データを画像処理装置１０１に戻す。以上の処理により、印刷処理が継続される。よって、画像処理サーバ１０５は、印刷データを生成可能な装置と呼ぶことができる。
【００１３】
画像処理サーバ１０５は、処理内容指示データと処理対象データ（印刷対象ファイル）を画像処理装置から受信し、処理対象データに対して指示された処理を行った上で、印刷データを依頼元の画像処理装置に返信する。
図２は、図１に示した画像処理サーバ１０５の構成の一例を示すブロック図である。
【００１４】
画像処理サーバ１０５は、ＣＰＵ２１１、ＲＡＭ２１２、ＨＤＤ２１３、ネットワークＩ／Ｆ２１４から構成される。ＣＰＵ２１１は、装置全体の制御を司り、ＲＡＭ２１２、ＨＤＤ２１３、及びネットワークＩ／Ｆ２１４とのデータの授受を制御可能である。また、ＣＰＵ２１１はＨＤＤ２１３から読みだした制御プログラム（命令）をＲＡＭ２１２に展開し、ＲＡＭ２１２に記憶されている命令を実行する。
【００１５】
ＨＤＤ２１３には、ＣＰＵ２１１で実行可能な、本発明に特有な後述する処理を実現するための制御プログラム（命令）が格納されている。そのほかにも、ＨＤＤ２１３には、画像処理サーバ１０５が処理可能なファイル形式に関する情報や、処理内容指示データや処理対象データなど画像処理装置から受信したデータを適宜保存することが可能である。
ＲＡＭ２１２は、ＨＤＤ２１３に記憶された命令を展開してＣＰＵ２１１から読みだし可能とし、命令の実行に必要な各種のデータを記憶しておくことが可能である。
【００１６】
ネットワークＩ／Ｆ２１４は、画像形成システム内の装置とネットワーク通信を行うためのＩ／Ｆであり、データ受信を行ったことをＣＰＵ２１１に伝達したり、ＲＡＭ２１２上のデータをネットワークに送信したりする。
【００１７】
図３は、図１に示した画像処理装置１０１の構成の一例を示すブロック図である。
図３において、画像処理装置１０１は、コントローラ３１０と、プリンタ３０１、スキャナ３０２、操作部３０３から構成される。コントローラ３１０は、ＣＰＵ３１１、ＲＡＭ３１２、ＨＤＤ３１３、ネットワークＩ／Ｆ３１４、プリンタＩ／Ｆ３１５、スキャナＩ／Ｆ３１６、操作部Ｉ／Ｆ３１７、拡張Ｉ／Ｆ３１８から構成される。
ＣＰＵ３１１はＲＡＭ３１２、ＨＤＤ３１３、ネットワークＩ／Ｆ３１４、プリンタＩ／Ｆ３１５、スキャナＩ／Ｆ３１６、操作部Ｉ／Ｆ３１７とデータを授受することが可能である。また、ＣＰＵ３１１はＨＤＤ３１３から読みだした命令をＲＡＭ３１２に展開し、ＲＡＭ３１２に記憶されている命令を実行する。
ＨＤＤ３１３には、ＣＰＵ３１１で実行可能な命令や、装置で使用する設定値、ユーザから依頼された処理に関するデータ等を記憶しておくことが可能である。ＲＡＭ３１２は、ＨＤＤ３１３に記憶された命令を展開してＣＰＵ３１１から読み出し可能とし、命令の実行に必要な各種のデータを記憶しておくことが可能である。
【００１８】
ネットワークＩ／Ｆ３１４は、画像形成システム内の装置とネットワーク通信を行うためのＩ／Ｆであり、データ受信を行ったことをＣＰＵ３１１に伝達したり、ＲＡＭ３１２上のデータをネットワークに送信したりする。プリンタＩ／Ｆ３１５は、ＣＰＵ３１１から送信された画像データをプリンタ３０１に送信したり、プリンタ３０１から取得したプリンタの状態をＣＰＵ３１１に伝達したりするＩ／Ｆである。
【００１９】
スキャナＩ／Ｆ３１６は、ＣＰＵ３１１から送信された画像読み取り指示をスキャナ３０２に送信し、スキャナ３０２から受信した画像データをＣＰＵ３１１に伝達したり、スキャナ３０２から受信した状態をＣＰＵ３１１に伝達したりするＩ／Ｆである。
操作部Ｉ／Ｆ３１７は、操作部３０３から入力されたユーザからの指示をＣＰＵ３１１に伝達したり、ユーザが操作するための画面情報を操作部３０３に伝達したりする。
プリンタ３０１は、プリンタＩ／Ｆから受信した画像データを用紙に印刷したり、プリンタの状態をプリンタＩ／Ｆに伝達したりする。
【００２０】
スキャナ３０２は、スキャナＩ／Ｆ３１６から受信した画像読み取り指示に従って、スキャナに置かれた用紙を読み取りデジタルデータ化してスキャナＩ／Ｆ３１６に伝達したり、スキャナ３０２の状態（例えば読み取ったページ数、検知したジャム（重送り））をスキャナＩ／Ｆ３１６に伝達したりする。なお、スキャナ３０２は、原稿を１スキャンで原稿の両面を読み取る機能を備え、ＣＰＵ３１１の処理で１ページにまとめて印刷することも可能である。
【００２１】
操作部３０３は、画像処理装置１０１に対するユーザからの指示を受け付ける。例えばタッチパネルを有する液晶画面を具備し、ユーザに操作画面を提供すると共に、ユーザからの操作を受け付ける。
【００２２】
拡張Ｉ／Ｆ３１８は、画像処理装置１０１に外部機器を接続することを可能とするＩ／Ｆである。例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）形式のＩ／Ｆを具備し、例えばＵＳＢメモリなどの外部記憶装置を接続してデータの読み取り・書き込みを行うことが可能である。
【００２３】
図４は、図３に示したコントローラ３１０のソフトウェアモジュールを示すブロック図である。
図４において、コントローラ３１０は、ジョブ投入モジュール４０１とジョブ実行順制御モジュール４０２とプリント処理実行モジュール４０３と画像処理サーバ通信モジュール４０４、画像処理モジュール４０５、および画面制御モジュール４１１を有する。また複数のジョブの情報をスプールするジョブキュー４１０を持つ。またデータストレージとその管理モジュールとして認証モジュール４０６と認証データベース４０８、設定値管理モジュール４０７と設定値データベース４０９から構成される。
【００２４】
印刷対象ファイルの投入形態としては２つあり、１つ目の投入形態は拡張Ｉ／Ｆ３１８を通して接続された、例えばＵＳＢメモリやＳＤメモリから印刷対象ファイルが投入される形態である。なお、投入される印刷対象ファイルを単にデータと呼ぶこともある。
画面制御モジュール４１１がＵＳＢメモリ内の印刷対象ファイルを操作部Ｉ／Ｆ３１７を介して操作部３０３に表示した後、ユーザが操作部３０３から印刷の指示を行う。選択された印刷対象ファイルをジョブ投入モジュール４０１が拡張Ｉ／Ｆ３１８を通してメモリメディアから取得し、ジョブを生成する。
もう１つの投入形態はネットワークＩ／Ｆ３１４を介して印刷対象ファイルを受信するケースである。例えば、情報処理端末１０３等からプリンタドライバを介して印刷対象ファイルが受信される。もしくはＳＭＢ等のネットワークストレージ上の印刷対象ファイルが前述のＵＳＢメモリと同様に操作画面に表示され、ユーザにより選択された印刷対象ファイルを取得して、ジョブが生成されても良い。
この場合はネットワークＩ／Ｆ３１４を経由して受信した印刷対象ファイルを、ジョブ投入モジュール４０１が受けてジョブを生成する。
上記の２種類の方法のいずれかで生成されたジョブはジョブ実行順制御モジュール４０２に渡される。ジョブ実行順制御モジュール４０２は、印刷ジョブが画像処理サーバ１０５を利用する処理か否かを判断する。
【００２５】
自画像処理装置内で印刷が完了できる印刷ジョブであれば、画像処理モジュール４０５に指示し画像に変換した後、プリント処理実行モジュール４０３に処理を依頼しプリンタＩ／Ｆ３１５を介してプリンタに印刷指示を行う。
【００２６】
一方、画像処理装置が、受信した印刷対象ファイルを解釈できない場合、画像処理サーバ１０５にデータの変換処理を依頼し、処理を待機する。画像処理サーバ通信モジュール４０４は、ネットワークＩ／Ｆ３１４を介して画像処理サーバ１０５に処理を依頼し、処理後の結果（変換後の画像データまたは印刷データとよぶ）を受け取る。ジョブ実行順制御モジュール４０２は、画像処理サーバ１０５から受け取った変換後の画像データをプリント処理実行モジュール４０３に処理を依頼し、プリント処理実行モジュール４０３はプリンタＩ／Ｆ３１５を介してプリンタ３０１に印刷指示を行う。
【００２７】
認証モジュール４０６は、画像処理装置１０１内のユーザ管理を行う。認証データベース４０８に保存されたユーザ情報を利用して操作部３０３からの認証やネットワーク経由の認証処理を行い、ジョブ投入モジュール４０１はその情報を利用してジョブに対して誰が投入したジョブなのかのオーナー情報を保持させる。
また、設定値管理モジュール４０７は、機器の振る舞いを規定する設定値を保存した設定値データベース４０９を管理する。認証データベース４０８および設定値データベース４０９はＨＤＤ３１３のような不揮発ストレージに保存される。
【００２８】
ジョブが連続して投入される場合は、ジョブ実行順制御モジュール４０２がジョブキュー４１０に対してジョブを順次積んでいく。その後、画像処理サーバ通信モジュール４０４、画像処理モジュール４０５、およびプリント処理実行モジュール４０３の実行資源の空き状態と実行待ちのジョブの状態を加味し最適に処理を振り分ける機能性を持っている。なお、ジョブキューはＲＡＭ３１２などの揮発な領域に保存する。
【００２９】
図５は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、図３に示したＣＰＵ３１１が実行する図４に示したジョブ実行順制御モジュール４０２の実行順制御例である。より具体的には、図５はジョブ投入モジュール４０１がジョブ実行順制御モジュール４０２に対してジョブ投入を行ってから、処理対象のジョブがプリント処理実行モジュール４０３に処理を渡せるようになるプリント実行状態になるまでの処理例である。なお、本願のフローチャートの各ステップは、ＣＰＵ３１１がＨＤＤ３１３に記憶された制御プログラムをＲＡＭ３１２にロードして実行することで実現される。以下の説明では、図４に示したモジュールを主体として説明する。
【００３０】
Ｓ５０１で、ジョブ実行順制御モジュール４０２は、ジョブ投入モジュール４０１から処理対象のジョブを受信する。Ｓ５０２でジョブ実行順制御モジュール４０２は投入された処理対象のジョブをジョブキュー４１０の一番後ろに積む。その後、Ｓ５０３でジョブ実行順制御モジュール４０２は、投入された処理対象のジョブが自画像処理装置内で画像処理を行うジョブか画像処理サーバ１０５に処理を依頼するジョブかを判断する。例えば、ジョブの拡張子等から、処理対象のジョブが自画像処理装置で処理できないフォーマットであるか否かを判定し、処理できないフォーマットである場合、画像処理サーバ１０５に処理を依頼するジョブと判定する（Ｓ５０３−Ｙｅｓ）。画像処理サーバ１０５に処理を依頼するジョブであると判断した場合、Ｓ５０４に進み、ジョブ実行順制御モジュール４０２は、画像処理サーバ通信モジュール４０４に対して画像処理サーバ１０５への処理依頼を行う。実際には、処理対象のジョブに関係するデータが画像処理サーバ１０５に送信される。その後、Ｓ５０５において、ジョブ実行順制御モジュール４０２は、画像処理サーバ通信モジュール４０４が画像処理サーバ１０５と初期通信した結果を受信する。このステップにおいて受信する必要な情報については後述するが、画像処理サーバ１０５との通信の成否、画像処理サーバ１０５上に必要なデータの有無等ジョブの実行順序を入れ替えるにあたって必要な情報を入手することになる。
【００３１】
その後、Ｓ５０６において、ジョブ実行順制御モジュール４０２は、初期通信の結果とジョブのデバイス内の状態を判断し、追い抜き条件を満たすかどうかを判断する。この判断基準の具体例も後述する。ここで、追い抜き可能と判断された場合、Ｓ５０７に進み、ジョブ実行順制御モジュール４０２が処理対象のジョブに追い抜き可能属性を設定する。
一方、Ｓ５０６で、追い抜きが不可であるとジョブ実行順制御モジュール４０２が判断した場合、Ｓ５０８へ進み、ジョブ実行順制御モジュール４０２は、処理対象のジョブに追い抜き不可属性を設定する。その後、ジョブ実行順制御モジュール４０２は、Ｓ５０９において、画像処理サーバ１０５からの変換結果の待ち状態に入る。
【００３２】
Ｓ５１０では、ジョブ実行順制御モジュール４０２が画像処理サーバ通信モジュール４０４を通して画像処理サーバ１０５から変換後の画像データを受信する。その後、Ｓ５１１で、ジョブ実行順制御モジュール４０２は、ジョブキュー４１０上で処理対象のジョブに対して先行で待ち状態のジョブが存在するかどうかを判断する。特に存在しないとジョブ実行順制御モジュール４０２が判断した場合、Ｓ５１８に進み処理対象のジョブはプリント待ち状態となり、プリンタ資源が空き次第印刷が開始される。
一方、Ｓ５１１において、先行の印刷待ちジョブが存在するとジョブ実行順制御モジュール４０２が判断した場合、Ｓ５１２に進み、ジョブ実行順制御モジュール４０２はジョブキュー４１０内のジョブの実行順序を入れ替える。
この際、ジョブ属性に処理対象のジョブを追い抜いたジョブに関する情報が記載されている（後述）ので、ジョブ実行順制御モジュール４０２は、ここに記載されているジョブよりも処理対象のジョブが先に処理されるように実行順序を入れ替える。なお、もともと処理対象のジョブが投入された際に自分より前にいたジョブは追い越さない。
また、この再プロモーションが起こる際、処理対象のジョブには追い抜き可能属性が設定されているので、この追い抜き可能属性は解除され、印刷実行順番が確定する。そして、Ｓ５１８に進み、印刷処理の実行を待機する。以上が画像処理サーバ１０５を利用するジョブの処理である。
【００３３】
Ｓ５０３において、ジョブ実行順制御モジュール４０２が画像処理サーバ１０５を利用しないジョブであると判断した場合、Ｓ５１３に進む。Ｓ５１３で、ジョブ実行順制御モジュール４０２は、画像処理サーバ１０５を利用しない処理対象のジョブに追い抜き不可属性を設定する。その後Ｓ５１４で、ジョブ実行順制御モジュール４０２は自画像処理装置内の画像処理モジュール４０５に対して処理対象のジョブの画像処理依頼を行う。その後、Ｓ５１５において、画像処理モジュール４０５が変換後の印刷可能データを受信すると、Ｓ５１６において、ジョブ実行順制御モジュール４０２は、処理対象のジョブの直前の先行ジョブに追い抜き可能属性が設定されたジョブが存在するかを判断する。ここで、追い抜き可能属性が設定されたジョブが存在する場合、Ｓ５１７で、ジョブ実行順制御モジュール４０２は、ジョブキュー４１０内で追い抜き可能属性が設定されたジョブの前に処理対象のジョブを配置する。さらに追い抜かれたジョブの属性には追い抜いたジョブ情報を記載する。
そして、Ｓ５１６に戻り、ジョブ実行順制御モジュール４０２は、さらに直前のジョブが追い抜き可能か否かを判断する処理を繰り返し、先行ジョブがいなくなるか追い抜き可能ではない直前先行ジョブが現れるまで、ジョブの実行順序の変更処理を実行する。そして、Ｓ５１６でＮｏと判定された場合、ジョブ実行順制御モジュール４０２の処理はＳ５１８に進み、印刷処理の実行を待機する。
【００３４】
図６は、図４に示したジョブ実行順制御モジュール４０２がジョブ実行順序を変更する処理を説明する図である。図６はジョブキュー４１０の中の順番制御の様子を時系列で模式的に示したものである。以下、図５に示した処理に基づき、各ジョブ実行順番制御例を説明する。
図６において、ジョブ６０１（ジョブＡ）は画像処理サーバ１０５を利用するジョブでＳ５０６において追い抜き条件を満たしたジョブであると仮定し、追い抜き可の意味の「○」が書かれている。ジョブ６０２（ジョブＢ）は画像処理サーバ１０５を利用しないジョブであるとして追い抜き不可の「×」を記載している。
【００３５】
例えば時刻１は、画像処理サーバ１０５からジョブＡの変換後の画像データの受信待ちの状態（Ｓ５０９）の時にジョブＢが投入された状態を示している。ジョブキュー４１０には時刻１の状態で保持される。その後、ジョブＢがＳ５１５で印刷可能状態になった時刻２では、Ｓ５１７のジョブの実行順序入れ替えが起き、先にジョブＢが印刷される。合わせてジョブＡにはジョブＢに追い抜かれたという情報「（Ｂ）」が書き込まれる。
【００３６】
時刻３ではその状態でさらに画像処理サーバ１０５を利用しないジョブ６０３（ジョブＣ（追い抜き不可の「×」））、ジョブ６０４（ジョブＤ（追い抜き不可の「×」））が連続投入されたイメージである。ジョブＡは追い抜き可能状態であるため、後続のジョブが印刷可能になるとＳ５１７において処理順番が変更される。
【００３７】
時刻４ではジョブＣ、ジョブＤが共にＳ５１７を経て順番が変更され、ジョブＣがジョブＡよりも先に印刷される状態のイメージである。ジョブＡには追い抜かれたことを示すＣ，Ｄのジョブ情報が追記されている。
【００３８】
時刻５では、画像処理サーバ１０５からジョブＡの変換後の画像データを受け取り、Ｓ５１２に置いて、プリント待ちの最優先位置に再プロモーションしたことを示している。ジョブＡの属性には追い抜いたジョブであるジョブＢ，Ｃ，Ｄがジョブ情報として記載済みであるので、ジョブＡより前にこれら３つのジョブが存在すれば、ジョブＡは、ジョブＢ−Ｄに対して先に印刷処理されることになる。
このケースでは、ジョブＢはすでに実行を終了しており、ジョブＣはプリントを開始しているため、待ちキューの最も前に存在するジョブＤの前にジョブＡが割り込まれる。さらにこの時、ジョブＡは追い抜き不可能状態に設定される。
時刻６では、その状態でジョブＣの印刷が完了しジョブＡのプリントが開始したイメージである。
【００３９】
以上のようにジョブＡのような画像処理サーバ１０５を利用しプリント開始までの間に時間がかかることが想定されるジョブは順次追い抜かれ、実行可能になった際に最優先で印刷を開始するという動きを実現することになる。
【００４０】
図７は、図５に示したジョブ順序変更処理におけるジョブ実行順序変更の条件を説明する図である。具体的には、図５に示したＳ５０６における追い抜き可能ジョブに入るための条件に対応し、以下各条件について図７を参照して詳述する。
まず、図７の第１行目は、ジョブの実行順序の追い抜き制御そのものを行わせるか否かのシステムの設定である。なお、追い抜き制御そのものを行うか否かの設定は、例えば、画像処理装置の操作パネルを使ってユーザが設定しても良い。
図４に示した設定値データベース４０９に追い抜き制御を行うか、行わせないかを決定するためのフラグ情報を保持させ、画面制御モジュール４１１等から設定値管理モジュールを介してジョブ実行順序の変更の可否を制御できる。そこで、Ｓ５０６において、まずこの制御フラグ情報を参照する。この制御フラグが、追い抜き制御を実行しないことを示す場合、Ｓ５０６ではＮｏと判定される。
【００４１】
次に、図７の第２行目に対応した画像処理サーバ１０５の処理負荷状況に応じた制御について説明する。本例は、画像処理サーバ１０５との通信状態に応じてジョブの入れ換え制御の可否を決定する例を説明する。
Ｓ５０５において、まず、画像処理サーバ１０５と初期通信した際に、画像処理サーバ１０５から過負荷なため処理を待つような返答をされる可能性が考えられる。一般的にはＨＴＴＰの通信がエラーコード５０３「Ｓｅｒｖｉｃｅ Ｕｎａｖａｉｌａｂｌｅ」で返却されるなどで実装されることが可能である。
この例では、画像処理サーバ通信モジュール４０４はデータの再送等を行うため処理対象のジョブが印刷可能状態になるまでの間が長くかかることが想定される。したがって、本例ではＳ５０６における判断条件となる。つまり、エラーコード５０３「Ｓｅｒｖｉｃｅ Ｕｎａｖａｉｌａｂｌｅ」が返却される場合、Ｓ５０６ではＹｅｓと判定される。
【００４２】
次に、図７の第３行目に対応した他にはリプリントユースケース例の例を説明する。本例は、再プリントジョブ属性を用いる例である。
画像処理サーバ１０５が一度処理した結果を一定期間の間保持しておき、画像処理装置側から再印刷の指示をした際に、画像処理サーバ１０５側のストレージに存在している変換後のイメージをダウンロードして印刷するような形態を実施することができる。この例では画像処理サーバ１０５は変換処理を行わず、単なる画像データのダウンロードのみを行うことから画像処理装置側の待ち時間は通常時に比べて格段に短くなることが想定できる。したがって、リプリントユースの例においては、処理対象のジョブに追い抜き不可属性が設定される（つまり、Ｓ５０６にてＮｏと判定される）。
【００４３】
次に、図７の第４行目に対応したジョブ投入のオーナー（ジョブオーナー情報）を条件とする例を説明する。
具体的には、図５に示したＳ５０６のタイミングではなく、Ｓ５１６のタイミングで判断を行う例である。先に示した設定値データベース４０９に追い抜き制御を行う・行わせないというフラグ情報はＳ５１６のタイミングでも当然確認するが他にも、例えばジョブ投入のオーナーを意識するという判断である。
同じユーザが複数のジョブを連続投入した場合、先行ジョブが画像処理サーバ１０５を利用し、後続ジョブが画像処理装置内で処理を完結できるという場合に関しては投入順＝実行順となるように追い抜きを許可しない方がユーザにとっては使い勝手が良い。
本例では、Ｓ５１６の追い抜き判断の際に先行ジョブが追い抜き可であったとしても処理対象のジョブのオーナーが先行ジョブと同一であった場合は追い抜かない（処理順序を維持する）という制御を行うことで実現できる。
この場合、ジョブのオーナー情報は、ジョブ投入モジュール４０１がジョブ投入する際に認証モジュール４０６を介して認証データベース４０８から必要な情報を取り出してジョブの属性としてジョブキュー４１０に積むものである。
【００４４】
以上のような条件を判断としてジョブの実行順序の入れ替えを制御することができる。なおここに列挙した条件１つだけで判断してもよいし、複数を組み合わせて判断することも可能である。この判断によって複数のジョブが連続的に投入されたとしてもサーバ資源と画像処理装置の資源を時間軸で有効活用し効率的に印刷処理を行うことができる。
【００４５】
図８は、本実施形態を示す画像処理装置で表示可能なＵＩ画面の一例を示す図である。本例は、ジョブ状況確認画面の例を（Ａ）〜（Ｄ）に示し、以下ジョブの入れ替え状態を表示する場合を説明する。なお、ジョブ状況画面９０１、操作部３０３上に表示されるジョブの実行状況を示す画面例である。以下、本実施形態を示す画像処理装置におけるジョブの実行順入れ換え状態を表示する表示制御について説明する。
フレーム９０２の中に投入された印刷ジョブの状況がユーザによって確認できるようになっている。ＯＫボタン９０３を押下するとこの画面を閉じる。
【００４６】
図８の（Ａ）では、ＵｓｅｒＡが「ｔｅｓｔ．ｅｐｕｂ」というファイルの印刷を、ＵｓｅｒＢが「ｓａｍｐｌｅ．ｐｄｆ」というファイルを、ＵｓｅｒＣが「ｔｅｓｔ．ｔｘｔ」というファイルをそれぞれ３人のユーザがほぼ同時刻に印刷ジョブを投入した際の表示例である。
この時ＵｓｅｒＡの投入したジョブが「１００１」、ＵｓｅｒＢの投入したジョブが「１００２」、ＵｓｅｒＣの投入したジョブが「１００３」というジョブＩＤをそれぞれ振られたものとする。ＩＤ＝１００１のｔｅｓｔ．ｅｐｕｂを印刷するジョブだけが画像処理サーバ１０５を利用するジョブであったとする。
【００４７】
ＩＤ＝１００１のジョブが投入順が最も早かったため最初に処理を開始するが、画像処理サーバ１０５に処理依頼をして画像変換待ちになり追い抜き可能が定義され待機状態になる。その間にＩＤ＝１００２のジョブが画像処理装置内の画像処理モジュール４０５の処理を終え印刷可能状態になったとすると、ジョブの追い抜きが行われる。
その結果、図８の（Ｂ）のようになり先にＩＤ＝１００２のジョブの印刷が開始される。その後ＩＤ＝１００１のジョブの変換後のデータを画像処理サーバ１０５から受け取ると、印刷可能状態となるため再度プロモーションを行うことでＩＤ＝１００２のジョブの直後に割り込むことになり図８の（Ｃ）のような状態となる。その後先行するＩＤ＝１００２のジョブの印刷が完了すると、図８の（Ｄ）のようになりＩＤ＝１００１のジョブがＩＤ＝１００３のジョブより早く印刷されることになる。以上のようなイメージでジョブの順番入れ替えが行われる。
これにより、第１データの後に受信された第２データが自画像処理装置で処理可能なフォーマットであり、かつ、第１データが変換中の状況である場合、第１データよりも先に第２データの印刷処理が実行される。つまり、サーバ装置に依頼されたジョブが返信されるまで後続のジョブを実行させるとともに、返信されたジョブを後続するジョブ中で最先に実行すべきジョブとして入れ換えることで効率よく処理できる。
【００４８】
〔第２実施形態〕
本実施形態では、先行して画像処理サーバ１０５を利用しない印刷ジョブが存在している状態において、画像処理サーバ１０５を利用する印刷ジョブが後続として投入された場合の処理を説明する。なお、本実施形態の構成は、基本的な構成は第１実施形態と同様であり、図１から図４および図８については第１実施形態と同様であるため説明を割愛する。
【００４９】
画像処理装置１０１内の画像処理モジュール４０５はメモリ容量やハード資源等制約条件から、一度に動作ができる画像処理件数が限られる。したがって、先行投入された画像処理サーバ１０５を利用しない印刷ジョブが画像処理モジュール４０５の資源空き待ち状態で待機させられる場合がある。
【００５０】
しかしながら、画像処理サーバ１０５を利用する後続ジョブはこの待ちとは関係なくＳ５０４において先行で画像処理サーバ１０５へ画像変換依頼を行う。よって、画像処理サーバ１０５と画像処理装置内の画像処理モジュール４０５とが並行して画像変換処理を行うことが可能になりこのケースにおいても処理効率は向上する。
このような場合にプリンタ資源の効率化を図るために、図５で示すシーケンスを本実施形態では、図９に示すステップの判断処理を追加的に行う。具体的には、図５に示したＳ５０９の先の処理が変更となる。
【００５１】
図９は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、図３に示したＣＰＵ３１１が実行する図４に示したジョブ実行順制御モジュール４０２の実行順制御例である。
Ｓ５０９の後、Ｓ８０１において、ジョブ実行順制御モジュール４０２は、画像処理サーバ１０５から変換後のデータを、画像処理サーバ通信モジュール４０４を介して受信する。Ｓ８０２で、ジョブ実行順制御モジュール４０２は、処理対象のジョブを追い抜いたジョブが存在したかどうかを判断する。ここで、追い抜いたジョブがあるとジョブ実行順制御モジュール４０２が判断した場合、Ｓ８０３でその直前にプロモーションして一旦順番を確定する。ここまでは、第１実施形態と同様の処理である。
【００５２】
第２実施形態ではその後、Ｓ８０４において、ジョブ実行順制御モジュール４０２は、画像処理モジュール４０５に処理依頼待ちのジョブが処理対象のジョブよりも前に存在するかどうかを判断する。ここで、処理依頼待ちのジョブが処理対象のジョブよりも前に存在するとジョブ実行順制御モジュール４０２が判断した場合、Ｓ８０５で変換待ちのジョブの前に処理対象のジョブを配置し、Ｓ８０６で印刷待機状態に遷移する。
一方、Ｓ８０４で、処理依頼待ちのジョブが自ジョブよりも前に存在しないとジョブ実行順制御モジュール４０２が判断した場合、Ｓ８０３で確定した位置のままＳ８０６に進み印刷待機状態に遷移する。
【００５３】
これにより画像処理サーバ１０５を利用した画像変換を行ったジョブが、画像処理装置に戻ってきた際に、本来は自ジョブよりも前に実行されるはずだが、まだ画像処理を開始していない画像処理装置内のジョブよりも先に印刷を開始できる。これにより、さらなるプリンタ資源の効率的な利用が望める状態となる。
【００５４】
なお、本実施形態に示す処理を実行するかどうかの可否については、設定値データベース４０９に切り替えフラグを保持しており、ジョブ実行順制御モジュール４０２がこれを参照して動作を切り替えるように制御するものとする。
【００５５】
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をパソコン（コンピュータ）等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【００５６】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
【符号の説明】
【００５７】
３０１  プリンタ
３１０  コントローラ
３１１  ＣＰＵ
３１３  ＨＤＤ
【図１】
2015022405.tif 000003
【図２】
2015022405.tif 000004
【図３】
2015022405.tif 000005
【図４】
2015022405.tif 000006
【図５】
2015022405.tif 000007
【図６】
2015022405.tif 000008
【図７】
2015022405.tif 000009
【図８】
2015022405.tif 000010
【図９】
2015022405.tif 000011