(57)【要約】    【課題】  プリントクライアントにジョブアカウントクライアントアプリケーションをインストールすることなくメッセージを表示することができるジョブ管理装置及び方法、ジョブ管理プログラム及び記憶媒体、並びにジョブ管理システムを提供する。    【解決手段】  ジョブアカウントクライアントアプリケーション１３１は、警告を表示する場合において、印刷を指示したコンピュータにジョブアカウントクライアントアプリケーションが存在しないときは、印刷を指示したコンピュータのＯＳにメッセージを送信し、印刷を指示したコンピュータにジョブアカウントクライアントアプリケーションが存在するときは、印刷を指示したコンピュータのジョブアカウントクライアントアプリケーションにメッセージを送信する。【選択図】      図１０
2005284949.tif 000002
【特許請求の範囲】
【請求項１】
周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理装置において、
前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信手段とを備えることを特徴とするジョブ管理装置。
【請求項２】
前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かを判別する判別手段と、
前記アプリケーションを有する情報処理装置を登録する登録手段をさらに備え、前記判別手段は、前記情報処理装置が前記アプリケーションを有しているか否かの判別を、前記情報処理装置が前記登録手段に登録されているか否かを判別することにより行うことを特徴とする請求項１記載のジョブ管理装置。
【請求項３】
前記アプリケーションに接続する接続手段をさらに備え、前記判別手段は、前記情報処理装置が前記アプリケーションを有しているか否かの判別を、前記アプリケーションに接続できたか否かを判別することにより行うことを特徴とする請求項２記載のジョブ管理装置。
【請求項４】
前記ジョブの前記周辺機器による出力上限値を設定する設定手段と、前記出力上限値を超えたジョブの出力を制限する制限手段とをさらに備えることを特徴とする請求項１乃至３のいずれか１項に記載のジョブ管理装置。
【請求項５】
前記出力上限値は、前記周辺機器により出力されるジョブの枚数、又は、面数、又は、料金についての単位期間当たりの上限値のうち、少なくとも一つを含むことを特徴とする請求項４記載のジョブ管理装置。
【請求項６】
前記ジョブの任意の属性を設定する第２の設定手段と、前記属性を有するジョブの出力を制限する第２の制限手段とをさらに備えることを特徴とする請求項１乃至５のいずれか１項に記載のジョブ管理装置。
【請求項７】
前記属性は、前記ジョブのドキュメント名に含まれる特定の文字列であることを特徴とする請求項６記載のジョブ管理装置。
【請求項８】
前記出力を制限するジョブを削除するか否かを設定する第３の設定手段をさらに備えることを特徴とする請求項４乃至７のいずれか１項に記載のジョブ管理装置。
【請求項９】
前記出力を制限するジョブに対して警告を通知するか否かを設定する第３の設定手段をさらに備えることを特徴とする請求項４乃至８のいずれか１項に記載のジョブ管理装置。
【請求項１０】
周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理方法において、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信ステップとを備えることを特徴とするジョブ管理方法。
【請求項１１】
周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理プログラムにおいて、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信モジュールとをコンピュータに実行させることを特徴とするジョブ管理プログラム。
【請求項１２】
前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かを判別する判別モジュールと、前記アプリケーションを有する情報処理装置を登録する登録モジュールをさらにコンピュータに実行させ、前記判別モジュールは、前記情報処理装置が前記アプリケーションを有しているか否かの判別を、前記情報処理装置が前記登録モジュールにより登録されているか否かを判別することにより行うことを特徴とする請求項１１記載のジョブ管理プログラム。
【請求項１３】
前記アプリケーションに接続する接続モジュールをさらにコンピュータに実行させ、前記判別モジュールは、前記情報処理装置が前記アプリケーションを有しているか否かの判別を、前記アプリケーションに接続できたか否かを判別することにより行うことを特徴とする請求項１２記載のジョブ管理プログラム。
【請求項１４】
前記ジョブの前記周辺機器による出力上限値を設定する設定モジュールと、前記出力上限値を超えたジョブの出力を制限する制限モジュールとをさらにコンピュータに実行させることを特徴とする請求項１１乃至１３のいずれか１項に記載のジョブ管理プログラム。
【請求項１５】
前記出力上限値は、前記周辺機器により出力されるジョブの枚数、又は、面数、又は、料金についての単位期間当たりの上限値のうち、少なくとも一つを含むことを特徴とする請求項１４記載のジョブ管理プログラム。
【請求項１６】
前記ジョブの任意の属性を設定する第２の設定モジュールと、前記属性を有するジョブの出力を制限する第２の制限モジュールとをさらにコンピュータに実行させることを特徴とする請求項１１乃至１５のいずれか１項に記載のジョブ管理プログラム。
【請求項１７】
前記属性は、前記ジョブのドキュメント名に含まれる特定の文字列であることを特徴とする請求項１６記載のジョブ管理プログラム。
【請求項１８】
前記出力を制限するジョブを削除するか否かを設定する第３の設定モジュールをさらにコンピュータに実行させることを特徴とする請求項１４乃至１７のいずれか１項に記載のジョブ管理プログラム。
【請求項１９】
前記出力を制限するジョブに対して警告を出力するかを設定する第３の設定モジュールをさらにコンピュータに実行させ、前記情報は前記警告を含むことを特徴とする請求項１４乃至１８のいずれか１項に記載のジョブ管理プログラム。
【請求項２０】
請求項１１乃至１９のいずれか１項に記載のプログラムを格納することを特徴とするコンピュータ読取り可能な記憶媒体。
【請求項２１】
情報をユーザに通知する情報処理装置と、周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理装置とを有するジョブ管理システムにおいて、前記ジョブ管理装置は、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信手段を備え、前記情報処理装置は前記送信された情報をユーザに通知することを特徴とするジョブ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブ管理装置及び方法、ジョブ管理プログラム及び記憶媒体、並びにジョブ管理システムに関し、特に、クライアントコンピュータが周辺機器に送信するジョブを管理するサーバコンピュータ等のジョブ管理装置及び方法、ジョブ管理プログラム及び記憶媒体、並びにジョブ管理システムに関する。
【背景技術】
【０００２】
従来のジョブ管理システムは、プリンタ、スキャナ、複写機等、又はそれらを統合したマルチファンクション機器（ＭＦＰ）等の周辺機器と、周辺機器にジョブを送信するクライアントコンピュータと、周辺機器で実行されたジョブの情報の取得やジョブの出力制御等のジョブ管理を行うジョブ管理装置とから構成される（例えば、特許文献１，２参照）。
【０００３】
上記従来のジョブ管理システムは、例えば、図１３に示すように、プリントクライアント１０と、プリントサーバ３０と、サーバコンピュータ４０と、プリンタ５０とから成り、これらはネットワーク６０を介して互いに接続されている。
【０００４】
プリントクライアント１０には、ジョブアカウントクライアントアプリケーション１１及びアプリケーション１２とがインストールされている。これらのプログラム（ジョブアカウントクライアントアプリケーション１１及びアプリケーション１２）は、ＲＡＭ２３にストアされている。これらのプログラムを、ＣＰＵ２０１が実行することにより、後述する各図の処理が実行される。また、プリントクライアント１０は、ＧＤＩ（グラフィック描画を処理するサブシステム）１３と、プリンタドライバ１４と、出力セレクタ１５と、スプーラ１６と、ポートモニタ１７とを備える。
【０００５】
プリントサーバ３０は、その構成がプリントクライアント１０の構成と基本的に同じであり、同じ構成要素には下一桁が同じ番号を付している（例えば、ＧＤＩ１３、ＧＤＩ３３）。また、サーバコンピュータ４０には、ジョブアカウントサーバアプリケーション４１がインストールされている。
【０００６】
ジョブアカウントクライアントアプリケーション１１はアプリケーション１２に対して印刷指示を発行し、アプリケーション１２はＧＤＩ１３に対して描画のためのＧＤＩコールを行い、ＧＤＩ１１３はＧＤＩコールに従って、プリンタドライバ１１４を呼び出し、プリンタドライバ１４はＧＤＩコールをＰＤＬデータに変換して、出力セレクタ１５に送信し、出力セレクタ１５は、スプーラ１６（又は、スプーラ３６）にジョブデータを送信する。
【０００７】
スプーラ１６は、出力セレクタ１５から受信したジョブデータを蓄積して、順次ポートモニタ１７に送信し、ポートモニタ１７はスプーラ１６からジョブデータを受信し、デバイスが備えているジョブ転送方式に従って、プリンタ５０が受信可能な状態であれば、ジョブデータをプリンタ５０に送信する。
【０００８】
ジョブデータ転送方式としては、ＲＦＣ１１７９で規定されているＬＰＤプロトコルや米国ヒューレットパッカード社が規定しているPrinter Job Language（登録商標）等が知られている。このPrinter Job Languageでは、プリンタとの双方向通信により終了ジョブのページ数等をポートモニタが取得することができる。
【０００９】
上述したように、印刷を指示するコンピュータとジョブデータを送信するコンピュータが同一である形態のほかに、プリントサーバを利用してジョブデータのキューイング、送信を一元化する形態も一般的である。この場合、プリントサーバ３０はプリントクライアント１０からジョブデータの送信依頼を受け、ジョブデータをスプーラ３６にキューイングし、ポートモニタ３７を経て、プリンタ５０に送信する。
【００１０】
また、ジョブアカウントサーバアプリケーション４１において、ユーザ又は部門毎に単位期間毎の出力枚数又は出力面数の上限値を予め設定し、ジョブアカウントクライアントアプリケーション３１は、受信したジョブデータの出力枚数が上限値を超えているときは、印刷を中止するか、又は警告メッセージを表示することにより上限制限処理を行うことができる。この警告メッセージは、ジョブアカウントクライアントアプリケーション１１により表示される。
【特許文献１】特開２００１−２８２４７５号公報
【特許文献２】特開２００３−２４４７７８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記ジョブ管理システムにおいて、警告メッセージを表示するためには、プリントクライアントにジョブアカウントクライアントアプリケーションをインストールする必要がある。そのため、プリントクライアントにジョブアカウントクライアントアプリケーションをインストールしていない場合は、警告メッセージを表示することができない。
【００１２】
本発明の一つの目的は、プリントクライアントにジョブアカウントクライアントアプリケーションをインストールすることなくメッセージを表示することができるジョブ管理装置及び方法、ジョブ管理プログラム及び記憶媒体、並びにジョブ管理システムを提供することにある。
【課題を解決するための手段】
【００１３】
上述の目的を達成するために、請求項１記載のジョブ管理装置は、周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理装置において、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信手段とを備えることを特徴とする。
【００１４】
請求項２記載のジョブ管理装置は、請求項１記載のジョブ管理装置において、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かを判別する判別手段と、前記アプリケーションを有する情報処理装置を登録する登録手段をさらに備え、前記判別手段は、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かの判別を、前記情報処理装置が前記登録手段に登録されているか否かを判別することにより行うことを特徴とする。
【００１５】
請求項３記載のジョブ管理装置は、請求項２記載のジョブ管理装置において、前記アプリケーションに接続する接続手段をさらに備え、前記判別手段は、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かの判別を、前記アプリケーションに接続できたか否かを判別することにより行うことを特徴とする。
【００１６】
請求項４記載のジョブ管理装置は、請求項１乃至３のいずれか１項に記載のジョブ管理装置において、前記ジョブの前記周辺機器による出力上限値を設定する設定手段と、前記出力上限値を超えたジョブの出力を制限する制限手段とをさらに備えることを特徴とする。
【００１７】
請求項５記載のジョブ管理装置は、請求項４記載のジョブ管理装置において、前記出力上限値は、前記周辺機器により出力されるジョブの枚数、又は、面数、又は、料金についての単位期間当たりの上限値のうち、少なくとも一つを含むことを特徴とする。
【００１８】
請求項６記載のジョブ管理装置は、請求項１乃至５のいずれか１項に記載のジョブ管理装置において、前記ジョブの任意の属性を設定する第２の設定手段と、前記属性を有するジョブの出力を制限する第２の制限手段とをさらに備えることを特徴とする。
【００１９】
請求項７記載のジョブ管理装置は、請求項６記載のジョブ管理装置において、前記属性は、前記ジョブのドキュメント名に含まれる特定の文字列であることを特徴とする。
【００２０】
請求項８記載のジョブ管理装置は、請求項４乃至７のいずれか１項に記載のジョブ管理装置において、前記出力を制限するジョブを削除するか否かを設定する第３の設定手段をさらに備えることを特徴とする。
【００２１】
請求項９記載のジョブ管理装置は、請求項４乃至８のいずれか１項に記載のジョブ管理装置において、前記出力を制限するジョブに対して警告を通知するか否かを設定する第３の設定手段をさらに備えることを特徴とする。
【００２２】
請求項１０記載のジョブ管理方法は、周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理方法において、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信ステップとを備えることを特徴とする。
【００２３】
請求項１１記載のジョブ管理プログラムは、周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理プログラムにおいて、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信モジュールとをコンピュータに実行させることを特徴とする。
【００２４】
請求項１２記載のジョブ管理プログラムは、請求項１１記載のジョブ管理プログラムにおいて、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かを判別する判別モジュールと、前記アプリケーションを有する情報処理装置を登録する登録モジュールをさらにコンピュータに実行させ、前記判別モジュールは、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かの判別を、前記情報処理装置が前記登録モジュールにより登録されているか否かを判別することにより行うことを特徴とする。
【００２５】
請求項１３記載のジョブ管理プログラムは、請求項１２記載のジョブ管理プログラムにおいて、前記アプリケーションに接続する接続モジュールをさらにコンピュータに実行させ、前記判別モジュールは、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かの判別を、前記アプリケーションに接続できたか否かを判別することにより行うことを特徴とする。
【００２６】
請求項１４記載のジョブ管理プログラムは、請求項１１乃至１３のいずれか１項に記載のジョブ管理プログラムにおいて、前記ジョブの前記周辺機器による出力上限値を設定する設定モジュールと、前記出力上限値を超えたジョブの出力を制限する制限モジュールとをさらにコンピュータに実行させることを特徴とする。
【００２７】
請求項１５記載のジョブ管理プログラムは、請求項１４記載のジョブ管理プログラムにおいて、前記出力上限値は、前記周辺機器により出力されるジョブの枚数、又は、面数、又は、料金についての単位期間当たりの上限値のうち、少なくとも一つを含むことを特徴とする。
【００２８】
請求項１６記載のジョブ管理プログラムは、請求項１１乃至１５のいずれか１項に記載のジョブ管理プログラムにおいて、前記ジョブの任意の属性を設定する第２の設定モジュールと、前記属性を有するジョブの出力を制限する第２の制限モジュールとをさらにコンピュータに実行させることを特徴とする。
【００２９】
請求項１７記載のジョブ管理プログラムは、請求項１６記載のジョブ管理プログラムにおいて、前記属性は、前記ジョブのドキュメント名に含まれる特定の文字列であることを特徴とする。
【００３０】
請求項１８記載のジョブ管理プログラムは、請求項１４乃至１７のいずれか１項に記載のジョブ管理プログラムにおいて、前記出力を制限するジョブを削除するか否かを設定する第３の設定モジュールをさらにコンピュータに実行させることを特徴とする。
【００３１】
請求項１９記載のジョブ管理プログラムは、請求項１４乃至１８のいずれか１項に記載のジョブ管理プログラムにおいて、前記出力を制限するジョブに対して警告を出力するかを設定する第３の設定モジュールをさらにコンピュータに実行させ、前記情報は前記警告を含むことを特徴とする。
【００３２】
請求項２０記載のコンピュータ読取り可能な記憶媒体は、請求項１１乃至１９のいずれか１項に記載のプログラムを格納することを特徴とする。
【００３３】
請求項２１記載のジョブ管理システムは、情報をユーザに通知する情報処理装置と、周辺機器へ通信媒体を介して出力されるジョブを管理すると共に、前記ジョブに関する情報を情報処理装置に送信するジョブ管理装置とを有するジョブ管理システムにおいて、前記ジョブ管理装置は、前記情報処理装置が前記ジョブに関する情報をユーザに通知するためのアプリケーションを有しているときは前記アプリケーションに前記ジョブに関する情報を送信し、前記情報処理装置が前記アプリケーションを有していないときは前記情報処理装置のオペレーティングシステムに前記ジョブに関する情報を送信する送信手段を備え、前記情報処理装置は前記送信された情報をユーザに通知することを特徴とする。
【発明の効果】
【００３４】
請求項１記載のジョブ管理装置、請求項１０記載の方法、請求項１１記載のプログラム、請求項２０記載の記憶媒体、及び請求項２１記載のシステムによれば、情報処理装置がアプリケーションを有しているときはアプリケーションに情報を送信し、情報処理装置がアプリケーションを有していないときは情報処理装置のＯＳに情報を送信するので、プリントクライアントにジョブアカウントクライアントアプリケーションをインストールすることなくメッセージを表示することができる。
【００３５】
請求項２記載のジョブ管理装置、請求項１２記載のプログラム、及び請求項２０記載の記憶媒体によれば、アプリケーションを有する情報処理装置を登録し、情報処理装置がジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かの判別を、情報処理装置が登録されているか否かを判別することにより行うので、プリントクライアントにジョブアカウントクライアントアプリケーションがインストールされているか否かを容易に判別することができる。
【００３６】
請求項３記載のジョブ管理装置、請求項１３記載のプログラム、及び請求項２０記載の記憶媒体によれば、情報処理装置がジョブに関する情報をユーザに通知するためのアプリケーションを有しているか否かの判別を、アプリケーションに接続できたか否かを判別することにより行うので、プリントクライアントにジョブアカウントクライアントアプリケーションがインストールされているか否かを確実に判別することができる。
【発明を実施するための最良の形態】
【００３７】
以下、本発明の実施の形態を図面を参照しながら詳述する。
【００３８】
図１は、本発明の実施の形態に係るジョブ管理システムの構成を概略的に示すブロック図である。
【００３９】
図１において、本発明の実施の形態に係るジョブ管理システムは、印刷指示を行うプリントクライアントＡ１１０及びプリントクライアントＢ１２０（情報処理装置）と、プリントクライアントからのジョブデータを受信して順次プリンタ１５０（周辺機器）に送信するプリントサーバ機能を有するプリントサーバ１３０（ジョブ管理装置）と、出力量等の集計処理、及びデバイスやユーザ等の登録処理等を行うサーバコンピュータ１４０と、ジョブデータを受信して印刷を行うプリンタ１５０とから成り、これらはネットワーク１６０を介して互いに接続されている。
【００４０】
プリントクライアントＡ１１０には、ジョブアカウントクライアントアプリケーション１１１と、アプリケーション１１２とがインストールさていれる。また、プリントクライアントＡ１１０は、ＧＤＩ１１３と、プリンタドライバ１１４と、出力セレクタ１１５と、スプーラ１１６と、ポートモニタ１１７とを備える。
【００４１】
ジョブアカウントクライアントアプリケーション１１１は、ジョブログ取得処理、上限制限処理、ジョブアカウントサーバアプリケーションとの通信処理等のジョブアカウントを実現するための様々な処理を行う。
【００４２】
プリントクライアントＢ１２０は、ジョブアカウントクライアントアプリケーションがインストールされていない他は、その構成がプリントクライアントＡ１１０と基本的に同じであり、同じ構成要素には下一桁が同じ番号を付している（例えば、ＧＤＩ１１３、ＧＤＩ１２３）。プリントクライアントＡ１１０もプリントクライアントＢ１２０も、ネットワークを介して接続された他のコンピュータからメッセージを受信して表示する機能を有するＯＳに付属のメッセージサービス１２１を備えるが、プリントクライアントＡ１１０では、処理に関連しないので図示していない。
【００４３】
プリントサーバ１３０は、その構成がプリントクライアントＡ１１０の構成と基本的に同じであり、同じ構成要素には下一桁が同じ番号を付している（例えば、ＧＤＩ１１３、ＧＤＩ１３３）。また、サーバコンピュータ１４０には、ジョブアカウントサーバアプリケーション１４１がインストールされている。
【００４４】
プリントクライアントＡ１１０は、ポートモニタ１１７を介してプリンタ１５０で印刷を行うPeer To Peer印刷（以下、「ＰＴＰ印刷」という）や、プリントサーバ１３０を介してプリンタ１５０で印刷を行う共有プリンタ印刷を行う。ＰＴＰ印刷は、プロトコルの指定等の自由度が大きいが、管理の手間も大きいのに対して、共有プリンタ印刷は、一台のプリントサーバだけがプリンタとの接続設定をすればよく、管理の手間を軽減することができる。
【００４５】
プリントクライアントＡ１１０によって実行される印刷時のジョブログ取得処理について説明する。
【００４６】
ジョブアカウントクライアントアプリケーション１１１はアプリケーション１１２に対して印刷指示を発行し、アプリケーション１１２はＧＤＩ１１３に対して描画のためのＧＤＩコールを行う。ジョブアカウントクライアントアプリケーション１１１は、このＧＤＩコールをフックして、どのＧＤＩコールがいかなるパラメータで呼ばれたか、呼ばれた回数等の情報を蓄積する。例えば、改ページ又は排紙を行うＡＰＩをカウントすることでアプリケーションが発行したジョブの排紙枚数又はページ数を取得する。ここで取得した情報を基に作成されたジョブログをフックログと称する。ＧＤＩ１１３はＧＤＩコールに従って、プリンタドライバ１１４を呼び出す。
【００４７】
プリンタドライバ１１４は、ＧＤＩコールを印刷設定に従ってＰＤＬ（Page Description Language）データに変換して、出力セレクタ１１５に送信するとともに、変換したデータからジョブ情報を抜き出して、ジョブアカウントクライアントアプリケーション１１１に通知する。このジョブ情報から作成されたジョブログをドライバログと称する。
【００４８】
出力セレクタ１１５は、ＰＴＰ印刷、共有プリンタ印刷のいずれにおいても同じインタフェースを提供し、ＰＴＰ印刷であればスプーラ１１６にジョブデータを送信し、共有プリンタ印刷であればプリントサーバ１３０のスプーラ１３６にジョブデータを送信する。
【００４９】
ジョブアカウントクライアントアプリケーション１１１は、スプーラ１１６にジョブデータがスプールされていないかを定期的に監視し、ジョブデータがスプールされていれば、ＯＳにより規定されているＡＰＩを発行し、ジョブの排紙枚数又はページ数等の印刷情報を取得する。この印刷情報により作成されたジョブログをスプーラログと称する。
【００５０】
スプーラ１１６は、ジョブデータをキューイングして、適宜ポートモニタ１１７にジョブデータを送信し、ポートモニタ１１７は、プリンタ１５０と通信し、プリンタ１５０がデータ受信可能であれば、ジョブデータを送信する。また、ポートモニタ１１７は、このジョブデータを解析することによりジョブログを作成し、ジョブアカウントクライアントアプリケーション１１１に送信する。このジョブログをポートモニタログ（図２）と称する。
【００５１】
ポートモニタログは、図２に示すように、スプーラ１１６により連続昇順に割り当てられたジョブＩＤ、印刷者を示すオーナ名、プリンタに送信したジョブデータのデータサイズ、面数、ＮＵＰ等のジョブに関する情報からなる。
【００５２】
面数は、用紙の片側に印刷するときにカウントされ、一枚の紙の片面に印刷したときは１、両面に印刷したときは２とカウントする。ＮＵＰは、用紙の一面に何ページの論理ページを割り付けたかを示す。
【００５３】
ジョブアカウントクライアントアプリケーション１１１は、上述のフックログ、ドライバログ、スプーラログ、及びポートモニタログのいずれかを、ジョブアカウントサーバアプリケーション１４１に送信する。ただし、共有プリンタ印刷の場合は、プリントサーバ側でジョブログ取得可能であるので送信を行わない。又は、共有プリンタ印刷であることがわかれば、そのジョブに対するジョブログ取得処理を停止してもよい。
【００５４】
ジョブアカウントサーバアプリケーション１４１は、ジョブログを受信すると、単位期間別、デバイス別、ジョブ発行者別等の出力面数算出、出力枚数算出等の集計処理等を行う。
【００５５】
プリントクライアントＢ１２０における処理については、ジョブアカウントクライアントアプリケーションがインストールされていない点を除き、前述したプリントクライアントＡ１１０における処理と同じである。
【００５６】
以下、プリントサーバ１３０の処理について説明する。
【００５７】
プリントサーバ１３０からＰＴＰ印刷を行う場合の処理は、プリントクライアントＡ１１０における処理と同じである。共有プリンタ印刷を行う場合は、スプーラ１３６がネットワーク上の別のＰＣからの印刷データを受信してキューイングを行い、印刷データを順次ポートモニタ１３７に送信し、ポートモニタ１３７は、プリンタ１５０と通信し、プリンタ１５０がデータを受信可能であれば、データを送信する。
【００５８】
プリントサーバ１３０のジョブログ取得処理については、上述したプリントクライアントＡ１１０のジョブログ取得処理とほぼ同じであるが、アプリケーションはクライアント側で動作するので、フックログは取得できない。プリントクライアント側でＰＤＬデータへの変換を行う場合はドライバログの取得できないが、ＰＤＬデータに変換する前のデータをプリントクライアントから受信する場合は、プリントサーバ１３０でドライバログの取得が可能である。
【００５９】
サーバコンピュータ１４０のジョブアカウントサーバ１４１は、主に、ジョブログの蓄積、蓄積したジョブログを参照することによる出力量等の集計処理、管理者に対するユーザインタフェースの提供、デバイス、ユーザ、その他の登録処理、及び出力制御、その他の設定処理等を行う。
【００６０】
プリントクライアントＡ１１０、プリントクライアントＢ１２０、プリントサーバ１３０、及びサーバ１４０の各コンピュータの各内部構成は同じであり、以下、プリントクライアントＡ１１０を例として説明する。
【００６１】
図３は、図１におけるプリントクライアントＡ１１０の内部構成を示すブロック図である。
【００６２】
図３において、プリントクライアントＡ１１０は、プリントクライアントＡ１１０全体の制御及び演算処理等を行うＣＰＵ２０１と、システム起動プログラムの情報等の記憶領域であるＲＯＭ２０２と、使用制限のないデータ記憶領域であり、オペレーティングシステム、アプリケーション、デバイスドライバ及び通信制御等のプログラムがロードされ、実行される領域であるＲＡＭ２０３と、キーボードより入力されたデータをＣＰＵへ伝達するＫＢＣ（キーボード制御部）２０４と、ディスプレイ装置への表示制御をするＣＲＴ（ディスプレイ制御部）２０５と、実行時に必要に応じて参照又はＲＡＭ２０３へロードされるプログラム及びデータを格納する外部記憶装置としてのＦＤ（フロッピー（登録商標）ディスク）２０６と、ネットワークを介して接続された他のコンピュータや周辺機器とのネットワーク通信制御を行う通信部２０７とを備え、これらはシステムバス２０８を介して互いに接続される。ＦＤ２０６は、ハードディスク又はＳＲＡＭ（不揮発性記憶装置）に代えてもよい。
【００６３】
図４は、図１におけるプリンタ１５０の内部構成を示すブロック図である。
【００６４】
図４において、プリンタ１５０は、プリンタ１５０全体を制御するコントローラ部３０５と、コントローラ部３０５の制御のもとで印刷動作や画像読取り動作をする入出力エンジン部３０６と、プリントクライアントやプリントサーバとのネットワーク通信制御を行う通信部３０７と、ユーザとの対話的な設定作業を行うユーザ操作入出力部３０８とを備える。
【００６５】
コントローラ部３０５は、コントローラ部３０５の制御及び演算処理等を行うＣＰＵ３０１と、システム起動プログラムの情報等の記憶領域であるＲＯＭ３０２と、使用制限のないデータ記憶領域であるＲＡＭ３０３と、オペレーティングシステムや通信制御及びエンジン制御等のプログラムがロードされ、実行される領域であるＲＡＭ３０３と、不揮発性記憶装置であるＨＤ（ハードディスク）３０４とを備える。ＨＤ３０４はＳＲＡＭに代えてもよい。
【００６６】
コントローラ部３０５内の各構成要素、入出力エンジン部３０６、通信部３０７、及びユーザ操作入出力部３０８は、システムバス３０９を介して互いに接続される。
【００６７】
図５は、図３におけるＲＡＭ２０３にロードされるメモリマップ４００の構成を示す図である。
【００６８】
図５において、メモリマップ４００は、基本Ｉ／Ｏプログラム４０１と、ウインドウシステム等のオペレーティングシステム４０２と、本発明の実施の形態に係るジョブ管理プログラムであるアプリケーション４０３と、関連データ４０４と、各々のプログラムが使用するワークエリア４０５とから成る。
【００６９】
本実施の形態では、アプリケーション４０３及び関連データ４０４はフロッピー（登録商標）ディスク（ＦＤ）中に記録されている。
【００７０】
図６は、図５におけるアプリケーション４０３及び関連データ４０４の構成を示す図である。
【００７１】
図６において、フロッピー（登録商標）ディスク（ＦＤ）の記録領域５００には、ボリューム情報５０１、ディレクトリ情報５０２、実行ファイル５０３、関連データファイル５０４が記録されている。
【００７２】
図７に示すように、フロッピー（登録商標）ディスク（ＦＤ）６００に記録されたアプリケーション４０３及び関連データ４０４は、ＦＤドライブ（ＤＫＣ）６０１を介してコンピュータシステム６０２にロードすることができる。ＦＤ６００をＤＫＣ６０１にセットすると、オペレーティングシステム４０２及び基本Ｉ／Ｏプログラム４０１の制御のもとに、実行ファイル５０３が実行されて、本ジョブアカウントプログラム及び関連データがＦＤ６００から読み出され、ＲＡＭ２０３にロードされて使用可能となる。記憶媒体はＦＤに限定されるものではなく、ＤＶＤ、ＣＤ−ＲＯＭ等であってもよい。
【００７３】
図８は、図１におけるジョブアカウントクライアントアプリケーション１３１によって実行される起動処理を示すフローチャートである。
【００７４】
図８において、ジョブアカウントクライアントアプリケーション１３１は、プリントサーバ１３０の識別情報をジョブアカウントサーバアプリケーション１４１に送信する（ステップＳ８０１）。通知する識別情報は、例えば、コンピュータ名、ＩＰアドレス、ジョブアカウントクライアントアプリケーション１３１のバージョン等である。ジョブアカウントサーバアプリケーション１４１は通知された識別情報を保持する。
【００７５】
次いで、ジョブアカウントサーバアプリケーション１４１からクライアントリストを取得する（ステップＳ８０２）。クライアントリストは、予め登録されたジョブアカウントクライアントアプリケーションがインストールされたコンピュータのリストであり、例えば、図９に示すように、プリントクライアントのコンピュータ名、ＩＰアドレス、及びジョブアカウントクライアントアプリケーションのバージョン等の情報を有する。
【００７６】
続くステップＳ８０３では、ポートモニタ１３７にジョブ受信時にイベントを通知するように依頼し、本処理を終了する。これにより、ポートモニタ１３７がジョブデータを受信すると、ジョブアカウントクライアントアプリケーション１３１にその旨が通知され、応答があるまで印刷処理の実行が保留される。
【００７７】
図８の処理によれば、ジョブアカウントクライアントアプリケーション１３１は、ジョブアカウントサーバアプリケーション１４１からクライアントリストを取得する（ステップＳ８０２）ので、クライアントリストを参照してプリントクライアントにジョブアカウントクライアントアプリケーションがインストールされているか否かを容易に判別することができる。
【００７８】
図１０は、図１におけるジョブアカウントクライアントアプリケーション１３１によって実行される出力制限処理を示すフローチャートである。
【００７９】
図１０において、ジョブアカウントクライアントアプリケーション１３１は、ポートモニタ１３７がジョブデータを受信すると、ポートモニタ１３７からジョブログを取得する（ステップＳ９０１）。ジョブログの内容は、図２のポートモニタログと基本的に同じであるが、ジョブの実行が完了していないので情報が未確定である点で、図２のポートモニタログと異なる。
【００８０】
次いで、ジョブアカウントサーバアプリケーション１４１と通信して、ジョブアカウントサーバアプリケーション１４１に設定された出力制限情報（図１１）に基づいて判断された当該ジョブの印刷可否の情報を取得し（ステップＳ９０２）、上記出力制限情報から当該ジョブに警告を表示するか否かの情報を取得し（ステップＳ９０３）、後述する図１２のアプリケーション有無判別処理を実行して、印刷を指示したコンピュータのジョブアカウントクライアントアプリケーションの有無に関する情報を取得する（ステップＳ９０４）。
【００８１】
次いで、印刷可否の情報に基づき印刷が可能であるか否かを判別し（ステップＳ９０５）、印刷が可能なときは、直ちに本処理を終了し、印刷が可能でないときは、ジョブを削除して印刷処理を停止し（ステップＳ９０６）、警告を表示するか否かの情報に基づき警告を表示するか否かを判別し（ステップＳ９０７）、警告を表示しないときは、直ちに本処理を終了し、警告を表示するときは、ジョブアカウントクライアントアプリケーションの有無に関する情報に基づき印刷を指示したコンピュータにジョブアカウントクライアントアプリケーションが存在するか否かを判別する（ステップＳ９０８）。
【００８２】
ステップＳ９０８の判別の結果、印刷を指示したコンピュータにジョブアカウントクライアントアプリケーションが存在しないときは、ジョブアカウントクライアントアプリケーション１３１は印刷を指示したコンピュータのＯＳにメッセージを送信し（ステップＳ９０９）、本処理を終了する。この場合、印刷を指示したコンピュータは、ＯＳ標準の方法でメッセージを通知する。例えば、プリントクライアントＢ１２０により印刷が指示された場合は、メッセージサービス１２１がプリントサーバからメッセージを受信し、ユーザに対してダイアログ表示を行うことにより、メッセージを伝達する。
【００８３】
ステップＳ９０８の判別の結果、印刷を指示したコンピュータにジョブアカウントクライアントアプリケーションが存在するときは、ジョブアカウントクライアントアプリケーション１３１は印刷を指示したコンピュータのジョブアカウントクライアントアプリケーションにメッセージを送信し（ステップＳ９１０）、本処理を終了する。例えば、プリントクライアントＡ１１０により印刷が指示された場合は、ジョブアカウントクライアントアプリケーション１１１にメッセージを送信する。メッセージの伝達方法はジョブアカウントクライアントアプリケーション既定のポートを使用したＴＣＰ／ＩＰ通信等が考えられる。メッセージを受信したジョブアカウントクライアントアプリケーションはダイアログを表示する、又は、音声を出力する等して、メッセージを伝達する。
【００８４】
ジョブアカウントクライアントアプリケーション固有の通知方法は、ＯＳ標準の通知方法に比べて自由度が大きくなり、音声を出す、表示時間を延ばす、表示回数を増やすといったカスタマイズが可能である。
【００８５】
図１０の処理によれば、ジョブアカウントクライアントアプリケーション１３１は、印刷を指示したコンピュータにジョブアカウントクライアントアプリケーションが存在しないときは、印刷を指示したコンピュータのＯＳ標準の方法でメッセージを送信するので（ステップＳ９０９）、プリントクライアントにジョブアカウントクライアントアプリケーションをインストールすることなくメッセージを表示することができる。
【００８６】
図１１は、図１におけるジョブアカウントサーバアプリケーション１４１において出力制限情報を設定するためのユーザインタフェース（ＵＩ）を示す図である。
【００８７】
このＵＩは、なんらかの別手段によってユーザを特定した後、当該ユーザの出力制限情報を設定するものである。本実施の形態では、ユーザ特定のキーはオーナ名とする。
【００８８】
図１１において、ＵＩは、上限を設定する単位期間を入力するための単位期間入力領域１１０１と、単位期間の開始日時を入力するための開始日入力領域１１０２と、単位期間内の印刷量の上限を入力するための上限入力領域１１０３と、上限を超過した後のジョブを削除するか否かを選択するための削除選択領域１１０４と、上限を超えた後のジョブに対して警告を行うか否かを選択するための警告選択領域１１０５とを有する。単位期間をすぎると実績値、すなわち実際に印刷を行った量はゼロクリアされる。
【００８９】
なお、上限入力領域１１０３において、上限の単位を面としたが、例えば枚数でもよく、面数、枚数、カラーモード等を価格づけてコスト換算してもよい。削除選択領域１１０４において、ＹＥＳであれば、上限を超えた後のジョブは印刷できない。
【００９０】
また、ＵＩは、制限対象文字列を表示する文字列表示領域１１０６と、文字列表示領域１１０６に文字列を入力して追加するための追加ボタン１１０７と、文字列表示領域１１０６に表示された文字列を選択して削除するための削除ボタン１１０８と、制限対象文字列を含むドキュメント名を有するジョブを削除するか否かを選択するための削除選択領域１１０９と、制限対象文字列を含むドキュメント名を有するジョブに対して警告を行うか否かを選択するための警告選択領域１１１０とを有する。
【００９１】
ジョブのドキュメント名に制限対象文字列が含まれていれば、該ジョブの印刷は制限される。
【００９２】
さらに、ＵＩは、現在の編集内容を保存するときに押下されるＯＫボタン１１１１と、現在の設定を保存せずにダイアログを終了するときに押下されるキャンセルボタン１１１２とを有する。
【００９３】
ジョブアカウントサーバアプリケーション１４１は、図１０のステップＳ９０２、ステップＳ９０３において、印刷可否の情報、及び警告を表示するか否かの情報の要求を受けると、ジョブログのオーナ名からユーザを特定し、該ユーザの単位期間の出力量が上限を超えていないか、ドキュメント名に制限対象文字列が含まれるか、削除する設定になっているか、警告を行う設定になっているかを判別し、ジョブアカウントクライアントアプリケーション１３１に返信する。
【００９４】
図１２は、図１０のステップＳ９０４のアプリケーション有無判別処理のフローチャートである。
【００９５】
図１２において、ジョブアカウントクライアントアプリケーション１３１は、当該ジョブのプリントクライアントのコンピュータ名を取得し（ステップＳ１２０１）、取得したコンピュータ名からＩＰアドレスを取得し（ステップＳ１２０２）、クライアントリスト（図９）に取得したＩＰアドレスがあるか否かを判別し（ステップＳ１２０３）、クライアントリストに取得したＩＰアドレスがあるときは、ジョブアカウントクライアントアプリケーションありと判別し（ステップＳ１２０７）、本処理を終了する。
【００９６】
ステップＳ１２０３の判別の結果、クライアントリストに取得したＩＰアドレスがないときは、プリントクライアントのジョブアカウントクライアントアプリケーションの通信用ポートに接続を試みる（ステップＳ１２０４）。ここで、ジョブアカウントクライアントアプリケーション１３１は、ジョブアカウントクライアントアプリケーションとの接続に成功したか否かを判別し（ステップＳ１２０５）、ジョブアカウントクライアントアプリケーションとの接続に成功したときは、ジョブアカウントクライアントアプリケーションありと判別し（ステップＳ１２０７）、一方、ジョブアカウントクライアントアプリケーションとの接続に成功しなかったときは、ジョブアカウントクライアントアプリケーションなしと判別し（ステップＳ１２０６）、本処理を終了する。
【００９７】
図１２の処理によれば、クライアントリストに取得したＩＰアドレスがあるときは、ジョブアカウントクライアントアプリケーションありと判別する（ステップＳ１２０７）ので、クライアントリストを参照してプリントクライアントにジョブアカウントクライアントアプリケーションがインストールされているか否かを容易に判別することができる。
【００９８】
また、ジョブアカウントクライアントアプリケーションとの接続に成功したときは、ジョブアカウントクライアントアプリケーションありと判別する（ステップＳ１２０７）ので、プリントクライアントにジョブアカウントクライアントアプリケーションがインストールされているか否かを確実に判別することができる。
【００９９】
また、本発明の目的は、上記実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム又は装置に供給し、そのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出して実行することによっても達成されることは言うまでもない。
【０１００】
この場合、記憶媒体から読出されたプログラムコード自体が前述した、図８，図１０，図１２を含む実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０１】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(ＯＳ)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１０２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１０３】
また、上記プログラムは、上述した実施の形態の機能をコンピュータで実現することができればよく、その形態は、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給されるスクリプトデータ等の形態を有するものでもよい。
【０１０４】
プログラムを供給する記録媒体としては、例えば、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ）、磁気テープ、不揮発性のメモリカード、他のＲＯＭ等の上記プログラムを記憶できるものであればよい。又は、上記プログラムは、インターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【図面の簡単な説明】
【０１０５】
【図１】本発明の実施の形態に係るジョブ管理システムの構成を概略的に示すブロック図である。
【図２】図１におけるジョブアカウントクライアントアプリケーションが取得するポートモニタログの例を示す図である。
【図３】図１におけるプリントクライアントＡの内部構成を示すブロック図である。
【図４】図１におけるプリンタの内部構成を示すブロック図である。
【図５】図３におけるＲＡＭにロードされるメモリマップの構成を示す図である。
【図６】図５におけるアプリケーション及び関連データの構成を示す図である。
【図７】図５におけるアプリケーション及び関連データをコンピュータシステムにロードする方法を説明するのに用いられる図である。
【図８】図１におけるジョブアカウントクライアントアプリケーションによって実行される起動処理を示すフローチャートである。
【図９】図８のステップＳ８０２で取得されるクライアントリストの一例を示す図である。
【図１０】図１におけるジョブアカウントクライアントアプリケーションによって実行される出力制限処理を示すフローチャートである。
【図１１】図１におけるジョブアカウントサーバアプリケーションにおいて、出力制限情報を設定するためのユーザインタフェース（ＵＩ）を示す図である。
【図１２】図１０のステップＳ９０４のアプリケーション有無判別処理のフローチャートである。
【図１３】従来のジョブ管理システムの構成を概略的に示すブロック図である。
【符号の説明】
【０１０６】
１１０  プリントクライアントＡ
１１１  ジョブアカウントクライアントアプリケーション
１２０  プリントクライアントＢ
１２１  メッセージサービス
１３０  プリントサーバ
１３１  ジョブアカウントクライアントアプリケーション
１４１  ジョブアカウントサーバアプリケーション
【図１】
2005284949.tif 000003
【図２】
2005284949.tif 000004
【図３】
2005284949.tif 000005
【図４】
2005284949.tif 000006
【図５】
2005284949.tif 000007
【図６】
2005284949.tif 000008
【図７】
2005284949.tif 000009
【図８】
2005284949.tif 000010
【図９】
2005284949.tif 000011
【図１０】
2005284949.tif 000012
【図１１】
2005284949.tif 000013
【図１２】
2005284949.tif 000014
【図１３】
2005284949.tif 000015