JP2004178325A - Job management method - Google Patents
Job management method Download PDFInfo
- Publication number
- JP2004178325A JP2004178325A JP2002344579A JP2002344579A JP2004178325A JP 2004178325 A JP2004178325 A JP 2004178325A JP 2002344579 A JP2002344579 A JP 2002344579A JP 2002344579 A JP2002344579 A JP 2002344579A JP 2004178325 A JP2004178325 A JP 2004178325A
- Authority
- JP
- Japan
- Prior art keywords
- job
- log
- information
- unit
- printer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】周辺機器から取得したジョブ情報を集計する際に、ユーザの選択によって集計項目を変更することができ、各ユーザにとって好適な集計結果を得ることができるジョブ管理方法を提供する。
【解決手段】ジョブアカウントサーバ121は、ユーザが利用するクライアントコンピュータ101からプリンタ108〜110に出力されたジョブ情報を管理する。まず、ジョブ情報を集計する際の集計項目が設定され、ジョブログ集計部125では、ジョブログ記録部124に記録されたジョブ情報から、設定された集計項目に基づいてジョブ情報が取得される。そして、取得されたジョブ情報に含まれる例えば、枚数情報等の履歴情報が集計され、集計された履歴情報の集計結果が出力される。
【選択図】 図1An object of the present invention is to provide a job management method capable of changing a total item by selecting a user when totaling job information acquired from a peripheral device, and obtaining a total result suitable for each user.
A job account server manages job information output from a client computer used by a user to printers. First, a total item when totaling job information is set, and the job log totaling unit 125 acquires job information from the job information recorded in the job log recording unit 124 based on the set total item. Then, for example, history information such as the number-of-sheets information included in the acquired job information is totaled, and a totaling result of the totaled history information is output.
[Selection diagram] Fig. 1
Description
【0001】
【発明の属する技術分野】
本発明は、ネットワークに接続されたプリンタ、スキャナ、ファクシミリ、複写機及びそれらを統合したマルチファンクション機器(MFP)等の周辺機器に対するジョブ情報を管理する技術に関する。
【0002】
【従来の技術】
従来から、画像処理システムにおけるジョブ情報を取得して管理するジョブ管理方法が開発されてきている。適切なジョブ情報の管理(ジョブアカウント)を行うためには、周辺機器で実行されたジョブ情報を取得し、取得したジョブ情報をユーザの用途に合わせて集計できることが重要である。
【0003】
従来、取得したジョブ情報を集計する際には、予めシステム側で決められた項目に従って集計され、その結果が表示されている。項目の例としては、「ユーザ名」、「プリンタ名」、「出力枚数」等が挙げられる。すなわち、従来は、「誰が、どのプリンタに、何枚出力した」という集計結果を示していた。
【0004】
【発明が解決しようとする課題】
しかしながら、従来のジョブ情報の集計結果では、必ずしもユーザが必要とする情報が得られない場合があった。何故ならば、ユーザが必要とする集計項目の内容は、各ユーザによって異なるからである。
【0005】
本発明は、このような事情を考慮してなされたものであり、周辺機器から取得したジョブ情報を集計する際に、ユーザの選択によって集計項目を変更することができ、各ユーザにとって好適な集計結果を得ることができるジョブ管理方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
上記課題を解決するため、本発明は、情報処理装置から周辺機器に出力されたジョブ情報を管理するジョブ管理方法であって、前記ジョブ情報を集計する際の集計項目を設定する設定工程と、設定された前記集計項目に基づいて前記ジョブ情報を取得する取得工程と、取得された前記ジョブ情報に含まれる履歴情報を集計する集計工程と、前記集計工程で集計された前記履歴情報の集計結果を出力する出力工程とを有することを特徴とする。
【0007】
【発明の実施の形態】
以下、図面を参照して、本発明の実施形態について説明する。
【0008】
<第1の実施形態>
図18は、本発明の第1の実施形態に係る周辺機器のジョブ情報を管理するジョブアカウントシステムの概要を説明するためのブロック図である。図18に示すように、本実施形態においてジョブアカウントシステムは、クライアントコンピュータ101と、ジョブアカウントサーバ121と、周辺機器(本実施形態では、プリンタ108〜110)とから構成されている。
【0009】
ここで、上記システムの構成メンバである画像形成装置の好適な一例であるプリンタ108〜110について説明する。本実施形態では、プリンタ108〜110は、それぞれ異なる機能を有しており、それに応じて動作が異なっている。例えば、プリンタ108は最も一般的なプリンタであり、クライアントコンピュータ101の送信部107から送信されたデータを受信し、そのデータを印刷する機能を有する。また、プリンタ109はジョブ終了時点でそのジョブの総排紙ページ数をクライアントコンピュータ101の送信部107に返信する機能を有する。さらに、プリンタ110は印刷後にジョブ情報をプリンタ内の記憶装置に格納する機能を有する。
【0010】
また、図18のクライアントコンピュータ101は、次のようにプリンタ108〜110に印刷を行わせる。すなわち、クライアントコンピュータ101のアプリケーション102は、OSのグラフィック描画を処理するサブシステムであるGDI104を、API(アプリケーションプログラミングインタフェース)を呼び出すことによって操作する。そして、クライアントコンピュータ101のプリンタドライバ105が、GDI104からの要求を印刷を行うプリンタ(ここでは、プリンタ108〜110のいずれか)に適合した形式に変換し、スプーラ106に送信する。
【0011】
そして、クライアントコンピュータ101のジョブアカウントクライアント118は、アプリケーション102によるGDI104の呼び出しをフック(監視して認識)する。
【0012】
ここで、ジョブアカウントクライアント118は、プリンタにおける改ページ或いは排紙を行うAPIをカウントすることで、アプリケーション102が発行したジョブの排紙枚数或いはページ数をフック部103を介して取得する。これにより取得したジョブ情報を「フックログ」と称す。
【0013】
また、ジョブアカウントクライアント118は、あらかじめプリンタドライバ105とのプロトコルを定義し、通信することで、ジョブ情報をクライアントコンピュータ101内のプリンタドライバ105から受信することができる。これにより取得したジョブ情報を「ドライバログ」と称す。
【0014】
さらに、ジョブアカウントクライアント118は定期的にスプーラ106を監視し、スプールされているジョブが有れば、そのジョブの情報をAPIで取得することにより、ジョブの排紙枚数或いはページ数を取得する。これにより取得したジョブ情報を「APIログ」と称する。
【0015】
さらにまた、ジョブアカウントクライアント118は、送信部107とのプロトコルを定義し通信することで、プリンタが返す総排紙ページ数を取得する。これにより取得したジョブ情報を「送信部ログ」と称する。
【0016】
また、ジョブアカウントサーバ118は、画像形成装置の好適な一例であるプリンタ110等のように、プリンタ内にジョブ情報を記憶するプリンタ(本実施形態では、プリンタ110)とプロトコルを定義し通信することで、プリンタからジョブ情報を取得する。これにより取得したジョブ情報を「機器ログ」と称す。機器ログは、プリンタ内のRAM又はHDDに記憶されるが、記憶容量の制限のため、送信部107から送信されたドキュメント名等の情報をすべて記憶することができないことが多い。
【0017】
尚、周辺機器としての画像形成装置には、上述したようなプリンタの他にも、ファクシミリ、複写機、複写機の一種であるプリンタとスキャナとを組合せたコピーシステム及びこれらの複合機を含むものであってもよい。
【0018】
また、本実施形態では、ジョブアカウントクライアント118は、上述したフックログ、ドライバログ、APIログ、送信部ログ及び機器ログのうち、どれを選択するかの優先順位を設けておき、いずれかをジョブアカウントサーバ118に送信する。そして、ジョブアカウントサーバ118は、閲覧希望者等からの要求に応じてジョブログを選択し、単位期間別、デバイス別、ジョブ発行者別等の集計処理等を行う。
【0019】
以下、本実施形態に係るジョブアカウントシステムの詳細について説明する。
【0020】
図1は、本発明の第1の実施形態に係るジョブアカウントシステムの細部モジュール構成を示すブロック図である。図1に示すように、本発明は複数の機器からなるシステムにおいて達成される。また、本システムの各装置にプログラムを供給することにより、同様に本発明の適用が可能であることはいうまでもない。以下では、一回の印刷ジョブに対して、フックログ、ドライバログ、APIログ及び送信部ログの4つのログが作成される様子について詳細に説明する。また、本実施形態に係るジョブアカウントシステムの概要については既に説明したので、以下では、図18を用いて上述したものと異なる部分について特に詳述する。
【0021】
図1において、101は標準的なパーソナルコンピュータ(PC)又はワークステーションからなるクライアントコンピュータであり、アプリケーション102から印刷が指示された場合、送信部107を介して、プリンタ108〜110のいずれかに印刷データを送信する。クライアントコンピュータ101内のCPUで実行されるソフトウェアモジュールであるジョブアカウントクライアント118は、各種印刷処理に関するログを収集して、そのログをジョブログ送信部117を介してジョブアカウントサーバ121に送信する。この際、ジョブアカウントクライアント118の一部であるジョブログ送信部117は、OSが提供する送信部107を制御して、ジョブログ受信部122へログを送信してもよい。
【0022】
クライアントコンピュータ101において、アプリケーション102に対して印刷指示が発行されると、図18を用いて説明した場合と同様に、アプリケーション102は描画のためのGDIコールを行う。フック部103は、ジョブアカウントクライアント118により組み込まれるもので、GDIコールをフックして、どのGDIコールがいかなるパラメータで呼ばれたのか、或いは呼ばれた回数等の情報を蓄積する。この情報に基づいて作成された履歴を「フックログ」111と称す。図7は、第1の実施形態において作成されるフックログ111の一例を示す図である。クライアントコンピュータ101のフック部103は、規定の判断基準に基づき、場合によってはドキュメント名を変更する。ドキュメント名並びにその変更処理については後述する。
【0023】
プリンタドライバ105は、GDIコールを印刷設定に従ってプリンタが解釈できる印刷データに変換し、スプーラ106に送信する。また、プリンタドライバ105は、変換した内容から印刷情報を抜き出し、それをドライバログ112としてジョブアカウントクライアント117に送信する。
【0024】
ジョブアカウントクライアント117は、常にスプーラ106にジョブが溜まっていないかどうかを監視している。そして、スプーラ106にジョブが存在すれば、ジョブアカウントクライアント117はOSにより規定されているAPIを発行し、印刷情報を取得して、それをAPIログ113として取得する。
【0025】
送信部107は、ネットワークを介してプリンタ108、109、110のうち、いずれかのアプリケーションから指定されたプリンタと通信し、当該プリンタがレディ(Ready)状態であれば、印刷データを送信する。このとき、例えば、HP社のPrinter Job Language(プリンタ・ジョブ・ランゲージ)のコマンドを用いれば、プリンタ109において、印刷ジョブの全ページの排紙が完了した後に当該ジョブが排紙したページ数を取得することが可能である。送信部(ポートモニタ)107は、プリンタ109から受信したページ数等のジョブ情報を、ジョブアカウントクライアント118に送る。ここで、この情報に基づいて作成された印刷ログを「送信部ログ」114と称す。
【0026】
このように、ジョブアカウントクライアント118では、一回の印刷ジョブに対して、フックログ111、ドライバログ112、APIログ113、送信部ログ114の4つのログが取得される。但し、常に4つのログが取得されるとは限らない。例えば、クライアントコンピュータ101のアプリケーション102がスプーラ106に直接印刷データを送った場合、フックログ111やドライバログ112は取得することができない。また、プリンタドライバ105とジョブアカウントクライアント118間でプロトコルが規定されていなければ、ドライバログ112は取得できない。さらに、プリンタ108のように排紙ページ数を送信部107に通知する機能がない場合は、送信部ログ114の排紙ページ情報を取得できない。しかし、ジョブに係る複数の処理においてログを取得することで、一部の処理においてログ取得が不可能な場合であっても、総合的にはログを取得できる確率が高くなる。
【0027】
一方、プリンタ108は、送信部107から送られたジョブを解釈し、印刷を実行する。また、プリンタ109は、送信部107から送られたジョブを解釈し、印刷を実行する。そして印刷終了後、排紙ページ数、排紙枚数を送信部107に返信する。さらに、プリンタ110は、送信部107から送られたジョブを解釈し、印刷を実行する。そして印刷終了後、ジョブ情報を後述する内部のHDDに記憶する。
【0028】
ジョブアカウントサーバ121において、ジョブログマージ部116は、フックログ111、ドライバログ112、APIログ113、送信部ログ114をマージ処理して、ジョブログ送信部117に送信する。尚、マージ処理については、後述する。そして、ジョブログ送信部117はジョブアカウントサーバ121のジョブログ受信部122にジョブログを送信する。
【0029】
図2は、図1に示したジョブアカウントシステムを構成するクライアントコンピュータ101及びジョブアカウントサーバ121の電気的構成の一例を示すブロック図である。図2において、201はCPU、即ち中央処理装置であり、それぞれのコンピュータ全体の制御及び演算処理等を行うものである。また、202はROM、即ち読み出し専用メモリであり、システム起動プログラムの情報等の記憶領域である。
【0030】
さらに、203はRAM、即ちランダムアクセスメモリであり、使用制限のないデータ記憶領域であり、オペレーティングシステム、アプリケーション102、フック部103、GDI104、プリンタドライバ105、送信部107、ジョブアカウントクライアント118等のソフトウェアモジュール及び通信制御等のプログラムがHD部206やROM202からロードされ、CPU201により実行される領域である。
【0031】
さらにまた、204はKBC、即ちキーボード制御部であり、キーボードより入力データを受け取りCPUへ伝達する。205はCRT、即ちディスプレイ制御部(表示制御手段)であり、ディスプレイ装置への表示制御をする。206はHD部、即ちFD(フレキシブルディスク装置)、HD(ハードディスク装置)、SRAM(不揮発性記憶装置)等の外部記憶装置であり、プログラムおよびデータを記憶、格納しておき、実行時に必要に応じて参照またはRAM203へロードする。
【0032】
207は通信部であり、ネットワーク通信制御を行うものであり、図1を用いて上述したように、ネットワークに接続された他のコンピュータや周辺機器との通信が可能であり、送信部107、ジョブログ送信部117により制御される。また、208はシステムバスであり、上述された構成要素間のデータの通路となるべきものである。
【0033】
原則として、ジョブアカウントサーバ121もハードウェア的にはクライアントコンピュータ101と同様の構成をとりうる。但し、ジョブアカウントサーバ121のHDD内には、ジョブログマージ部123、ジョブログ記録部124、ジョブログ受信部122及びジョブログ集計部125が記憶されている。そして、ジョブログ受信部122は、図2に示す通信部207を制御する。
【0034】
図3は、図1に示されるジョブアカウントシステムを構成するプリンタ108〜110の細部構成の一例を示すブロック図である。図3において、305はプリンタ全体を制御するコントローラ部である。コントローラ部305の内部構成として、301はCPU、即ち中央処理装置であり、このコントローラ部305の制御及び演算処理等を行うものである。302はROM、即ち読み出し専用メモリであり、システム起動プログラムの情報等の記憶領域である。303はRAM、即ちランダムアクセスメモリであり、使用制限のないデータ記憶領域であり、304はHD、即ちハードディスク或いはSRAM等の不揮発性記憶装置である。また、RAM303はオペレーティングシステムや通信制御およびエンジン制御などのプログラムがロードされ、実行される領域でもある。
【0035】
306はこのプリンタ108〜110の入出力エンジン部であり、コントローラ部305の制御のもとで印刷動作や画像読み取り動作をするものである。307は通信部であり、ネットワーク通信制御を行うものであり、図1を用いて上述したようにクライアントコンピュータ101やジョブアカウントサーバ121との通信が可能である。308はユーザ操作入出力部であり、ユーザとの対話的な設定作業を行う。また、309はシステムバスであり、上述した各構成要素間のデータの通路となるべきものである。
【0036】
図4は、図1に示される本実施形態に係るジョブアカウントサーバ121におけるメモリマップの一例を表す図である。図4において、41は基本I/Oプログラムを示す。また、42はウィンドウシステム等オペレーティングシステムがRAM203にロードされ実行可能となった状態のメモリマップを示す。さらに、43は本実施形態におけるアプリケーションのプログラムがRAM3にロードされ実行可能となった状態のメモリマップを示す。44は関連データがRAM3にロードされ実行可能となった状態のメモリマップを示す。45は各々のプログラムが使用するワークエリアのメモリマップを示す。
【0037】
図5は、本発明の第1の実施形態におけるジョブアカウントプログラム及び関連データが格納されているフレキシブルディスク(FD)の構成内容を示す図である。本発明の第1の実施形態におけるジョブアカウントプログラム及び関連データは、フレキシブルディスク(FD)中に記録されているものとする。すなわち、フレキシブルディスク(FD)の記録領域50には、ボリューム情報51、ディレクトリ情報52、アプリケーション実行ファイル53、アプリケーション起動プログラム関連データファイル54が記録されている。
【0038】
尚、記録領域50は、DVDでもあってもよいし、また、後述するコンピュータ62にネットワーク接続された外部サーバ装置内のHDD(図示省略)であって、本実施形態のジョブアカウントプログラム(図1に示されたクライアントコンピュータ101内の各モジュール、並びに、ジョブアカウントサーバ121内の各モジュール)がネットワークを介してダウンロードして導入されたものであってもよいことは言うまでもない。ここで、コンピュータ62は、図2に示したコンピュータと同等のものである。
【0039】
図6は、本発明の第1の実施形態におけるFDに記録されたジョブアカウントプログラム及び関連データをコンピュータにロードする一例を示す図である。すなわち、フレキシブルディスク(FD)60に記録されたジョブアカウントプログラム及び関連データは、FDドライブ(DKC)61を介してコンピュータ62にロードすることができる。
【0040】
フレキシブルディスク(FD)60をFDドライブ(DKC)61にセットすると、オペレーティングシステム42及び基本I/Oプログラム41の制御のもとに、本ジョブアカウントプログラムを実現するためのプログラムモジュール等及び関連データがフレキシブルディスク(FD)60から読み出され、RAM203にロードされて使用可能となる。このようなコンピュータ62は、図18に示されたクライアントコンピュータ1000及びジョブアカウントサーバ1810並びに図1に記載されたクライアントコンピュータ101及びジョブアカウントサーバ121を実現するために用いることができる。
【0041】
また、ジョブアカウントプログラムを実現するためのプログラムモジュール等とは、図1に記載された、クライアントコンピュータ101内又はジョブアカウントサーバ121内の各ソフトウェアモジュールに該当する。もちろん、記憶媒体はFDに限定されるものではなく、DVD、CD−ROMなどを用いても同様であることは言うまでもない。
【0042】
図7は、本発明の第1の実施形態におけるフックログ111の一例を示す図である。フックログ111では、JobId、アプリケーション名、論理ページ数、ドキュメント名等が取得可能である。ここで、JobIdはGDI104に印刷開始を指示したときにGDI104から取得できるものであり、クライアントコンピュータ101の印刷ジョブを一意に指定できるものである。
【0043】
図8は、本発明の第1の実施形態におけるドライバログ112の一例を示す図である。ドライバログ112は、ジョブアカウントクライアント118が印刷実行時にプリンタドライバ105から取得可能な履歴情報である。ドライバログ112では、印刷実行に係るジョブの識別子であるJobId、ジョブが含む印刷データの用紙サイズ、N−up情報、物理ページ数の情報、両面片面情報が取得可能である。用紙サイズ、N−up、物理ページ数、両面片面情報は、プリンタドライバに印刷時又はデフォルト入力され設定される印刷設定から取得する。N−upは用紙に何面の論理ページを割り付けるかの設定である。物理ページ数は、印刷時に出力する用紙の片側を1と数える単位である。
【0044】
例えば、論理ページが4ページの場合に、両面印刷で2−upの印刷処理を行うと、物理ページは2ページとなる。そして、該物理ページが、用紙の表裏に印刷され、1枚の用紙が出力排紙される。表に論理ページの1ページ目、2ページ目、裏に論理ページの3ページ目、4ページ目が印刷される。
【0045】
図9は、本発明の第1の実施形態におけるAPIログ113の一例を示す図である。APIログ113では、JobId、ジョブのオーナ名、スプールデータサイズが取得可能である。
【0046】
図10は、本発明の第1の実施形態における送信部ログ114の一例を示す図である。送信部ログ114では、JobIdが取得可能である。例えば、プリンタ108に送信した場合は、加えて排紙ページ数、排紙枚数が取得できる。
【0047】
尚、上述したフックログ111、ドライバログ112、APIログ113、送信部ログ114のいずれにおいても、当該ジョブが処理済みか否かを示すフラグ情報、並びに、ログの種別を示す情報を記録する領域を設けるものとする。
【0048】
図11は、本発明の第1の実施形態におけるログをマージする手順の一例を説明するためのフローチャートである。以下、図11のフローチャートを用いて、クライアントコンピュータ内のジョブログマージ部116の動作を説明する。ジョブログマージ部116は、図1及び図18を用いて説明した各ログを受信し、その内容をHDD等に記録しておく。そして以下の処理を予め設定された周期で定期的に起動し、各ジョブ毎に、マージ処理を行う。
【0049】
尚、本実施形態においては、ジョブIDをキーとしてログのマージ(併合処理)を行っているが、後述するドキュメントデータ名或いは新ドキュメントデータ名をキーにしてマージしてもよい。以下、図11に示す処理では、クライアントコンピュータ101内において、ジョブログマージ部116は、クライアントコンピュータ101内の複数の各処理によって得られるジョブ情報(フックログ、APIログ、APIログ)がそれぞれ含む開始時刻情報並びに完了時刻情報のエントリが示す開始時刻のうち、最も早い開始時刻と最も遅い完了時刻を特定することができる。そして、各時刻情報は、前述した通り、マージ処理して併合されたジョブ情報として格納される。
【0050】
まず、本発明において管理手段として機能する好適な一例であるジョブログマージ部116は、処理済みフラグがYESとなっていない送信部ログ(図10参照)、すなわち、未処理の送信部ログがあるか否かを検索する(ステップS1101)。その結果、未処理の送信部ログがあれば(Yes)、ステップS1102に進む。
【0051】
ステップS1102において、ジョブログマージ部116は、ステップS1101において未処理と特定された送信部ログ114を別のテンポラリの記憶領域にコピーし、これをログAとする。次いで、ログAからJobIDの部分を取得する(ステップS1103)。さらに、ジョブログマージ部116は、ステップS1103で取得したJobIDに対応するログのうち、まだマージ処理を行っていない、すなわち未処理であるログがあるか否かを、JobIDに基づいてフックログ111、ドライバログ112、APIログ113の各ログを検索して特定することで判断する(ステップS1104)。
【0052】
その結果、ステップS1104で未処理のログが無いと判断した場合(No)は処理を終了する。一方、ステップS1104で未処理のログがあるとジョブログマージ部116が判断した場合(Yes)は、ジョブログマージ部116はステップS1105に進んで、ステップS1104で未処理と判断されたJobID(ここでは便宜のためNとする)と等しいJobIDのログが有るか否かをJobIDに基づいてフックログ111、ドライバログ112、APIログ113の各ログの中から検索して特定しこれをログBとする。
【0053】
その結果、ステップS1105でNと等しいJobIDのログがフックログ111、ドライバログ112、APIログ113の各ログには無かった場合には(No)、ステップS1108に進む。一方、ステップS1105で、Nと等しいJobIDが各ログのいずれかにあった場合(Yes)は、ステップS1106に進む。ステップS1105では、例えば、Nは未処理のログAが含むJobIDのうち、小さなものから順に特定してNとすればよい。
【0054】
ステップS1106において、ジョブログマージ部116は、ステップS1105で特定した、ログAのJobIDNに対応するログの各項目(JobIDNについて取得された各ログが含むジョブ情報)について、ログBが含む項目のうちログAに無い項目があるか否かを判断する。その結果、ステップS1106でログAのJobIDNの項目について、ログBのうちログAに無い項目がないと判断した場合(No)は、ジョブログマージ部116はステップS1108の処理を行う。
【0055】
一方、ステップS1106でログBのうちログAに無い項目があると判断した場合(Yes)、ジョブログマージ部116は、ログAのJobIDNの項目について、ログBのうちログAに無い項目を追加してログAに格納されているデータを併合する(ステップS1107)。ここでログAにログBの項目を付加して作成したログ(以下、「マージログ」127と称す。)の処理済フラグを「YES」としステップS1108に進む。
【0056】
続いて、当該マージログの種別の項目を「マージ」とする。送信部ログ114に対して、図7から図10に示した各ログを図11の処理に基づいて次々にマージすると、図12のようなマージログになる。すなわち、図12は、本発明の第1の実施形態におけるフックログ111、ドライバログ112、APIログ113及び送信部ログ114の項目を備えているマージログ127を示す図である。
【0057】
尚、図11において、ステップS1108に続くステップS1104では、ログAに係る全てのJobIDについて処理が終わったと判断した場合(No)には、処理を終了する。
【0058】
ジョブログマージ部116は、通常、マージ処理を終えるたびに(すなわち、図11に示す処理の後)、マージされたログをログ送信部116に送る。尚、ログ送信部116は、送られてきたログを定期的に、或いは、ジョブログ受信部122の要求に応じて、ジョブログ受信部122に送信する。
【0059】
次に、ジョブアカウントサーバ121の動作について説明する。本実施形態における取得手段の好適な一例であるジョブログ受信部122は、ジョブログ送信部117から送られてくるジョブを取得(受信)して蓄積する。また、定期的にプリンタ110をポーリングし、まだ受信していないジョブ情報があればそれを取得する。このジョブ情報を機器ログ115とする。
【0060】
機器ログ115は、コントローラ部305におけるRAM303或いはHD部304に記憶されるが、記憶容量の制限のため送信部107から送信されたドキュメント名等の情報をすべて記憶することは望ましくない。尚、本実施形態では、ドキュメント名の上限が8文字であるとする。図13は、第1の実施形態における機器ログ115の例を示す図である。また、図14は、第1の実施形態におけるクライアントコンピュータ101のフック部103が動作していない場合の機器ログ115の例を示す図である。
【0061】
一方、本実施形態における管理手段の好適な一例であるジョブログマージ部123は、ジョブアカウントクライアント118から送られたマージログ127と機器ログ115とをマージする。尚、これらをマージする手順については後述する。
【0062】
また、ジョブログ記録部124は、ジョブログマージ部123からジョブログを受け取りHD206等に記憶する。ジョブログ集計部125は、閲覧者からの指示によって、単位期間ごとの印刷ページ数を求めたり、オーナごとの印刷ページ数を求める等の集計処理を行う。
【0063】
ID発生部126は、クライアントコンピュータ101を一意に識別するためのIDを発行する。本実施形態では、各桁がaからzの26通りの値をとりうる4桁の文字列をフック部103の要求に応じて、aaaa,aaab,…,zzzy,zzzzと順に変化させ、クライアントを一意に識別できるように発行する。また、本実施形態では、ホストとジョブIDの組合せを用いて新ドキュメント名を作成するものとするが、後述するように印刷システム全体で一意の新ドキュメント名をジョブアカウントサーバ121において一元発行する方式をとってもよい。
【0064】
図15は、本発明の第1の実施形態におけるドキュメント名を変更する手順の一例を説明するためのフローチャートである。以下、図15のフローチャートを用いて、フック部103の動作を説明する。
【0065】
まず、フック部103は、所定の機器管理プロトコルにより、印刷先のプリンタが機器ログ115を備えているか否かを示す情報を取得して判別する(ステップS1501)。その結果、備えていると判別した場合(Yes)は、ステップS1502へ進む。一方、フックログ部103が、プリンタが機器ログを備えていないと判断した場合(No)は、処理を終了する。
【0066】
ステップS1502において、フック部103は、クライアントIDを取得済であるか否かを判別する。その結果、クライアントIDを取得済の場合(Yes)、ステップS1504へ進む。一方、クライアントIDを取得していない場合(No)、ステップS1503へ進む。ここで、クライアントIDとは、ID発生部126が発行する、クライアントコンピュータ101を一意に識別可能な識別情報である。
【0067】
そして、ステップS1503において、フック部103は、ID発生部126と通信し、クライアントコンピュータ101を一意に識別するIDをID発生部126から取得するものとする。
【0068】
そして、ステップS1502でYesの場合及びステップS1503の処理後、クライアントコンピュータ101内でジョブを一意に特定するクライアント内JOBIDを作成する(ステップS1504)。ここでは、0001から9999までの数値を順に発行するものとする。
【0069】
さらに、フック部103は、ステップS1503で取得済みと判断したクライアントIDとS1504で作成したクライアント内JobIDとを結合し、印刷システム内で一意に定まる新しい識別情報の一例である、新ドキュメント名を作成する(ステップS1505)。
【0070】
さらにまた、フック部103は、アプリケーション102から渡された元のドキュメント名をフックログ111の項目「元ドキュメント名」に格納する(ステップS1506)。さらに、新ドキュメント名を作成し(ステップS1507)、ドキュメント名をステップS1507の新ドキュメント名に置き換える(ステップS1508)。その結果、GDIにはドキュメント名として、新ドキュメント名が渡される。GDI処理の後段である、プリンタドライバ105、スプーラ106、送信部107、プリンタ110における処理は、ドキュメント名はすべて新ドキュメント名で処理されるようにすると好適である。
【0071】
ここで、新ドキュメント名を作成した理由は、印刷装置から取得したジョブ情報をマージする際には、JobIDをそのままマージ処理のキーとして利用することは難しいからである。例えば、ジョブ管理方式の仕様の一部が非公開となっているため、A社開発のアカウントサーバAを利用する場合、A社開発のアカウントサーバは、B社開発のプリンタからは、JobIDを取得することができないことが多い。すなわち、想定していないジョブ管理方式に対応したプリンタからは、ジョブ情報を取得してもこれにジョブIDが含まれないことが多く、これをマージ処理して活用できない。しかし、クライアントコンピュータ内のOSやアプリケーションによって製作され、プリンタに送信されたドキュメント名については、ジョブ情報として取得できることが多い。
【0072】
そこで、ジョブIDの代わりに、クライアント側で管理可能であり、プリンタ側からも、JobIDの代わりに、ジョブ情報のキーとして取得可能なドキュメント名を識別情報として管理することが考えられる。しかし、従来のドキュメント名をそのまま用いると問題が生じる。クライアント側のOS又はアプリケーションが管理できるのは、一般に8文字よりも多く、一般に用いられているOSにおいては255文字までのドキュメント名が付与できる。そして、プリンタが管理できるのは、前述したように8文字までである。また、一般に、ジョブ管理方式において利用できるドキュメント名は8文字までである。これでは、クライアント側において8文字以上のドキュメント名を付けた場合には、クライアント側のOS又はアプリケーションが付けたドキュメント名は異なっている場合であっても、同じドキュメント名のジョブがプリンタ内に並存する場合が出てきて、混乱が生ずる。
【0073】
そこで、アカウントサーバ側でホストIDを発行し、クライアント側で発行されたドキュメント名と組合わせて用いる。これにより、8文字以内でアカウントサーバが管理する、クライアントコンピュータとプリンタを含む印刷システムにおいて一意に定まる新ドキュメント名が完成する。そして、この新ドキュメント名をジョブIDの代わりとしてジョブの識別に用いることができる。そして、一旦、クライアント側で新ドキュメント名を生成してしまえば、以後、プリンタ、クライアント、アカウントサーバにおいて、このドキュメント名をジョブの識別子として活用できる。
【0074】
図16は、本発明の第1の実施形態におけるログをマージして最終ログを作成する手順の一例を説明するためのフローチャートである。以下、図16のフローチャートを用いて、ジョブログマージ部123(機器ジョブログマージ部)の動作を説明する。
【0075】
まず、ジョブログマージ部123は、未処理のマージログがあるか否かを検索する(ステップS1601)。その結果、未処理のマージログがある場合(Yes)、ステップS1602に進む。一方、未処理のマージログが無い場合(No)は処理を終了する。
【0076】
次に、ジョブログマージ部123は、プリンタが機器ログ115を備えているか否かを判別する(ステップS16032)。その結果、機器ログ115を備えている場合(Yes)、ステップS1603に進む。一方、機器ログ115を備えていない場合(No)はステップS1607に進む。
【0077】
さらに、ステップS1603において、ジョブログマージ部123は、未処理の機器ログ115でドキュメント名の項目がステップS1601のマージログ127と同じログがあるか検索して判断する。その結果、あると判断した場合(Yes)は、ステップS1604に進む。一方、ステップS1601のマージログ127と同じログが無いと判断した場合(No)は処理を終了する。
【0078】
ステップS1604において、ジョブログマージ部123は、機器ログ115の排紙ページ数、排紙枚数をマージログ127に置換又は追加する。
【0079】
また、前述したように図13には、本実施形態における機器ログ115の一例を示している。そして、ジョブログマージ部123は、ドキュメント名と元ドキュメント名を入れ換える(ステップS1605)。すなわち、図12と図13の機器ログにこれを適用すると、「ドキュメント名:2001年度年次報告書」が「元ドキュメント名:abcd0001」となる。
【0080】
さらに、ジョブログマージ部123は、マージログ127の元ドキュメント名を削除する(ステップS1606)。これを「最終ログ」とする。例えば、これを図12と図13の機器ログに適用すると、図17に示すようになる。すなわち、図17は、本発明の第1の実施形態に係る最終ログの一例を示す図である。
【0081】
そして、ステップS1607において、ジョブログマージ部123は、最終ログをジョブログ記録部124に送信する。
【0082】
以上説明したように、本実施形態によれば、より正確なドキュメント名や排紙情報を含むジョブ情報を取得することが可能になり、より厳密なジョブアカウントを行うことが可能になる。すなわち、上述したように、アカウントサーバが管理する印刷システムにおいて、唯一の識別情報を用いてマージ処理を行う仕組みを提供することによって、ジョブ情報の管理、及び、印刷枚数や排紙枚数等のカウントにおいても、異なるジョブを同じジョブとして誤って併合して管理してしまうことがなくなり、正確なジョブアカウントが可能となる。
【0083】
<第2の実施形態>
次に、本発明の第2の実施形態について説明するが、以下では、上述した第1の実施形態と異なる部分を中心に説明する。尚、本実施形態で使用されるジョブアカウントシステムの構成は、第1の実施形態におけるものと同様である。
【0084】
図19は、本発明の第2の実施形態におけるジョブログマージ部116におけるマージ処理の一例を示す図である。以下、図19に示すフローチャートを用いて、ジョブログマージ部116の動作を説明する。ジョブログマージ部116は各ログを受信して取得し、その内容をクライアントコンピュータ内のHDD等に記録しておく。そして以下に説明する処理を定期的に起動する。
【0085】
まず、ジョブログマージ部116は、未処理の送信部ログ114があるか否かを検索する(ステップS1901)。その結果、未処理の送信部ログ114があると判断した場合(Yes)、ステップS1902に進む。一方、ステップS1901で未処理の送信部ログ114が無いと判断した場合(No)は処理を終了する。
【0086】
ステップS1902において、ジョブログマージ部116は、送信部ログ114の内容をコピーする。これをログAとする。ここで、送信部ログ114の処理済フラグをYESとする。次いで、ジョブログマージ部116は、ログAからJobIdを抜き出して取得する(ステップS1903)。そして、ジョブログマージ部116は、ステップS1903で取得したログAに係るJobIDのうち、まだマージ処理並びに時刻判断処理が未処理のものがあるか否かを判断する(ステップS1904)。
【0087】
その結果、ステップS1904で未処理のものがないと判断した場合(No)は処理を終了する。一方、ステップS1904において未処理のJobIDに係るジョブ情報があるとジョブログマージ部116が判断した場合(Yes)、ステップS1905に進む。
【0088】
ステップS1905以下では、ステップS1903で未処理と判断されたJobIDのうち、ここでは最も小さな番号のJobIDをNとして処理を進める。そして、Nと等しいJobIDを持つログがあるか否かをフックログ111、ドライバログ112、APIログ113、送信部ログ114から検索して、ジョブログマージ部116が特定し、特定されたログをログBとする。
【0089】
すなわち、ステップS1905では、Nと等しいJobIDを持つログがあるか否かが判断され、ジョブログマージ部116がないと判断した場合は(No)、ステップS1912でJobIDNを処理済みとマークし、ステップS1904に戻って他の未処理のJobIDの判断処理を行う。一方、ステップS1905で、Nと等しいJobIDを持つログがあるとジョブログマージ部116が判断した場合(Yes)は、ステップS1906以下に進んでマージ処理を行う。
【0090】
ステップS1906以下では、ジョブ情報のJobIDNのエントリについて処理が行われる。まず、ログBの開始時刻がログAの開始時刻より前か否かを判断する(ステップS1906)。その結果、開始時刻より前であれば(Yes)ステップS1907に進み、開始時刻より前でなければ(No)ステップS1908の処理を行う。
【0091】
ステップS1907において、ジョブログマージ部116は、ログAの開始時刻をログBの開始時刻に書き換え、そしてステップS1908に進む。また、ステップS1908において、ジョブログマージ部116は、ログBの終了時刻がログAの終了時刻より後であるか判別する。その結果、後であると判別した場合(Yes)、ステップS1909に進む。一方、後でないと判別した場合(No)、ステップS1910に進む。
【0092】
ステップS1909において、ジョブログマージ部116は、ログAの終了時刻をログBの終了時刻に書き換え、ステップS1910へ進む。また、ステップS1910において、ジョブログマージ部116は、ログBのうちログAに無い項目があるか判断する。その結果、あると判断した場合(Yes)はステップS1911に進む。一方、ないと判断した場合(No)はステップS1912に進む。
【0093】
ステップS1911において、ジョブログマージ部116は、ログBのうちログAに無い項目を追加する。ここで、ログBの処理済フラグをYESとする。また、種別をマージとする。図7から図10に示したログに図19のフローチャートで示される処理を施すと、図12に示すようなマージログになる。すなわち、図12に示すように、マージログ127は、フックログ111、ドライバログ112、APIログ113、送信部ログ114の項目を備えており、さらに開始時刻はフックログ111、終了時刻は送信部ログ114のものになっている。
【0094】
これにより、アプリケーションに対する印刷命令入力から、排紙完了までの、一つのジョブの生成から処理完了までのスループットを把握することができる。ジョブログマージ部116は、図19に示す処理の後、マージされたログをジョブログ送信部117に送る。尚、ジョブログ送信部117は、ログ(併合ジョブ情報)を定期的にジョブログ受信部122に送信する。
【0095】
尚、本実施形態における処理を行うことによって、画像処理・出力処理を行う各処理において取得可能なログをマージする順番を、データ処理順の時系列に並べなくてもよくなる。すなわち、先に述べた様に、ここでも、新ドキュメント名をJobIDの代わりにマージ処理に用いることができる。
【0096】
以上説明したように、一つのジョブに対する複数のデータ処理が行われたジョブを処理するクライアント装置において、一つのジョブに対する複数のデータ処理において得られる複数のジョブ情報を取得し、アカウントクライアントが取得した複数のジョブ情報がそれぞれ含む特定手段として機能するジョブログマージ部116は、開始時刻情報が示す開始時刻のうち、最も早い開始時刻を特定する特定することができる。また、上述の処理と同様に、完了時刻について、最も遅い時刻を上書きしていくようにジョブログマージ部116を制御すれば、マージログ127には、最終的には最も遅い完了時刻が残され、最も遅い完了時刻を特定することができる。
【0097】
また、本実施形態の他の一例としては、各ログの時刻の項目で、一つのジョブIDに対応する、フックログ111、ドライバログ112、APIログ113、送信部ログ114を並べる。そして、この順番にマージ処理を行う。時刻の項目は、並べられた順番で、上書き併合処理を行う必要がある。
【0098】
図20は、本発明の第2の実施形態におけるジョブログマージ部123におけるマージ処理の一例を説明するためのフローチャートである。以下、図20のフローチャートを用いて、ジョブログマージ部123の動作を説明する。ここで、マージログ1127が、ジョブアカウントサーバ121に送信されて図15に示すフローチャートと同様の処理が行われる。すなわち、ID発生部126で生成された情報に基づいて、新ドキュメント名がマージログ127内に格納され、旧ドキュメント名は、旧ドキュメント名の項目にバックアップされる。そして、ジョブログマージ部123において、マージログ127から最終ログが生成されるわけである。以下に前述したマージログの処理の変形例を示す。
【0099】
まず、ジョブログマージ部123は、ジョブログマージ部123がクライアントコンピュータ101から取得した未処理のマージログがあるか検索して判断しり(ステップS2001)。その結果、あると判断した場合(Yes)はステップS2002に進む。一方、無いと判断した場合(No)は終了する。
【0100】
ステップS2002において、ジョブログマージ部123は、プリンタが機器ログ115の取得機構を備えているか判断する。その結果、備えていると判断した場合(Yes)はステップS2003に進む。一方、備えていないと判断した場合は(No)はステップS2011に進む。
【0101】
ステップS2003において、ジョブログマージ部123は、ジョブログマージ部123がプリンタから取得した機器ログ115について、未処理の機器ログでドキュメント名がS2001のマージログと同じ物があるか否かを検索して判断する。その結果、同じものがあると判断した場合(Yes)はステップS2004に進む。一方、同じものが無いと判断した場合(No)は終了する。
【0102】
ステップS2004において、ジョブログマージ部123は、機器ログの排紙ページ数、排紙枚数をマージログに追加する。次いで、ジョブログマージ部123は、ドキュメント名と元ドキュメント名を入れ換える(ステップS2005)。例えば、図12と図13に示す機器ログに本処理を適用すると、「ドキュメント名:2001年度年次報告書」が「元ドキュメント名:abcd0001」となる。
【0103】
S2006において、マージログの元ドキュメント名を削除する。これを最終ログとする。例えば、図12と図13のログに適用すると、最終ログは図17に示すようになる。さらに、ステップS2007において、機器ログの開始時刻がマージログの開始時刻より前であるか判別する。その結果、前であると判別された場合(Yes)、ステップS2008に進む。一方、そうでないと判別された場合(No)はステップS2009に進む。
【0104】
ステップS2008では、最終ログの開始時刻を機器ログの開始時刻にする。そして、機器ログの終了時刻がマージログの終了時刻より後であるか判断する(ステップS2009)。その結果、後であると判断した場合(Yes)はステップS2010に進む。一方、後でないと判断した場合(No)はステップS2011に進む。ステップS2010では、最終ログの終了時刻を機器ログの終了時刻にする。
【0105】
そして、ステップS2011において、最終ログをジョブログ記録部124に送信する。生成されたジョブログは、図21のようになる。図21は、本発明の実施形態における最終ログの一例を示す図である。図21に示す最終ログにより、ジョブログマージ部123は、ホストコンピュータにおける出力開始時刻、並びに、出力終了時刻を正確に反映して管理することができ、正確な画像処理開始から出力完了までのスループットを計測可能となる。
【0106】
すなわち、ジョブログマージ部123は、一つのジョブに対する複数のデータ処理において得られる複数のジョブ情報を取得し、ジョブログマージ部123が取得した一つのジョブに対応した複数の処理より得られる、フックログ111、ドライバログ112、APIログ113、機器ログ114等がそれぞれ含む、各ログの開始時刻情報並びに、完了時刻情報のエントリが示す開始時刻のうち、最も早い開始時刻と、最も遅い完了時刻を特定できる。そして、各時刻情報は、前述した通り、マージ処理され、併合されたジョブ情報として格納される。
【0107】
以上説明したように、本実施形態によれば、印刷開始時刻及び印刷終了時刻を取得することが可能になり、より厳密なジョブアカウントを行うことが可能になる。
【0108】
<第3の実施形態>
本発明の適用は、プリンタが機器ログを備えている場合にのみ有効なわけではない。すなわち、ドキュメント名を一意にすることにより、フックログ111、ドライバログ112、APIログ113をマージすることが可能である。
【0109】
また、OSによっては、OSが発行するJobIdが一意性を保証しないことがある。この場合、図20におけるステップS2001の判別処理を、「JobIdが一意であるか否か?」の判別処理に置き換え、一意でない場合、ドキュメント名の変更処理を行うようにすればよい。また、ステップS1101、S1901等では、JobIDは前述した実施形態に送信部ログのJobIDを用いたが、他のログ(フックログ、ドラバログ、APIログ等)のJobIDを基本にして、マージ処理を行ってもよいことは言うまでも無い。
【0110】
<第4の実施形態>
次に、本発明に係るジョブログ127の集計方法について説明する。図22は、本発明の第4の実施形態におけるジョブログ集計部125の細部モジュール構成を示す図である。尚、本実施形態に係るジョブアカウントシステムの全体の構成については上述した第1の実施形態と同様である。図22に示すように、ジョブログ集計部125は、4つの内部モジュール(利用者情報管理モジュール2202、機器情報管理モジュール2203、ジョブ情報管理モジュール2204、利用状況入出力モジュール2205)から構成されている。
【0111】
このうち、利用者情報管理モジュール2202は、HD206などに利用者情報を格納して管理している。また、機器情報管理モジュール2203は、ネットワークに接続された周辺機器がジョブ履歴保持機能を有しているかを調査し、ジョブ履歴保持機能を有している機器についての情報やその他の機器情報を、HD206等に格納し管理している。ここで、利用者情報とは、周辺機器を利用するユーザのコンピュータログイン名(ユーザが、コンピュータにログインするために入力する名前)やネットワークログイン名(ユーザが、ネットワークシステムにログインするために入力する名前)を含み、周辺機器を利用したユーザを特定(識別)するための情報である。また、機器情報とは、周辺機器の印刷スピード、カラー情報、ネットワークアドレス等である。
【0112】
一方、ジョブ情報管理モジュール2204は、ジョブアカウントクライアント118からジョブログ受信部122を介してジョブ情報を受信し、ジョブログ記録部124に当該ジョブ情報を格納する。また、ジョブ情報管理モジュール2204は、履歴情報を保持する機能を有する周辺機器(例えば、プリンタ110)に履歴情報を要求し、利用状況入出力モジュール2205を介して履歴情報を取得する。尚、この処理は、定期的に行われてもよい。また、周辺機器の履歴情報格納部(不図示)の記憶容量が少なくなったときに、その旨が利用状況入出力モジュールに通知され、そのときに、この処理が行われるようにしてもよい。
【0113】
すなわち、利用状況入出力モジュール2205は、ジョブ履歴保持機能を有する周辺機器からジョブ履歴(ジョブ情報)を含む利用状況を取得する。また、利用状況入出力モジュール2205は、利用状況レポート(どの利用者がどれだけジョブを実行したかを示すレポート)の出力を周辺機器のプリンタやモニタに出力することもできる。
【0114】
そこで、管理者は、利用状況入出力モジュール2205に利用状況の出力を行わせて、周辺機器の利用状況を得ることができる。利用状況入出力モジュール2205は、記憶部に記憶された利用者情報、機器情報、印刷履歴情報に基づいて、様々な利用状況を出力する。管理者は、その出力様式(出力形式)を利用状況入出力モジュールに対し指定する。尚、この利用状況の出力は、例えば、ジョブアカウントサーバ121の表示部(不図示)に表示される。また、利用状況の出力に係る出力データがクライアントコンピュータ101に送信され、利用状況の出力がクライアントコンピュータの表示部(不図示)に表示されてもよい。その場合、利用状況をWebブラウザを使用して表示しても良いことはいうまでもない。
【0115】
利用状況の出力に関しては、ユーザごとの利用量(出力に用いられた用紙枚数やトナー量)や周辺機器の利用時間が出力される。また、カラー印刷や両面印刷などの周辺機器の動作モード(機能)別に利用状況が出力される。さらに、使用された用紙のサイズや使用された用紙の種類別に利用状況が出力される。
【0116】
さらにまた、周辺機器の利用料金が機器情報に設定されていることで、周辺機器別に或いはユーザ別に利用金額が出力される。さらにまた、動作モード別の利用料金、用紙サイズ別の利用料金、用紙の種類別の利用料金が設定されていることで、どのユーザが、どの用紙で、どの動作モードで、どの周辺機器で、どれだけの印刷をして、どれだけの利用金額になっているかを出力する。
【0117】
一方、管理者は、利用者情報管理モジュール2202及び機器情報管理モジュール2203を介して、機能別、ユーザ別、ユーザ部門別、利用機器別に利用の制限を設定することもできる。設定可能な制限情報として、利用料金、ページ数、用紙枚数などの項目がある。利用状況入出力モジュール2205は、設定された制限(制限情報)と印刷履歴情報と監視して照らし合わせることにより、利用が制限を越える場合には、その旨を出力する。これは、画面上への表示出力であっても、メールその他の通信出力でもよい。
【0118】
また、ジョブ情報管理モジュール2204が、ユーザごとの設定された制限と印刷履歴情報とを監視して照らし合わせることにより、あるユーザの利用が制限を越える場合には、クライアントコンピュータ101や周辺機器自体に、そのユーザの利用を拒否させる。或いは、そのユーザに対して、画面上への表示やメールその他の通信手段で警告を促してもよい。
【0119】
すなわち、本実施形態によれば、ジョブアカウントサーバ121は、ユーザが利用するクライアントコンピュータ101からプリンタ108〜110に出力されたジョブ情報を管理する。まず、ジョブ情報を集計する際の集計項目が設定され、ジョブログ集計部125では、ジョブログ記録部124に記録されたジョブ情報から、設定された集計項目に基づいてをジョブ情報が取得される。そして、取得されたジョブ情報に含まれる例えば、枚数情報等の履歴情報が集計され、集計された履歴情報の集計結果が出力される。
【0120】
以下に、利用状況の集計結果を出力する手順について詳細に説明する。図23は、利用状況入出力モジュール2205において、利用状況の集計項目をユーザが設定し、その結果に基づいて集計結果を出力する手順の一例を示すフローチャートである。図23に示すように、本集計処理は大きく分けて、集計項目設定処理(ステップS231)と、設定項目に対する集計処理(ステップS232)の2つの処理から成る。
【0121】
まず、集計項目の設定処理(ステップS231)において、集計の結果として出力する項目を設定する(ステップS2301)。次に、その設定内容をHD206などの記憶装置に記憶する(ステップS2302)。
【0122】
次に、上記のように設定された項目対する集計処理(ステップS232)においては、まず、集計結果を表示するための命令を行う(ステップS2303)。次に、前述の設定処理において設定された情報を参照する(ステップS2304)。そして、設定された情報に基づいてジョブ情報の集計処理を行う(ステップS2305)。最後に、集計結果を表示する(ステップS2306)。
【0123】
これらの表示については、以下において説明するが、それらはジョブアカウントサーバ121の表示部(不図示)に対して行われても良いし、クライアントコンピュータの表示部(不図示)に対して行われても良いことはいうまでもない。また、集計結果をWebブラウザを使用して表示しても良いことはいうまでもない。
【0124】
図24は、図23に示した集計項目の設定処理の内容をより具体的に説明するための図である。また、図25は、図23に示した設定項目の集計処理の内容をより具体的に説明するための図である。すなわち、図24は、集計処理を行う際の集計条件を設定するためのGUIを示している。この例では、集計結果に表示される縦軸の項目と横軸の項目を指定することが可能である。
【0125】
選択できる項目の例として、「ユーザ」、「デバイス」、「管理コード」、「用紙サイズ」、「用紙タイプ」の選択が可能である。「ユーザ」とはプリント、コピー、FAX送受信などを行ったユーザを示しており、「デバイス」とは、ネットワークに接続されたプリンタ、スキャナ、ファクシミリ、複写機など、およびそれらを統合したマルチファンクション機器(MFP)などの周辺機器を示している。「管理コード」とは、印刷されたページ数や用紙枚数、印刷に掛かった費用を仕事の種類や目的ごとに割り振るために印刷時に付加するコードを示している。「用紙サイズ」は、印刷に使用された用紙のサイズ(A3、A4、Letterなど)を示しており、「用紙タイプ」は印刷に使用された用紙のタイプ(普通紙、OHP、厚紙など)を示している。
【0126】
一方、図25は、図24に示すインタフェースにおいて、縦軸に第1の集計項目である「ユーザ」、横軸に第2の集計項目である「管理コード」を選択した場合の集計結果を表したGUIを示す図である。この例では、各ユーザが、どの管理コードを使用して印刷処理を行ったかがわかる結果が得られている。同様に縦軸と横軸を個々に設定し、集計結果を得ることが可能である。すなわち、第1の集計項目と第2の集計項目とに基づいて集計結果を配列した表が出力される。
【0127】
図26〜28は、図24、25とは別の場合についての図23の処理内容をより具体的に説明するための図である。まず、図26は、集計処理を行う際の集計条件を設定するためのGUIを示している。この例では、集計される数値として、「ページ数」、「換算ページ数」、「用紙枚数」のどれを表示するかをチェックボックスの選択により、設定可能である。ここで、「ページ数」とは、印刷に使用されたページ数を示しており、「換算ページ数」とはページ数を単価に換算する際のレートによって、決定されるページ数を示している。また、「用紙枚数」とは印刷に使用された用紙の枚数を示している。
【0128】
また、図27は、図26において、「ページ数」、「換算ページ数」、「用紙枚数」のすべてが選択された場合の集計結果の表示内容を示す図である。この例では、縦軸に「デバイス」、横軸は「期間(月)」とした場合の集計結果を示している。さらに、図28は、図26において、「用紙枚数」のみをチェックした場合の集計結果を示す図である。このように、本実施形態によれば、ユーザが必要とする項目を選択することによって、不必要な情報を表示等することなく、ユーザごとに必要なジョブ情報だけを集計することが可能である。
【0129】
<他の実施形態>
尚、本発明は、複数の機器(例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置等)に適用してもよい。
【0130】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0131】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0132】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0133】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0134】
本発明の実施態様の例を以下に列挙する。
【0135】
[実施態様1] 情報処理装置から周辺機器に出力されたジョブ情報を管理するジョブ管理方法であって、
前記ジョブ情報を集計する際の集計項目を設定する設定工程と、
設定された前記集計項目に基づいて前記ジョブ情報を取得する取得工程と、
取得された前記ジョブ情報に含まれる履歴情報を集計する集計工程と、
前記集計工程で集計された前記履歴情報の集計結果を出力する出力工程と
を有することを特徴とするジョブ管理方法。
【0136】
[実施態様2] 前記周辺機器が、プリンタであって、
前記履歴情報が、前記プリンタで出力された用紙枚数情報であることを特徴とする実施態様1記載のジョブ管理方法。
【0137】
[実施態様3] 前記ジョブ情報が、前記周辺機器を利用した利用者に関する利用者情報を含み、
前記設定工程が、前記集計項目として、前記利用者情報を設定可能であることを特徴とする実施態様1又は2に記載のジョブ管理方法。
【0138】
[実施態様4] 前記ジョブ情報が、前記周辺機器を識別する機器情報を含み、
前記設定工程が、前記集計項目として、前記機器情報を設定可能であることを特徴とする実施態様1又は2に記載のジョブ管理方法。
【0139】
[実施態様5] 前記設定工程が、第1集計項目と第2集計項目とを設定可能であり、
前記取得工程が、前記第1集計項目と前記第2集計項目の両方の項目に基づいて前記ジョブ情報を取得することを特徴とする実施態様1から4までのいずれか1つに記載のジョブ管理方法。
【0140】
[実施態様6] 前記出力工程が、前記第1集計項目と前記第2集計項目とに基づいて前記集計結果を配列した表を出力することを特徴とする実施態様5記載のジョブ管理方法。
【0141】
[実施態様7] 前記取得工程が、前記ジョブ情報を管理するジョブ管理装置内の記憶領域(例えば、図2におけるHD部206)から取得することを特徴とする実施態様1から6までのいずれか1つに記載のジョブ管理方法。
【0142】
[実施態様8] 情報処理装置から周辺機器に出力されたジョブ情報を管理するジョブ管理装置であって、
前記ジョブ情報を記憶する記憶手段と、
前記ジョブ情報を集計する際の集計項目を設定する設定手段と、
設定された前記集計項目に基づいて前記記憶手段から前記ジョブ情報を抽出する抽出手段と、
抽出された前記ジョブ情報に含まれる履歴情報を集計する集計手段と、
前記集計手段で集計された前記履歴情報の集計結果を出力する出力手段と
を備えることを特徴とするジョブ管理装置。
【0143】
[実施態様9] 前記周辺機器が、プリンタであって、
前記履歴情報が、前記プリンタで出力された用紙枚数情報であることを特徴とする実施態様8記載のジョブ管理装置。
【0144】
[実施態様10] 前記ジョブ情報が、前記周辺機器を利用した利用者に関する利用者情報を含み、
前記設定手段が、前記集計項目として、前記利用者情報を設定可能であることを特徴とする実施態様8又は9に記載のジョブ管理装置。
【0145】
[実施態様11] 前記ジョブ情報が、前記周辺機器を識別する機器情報を含み、
前記設定手段が、前記集計項目として、前記機器情報を設定可能であることを特徴とする実施態様8又は9に記載のジョブ管理装置。
【0146】
[実施態様12] 前記設定手段が、第1集計項目と第2集計項目とを設定可能であり、
前記抽出手段が、前記第1集計項目と前記第2集計項目の両方の項目に基づいて前記ジョブ情報を抽出することを特徴とする実施態様8から11までのいずれか1つに記載のジョブ管理装置。
【0147】
[実施態様13] 前記出力手段が、前記第1集計項目と前記第2集計項目とに基づいて前記集計結果を配列した表を出力することを特徴とする実施態様12記載のジョブ管理装置。
【0148】
[実施態様14] コンピュータに、情報処理装置から周辺機器に出力されたジョブ情報を管理させるためのプログラムであって、
前記ジョブ情報を集計する際の集計項目を設定する設定手順と、
設定された前記集計項目に基づいて前記ジョブ情報を取得する取得手順と、
取得された前記ジョブ情報に含まれる履歴情報を集計する集計手順と、
前記集計手順で集計された前記履歴情報の集計結果を出力する出力手順と
を実行させるためのプログラム。
【0149】
[実施態様15] 実施態様14記載のプログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
【0150】
【発明の効果】
以上説明したように、本発明によれば、周辺機器から取得したジョブ情報を集計する際に、ユーザの選択によって集計項目を変更することができ、各ユーザにとって好適な集計結果を得ることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るジョブアカウントシステムの細部モジュール構成を示すブロック図である。
【図2】図1に示したジョブアカウントシステムを構成するクライアントコンピュータ101及びジョブアカウントサーバ121の電気的構成の一例を示すブロック図である。
【図3】図1に示されるジョブアカウントシステムを構成するプリンタ108〜110の細部構成の一例を示すブロック図である。
【図4】図1に示される本実施形態に係るジョブアカウントサーバ121におけるメモリマップの一例を表す図である。
【図5】本発明の第1の実施形態におけるジョブアカウントプログラム及び関連データが格納されているフレキシブルディスク(FD)の構成内容を示す図である。
【図6】本発明の第1の実施形態におけるFDに記録されたジョブアカウントプログラム及び関連データをコンピュータにロードする一例を示す図である。
【図7】本発明の第1の実施形態におけるフックログ111の一例を示す図である。
【図8】本発明の第1の実施形態におけるドライバログ112の一例を示す図である。
【図9】本発明の第1の実施形態におけるAPIログ113の一例を示す図である。
【図10】本発明の第1の実施形態における送信部ログ114の一例を示す図である。
【図11】本発明の第1の実施形態におけるログをマージする手順の一例を説明するためのフローチャートである。
【図12】本発明の第1の実施形態におけるフックログ111、ドライバログ112、APIログ113及び送信部ログ114の項目を備えているマージログ127を示す図である。
【図13】第1の実施形態における機器ログ115の例を示す図である。
【図14】図14は、第1の実施形態におけるクライアントコンピュータ101のフック部103が動作していない場合の機器ログ115の例を示す図である。
【図15】本発明の第1の実施形態におけるドキュメント名を変更する手順の一例を説明するためのフローチャートである。
【図16】本発明の第1の実施形態におけるログをマージして最終ログを作成する手順の一例を説明するためのフローチャートである。
【図17】本発明の第1の実施形態に係る最終ログの一例を示す図である。
【図18】本発明の第1の実施形態に係る周辺機器のジョブ情報を管理するジョブアカウントシステムの概要を説明するためのブロック図である。
【図19】本発明の第2の実施形態におけるジョブログマージ部116におけるマージ処理の一例を示す図である。
【図20】本発明の第2の実施形態におけるジョブログマージ部123におけるマージ処理の一例を説明するためのフローチャートである。
【図21】本発明の第2の実施形態における最終ログの一例を示す図である。
【図22】本発明の第4の実施形態におけるジョブログ集計部125の細部モジュール構成を示す図である。
【図23】利用状況入出力モジュール2205において、利用状況の集計項目をユーザが設定し、その結果に基づいて集計結果を出力する手順の一例を示すフローチャートである。
【図24】図23に示した集計項目の設定の内容をより具体的に説明するための図である。
【図25】図23に示した設定項目の集計処理の内容をより具体的に説明するための図である。
【図26】集計処理を行う際の集計条件を設定するためのGUIを示している。
【図27】図26において、「ページ数」、「換算ページ数」、「用紙枚数」のすべてが選択された場合の集計結果の表示内容を示す図である。
【図28】図26において、「用紙枚数」のみをチェックした場合の集計結果を示す図である。
【符号の説明】
101 クライアントコンピュータ
102 アプリケーション
103 フック部
104 GDI
105 プリンタドライバ
106 スプーラ
107 送信部
108、109、110 プリンタ
111 フックログ
112 ドライバログ
113 APIログ
114 送信部ログ
115 機器ログ
116 ジョブログマージ部
117 ジョブログ送信部
118 ジョブアカウントクライアント
121 ジョブアカウントサーバ
122 ジョブログ受信部
123 ジョブログマージ部
124 ジョブログ記録部
125 ジョブログ集計部
126 ID発生部
127 マージログ
2202 利用者情報管理モジュール
2203 機器情報管理モジュール
2204 ジョブログ情報管理モジュール
2205 利用者状況入出力モジュール[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a technology for managing job information for peripheral devices such as a printer, a scanner, a facsimile, a copier, and a multifunction device (MFP) that integrates them, which are connected to a network.
[0002]
[Prior art]
Conventionally, a job management method for acquiring and managing job information in an image processing system has been developed. In order to properly manage job information (job account), it is important that job information executed by a peripheral device be acquired and that the acquired job information can be totaled according to the user's purpose.
[0003]
Conventionally, when totaling acquired job information, the total is calculated according to items determined in advance by the system, and the result is displayed. Examples of items include “user name”, “printer name”, “number of output sheets”, and the like. That is, in the past, a total result of "who output what number to which printer" was shown.
[0004]
[Problems to be solved by the invention]
However, in some cases, the information required by the user is not always obtained from the total result of the job information. This is because the content of the tally item required by the user differs for each user.
[0005]
The present invention has been made in view of such circumstances, and when totaling job information obtained from peripheral devices, a totaling item can be changed by a user's selection. An object is to provide a job management method capable of obtaining a result.
[0006]
[Means for Solving the Problems]
In order to solve the above problems, the present invention is a job management method for managing job information output to a peripheral device from an information processing apparatus, wherein a setting step of setting a total item when totaling the job information, An acquisition step of acquiring the job information based on the set aggregation item, an aggregation step of aggregation of history information included in the acquired job information, and an aggregation result of the history information aggregated in the aggregation step And an output step of outputting
[0007]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0008]
<First embodiment>
FIG. 18 is a block diagram for explaining an outline of a job account system for managing job information of peripheral devices according to the first embodiment of the present invention. As shown in FIG. 18, the job account system according to the present embodiment includes a
[0009]
Here,
[0010]
The
[0011]
Then, the
[0012]
Here, the
[0013]
In addition, the
[0014]
Further, the
[0015]
Furthermore, the
[0016]
Also, the
[0017]
The image forming apparatus as a peripheral device includes, in addition to the above-described printer, a facsimile, a copying machine, a copy system combining a printer and a scanner which is a kind of the copying machine, and a multifunction machine thereof. It may be.
[0018]
Further, in the present embodiment, the
[0019]
Hereinafter, details of the job account system according to the present embodiment will be described.
[0020]
FIG. 1 is a block diagram showing a detailed module configuration of the job account system according to the first embodiment of the present invention. As shown in FIG. 1, the present invention is achieved in a system including a plurality of devices. Further, it goes without saying that the present invention can be similarly applied by supplying a program to each device of the present system. Hereinafter, the manner in which four logs of a hook log, a driver log, an API log, and a transmission unit log are created for one print job will be described in detail. In addition, since the outline of the job account system according to the present embodiment has already been described, parts different from those described above will be specifically described below with reference to FIG.
[0021]
In FIG. 1,
[0022]
When a print instruction is issued to the
[0023]
The
[0024]
The
[0025]
The
[0026]
As described above, the
[0027]
On the other hand, the
[0028]
In the
[0029]
FIG. 2 is a block diagram illustrating an example of an electrical configuration of the
[0030]
Further,
[0031]
[0032]
A
[0033]
In principle, the
[0034]
FIG. 3 is a block diagram showing an example of a detailed configuration of the
[0035]
[0036]
FIG. 4 is a diagram illustrating an example of a memory map in the
[0037]
FIG. 5 is a diagram showing the configuration of a flexible disk (FD) storing a job account program and related data according to the first embodiment of the present invention. It is assumed that the job account program and related data according to the first embodiment of the present invention are recorded on a flexible disk (FD). That is, in the
[0038]
Note that the
[0039]
FIG. 6 is a diagram illustrating an example of loading a job account program and related data recorded on the FD into a computer according to the first embodiment of the present invention. That is, the job account program and the related data recorded on the flexible disk (FD) 60 can be loaded into the computer 62 via the FD drive (DKC) 61.
[0040]
When the flexible disk (FD) 60 is set in the FD drive (DKC) 61, under the control of the
[0041]
Also, the program modules for realizing the job account program correspond to the software modules in the
[0042]
FIG. 7 is a diagram illustrating an example of the hook log 111 according to the first embodiment of the present invention. In the
[0043]
FIG. 8 is a diagram illustrating an example of the
[0044]
For example, if there are four logical pages and 2-up printing processing is performed in double-sided printing, the number of physical pages becomes two. Then, the physical page is printed on the front and back of the sheet, and one sheet is output and discharged. The first and second logical pages are printed on the table, and the third and fourth logical pages are printed on the back.
[0045]
FIG. 9 is a diagram illustrating an example of the API log 113 according to the first embodiment of this invention. In the
[0046]
FIG. 10 is a diagram illustrating an example of the transmission unit log 114 according to the first embodiment of this invention. In the
[0047]
In each of the
[0048]
FIG. 11 is a flowchart illustrating an example of a procedure for merging logs according to the first embodiment of this invention. Hereinafter, the operation of the job
[0049]
In the present embodiment, log merging (merging processing) is performed using a job ID as a key. However, merging may be performed using a document data name or a new document data name described later as a key. Hereinafter, in the processing illustrated in FIG. 11, in the
[0050]
First, the job
[0051]
In step S1102, the job
[0052]
As a result, if it is determined in step S1104 that there is no unprocessed log (No), the process ends. On the other hand, if the job
[0053]
As a result, if there is no log with a Job ID equal to N in the
[0054]
In step S1106, the job
[0055]
On the other hand, if it is determined in step S1106 that there is an item in log B that is not in log A (Yes), the job
[0056]
Subsequently, the item of the type of the merge log is set to “merge”. When the logs shown in FIGS. 7 to 10 are sequentially merged with the transmission unit log 114 based on the processing of FIG. 11, a merge log as shown in FIG. 12 is obtained. That is, FIG. 12 is a diagram illustrating the
[0057]
In FIG. 11, in step S1104 subsequent to step S1108, when it is determined that the processing has been completed for all JobIDs related to the log A (No), the processing ends.
[0058]
Normally, the job
[0059]
Next, the operation of the
[0060]
The
[0061]
On the other hand, the job
[0062]
Further, the job
[0063]
The
[0064]
FIG. 15 is a flowchart illustrating an example of a procedure for changing a document name according to the first embodiment of this invention. Hereinafter, the operation of the
[0065]
First, the
[0066]
In step S1502, the
[0067]
Then, in step S1503, the
[0068]
If Yes in step S1502 and after the processing in step S1503, a JOBID in the client that uniquely identifies the job is created in the client computer 101 (step S1504). Here, it is assumed that numerical values from 0001 to 9999 are issued in order.
[0069]
Further, the
[0070]
Furthermore, the
[0071]
Here, the reason why the new document name is created is that when merging job information acquired from the printing apparatus, it is difficult to directly use the JobID as a key for the merge process. For example, since a part of the specification of the job management method is not disclosed, when using the account server A developed by the company A, the account server developed by the company A acquires the JobID from the printer developed by the company B. Often cannot. In other words, even if the job information is acquired from a printer corresponding to an unexpected job management method, the job ID is not often included in the acquired job information, and cannot be used by merging the job information. However, the document name produced by the OS or application in the client computer and transmitted to the printer can often be acquired as job information.
[0072]
Therefore, it is conceivable to manage, as the identification information, a document name that can be managed on the client side instead of the job ID and that can be obtained from the printer side as a key of the job information, instead of the Job ID. However, there is a problem if the conventional document name is used as it is. The client OS or application can generally manage more than eight characters, and a commonly used OS can assign a document name of up to 255 characters. The printer can manage up to eight characters as described above. In general, a document name that can be used in the job management method is up to eight characters. With this configuration, if a document name of eight characters or more is given on the client side, even if the document name given by the OS or application on the client side is different, jobs with the same document name coexist in the printer. And confusion arises.
[0073]
Therefore, the host ID is issued on the account server side and used in combination with the document name issued on the client side. As a result, a new document name uniquely managed in the printing system including the client computer and the printer, which is managed by the account server within eight characters, is completed. Then, the new document name can be used for job identification instead of the job ID. Then, once a new document name is generated on the client side, the printer, client, and account server can use this document name as a job identifier.
[0074]
FIG. 16 is a flowchart illustrating an example of a procedure for creating a final log by merging logs according to the first embodiment of this invention. Hereinafter, the operation of the job log merge unit 123 (device job log merge unit) will be described with reference to the flowchart in FIG.
[0075]
First, the job
[0076]
Next, the job
[0077]
In step S1603, the job
[0078]
In step S1604, the job
[0079]
Further, as described above, FIG. 13 illustrates an example of the device log 115 according to the present embodiment. Then, the job
[0080]
Further, the job
[0081]
Then, in step S1607, the job
[0082]
As described above, according to the present embodiment, it is possible to acquire more accurate job information including a document name and paper ejection information, and to perform a more strict job account. That is, as described above, in the printing system managed by the account server, by providing a mechanism for performing a merge process using unique identification information, management of job information and counting of the number of printed sheets and the number of discharged sheets are provided. In this case, different jobs are not mistakenly merged and managed as the same job, and an accurate job account can be obtained.
[0083]
<Second embodiment>
Next, a second embodiment of the present invention will be described. Hereinafter, a description will be given mainly of portions different from the above-described first embodiment. Note that the configuration of the job account system used in the present embodiment is the same as that in the first embodiment.
[0084]
FIG. 19 is a diagram illustrating an example of a merge process in the job
[0085]
First, the job
[0086]
In step S1902, the job
[0087]
As a result, if it is determined in step S1904 that there is no unprocessed one (No), the process ends. On the other hand, if the job
[0088]
In step S1905 and subsequent steps, among the JobIDs that have been determined to be unprocessed in step S1903, the processing proceeds with the job ID having the smallest number as N here. Then, the job
[0089]
That is, in step S1905, it is determined whether there is a log having a JobID equal to N. If it is determined that there is no job log merging unit 116 (No), the job IDN is marked as processed in step S1912, and Returning to step S1904, another unprocessed Job ID is determined. On the other hand, if the job
[0090]
In step S1906 and subsequent steps, processing is performed on the entry of JobIDN of the job information. First, it is determined whether the start time of the log B is earlier than the start time of the log A (step S1906). As a result, if it is before the start time (Yes), the process proceeds to step S1907, and if it is not before the start time (No), the process of step S1908 is performed.
[0091]
In step S1907, the job
[0092]
In step S1909, the job
[0093]
In step S1911, the job
[0094]
Accordingly, it is possible to grasp the throughput from the generation of one job to the completion of the processing from the input of the print command to the application to the completion of the paper discharge. After the processing shown in FIG. 19, the job
[0095]
By performing the processing in the present embodiment, the order in which logs that can be acquired in each processing of performing image processing and output processing need not be arranged in chronological order in the data processing order. That is, as described above, the new document name can be used for the merge process instead of the JobID.
[0096]
As described above, in a client device that processes a job in which a plurality of data processes are performed on one job, a plurality of job information obtained in a plurality of data processes on a single job is acquired, and the account client acquires the plurality of job information. The job
[0097]
As another example of the present embodiment, the
[0098]
FIG. 20 is a flowchart illustrating an example of a merge process in the job
[0099]
First, the job
[0100]
In step S2002, the job
[0101]
In step S2003, the job
[0102]
In step S2004, the job
[0103]
In S2006, the original document name of the merge log is deleted. This is the final log. For example, when applied to the logs in FIGS. 12 and 13, the final log is as shown in FIG. Further, in step S2007, it is determined whether the start time of the device log is earlier than the start time of the merge log. As a result, if it is determined that it is before (Yes), the process proceeds to step S2008. On the other hand, if it is determined that it is not (No), the process proceeds to step S2009.
[0104]
In step S2008, the start time of the final log is set to the start time of the device log. Then, it is determined whether the end time of the device log is later than the end time of the merge log (step S2009). As a result, if it is determined that it is later (Yes), the process proceeds to step S2010. On the other hand, if it is determined that it is not later (No), the process proceeds to step S2011. In step S2010, the end time of the last log is set to the end time of the device log.
[0105]
Then, in step S2011, the final log is transmitted to the job
[0106]
That is, the job
[0107]
As described above, according to the present embodiment, it is possible to acquire the print start time and the print end time, and it is possible to perform a stricter job account.
[0108]
<Third embodiment>
The application of the present invention is not only effective when the printer has the device log. That is, the
[0109]
Also, depending on the OS, the JobId issued by the OS may not guarantee uniqueness. In this case, the determination process of step S2001 in FIG. 20 may be replaced with a determination process of “Is JobId unique?”, And if not unique, a document name change process may be performed. In steps S1101 and S1901, etc., the Job ID of the transmission unit log is used as the Job ID in the above-described embodiment. Needless to say, it is good.
[0110]
<Fourth embodiment>
Next, a counting method of the job log 127 according to the present invention will be described. FIG. 22 is a diagram showing a detailed module configuration of the job
[0111]
Among these, the user
[0112]
On the other hand, the job
[0113]
That is, the usage status input /
[0114]
Therefore, the administrator can cause the usage status input /
[0115]
As for the output of the usage status, the usage amount (the number of sheets or the amount of toner used for the output) for each user and the usage time of the peripheral device are output. The usage status is output for each operation mode (function) of the peripheral device such as color printing or double-sided printing. Further, the usage status is output for each used paper size and used paper type.
[0116]
Furthermore, since the usage fee of the peripheral device is set in the device information, the usage fee is output for each peripheral device or for each user. Furthermore, since the usage fee for each operation mode, the usage fee for each paper size, and the usage fee for each paper type are set, which user can use which paper, which operation mode, which peripheral device, Outputs how much printing and how much money is spent.
[0117]
On the other hand, the administrator can also set use restrictions by function, by user, by user department, and by device to be used, via the user
[0118]
Also, the job
[0119]
That is, according to the present embodiment, the
[0120]
Hereinafter, a procedure for outputting the total result of the usage status will be described in detail. FIG. 23 is a flowchart illustrating an example of a procedure in the usage status input /
[0121]
First, in the total item setting process (step S231), an item to be output as a total result is set (step S2301). Next, the setting contents are stored in a storage device such as the HD 206 (step S2302).
[0122]
Next, in the tabulation process for the items set as described above (step S232), first, a command for displaying the tabulation result is performed (step S2303). Next, information set in the above-described setting process is referred to (step S2304). The job information is totalized based on the set information (step S2305). Finally, the totaling result is displayed (step S2306).
[0123]
These displays will be described below, but they may be displayed on the display unit (not shown) of the
[0124]
FIG. 24 is a diagram for more specifically explaining the content of the setting process of the aggregation item shown in FIG. FIG. 25 is a diagram for more specifically explaining the contents of the tallying process of the setting items shown in FIG. That is, FIG. 24 shows a GUI for setting the tallying conditions when performing the tallying process. In this example, it is possible to specify an item on the vertical axis and an item on the horizontal axis displayed in the tally result.
[0125]
As examples of selectable items, “user”, “device”, “management code”, “paper size”, and “paper type” can be selected. The "user" indicates a user who has performed printing, copying, facsimile transmission and reception, and the like, and the "device" is a printer, a scanner, a facsimile, a copying machine, etc. connected to a network, and a multifunction device integrating them. (MFP) and the like. The "management code" indicates a code added at the time of printing in order to allocate the number of printed pages, the number of sheets, and the cost required for printing to each job type and purpose. The “paper size” indicates the size of the paper used for printing (A3, A4, Letter, etc.), and the “paper type” indicates the type of paper used for printing (plain paper, OHP, thick paper, etc.). Is shown.
[0126]
On the other hand, FIG. 25 shows a tabulated result in the case of selecting “user” as the first tabulated item on the vertical axis and “management code” as the second tabulated item on the horizontal axis in the interface shown in FIG. FIG. 11 is a diagram showing a GUI that has been used. In this example, a result that indicates which management code is used by each user to perform the printing process is obtained. Similarly, it is possible to set the vertical axis and the horizontal axis individually and obtain a total result. That is, a table in which the aggregation results are arranged based on the first aggregation item and the second aggregation item is output.
[0127]
FIGS. 26 to 28 are diagrams for more specifically explaining the processing contents of FIG. 23 in a case different from those of FIGS. First, FIG. 26 shows a GUI for setting tallying conditions when performing tallying processing. In this example, it is possible to set which of the “number of pages”, “number of converted pages”, and “number of sheets” to be displayed as a numerical value to be tabulated by selecting a checkbox. Here, the “number of pages” indicates the number of pages used for printing, and the “converted page number” indicates the number of pages determined by a rate at which the number of pages is converted into a unit price. . The “number of sheets” indicates the number of sheets used for printing.
[0128]
FIG. 27 is a diagram showing the display contents of the counting result when all of “number of pages”, “number of converted pages”, and “number of sheets” are selected in FIG. In this example, the vertical axis indicates the device and the horizontal axis indicates the period (month). Further, FIG. 28 is a diagram showing a tally result when only “the number of sheets” is checked in FIG. As described above, according to the present embodiment, it is possible to total only necessary job information for each user by selecting an item required by the user without displaying unnecessary information. .
[0129]
<Other embodiments>
Note that the present invention is applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), but a device including one device (for example, a copying machine, a facsimile machine, etc.). May be applied.
[0130]
Further, an object of the present invention is to supply a recording medium (or a storage medium) recording a program code of software for realizing the functions of the above-described embodiments to a system or an apparatus, and to provide a computer (or a CPU or a CPU) of the system or the apparatus. Needless to say, the present invention can also be achieved by the MPU) reading and executing the program code stored in the recording medium. In this case, the program code itself read from the recording medium implements the functions of the above-described embodiment, and the recording medium on which the program code is recorded constitutes the present invention. When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing.
[0131]
Further, after the program code read from the recording medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the card or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0132]
When the present invention is applied to the recording medium, the recording medium stores program codes corresponding to the flowcharts described above.
[0133]
When the present invention is applied to the recording medium, the recording medium stores program codes corresponding to the flowcharts described above.
[0134]
Examples of embodiments of the present invention are listed below.
[0135]
[Embodiment 1] A job management method for managing job information output from an information processing apparatus to a peripheral device,
A setting step of setting a total item when totaling the job information;
An acquisition step of acquiring the job information based on the set aggregation item;
A counting step of counting the history information included in the acquired job information;
An output step of outputting a count result of the history information tabulated in the tabulation step;
A job management method comprising:
[0136]
[Embodiment 2] The peripheral device is a printer,
2. The job management method according to claim 1, wherein the history information is information on the number of sheets output from the printer.
[0137]
[Embodiment 3] The job information includes user information on a user who has used the peripheral device,
3. The job management method according to claim 1, wherein the setting step is capable of setting the user information as the total item.
[0138]
[Embodiment 4] The job information includes device information for identifying the peripheral device,
3. The job management method according to claim 1, wherein the setting step can set the device information as the aggregation item.
[0139]
[Embodiment 5] In the setting step, a first total item and a second total item can be set,
The job management according to any one of the first to fourth embodiments, wherein the obtaining step obtains the job information based on both the first total item and the second total item. Method.
[0140]
[Sixth Embodiment] The job management method according to the fifth embodiment, wherein the output step outputs a table in which the aggregation results are arranged based on the first aggregation item and the second aggregation item.
[0141]
[Embodiment 7] In any one of Embodiments 1 to 6, wherein the acquiring step acquires the job information from a storage area (for example, the
[0142]
Embodiment 8 is a job management device that manages job information output from an information processing device to a peripheral device,
Storage means for storing the job information;
Setting means for setting a total item when totaling the job information;
Extracting means for extracting the job information from the storage means based on the set tally item;
Counting means for counting the history information included in the extracted job information;
Output means for outputting a result of aggregation of the history information aggregated by the aggregation means;
A job management device comprising:
[0143]
[Embodiment 9] The peripheral device is a printer,
The job management apparatus according to claim 8, wherein the history information is information on the number of sheets output from the printer.
[0144]
[Embodiment 10] The job information includes user information on a user who has used the peripheral device,
The job management apparatus according to the eighth or ninth embodiment, wherein the setting unit can set the user information as the aggregation item.
[0145]
[Embodiment 11] The job information includes device information for identifying the peripheral device,
10. The job management apparatus according to claim 8, wherein the setting unit can set the device information as the total item.
[0146]
[Embodiment 12] The setting means can set a first total item and a second total item,
The job management according to any one of embodiments 8 to 11, wherein the extraction unit extracts the job information based on both the first total item and the second total item. apparatus.
[0147]
[Thirteenth Embodiment] The job management apparatus according to the twelfth embodiment, wherein the output unit outputs a table in which the aggregation results are arranged based on the first aggregation item and the second aggregation item.
[0148]
[Embodiment 14] A program for causing a computer to manage job information output from an information processing apparatus to a peripheral device,
A setting procedure for setting a total item when totaling the job information;
An acquisition procedure for acquiring the job information based on the set tally item,
A counting procedure for counting history information included in the acquired job information;
An output step of outputting a total result of the history information totaled in the total step;
The program to execute.
[0149]
[Embodiment 15] A computer-readable recording medium storing the program according to Embodiment 14.
[0150]
【The invention's effect】
As described above, according to the present invention, when totaling job information acquired from peripheral devices, a totaling item can be changed by a user's selection, and a totaling result suitable for each user can be obtained. .
[Brief description of the drawings]
FIG. 1 is a block diagram showing a detailed module configuration of a job account system according to a first embodiment of the present invention.
FIG. 2 is a block diagram illustrating an example of an electrical configuration of a
FIG. 3 is a block diagram showing an example of a detailed configuration of
FIG. 4 is a diagram illustrating an example of a memory map in the
FIG. 5 is a diagram showing a configuration of a flexible disk (FD) storing a job account program and related data according to the first embodiment of the present invention.
FIG. 6 is a diagram illustrating an example of loading a job account program and related data recorded on an FD into a computer according to the first embodiment of the present invention.
FIG. 7 is a diagram illustrating an example of a
FIG. 8 is a diagram illustrating an example of a
FIG. 9 is a diagram illustrating an example of an
FIG. 10 is a diagram illustrating an example of a transmission unit log 114 according to the first embodiment of the present invention.
FIG. 11 is a flowchart illustrating an example of a procedure for merging logs according to the first embodiment of this invention.
FIG. 12 is a diagram illustrating a
FIG. 13 is a diagram illustrating an example of a
FIG. 14 is a diagram illustrating an example of a
FIG. 15 is a flowchart illustrating an example of a procedure for changing a document name according to the first embodiment of this invention.
FIG. 16 is a flowchart illustrating an example of a procedure for creating a final log by merging logs according to the first embodiment of the present invention.
FIG. 17 is a diagram illustrating an example of a final log according to the first embodiment of the present invention.
FIG. 18 is a block diagram for explaining an outline of a job account system for managing job information of a peripheral device according to the first embodiment of the present invention.
FIG. 19 is a diagram illustrating an example of a merge process in a job log merge unit according to the second embodiment of the present invention.
FIG. 20 is a flowchart illustrating an example of a merge process in a job
FIG. 21 is a diagram illustrating an example of a final log according to the second embodiment of this invention.
FIG. 22 is a diagram illustrating a detailed module configuration of a job
FIG. 23 is a flowchart illustrating an example of a procedure in which the user sets a total item of usage status in the usage status input /
24 is a diagram for more specifically explaining the content of the setting of the aggregation item shown in FIG.
25 is a diagram for more specifically explaining the content of the tabulation process of the setting items shown in FIG.
FIG. 26 shows a GUI for setting tallying conditions when performing tallying processing.
FIG. 27 is a diagram showing display contents of the tally result when all of “number of pages”, “number of converted pages”, and “number of sheets” are selected in FIG.
FIG. 28 is a diagram illustrating a tally result when only “number of sheets” is checked in FIG. 26;
[Explanation of symbols]
101 Client computer
102 Application
103 Hook
104 GDI
105 Printer Driver
106 Spooler
107 transmission unit
108, 109, 110 Printer
111 hook log
112 Driver log
113 API log
114 Transmission part log
115 Device Log
116 Job Log Merge Unit
117 Job log transmission unit
118 Job Account Client
121 Job Account Server
122 Job Log Receiver
123 Job Log Merge Unit
124 Job Log Recorder
125 Job log totaling section
126 ID generator
127 Merge log
2202 User information management module
2203 Device Information Management Module
2204 Job log information management module
2205 User status input / output module
Claims (1)
前記ジョブ情報を集計する際の集計項目を設定する設定工程と、
設定された前記集計項目に基づいて前記ジョブ情報を取得する取得工程と、
取得された前記ジョブ情報に含まれる履歴情報を集計する集計工程と、
前記集計工程で集計された前記履歴情報の集計結果を出力する出力工程と
を有することを特徴とするジョブ管理方法。A job management method for managing job information output from an information processing device to a peripheral device,
A setting step of setting a total item when totaling the job information;
An acquisition step of acquiring the job information based on the set aggregation item;
A counting step of counting the history information included in the acquired job information;
Outputting an aggregation result of the history information aggregated in the aggregation step.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002344579A JP2004178325A (en) | 2002-11-27 | 2002-11-27 | Job management method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002344579A JP2004178325A (en) | 2002-11-27 | 2002-11-27 | Job management method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004178325A true JP2004178325A (en) | 2004-06-24 |
Family
ID=32706021
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002344579A Withdrawn JP2004178325A (en) | 2002-11-27 | 2002-11-27 | Job management method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004178325A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010257455A (en) * | 2009-04-23 | 2010-11-11 | Xerox Corp | Method and system for monitoring and correcting usage policy by manipulating usage governance logs |
| JP2011242947A (en) * | 2010-05-17 | 2011-12-01 | Fuji Xerox Co Ltd | Image forming apparatus and program |
| US8154750B2 (en) | 2007-06-07 | 2012-04-10 | Konica Minolta Business Technologies, Inc. | Image forming apparatus and job information management method |
-
2002
- 2002-11-27 JP JP2002344579A patent/JP2004178325A/en not_active Withdrawn
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8154750B2 (en) | 2007-06-07 | 2012-04-10 | Konica Minolta Business Technologies, Inc. | Image forming apparatus and job information management method |
| JP2010257455A (en) * | 2009-04-23 | 2010-11-11 | Xerox Corp | Method and system for monitoring and correcting usage policy by manipulating usage governance logs |
| JP2011242947A (en) * | 2010-05-17 | 2011-12-01 | Fuji Xerox Co Ltd | Image forming apparatus and program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6618566B2 (en) | Print control apparatus for generating accounting information relating to a print job | |
| JP4012050B2 (en) | Information processing apparatus, information processing method, and control program | |
| US7286250B2 (en) | Print control apparatus and method, and print system | |
| US8947706B2 (en) | Information processing system and method, and non-transitory computer readable medium for using identification information, for first authentication to an information system, with a print service system that performs second authentication | |
| JP4980255B2 (en) | Print processing system | |
| US7880923B2 (en) | Image forming apparatus print processing method and charging control system | |
| JP4185920B2 (en) | Print control method, print setting management system, and software distribution server | |
| US7561291B2 (en) | Job management system, information processing apparatus, job management method, job management program and storage medium storing the problem | |
| JP5834566B2 (en) | Information processing apparatus, program, and information display apparatus | |
| US7636174B2 (en) | Job information managing system, job information managing method, program for implementing the method, and storage medium storing the program | |
| CN103116479A (en) | Printing system, control method, and computer-readable medium | |
| US7420696B2 (en) | Job management apparatus, job management system, job management method, and storage medium storing program | |
| JP2009295080A (en) | Print processing system | |
| JP4497808B2 (en) | Information processing method, information processing server, and program | |
| JP3880435B2 (en) | Printing system, information processing apparatus, information processing method, and control program | |
| JP4125033B2 (en) | Management system, information processing apparatus and management method | |
| JP2005284951A (en) | Information processing apparatus and method, job management system, program, and storage medium | |
| JP2004178325A (en) | Job management method | |
| JP3880434B2 (en) | Job management system, job management apparatus, data processing apparatus, job management method, data processing method, and control program | |
| CN104850362A (en) | Printing instruction apparatus, image forming system and printing instruction method | |
| JP2015184835A (en) | Log information collecting apparatus, method, and program | |
| JP4366042B2 (en) | Job management apparatus, job management method, and control program | |
| JP2010214725A (en) | Printer and printing system and method of controlling printer | |
| JP2004178324A (en) | Information processing system | |
| JP2003308185A (en) | Management system, information processing apparatus, and management method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060207 |