(57)【特許請求の範囲】
【請求項１】
印刷先決定要求を受け付ける受け付け手段と、
前記要求を行ったユーザの印刷装置の使用履歴と、前記要求を行ったユーザによって登録された印刷設定を取得する取得手段と、
前記取得手段により取得された情報に基づいて、前記要求を行ったユーザによって使用されたことがあり、且つ、当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定する決定手段と、
ユーザによって指定された場所に設置されている印刷装置を特定する特定手段と、を有し、
前記決定手段は、前記取得手段により取得された情報と、前記特定手段により特定された印刷装置とに基づいて、前記要求を行ったユーザによって使用されたことがあり、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定し、前記決定された印刷装置が印刷できる状態でないと判定されると、前記要求を行ったユーザが所定の期間内に使用した印刷装置に関する情報を前記ユーザに報知することを特徴とする印刷制御装置。
【請求項２】
ユーザによって指定された場所に複数の印刷装置がある場合、前記決定手段は、前記複数の印刷装置の中で最終アクセス日時の新しい印刷装置から順番に前記要求に基づく印刷の実行先として決定すべきか否かを判定することを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記要求を行ったユーザによって使用されたことがあり、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を決定できない場合、前記決定手段は、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を再検索することを特徴とする請求項１または２に記載の印刷制御装置。
【請求項４】
印刷先決定要求を受け付ける受け付けステップと、
前記要求を行ったユーザの印刷装置の使用履歴と、前記要求を行ったユーザによって登録された印刷設定を取得する取得ステップと、
前記取得ステップにより取得された情報に基づいて、前記要求を行ったユーザによって使用されたことがあり、且つ、当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定する決定ステップと、
ユーザによって指定された場所に設置されている印刷装置を特定する特定ステップと、を有し、
前記決定ステップは、前記取得ステップにより取得された情報と、前記特定ステップにより特定された印刷装置とに基づいて、前記要求を行ったユーザによって使用されたことがあり、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定し、前記決定された印刷装置が印刷できる状態でないと判定されると、前記要求を行ったユーザが所定の期間内に使用した印刷装置に関する情報を前記ユーザに報知することを特徴とする印刷制御方法。
【請求項５】
印刷先決定要求を受け付ける受け付けステップと、
前記要求を行ったユーザの印刷装置の使用履歴と、前記要求を行ったユーザによって登録された印刷設定を取得する取得ステップと、
前記取得ステップにより取得された情報に基づいて、前記要求を行ったユーザによって使用されたことがあり、且つ、当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定する決定ステップと、
ユーザによって指定された場所に設置されている印刷装置を特定する特定ステップと、をコンピュータに実行させ、
前記決定ステップは、前記取得ステップにより取得された情報と、前記特定ステップにより特定された印刷装置とに基づいて、前記要求を行ったユーザによって使用されたことがあり、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定し、前記決定された印刷装置が印刷できる状態でないと判定されると、前記要求を行ったユーザが所定の期間内に使用した印刷装置に関する情報を前記ユーザに報知することを特徴とするコンピュータプログラム。
【請求項６】
ユーザによって指定された場所に複数の印刷装置がある場合、前記決定ステップは、前記複数の印刷装置の中で最終アクセス日時の新しい印刷装置から順番に前記要求に基づく印刷の実行先として決定すべきか否かを判定することを特徴とする請求項５に記載のコンピュータプログラム。
【請求項７】
前記要求を行ったユーザによって使用されたことがあり、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を決定できない場合、前記決定ステップは、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を再検索することを特徴とする請求項５または６に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御装置、印刷制御方法、及びコンピュータプログラムに関し、特に、サーバで管理されている印刷装置で印刷を行うために用いて好適なものである。
【背景技術】
【０００２】
内部統制・セキュリティ強化や、ＰＣの管理コストの削減のため、オフィス環境でもクライアントＰＣにアプリケーションをインストールしない、シンクライアント化が加速している。それに伴い、印刷業務においても、クライアントＰＣがプリントドライバやプリンタオブジェクトを保持せず、プリントサーバが全てのプリンタを管理し、印刷ジョブを管理する印刷システムが主流になってきている。
このようにプリントサーバで全てのプリンタを管理する場合、管理するプリンタの台数が大幅に増加することになる。そのため、印刷を行うユーザは、大量のプリンタの中から印刷するプリンタを選択する必要がある。したがって、ユーザは、適切なプリンタを選択するために、プリンタドライバやプリンタの能力等の情報を事前に知っておく必要があった。特に、場所が特定されないモバイルの端末をクライアント端末として使用する環境等では、クライアント端末で得られるプリンタの情報が少ない場合がある。このような場合、実際に印刷が開始できるようになるまでに時間がかかることがある。そこで、プリントサーバが印刷条件に適したプリンタを自動選択するシステムが提案されている（特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−５８３０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の技術では、プリントサーバが印刷条件だけからプリンタを自動選択してしまうので、自動選択されたプリンタが、ユーザの知っているプリンタとは限らず、意図しない場所に印刷物が出力される虞がある。したがって、ユーザの利便性や、印刷物のセキュリティが確保されないことがある。また、ユーザは、自動選択されたプリンタから、自分の近くにあるプリンタに印刷物を出力するプリンタを変更するためには、そのプリンタを大量のプリンタの中から特定し、プリンタドライバの設定等を行う必要があった。このため、ユーザの近くにあるプリンタに印刷物を出力させることが容易ではない。
本発明は、このような問題点に鑑みてなされたものであり、サーバで管理されている印刷装置で印刷を行うに際し、ユーザが意図する印刷装置での印刷を容易に行えるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明の印刷制御装置は、印刷先決定要求を受け付ける受け付け手段と、前記要求を行ったユーザの印刷装置の使用履歴と、前記要求を行ったユーザによって登録された印刷設定を取得する取得手段と、前記取得手段により取得された情報に基づいて、前記要求を行ったユーザによって使用されたことがあり、且つ、当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定する決定手段と、ユーザによって指定された場所に設置されている印刷装置を特定する特定手段と、を有し、前記決定手段は、前記取得手段により取得された情報と、前記特定手段により特定された印刷装置とに基づいて、前記要求を行ったユーザによって使用されたことがあり、当該ユーザの要求に対応する場所に設置されており、且つ当該ユーザによって登録された印刷設定で印刷を行える印刷装置を、前記要求に基づく印刷の実行先として決定し、前記決定された印刷装置が印刷できる状態でないと判定されると、前記要求を行ったユーザが所定の期間内に使用した印刷装置に関する情報を前記ユーザに報知することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、ユーザが意図する印刷装置での印刷を容易に行うことができる。
【図面の簡単な説明】
【０００７】
【図１】印刷制御システムの構成を示す図である。
【図２】プリントサーバの機能的な構成を示す図である。
【図３】情報処理装置のハードウェア構成を示す図である。
【図４】プリンタのハードウェア構成を示す図である。
【図５】ＲＡＭのメモリマップを示す図である。
【図６】プリンタ管理部が管理する情報を示す図である。
【図７】ログイン情報とリクエスト情報を示す図である。
【図８】リクエスト情報受信時のプリンタ管理処理を示すフローチャートである。
【図９】ログイン情報受信時のプリンタ管理処理を示すフローチャートである。
【図１０】エラー発生時のプリンタ管理処理を示すフローチャートである。
【図１１】印刷完了時のプリンタ管理処理を示すフローチャートである。
【図１２】アクセス回数に従う印刷先の決定を促すメッセージを示す図である。
【図１３】Ｗｅｂブラウザ上のユーザインターフェースを示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の一実施形態について図面を用いて説明する。
図１は、印刷制御システムの構成の一例を示す図である。
図１では、ネットワークの一例であるＷＡＮ１０１を介して、アプリケーションサーバ１０２、プリントサーバ１０３、及びデータベースシステム１０４と、プリンタ１０７、及びクライアントＰＣ１０８とが相互に接続されている。
アプリケーションサーバ１０２は、ＷＡＮ１０１を介して、大容量記憶装置１０５に文書データを保存したり、文書データを印刷可能な印刷ジョブに変換して大容量記憶装置１０５に保存したり、保存された文書データをクライアントＰＣ１０８へ送信したりする。また、アプリケーションサーバ１０２は、クライアントＰＣ１０８からの印刷指示や、印刷ジョブの操作を受け付けて、プリントサーバ１０３へ指示をする。尚、本実施形態では、アプリケーションサーバ１０２は、クライアントＰＣ１０８のＷｅｂブラウザで動作するアプリケーションを提供する「Ｗｅｂアプリケーションサーバ」を想定している。
プリントサーバ１０３は、プリンタ１０７の監視や管理、印刷ジョブの制御や監視、プリンタ１０７への印刷ジョブの転送等の処理を行う。また、プリントサーバ１０３は、ＷＡＮ１０１を介してデータベースシステム１０４やアプリケーションサーバ１０２と通信を行い、クライアントＰＣ１０８が使用するプリンタ１０７、印刷設定情報、及び印刷ジョブを管理する。
【０００９】
データベースシステム１０４は、大容量記憶装置１０５を管理するサーバコンピュータである。大容量記憶装置１０５には、アプリケーションサーバ１０２が作成した文書データ、印刷ジョブ、印刷ジョブ情報、及びプリンタ情報等が記憶されている。他のサーバ（アプリケーションサーバ１０２やプリントサーバ１０３等）は、これらの情報にアクセス（データの取得・更新・追加・削除）するために、データベースシステム１０４に要求を出す。データベースシステム１０４は、それらの要求を受け付けて実行する。尚、アプリケーションサーバ１０２は、印刷ジョブ（ＰＤＬデータ）を生成するためのプリンタドライバを備えているものとする。
プリンタ１０７は、ＬＡＮ１０６に接続された画像形成装置である。プリンタ１０７は、ＬＡＮ１０６やＷＡＮ１０１等を介して、アプリケーションサーバ１０２やプリントサーバ１０３と通信を行う。プリンタ１０７としては、電子写真方式を採用したレーザビームプリンタや、インクジェット方式を採用したインクジェットプリンタや、熱転写方式を利用したプリンタ等あらゆる方式の印刷装置を採用することができる。また、本実施形態では、印刷制御システムに含まれる装置間の通信はイーサネット（登録商標）ケーブル等を利用した有線通信でもよいし、電波や光等を利用した無線通信でもよい。
クライアントＰＣ１０８は、情報処理を行うためのＰＣである。各クライアントＰＣ１０８は、ＬＡＮ１０６に接続されており、ＷＡＮ１０１を介して各種のサーバコンピュータと通信することができる。
本実施形態では、プリンタ１０７及びクライアントＰＣ１０８は、それぞれ複数台あることを想定しており、また、ＬＡＮ１０６、プリンタ１０７、及びクライアントＰＣ１０８と同様の構成が複数存在することを想定している。
【００１０】
図２は、プリントサーバ１０３の機能的な構成の一例を示す図である。
リクエスト管理部２０１は、ユーザから、クライアントＰＣ１０８のＷｅｂブラウザや、プリンタ１０７を介して、印刷要求、印刷設定情報の登録、印刷先要求、及びログイン情報を受け付ける。ここで、印刷要求とは、ユーザからプリントサーバ１０３への印刷指示である。また、印刷設定情報の登録とは、ユーザが所望する印刷設定情報の登録をプリントサーバ１０３へ要求することである。また、印刷先要求とは、ユーザが登録した印刷設定情報に対する実際の印刷先の決定をプリントサーバ１０３へ要求することである。また、ログイン情報とは、クライアントＰＣ１０８のＷｅｂブラウザや、プリンタ１０７からプリントサーバ１０３へ通知されるユーザのログイン情報である。プリンタ１０７からプリントサーバ１０３へのログイン情報は、図４に示す操作部４０６を介して通知される。また、Ｗｅｂブラウザからのログイン情報は、プリンタ１０７に接続されたカードリーダや、クライアントＰＣ１０８に表示されるＷｅｂブラウザ上のリモートユーザインターフェースを用いたりすることによって通知される。印刷設定情報の登録や、ログイン情報の詳細に関しては、図６、図７等を用いて後述する。尚、ここでは、クライアントＰＣ１０８のＷｅｂブラウザや、プリンタ１０７から印刷指示を行うようにする場合を例に挙げて説明するが、例えば、アプリケーションサーバ１０２のユーザインターフェースから印刷指示を行うようにしてもよい。
【００１１】
リクエスト管理部２０１が印刷要求を受け付けると、ジョブ制御部２０２は、データベースアクセス部２０６を介してデータベースシステム１０４から、印刷ジョブ情報、印刷ジョブを取得する。ジョブ制御部２０２は、印刷ジョブを受け付けると、デバイス制御部２０４にプリンタ１０７の状況を問い合わせる。プリンタ１０７が正常の場合には、ジョブ送信部２０３は、プリンタ１０７へ印刷ジョブを送信する。尚、本実施形態では、印刷ジョブはアプリケーションサーバ１０２で作成され、データベースシステム１０４に保存されることを想定している。その他の印刷ジョブの作成手段としては、例えば、データベースシステム１０４に保存されている文書データをプリントサーバ１０３が取得し、プリントサーバ１０３が有するプリンタドライバにより印刷ジョブを作成することも考えられる。
リクエスト管理部２０１が印刷設定情報の登録やログイン情報を受け付けると、プリンタ管理部２０５は、データベースアクセス部２０６を通してデータベースシステム１０４の情報を更新する。
リクエスト管理部２０１が印刷先要求を受け付けると、プリンタ管理部２０５は、ログイン情報と、ユーザごとに設定された印刷設定情報と、プリンタへのアクセスの履歴であるアクセス情報と、プリンタ情報とに基づいて、印刷先を決定する。印刷先を決定する方法の詳細は図８を用いて後述する。
【００１２】
図３は、情報処理装置のハードウェア構成の一例を示す図である。アプリケーションサーバ１０２、プリントサーバ１０３、データベースシステム１０４、クライアントＰＣ１０８は、この情報処理装置と同様、或いは同等の構成をとる。尚、本実施形態では、アプリケーションサーバ１０２、プリントサーバ１０３、及びデータベースシステム１０４を個別に設けた場合を例に挙げて示している。しかしながら、これらを１つの情報処理装置に纏めるようにしてもよい。
ＣＰＵ３０１は、情報処理装置の制御装置であり、ハードディスク（ＨＤ）３０７に格納されているコンピュータプログラム（例えば、アプリケーションプログラム、プリントドライバプログラム、ＯＳ、後述のフローチャートの印刷制御プログラム）を実行する。また、ＣＰＵ３０１は、ＲＡＭ３０３にプログラムの実行に必要な情報やファイル等を一時的に格納する制御を行う。また、ＣＰＵ３０１は、ディスプレイ３０６の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。本実施形態では、印刷設定情報や印刷指示は、クライアントＰＣ１０８のディスプレイ３０６に表示されるＷｅｂブラウザより行うものとする。ＲＯＭ３０２は、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用されるフォントデータ、テンプレート用データ等の各種データを記憶する。ＲＡＭ３０３は、ＣＰＵ３０１の主メモリやワークエリア等として機能する。インターフェース（ＮＩＣ）３０４は、外部装置とデータのやり取りを行うためのインターフェースである。キーボード３０５は、ユーザが情報処理装置に命令等の入力指示をするためのものである。ディスプレイ３０６は、キーボード３０５から入力されたコマンド等を表示するものである。ハードディスク（ＨＤ）３０７は、大容量メモリとして機能し、プログラム（アプリケーションプログラム、プリントドライバプログラム、ＯＳ等）を格納している。フレキシブルディスク（ＦＤ）３０７は可搬型の記憶媒体である。図３に示す各ブロックは、システムバス３０９を介して相互に接続されている。
【００１３】
図４は、プリンタ１０７のハードウェア構成の一例を示す図である。
ＣＰＵ４０１は、例えば、制御プログラム等に基づいてシステムバス４０９に接続される印刷部４０５（プリンタエンジン）に出力情報としての画像信号を出力する。ＲＯＭ４０２は、ＣＰＵ４０１の制御プログラム等を記憶する。また、ハードディスク（ＨＤ）４０７等の外部メモリがない場合、ＲＯＭ４０２は、ホストコンピュータで利用される情報等を記憶する。ＲＡＭ４０３は、ＣＰＵ４０１の主メモリ、ワークエリア等として機能する。尚、ＲＡＭ４０３は出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。インターフェース（ＮＩＣ）４０４は、外部装置とのデータのやり取りを行うためのインターフェースである。本実施形態では、ＣＰＵ４０１は、ユーザが操作する情報をインターフェース（ＮＩＣ）４０４を介してプリントサーバ１０３に通知する。印刷部４０５は、ＣＰＵ４０１より出力された画像信号の処理を行う。操作部４０６は、例えば、ユーザが、プリンタ１０７にログインしたり、印刷ジョブの閲覧やジョブ操作を行ったりするための入力を行うためのものである。ハードディスク（ＨＤ）４０７は、出力情報を生成される際に使用されるフォントデータや、ＣＰＵ４０１の制御情報等を格納する。外部インターフェース４０８には、ＩＣカードリーダ等が接続される。
【００１４】
図５は、図３に示したＲＡＭ３０３のメモリマップの一例を示す図である。具体的に図５（ａ）は、ＦＤ３０８から印刷制御プログラムがＲＡＭ３０３にロードされ実行可能となった状態のメモリマップの一例を示す図である。尚、既に印刷制御プログラムがインストールされているＨＤ３０７からＲＡＭ３０３に印刷制御プログラムをロードしてもよい。また、印刷制御プログラムを記憶する媒体は、ＣＤ-ＲＯＭ、ＣＤ-Ｒ、ＰＣカード、ＤＶＤ、ＩＣメモリカード等であってもよい。また、印刷制御プログラムをＲＯＭ３０２に記憶しておき、これをメモリマップの一部となすように構成し、ＣＰＵ４０１で印刷制御プログラムを直接実行してもよい。また、以上の各装置と同等の機能を実現するソフトウェアをもってハードウェア装置の代替として構成することもできる。
基本Ｉ/Ｏプログラム５０１は、情報処理装置の電源がオンされると、ＨＤ３０７からＯＳ５０２をＲＡＭ３０３に読み出して、ＯＳ５０２の動作を開始させるＩＰＬ（イニシャルプログラムローディング）機能等を有しているプログラムが入っている領域である。印刷制御プログラム５０３は、後述するフローチャートに示される処理を実行するプログラムであり、ＲＡＭ３０３に確保される領域に記憶される。また、関連データ５０４は、印刷制御プログラム５０３の実行のために必要なデータである。ワークエリア５０５は、ＣＰＵ３０１が印刷制御プログラム５０３を実行する領域である。
図５（ｂ）は、ＦＤ３０８のメモリマップの一例を示す図であり、ＦＤ３０８のデータ内容を示している。ＦＤ３０８のメモリマップには、データの情報量を示すボリューム情報５０６の他、ディレクトリ情報５０７、印刷制御プログラム５０８、関連データ５０９がある。印刷制御プログラム５０８は、後述するフローチャートに示される処理を実行するプログラムである。
【００１５】
図６は、プリンタ管理部２０５が管理する情報の一例を示す図である。具体的に図６（ａ）は、ユーザ情報、印刷設定情報、及びアクセス情報の一例を示し、図６（ｂ）は、プリンタ情報の一例を示す。プリンタ管理部２０５は、リクエスト管理部２０１が受け付けた印刷設定情報やログイン情報を、データベースアクセス部２０６を介してデータベースシステム１０４に登録する。また、プリンタ管理部２０５が管理するプリンタ１０７の情報もデータベースシステム１０４に登録されている。
ユーザ情報６００には、リクエストを行ったユーザ名６０３が登録されている。プリンタ管理部２０５は、このユーザ名６０３を利用して、リクエスト管理部２０１から受け取った情報がどのユーザの情報かを特定する。このユーザ情報６００毎（ユーザ毎）に、印刷設定情報６０１及びアクセス情報６０２が相互に関連付けられてデータベースシステム１０４に保持されている。
印刷設定情報６０１は、ユーザがクライアントＰＣ１０８に表示されるＷｅｂブラウザを介して登録する情報であり、印刷設定６０４と使用場所６０５とを含む。印刷設定６０４は、ユーザが使用する印刷設定の組み合わせであり、使用場所６０５毎に複数の設定を登録することが可能である。例えば、両面印刷とカラー印刷の設定が登録された場合、ユーザは印刷の度に設定する必要がなくなり操作性が向上する。設定可能な属性としては、片面/両面印刷、カラー/モノクロ印刷、ＮＵＰ印刷、製本印刷等がある。使用場所６０５は、印刷設定６０４を利用する場所を示す情報である。
【００１６】
アクセス情報６０２は、ユーザが使用したプリンタ１０７の使用履歴に関する情報であり、プリンタ管理部２０５によって更新される。また、プリンタ管理部２０５は、アクセス情報６０２を利用して、ユーザが登録した印刷設定情報６０１に対する出力先のプリンタを決定する。出力先のプリンタを決定する方法の詳細は図８を用いて後述する。
プリンタ名６０６は、プリンタ管理部２０５が管理するプリンタ１０７の一意の名称である。プリンタ管理部２０５は、プリンタ名６０６を利用してプリンタ１０７を特定する。尚、プリンタ名はプリンタを特定するための識別情報として使用される。最終アクセス日時６０７は、プリンタ名６０６のプリンタ１０７にユーザがアクセスした日時であり、プリンタ管理部２０５により更新される。ここでいうアクセスとは、ユーザが、プリンタ１０７の操作部４０６を介してプリンタ１０７にログインしたり、カードリーダのような外部インターフェース４０８を使用したりしたことを指す。アクセス回数６０８は、ユーザが、プリンタ名６０６のプリンタ１０７にログイン等をした回数を示し、プリンタ管理部２０５により更新される。
【００１７】
プリンタ情報６０９は、プリンタ管理部２０５が管理しているプリンタ１０７に関する情報である。プリンタ情報６０９は、設置場所６１０、プリンタ名６１１、印刷能力６１２、及びステータス６１３を含む。
設置場所６１０は、プリンタ１０７が物理的に存在する場所を示す情報である。プリンタ名６１１は、プリンタ１０７を特定するための情報である。プリンタ管理部２０５は、プリンタ名６１１から、アクセス情報６０２のプリンタ名６０６等を特定し、最終アクセス日時６０７やアクセス回数６０８の情報を取得する。印刷能力６１２は、プリンタ１０７の能力を示す情報である。ステータス６１３は、プリンタ１０７の状態を示し、デバイス制御部２０４によって更新される。
【００１８】
図７は、ログイン情報とリクエスト情報の一例を示す図である。具体的に図７（ａ）は、プリンタ１０７等から受け取るログイン情報７００の一例を示す図である。プリンタ１０７は、ユーザがプリンタ１０７の操作部４０６や外部インターフェース４０８を使用してプリンタ１０７にログインした場合に、インターフェース４０４を介してプリントサーバ１０３へログイン情報７００を通知する。前述した、Ｗｅｂブラウザ上のリモートユーザインターフェースへのログイン時にもＷｅｂブラウザを介してプリントサーバ１０３にログイン情報７００が通知される。
プリンタ名７０１は、プリンタ１０７の名称である。ユーザ名７０２は、プリンタ１０７にログインしたユーザの名称である。プリンタ管理部２０５は、リクエスト管理部２０１からプリンタ名７０１、ユーザ名７０２を受け取ると、データベースシステム１０４から、プリンタ名７０１、ユーザ名７０２に対応する情報を取得する。
図７（ｂ）は、リクエスト管理部２０１が、クライアントＰＣ１０８から受け付けるリクエスト情報７０６の一例を示す図である。ユーザのキーボード３０５等の操作に応じて、クライアントＰＣ１０８からプリントサーバ１０３へリクエスト情報７０６が通知される。
リクエストＩＤ７０３は、ユーザの操作に対応したＩＤである。具体的に、印刷指示、印刷先要求、印刷設定情報の登録等のリクエストには、それぞれ一意のリクエストＩＤ７０３が割り当てられている。リクエストＩＤ７０３は、クライアントＰＣ１０８からプリントサーバ１０３に発行される。ユーザ名７０４は、リクエストを指示したユーザの名称である。場所情報７０５は、ユーザによってリクエストが発行される時に指定される情報であり、ユーザの操作するクライアントＰＣ１０８の設置場所を示す。プリンタ管理部２０５は、リクエスト情報７０６の場所情報７０５と、プリンタ情報６０９の設置場所６１０とを比較する。そして、プリンタ管理部２０５は、場所情報７０５に合致する設置場所６１０を選択し、選択した設置場所６１０に対応する印刷能力６１２やステータス６１３の情報を得る。
【００１９】
次に、プリントサーバ１０３のプリンタ管理処理を図８〜図１１のフローチャートを用いて説明する。尚、これらのフローチャートに係るプリントサーバ１０３のプログラムは、例えば、コンピュータのＨＤ３０７に記憶されており、ＲＡＭ３０３に読み出されＣＰＵ３０１によって実行される。
図８は、リクエスト管理部２０１が、クライアントＰＣ１０８からリクエスト情報７０６を受信した場合のプリンタ管理処理の一例を説明するフローチャートである。
まず、ステップＳ８０１において、リクエスト管理部２０１は、クライアントＰＣ１０８のＷｅｂブラウザ等から、印刷要求、印刷設定情報の登録、印刷先要求、ログイン情報等のリクエスト情報７０６を受け付ける。このように本実施形態では、例えば、ステップＳ８０１の処理により、受け付け手段の一例が実現される。
次に、ステップＳ８０２において、リクエスト管理部２０１は、ステップＳ８０１で受け付けたリクエスト情報７０６に含まれているリクエストＩＤ７０３が、印刷先要求に割り当てられたＩＤであるか否かを判断する。この判断の結果、リクエストＩＤ７０３が、印刷先要求に割り当てられたＩＤであると判断された場合、プリンタ管理部２０５は、リクエスト情報７０６から、ユーザ名７０４と場所情報７０５を取得する。
【００２０】
次に、ステップＳ８０４において、プリンタ管理部２０５は、データベースシステム１０４からステップＳ８０３で取得したユーザ名７０４に合致するユーザ名６０３を特定する。そして、プリンタ管理部２０５は、特定したユーザ名６０３に関連付けられた印刷設定情報６０１とアクセス情報６０２を取得する。このように本実施形態では、例えば、ステップＳ８０４の処理により、取得手段の一例が実現される。
次に、ステップＳ８０５において、プリンタ管理部２０５は、ステップＳ８０４で取得したアクセス情報６０２内のプリンタ名６０６の設置場所６１０を、プリンタ情報６０９から取得する。そして、プリンタ管理部２０５は、取得した設置場所６１０の中に、ステップＳ８０３で取得した場所情報７０５に合致するものがあるか否かを判断する。ステップＳ８０５の処理を行うことで、ユーザが、クライアントＰＣの設置場所に配置されているプリンタを過去に使ったことがあるか否かが特定される。この判断の結果、取得した設置場所６１０の中に、場所情報７０５に合致するものがあった場合にはステップＳ８０６に進み、合致するものがなかった場合にはステップＳ８０７に進む。例えば、場所情報７０５が拠点Ｂ居室Ｃである場合、アクセス情報６０２に記載されているＭＦＰ１００の設置場所が拠点Ｂ居室Ｃであるため、合致するプリンタがあると判断される。尚、拠点Ｂ居室ＣにはＭＦＰ０９９も設置されているが、ＭＦＰ０９９はアクセス情報６０２に含まれないため、ＭＦＰ０９９は対象外となる。
【００２１】
ステップＳ８０６に進むと、プリンタ管理部２０５は、ステップＳ８０５で合致した設置場所６１０に配置されているプリンタの印刷能力６１２と、ユーザによって設定された印刷設定情報６０１に含まれる印刷設定６０４とを比較する。ここで、ステップＳ８０５で合致した設置場所６１０に複数のプリンタがある場合、プリンタ管理部２０５は、次の処理を行う。すなわち、プリンタ管理部２０５は、最終アクセス日時６０７の新しいプリンタを優先して選択し、選択したプリンタの印刷能力６１２と印刷設定６０４とを比較する。これにより最近使用したプリンタがユーザに勧められるため、ユーザはプリンタの場所を容易に特定できる。そして、ステップＳ８０８に進む。一方、ステップＳ８０７に進むと、プリンタ管理部２０５は、ステップＳ８０３で取得した場所情報７０５と、ユーザによって設定された印刷設定情報６０１に含まれる印刷設定６０４とに合致するプリンタをプリンタ情報６０９から検索する。そして、ステップＳ８０８に進む。例えば、場所情報７０５が拠点Ａ居室Ｚである場合、拠点Ａ居室ＺにはＳＦＰ０９８が設置されているが、ＳＦＰ０９８はアクセス情報６０２に含まれない。そのため、Ｓ８０５においてプリンタ管理部は、Ｎｏと判断する。その後、ステップＳ８０７において拠点Ａ居室Ｚには過去にアクセスされていないがＳＦＰ０９８がある。ここで、印刷設定情報に「拠点Ａ居室Ｚ：モノクロ  片面」が含まれている場合、プリンタ管理部２０５は、ステップＳ８０７においてＳＦＰ０９８を特定する。
ステップＳ８０８に進むと、プリンタ管理部２０５は、該当するプリンタがあるか否かを判断する。尚、ステップＳ８０６からステップＳ８０８に進み、プリンタ管理部２０５は、印刷設定６０４を満足する印刷能力６１２がある場合に、該当するプリンタがあると判断する。この判断の結果、該当するプリンタがある場合にはステップＳ８０９に進み、プリンタ管理部２０５は、そのプリンタを印刷可能なプリンタと判断し、ユーザの印刷設定６０４の出力先（印刷の実行先）として決定する。以上のように本実施形態では、例えば、ステップＳ８０５の処理を行うことにより特定手段の一例が実現され、ステップＳ８０６、Ｓ８０８、Ｓ８０９の処理を行うことにより決定手段の一例が実現される。
【００２２】
次に、ステップＳ８１１において、リクエスト管理部２０１は、ステップＳ８０９で決定した出力先を、ステップＳ８０１で受け付けたリクエスト情報７０６の送信元であるクライアントＰＣ１０８へ通知する。一方、ステップＳ８０８において、該当するプリンタがない場合には、ステップＳ８１０に進む。ステップＳ８１０に進むと、リクエスト管理部２０１は、印刷可能なプリンタがない旨の警告内容を、ステップＳ８０１で受け付けたリクエスト情報７０６の送信元であるクライアントＰＣ１０８へ通知する。
このように、印刷を実行するユーザの場所情報７０５と、以前に使用したプリンタの履歴（アクセス情報６０２）とを用いて、印刷設定６０４に合致する印刷先を自動的に決定する。これにより、ユーザが印刷物の出力場所が変化しても、通常通りの印刷を行うことができる。また、アクセス情報に基づいて出力先が決められるため、ユーザが全く知らない出力先にて印刷される可能性を低減できる。
【００２３】
図９は、リクエスト管理部２０１が、プリンタ１０７からログイン情報７００を受信した場合のプリンタ管理処理の一例を説明するフローチャートである。
まず、ステップＳ９０１において、リクエスト管理部２０１は、プリンタ１０７から、ユーザがプリンタ１０７にログインした際に得られるログイン情報７００を受け付ける。前述したように、プリンタ１０７は、ユーザが操作部４０６や外部インターフェース４０８を使用してプリンタ１０７にログインした場合に、インターフェース４０４を介してプリントサーバ１０３へログイン情報７００の通知を行う。このように本実施形態では、例えば、ステップＳ９０１の処理により、受け付け手段の一例が実現される。
次に、ステップＳ９０２において、プリンタ管理部２０５は、ログイン情報７００のユーザ名７０２を用いてデータベースシステム１０４にユーザ情報６００が存在するか否かを判断する。この判断の結果、ログイン情報７００のユーザ名７０２に対応するユーザ情報６００がある場合にはステップＳ９０３に進む。一方、ログイン情報７００のユーザ名７０２に対応するユーザ情報６００がない場合には図９のフローチャートによる処理を終了する。
【００２４】
ステップＳ９０３に進むと、プリンタ管理部２０５は、ログイン情報７００のユーザ名７０２に対応するユーザ情報６００に関連付けられた印刷設定情報６０１及びアクセス情報６０２を取得する。このように本実施形態では、例えば、ステップＳ９０３の処理により、取得手段の一例が実現される。次に、ステップＳ９０４において、プリンタ管理部２０５は、ログイン情報７００のプリンタ名７０１に対応するプリンタ情報６０９をデータベースシステム１０４から取得する。次に、ステップＳ９０５において、プリンタ管理部２０５は、次の処理を行う。すなわち、プリンタ管理部２０５は、ステップＳ９０３で取得した印刷設定情報６０１の使用場所６０５と、ステップＳ９０４で取得したプリンタ情報６０９の設置場所６１０とを比較する。そして、プリンタ管理部２０５は、プリンタ情報６０９の設置場所６１０と同じ設置場所が設定されている印刷設定情報を特定する。その後、プリンタ情報６０９の印刷能力と特定された印刷設定情報とが比較される。次に、ステップＳ９０６において、プリンタ管理部２０５は、ステップＳ９０５の比較の結果、ログイン情報を送信したプリンタの印刷能力が、印刷設定６０４を満足するか否かを判断する。この判断の結果、印刷設定６０４を満足する印刷能力６１２を有するプリンタがあり、印刷可能と判断した場合には、ステップＳ９１２へ進む。一方、ログイン情報を送信したプリンタが印刷設定６０４を満足しない場合、ステップＳ９０７へ進む。
【００２５】
ステップＳ９１２に進むと、プリンタ管理部２０５は、ログイン情報を送信したプリンタを印刷設定６０４の出力先として設定する。そして、後述するステップＳ９１３に進む。
一方、ステップＳ９０７に進むと、プリンタ管理部２０５は、ステップＳ９０４で取得したプリンタ情報６０９の設置場所６１０と同じ設置場所の他のプリンタをプリンタ情報６０９より検索する。この検索の結果、プリンタ情報６０９の設置場所６１０と同じ設置場所に他のプリンタがある場合にはステップＳ９０８に進み、ない場合には後述するステップＳ９１４に進む。ステップＳ９０８に進むと、プリンタ管理部２０５は、ステップＳ９０７で見つかったプリンタのプリンタ名６１１がアクセス情報６０２のプリンタ名６０６にあるか否かを検索する。この検索の結果、ステップＳ９０７で見つかったプリンタのプリンタ名６１１がアクセス情報６０２のプリンタ名６０６にある場合にはステップＳ９０９に進み、ない場合にはステップＳ９１０に進む。尚、ステップＳ９０９〜Ｓ９１１、Ｓ９１４は、図８のステップＳ８０６〜Ｓ８０８、Ｓ８１０と同じ処理が実行されるため、詳細な説明は省略する。
ステップＳ９１１の判断の結果、該当するプリンタがある場合には、ステップＳ９１２に進み、プリンタ管理部２０５は、印刷設定６０４の出力先として、該当するプリンタを設定する。そして、後述するステップＳ９１３に進む。以上のように本実施形態では、例えば、ステップＳ９０４、Ｓ９０７の処理により、特定手段の一例が実現され、ステップＳ９０７〜Ｓ９０９、Ｓ９１１、Ｓ９１２の処理により決定手段の一例が実現される。
ステップＳ９１３に進むと、プリンタ管理部２０５は、ログインしたユーザに対応する印刷設定６０４に対応する出力先が未決定のものがあるか否かを判断する。この判断の結果、出力先が未決定の印刷設定６０４がある場合にはステップＳ９０５に戻る。一方、出力先が未決定の印刷設定６０４がない場合には、ステップＳ９１５に進み、プリンタ管理部２０５は、ログイン情報７００内のユーザ名７０４に対応するアクセス情報６０２の最終アクセス日時６０７及びアクセス回数６０８を更新する。
このように、ユーザがプリンタ１０７にログインしている場合は、そのプリンタ１０７を、印刷設定情報の印刷先に決定することにより、ユーザの意図する印刷結果をユーザの意図する出力先で得ることができる。
【００２６】
図１０は、プリンタ管理部２０５が管理しているプリンタ１０７でエラーが発生している場合のプリンタ管理処理の一例を説明するフローチャートである。尚、前述したように、プリンタ１０７でエラーが発生した場合、デバイス制御部２０４がプリンタ情報６０９のステータス６１３を更新する。
まず、ステップＳ１００１において、図８の説明で述べたように、リクエスト管理部２０１は、クライアントＰＣ１０８よりリクエスト情報７０６を受け付ける。このように、本実施形態では、例えば、ステップＳ１００１の処理により、受け付け手段の一例が実現される。次に、ステップＳ１００２において、リクエスト管理部２０１は、ステップＳ１００１で受け付けたリクエスト情報７０６に含まれているリクエストＩＤ７０３が、印刷先要求に割り当てられたＩＤであるか否かを判断する。
この判断の結果、リクエストＩＤ７０３が、印刷先要求に割り当てられたＩＤであると判断された場合にはステップＳ１００３に進む。一方、リクエストＩＤ７０３が、印刷先要求に割り当てられたＩＤでない場合には、図１０に示すフローチャートによる処理を終了する。ステップＳ１００３において、プリンタ管理部２０５は、印刷先決定処理を行う。印刷先決定処理は、図８で説明したステップＳ８０３〜Ｓ８１１の処理と同等であるので、ここでは、その詳細な説明を省略する。そして、ステップＳ１００４において、プリンタ管理部２０５は、ステップＳ１００３の印刷先決定処理で決定されたプリンタのステータス６１３を取得する。そして、プリンタ管理部２０５は、取得したステータス６１３に基づいて、出力先として決定したプリンタにエラーが発生しているか否かを判断する。この判断の結果、出力先として決定したプリンタにエラーが発生している場合にはステップＳ１００５へ進み、エラーが発生していない場合には図１０のフローチャートによる処理を終了する。このように、本実施形態では、例えば、ステップＳ１００４の処理により、判定手段の一例が実現される。
【００２７】
ステップＳ１００５に進むと、プリンタ管理部２０５は、アクセス情報６０２の最終アクセス日時６０７を取得し、所定の期間内にアクセスのあったプリンタを全て選択する。ここで、所定の期間の指定は、ユーザが印刷先要求時に指定してもよいし、プリントサーバ１０３に前もって設定されてもよい。このように、本実施形態では、例えば、ステップＳ１００５の処理により、第２の取得手段の一例が実現される。次に、ステップＳ１００６において、リクエスト管理部２０１は、クライアントＰＣ１０８に対し、ステップＳ１００５で選択されたプリンタのリスト（全てのプリンタ）を通知する。このように、本実施形態では、例えば、ステップＳ１００５の処理により、報知手段の一例が実現される。
そして、プリンタのリスト（全てのプリンタ）を通知した後、プリンタ管理部２０５は、そのリストの中からユーザにより選択されたプリンタの情報を取得し、そのプリンタを新たな出力先として決定する。
このように、プリンタでエラーが発生した場合は、以前にアクセスしたプリンタのリストをユーザに通知することにより、ユーザは既知のプリンタの中から印刷先の変更を容易に行うことができる。
【００２８】
図１１は、印刷が完了した場合のプリンタ管理処理の一例を説明するフローチャートである。
まず、ステップＳ１１０１において、プリンタ管理部２０５は、ジョブ制御部２０２から印刷が完了した通知を受け取ると、印刷が完了したプリンタのプリンタ名に対応するアクセス回数６０８を取得する。次に、ステップＳ１１０２において、プリンタ管理部２０５は、ステップＳ１１０１で取得したアクセス回数６０８よりも回数の多いプリンタがアクセス情報６０２内に存在するか否かを判断する。この判断の結果、ステップＳ１１０１で取得したアクセス回数６０８よりも回数の多いプリンタが存在する場合にはステップＳ１１０３に進み、存在しない場合には図１１のフローチャートによる処理を終了する。このように、本実施形態では、例えば、ステップＳ１１０１、Ｓ１１０２の処理により、第３の取得手段の一例が実現される。
ステップＳ１１０３に進むと、リクエスト管理部２０１は、ユーザに対し、アクセス回数の多いプリンタが存在する旨を通知し、印刷先の決定をアクセス回数に従って行うかどうかを通知する。図１２は、印刷先の決定をアクセス回数に従って行うかどうかを通知するメッセージの一例を示す図である。次に、ステップＳ１１０４において、リクエスト管理部２０１は、印刷先の決定に係るユーザの選択を受信し、受信した情報に基づいて、アクセス回数に従って印刷先を決定するか否かを判断する。この判断の結果、アクセス回数に従って印刷先を決定する場合にはステップＳ１１０５に進み、決定しない場合には図１１のフローチャートによる処理を終了する。ステップＳ１１０５に進むと、プリンタ管理部２０５は、該当する印刷設定６０４の出力先を、印刷が完了したプリンタから、アクセス回数６０８の多いプリンタに変更する。このように、本実施形態では、例えば、ステップＳ１００５の処理により、変更手段の一例が実現される。
このように、印刷終了後、アクセス回数の多いプリンタを印刷先に決定するか否かをユーザに選択させる。このようにすることにより、ユーザが一時的に他のプリンタで印刷を行った場合に、印刷先のプリンタを通常使用するプリンタに再設定する手間を省くことができる。尚、ここでは、アクセス回数の多いプリンタを印刷先に決定するか否かをユーザに選択させるようにしたが、アクセス回数の多いプリンタを印刷先として強制的（自動的）に決定するようにしてもよい。
【００２９】
図１３は、ユーザが操作するＷｅｂブラウザ上のユーザインターフェースの一例を示す図である。ユーザは、図１３に示すユーザインターフェース１３００、１３０８、１３０９を操作することにより、プリントサーバ１０３へ印刷設定情報の登録や、印刷先要求のリクエスト情報７０６を発行するための操作を行う。
図１３（ａ）において、ボタン１３０１は、印刷設定情報の登録を行うためのものであり、ユーザがボタン１３０１を押下することにより、図１３（ｂ）に示す印刷設定ウインドウ１３０８が開く。印刷設定ウインドウ１３０８でユーザが選択した印刷設定がプリントサーバ１０３へ通知され、印刷設定６０４として登録される。ボタン１３０２は、印刷先要求を行うためのものであり、ユーザがボタン１３０２を押下することにより、リクエスト情報７０６がプリントサーバ１０３へ通知され、前述したプリンタ管理処理によって、印刷設定に対応する出力先が決定される。領域１３０３には、ユーザが操作するクライアントＰＣ１０８の設置場所を示す場所情報７０５が表示されている。この場所情報７０５は、印刷先要求時にリクエスト情報７０６の場所情報７０５としてプリントサーバ１０３へ通知される。ボタン１３０４は、場所情報７０５を変更するためのものであり、ユーザがボタン１３０４を押下することにより、図１３（ｃ）に示す場所変更設定ウインドウ１３０９が開く。場所変更設定ウインドウ１３０９でユーザが選択した場所情報に、場所情報７０５が更新される。領域１３０５には、プリントサーバ１０３に登録されている印刷設定６０４が表示される。領域１３０６には、前述したプリンタ管理処理によって決定された出力先が印刷設定毎に表示される。領域１３０７には、アクセス情報６０２の最終アクセス日時６０７が表示される。
【００３０】
以上のように本実施形態では、クライアントＰＣ１０８からの印刷要求の場合には、次のようにして印刷先を決定する。すなわち、要求元のユーザがアクセスしたことがあり、且つ、当該ユーザが印刷要求時に指定した場所と同じ場所にあるプリンタ１０７のうち、当該ユーザに対応する印刷設定で印刷できるプリンタ１０７を印刷先として決定する。このとき、ユーザがアクセスした回数が多いプリンタ１０７が優先的に印刷先となるようにする。また、プリンタ１０７からの印刷要求の場合には、次のようにして印刷先を決定する。すなわち、まず、そのプリンタ１０７で、要求元のユーザに対応する印刷設定による印刷ができる場合には、そのプリンタ１０７を印刷先とする。一方、そのプリンタ１０７で、要求元のユーザが登録した印刷設定による印刷ができない場合には、次のようにして印刷先を決定する。すなわち、要求元のユーザがアクセスしたことがあり、且つ、当該ユーザが印刷設定に対して指定した場所と同じ場所にあるプリンタ１０７のうち、当該ユーザに対する印刷設定で印刷できるプリンタ１０７を印刷先として決定する。このときも、ユーザがアクセスした回数が多いプリンタ１０７が優先的に印刷先となるようにする。したがって、ユーザの印刷環境が変化しても、ユーザの印刷環境を容易に設定でき、意図する印刷結果を意図する出力先で得ることができる。
また、本実施形態では、印刷先として決定したプリンタ１０７のステータス（状態）がエラーであり、印刷することができない場合には、所定期間内にユーザがアクセスしたプリンタ１０７のリストをユーザに報知し、出力先の再選択を促すようにした。したがって、ユーザが、エラーのあったプリンタ１０７に何度も行かなければならない事態を低減することができる。
また、本実施形態では、ユーザが設定した印刷設定に基づく印刷が終了した後、その印刷設定に対応する出力先を、その印刷を行ったプリンタ１０７よりもアクセス回数が多いプリンタ１０７に変更するかどうかをユーザに選択させるようにした。したがって、ユーザによる出力先の再設定の負担を軽減することができる。
【００３１】
（その他の実施例）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
また、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図１】
0005460200.tif 000002
【図２】
0005460200.tif 000003
【図３】
0005460200.tif 000004
【図４】
0005460200.tif 000005
【図５】
0005460200.tif 000006
【図６】
0005460200.tif 000007
【図７】
0005460200.tif 000008
【図８】
0005460200.tif 000009
【図９】
0005460200.tif 000010
【図１０】
0005460200.tif 000011
【図１１】
0005460200.tif 000012
【図１２】
0005460200.tif 000013
【図１３】
0005460200.tif 000014