(57)【要約】【課題】ジョブ情報管理の精度向上を図ること。【解決手段】まず、ステップＳ２２０１では、記録対象となる最終ログより、ポート名、プリンタドライバ名を取得する。次に、ステップＳ２２０２において、処理対象外データベースを参照し、ステップＳ２２０１で取得したポート名、プリンタドライバ名が含まれるかどうかを検索する。ステップＳ２２０３、およびステップＳ２２０４の条件判断では、ポート名、プリンタドライバ名のいずれか一方が処理対象外データベースに含まれていれば、最終ログ１２８を記録しない。従って、最終ログが、集計対象外のポートまたはプリンタドライバを使用して作成されたものであれば、集計されない。【選択図】  図１８
2004178323.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置に接続可能な情報処理装置において発行されるジョブに関するジョブ情報を記録又は集計する情報処理方法であって、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得工程と、
発行された前記ジョブのデータを生成したドライバに応じて、前記取得工程で取得された前記ジョブ情報を記録又は集計すべきか否かを判定する判定工程と、前記判定工程で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計工程と、
を有することを特徴とする情報処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ジョブ情報の管理技術に関するものである。
【０００２】
【従来の技術】
従来から、ジョブ情報を取得して管理する情報処理システムに関するジョブ管理方法が開発されてきており（例えば特許文献１参照）、周辺機器で実行されたジョブ情報を収集することが行われている。
【０００３】
【特許文献１】
特開２００２−１１６８９９号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、従来のジョブ情報の収集においては、ジョブ情報の生成過程に基づいて収集するか否かを判断することは行っていなかった。そのため、不必要または異常なジョブ情報を収集することがあった。例えば、ホストコンピュータや外部のファイルサーバ内の所定の記憶領域を出力先とし、アプリケーションやドライバによってＰＤＦ形式のファイルのような表示制御データ、又は、画像データ、又は、印字データを生成し、出力する場合のように、印刷処理を行わなわない場合であっても、ジョブ情報が記録又は集計される場合がある。
【０００５】
また、システム内にジョブ情報の収集に対応していない画像形成装置が存在することがあり、これらサポート外の画像形成装置を使用した場合、異常なジョブ情報が作成されてしまう場合がある。
【０００６】
このように、多様なジョブ情報を収集した場合、所望のジョブ情報を精度良く管理することが不可能であった。
【０００７】
本発明は、かかる問題点を鑑みてなされたものであり、精度の高いジョブ情報の管理を実現することを目的とする。
【０００８】
また、ドライバに応じて、ジョブ情報を記録、又は、集計するか否かの判断をおこない、ジョブに対応するドライバに応じたジョブ情報の記録又は集計を行う仕組みを提供することをさらに別の目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するため、本発明に係る方法は、
情報処理装置から画像形成装置に発行されるジョブに関するジョブ情報を管理する情報処理方法であって、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得工程と、
前記取得工程で取得された前記ジョブ情報を記録処理すべきか否かを判定する判定工程と、
前記判定工程で記録処理すべきと判定された前記ジョブ情報を記録する記録工程と、
を有することを特徴とする。
【００１０】
【発明の実施の形態】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１１】
＜システム構成＞
図１Ａは、本発明に係る情報処理方法を実施できる好適な形態としての情報処理システムの一例を示す図である。
【００１２】
本情報処理システムは、第１情報処理装置と第２情報処理装置と画像形成装置とを少なくとも１台ずつは含むものであるが、図１Ａでは、第１情報処理装置としてクライアントコンピュータ１００１〜１００３、第２情報処理装置としてサーバコンピュータ２０００、画像形成装置としてプリンタ１０８〜１１０及びファクシミリ、コピー機、及びこれらの機能を複合的に有するＭＦＰ（マルチファンクションプリンタ）を例示的に図示している。
【００１３】
これらの装置は、イーサネット（登録商標）等で構築されたローカルエリアネットワーク（単にネットワークという）３０００によって接続され、相互に通信可能となっている。
【００１４】
クライアントコンピュータ１００１〜１００３は、各ユーザが使用するものである。サーバコンピュータ２０００は、ネットワーク３０００上に存在するクライアントコンピュータ１００１やプリンタ１１０などを管理するとともに、遠隔制御する制御用コンピュータである。なお、このクライアントコンピュータ１００１乃至１００３とサーバコンピュータ２０００との違いは、その装置上で、後述するジョブアカウントクライアントプログラム（以下、ジョブアカウントクライアントと称する）が実行されるか、ジョブアカウントサーバプログラム（以下、ジョブアカウントサーバと称する）が実行されるかの違いであって、ハードウェア上の違いはない。
【００１５】
また、後述する説明から明らかになるが、このサーバコンピュータ２０００は、管理者が管理するためのものであって、クライアントコンピュータ１００１〜１００３等のユーザはその存在を知らなくても構わない。
【００１６】
なお、図示では、一般ユーザが使用するクライアントコンピュータとして３台を示したが、もちろん、この数により本願発明が限定されるものではない。ネットワーク３０００上には、他に複数のコンピュータが接続されていても良いし、それらはプリンタに接続されていなくてもよい。
【００１７】
なお、本システムを構成する画像形成装置としては、種々のものが考えられるが、本実施形態では、特にプリンタ１０８〜１１０について例示的に説明する。
【００１８】
プリンタ１０８は、クライアントコンピュータ１００１〜１００３から受信したデータを印刷する機能を有するが、外部の機器に対してプリンタ１０８で行ったジョブの情報を出力する機能を有さないものとする。
【００１９】
プリンタ１０９は、プリンタ１０８の機能に加えて、ジョブ終了時点で、そのジョブに関する総排紙ページ数などの印刷結果をクライアントコンピュータ１００１〜１００３に通知する機能を有しているものとする。
【００２０】
プリンタ１１０は、印刷後にジョブ情報をプリンタ内のメモリに格納し、サーバコンピュータ２０００の要求に応じてそのジョブ情報を出力する機能を有するものとする。
【００２１】
サーバコンピュータ２０００は、ネットワーク３０００を介してクライアントコンピュータで扱ったジョブログを記録し、閲覧希望者からの要求に応じて、特定のジョブログを選択し、単位期間別、デバイス別、ジョブ発行者別などの集計処理などを行うことが可能である。
【００２２】
なお、本実施形態では、ネットワーク３０００のプロトコルとしてＴＣＰ／ＩＰを利用するものとして説明するが、以下の機能を実現するものであれば、如何なるものでも構わない。
【００２３】
＜システムのソフトウェア構成＞
図１Ｂは、情報処理システムのソフトウェア構成を示す図である。
【００２４】
クライアントコンピュータ１００１〜１００３は、アプリケーション１０２、フックモジュール１０３、ＧＤＩ１０４（グラフィック描画を処理するサブシステム）、プリンタドライバ１０５、スプーラ１０６、送受信モジュール１０７、ジョブアカウントクライアント１１８、を含む。
【００２５】
これらのうち、アプリケーション１０２は、画像データを取り込んだり、加工したりする画像処理アプリケーションや、文書データを作成するワードプロセッサアプリケーションなどであり、不図示のオペレーションシステム上で動作する。また、ＧＤＩ１０４、送受信モジュール１０７は、オペレーションシステムに含まれるモジュールである。更に、プリンタドライバ１０５は、クライアントコンピュータ１００１〜１００３が制御するプリンタに応じてプリンタメーカーによって用意されたプログラムであり、プリンタ１０８〜１１０などのプリンタとアプリケーション１０２との間で橋渡し的に動作する。スプーラ１０６は、プリンタドライバ１０５によって確保される一時記憶領域である。
【００２６】
一方、サーバコンピュータ２０００は、ジョブアカウントサーバ１２１を含み、ジョブアカウントサーバ１２１は、ジョブログマージモジュール１２３、ジョブログ記憶モジュール１２４、ジョブログ受信モジュール１２２、ジョブログ集計モジュール１２５、ＩＤ発生モジュール１２６、処理対象外データベース１２９を含む。
【００２７】
次に、クライアントコンピュータ１００１〜１００３及びサーバコンピュータ２０００内の動作について説明する。
【００２８】
クライアントコンピュータ１００１〜１００３において、アプリケーション１０２に対して印刷指示が発行されると、アプリケーション１０２は描画のためのＧＤＩコールを行う。
【００２９】
フックモジュール１０３はジョブアカウントクライアント１１８と共に組み込まれるもので、ＧＤＩコールをフック（監視して認識）して、どのＧＤＩコールがいかなるパラメータで呼ばれたか、呼ばれた回数、などの情報を蓄積する。例えば、改ページあるいは排紙を行うＡＰＩ（アプリケーションプログラミングインタフェース）をカウントすることでアプリケーション１０２が発行したジョブの排紙枚数あるいはページ数を取得する。この情報をもとに作成された履歴をフックログ１１１として、ジョブアカウントクライアント１１８に渡す。フックモジュール１０３は、規定の判断基準に基づき、ドキュメント名を変更することもできる。ドキュメント名並びにこの変更処理については後述する。
【００３０】
図７は、フックログ１１１の一例を示す図である。フックログでは、ＪｏｂＩｄ、アプリケーション名、論理ページ数、ドキュメント名、が取得可能である。ＪｏｂＩｄはＧＤＩに印刷開始を指示したときにＧＤＩから取得できるものであり、クライアントコンピュータ１００１〜１００３の印刷ジョブを一意に指定できるものである。
【００３１】
図１Ｂに戻り、プリンタドライバ１０５はＧＤＩコールを印刷設定に従ってプリンタが解釈できる印刷データに変換して、スプーラ１０６に渡すとともに、変換内容から印刷情報を抜き出し、それをドライバログ１１２として、ジョブアカウントクライアント１１８に渡す。
【００３２】
図８はドライバログ１１２の例を示す図である。ドライバログ１１２は、ジョブアカウントクライアントが印刷実行時にドライバから取得可能な履歴情報である。ドライバログ１１２としては、印刷実行に係るジョブの識別子であるＪｏｂＩｄ、ジョブが含む印刷データの用紙サイズ、Ｎ−ｕｐ情報、物理ページ数の情報、両面片面情報が取得可能である。用紙サイズ、Ｎ−ｕｐ、物理ページ数、両面片面情報は、プリンタドライバに印刷時又はデフォルト入力され設定される印刷設定から取得する。Ｎ−ｕｐは用紙に何面の論理ページを割り付けるかの設定である。物理ページ数は、印刷時に出力する用紙の片側を１と数える単位である。
【００３３】
例えば、論理ページが４ページの場合に、両面印刷で２−ｕｐの印刷処理を行うと、物理ページは２ページとなる。そして、該物理ページが、用紙の表裏に印刷され、１枚の用紙が出力排紙される。表に論理ページの１ページ目、２ページ目、裏に論理ページの３ページ目、４ページ目が印刷される。
【００３４】
また、図１Ｂに戻り、ジョブアカウントクライアント１１８は定期的にスプーラを監視し、スプールされているジョブが有れば、そのジョブの情報をＡＰＩで取得することにより、ジョブの排紙枚数あるいはページ数を取得する。これにより取得したジョブ情報をＡＰＩログ１１３として、ジョブアカウントクライアント１１８に渡す。
【００３５】
図９は、ＡＰＩログ１１３の一例を示す図である。ＡＰＩログ１１３としては、ＪｏｂＩｄ、ジョブのオーナ名、スプールデータサイズが取得可能である。
【００３６】
送受信モジュール１０７はプリンタ１０８〜１１０など、アプリケーションから指定されたいずれかのプリンタと通信し、プリンタがレディ状態であれば、印刷データを送信する。このとき、例えば、ＨＰ社のＰｒｉｎｔｅｒＪｏｂＬａｎｇｕａｇｅ（プリンタ・ジョブ・ランゲージ）のコマンドを用いれば、プリンタ１０９において印刷ジョブの全ページの排紙が完了した後に当該ジョブが排紙したページ数を取得することが可能である。送受信モジュール１０７（ポートモニタ）１０７は、プリンタ１０９から受信したページ数などジョブ情報を、ジョブアカウントクライアント１１８に送る。この情報をもとに作成された印刷ログをモニタログ１１４と称する。
【００３７】
図１０は、モニタログ１１４の一例を示す図である。モニタログ１１４としては、ＪｏｂＩｄが取得可能である。プリンタ１０８に送信した場合は、加えて排紙ページ数、排紙枚数が取得できる。
【００３８】
フックログ１１１、ドライバログ１１２、ＡＰＩログ１１３、モニタログ１１４のいずれにおいても、当該ジョブが処理済みか否かを示すフラグ情報、並びに、ログの種別を示す情報を記録する領域が設けられている。
【００３９】
クライアントコンピュータ内のＣＰＵで実行されるソフトウェアモジュールであるジョブアカウントクライアント１１８は、各種印刷処理に関するログを収集し、ジョブアカウントサーバ１２１に送信するため、ジョブログマージモジュール１１６及びジョブログ送信モジュール１１７を含む。
【００４０】
図１Ｂのジョブログマージモジュール１１６は、フックログ１１１、ドライバログ１１２、ＡＰＩログ１１３、及びモニタログ１１４をマージし、通常は、マージ処理を終えるたびに、マージログ１２７をジョブログ送信モジュール１１７に送る。図１２は、図７から図１０に示す各ログをマージするした場合のマージログ１２７の例を示す図である。図に示すようにこのマージログ１２７は、フックログ１１１、ドライバログ１１２、ＡＰＩログ１１３、モニタログ１１４の項目を備えている。
【００４１】
なお、ジョブログ送信モジュール１１７は、ログを定期的に或いはジョブログ受信モジュール１２２の要求に応じて、ジョブログ受信モジュール１２２に送信する。この際、ジョブログ送信モジュール１１７は、ＯＳが提供する送受信モジュール１０７を制御して、ジョブログ受信モジュール１２２へログを送信してもよい。なお、ジョブアカウントクライアント１１８は、フックログ１１１、ドライバログ１１２、ＡＰＩログ１１３、モニタログ１１４のうち、どれを選択するかの優先順位を設けておき、いずれかをジョブアカウントサーバ１２１に送信することもできる。
【００４２】
次に、ジョブアカウントサーバ１２１の動作について説明する。
【００４３】
ジョブログ受信モジュール１２２は、ジョブログ送信モジュール１１７から送られるジョブを取得して蓄積する。またジョブログ受信モジュール１２２は、内部にジョブ情報を記憶するプリンタ１１０などのネットワークプリンタがネットワーク上に存在する場合には、プリンタとのプロトコルを定義し通信することで、ジョブ情報を直接プリンタから機器ログ１１５として取得することができる。つまり、定期的にプリンタ１１０をポーリングし、まだ取得していないジョブ情報があれば、それを機器ログ１１５として取得する。機器ログ１１５はプリンタ１１０内のＲＡＭあるいはＨＤに記憶されるが、記憶容量の制限のため、送受信モジュール１０７からプリンタに送信されたドキュメント名などの情報をすべて記憶することは望ましくない。図１３は、フックモジュール１０３が動作するクライアントコンピュータからジョブがプリンタ１１０に送信された場合の機器ログ１１５の例を示す図である。また、図１４は、フックモジュール１０３が動作しないクライアントコンピュータからジョブがプリンタ１１０に送信された場合の機器ログ１１５の例を示す図である。
【００４４】
ジョブログマージモジュール１２３は、ジョブアカウントクライアントから送られたマージログ１２７と機器ログ１１５をマージし、最終ログ１２８を生成する。図１７は、図１２に示すマージログ１２７と図１３に示す機器ログ１１５をマージした場合の最終ログ１２８の例を示す図である。
【００４５】
ジョブログ記憶モジュール１２４はジョブログマージモジュール１２３から最終ログ１２８を受け取り、処理対象外データベース１２８を参照して、処理対象外でなければ、ＨＤ２０６などに記憶する。ジョブログ集計モジュール１２５は、閲覧者からの指示によって、単位期間ごとの印刷ページ数を求めたり、オーナごとの印刷ページ数を求める、などの集計処理を行う。さらに、ジョブアカウントサーバ１２１は、該集計結果を、サーバコンピュータ１２００の表示部であるＣＲＴに表示する処理を制御する処理を行う。
【００４６】
ＩＤ発生モジュール１２６は、クライアントコンピュータ１００１〜１００３を一意に識別するためのＩＤを発行する。ここでは、各桁がａからｚの２６通りの値をとりうる４桁の文字列をフックモジュール１０３の要求に応じて、ａａａａ、ａａａｂ、・・・、ｚｚｚｙ、ｚｚｚｚと順に変化させ、クライアントを一意に識別できるように発行する。ここでは、ホストとジョブＩＤの組合せを用いて新ドキュメント名を作成するが、印刷システム全体で一意の新ドキュメント名（後述）をジョブアカウントサーバにおいて一元発行する方式をとってもよい。
【００４７】
なお、ここでは、クライアントコンピュータ１００１〜１００３において、一回の印刷ジョブに対して、フックログ１１１、ドライバログ１１２、ＡＰＩログ１１３、モニタログ１１４の４つのログが作成されることとしたが、常に４つのログが取れるとは限らない。例えば、アプリケーション１０２がスプーラ１０６に直接印刷データを送れば、フックログ１１１やドライバログ１１２は取得できない。プリンタドライバ１０５とジョブアカウントクライアント１１８間でプロトコルが規定されていなければ、ドライバログ１１２は取得できない。プリンタ１０８のように排紙ページ数を送受信モジュール１０７に通知する機能がない場合は、モニタログ１１４の排紙ページ情報を取得できない。しかし、ジョブに係る複数の処理においてログを取得することで、一部処理にてログ取得が不可能な場合であっても、総合的には、ログを取得できる確率が高くなる。
【００４８】
以上のような情報処理システムにおいて、クライアントコンピュータ１００１〜１００３やプリンタ１１０などから取得されたジョブ情報としてのログは、そのログの生成過程（ポート情報やドライバ情報）に基づいて記録又は集計処理すべきか否かを判定され、記録処理すべきと判定されたログのみがサーバコンピュータ２０００内に記録されることになる。もちろん、サーバコンピュータ２０００内の集計機能も有するジョブアカウントサーバ１２１によって、取得した全てのジョブ情報を記録して、その上で、記録した情報のそのログの生成過程（ポート情報やドライバ情報）に基づいて、記録した全ての情報のうち、課金対象として集計したり、用紙枚数カウント対象のジョブとして集計したりする集計対象のジョブを判定し、ジョブアカウントサーバ１２１が、ジョブ情報のデータベースから集計対象と判定されたジョブ情報を抽出するようにしても良い。なお、判定処理は、記録を行うか否かの判定基準はすべて利用可能である。
【００４９】
＜各コンピュータのハードウェア構成＞
図２は、クライアントコンピュータ１００１〜１００３およびサーバコンピュータ２０００のいずれかのハードウェア構成の一例を示すブロック図である。上述したように、クライアントコンピュータ１００１〜１００３およびサーバコンピュータ２０００は、ハードウェアの基本的な構成に相違はなく、何れのコンピュータも以下の構成を有する。
【００５０】
図２において、２０１はＣＰＵ、即ち中央処理ユニットであり、このコンピュータ全体の制御および演算処理等を行うものである。２０２はＲＯＭ即ち読み出し専用メモリであり、システム起動プログラムの情報等の記憶領域である。２０３はＲＡＭ即ちランダムアクセスメモリであり、使用制限のないデータ記憶領域である。２０４はＫＢＣ即ちキーボード制御部であり、キーボードより入力データを受け取りＣＰＵ２０１へ伝達する。２０５はディスプレイ制御部であり、ＣＲＴや液晶ディスプレイなどへの表示を制御する。２０６はＨＤすなわちハードディスクである。ＨＤ２０６は、プログラムおよびデータを記憶、格納しておき、実行時に必要に応じて参照またはＲＡＭ２０３へのロードする。２０７は通信ユニットであり、ネットワークに接続された他のコンピュータや周辺機器との通信に用いられる。通信ユニット２０７は、図１の送受信モジュール１０７、ジョブログ送信モジュール１１７などにより制御される。２０８はシステムバスであり、上述されたハードウェア間のデータの通路である。
【００５１】
図１Ｂに示したアプリケーション１０２、フックモジュール１０３、ＧＤＩ１０４、プリンタドライバ１０５、送受信モジュール１０７、ジョブアカウントクライアント１１８などのソフトウェアモジュール、およびオペレーションシステムや通信制御用プログラムなどは、ＨＤ２０５やＲＯＭ２０２からＲＡＭ２０３にロードされ、ＣＰＵ２０１により実行される。
【００５２】
なお、図２で示すＨＤ２０５の代わりに或いは、ＨＤ２０５に加えて他の記憶デバイスを設けてもよい。他の記憶デバイスとしては、不揮発性記憶メモリ等が考えられる。
【００５３】
＜各プリンタのハードウェア構成＞
図３は、本情報処理システムを構成するプリンタ１０８〜１１０の構成の一例を示すブロック図である。図３において、３０５はプリンタ全体を制御するコントローラである。コントローラ３０５の内部には、ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、ＨＤ３０４が含まれる。
【００５４】
ＣＰＵ３０１は中央処理ユニットであり、このプリンタ全体の制御および演算処理等を行うものである。ＲＯＭ３０２は読み出し専用メモリであり、システム起動プログラムの情報等の記憶領域を含む。ＲＡＭ３０３はランダムアクセスメモリであり、使用制限のないデータ記憶領域を含む。ＨＤ３０４は、ハードディスクであり、書き換える可能性のあるプログラムやデータをプリンタ電源切断後も確保する記憶領域を含む。
【００５５】
ＲＡＭ３０３は、オペレーティングシステムや通信制御およびエンジン制御などのプログラムがロードされ、実行される記憶領域を有する。プリントエンジン３０６は、コントローラの制御のもとで印刷動作や画像読み取り動作をする。通信ユニット３０７であり、ネットワークを介してクライアントコンピュータやサーバコンピュータとの通信を行うユニットである。操作ユニット３０８は、ユーザとの対話的な設定作業を行うためのユニットである。システムバス３０９は、上述の構成要素間のデータの通路となるべきものである。
【００５６】
＜サーバコンピュータのＲＡＭ構成及びその実現方法＞
図４は、クライアントコンピュータ１０００内部のＲＡＭ２０３におけるメモリマップ４０を表す図である。
【００５７】
サーバコンピュータ２０００内では、基本Ｉ／Ｏプログラム４１と、オペレーティングシステム４２と、アプリケーション１０２と、が図４のようにＲＡＭ２０３にロードされ実行可能となる。サーバコンピュータ２０００のＲＡＭ２０３内には、これらの他に、アプリケーション１０２が実行した結果生成された関連データ４４が格納されており、更に、他のプログラムが使用するワークエリア４５が用意されている。
【００５８】
図１Ｂのようなサーバコンピュータ２０００のソフトウェア構成は、ジョブアカウントサーバ１２１を外部からインストールすることによって実現することができる。インストールの方法としては、インターネットなどのネットワークを介してダウンロードする方法の他、持ち運び可能な着脱式の記憶媒体からインストールする方法を採ることができる。
【００５９】
例えば、図６のように、サーバコンピュータ２０００のＣＤ−ＲＯＭドライブ２０８にＣＤ−ＲＯＭ６０を読み込ませる方法がこれにあたる。この場合、図５のように、ＣＤ−ＲＯＭ６０の記憶領域５０には、ボリューム情報５１、ディレクトリ情報５２、実行ファイル５３、関連データファイル５４が記録される。
【００６０】
実行ファイル５３は、ジョブアカウントサーバ１２１のインストールプログラムを含む。
【００６１】
ＣＤ−ＲＯＭ６０をＣＤ−ＲＯＭドライブ６１にセットすると、オペレーティングシステム４２および基本Ｉ／Ｏプログラム４１の制御のもとに、実行ファイル５３が実行されて、ジョブアカウントサーバ１２１を実現するためのプログラムモジュール等および関連データがＣＤ−ＲＯＭ６０から読み出され、ＨＤ２０６に格納される。ここでジョブアカウントサーバ１２１を実現するためのプログラムモジュールには、図１Ｂに示した各モジュール１２２〜１２６が含まれる。
【００６２】
もちろん、記憶媒体はＣＤ−ＲＯＭに限定されるものではなく、ＤＶＤ、ＦＤなどでもよいことは言うまでもない。
【００６３】
＜フックモジュールの動作＞
図１５は、フックモジュール１０３によって行われる処理を示すフローチャートである。
【００６４】
ステップＳ１５０１において、フックモジュール１０３は、所定の機器管理プロトコルにより、印刷先のプリンタが機器ログを備えているか否かを示す情報を取得して判別し、備えていると判別した場合は、ステップＳ１５０２へ進む。フックモジュール１０３が、プリンタが機器ログを備えていないと判断した場合は、処理を終了する。
【００６５】
ステップＳ１５０２において、フックモジュール１０３は、クライアントＩＤを取得済であるか否かを判別し、取得済であれば、ステップＳ１５０４へ進む。取得していなければステップＳ１５０３へ進む。ここで、クライアントＩＤとは、ＩＤ発生モジュール１２６が発行する、クライアントコンピュータ１００１〜１００３を一意に識別可能な識別情報である。ここでは、ステップＳ１５０３において、フックモジュール１０３は、ＩＤ発生モジュール１２６と通信し、クライアントコンピュータを一意に識別するＩＤをＩＤ発生モジュール１２６から取得するものとする。
【００６６】
ステップＳ１５０４において、クライアントコンピュータ内でジョブを一意に特定するクライアント内ＪＯＢＩＤを作成する。ここでは、０００１から９９９９までの数値を順に発行するものとする。
【００６７】
ステップＳ１５０５において、フックモジュール１０３は、ステップＳ１５０３で取得済みと判断したクライアントＩＤとステップＳ１５０４で作成したクライアント内ＪｏｂＩＤを結合し、印刷システム内で一意に定まる新しい識別情報の一例である、新ドキュメント名を作成する。
【００６８】
ステップＳ１５０６において、フックモジュール１０３は、アプリケーションから渡された元のドキュメント名をフックログの項目「元ドキュメント名」に格納する。ステップＳ１５０７において、ドキュメント名をステップＳ１５０５の新ドキュメント名に置き換える。その結果、ＧＤＩにはドキュメント名として、新ドキュメント名が渡される。ＧＤＩ処理の後段である、プリンタドライバ１０５、スプーラ１０６、送受信モジュール１０７、プリンタ１１０における処理は、ドキュメント名はすべて新ドキュメント名で処理されるようにすると好適である。
【００６９】
ここで、新ドキュメント名を作成した理由は、印刷装置から取得したジョブ情報をマージする際には、ＪｏｂＩＤをそのままマージ処理のキーとして利用することは難しいからである。例えば、ジョブ管理方式の仕様の一部が非公開となっているため、Ａ社開発のアカウントサーバＡを利用する場合、Ａ社開発のアカウントサーバは、Ｂ社開発のプリンタからは、ＪｏｂＩＤを取得することができないことが多い。つまり、想定していないジョブ管理方式に対応したプリンタからは、ジョブ情報を取得してもこれにジョブＩＤが含まれないことが多く、これをマージ処理して活用できないのである。しかし、クライアントコンピュータ内のＯＳやアプリケーションによって製作され、プリンタに送信されたドキュメント名については、ジョブ情報として取得できる事が多い。
【００７０】
そこで、ジョブＩＤの代わりに、クライアント側で管理可能であり、プリンタ側からも、ＪｏｂＩＤの代わりに、ジョブ情報のキーとして取得可能なドキュメント名を識別情報として管理することが考えられる。しかし、従来のドキュメント名をそのまま用いると、問題が生ずる。クライアント側のＯＳ又はアプリケーションが管理できるのは、一般に８文字より多く、一般に用いられているＯＳにおいては２５５文字までのドキュメント名が付与できる。プリンタが管理できるのは、前述したように８文字までである。また、一般に、ジョブ管理方式において利用できるドキュメント名は８文字までである。これでは、クライアント側において８文字以上のドキュメント名を付けた場合には、クライアント側のＯＳ又はアプリケーションが付けたドキュメント名は異なっている場合であっても、同じドキュメント名のジョブがプリンタ内に並存する場合が出てきて、混乱が生ずる。そこで、アカウントサーバ側でホストＩＤを発行し、クライアント側で発行されたドキュメント名と組合わせて用いるのである。
【００７１】
これにより、８文字以内でアカウントサーバが管理する、クライアントコンピュータとプリンタを含む印刷システムにおいて一意に定まる新ドキュメント名が完成する。そして、この新ドキュメント名をジョブＩＤの代わりとしてジョブの識別に用いることができるのである。一度、クライアント側で新ドキュメント名を生成してしまえば、以後、プリンタ、クライアント、アカウントサーバにおいて、このドキュメント名をジョブの識別子として活用できる。
【００７２】
＜クライアント側ジョブログマージモジュールの動作＞
図１１は、ジョブログマージモジュール１１６によってログをマージする処理を示すフローチャートである。
【００７３】
ジョブログマージモジュール１１６は、フックログ１１１、ドライバログ１１２、ＡＰＩログ１１３、モニタログ１１４といった各ログを受信し、その内容をＨＤ２０６等に記録しておく。そして以下の処理を予め設定された周期で定期的に起動し、各ジョブ毎に、マージ処理を行う。本実施形態においては、ジョブＩＤをキーとしてログのマージ（併合処理）を行っているが、後述するドキュメントデータ名或いは新ドキュメントデータ名をキーにしてマージしてもよい。
【００７４】
以下の処理においては、ジョブログマージモジュール１１６は、フックログ、ドライバログ、ＡＰＩログ、モニタログがそれぞれ含む、開始時刻情報並びに、完了時刻情報のエントリが示す開始時刻のうち、最も早い開始時刻と、最も遅い完了時刻を特定する。そして、各時刻情報は、前述の通り、マージ処理して併合されたジョブ情報として格納される。
【００７５】
まず、ステップＳ１１０１において、ジョブログマージモジュール１１６は、処理済みフラグがＹＥＳとなっていないモニタログ（図１０参照）、すなわち、未処理のモニタログがあるか否かを検索して特定し、未処理のモニタログがあれば、ステップＳ１１０２に進む。
【００７６】
ステップＳ１１０２において、ジョブログマージモジュール１１６は、ステップＳ１１０１において未処理と特定されたモニタログを別のテンポラリの記憶領域にコピーし、これをログＡとする。
【００７７】
ステップＳ１１０３において、ログＡからＪｏｂＩＤの部分を取得する。ステップＳ１１０４において、ジョブログマージモジュール１１６は、ステップＳ１１０３で取得したＪｏｂＩＤに対応するログのうち、まだマージ処理を行っていない、つまり未処理であるログがあるか否かを、ＪｏｂＩＤに基づいて、フックログ、ドライバログ、ＡＰＩログの各ログを検索して特定することで、判断する。ステップＳ１１０４で未処理のログが無いと判断した場合は、処理を終了する。ステップＳ１１０４で未処理のログがあるとジョブログマージモジュール１１６が判断した場合は、ジョブログマージモジュール１１６は、ステップＳ１１０５に進んで、ステップＳ１１０４で未処理と判断されたＪｏｂＩＤ（ここでは便宜のためＮとする）と等しいＪｏｂＩＤのログが有るか否かを、ＪｏｂＩＤに基づいてフックログ１１１、ドライバログ１１２、ＡＰＩログ１１３の各ログの中から検索して特定し、これをログＢとする。
【００７８】
ステップＳ１１０５でＮと等しいＪｏｂＩＤのログがフックログ１１１、ドライバログ１１２、ＡＰＩログ１１３の各ログには無かった場合には、ステップＳ１１０８に進む。ステップＳ１１０５で、Ｎと等しいＪｏｂＩＤが各ログのいずれかにあった場合は、ステップＳ１１０６に進む。ここでは、例えば、ステップＳ１１０５でＮは未処理のログＡが含むＪｏｂＩＤのうち、小さなものから順に特定してＮとすればよい。
【００７９】
ステップＳ１１０６において、ジョブログマージモジュール１１６は、ステップＳ１１０５で特定した、ログＡのＪｏｂＩＤＮに対応するログの各項目（ＪｏｂＩＤＮについて取得された各ログが含むジョブ情報）について、ログＢが含む項目のうちログＡに無い項目があるか否かを判断する。ステップＳ１１０６で、ログＡのＪｏｂＩＤＮの項目について、ログＢのうちログＡに無い項目がないと判断した場合は、ジョブログマージモジュール１１６は、ステップＳ１１０８の処理を行う。ステップＳ１１０６でログＢのうちログＡに無い項目があると判断した場合は、ステップＳ１１０７に進んで、ジョブログマージモジュール１１６は、ログＡのＪｏｂＩＤＮの項目について、ログＢのうちログＡに無い項目を追加してログＡに格納されているデータを併合する。ここでログＡにログＢの項目を付加して作成したマージログ１２７の処理済フラグを「ＹＥＳ」とし、ステップＳ１１０８に進む。続いて、そして、該マージログの種別の項目を「マージ」とする。
【００８０】
ステップＳ１１０８に続くステップＳ１１０４では、ログＡに係る全てのＪｏｂＩＤについて処理が終わったと判断した場合には、処理を終了する。
【００８１】
＜サーバ側ジョブログマージモジュールの動作＞
図１６は、ジョブログマージモジュール１２３によってログをマージし、最終ログ１２８を作成する処理を示すフローチャートである。
【００８２】
ステップＳ１６０１において、ジョブログマージモジュール１２３は、未処理のマージログがあるか検索し、あればステップＳ１６０２に進む。無ければ処理を終了する。
【００８３】
ステップＳ１６０２において、ジョブログマージモジュール１２３は、プリンタが機器ログを備えているか判別し、備えていればステップＳ１６０３に進む。備えていなければステップＳ１６０７に進む。
【００８４】
ステップＳ１６０３において、ジョブログマージモジュール１２３は、未処理の機器ログでドキュメント名の項目がステップＳ１６０１のマージログと同じログがあるか検索して判断し、あると判断した場合は、ステップＳ１６０４に進む。ステップＳ１６０１のマージログと同じログが無いと判断した場合は、処理を終了する。ステップＳ１６０４において、ジョブログマージモジュール１２３は、機器ログの排紙ページ数排紙枚数をマージログに置換又は追加する。
【００８５】
ステップＳ１６０５において、ジョブログマージモジュール１２３は、ドキュメント名と元ドキュメント名を入れ換える。図１３の例では、「ドキュメント名：２００１年度年次報告書、元ドキュメント名：ａｂｃｄ０００１」となる。
【００８６】
ステップＳ１６０６において、ジョブログマージモジュール１２３は、マージログ１２７の元ドキュメント名を削除し最終ログ１２８とする。ステップＳ１６０７において、ジョブログマージモジュール１２３は、最終ログ１２８をジョブログ記憶モジュール１２４に渡す。
【００８７】
＜ジョブログ記録モジュールの動作＞
図１８は、ジョブログ記録モジュール１２４で行われる処理について説明するフローチャートである。
【００８８】
まず、ステップＳ２２０１では、ジョブログマージモジュール１２３でマージされた最終ログ１２８（図１７参照）より、ポート名、プリンタドライバ名を取得する。次に、ステップＳ２２０２において、処理対象外データベースを参照し、ステップＳ２２０１で取得したポート名、プリンタドライバ名が含まれるかどうかを検索する。ステップＳ２２０３、およびステップＳ２２０４の条件判断では、ポート名、プリンタドライバ名のいずれか一方が処理対象外データベースに含まれていれば、最終ログ１２８を記録しない。どちらとも含まれない場合は、ステップＳ２２０５に進み、最終ログ１２８を記録することで、ジョブログ集計モジュール１２５による集計対象となる。
【００８９】
ポートとは、論理的な意味と物理的な意味の両方を含む。ポートは、コンピュータとの間でデータを受け渡しするデバイスを接続できるコンピュータ上の接続ポイントのことをいうことが多い。たとえば、プリンタはパラレルポート  （あるＯＳでは、ＬＰＴ  ポートとも呼ばれる）やＴＣＰ／ＩＰのポートを作成して該ポートに接続可能である。また、ＯＳによっては、ドライバと出力先のプリンタのＩＰアドレスと、プリントデータパケットを授受するユーティリティプログラムを組にして、論理ポートとして生成することができる。本実施形態においては、出力先のプリンタごとにジョブ情報を取得できるだけではなく、出力先のポートとして論理的に作成されたポートごとにジョブ情報を取得することができる。つまり、プリンタ等の出力先と、出力先として設定されたプリンタで印刷を可能とするための制御プログラムの組ごとにもジョブ情報を取得するか否かを設定可能である。
【００９０】
また、ジョブアカウントサーバ１２１に対して、ジョブ情報を集計又は記録する対象から除外するポートの出力先として、例えば、クライアントコンピュータ１００１のＩＰアドレスを含むポート名を設定しておく。すると、ジョブ情報に含まれる出力先を示す情報が、印刷装置を有さないコンピュータに付されたＩＰアドレス、例えば図１２のポート名（ネットワーク識別子）などである場合は、ジョブアカウントサーバ１２１は、ジョブ情報の記録又は集計を行わないように制御される。もちろん、ジョブ情報を集計又は記録する対象から除外するための判断基準としてクライアントコンピュータ１００１のコンピュータ名などを指定することもできる。逆に、出力先が印刷機能を有するプリンタ等の周辺装置については、該周辺装置をジョブ情報を集計又は記録する対象から除外するポートの出力先に設定しなければ、ジョブ情報の記録又は集計を行なうように構成することができる。このようにして、ジョブアカウントサーバ１２１は、実際にプリンタ等に出力されたジョブについては用紙のカウントや課金を行い、実際には出力されていないジョブに対しては集計の一例としての用紙のカウントや課金を行わないというような精度の高い管理が可能となる。
【００９１】
従って、最終ログが、集計対象外のポートまたはプリンタドライバを使用して作成されたものであれば、集計されない。
【００９２】
＜処理対象外ポート／ドライバの登録／削除処理＞
図１９は、処理対象外データベース１２９に対する印刷ポートまたはプリンタドライバの登録／削除処理を示すフローチャートである。このフローチャートに示す処理は、サーバコンピュータ２０００によって実行される。
【００９３】
図２０、図２１は、処理対象外データベース１２９に対する印刷ポート、プリンタドライバの登録、削除処理を行うダイアログの例を示す。これらのダイアログはサーバコンピュータ２０００の不図示の表示デバイスに表示され、不図示のキーボードやポインティングデバイス等で設定が行われる。
【００９４】
図１９において、ステップＳ１９０１では、ユーザからの処理メニューに関するキー入力を受け付ける。ステップＳ１９０２では、ステップＳ１９０１で入力されたキーに応じて、ポートに関する登録／削除処理、プリンタドライバに関する登録／削除処理、または終了処理のいずれが選択されたかを判定する。
【００９５】
図２０、図２１に示すダイアログの場合には、ポートタブ２００１とドライバタブ２００２とＯＫボタン２００３とキャンセルボタン２００４のいずれが選択されたかを判定する。ポートタブ２００１が選択されるとステップＳ１９０３に進み、図２０のように処理対象外のポート一覧が表示され、ドライバタブ２００２が選択されるとステップＳ１９０９において、図２１のように処理対象外のドライバ一覧が表示される。これらのポート名、ドライバ名の実態は、レジストリに登録されている。
【００９６】
図２０では登録ポート欄２００５において、「１６０．４０．３８．４」、「１７７．５１．２０．３３」、「ＦＡＸ」、「ＮＳ＿ＦＡＸ」等のポート名が表示されている。この状態で、ステップＳ１９０４において、ポート名入力欄２００６に対してポート名の入力が行われると、ステップＳ１９０５に進む。ポート名の入力方法としては入力欄２００６に直接入力して更新ボタン２００７を選択する方法と、追加ボタン２００８を押下して、使用可能であるポート名の一覧を別途表示させ、その中から処理対象外とするポート名を選択する方法とがある。ステップＳ１９０５では、ポートを更新または追加するのか、或いは削除するのかの判断を行う。追加ボタン２００８または更新ボタン２００７が押下された場合はステップＳ１９０６に進み、対象外ポート名がレジストリに追加、更新される。登録ポート欄２００５からいずれかのポート名が選択された上で削除ボタン２００９が押下された場合はステップＳ１９０７に進み、選択されたポート名をレジストリから削除する。そして、ステップＳ１９０８において変更後の登録ポート欄２００５の再表示が行われる。また、図２１が表示された状態においても、ステップＳ１９０９からステップＳ１９１４における一連の処理により、同様にして対象外プリンタドライバ名の追加、更新、削除が行われる。
【００９７】
また、図２０または図２１において、ＯＫボタン２００３が選択されると、登録または削除したポートやドライバが有効になり、キャンセル２００４が選択されるとそのような登録／削除処理が無効となって処理を終了する。
【００９８】
以上のような処理により、図８のようにドライバログ１１２として、ポート名：「ＩＰ＿１０．１６６．３０．２」、プリンタドライバ名：「Ａｃｒｏｂａｄ  ｗｒｉｔｅｒ  ３．０」が取得され図１７のように最終ログ１２８にマージされても、図２１のように、ジョブ情報の集計処理対象外であるドライバ名に「Ａｃｒｏｂａｄ  ｗｒｉｔｅｒ  ３．０」が登録されている場合には、この最終ログは集計処理の対象外となり、サーバコンピュータ２０００に記録されることはない。ここで、Ａｃｒｏｂａｄ  ｗｒｉｔｅｒは、本発明のドライバの好適な一例としての、ＰＤＦフォーマットの印字又は表示用のデータを生成するデータ生成プログラムである。本発明では、一例として、Ａｃｒｏｂａｄ  ｗｒｉｔｅｒを掲げているが、出力先としてクライアントコンピュータ１００１又は不図示のネットワークファイルサーバ内の、所定の記憶領域であるファイルに出力するために印字又は表示制御用データを生成可能なアプリケーション又はデバイスドライバであればなんでもよい。
【００９９】
なお、処理対象外データベースはクライアントコンピュータ１００１〜１００３内に設けられてもよく、その場合、処理対象外か否かの判断はジョブログ送信モジュール１１７において行われることになる。その場合ステップＳ２２０５は、マージログ１２７を、ジョブログ受信モジュール１２２に送信する処理となる。クライアントコンピュータ１００１〜１００３で判断を行えば、不必要なジョブ情報をサーバコンピュータ２０００に送信することが無くなり、ネットワークの通信負荷を軽減できる。
【０１００】
また、サーバコンピュータ２０００において、処理対象外のポートまたはプリンタドライバの登録、または削除を行い、確定した処理対象外のポートまたはプリンタドライバについての情報をクライアントコンピュータ１００１〜１００３に転送してもよい。この場合、図２０、図２１のダイアログはサーバコンピュータ２０００側に表示され、図１９のフローチャートに示す処理もサーバコンピュータ２０００側で実行され、図１８に示すフローチャートに示す処理は各クライアントコンピュータ１００１〜１００３で行われることになる。
【０１０１】
また、ポート名、プリンタドライバ名の登録・削除がサーバコンピュータ２０００とクライアントコンピュータ１００１〜１００３の両方で行われた場合、各々のポート名、プリンタドライバ名をマージしてもよい。
【０１０２】
以上説明したように、本発明によれば、ログの集計を行わないポート名、プリンタドライバ名を登録可能とし、得られたジョブログのポート名、プリンタドライバ名と比較することで、処理対象外のジョブログの集計を排除することができる。これにより、不正なログが作成されることが予想されるサポート対象外の画像形成装置に関するログの集計を排除することが可能となり、正確なジョブカウントが可能となる。
【０１０３】
なお、本実施形態では、処理対象外データベース１２９を設け、登録されたポート名、プリンタドライバ名に関するジョブ情報を記録しないこととしたが、本発明はこれに限定されるものではなく、ジョブ情報収集の対象となるポート、プリンタドライバの名称をデータベースに登録してもよい。その場合は、図２２のステップＳ２２０３、ステップＳ２２０５の条件判断の処理は、ポート名、プリンタドライバ名が共に存在した場合に最終ログを記録することになる。
【０１０４】
（他の実施形態）
本実施形態における処理対象外のポート名、プリンタドライバ名はレジストリに登録したが、ファイル、データベース等に登録し、登録、削除処理および処理対象であるか否かの判定時にファイルまたはデータベースをアクセスすることで対応してもよい。
【０１０５】
本実施形態における図２２のフローチャートに示す処理、及び、図１Ｂに示す各モジュールが、外部からインストールされるプログラムによって、各コンピュータのそれぞれにより遂行される。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群がクライアントコンピュータに供給される場合でも本発明は適用されるものである。
【０１０６】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、又は、外部サーバ（図示省略）からダウンロードすることで、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１０７】
この場合、記憶媒体から読み出されたジョブアカウントサーバやジョブアカウントクライアントプログラム等のプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、たとえば、フロッピィーディスク、ハードディスク、光ディスク、光磁気ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ等を用いることができる。
【０１０８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、外部の所定のサーバ装置（図示省略）からネットワークを介して送信された、又は、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０９】
以下に、本発明の実施態様を示す。なお、実施態様１は、ドライバに応じて、ジョブ情報を記録、又は、集計するか否かの判断をおこない、ジョブの出力先に応じたジョブ情報の記録又は集計を行う仕組みを提供することを目的とするが、もちろん、実施態様２のように、出力先に応じて、ジョブ情報を記録、又は、集計するか否かの判断を行い、所望のドライバのジョブ情報を集計又は記録する仕組みを提供することがさらに別の目的として考え得る。
【０１１０】
［実施態様１］
画像形成装置に接続可能な情報処理装置において発行されるジョブに関するジョブ情報を記録又は集計する情報処理方法であって、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得工程と、
発行された前記ジョブのデータを生成したドライバに応じて、前記取得工程で取得された前記ジョブ情報を記録又は集計すべきか否かを判定する判定工程と、前記判定工程で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計工程と、
を有することを特徴とする情報処理方法。
【０１１１】
［実施態様２］
画像形成装置に接続可能な情報処理装置において発行されるジョブに関するジョブ情報を記録又は集計する情報処理方法であって、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得工程と、
前記ジョブ情報に対応するジョブの出力先に応じて、前記取得工程で取得された前記ジョブ情報を記録又は集計すべきか否かを判定する判定工程と、
前記判定工程で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計工程と、
を有することを特徴とする情報処理方法。
【０１１２】
［実施態様３］
前記判定工程は、前記ジョブ情報が発行された画像形成装置に応じて記録又は集計すべきか否か判定することを特徴とする実施態様２に記載の情報処理方法。
【０１１３】
［実施態様４］
前記判定工程は、前記ジョブ情報に含まれるポート情報によって、前記ジョブ情報が発行された画像形成装置を特定することを特徴とする実施態様３に記載の情報処理方法。
【０１１４】
［実施態様５］
前記判定工程は、前記ジョブ情報に対応するジョブの出力先が情報処理装置であるか、画像形成装置であるかに基づいて、前記ジョブ情報を記録又は集計すべきか否かを判定することを特徴とする実施態様２に記載の情報処理方法。
【０１１５】
［実施態様６］
前記判定工程は、前記ジョブ情報に含まれるドライバ情報によって、前記ジョブ情報を発行したドライバを特定することを特徴とする実施態様１に記載の情報処理方法。
【０１１６】
［実施態様７］
前記判定工程は、予め用意された記録対象外データベースに含まれる条件に、前記取得工程で取得したジョブ情報が合致するか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様１または２に記載の情報処理方法。
【０１１７】
［実施態様８］
前記記録対象外データベースには、記録又は集計を行うべきでない記録対象外ポート情報が含まれ、
前記判定工程は、前記取得工程で取得したジョブ情報に含まれるポート情報が、前記記録対象外ポート情報であるか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様７に記載の情報処理方法。
【０１１８】
［実施態様９］
前記記録対象外データベースには、記録又は集計を行うべきでない記録対象外ドライバ情報が含まれ、
前記判定工程は、前記取得工程で取得したジョブ情報に含まれるドライバ情報が、前記記録対象外ドライバ情報であるか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様７に記載の情報処理方法。
【０１１９】
［実施態様１０］
前記記録対象外データベースに記録又は集計すべきでないジョブ情報の条件を登録する登録工程を更に含むことを特徴とする実施態様７に記載の情報処理方法。
【０１２０】
［実施態様１１］
前記判定工程は、予め用意された記録対象データベースに含まれる条件に、前記取得工程で取得したジョブ情報が合致するか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様１又は２に記載の情報処理方法。
【０１２１】
［実施態様１２］
前記記録／集計工程では、前記判定工程で記録すべきと判定されたジョブ情報を検索可能な形式でデータベースに記録することを特徴とする実施態様１乃至１１のいずれかに記載の情報処理方法。
【０１２２】
［実施態様１３］
前記記録／集計工程では、取得したジョブ情報の中から、前記判定工程で集計すべきと判定されたジョブ情報を抽出して集計し、出力ページ数の把握、又は、出力されたジョブに対する課金を行うことを特徴とする実施態様１乃至１２のいずれかに記載の情報処理方法。
【０１２３】
［実施態様１４］
ネットワーク上に接続される情報処理クライアントから画像形成装置に発行されるジョブに関するジョブ情報を記録又は集計する情報処理サーバであって、
前記情報処理クライアントまたは前記画像形成装置から前記ジョブ情報を取得する取得手段と、
発行された前記ジョブのデータを生成したドライバに応じて、前記取得手段で取得された前記ジョブ情報を記録すべきか否かを判定する判定手段と、
前記判定手段で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計手段と、
を有することを特徴とする情報処理サーバ。
【０１２４】
［実施態様１５］
ネットワーク上に接続される情報処理クライアントから画像形成装置に発行されるジョブに関するジョブ情報を記録又は集計する情報処理サーバであって、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得手段と、
前記ジョブ情報に対応するジョブの出力先に応じて、前記取得手段で取得された前記ジョブ情報を記録又は集計すべきか否かを判定する判定手段と、
前記判定手段で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計手段と、
を有することを特徴とする情報処理サーバ。
【０１２５】
［実施態様１６］
前記判定手段は、前記ジョブ情報が発行された画像形成装置に応じて記録又は集計すべきか否か判定することを特徴とする実施態様１５に記載の情報処理サーバ。
【０１２６】
［実施態様１７］
前記判定手段は、前記ジョブ情報に含まれるポート情報によって、前記ジョブ情報が発行された画像形成装置を特定することを特徴とする実施態様１６に記載の情報処理サーバ。
【０１２７】
［実施態様１８］
前記判定手段は、前記ジョブ情報に対応するジョブの出力先が情報処理装置であるか、画像形成装置であるかに基づいて、前記ジョブ情報を記録又は集計すべきか否かを判定することを特徴とする実施態様１５に記載の情報処理サーバ。
【０１２８】
［実施態様１９］
前記判定手段は、前記ジョブ情報に含まれるドライバ情報によって、前記ジョブ情報を発行したドライバを特定することを特徴とする実施態様１４に記載の情報処理サーバ。
【０１２９】
［実施態様２０］
前記判定手段は、予め用意された記録対象外データベースに含まれる条件に、前記取得手段で取得したジョブ情報が合致するか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様１４又は１５に記載の情報処理サーバ。
【０１３０】
［実施態様２１］
前記記録対象外データベースには、記録又は集計を行うべきでない記録対象外ポート情報が含まれ、
前記判定手段は、前記取得手段で取得したジョブ情報に含まれるポート情報が、前記記録対象外ポート情報であるか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様２０に記載の情報処理サーバ。
【０１３１】
［実施態様２２］
前記記録対象外データベースには、記録又は集計を行うべきでない記録対象外ドライバ情報が含まれ、
前記判定手段は、前記取得手段で取得したジョブ情報に含まれるドライバ情報が、前記記録対象外ドライバ情報であるか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様２０に記載の情報処理サーバ。
【０１３２】
［実施態様２３］
前記記録対象外データベースに記録又は集計すべきでないジョブ情報の条件を登録する登録手段を更に含むことを特徴とする実施態様２０に記載の情報処理サーバ。
【０１３３】
［実施態様２４］
前記判定手段は、予め用意された記録対象データベースに含まれる条件に、前記取得手段で取得したジョブ情報が合致するか否かによって、記録又は集計するか否かを判定することを特徴とする実施態様１４又は１５に記載の情報処理サーバ。
【０１３４】
［実施態様２５］
前記情報処理サーバにおいて登録した記録すべきでないジョブ情報の条件を前記情報処理クライアントに転送する転送手段を有することを特徴とする請求項２４に記載の情報処理サーバ。
【０１３５】
［実施態様２６］
前記記録／集計手段は、前記判定手段で記録すべきと判定されたジョブ情報を検索可能な形式でデータベースに記録することを特徴とする実施態様１４乃至２５のいずれかに記載の情報処理サーバ。
【０１３６】
［実施態様２７］
前記記録／集計手段は、取得したジョブ情報の中から、前記判定手段で集計すべきと判定されたジョブ情報を抽出して集計し、出力ページ数の把握、又は、出力されたジョブに対する課金を行うことを特徴とする実施態様１４乃至２６のいずれかに記載の情報処理サーバ。
【０１３７】
［実施態様２８］
受信したジョブに応じて画像形成を行う画像形成装置に対してジョブを発行する情報処理クライアントと、
前記情報処理クライアントから前記画像形成装置に発行されるジョブに関するジョブ情報を記録する情報処理サーバと、
を含む情報処理システムであって、
前記情報処理サーバは、
記録すべきでないジョブ情報についての条件を記憶した記録対象外データベースと、
前記記録対象外データベースに対して前記条件を登録または削除する手段と、前記記録対象外データベースを前記情報処理クライアントに転送する転送手段と、
を備え、
前記情報処理クライアントは、
前記情報処理サーバから転送された前記記録対象外データベースを参照して、前記ジョブ情報を前記情報処理サーバに送信すべきか否かを判定する判定手段と、
前記判定手段で送信すべきと判定された前記ジョブ情報を送信する送信手段と、
を有することを特徴とする情報処理システム。
【０１３８】
［実施態様２９］
前記情報処理クライアントは、更に、
記録すべきでないジョブ情報についての条件を記憶した記録対象外データベースと、
前記記録対象外データベースに対して前記条件を登録または削除する手段と、
を有し、
前記情報処理サーバは、更に、
前記情報処理クライアント内の前記記録対象外データベースと、前記情報処理サーバ内の前記記録対象外データベースとを結合する結合手段を備えることを特徴とする実施態様２２に記載の情報処理システム。
【０１３９】
［実施態様３０］
情報処理装置から画像形成装置に発行されるジョブに関するジョブ情報を管理するプログラムであって、
コンピュータに、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得工程と、
発行された前記ジョブのデータを生成したドライバに応じて、前記取得工程で取得された前記ジョブ情報を記録又は集計すべきか否かを判定する判定工程と、前記判定工程で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計工程と、
を実行させることを特徴とするプログラム。
【０１４０】
［実施態様３１］
情報処理装置から画像形成装置に発行されるジョブに関するジョブ情報を管理するプログラムであって、
コンピュータに、
前記情報処理装置または前記画像形成装置から前記ジョブ情報を取得する取得工程と、
前記ジョブ情報に対応するジョブの出力先に応じて、前記取得工程で取得された前記ジョブ情報を記録又は集計すべきか否かを判定する判定工程と、
前記判定工程で記録又は集計すべきと判定された前記ジョブ情報を記録又は集計する記録／集計工程と、
を実行させることを特徴とするプログラム。
【０１４１】
［実施態様３２］
実施態様３０又は３１に記載のプログラムを格納したことを特徴とする記憶媒体。
【０１４２】
【発明の効果】
本発明によれば、ジョブ情報管理の精度向上を図ることができる。
【図面の簡単な説明】
【図１Ａ】本発明の実施形態の一例を示すジョブアカウントシステムの構成を示す図である。
【図１Ｂ】本発明の実施形態の一例を示すジョブアカウントシステムの構成を示す図である。
【図２】図１に示したジョブアカウントシステムを構成するクライアントコンピュータおよびサーバコンピュータの構成の一例を示すブロック図である。
【図３】図１に示したジョブアカウントシステムを構成するプリンタの構成の一例を示すブロック図である。
【図４】図１に示したジョブアカウントシステムのメモリマップの一例を表す図である。
【図５】本発明の実施形態の一例であるジョブアカウントプログラムおよび関連データが格納されているＦＤの構成内容を示す図である。
【図６】本発明の実施形態の一例であり、ＦＤに記録されたジョブアカウントプログラムおよび関連データをコンピュータシステムにロードする一例を示す図である。
【図７】本発明の実施形態におけるフックログの一例を示す図である。
【図８】本発明の実施形態におけるドライバログの一例を示す図である。
【図９】本発明の実施形態におけるＡＰＩログの一例を示す図である。
【図１０】本発明の実施形態におけるモニタログの一例を示す図である。
【図１１】本発明の実施形態におけるログをマージする手順の一例を示すフローチャートである。
【図１２】本発明の実施形態のマージログの一例を示す図である。
【図１３】本発明の実施形態における機器ログの一例を示す図である。
【図１４】本発明の実施形態における機器ログの一例を示す図である。
【図１５】本発明の実施形態のドキュメント名を変更する手順の一例を示すフローチャートである。
【図１６】本発明の実施形態におけるログをマージし、最終ログを作成する手順の一例を示すフローチャートである。
【図１７】本発明の実施形態における最終ログの一例を示す図である。
【図１８】本発明の実施形態における処理対象外ポート名、プリンタドライバ名を利用して適切なログ情報のみをサーバに送信する処理を示すフローチャートである。
【図１９】本発明の実施形態におけるポート名、プリンタドライバ名の登録、削除処理の一例を示す図である。
【図２０】本発明の実施形態におけるポート名の登録、削除ダイアログの一例を示す図である。
【図２１】本発明の実施形態におけるプリンタドライバ名の登録、削除ダイアログの一例を示す図である。
【符号の説明】
１１１  フックログ
１１２  ドライバログ
１１３  ＡＰＩログ
１１４  モニタログ
１１５  機器ログ
１１６  ジョブログマージモジュール
１１７  ジョブログ送信モジュール
１１８  ジョブアカウントクライアント
１２１  ジョブアカウントサーバ
１２２  ジョブログ受信モジュール
１２３  ジョブログマージモジュール
１２４  ジョブログ記録モジュール
１２５  ジョブログ集計モジュール
１２６  ＩＤ発生モジュール
【図１Ａ】
2004178323.tif 000003
【図１Ｂ】
2004178323.tif 000004
【図２】
2004178323.tif 000005
【図３】
2004178323.tif 000006
【図４】
2004178323.tif 000007
【図５】
2004178323.tif 000008
【図６】
2004178323.tif 000009
【図７】
2004178323.tif 000010
【図８】
2004178323.tif 000011
【図９】
2004178323.tif 000012
【図１０】
2004178323.tif 000013
【図１１】
2004178323.tif 000014
【図１２】
2004178323.tif 000015
【図１３】
2004178323.tif 000016
【図１４】
2004178323.tif 000017
【図１５】
2004178323.tif 000018
【図１６】
2004178323.tif 000019
【図１７】
2004178323.tif 000020
【図１８】
2004178323.tif 000021
【図１９】
2004178323.tif 000022
【図２０】
2004178323.tif 000023
【図２１】
2004178323.tif 000024