(57)【要約】      （修正有）【課題】ジョブ履歴を保存するための領域の空き容量を効率的に増やし、画像処理装置のダウンタイムの発生を抑える仕組みを提供する。【解決手段】画像形成装置のジョブ履歴管理部は、予め設定されたスケジュールに従い、ジョブ履歴を保存するための領域に保存された未送信の１以上のジョブ履歴を外部に送信し、送信済みのジョブ履歴を前記領域から削除する（S802〜S805）。また、ジョブ履歴管理部は、領域の残りの容量が所定量より少なくなった場合（S801でＹｅｓの場合）に、領域に保存された複数のジョブ履歴の中から、所定のサイズより大きなサイズの１以上のジョブ履歴の特定を行い、スケジュールに依存せずに特定された１以上のジョブ履歴を外部に送信し、送信した１以上のジョブ履歴を領域から削除する（S801でNo、S809〜S812）。【選択図】図８
2019097150.tif 000002
【特許請求の範囲】
【請求項１】
実行されたジョブに対応する処理対象の画像を含むコンテンツ情報と該ジョブの属性情報とを含むジョブ履歴を保存するための領域が確保された記憶装置を備える画像処理装置であって、
予め設定されたスケジュールに従い、前記領域に保存された未送信の１以上のジョブ履歴を外部に送信する送信手段と、
前記送信済みのジョブ履歴を前記領域から削除する削除手段と、
前記領域の残りの容量が所定量より少なくなった場合に、前記領域に保存された複数のジョブ履歴の中から、所定のサイズより大きなサイズの１以上のジョブ履歴の特定を行う特定手段と、を有し、
前記特定手段により前記１以上のジョブ履歴が特定された場合、前記送信手段は、前記スケジュールに依存せずに前記特定された１以上のジョブ履歴を外部に送信し、
前記送信手段により前記スケジュールに依存せずに前記特定された１以上のジョブ履歴が外部に送信された場合、前記削除手段は、前記領域から前記特定された１以上のジョブ履歴を削除することを特徴とする画像処理装置。
【請求項２】
前記領域の残りの容量が所定量より少なくなった場合に外部に送信される送信対象として、前記所定のサイズより大きなサイズのジョブ履歴のみを送信する設定を行う設定手段を、さらに有し、
前記設定が行われず、かつ、前記領域の残りの容量が所定量より少なくなったことに従い外部にジョブ履歴を送信する場合には、前記特定手段による前記特定が行われることなく、前記送信手段が前記領域に保存された未送信の１以上のジョブ履歴を外部に送信することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
予め設定された送信停止時間である場合には、前記送信手段による前記スケジュールに従って前記ジョブ履歴の送信が行われず、
前記送信手段は、前記スケジュールに依存せずに前記ジョブ履歴の送信を行う場合には、前記送信停止時間であっても、前記ジョブ履歴の送信を行うことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記特定手段は、定期的及びジョブの実行後の少なくともいずれかのタイミングで、前記領域の残りの容量が所定量より少なくなった場合に、前記領域に保存された複数のジョブ履歴の中から、所定のサイズより大きなサイズの１以上のジョブ履歴を特定することを特徴とする請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項５】
予め設定された送信完了時刻までに前記領域に保存された全てのジョブ履歴の送信が完了するか否かを判断を行う判断手段を、さらに有し、
前記送信手段は、前記領域に保存された全てのジョブ履歴を、前記スケジュールに依存せずに外部に送信することを特徴とする請求項１〜４のいずれか１項に記載の画像処理装置。
【請求項６】
前記送信完了時刻は、予め設定された、ジョブを実行可能な第１モードから前記第１モードより消費電力量が少ない第２モードに移行する移行時刻であることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記送信完了時刻は、予め設定された前記送信されたジョブ履歴を監査する時刻であることを特徴とする請求項５に記載の画像処理装置。
【請求項８】
前記判断手段は、定期的及びジョブの実行後の少なくともいずれかのタイミングで、前記判断を行うことを特徴とする請求項５〜７のいずれか１項に記載の画像処理装置。
【請求項９】
前記送信手段は、所定のサイズより小さなサイズのジョブ履歴を送信した場合に送信先から待機を要請する応答があった場合には所定の時間が経過した後に再送信を試み、所定のサイズより大きなサイズのジョブ履歴を送信する場合に送信先から待機を要請する応答があった場合には前記所定の時間が経過する前に再送信を試みることを特徴とする請求項１〜８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記送信手段は、所定のサイズより大きなサイズのジョブ履歴を送信する場合には、その旨を送信先が認識可能な方法で送信することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記送信手段は、前記ジョブ履歴をサーバーに送信し、
前記サーバーは、前記画像処理装置から送信されるジョブ履歴を受信し、該受信したジョブ履歴に含まれるコンテンツ情報のデータ処理を行うサーバーであって、所定のサイズより大きなサイズのジョブ履歴を同時にデータ処理している数が第１の数に達している場合には、前記所定のサイズより大きなサイズのジョブ履歴のデータ処理のいずれかの終了を待って、新たなジョブ履歴のデータ処理を開始するように制御する、
ことを特徴とする請求項１〜１０のいずれか１項に記載の画像処理装置。
【請求項１２】
前記サーバーは、
前記画像処理装置から前記所定のサイズより小さなサイズのジョブ履歴を受信した場合、データ処理すべき前記所定のサイズより小さなサイズのジョブ履歴の数が第２の数に達している場合には、前記画像処理装置に待機を要請する応答を行い、
前記画像処理装置から前記所定のサイズより大きなサイズのジョブ履歴を受信した場合、データ処理すべき前記所定のサイズより大きなサイズのジョブ履歴の数が前記第２の数より大きな第３の数に達している場合には、前記画像処理装置に待機を要請する応答を行う、
ことを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
実行されたジョブに対応する処理対象の画像を含むコンテンツ情報と該ジョブの属性情報とを含むジョブ履歴を保存するための領域が確保された記憶装置を備える画像処理装置の制御方法であって、
予め設定されたスケジュールに従い、前記領域に保存された未送信の１以上のジョブ履歴を外部に送信する第１送信ステップと、
前記送信済みのジョブ履歴を前記領域から削除する第１削除ステップと、
前記領域の残りの容量が所定量より少なくなった場合に、前記領域に保存された複数のジョブ履歴の中から、所定のサイズより大きなサイズの１以上のジョブ履歴の特定を行う特定ステップと、
前記特定ステップで前記１以上のジョブ履歴が特定された場合、前記スケジュールに依存せずに前記特定された１以上のジョブ履歴を外部に送信する第２送信ステップと、
前記第２送信ステップで前記スケジュールに依存せずに前記特定された１以上のジョブ履歴が外部に送信された場合、前記領域から前記特定された１以上のジョブ履歴を削除する第２削除ステップと、
を有することを特徴とする画像処理装置の制御方法。
【請求項１４】
コンピュータを、請求項１〜１０のいずれか１項に記載の手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブの実行履歴を保持する画像処理装置、画像処理装置の制御方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、デジタル複合機等の画像処理装置において、印刷、コピー、FAX送受信などのジョブを実行する際に、ジョブの実行履歴（以下「ジョブ履歴」と呼ぶ）をデータベースに保存するジョブ履歴監査システムがある。ジョブ履歴監査システムでは、前記データベースに保存されたジョブ履歴を監査することができる。監査とは、データベースを検索し、過去に実行されたジョブの内容を参照したり、メール等で通知された、特定期間（例えば24時間）で実行されたジョブのジョブ履歴のリストを、ユーザが確認すること等である。なお、ジョブ履歴には、ジョブの実行時に使用した画像データを含むことができる。
【０００３】
ジョブ履歴監査システムでは、画像処理装置は、画像処理装置の記憶装置に一時的にジョブ履歴を蓄積し、蓄積した順番に、所定のタイミングでサーバーへ送信する。画像処理装置の記憶装置は大容量とは言えないため、画像処理装置は、ジョブ履歴を蓄積する前に、ジョブ履歴の画像データサイズを小さくするための画像処理を施す。画像処理とは、例えば、画像データに対して解像度を低くしたり、画質を下げたり、画像フォーマットを変更する等である。また、画像処理装置は、記憶装置の使用容量又は空き容量を監視し、記憶装置の空き容量不足が近づくと、管理者へ警告する機能も有している。
【０００４】
さらに、ジョブ履歴をサーバーへ送信する際には、ジョブ履歴単位でサーバーとの間に通信セッションを確立して、ジョブ履歴を送信する。送信処理によるネットワーク負荷が業務に影響しないよう、画像処理装置からサーバーへのジョブ履歴送信を夜間に集中的に行うという運用を可能としている。
【０００５】
一方で、画像処理装置における、ジョブ履歴の画像データに対する画像処理は、画像処理装置でのジョブの実行と並行で行われるため、ジョブの実行処理速度に影響を与える。そのため、画像処理を実行せずに、サイズが大きな画像データを記憶装置に蓄積する場合がある。画像処理が行われない場合、ジョブの実行頻度によっては、夜間に送信を行うまでにジョブ履歴を蓄積しきれない（蓄積したいジョブ履歴が記憶装置の容量を超えてしまう）可能性があった。この種の画像処理装置では、ジョブ履歴を保存する領域が一杯になると、ジョブ履歴の送信と送信済みのログの削除が完了して必要な空き容量を確保するまで、画像処理装置での印刷を禁止する仕様になっている。つまり、このような画像処理装置では、高画質の印刷を多く行う場合、印刷パフォーマンスの向上のトレードオフとして、ダウンタイム（印刷禁止時間）が発生する可能性があった。
【０００６】
特許文献１には、ジョブ実行後、画像処理装置の省電力（スリープモード）開始時間までにジョブ履歴をサーバーへ送信できるかを判断し、送信可能な場合に送信実行を行う技術が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１５−１１２８１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１では、画像処理装置の記憶装置の空き容量が少ない状態であっても、蓄積した順番にジョブ履歴をサーバーへ送信するため、効率的に記憶装置の空き容量を増やすことができない。
【０００９】
前述のように、画像処理装置によるジョブ履歴のサーバーへの送信は、ジョブ履歴単位でサーバーとの間に通信セッションを確立して送信する。つまり、特許文献１のように、ジョブ履歴のサイズに関係なく、蓄積した順番のジョブ履歴送信の場合、先頭にサイズが小さなジョブ履歴が複数あった場合、必要な記憶装置の空き容量を増やすために、複数回の通信セッションの確立が必要である。このとき、サーバーに対して、多数の画像処理装置がジョブ履歴を送信していた場合、同時接続数を超えて通信セッションを確立しようとすることになり、通信セッションが確立できなかった画像処理装置は、再度通信セッションの確立を試すことになる。このように、蓄積した順番にジョブ履歴をサーバーへ送信するケースでは、通信セッションの確立に時間がかかる場合があり、それを複数回繰り返さなければ必要な記憶装置の空き容量を増やすことができない。
【００１０】
さらに、ジョブ履歴監査システムでは、データベースに保存されたジョブ履歴を監査するため、監査タイミングまでに必要なジョブ履歴がデータベースに保存されている必要がある。
【００１１】
また、画像処理装置からジョブ履歴をサーバーに送信した場合に、サーバー側からビジーエラーが応答される場合がある。この場合、画像処理装置は、所定時間待機した後にリトライするが、待機中に画像処理装置のジョブ履歴を保存するための領域が容量不足になってしまう可能性がある。なお、待機時間を短くしてリトライした場合、サーバーの負荷が高くなってしまう。
【００１２】
また、サーバーにおいてジョブ履歴に含まれる画像データを処理する場合、解像度や用紙サイズが大きな画像を処理する際には、リソースを大量に必要とするため、サーバーの負荷が高くなり、処理速度が低下する。サーバーの負荷が高くなると、画像処理装置から送信されるジョブ履歴の受信処理等、他の処理についても、パフォーマンスが低下してしまう。この結果、画像処理装置からサーバーへのジョブ履歴の送信が滞り、画像処理装置のジョブ履歴を保存するための領域が容量不足になる可能性が高くなる。
【００１３】
一方、サーバーにおいて、解像度や用紙サイズが大きな画像データを、画像処理することなく、そのまま保存していると、サーバー側の記憶装置の容量を圧迫することになる。サーバー側の記憶装置が容量不足になると、サーバー側でジョブ履歴の受信処理ができなくなり、解像度や用紙サイズが小さな通常の画像データを含むジョブ履歴の処理もできなくなってしまう。この結果、画像処理装置のジョブ履歴を保存するための領域が容量不足になる可能性が高くなる。
【００１４】
本発明は、上記の課題を解決するためになされたものである。本発明は、ジョブ履歴を保存するための領域の空き容量を効率的に増やし、画像処理装置のダウンタイムの発生を抑えることができる仕組みを提供することを目的とするものである。
【課題を解決するための手段】
【００１５】
本発明は、実行されたジョブに対応する処理対象の画像を含むコンテンツ情報と該ジョブの属性情報とを含むジョブ履歴を保存するための領域が確保された記憶装置を備える画像処理装置であって、予め設定されたスケジュールに従い、前記領域に保存された未送信の１以上のジョブ履歴を外部に送信する送信手段と、前記送信済みのジョブ履歴を前記領域から削除する削除手段と、前記領域の残りの容量が所定量より少なくなった場合に、前記領域に保存された複数のジョブ履歴の中から、所定のサイズより大きなサイズの１以上のジョブ履歴を特定する特定手段と、を有し、前記特定手段により前記１以上のジョブ履歴が特定された場合、前記送信手段は、前記スケジュールに依存せずに前記特定された１以上のジョブ履歴を外部に送信し、前記送信手段により前記スケジュールに依存せずに前記特定された１以上のジョブ履歴が外部に送信された場合、前記削除手段は、前記領域から前記特定された１以上のジョブ履歴を削除することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、ジョブ履歴を保存するための領域の空き容量を効率的に増やし、画像処理装置のダウンタイムの発生を抑えることができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態のジョブ履歴監査システムの全体構成図
【図２】画像処理装置のハードウェア構成図
【図３】PC、処理サーバー、データベースを構成する情報処理装置のハードウェア構成図
【図４】画像処理装置のソフトウェア構成図
【図５】画像処理装置が処理サーバーに送信するジョブ履歴の一例を示す図
【図６】ジョブ履歴送信に関わる各種設定を行う設定画面の一例を示す図
【図７】ジョブ履歴の送信時間を算出するための基準値の一例を示す図
【図８】本実施形態の第１の定期実行処理の一例を示すフローチャート
【図９】本実施形態のジョブ履歴送信処理の一例を示すサブフローチャート
【図１０】本実施形態の第２の定期実行処理の一例を示すフローチャート
【図１１】本実施形態の送信完了可否確認処理の一例を示すフローチャート
【図１２】処理サーバーのソフトウェア構成図
【図１３】第２実施形態のジョブ履歴送信処理の一例を示すフローチャート
【図１４】第２実施形態のジョブ履歴受信処理の一例を示すフローチャート
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための形態について図面を用いて説明する。
〔第１実施形態〕
図１は、本発明の一実施形態を示す画像処理装置を含むジョブ履歴監査システムの全体構成の一例を示す図である。
図１に示すように、本実施形態のジョブ履歴監査システムでは、ネットワーク50にパーソナルコンピュータ（以下「PC」）10、画像形成装置20、処理サーバー30、データベース40がそれぞれ接続され、相互通信が可能である。図１では、これらを1台ずつ記載しているが、複数台の各装置がネットワーク50に接続されていてもよい。また、PC10、処理サーバー30、データベース40の各機能は、同一装置上に構成されてもよい。例えばPC10、処理サーバー30及びデータベース40は、汎用的なPC等で構成されてもよい。さらに、処理サーバー30、データベース40の各機能は、１台の装置で構成されていてもよいし、複数の装置で構成されてもよい。また、処理サーバー30、データベース40の各機能は、クラウドサーバー等で構成されていてもよい。例えば、処理サーバー30、データベース40の各機能は、パブリッククラウドサービス等を利用して構築することも可能である。
【００１９】
PC10は、画像形成装置20が実行するための印刷やFAX送信等の各種ジョブを、プリンタードライバ等により生成して画像形成装置20へ送信する。その際のジョブの生成や送信は、例えばユーザインタフェースを介してのユーザ操作により行われる。
【００２０】
画像形成装置20は、本実施形態の画像処理装置に対応し、例えばスキャン、プリント、コピー、FAX、送信などの機能を有する。また、画像形成装置20は、実行したジョブに関して、ジョブの実行と同時にジョブ履歴を記憶装置に保存するジョブ履歴記録機能を有する。画像形成装置20は、前記ジョブ履歴記録機能において、ジョブ履歴を保存する前に、ジョブ履歴に画像データが含まれる場合、画像データに対し、サイズを小さくするための画像処理を施すことが可能である。画像処理とは、例えば、画像データに対して解像度を低くしたり、画質を下げたり、画像フォーマットを変更する等である。
【００２１】
さらに、画像形成装置20は、ジョブ履歴記録機能により保存されたジョブ履歴を処理サーバー30へ送信するジョブ履歴送信機能を有する。画像形成装置20は、これらの機能を実現するものであり、デジタル複合機（MFP：Multi Function Printer）であってもよいし、プリンター等の画像形成装置であってもよい。
【００２２】
処理サーバー30は、前記ジョブ履歴送信機能により画像形成装置20が送信したジョブ履歴を受信する。処理サーバー30は、受信したジョブ履歴に対して、データ処理を施し、データ処理したジョブ履歴をデータベース40に送信する。ここで、データ処理とは、画像データに対して、OCR（Optical Character Recognition）処理を行ってテキスト情報を抽出したり、画像データの解像度やファイルフォーマットを変換したりする処理である。データ処理によって得られたテキスト情報は、ジョブ履歴と紐付けられてデータベース40に保存され、ジョブ履歴の検索に利用される。
【００２３】
データベース40は、処理サーバー30から送信されたジョブ履歴を受信して記憶装置に保存する。データベース40は、1つ以上のハードディスクドライブ（HDD）等から構成される大容量ストレージを備え、大量のジョブ履歴を長期間保存することが可能である。大容量ストレージ内にデータベースが構築されていてもよいし、ファイルサーバーの機能を有する構成でもよい。
【００２４】
ネットワーク50は、PC10、画像形成装置20、処理サーバー30、データベース40を相互に通信可能に接続するための接続回線であり、LANやWAN、又は、無線通信ネットワーク等が用いられる。
【００２５】
図２は、画像形成装置20のハードウェア構成の一例を示す図である。
図２において、CPU201は、画像形成装置20全体を統括的に制御し、例えばバス211に接続された各部を制御して印刷やFAX送信等の各機能を実行する。ROM202は、例えば画像処理装置の基本制御プログラムや各種データを記憶する。RAM203は、例えばCPU201のワーキングメモリとして用いられる。
【００２６】
外部記憶装置204は、各プログラムを実行中の一時データや、永続的なデータの記憶領域として用いられる。例えば、外部記憶装置204としてHDD（Hard Disk Drive）が用いられる。これにより、外部記憶装置204は、RAM203に比べるとデータの読出／書込の速度は遅くなるが、大容量のデータを記憶することができる。ここで、外部記憶装置204は、ジョブ履歴専用の領域を確保していてもよい。また、外部記憶装置204は、CD、DVD、メモリカードといった、外部メディアを装填してデータの読出／書込が可能な装置であってもよい。
【００２７】
通信装置205は、画像形成装置20をネットワーク50に接続するための装置であり、画像形成装置20をLANに接続し、ネットワーク50に接続された他の装置との間で例えばTCP／IPによるデータ通信を可能とする。
【００２８】
入力部206は、ユーザによる文字やデータの入力操作を受け付けるための操作部であり、例えば、テンキーやハードキーである。表示部207は、各種画面を表示するための装置であり、例えば液晶タッチパネルである。なお、入力部206は、表示部207の表面に設けられるタッチパネルを含む構成でもよい。ユーザは、表示部207に表示されたユーザインタフェース画面上で、画像形成装置20への印刷機能やコピー機能の実行指示を、入力部206を介して入力する。
【００２９】
スキャナー部208は、原稿台に載置された原稿を光学的に読み取る構成や、自動原稿給紙部（ADF）から連続的に搬送された複数枚の原稿用紙を固定的な読取位置において光学的に読み取る構成を備える。
【００３０】
プリンター部209は、画像データに基づいて、印刷用紙等の記録媒体上に画像を印刷するための構成を備える。印刷するための構成として、電子写真記録方式やインクジェット記録方式等、各種記録方式が適用可能である。画像形成装置20は、スキャナー部208で読み取った画像データに基づいてプリンター部209で印刷を行うことにより、コピー機能を実行することができる。また、画像形成装置20は、通信装置205を介して入力された印刷データに基づいてプリンター部209で印刷を行うことにより、プリント機能を実行することができる。
【００３１】
画像処理部210は、スキャナー部208や、PC10等の外部装置から取得された画像データに対して、色空間変換、マッピング、二値化、インターレース、下地除去等、印刷や各用途に応じた画像処理を実行する。ジョブ履歴に含まれる画像データは、画像処理部210において、前記外部装置から取得された画像データに対し、解像度を低くしたり、画質を下げたり、画像フォーマットを変更する等の画像処理を施すことで生成される。
【００３２】
図３は、PC10、処理サーバー30、データベース40を構成する情報処理装置のハードウェア構成の一例を示す図である。図３に示されるハードウェア構成図は一般的な情報処理装置のハードウェア構成図に相当するものとする。本実施形態のPCには一般的な情報処理装置のハードウェア構成を適用できる。
【００３３】
図３において、CPU301は、情報処理装置全体を統括的に制御し、例えばバス308に接続された各部を制御して各種データ処理を実行する。ROM302は、例えば、情報処理装置の基本制御プログラムや各種データを記憶する。RAM303は、例えばCPU301のワーキングメモリとして用いられる。
【００３４】
外部記憶装置304は、情報処理装置のオペレーティングシステム（OS）や、実行中の各アプリケーションの一時データや、永続的なデータの記憶領域として用いられる。多々追えば、外部記憶装置304としてHDDが用いられる。これにより、外部記憶装置304は、RAM303に比べるとデータの読出／書込の速度は遅くなるが、大容量のデータを記憶することができる。また、外部記憶装置304は、CD、DVD、メモリカードといった、外部メディアを装填してデータの読出／書込が可能な装置であってもよい。
【００３５】
入力装置305は、ユーザによる文字やデータの入力操作を受け付けるための操作部であり、例えば、キーボードやポインティングデバイスである。表示装置306は、各種画面を表示するための装置であり、例えばCRTや液晶モニターである。なお、入力装置305は、表示装置306の表面に設けられるタッチパネルを含む構成でもよい。ユーザは、表示装置306に表示されたユーザインタフェース画面上で、画像形成装置20への印刷ジョブの実行指示を、入力装置305を介して入力する。
【００３６】
通信装置307は、情報処理装置をネットワーク50に接続するための装置であり、情報処理装置をLANに接続し、ネットワーク50に接続された他の装置との間で例えばTCP／IPによるデータ通信を可能とする。
【００３７】
図４は、画像形成装置20のソフトウェア構成の一例を示す図である。
図４に記載のソフトウェア構成は、CPU201が例えばROM202に記憶されているプログラムをRAM203に読み出して実行することにより実現される。
【００３８】
図４において、データ送受信部2003は、PC10や処理サーバー30との各種データの送受信処理を行う。データ送受信部2003は、例えば、ジョブ履歴生成部2006で生成されたジョブ履歴を処理サーバー30に送信する。また、データ送受信部2003は、PC10からジョブ及びジョブ実行要求を受信する。
【００３９】
設定管理部2001は、画像形成装置20の各種機能の実行に関する設定をROM202、RAM203、外部記憶装置204等の各記憶装置に格納し、各記憶装置から読み出す。ここで、設定とは、例えば、コピー機能を実行するためのコピー設定や、印刷機能を実行するための印刷設定である。また、設定は、画像形成装置20自身の動作モードに関する設定も含む。例えば、設定は、ユーザから操作入力を所定時間受付けなかった場合に、装置の各部への通電を一部制限するよう図示しない電源部を制御し、装置全体の消費電力量を低減する省電力モード（スリープモード）や、電源オフ状態に移行するまでの移行時間を含む。また、設定は、図６で後述する各種設定、例えば、ジョブ履歴を処理サーバー30へ送信する送信開始時刻や、外部記憶装置204が容量不足であると判断する閾値も含む。
【００４０】
ジョブ制御部2004は、入力部206で入力された、もしくは、データ送受信部2003により受信したジョブ実行要求に基づき、スキャナー部208やプリンター部209を制御して各種ジョブを実行する。
【００４１】
スリープ制御部2005は、設定管理部2001により管理されるスリープモードへの移行時刻の設定値や、ジョブ制御部2004に関わる各部の制御状況に基づき、画像形成装置20がスリープモードに移行するまでの時間をタイマにより管理する。スリープ制御部2005は、設定管理部2001で管理されている移行時刻に到達したことをタイマにより検出した場合、画像形成装置20の各部への通電を一部制御し、画像形成装置20をスリープモード、もしくは、電源オフモードに移行させる。以下、各種ジョブを実行可能な通常状態より消費電力量が少ない装置状態としてスリープモードを例として説明する。
【００４２】
ジョブ履歴生成部2006は、ジョブ制御部2004のジョブ実行後又はジョブ実行と並行して、ジョブ履歴を生成する。ジョブ履歴生成部2006は、ジョブ履歴を生成した場合に、ジョブ履歴を生成したことを通知するジョブ履歴生成通知を、ジョブ履歴管理部2002へ通知してもよい。ジョブ履歴生成部2006は、画像処理部2007に、ある条件に従って、一部のジョブ履歴に関して、ジョブ履歴に含まれる画像データに対する画像処理の実行依頼を行う。画像処理部2007は、ジョブ履歴生成部2006からの依頼に応じ、ジョブ履歴に含まれる画像データに対し、画像処理を実行する。画像処理は、前述のように、画像データサイズを小さくするための解像度変換や画質低下や画像フォーマット変換等であるが、この処理には時間がかかる。例えば、印刷実行時に、プリンタードライバで1200dpiなどの大きな解像度を指定された場合、又は、A3以上の大きな用紙を指定された場合には、印刷の処理速度が低下したり、画像処理中に使用するメモリ量が多くなる。このため、このようなケースの場合には、ジョブ履歴生成部2006は画像処理部に画像処理は依頼しないこととする。
【００４３】
ジョブ履歴管理部2002は、ジョブ履歴生成部2006により生成されたジョブ履歴を外部記憶装置204に格納する。また、ジョブ履歴管理部2002は、図８〜図１０で後述するタイミングで、外部記憶装置204に記憶されているジョブ履歴を、データ送受信部2003を介して処理サーバー30に送信する。また、ジョブ履歴管理部2002は、処理サーバー30への送信が完了した送信済みのジョブ履歴について外部記憶装置204から削除する。なお、ジョブ履歴は、画像形成装置20で実行されたジョブに対応する処理対象の画像を含むコンテンツ情報と該ジョブの属性情報とを含むものであり、詳細は図５で後述する。
【００４４】
図５は、画像形成装置20のジョブ履歴管理部2002が処理サーバー30に送信するジョブ履歴500の一例を示す図である。
図５に示すように、ジョブ履歴500は、ジョブの実行に付随する属性情報501と、ジョブの実行対象のコンテンツ情報510等から構成される。
例えば、属性情報501は、ジョブ履歴ID502、ジョブ種別503、ジョブ実行ユーザ名504、ジョブ開始時刻505、ジョブ実行機器506、ページ数507、ジョブ実行結果508等の情報を含む。
【００４５】
ジョブ履歴ID502は、本ジョブ履歴を識別するための識別情報である。ジョブ種別503は、本ジョブ履歴ID502に対応するジョブの種別を表わし、例えばコピーやプリント等である。ジョブ実行ユーザ名504は、本ジョブ履歴ID502に対応するジョブの実行を指示したユーザを示す名称である。
【００４６】
ジョブ開始時刻505は、本ジョブ履歴ID502に対応するジョブの実行を開始した年月日／時刻を表わす。ジョブ開始時刻505は、例えば、画像形成装置20が外部から印刷ジョブを受信した際にキューに一時的に保存され、そして実行のためにキューから読み出された時刻である。
【００４７】
ジョブ実行機器506は、本ジョブ履歴ID502に対応するジョブを実行した機器の名称を表わし、ここではプリンター02（画像形成装置20）を表わす。上述したように、ジョブ履歴500は、処理サーバー30に送信される。その結果、処理サーバー30は、ネットワーク50に接続された複数の画像形成装置20からジョブ履歴500を受信して管理することになる。その際に、処理サーバー30は、ジョブ実行機器506の情報を利用して各画像処理装置のジョブ履歴を管理することができる。
【００４８】
ページ数507は、本ジョブ履歴ID502に対応するジョブの実行対象のページ数を表わす。ページ数507は、画像の所定単位に応じた論理的なページ数であってもよいし、記録媒体に基づく物理的なページ数であってもよい。ジョブ実行結果508は、本ジョブ履歴ID502に対応するジョブの実行結果を表わす。
【００４９】
コンテンツ情報510は、本ジョブ履歴ID502に対応するジョブの実行対象の画像データ511やテキストデータ512についての情報を含む。情報とは、例えば、画像データやテキストデータの外部記憶装置204内の記憶位置である。また、コンテンツ情報510は、属性情報501で表わされるページ数507分のコンテンツ情報を含む。なお、ジョブ履歴を画像形成装置20から処理サーバー30に送信する際には、コンテンツ情報510内の画像データやテキストデータについての情報に基づき、外部記憶装置204に記憶される画像データやテキストデータも、ジョブ履歴の一部として処理サーバー30に送信する。また、送信されたジョブ履歴を削除する際には、該ジョブ履歴の一部として送信した画像データやテキストデータについても外部記憶装置204から削除する。
【００５０】
図５に示すジョブ履歴500は、「2017年6月16日12時09分」に「User001」というユーザが「プリンター02」により「3」ページからなる文書を印刷するジョブを実行したことを示している。そして、その実行結果が「成功（印刷成功）」したことを示している。
【００５１】
また、図５に示すジョブ履歴500は、1つのジョブに対して1つではなく、複数のジョブ履歴が対応する場合もある。その場合には、例えば、同じジョブに対応するジョブ履歴を共通のジョブ履歴IDとしてもよい。もしくは、ジョブ履歴IDに付加されたサブ番号等で同じジョブに対応することを示すようにしてもよい。
【００５２】
図６は、画像形成装置20が処理サーバー30へジョブ履歴を送信するための各種設定を行う設定画面600の一例を示す図である。
設定画面600は、表示部207に表示され、入力部206を介してユーザからの指定を受け付ける。設定画面600により設定を変更した場合、設定管理部2001は、その変更された値を外部記憶装置204に保存する。
【００５３】
画面601では、ラジオボタン601aで「送信スケジュールとして、送信間隔を指定して常にジョブ履歴を送信する」、もしくは、ラジオボタン601bで「送信開始時間を指定し、別途指定する送信停止時間帯になるまでの時間にジョブ履歴を送信する」を指定する。ラジオボタン601aの「常に送信」を指定した場合には、送信間隔も指定する。また、ラジオボタン601bの「送信開始時間を指定し、送信停止時間帯まで送信する」を指定した場合には、「送信開始時間」として送信を開始する時刻も指定する。
さらに、チェックボックス601cで「送信停止時間帯」を設定するかを指定し、送信停止時間帯を設定する場合には、その時間帯も指定する。
【００５４】
本画面例の場合、「0:00」からジョブ履歴の送信を開始し、送信停止時間帯が開始される「8:00」まで送信を行うように設定されている。この場合、ジョブ履歴管理部2002は、ジョブ履歴送信時間を管理するタイマを起動し、「0:00」になった場合に、ジョブ履歴を処理サーバー30へ送信する。また、ジョブ履歴管理部2002は、1つのジョブ履歴送信を完了するたびに時刻を確認して送信停止時間になっていないか判断し、送信停止時間になっていない場合のみ、次のジョブ履歴を処理サーバー30へ送信する。
【００５５】
なお、本画面例において有効になっていない30分間隔で常に送信する設定では、ジョブ履歴管理部2002は、チェックボックス601cで送信停止時間帯が指定されている場合、送信停止時間帯を除いて、指定された30分間隔でジョブ履歴を処理サーバー30へ送信する。ここで、1回の送信で、外部記憶装置204に保存された全てのジョブ履歴を送信し、その後30分間待機して再度次の送信処理を実行としてもよい。また、1回の送信で送信するジョブ履歴の数やデータサイズを固定（図示しないがユーザによる指定可）とし、規定のジョブ履歴を送信完了後、30分間待機して再度規定のジョブ履歴を次の送信処理によって、処理サーバー30へ送信してもよい。
【００５６】
画面602では、チェックボックス602aで、特定の時刻までにジョブログ送信を完了する必要があるか否かを指定する。また、ラジオボタン602bで「［スリープ移行時間の設定］に従う」、又は、ラジオボタン602cで「監査時間」を選択する。ラジオボタン602cの「監査時間」を選択した場合には、「監査時間」として監査が開始される時刻も指定する。
【００５７】
本画面例の場合、ラジオボタン602cで「監査時間」を選択し、監査時間を「9:00」に指定しているため、画像形成装置20は、「9:00」までに監査に必要なジョブ履歴を、処理サーバー30へ送信する必要がある。なお、監査とは、データベースを検索し、過去に実行されたジョブの内容を参照したり、メール等で通知された、特定期間（例えば24時間）で実行されたジョブのジョブ履歴のリストを、ユーザが確認することである。また、監査時間とは、監査を行う時間であり、本画面例では1つのみ指定可能だが、複数個の指定が可能であっても構わない。
【００５８】
本画面例の場合、ジョブ履歴管理部2002は、ジョブ履歴生成部2006からの、ジョブが実行されたことによるジョブ履歴が生成された旨のジョブ履歴生成通知を受信するたびに、外部記憶装置204の使用容量を確認する。使用容量を確認した結果、指定の時間までにジョブ履歴の送信が完了するか否かを、図７において後述する判断基準に基づいて判断する。もしくは、定期的に外部記憶装置204の使用容量を確認し、同様に指定の時間までにジョブ履歴の送信が完了するか否かを判断してもよい。指定の時間までにジョブ履歴の送信が完了しないと予測できた場合には、画像形成装置20は処理サーバー30へジョブ履歴を送信する。このとき、現在時刻が画面601の送信停止時間に含まれているとしても送信開始してもよいものとする。
【００５９】
また、ラジオボタン602bで「［スリープ移行時間の設定］に従う」を選択した場合、図示しない画像形成装置20の別の設定画面において指定されたスリープ移行時間の設定時刻までに、監査に必要なジョブ履歴を、処理サーバー30へ送信する必要がある。この場合の処理も、上述したラジオボタン602cで「監査時間」を指定した場合と同様である。例えば、図示しない画像形成装置20の別の設定画面においてスリープモードへの移行時間として「30分」が設定されている場合、スリープ制御部2005は、画像形成装置20で所定の処理が完了したタイミングで30分間のタイマを設定する。所定の処理とは、ユーザ操作による指示を伴う処理であり、例えば、画像形成装置20へのログイン操作や、ジョブ実行、設定画面の表示である。そして、そのまま所定の処理が行われない状態で30分間が経過すると、スリープ制御部2005は、画像形成装置20をスリープモードに移行させる。一方、30分間が経過する前に所定の処理が行われた場合、スリープ制御部2005はタイマをリセットし、再度、30分間のタイマを設定する。
【００６０】
画面603では、画像形成装置20が外部記憶装置204の容量不足を検知した場合（ジョブ履歴を保存するための領域の残りの容量が所定量より少なくなった場合）の動作を指定する。画面603において、チェックボックス603aで、空き容量不足を警告すると指定した場合には、ジョブ履歴管理部2002が、ジョブ履歴生成部2006からのジョブ履歴生成通知を受信するたびに、外部記憶装置204の使用容量又は空き容量を確認し、空き容量不足か否かを判断する。もしくは、定期的に外部記憶装置204の使用容量又は空き容量を確認してもよい。なお、ジョブ履歴生成通知は、ジョブ履歴管理部2002がジョブ履歴生成部2006から受信する、ジョブが実行されたことによるジョブ履歴が生成された旨の通知である。
【００６１】
ジョブ履歴管理部2002は、外部記憶装置204が空き容量不足と判断した場合、かつ、ラジオボタン603cで「容量不足時は自動送信する」が指定されている場合に、「送信の対象」で指定されているジョブ履歴を処理サーバー30へ送信する。ラジオボタン603eで「サイズが大きいジョブ履歴限定」が指定されている場合には、時間がかかるために画像処理が行われなかったジョブ履歴を、処理サーバー30へ送信する。例えば、印刷実行時に、プリンタードライバで1200dpiなどの大きな解像度を指定された印刷ジョブ、又は、A3以上の大きな用紙を指定された印刷ジョブのジョブ履歴である。また、「送信の対象」で「すべて」が指定されている場合には、ジョブ履歴生成部2006によってジョブ履歴が生成された順に、ジョブ履歴を処理サーバー30へ送信する。ここで、ラジオボタン603eの「サイズが大きいジョブ履歴限定」が指定されている場合に、画像処理が行われなかったサイズが大きなジョブ履歴を優先し、その後、画像処理が行われたサイズが小さなジョブ履歴を送信してもよい。
【００６２】
ジョブ履歴管理部2002は、ラジオボタン603dで「スケジュールに従う」が指定されている場合に、外部記憶装置204の容量不足を検知した場合には、データの自動送信を行わなくてもよい。その場合は、空き容量不足を警告した後、画面601のスケジュール設定に従った次回の送信開始時間を待つ。
なお、上述した画面602にも、画面603と同様に、「送信の対象」を指定するためのＵＩを設けて、特定時間までにジョブ履歴送信を完了する場合の送信対象を指定可能にしてもよい。例えば、画面603の「送信の対象」のラジオボタン603d「すべて」及びラジオボタン603e「サイズが大きいジョブ履歴限定」と同様のボタンを、画面602にも設けてもよい。
【００６３】
図７は、ジョブ履歴管理部2002が、処理サーバー30へジョブ履歴を送信するために必要な送信時間を算出するための基準値を示すテーブル700の一例を示す図である。
ジョブ履歴管理部2002は、図７に示す基準値からジョブ履歴の送信時間を算出し、外部記憶装置204に保存されたジョブ履歴を、指定された時間までに処理サーバー30へ送信可能か否かを判定する。
【００６４】
図７のテーブル700では、データサイズ701と送信時間702を定義している。
図７の例では、10MBのデータを送信するのに2000ミリ秒かかり、500MBのデータを送信するのには12000ミリ秒かかると定義されている。
前述の通り、ジョブ履歴管理部2002は、ジョブ履歴生成部2006からのジョブが実行されたことによるジョブ履歴が生成された旨のジョブ履歴生成通知を受信するたび、もしくは、定期的に、外部記憶装置204の使用容量または空き容量を確認して計算する。送信時間とは、例えばジョブ実行対象のコンテンツを送信用フォーマットに変換してから通信装置205からネットワーク50に出力完了となるまでの送信処理に要する所要時間である。しかし、データサイズに応じて変化するのであれば、他に定義された送信処理に要する所要時間でもよい。
【００６５】
図７では、データサイズに基づいて送信時間を特定しているが、他の方法により送信時間を特定してもよい。例えば、1ページ当たりのデータサイズであってもよいし、用紙サイズと色に基づいて送信時間を特定するようにしてもよい。
【００６６】
また、図７に示す基準値は、プログラムで予め定められている固定値である。しかし、固定値である必要はなく、システムの管理者等が任意に値を変更したり、図示しない処理の時間を記載したログや、ジョブ履歴送信処理の送信時間を実測した値を自動的に図７のテーブルに反映し、テーブルを随時更新するようにしてもよい。
【００６７】
以下、図８〜図１１のフローチャートを用いて、画像形成装置20のジョブ履歴管理部2002が実行する処理について説明する。図８〜図１１に示す処理は、CPU201が例えばROM202に記憶されているプログラムをRAM203に読み出して実行することにより実現される。
【００６８】
図８は、本実施形態における第１の定期実行処理の一例を示すフローチャートである。本処理は、画像形成装置20のジョブ履歴管理部2002が外部記憶装置204の使用容量又は空き容量を確認し、容量不足と判断した場合にジョブ履歴を処理サーバー30へ送信する処理に対応する。また、本処理は、ジョブ履歴管理部2002がジョブ履歴生成部2006からの、ジョブが実行されたことによるジョブ履歴が生成された旨のジョブ履歴生成通知を受信するたびに、もしくは、例えば5分間隔などの定期間隔ごとに実行される。
【００６９】
まずS801において、ジョブ履歴管理部2002は、外部記憶装置204の使用容量または空き容量を確認し、空き容量不足か否かを判断する。空き容量を確認する場合は、外部記憶装置204の総容量も確認する必要があり、「空き容量＝総容量−使用容量」で算出できる。空き容量不足か否かの判断基準は、ジョブ履歴管理部2002が保持する図示しない空き容量の閾値を下回って外部記憶装置204が使用されたかどうかで判断する。空き容量の閾値は、例えば、外部記憶装置204の総容量に対し30％とし、外部記憶装置204の空き容量確認のタイミングで空き容量が30％未満（例えば28％）だった場合には「容量不足」と判断する。なお、判断基準をジョブ履歴管理部2002が保持する図示しない使用容量の閾値を上回って外部記憶装置204が使用されたかどうかで「容量不足」を判断してもよい。この場合は、閾値を使用容量とし、例えば、閾値が外部記憶装置204の総容量の70％の場合は、外部記憶装置204の使用容量確認のタイミングで、外部記憶装置204の使用容量が70％を上回る量（例えば71％）である場合には「容量不足」と判断する。
【００７０】
また、S801にて、例えばS816で後述する容量不足通知済みフラグの状況を確認し、容量不足通知済みフラグがONで、且つ、外部記憶装置204に十分な空き容量が確保できたと判断した際に、容量不足通知済みフラグをOFFに変更する処理を行ってもよい。
【００７１】
上記S801において、外部記憶装置204が容量不足でないと判断した場合（S801でNoの場合）、ジョブ履歴管理部2002は、S802に処理を進める。
S802において、ジョブ履歴管理部2002は、現在時刻が送信時間であるか否かを確認する。送信時間とは、ジョブ履歴管理部2002が設定管理部2001を介して、外部記憶装置204から取得する設定情報の一部である。例えば、図６の画面601において送信開始時間から送信停止時間帯が始まるまでであり、画面601の場合は、「0:00」から「8:00」までの間の時間である。
【００７２】
上記S802において、現在時刻が送信時間ではないと判断した場合（S802でNoの場合）、ジョブ履歴管理部2002は、本フローチャート処理を終了し、次回の実行タイミングを待つ。なお、ジョブ履歴管理部2002が取得する設定情報は、外部記憶装置204に保存された画像形成装置20の設定全体を含む設定情報を取得することを想定しているが、個別の設定情報を、次のステップ以降の必要なタイミングで取得しても構わない。
【００７３】
一方、上記S802において、現在時間が送信時間であると判断した場合（S802でYesの場合）、ジョブ履歴管理部2002は、S803に処理を進める。
S803において、ジョブ履歴管理部2002は、外部記憶装置204に未送信のジョブ履歴が保存されているか否かを確認する。未送信ジョブ履歴が保存されていないと判断した場合（S803でNoの場合）、ジョブ履歴管理部2002は、本フローチャート処理を終了する。
【００７４】
一方、未送信ジョブ履歴が保存されていると判断した場合（S803でYesの場合）、ジョブ履歴管理部2002は、S804に処理を進める。
S804において、ジョブ履歴管理部2002は、上記S802で取得した設定情報から、現在時間が送信停止時間であるかを確認する。図６の画面601の例では、現在時間が「8:00」から「17:00」までの間である場合に、送信停止時間であると判断する。
【００７５】
上記S804において、送信停止時間であると判断した場合（S804でYesの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。
一方、上記S804において、送信停止時間ではないと判断した場合（S804でNoの場合）、ジョブ履歴管理部2002は、S805に処理を進める。
S805において、後述する図９に示すジョブ履歴の送信処理を実行する。図９に示すジョブ履歴の送信処理を実行後は、ジョブ履歴管理部2002は、S803に処理を戻す。
【００７６】
また、上記S801において、外部記憶装置204が容量不足であると判断した場合（S801でYesの場合）、ジョブ履歴管理部2002は、S806に処理を進める。
S806において、ジョブ履歴管理部2002は、上記S802で取得した設定情報から、データの自動送信の設定を確認する。データの自動送信の設定とは、図６の画面603のラジオボタン603cの「容量不足時は自動送信する」が指定されているかどうかである。
【００７７】
上記S806において、「容量不足時は自動送信する」が選択されていると判断した場合（S806でYesの場合）、ジョブ履歴管理部2002は、S807へ処理を進める。
S807において、ジョブ履歴管理部2002は、上記S802で取得した設定情報から、「送信の対象」を確認する。図６の画面603のラジオボタン603eの「サイズが大きいジョブ履歴限定」が指定されていると判断した場合（S807でYesの場合）、ジョブ履歴管理部2002は、S808に処理を移行し、サイズが大きいジョブ履歴を処理サーバー30へ送信開始する。
【００７８】
S808において、ジョブ履歴管理部2002は、外部記憶装置204の容量不足によりジョブ履歴の自動送信を開始した旨を通知する。通知は、設定管理部2001に保持されている図示しない管理者のメールアドレスへ、メールにより通知してもよいし、ユーザインタフェースを用いて表示部207に画面を表示し、通知を行ってもよい。通知内容に、サイズが大きいジョブ履歴に対して自動送信を開始した旨を明示してもよい。
【００７９】
次にS809において、ジョブ履歴管理部2002は、外部記憶装置204に、未送信のサイズが大きいジョブ履歴が保存されているか否かを確認する。ここで、サイズが大きいジョブ履歴とは、時間がかかるために画像処理が行われなかったジョブ履歴である。例えば、印刷実行時に、プリンタードライバで1200dpiなどの大きな解像度を指定された印刷ジョブ、又は、A3以上の大きな用紙を指定された印刷ジョブのジョブ履歴である。
【００８０】
上記S809において、未送信のサイズが大きいジョブ履歴が保存されていると判断した場合（S809でYesの場合）、ジョブ履歴管理部2002は、S810に処理を進める。
S810において、ジョブ履歴管理部2002は、外部記憶装置204に保存されているジョブ履歴のうち、上述したサイズが大きいジョブ履歴を取得する。
次にS811において、ジョブ履歴管理部2002は、データ送受信部2003を介して、上記S810で取得したジョブ履歴を処理サーバー30へ送信する。
次にS812において、ジョブ履歴管理部2002は、上記S811で送信したジョブ履歴を、外部記憶装置204から削除し、S809に処理を戻す。すなわち、サイズが大きいジョブ履歴が存在する間は、該サイズが大きいジョブ履歴の送信を繰り返す。
【００８１】
一方、上記S809において、未送信のサイズが大きいジョブ履歴が保存されていないと判断した場合（S809でNoの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。なお、S809〜S812では、ジョブ履歴を記憶する領域の残りの容量が所定量より少なくなった場合等に、該領域に保存された複数のジョブ履歴の中から、所定のサイズより大きなサイズの１以上のジョブ履歴を特定し、処理サーバー30へ送信する処理を記載している。しかし、サイズが大きいジョブ履歴を優先し、その後、その他のジョブ履歴も処理サーバー30へ送信しても構わない。その他のジョブ履歴は、サイズに並び替えてサイズが大きい順番に送信してもよいし、ジョブ履歴生成部2006が生成した順番に送信してもよい。
【００８２】
また、上記S807において、「送信の対象」として図６の画面603のラジオボタン603dの「すべて」が指定されていると判断した場合（S807でNoの場合）、ジョブ履歴管理部2002は、S813に処理を進め、ジョブ履歴生成部2006が生成した順番にジョブ履歴を処理サーバー30へ送信開始する。
【００８３】
S813において、ジョブ履歴管理部2002は、上記S808と同様に、外部記憶装置204の容量不足によりジョブ履歴の自動送信を開始した旨を通知する。通知は、設定管理部2001に保持されている図示しない管理者のメールアドレスへ、メールにより通知してもよいし、ユーザインタフェースを用いて表示部207に画面を表示し、通知を行ってもよい。通知内容に、すべてのジョブ履歴に対して自動送信を開始した旨を明示してもよい。
【００８４】
次にS814において、ジョブ履歴管理部2002は、上記S803と同様に、外部記憶装置204に未送信のジョブ履歴が保存されているかを確認する。未送信ジョブ履歴があると判断した場合（S814でYesの場合）、ジョブ履歴管理部2002は、S815に処理を移行する。
S815において、ジョブ履歴管理部2002は、後述する図９に示すジョブ履歴の送信処理を実行する。図９に示すジョブ履歴の送信処理を実行後は、ジョブ履歴管理部2002は、S814に処理を戻す。
【００８５】
一方、上記S814において、外部記憶装置204に未送信のジョブ履歴が保存されていないと判断した場合（S814でNoの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。S807〜S815では、送信スケジュールに依存せずにジョブ履歴を処理サーバー30へ送信することができる。
【００８６】
また、上記S806において、「容量不足時は自動送信する」が選択されていないと判断した場合（S806でNoの場合）、ジョブ履歴管理部2002は、S816へ処理を進める。
S816において、ジョブ履歴管理部2002は、容量不足通知済みフラグを確認する。なお、容量不足通知済みフラグは、後述のS817の通知を何回も行わないために使用するフラグである。容量不足通知済みフラグは、上記S801においてOFFにしてもよいが、予めジョブ履歴管理部2002起動時にOFFに設定してもよい。不足通知済みフラグの情報は、設定管理部2001を介して、外部記憶装置204に保存されている。
【００８７】
上記S816において、容量不足通知済みフラグがOFFであると判断した場合（S816でNoの場合）、ジョブ履歴管理部2002は、S817に処理を進める。
S817において、ジョブ履歴管理部2002は、システムの管理者へ容量不足通知を行う。容量不足の通知は、設定管理部2001に保持されている図示しない管理者のメールアドレスへ、メールにより通知してもよいし、ユーザインタフェースを用いて表示部207に画面を表示し、通知を行ってもよい。
【００８８】
次にS818において、ジョブ履歴管理部2002は、容量不足通知済みフラグをONにする。こうすることで、一度行った、外部記憶装置204の容量不足通知を、再度行うことがなくなる。S818の処理の後、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。
また、上記S816において、容量不足通知済みフラグがONであると判断した場合（S816でYesの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。
【００８９】
図９は、本実施形態におけるジョブ履歴送信処理の一例を示すフローチャートである。この処理は、画像形成装置20のジョブ履歴管理部2002が、データ送受信部2003を介して、外部記憶装置204に保存されたジョブ履歴を処理サーバー30へ送信する処理に対応する。この処理は、図８のS805、S815で行われる処理である。
【００９０】
S901において、ジョブ履歴管理部2002は、外部記憶装置204に保存されているジョブ履歴を取得する。ここで、本実施形態でのジョブ履歴を取得する順序は、ジョブ履歴生成部2006が生成した順番であるが、サイズに並び替えてサイズが大きい順番とする等、その他の定義された順番であってもよい。
【００９１】
S902において、ジョブ履歴管理部2002は、データ送受信部2003を介して、上記S901で取得したジョブ履歴を処理サーバー30へ送信する。
次にS903において、ジョブ履歴管理部2002は、上記S902で送信したジョブ履歴を、外部記憶装置204から削除し、本フローチャートの処理を終了する。
【００９２】
図１０は、本実施形態における第２の定期実行処理の一例を示すフローチャートである。この処理は、画像形成装置20のジョブ履歴管理部2002が、外部記憶装置204に保存されたジョブ履歴を、指定時間までに処理サーバー30へ送信可能かを判断し、送信不可と判断した場合、ジョブ履歴を処理サーバー30へ送信する処理に対応する。本処理は、ジョブ履歴管理部2002がジョブ履歴生成部2006からの、ジョブが実行されたことによるジョブ履歴が生成された旨のジョブ履歴生成通知を受信するたびに、もしくは、例えば5分間隔などの定期間隔ごとに実行される。ただし、図１０の処理は、図１０の処理が実行中の場合には実行されない。
【００９３】
S1001において、ジョブ履歴管理部2002は、設定管理部2001を介して、外部記憶装置204に保存された設定情報を取得し、特定時間までにジョブ履歴を送信する設定になっているか否かを確認する。この設定は、例えば、図６の画面602における「特定時間までにジョブ履歴送信を完了する」チェックボックス602aにチェックが入っているか否かで判断する。チェックボックス602aにチェックが入っていいない場合には、ジョブ履歴管理部2002は、特定時間までにジョブ履歴を送信する設定になっていない（S1001でNo）と判断し、本フローチャートの処理を終了する。
【００９４】
一方、チェックボックス602aにチェックが入っている場合には、ジョブ履歴管理部2002は、特定時間までにジョブ履歴を送信する設定になっている（S1001でYes）と判断し、S1002に処理を進める。なお、S1001で、ジョブ履歴管理部2002が取得する設定情報は、外部記憶装置204に保存された画像形成装置20の設定全体を含む設定情報を取得することを想定しているが、個別の設定情報を、次のステップ以降の必要なタイミングで取得しても構わない。
【００９５】
S1002において、ジョブ履歴管理部2002は、上記S1001において取得した設定情報から、送信完了時間は［スリープ移行時間の設定］に従うか否かを確認する。この設定は、例えば、図６の画面602におけるラジオボタン602bの「［スリープ移行時間の設定］に従う」が指定されているか否かで判断する。ラジオボタン602bが指定されている場合には、ジョブ履歴管理部2002は、「［スリープ移行時間の設定］に従う」が指定されている（S1002でYes）と判断し、S1003に処理を進める。
S1003において、ジョブ履歴管理部2002は、上記S1001において取得した設定情報から、［スリープ移行時間の設定］の設定情報（スリープ移行時間の設定時刻）を取得し、S1005に処理を進める。
【００９６】
一方、ラジオボタン602bが指定されていない場合には、ジョブ履歴管理部2002は、「［スリープ移行時間の設定］に従う」が指定されていない（S1002でNo）と判断し、S1004に処理を進める。
S1004において、ジョブ履歴管理部2002は、上記S1001において取得した設定情報から、「監査時間」として指定された時刻を取得する。例えば、図６の画面602では、監査時間が「9:00」に指定されている。
【００９７】
S1005において、ジョブ履歴管理部2002が、前記ジョブ履歴生成通知を受信、又は、定期間隔ごとに、現在の外部記憶装置204に保存されたジョブ履歴を、指定された時間までに処理サーバー30へ送信できるか否かを判断する。この判断処理の詳細は図１１において後述する。
【００９８】
次にS1006において、ジョブ履歴管理部2002は、上記S1005の結果を受けて、指定された時間までに処理サーバー30へ送信完了できるか確認する。送信完了可と判断した場合（S1006でYesの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。
【００９９】
一方、上記S1006において、送信完了できないと判断した場合（S1006でNoの場合）、ジョブ履歴管理部2002は、S1007に処理を進める。
S1007において、ジョブ履歴管理部2002は、外部記憶装置204に保存されている未送信のジョブ履歴を全て取得し、S1008に処理を進める。
S1008において、ジョブ履歴管理部2002は、上記S1007で取得したジョブ履歴のうち最も古い未送信のジョブ履歴を処理サーバー30へ送信する。
次にS1009において、ジョブ履歴管理部2002は、上記S1008で送信したジョブ履歴を、外部記憶装置204から削除する。
【０１００】
次にS1010において、ジョブ履歴管理部2002は、上記S1007で取得したジョブ履歴の全ての送信が完了したか否かを判定する。上記S1007で取得したジョブ履歴のうち未だ送信していいないものがあると判断した場合（S1010でNoの場合）、ジョブ履歴管理部2002は、S1008に処理を戻し、次の未送信のジョブ履歴の送信を行うように制御する。
一方、上記S1010において、上記S1007で取得したジョブ履歴の全ての送信が完了したと判断した場合（S1010でYesの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。
【０１０１】
図１１は、送信完了可否確認処理の一例を示すフローチャートである。この処理は、画像形成装置20のジョブ履歴管理部2002が、外部記憶装置204に保存されたジョブ履歴を、指定された時間までに処理サーバー30へ送信できるか否かを確認する処理に対応する。本実施形態では、外部記憶装置204に保存されたジョブ履歴のデータサイズを基準に送信できるか否かを判断するが、サイズ以外に、ジョブ履歴の数や、ページ数、用紙サイズと色などを、基準にしても構わない。この処理は、図１０のS1005で行われる処理である。
【０１０２】
S1101において、ジョブ履歴管理部2002は、図７に示した、ジョブ履歴管理部2002が処理サーバー30へジョブ履歴を送信するために必要な送信時間を算出するための基準値を取得する。
次にS1102において、ジョブ履歴管理部2002は、外部記憶装置204に蓄積されたジョブ履歴の合計サイズを取得する。
【０１０３】
次にS1103において、ジョブ履歴管理部2002は、上記S1101で取得した基準値と、上記S1102で取得したジョブ履歴の合計データサイズを基に、図１０のS1003又はS1004で取得した時間（スリープ移行時間又は監査時間）までに送信可能か否かを算出する。以下、図１０のS1003又はS1004で取得した時間に対応する時刻を「送信完了時刻」という。この時、「送信完了時刻」に対し、猶予時間分を早めた時間として算出する。猶予時間とは、例えば10分や、図１０の処理が定時間隔実行の場合は、定期間隔の2倍の時間でもよい。猶予時間を設けるのは、「送信完了時刻」にぴったりの時刻で送信可能か否かを算出した場合、ネットワーク負荷による誤差等が原因で実際は算出結果よりも遅くなる可能性があるためである。「送信完了時刻」までに確実にジョブ履歴を送信完了させることが目的であるため、時間に猶予を持たせる。
【０１０４】
次にS1104において、ジョブ履歴管理部2002は、上記S1103の算出の結果から、送信可能か否かを判断する。「送信完了時刻」までに確実にジョブ履歴を送信完了できると判断した場合（S1004でYesの場合）、ジョブ履歴管理部2002は、S1108に処理を進める。
一方、上記S1104において、「送信完了時刻」までに確実にジョブ履歴を送信完了できないと判断した場合（S1004でNoの場合）、ジョブ履歴管理部2002は、S1105に処理を進める。
【０１０５】
S1105において、ジョブ履歴管理部2002は、送信完了不可通知済みフラグを確認する。送信完了不可通知済みフラグは、後述のS1106の通知を重複して行わないために使用するフラグである。送信完了不可通知済みフラグは、予めジョブ履歴管理部2002の起動時にOFFに設定し、設定管理部2001を介して、外部記憶装置204に保存されている。また、図６の画面602において指定された特定時間（［スリープ移行時間の設定］、又は、監査時間）で指定された時間が経過した場合には、フラグがOFFに更新され、設定管理部2001を介して、外部記憶装置204に保存される。
【０１０６】
上記S1105において、送信完了不可通知済みフラグがONであると判断した場合（S1105でYesの場合）、ジョブ履歴管理部2002は、S1108に処理を進める。
一方、上記S1105において、送信完了不可通知済みフラグがOFFであると判断した場合（S1105でNoの場合）、ジョブ履歴管理部2002は、S1106に処理を進める。
【０１０７】
S1106において、ジョブ履歴管理部2002は、外部記憶装置204に保存されたジョブ履歴を、図１０のS1003又はS1004で取得した時間（送信完了時刻）まで送信スケジュールに関係なく送信する処理を開始する旨の通知（例外送信開始通知）をユーザに行う。この通知は、設定管理部2001に保持されている図示しない管理者のメールアドレスへ、メールにより通知してもよいし、ユーザインタフェースを用いて表示部207に画面を表示し、通知を行ってもよい。また、この通知を処理サーバー30へ通知することで、処理サーバー30がユーザへ送信する特定期間（例えば24時間）で実行されたジョブのジョブ履歴のリストの補足情報として付加して管理者等に通知してもよい。
【０１０８】
次にS1107において、ジョブ履歴管理部2002は、送信完了不可通知済みフラグをONにする。こうすることで、一度行った、外部記憶装置204に保存されたジョブ履歴を、図１０のステップS1003又はS1004で取得した時間までに送信できない旨の通知を、重複して行うことがなくなる。S1107の処理の後、ジョブ履歴管理部2002は、S1108に処理を進める。
【０１０９】
S1108において、ジョブ履歴管理部2002は、上記S1104で行った判断の結果を、呼び出し元（図１０のS1005）へ返し、本フローチャートの処理を終了する。
【０１１０】
以上示したように、第１実施形態では、画像処理装置の記憶装置の容量がひっ迫したことを検知した場合に、画像処理装置の記憶装置に保存されたジョブ履歴を、サイズが大きなジョブ履歴から外部装置へ送信する。また、監査タイミングなど特定の時刻までに画像処理装置の記憶装置に保存されたジョブ履歴が送信完了できるか判断し、送信完了できる時間にジョブ履歴を外部装置に送信開始する（例外送信）。このような構成によれば、画像処理装置の記憶装置に、サイズが大きな画像を含むジョブ履歴が蓄積している場合、通信セッションが確立できた際、最初に当該ジョブ履歴を送信するため、効率的に記憶装置の空き容量を増やすことが可能となる。また、ジョブ履歴を監査する時刻やスリープ移行時刻までに、必要なジョブ履歴をサーバーに送信することが可能となる。即ち、ジョブ履歴を保存するための領域の空き容量を効率的に増やし、画像処理装置のダウンタイムの発生を抑えることができる。
【０１１１】
〔第２実施形態〕
以下、本発明の第２実施形態について説明する。
第２実施形態では、処理サーバー30が、サイズが大きいジョブ履歴を優先的に受信可能とするため、画像形成装置20及び処理サーバー30においてジョブ履歴の優先度の定義と、優先度に基づいた処理を実施する。本処理は、第１実施形態における図１０のS1008の拡張であるが、他の画像形成装置20のジョブ履歴管理部2002がジョブ履歴を処理サーバー30へ送信する処理全般（図８のS811、図９のS902等）に適用しても良い。
【０１１２】
図１２は、処理サーバー30のソフトウェア構成の一例を示す図である。図１２に記載のソフトウェア構成は、処理サーバー30のCPU301が例えば外部記憶装置304等に記憶されているプログラムをRAM303に読み出して実行することにより実現される。
【０１１３】
図１２において、データ送受信部3003は、画像形成装置20やデータベース40等との各種データの送受信処理を行う。データ送受信部2003は、例えば、ジョブ履歴生成部2006で生成されたジョブ履歴を画像形成装置20から受信する。また、データ送受信部2003は、データ処理したジョブ履歴等をデータベース40に送信する。
【０１１４】
データ処理部3004は、ジョブ履歴に含まれる画像データに対して、OCR（Optical Character Recognition）処理を行ってテキスト情報を抽出したり、画像データの解像度やファイルフォーマットを変換したりする処理を行う。
【０１１５】
設定管理部3001は、処理サーバー30の動作に関わる設定、および、管理対象の画像形成装置20の設定を記憶装置に保存し、該記憶装置から読み出す。保存先の記憶装置は、処理サーバー30のROM302、RAM303、外部記憶装置304、又は、データベース40の外部記憶装置304、又は、その他の処理サーバー30がアクセス可能な記憶装置等である。ここで、処理サーバー30の動作に関わる設定とは、例えばデータ処理部3004の動作設定（OCR処理を行うか否かの設定、解像度設定、画像ファイルフォーマット等）や、データベース40へのアクセス情報などが含まれる。
【０１１６】
ジョブ履歴管理部3002は、データ送受信部3003を介して、画像形成装置20からジョブ履歴を受信し、データ処理部3004を介してデータ処理を実施した上で、処理サーバー30の外部記憶装置304に格納する。ここで、データ処理とは、画像データに対して、OCR処理を行ってテキスト情報を抽出したり、画像データの解像度やファイルフォーマットを変換したりする処理である。データ処理によって得られたテキスト情報は、ジョブ履歴と紐付けられて保存され、ジョブ履歴の検索に利用される。
また、ジョブ履歴管理部3002は、データ送受信部3003を介して、ジョブ履歴やテキスト情報等をデータベース40に送信する。ジョブ履歴管理部3002は、データベース40への送信が完了したジョブ履歴やテキスト情報については、処理サーバー30の外部記憶装置304から削除する。
【０１１７】
図１３は、第２実施形態におけるジョブ履歴送信処理の一例を示すフローチャートである。本処理は、画像形成装置20のCPU201が例えばROM202に記憶されているプログラムをRAM203に読み出して実行することにより実現される。また、本処理は、画像形成装置20のジョブ履歴管理部2002がジョブ履歴を処理サーバー30へ送信する処理に対応する。また、本処理は、ジョブ履歴管理部2002がジョブ履歴生成部2006からの、ジョブが実行されたことによるジョブ履歴が生成された旨のジョブ履歴生成通知を受信するたびに、もしくは、例えば5分間隔などの定期間隔ごとに実行される。具体的には、図１０のS1008の拡張であるが、図８のS811、図９のS902の処理内容に適用してもよい。
【０１１８】
まずS1301において、画像形成装置20のジョブ履歴管理部2002は、ジョブ履歴のサイズを確認する。ここで確認対象とするジョブ履歴は、ジョブ履歴１つに対して、本処理を実行してもよいし、複数のジョブ履歴を確認してサイズ情報をリスト化することで効率化を図ってもよい。本実施例では、ジョブ履歴1つに対して処理を行うことし、外部記憶装置204に保存されているジョブ履歴の個数分、本処理が繰り返されるものとする。
【０１１９】
S1302において、ジョブ履歴管理部2002は、上記S1301において取得したジョブ履歴のサイズに関して、サイズが大きいジョブ履歴であるか否かを判断する。ここで、サイズが大きいジョブ履歴とは、時間がかかるために画像処理が行われなかったジョブ履歴である。例えば、印刷実行時に、プリンタードライバで1200dpiなどの大きな解像度を指定された印刷ジョブ、又は、A3以上の大きな用紙を指定された印刷ジョブのジョブ履歴である。
【０１２０】
上記S1302の判断の結果、サイズが大きいジョブ履歴であると判断した場合（S1302でYesの場合）、ジョブ履歴管理部2002は、サイズ大フラグをOnに設定し（S1303）、S1305に処理を進める。
一方、サイズが大きいジョブ履歴ではないと判断した場合（S1302でNoの場合）、サイズ大フラグをOffに設定し（S1304）、S1305に処理を進める。
【０１２１】
S1305において、ジョブ履歴管理部2002は、サイズ大フラグの値を確認する。そして、サイズ大フラグの値がOnと判断した場合（S1305でYesの場合）、ジョブ履歴管理部2002は、S1306に処理を進める。
S1306において、ジョブ履歴管理部2002は、サイズが大きいジョブ履歴を処理サーバー30へ送信するために、データ送受信部2003を介して、優先度フラグ付きAPIを使用して当該ジョブ履歴を送信し、S1308に処理を進める。ここで、優先度フラグ付きAPIとは、プログラム上の既存のジョブ履歴送信APIに対し、新しい引数を追加することで、処理サーバー30がその値によって優先して処理すべきジョブ履歴か否かを判定可能にする手段を指す。新しい引数を追加しなかったとしても、既存APIの既存引数の値によって、処理サーバー30が優先して処理すべきジョブ履歴か否かを判断できるのであれば、その形態であってもかまわない。また、サイズが大きいジョブ履歴を処理サーバー30へ送信する専用APIを別途用意してもよい。以上のようなAPIを用いてジョブ履歴を送信することにより、送信先の処理サーバー30で受信したジョブ履歴が優先して処理すべきジョブ履歴か否かを容易に認識可能になる。
【０１２２】
一方、上記S1305において、サイズ大フラグの値がOffであると判断した場合（S1305でNoの場合）、ジョブ履歴管理部2002は、S1307に処理を進める。
S1307において、ジョブ履歴管理部2002は、データ送受信部2003を介して、従来の既存APIを使用して当該ジョブ履歴を送信し、S1308に処理を進める。本処理で送信されるジョブ履歴は、サイズが小さなジョブ履歴であり、具体的には、ジョブ実行後又はジョブ実行と並行して画像処理が行われたジョブ履歴である（以下「通常ジョブ履歴」と呼ぶ）。また、既存APIの既存引数の値によって、処理サーバー30が優先する必要のない通常ジョブ履歴か否かを判断できるようにしたり、通常ジョブ履歴専用のAPIを別途用意してもよい。
【０１２３】
S1308において、ジョブ履歴管理部2002は、データ送受信部2003を介して、処理サーバー30からの応答を受信する。
次にS1309において、ジョブ履歴管理部2002は、データ送受信部2003を介して、上記S1308で受信した応答を確認し、送信が成功したか否かを判断する。送信成功した旨の情報が応答に含まれると判断した場合（S1309でYesの場合）、ジョブ履歴管理部2002は、本フローチャートの処理を終了する。
【０１２４】
一方、送信成功した旨の情報が応答に含まれていないと判断した場合（S1309でNoの場合）、ジョブ履歴管理部2002は、S1310に処理を進める。
【０１２５】
S1310において、ジョブ履歴管理部2002は、データ送受信部2003を介して、上記S1308で受信した応答に、サーバービジーエラーが含まれるか否かを判断する。ここで、サーバービジーエラーとは、処理サーバー30が同時受信可能な接続数を超えてクライアントからのジョブ履歴が送信された場合に、クライアントに待機を要請するために定義した応答である。
【０１２６】
上記S1310において、サーバービジーエラーが応答に含まれると判断した場合（S1310でYesの場合）、ジョブ履歴管理部2002は、S1311に処理を進める。
S1311において、ジョブ履歴管理部2002は、上記S1303又はS1304で値を書き換えた、サイズ大フラグの値を確認する。そして、サイズ大フラグの値がOnの場合（S1311でNoの場合、つまりサイズが大きなジョブ履歴の場合）、ジョブ履歴管理部2002は、そのままS1305に処理を移行させる。これにより、優先して処理すべきジョブ履歴については、すぐに次回（リトライ時の）ジョブ履歴送信（再送信）を行うことができる。
【０１２７】
一方、サイズ大フラグの値がOffの場合（S1311でYesの場合、つまりサイズが大きなジョブ履歴ではない場合）、ジョブ履歴管理部2002は、S1312に処理を進める。
S1312において、ジョブ履歴管理部2002は、一定時間の待機を行う。ここで、待機の目的は、処理サーバー30へのジョブ履歴送信処理が集中していることに対して一定時間待つことで、次回（リトライ時の）ジョブ履歴送信（再送信）をスムーズに行うためのものである。待機時間は、数十秒〜数十分など、外部記憶装置204の容量等を鑑みて、妥当な時間を定義する。また、ユーザインタフェース等により、待機時間を変更可能にしてもよい。一定時間の待機後、ジョブ履歴管理部2002は、S1305に処理を移行させる。
【０１２８】
一方、上記S1310において、サーバービジーエラーが応答に含まれないと判断した場合（S1310でNoの場合）、ジョブ履歴管理部2002は、S1313に処理を進める。
上記S1313において、ジョブ履歴管理部2002は、エラー処理を行い、本フローチャートの処理を終了する。
【０１２９】
図１４は、第２実施形態におけるジョブ履歴受信処理の一例を示すフローチャートである。本処理は、処理サーバー30のCPU301が例えば外部記憶装置304に記憶されているプログラムをRAM303に読み出して実行することにより実現される。また、本処理は、データ送受信部3003が、図１３のS1306又はS1307において画像形成装置20から送信されるジョブ履歴を受信するたびに実行される。また、本処理は、処理サーバー30が、画像形成装置20から受信したジョブ履歴に対して各種処理を実行するフローチャートである。
【０１３０】
S1401において、処理サーバー30のジョブ履歴管理部3002は、データ送受信部3003を介して、ジョブ履歴受信APIの優先度フラグの有無を確認する。ジョブ履歴受信APIは、図１３のS1306又はS1307で使用されたAPIのことであり、画像形成装置20のジョブ履歴管理部2002がS1306とS1307のどちらの処理を実行したかによって、決定される。本実施例では、同一APIの引数に指定する優先度フラグの有無で判断するが、全く異なるAPIを呼び分ける形態であっても構わない。
【０１３１】
次にS1402において、ジョブ履歴管理部3002は、受信したジョブ履歴が優先受信すべきものであるか否かを判断する。ここでは、上記S1401において、ジョブ履歴受信APIの優先度フラグが有だった場合（サイズが大きなジョブ履歴を受信した場合）に優先受信すべきジョブ履歴であると判断する。そして、優先すべきジョブ履歴と判断した場合（S1402でYesの場合）、ジョブ履歴管理部3002は、S1403に処理を進める。
【０１３２】
S1403において、ジョブ履歴管理部3002は、データ送受信部3003が受信可能な優先ジョブ履歴数が1以上か否かを確認する。受信可能な優先ジョブ履歴数とは、予め受信可能な一定の値（上限）を定義しておくことで、メモリやCPUの使い過ぎや、システム全体のパフォーマンス低下防止を実現するためのものである。受信可能な優先ジョブ履歴数は、例えば「５」である。
【０１３３】
上記S1403において、データ送受信部3003が受信可能な優先ジョブ履歴数が０以下と判断した場合（S1403でNoの場合）、ジョブ履歴管理部3002は、S1408に処理を進める。S1408以降の処理については後述する。
【０１３４】
一方、上記S1403において、データ送受信部3003が受信可能な優先ジョブ履歴数が1以上であると判断した場合（S1403でYesの場合）、ジョブ履歴管理部3002はS1404へ進む。
【０１３５】
次にS1404において、ジョブ履歴管理部3002は、データ送受信部3003が受信可能な優先ジョブ履歴数から１を減算した値を、受信可能な優先ジョブ履歴数として設定する。
【０１３６】
続いてS1405において、ジョブ履歴管理部3002は、データ処理部3004がデータ処理を実行するためのプロセス起動数に、プロセス起動可能数から１を減算した値を設定する。ここで本処理の目的について説明する。優先ジョブ履歴（つまりサイズが大きなジョブ履歴）を受信し、データ処理している間は、メモリやCPU等のコンピュータ資源を大量に使用することが予想される。そのため、データ処理部3004の実行プロセスを制限することにより、システム全体のパフォーマンス低下を防止することを目的としている。S1405の処理の後、ジョブ履歴管理部3002は、S1409に処理を進める。
【０１３７】
また、上記S1402において、優先しないジョブ履歴と判断した場合（S1402でNoの場合）、ジョブ履歴管理部3002は、S1406に処理を進める。
S1406において、ジョブ履歴管理部3002は、データ送受信部3003が受信可能な通常ジョブ履歴数が1以上か否かを確認する。受信可能な通常ジョブ履歴数とは、受信可能な優先ジョブ履歴数と同様に、予め受信可能な一定の値（上限）を定義しておくことで、メモリやCPU等コンピュータ資源の使い過ぎや、システム全体のパフォーマンス低下防止を実現するためのものである。受信可能な通常ジョブ履歴数は、例えば「３」であり、受信可能な優先ジョブ履歴数（例えば「５」）よりも小さい値を定義する。なお、本実施例では、受信可能な優先ジョブ履歴数と受信可能な通常ジョブ履歴数を別の値として定義しているが、ジョブ履歴のサイズで区別することなく、これらを合わせた値「受信可能なジョブ履歴数」という定義をしても構わない。本実施例では、優先ジョブ履歴をたくさん受信できるよう、受信可能な優先ジョブ履歴数を通常部ジョブ履歴数よりも多く定義している。しかし、受信可能な通常ジョブ履歴数と、受信可能な優先ジョブ履歴数を同じ値としてもよい。
【０１３８】
上記S1406において、データ送受信部3003が受信可能な通常ジョブ履歴数が０以下と判断した場合（S1406でNoの場合）、ジョブ履歴管理部3002は、S1408に処理を進める。
S1408において、ジョブ履歴管理部3002は、データ送受信部3003を介して、サーバービジーエラーを応答（クライアントに待機を要請するための応答）としてデータ送受信部2003へ送信し、本フローチャートの処理を終了する。
【０１３９】
一方、上記S1406において、データ送受信部3003が受信可能な優先ジョブ履歴数が０以下であると判断した場合（S1406でNoの場合）、ジョブ履歴管理部3002はS1407に処理を進める。
S1407において、ジョブ履歴管理部3002は、データ送受信部3003が受信可能な通常ジョブ履歴数から１を減算した値を、受信可能な通常ジョブ履歴数として設定し、S1409に処理を進める。
【０１４０】
S1409において、データ処理部3004は、プロセス起動可能数が１以上か否かを確認する。プロセス起動可能数は、データ処理を実行するためのプロセス又はスレッドを複数起動し、データ処理を並行で実施することによりシステムとしてのパフォーマンス向上を図る施策の一環で、設けられたものである。処理サーバー30のメモリやCPUの搭載基準を基に、予め一定の値（上限）を定義し、その値を超えない範囲で、プロセス又はスレッドを複数起動可能とする。
【０１４１】
データ処理部3004は、プロセス起動可能数が０以下と判断した場合（S1409でNoの場合）、待機を行い（S1411）、S1409に処理を戻す。S1411の待機に関しては、数十秒から数分の待機を想定しているが、ジョブ履歴管理部2002が発行するイベントにより、通知を受けることで待機状態を解除する等の実施形態でもよい。
【０１４２】
一方、上記S1409において、データ処理部3004は、プロセス起動可能数が１以上と判断した場合（S1409でYesの場合）、S1410に処理を進める。
【０１４３】
S1410において、データ処理部3004は、データ処理を実行するためのプロセスを起動し、ジョブ履歴に対するデータ処理を実行する。データ処理とは、前述の通り、画像データに対して、OCR処理を行ってテキスト情報を抽出したり、画像データの解像度やファイルフォーマットを変換したりする処理である。そして、S1410で起動したプロセスの完了後、S1412に移行する。
【０１４４】
S1412において、ジョブ履歴管理部3002は、上記S1402と同様に、受信したジョブ履歴が優先受信すべきものであったか否かを判断する。詳細はS1402と同じなのでここでは説明を省くが、S1402の結果を変数等に一時保存して置き、それを参照する形でもよい。
【０１４５】
上記S1412において、優先すべきジョブ履歴と判断した場合（S1412でYesの場合）、ジョブ履歴管理部3002は、S1413に処理を進める。
【０１４６】
S1413において、ジョブ履歴管理部3002は、データ処理部3004がデータ処理を実行するためのプロセス起動数に、プロセス起動可能数に１を加算した値を設定する。これは、データ処理部3004によるサイズが大きなジョブ履歴に対するデータ処理が完了したため、データ処理部が起動可能なプロセス数を戻すための処理である。
【０１４７】
またS1414において、ジョブ履歴管理部3002は、データ送受信部3003が受信可能な優先ジョブ履歴数に１を加算した値を、受信可能な優先ジョブ履歴数として設定する。これは、データ送受信部3003によるサイズが大きなジョブ履歴に対するデータ受信が完了したため、受信可能数を戻すための処理である。
【０１４８】
また、上記S1412において、優先すべきジョブ履歴でないと判断した場合（S1412でNoの場合）、ジョブ履歴管理部3002は、S1415に処理を進める。
S1415において、ジョブ履歴管理部3002は、データ送受信部3003が受信可能な通常ジョブ履歴数に１を加算した値を、受信可能な通常ジョブ履歴数として設定する。これは、データ送受信部3003による通常のジョブ履歴に対するデータ受信が完了したため、受信可能数を戻すための処理である。
上記S1414又はS1415の処理の後、ジョブ履歴管理部3002は、本フローチャートの処理を終了する。
【０１４９】
以上示したように、第２実施形態において、画像形成装置20では、優先度が高いジョブ履歴（サイズが大きいジョブ履歴）を処理サーバー30に送信する場合には、頻繁にリトライして待機時間を少なくするように制御する。一方、通常のジョブ履歴を送信する場合には、従来通り待機した後にリトライするように制御する。これにより、サーバーの負荷を上げることなく、優先度が高いジョブ履歴（サイズが大きいジョブ履歴）を速やかに送信することが可能となる。
【０１５０】
また、処理サーバー30では、優先度が高いジョブログをデータ処理する間には、プロセス起動可能数を制限する（減少させる）ように制御する。これにより、優先度が高いジョブ履歴（サイズが大きいジョブ履歴）の処理によってコンピュータリソースが大量に消費されてしまいパフォーマンスが低下してしまうことを抑えることができる。
また、受信可能な優先ジョブ履歴数を受信可能な通常ジョブ履歴数よりも大きな値とすることにより、優先度が高いジョブ履歴（サイズが大きいジョブ履歴）の受信を優先させることができる。
この結果、画像形成装置の記憶装置が容量不足になってしまうことを抑えることができる。
【０１５１】
以上、各実施形態によれば、ジョブ履歴を保存するための領域の空き容量を効率的に増やし、画像処理装置のダウンタイムの発生を抑えることができる。
【０１５２】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
また、上記各実施形態を組み合わせた構成も全て本発明に含まれるものである。
【０１５３】
（その他の実施形態）
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路（例えば、ASIC）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図１】
2019097150.tif 000003
【図２】
2019097150.tif 000004
【図３】
2019097150.tif 000005
【図４】
2019097150.tif 000006
【図５】
2019097150.tif 000007
【図６】
2019097150.tif 000008
【図７】
2019097150.tif 000009
【図８】
2019097150.tif 000010
【図９】
2019097150.tif 000011
【図１０】
2019097150.tif 000012
【図１１】
2019097150.tif 000013
【図１２】
2019097150.tif 000014
【図１３】
2019097150.tif 000015
【図１４】
2019097150.tif 000016