(57)【特許請求の範囲】
【請求項１】
１又は複数の情報処理装置と印刷装置がネットワークに接続された印刷システムであって、
前記情報処理装置は、
ユーザの印刷操作に応じて、前記情報処理装置のプリントモジュールの機能として印刷用のデータを生成してスプールするスプール手段と、
自身のＩＰアドレスから前記情報処理装置を特定する特定情報を生成する生成手段と、前記生成手段により生成された特定情報をユーザに提示する提示手段と、
前記印刷装置からの要求に応じて、前記スプール手段にスプールした前記データを用いて生成される印刷データを前記印刷装置に送信する送信手段と、
を有し、
前記印刷装置は、
前記特定情報を入力するための入力手段と、
前記入力手段から入力された前記特定情報をＩＰアドレスに変換する変換手段と、
前記変換手段により変換されたＩＰアドレスが示す情報処理装置に対して印刷データの送信を要求する要求手段と、
前記要求手段による要求に応じて前記情報処理装置から送信された印刷データを受信して印刷する印刷手段と、
を有することを特徴とする印刷システム。
【請求項２】
前記スプール手段は、印刷用のデータとして、ＥＭＦ（Enhanced Metafile）形式のデータをスプールし、
前記送信手段により送信される印刷データは、前記プリントモジュールが前記印刷装置からの要求に応じてインストールの制御を行った前記印刷装置に対応するプリンタドライバが生成した、当該印刷装置用の印刷データであることを特徴とする請求項１に記載の印刷システム。
【請求項３】
印刷装置とネットワークを介して通信可能な情報処理装置であって、
ユーザの印刷操作に応じて、前記情報処理装置のプリントモジュールの機能として印刷用のデータを生成してスプールするスプール手段と、
自身のＩＰアドレスから前記情報処理装置を特定する特定情報を生成する生成手段と、
前記生成手段により生成された特定情報をユーザに提示する提示手段と、
前記印刷装置からの前記印刷装置への前記特定情報の入力に従い発行される要求に応じて、前記スプール手段にスプールした前記データを用いて生成される印刷データを前記印刷装置に送信する送信手段と、を有することを特徴とする情報処理装置。
【請求項４】
前記スプール手段は、印刷用のデータとして、印刷装置のモデルに依存しない形式のデータをスプールし、
前記送信手段により送信される印刷データは、前記プリントモジュールが前記印刷装置からの要求に応じてインストールの制御を行った前記印刷装置に対応するプリンタドライバが生成した、当該印刷装置用の印刷データであることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記スプール手段にスプールしたデータの印刷を完了させるために、前記印刷装置と通信可能な状態に前記情報処理装置を維持すべき旨の警告をユーザに行う警告手段を有することを特徴とする請求項３又は４に記載の情報処理装置。
【請求項６】
前記送信手段は、前記印刷装置からの要求に応じて前記スプール手段がスプールした前記データの一覧を前記印刷装置に送信し、前記印刷装置にて前記一覧から選択されたデータを用いて生成された印刷データを前記印刷装置に送信することを特徴とする請求項３乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記生成手段は、前記ＩＰアドレスの一部の情報から前記特定情報を生成することを特徴とする請求項３乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記情報処理装置と前記印刷装置の前記ネットワーク上での関係を設定する設定手段を有し、
前記生成手段は、前記設定手段で設定された関係に基づく前記ＩＰアドレスの一部の情報から前記特定情報を生成することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記生成手段は、前記ＩＰアドレスのサブネットアドレス部分を前記ＩＰアドレスから除いた部分から前記特定情報を生成することを特徴とする請求項７又は８に記載の情報処理装置。
【請求項１０】
前記生成手段は、前記ＩＰアドレスの属するアドレスクラスの標準のサブネットマスク部分を前記ＩＰアドレスから除いた部分から前記特定情報を生成することを特徴とする請求項７又は８に記載の情報処理装置。
【請求項１１】
前記生成手段は、前記ＩＰアドレスの特定の数の上位ビットを除いた部分から前記特定情報を生成することを特徴とする請求項７又は８に記載の情報処理装置。
【請求項１２】
１又は複数の情報処理装置と印刷装置がネットワークに接続された印刷システムにおける印刷方法であって、
前記情報処理装置が、
ユーザの印刷操作に応じて、前記情報処理装置のプリントモジュールの機能として印刷用のデータを生成してスプールするスプールステップと、
自身のＩＰアドレスから前記情報処理装置を特定する特定情報を生成する生成ステップと、
前記生成ステップにより生成された特定情報をユーザに提示する提示ステップと、
前記印刷装置からの要求に応じて、前記スプールステップでスプールした前記データを用いて生成される印刷データを前記印刷装置に送信する送信ステップと、
を実行し、
前記印刷装置が、
前記特定情報を入力するための入力ステップと、
前記入力ステップで入力された前記特定情報をＩＰアドレスに変換する変換ステップと、
前記変換ステップで変換されたＩＰアドレスが示す情報処理装置に対して印刷データの送信を要求する要求ステップと、
前記要求ステップでの要求に応じて前記情報処理装置から送信された印刷データを受信して印刷する印刷ステップと、
を実行することを特徴とする印刷方法。
【請求項１３】
印刷装置とネットワークを介して通信可能な情報処理装置で実行される印刷方法であって、
ユーザの印刷操作に応じて、前記情報処理装置のプリントモジュールの機能として印刷用のデータを生成してスプールするスプールステップと、
自身のＩＰアドレスから前記情報処理装置を特定する特定情報を生成する生成ステップと、
前記生成ステップで生成された特定情報をユーザに提示する提示ステップと、
前記印刷装置からの前記印刷装置への前記特定情報の入力に従い発行される要求に応じて、前記スプールステップでスプールした前記データを用いて生成される印刷データを前記印刷装置に送信する送信ステップと、
を有することを特徴とする印刷方法。
【請求項１４】
コンピュータを、請求項３乃至１１のいずれか１項に記載された手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバレスプルプリントシステムに関する。
【背景技術】
【０００２】
従来、ユーザが印刷装置からサーバ上に一時蓄積された印刷データに対して印刷要求を行うことで当該印刷装置から印刷データの出力を可能にする所謂「プルプリント」の印刷システムが提案されている（特許文献１参照）。これにより、ユーザはアプリケーションからの印刷時に特定の印刷装置への出力ではなく、所望の印刷装置からの印刷データ出力を可能としている。
【０００３】
また、サーバレスのプルプリントシステムも提案されている（特許文献２参照）。サーバレスのプルプリントシステムでは、印刷データをサーバ上に一時蓄積する代わりに、印刷を行ったクライアントＰＣ上に一時蓄積する。所望の印刷装置からクライアントＰＣに対して印刷要求を行うことで印刷データの出力が可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特登録４０３３８５７号公報
【特許文献２】特開２００６−３１８２４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
サーバレスプルプリントシステムにおいては、印刷装置とクライアントＰＣを接続するために、印刷装置からクライアントＰＣを特定する必要があるが、一般的にはクライアントＰＣは複数台あるため困難である。
【０００６】
特許文献２のシステムでは、アプリケーションからの印刷時にクライアントＰＣから存在する全ての印刷装置に対してネットワーク接続を行っている。その後、ユーザが印刷装置で認証した時に、クライアントＰＣがその印刷装置以外の印刷装置との接続を解除する。しかし、この方法では、全ての印刷装置に対して接続を行う必要があることからネットワークや印刷装置に負荷がかかってしまうという課題がある。また、接続要求のためにブロードキャストを使用するため、サブネットを超えて接続できないという課題がある。
【０００７】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、サーバレスのプルプリントシステムにおいて、必要のない印刷装置とクライアントＰＣとの通信を行うことなく、所望の印刷装置とクライアントＰＣを接続してプルプリントを行うことができる仕組みを提供することである。
【課題を解決するための手段】
【０００８】
本発明は、１又は複数の情報処理装置と印刷装置がネットワークに接続された印刷システムであって、前記情報処理装置は、ユーザの印刷操作に応じて、前記情報処理装置のプリントモジュールの機能として印刷用のデータを生成してスプールするスプール手段と、自身のＩＰアドレスから前記情報処理装置を特定する特定情報を生成する生成手段と、前記生成手段により生成された特定情報をユーザに提示する提示手段と、前記印刷装置からの要求に応じて、前記スプール手段にスプールした前記データを用いて生成される印刷データを前記印刷装置に送信する送信手段と、を有し、前記印刷装置は、前記特定情報を入力するための入力手段と、前記入力手段から入力された前記特定情報をＩＰアドレスに変換する変換手段と、前記変換手段により変換されたＩＰアドレスが示す情報処理装置に対して印刷データの送信を要求する要求手段と、前記要求手段による要求に応じて前記情報処理装置から送信された印刷データを受信して印刷する印刷手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、サーバレスのプルプリントシステムにおいて、必要のない印刷装置と情報処理装置との通信を行うことなく、所望の印刷装置と情報処理装置を接続してプルプリントを行うことが可能となる。また、サブネットを超えた接続も可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の情報処理装置および印刷装置を適用可能なプリントシステム（印刷システム）の構成の一例を示すシステム構成図である。
【図２】図１に示したクライアントＰＣ１００に適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【図３】図１に示した複合機３００のコントローラユニットのハードウェア構成の一例を示すブロック図である。
【図４】印刷実行時のクライアントＰＣ１００の処理の一例を示すフローチャートである。
【図５】図４のＳ４０６のタイミングでモニタ２１０上に表示されるダイアログの一例を示す図である。
【図６】印刷出力時の複合機３００の処理の一例を示すフローチャートである。
【図７】図６のＳ６０３で複合機３００の操作部３０８に表示されるＰＩＮコード入力画面の一例を示す図である。
【図８】図６のＳ６０８で複合機３００の操作部３０８の表示部に表示されるジョブリスト表示画面の一例を示す図である。
【図９】図７の「ＰＣ一覧から選択する」ボタン７０３が指示された場合に複合機３００の操作部３０８に表示されるコンピュータ選択画面の一例を示す図である。
【図１０】図６のＳ６１１で複合機３００の操作部３０８の表示部に表示されるエラー画面の一例を示す図である。
【図１１】クライアントＰＣ１００におけるＰＩＮコード設定のＵＩの一例を示す図である。
【図１２】複合機３００におけるＰＩＮコード設定のＵＩの一例を示す図である。
【図１３】本実施例におけるクライアントＰＣ１００と複合機３００の関係を示す３種類のネットワーク環境を説明する図である。
【図１４】本実施例におけるクライアントＰＣ１００のＩＰアドレスである「１６３．２４．１８．１２５」を二進数で表した図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１２】
図１は、本発明の情報処理装置および印刷装置を適用可能なプリントシステム（印刷システム）の構成の一例を示すシステム構成図である。
図１に示すように、本実施例のプリントシステム１００００は、１つ以上のクライアントＰＣ１００（例えば、ユーザ毎）と１つ以上の複合機３００（例えば、部屋毎）がＬＡＮ７００を介して接続される構成となっている。
【００１３】
なお、ＰＣはパーソナルコンピュータを示す。また、ＬＡＮはローカルエリアネットワークを示す。
図２は、図１に示したクライアントＰＣ１００に適用可能な情報処理装置のハードウェア構成を示すブロック図である。
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２或いは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳやオペレーティングシステムプログラム（以下、ＯＳ）や、各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００１４】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２或いは外部メモリ２１１からＲＡＭ２０３にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００１５】
また、２０５は入力コントローラで、キーボード２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。２０６はビデオコントローラで、モニタ２１０への表示を制御する。一般に、モニタ２１０は液晶ディスプレイやＣＲＴ等の表示器である。
【００１６】
２０７はメモリコントローラで、ブートプログラム、各種のアプリケーション、ユーザファイル、各種データ等を記憶するハードディスク、ＳＳＤ(Solid State Drive)、ＳＤメモリーカード等の外部メモリ２１１へのアクセスを制御する。
【００１７】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク（例えば、図１に示したＬＡＮ７００）を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。本実施例においては、ＴＣＰ／ＩＰを用いた通信が可能である。
【００１８】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、モニタ２１０上での表示を可能としている。また、ＣＰＵ２０１は、モニタ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００１９】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。
【００２０】
図３は、図１に示した複合機３００のコントローラユニットのハードウェア構成の一例を示すブロック図である。
図３において、３１６はコントローラユニットで、画像入力デバイスとして機能するスキャナ３１４や、画像出力デバイスとして機能するプリンタ３１２と接続する一方、外部のＬＡＮなどと接続することで、画像データやデバイス情報の入出力を行う。
【００２１】
コントローラユニット３１６において、３０１はＣＰＵで、システム全体を制御するプロセッサである。３０２はＲＡＭで、ＣＰＵ３０１が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
【００２２】
３０３はＲＯＭで、システムのブートプログラムや各種制御プログラムが格納されている。３０４はハードディスクドライブ（ＨＤＤ）で、システムを制御するための各種プログラム，画像データ等を格納する。なお、ＨＤＤの代わりにＳＳＤ等を用いてもよい。
【００２３】
３０７は操作部インタフェース（操作部Ｉ／Ｆ）で、操作部（ＵＩ）３０８とのインタフェース部であり、操作部３０８に表示する画像データを操作部３０８に対して出力する。また、操作部Ｉ／Ｆ３０７は、操作部３０８から本システム使用者が入力した情報（例えば、ユーザ情報等）をＣＰＵ３０１に伝える役割をする。なお、操作部３０８はタッチパネルを有する表示部を備え、該表示部に表示されたボタンを、ユーザが押下（指等でタッチ）することにより、各種指示を行うことができる。
【００２４】
３０５はネットワークインタフェース（Ｎｅｔｗｏｒｋ Ｉ／Ｆ）で、ネットワーク（ＬＡＮ）に接続し、データの入出力を行う。３０６はモデム（ＭＯＤＥＭ）で、公衆回線に接続し、ＦＡＸの送受信等のデータの入出力を行う。
【００２５】
３１８は外部インタフェース（外部Ｉ／Ｆ）で、ＵＳＢ、ＩＥＥＥ１３９４，プリンタポート，ＲＳ−２３２Ｃ等の外部入力を受け付けるＩ／Ｆ部である。本実施例においては認証で必要となるＩＣカードの読み取り用のカードリーダ３１９が外部Ｉ／Ｆ部３１８に接続されている。そして、ＣＰＵ３０１は、この外部Ｉ／Ｆ３１８を介してカードリーダ３１９によるＩＣカードからの情報読み取りを制御し、該ＩＣカードから読み取られた情報を取得可能である。以上のデバイス（３０１〜３０７、３１８）がシステムバス３０９上に配置される。
【００２６】
３２０はイメージバスインタフェース（ＩＭＡＧＥ ＢＵＳ Ｉ／Ｆ）であり、システムバス３０９と画像データを高速で転送する画像バス３１５とを接続し、データ構造を変換するバスブリッジである。
【００２７】
画像バス３１５は、ＰＣＩバス又はＩＥＥＥ１３９４で構成される。画像バス３１５上には以下のデバイスが配置される。
３１０はラスターイメージプロセッサ（ＲＩＰ）で、例えば、ＰＤＬコード等のベクトルデータをビットマップイメージに展開する。３１１はプリンタインタフェース（プリンタＩ／Ｆ）で、プリンタ３１２とコントローラユニット３１６を接続し、画像データの同期系／非同期系の変換を行う。また、３１３はスキャナインタフェース（スキャナＩ／Ｆ）で、スキャナ３１４とコントローラユニット３１６を接続し、画像データの同期系／非同期系の変換を行う。
【００２８】
３１７は画像処理部で、入力画像データに対し補正、加工、編集を行ったり、プリント出力画像データに対して、プリンタの補正、解像度変換等を行ったりする。また、これに加えて、画像処理部３１７は、画像データの回転や、多値画像データに対してはＪＰＥＧ、２値画像データはＪＢＩＧ、ＭＭＲ、ＭＨ等の圧縮伸張処理を行う。
【００２９】
スキャナ部３１４は、原稿となる紙上の画像を照明し、ＣＣＤラインセンサーで走査することで、ラスターイメージデータとして電気信号に変換する。原稿用紙を不図示の原稿フィーダのトレイにセットし、装置使用者が操作部３０８から読み取り起動指示することにより、ＣＰＵ３０１がスキャナ３１４に指示を与え、フィーダは原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【００３０】
プリンタ部３１２は、ラスターイメージデータを用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式やインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、ＣＰＵ３０１からの指示によって開始する。なお、プリンタ部３１２には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。
【００３１】
操作部３０８は、ＬＣＤ表示部を有し、ＬＣＤ上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報を操作部Ｉ／Ｆ３０７を介してＣＰＵ３０１に伝える。また、操作部３０８は、各種操作キーとして、例えば、スタートキー、ストップキー、ＩＤキー、リセットキー等を備える。
【００３２】
ここで、操作部３０８のスタートキーは、原稿画像の読み取り動作を開始する時などに用いる。スタートキーの中央部には、緑と赤の２色ＬＥＤがあり、その色によってスタートキーが使える状態にあるかどうかを示す。また、操作部３０８のストップキーは、稼働中の動作を止める働きをする。また、操作部３０８のＩＤキーは、使用者のユーザＩＤを入力する時に用いる。リセットキーは、操作部からの設定を初期化する時に用いる。
【００３３】
カードリーダ３１９は、ＣＰＵ３０１からの制御により、ＩＣカード（例えば、ソニー社のフェリカ（ＦｅｌｉＣａ）（登録商標））内に記憶されている情報を読み取り、該読み取った情報を外部Ｉ／Ｆ３１８を介してＣＰＵ３０１へ通知する。
【００３４】
以上のような構成によって、複合機３００は、スキャナ３１４から読み込んだ画像データをＬＡＮ７００上に送信したり、ＬＡＮ７００から受信した印刷データをプリンタ３１２により印刷出力したりすることができる。
【００３５】
また、スキャナ３１４から読み込んだ画像データをモデム３０６により、公衆回線上にＦＡＸ送信したり、公衆回線からＦＡＸ受信した画像データをプリンタ３１２により出力したりすることができる。
【００３６】
以下、図４を用いて、本実施例のサーバレスプルプリントシステムにおけるクライアントＰＣ１００内の処理の流れについて説明する。
本システムを使用するクライアントＰＣ１００には、本実施例のプリントモジュールが予め外部メモリ２１１内にインストールされている必要がある。このプリントモジュールは専用のプリンタドライバとサーバレスプルプリント用サービスを含んでおり、連携して動作する。ユーザはクライアントＰＣ１００に対してログインを行い、クライアントＰＣ上で動作している任意のアプリケーションプログラムから、上記専用プリンタドライバを選択して印刷指示を行うことで、本プリントシステムを使用することができる。
【００３７】
図４は、印刷実行時のクライアントＰＣ１００の処理の一例を示すフローチャートである。このフローチャートの処理は、クライアントＰＣ１００内のＣＰＵ２０１が外部メモリ２１１にコンピュータ読み取り可能に記録されたプログラム（本実施例のプリントモジュール）を実行することにより実現される。以下、ＣＰＵ２０１が本実施例のプリントモジュールを実行することにより実現されるＣＰＵ２０１の処理を、「プリントモジュールは」のように、プリントモジュールを主語にして説明する。
【００３８】
まず、ユーザの印刷操作に応じてアプリケーションが印刷処理を行い、プリントモジュールに対して印刷指示を出す。
プリントモジュールは、アプリケーションからの印刷指示を受け付けて（Ｓ４０１）、グラフィックエンジンを介して受け取ったデータに基づいて印刷用のデータ（印刷データ）を生成する（Ｓ４０２）。なお、ここで生成される印刷データは印刷装置に依存しない形式（例えば、Enhanced Metafile(ＥＭＦ)形式）であり、実際に印刷処理が行われるまでに自由に印刷設定を変更することが可能となっている。
【００３９】
次に、プリントモジュールは、上記Ｓ４０２で生成した印刷データを、クライアントＰＣ１００上の所定の格納場所（外部メモリ２１１内のスプール領域）に格納（スプール）する（Ｓ４０３）。
【００４０】
さらに、プリントモジュールは、上記Ｓ４０３でスプールした印刷データを、プリントモジュールが管理するジョブリストに追加する（Ｓ４０４）。ジョブリストは、プリントモジュールがスプールした印刷データの文書名を列挙したリストであり、他にページ数、印刷日時などの情報を含んでいる。この時、プリントモジュールは、印刷データをスプールするのみで、印刷装置（複合機３００）への送信は行わない。
【００４１】
次に、プリントモジュールは、該プリントモジュール自身が動作しているＰＣ１００のＩＰアドレスからＰＩＮコードを算出し（Ｓ４０４）、該算出したＰＩＮコードをモニタ２１０に表示する（Ｓ４０５）。なお、
図５は、図４のＳ４０６のタイミングでモニタ２１０上に表示されるダイアログの一例を示す図である。
【００４２】
図５において、５０１はダイアログで、図４のＳ４０６のタイミングでモニタ２１０上に表示される。ダイアログ５０１には、ＰＩＮコード５０３と、印刷ジョブが発行された旨と実際の印刷処理が終了するまでＰＣとネットワークの接続を切断したりＰＣの電源を落とさないように促す（警告する）メッセージ５０２が表示される。即ち、メッセージ５０２は、スプールした印刷データの印刷が終了するまで（印刷を完了させるため）各プリンタ（複合機３００）と通信可能な状態にクライアントＰＣを維持すべき旨の警告をユーザに行うものである。
【００４３】
図５の例では、ＰＩＮコードとして「４７３３」が表示されている。なお、ＰＩＮコードは、クライアントＰＣ自身（クライアントＰＣ自身のＩＰアドレス）を特定するための特定情報である。ＰＩＮコードの算出方法に関しては図１１〜図１４を用いて後述する。
【００４４】
ＯＫボタン５０４が押されるとダイアログ５０１は閉じられる。
なお、この時点では、ネットワーク上の複数の複合機３００のうちどの複合機で印刷するかはまだ決まっていない。その後、ユーザは、印刷したい複合機３００のところに直接行って、複合機３００のＵＩ操作を行って印刷を実行する。
【００４５】
以下、図６を用いて、本実施例のサーバレスプルプリントシステムにおける複合機３００内の処理の流れについて説明する。
図６は、印刷出力時の複合機３００の処理の一例を示すフローチャートであり、実際にユーザが複合機３００の前で印刷を実行するまでの複合機３００の処理に対応する。このフローチャートの処理は、複合機３００内のＣＰＵ３０１がＲＯＭ３０３にコンピュータ読み取り可能に記録されたプログラムを実行することにより実現される。
【００４６】
まず、ユーザがカードリーダ３１９に対してＩＣカードをかざす、若しくは操作部３０８のＩＤキーを操作してユーザＩＤ等を入力することにより、複合機３００に対してログインする操作を行う。この操作を受けて、複合機３００のＣＰＵ３０１は、ユーザのログイン処理を行い（Ｓ６０１）、ログインに成功すると、操作部３０８のＵＩ上にメニュー画面とログインユーザのユーザ名を表示する。
【００４７】
そして、ユーザによるＵＩ操作でメニュー画面から「プルプリント」が選択されると（Ｓ６０２）、複合機３００のＣＰＵ３０１は、図７に示すようなＰＩＮコードを入力するための画面を操作部３０８の表示部に表示する（Ｓ６０３）。これにより、サーバレスのプルプリントの処理が開始される。
【００４８】
図７は、図６のＳ６０３で複合機３００の操作部３０８に表示されるＰＩＮコード入力画面の一例を示す図である。
ユーザによるＵＩ操作でＰＩＮコード入力画面７０１の領域７０２に対してＰＩＮコードが入力され、ＯＫボタン７０４がタッチされると、複合機３００のＣＰＵ３０１は、入力されたＰＩＮコードの値を元にＩＰアドレスを算出する（Ｓ６０４）。なお、ＰＩＮコードからＩＰアドレスを算出する方法については図１１から図１４を用いて後述する。
【００４９】
次に、複合機３００のＣＰＵ３０１は、上記Ｓ６０４で算出されたＩＰアドレスのクライアントＰＣ１００に対してジョブリスト要求を行う（Ｓ６０５）。この要求を受けたクライアントＰＣ１００のプリントモジュールは、この要求の応答として、クライアントＰＣ１００のログインユーザ名と、プリントモジュールの管理するジョブリストを複合機３００に返信する。なお、クライアントＰＣ１００のプリントモジュールは、プリントモジュールの管理するジョブリストに印刷データが登録されていいない場合（ジョブリストが空の場合）には、上記応答を行わない。
【００５０】
そして、複合機３００のＣＰＵ３０１は、上記ＩＰアドレスのクライアントＰＣ１００からの応答の有無を判定する（Ｓ６０６）。
そして、上記ＩＰアドレスのクライアントＰＣ１００からの応答があったと判定した場合（Ｓ６０６でＹｅｓ）、複合機３００のＣＰＵ３０１は、Ｓ６０７に処理を進める。
Ｓ６０７では、複合機３００のＣＰＵ３０１は、上記クライアントＰＣ１００からの応答に含まれるユーザ名が、上記Ｓ６０１のログインユーザのユーザ名が一致するか否かを判定する。
【００５１】
そして、上記クライアントＰＣ１００からの応答に含まれるユーザ名が上記Ｓ６０１のログインユーザのユーザ名が一致したと判定した場合（Ｓ６０７でＹｅｓ）、複合機３００のＣＰＵ３０１は、Ｓ６０８に処理を進める。
【００５２】
Ｓ６０８では、複合機３００のＣＰＵ３０１は、上記クライアントＰＣ１００からの応答に含まれるジョブリストを取得し（Ｓ６０８）、図８のようなジョブリスト表示画面８０１を操作部３０８の表示部に表示する。
【００５３】
図８は、図６のＳ６０８で複合機３００の操作部３０８の表示部に表示されるジョブリスト表示画面の一例を示す図である。
ジョブリスト表示画面８０１は、クライアントＰＣ１００内のプリントモジュールの管理するジョブリストを表示したものであり、文書名８０２、ページ数８０３、日付時刻（印刷日時）８０４を表示する。また、ジョブリスト表示画面８０１では、ジョブの選択と「プリント開始」ボタン８０７の押下（タッチ）が可能となっている。また、選択したジョブの詳細情報を表示する「詳細情報」ボタン８０５、選択したジョブを消去する「消去」ボタン８０６の押下（タッチ）も可能となっている。
【００５４】
ユーザによるＵＩ操作でジョブが選択され、「プリント開始」ボタン８０７が押下（指示）されると、複合機３００のＣＰＵ３０１は、上記クライアントＰＣ１００に対して、前記選択されたジョブの文書名を含む印刷指示を送信する（Ｓ６０９）。この印刷指示を受けたクライアントＰＣ１００のプリントモジュールは、この印刷指示に含まれる文書名に対応する印刷データを、クライアントＰＣ１００のスプール領域から取得し、複合機３００に送信するための制御を行う。
ここで、印刷データを送信する際のクライアントＰＣ１００のプリントモジュールの制御動作を補足する。プリントモジュールは、複合機３００からの印刷指示に合わせて送られてくる製造者情報やモデル情報を抽出して、対応するプリンタドライバがクライアントＰＣにインストールされているかを判断する。ここで、既にプリンタドライバがインストール済であるなら、プリントモジュールがスプール領域からＥＭＦ形式の印刷データを取り出し、そのプリンタドライバに対して複合機３００用のＰＤＬ（Ｐａｇｅ Ｄｅｓｃｒｉｐｔｉｏｎ Ｌａｎｇｕａｇｅ）の印刷データに変換させる（印刷指示を行った印刷装置用の印刷データに変換させる）。その後、プリンタドライバが変換後の印刷データを複合機３００に送信することになる。
一方で、クライアントＰＣ１００のプリントモジュールが複合機３００に対応するプリンタドライバがクライアントＰＣにインストールされていないと判断した場合について説明する。この場合は、プリントモジュールが、製造者情報やモデル情報に対応するプリンタドライバを、クライアントＰＣの記憶領域やネットワーク上の機器から探索する。見つかった場合には、プリントモジュールが、当該プリンタドライバを取得して、インストール処理の実行を制御する。その後、プリントモジュールがスプール領域からＥＭＦ形式の印刷データを取り出し、インストールされたプリンタドライバに対して複合機３００用のＰＤＬの印刷データに変換させる。プリンタドライバが変換後の印刷データを複合機３００に送信することになる。
【００５５】
そして、複合機３００のＣＰＵ３０１は、上記クライアントＰＣ１００から送られてきた印刷データを取得し、プリンタ３１２で前記印刷データの実際の印刷出力処理を行って（Ｓ６１０）、プリント処理を終了する。
【００５６】
なお、ジョブリスト表示画面８０１において、ジョブ毎に印刷設定（例えば、カラー／モノクロ設定、両面設定、２ｉｎ１等のレイアウト設定、ステイプラや製本等の設定、排紙設定、給紙設定等）を行えるようにし、上記Ｓ６１０の印刷出力処理時に、上記印刷設定に応じた印刷出力を行うように構成してもよい。
【００５７】
なお、上記ＩＰアドレスのクライアントＰＣ１００から応答がないと判定した場合（Ｓ６０６でＮｏ）複合機３００のＣＰＵ３０１はエラーと判断し、Ｓ６１１に処理を進める。また、上記クライアントＰＣ１００からの応答に含まれるユーザ名が上記Ｓ６０１のログインユーザのユーザ名が一致しないと判定した場合（Ｓ６０７でＮｏ）も、複合機３００のＣＰＵ３０１はエラーと判断し、Ｓ６１１に処理を進める。Ｓ６１１では、複合機３００のＣＰＵ３０１は、操作部３０８の表示部に図１０に示すようなエラー画面１００１を表示し、プリント処理を終了する。
【００５８】
なお、図７の画面７０１は前述の通り複合機３００におけるＰＩＮコードの入力を促す画面であるが、ＰＩＮコードはユーザが記憶して入力を行う必要がある。しかし、ユーザがＰＩＮコードを忘れてしまっている場合もある。そこで、図７の画面７０１は、ＰＩＮコードを忘れてしまったユーザのために「ＰＣ一覧から選択する」ボタン７０３を有している。
【００５９】
「ＰＣ一覧から選択する」ボタン７０３が押下されると、複合機３００のＣＰＵ３０１は、後述する図１１，図１２に示すＰＩＮコード設定に基づいて可能性のあるネットワーク上の全てのＩＰアドレスを算出する。そして、複合機３００のＣＰＵ３０１は、上記算出した全てのＩＰアドレスのクライアントＰＣ１００に対してジョブリスト要求を行う。
【００６０】
このジョブリスト要求に応じて返答を返し、且つ、ユーザ名が一致したクライアントＰＣが１つのみの場合は、複合機３００のＣＰＵ３０１は、前述の通り、取得したジョブリストを元に図８のようなジョブリスト表示画面８０１を表示する。
【００６１】
一方、このジョブリスト要求に応じて返答を返し、且つ、ユーザ名が一致したクライアントＰＣが複数あった場合は、複合機３００のＣＰＵ３０１は、図９のようなコンピュータ選択画面９０１を操作部３０８の表示部に表示する。
【００６２】
図９は、図７の「ＰＣ一覧から選択する」ボタン７０３が指示された場合に複合機３００の操作部３０８に表示されるコンピュータ選択画面の一例を示す図である。
コンピュータ選択画面９０１では、応答してきた全てのクライアントＰＣ１００のコンピュータ名を９０２の列に列挙し、それぞれのジョブリストに含まれるジョブの数を９０３の列に列挙して表示する。
【００６３】
コンピュータ選択画面９０１において、戻るボタン９０４が押下されると、複合機３００のＣＰＵ３０１は、図７のＰＩＮコード入力画面に遷移させる。
また、ユーザがコンピュータ選択画面９０１で印刷したいジョブを有するコンピュータを選択し、ＯＫボタン９０５を押下すると、複合機３００のＣＰＵ３０１は、コンピュータ選択画面９０１で選択されたＰＣから取得したジョブリストを元に図８のようなジョブリスト表示画面８０１を表示する。
【００６４】
なお、どのクライアントＰＣからも応答が返ってこない時は、複合機３００のＣＰＵ３０１は、エラーと判断し、Ｓ６１１に処理を進め、図１０に示すようなエラー画面１００１を操作部３０８の表示部に表示して、プリント処理を終了する。
【００６５】
図１０は、図６のＳ６１１で複合機３００の操作部３０８の表示部に表示されるエラー画面の一例を示す図である。
エラー画面１００１において、ＯＫボタン１００２が押下（タッチ）されると、複合機３００のＣＰＵ３０１は、エラー画面１００１を閉じて、初期画面に遷移させる。
以上、本発明のプリントシステムの全体の流れについて説明した。ＰＩＮコードを使用することで、必要のない印刷装置とクライアントＰＣとの通信を行わずに、印刷装置とクライアントＰＣを接続することが可能となる。また、直接ＩＰアドレスを指定した接続となるため、サブネットを越えての接続も行うことができる。
【００６６】
なお、図８のジョブリスト表示画面８０１において、ジョブが選択され、「詳細情報」ボタン８０５が押下（指示）されると、複合機３００のＣＰＵ３０１は、選択されたジョブの詳細情報を操作部３０８の表示部に表示する。なお、ジョブの詳細情報は、ジョブリストとともに受信しているものとするが、「詳細情報」ボタン８０５が押下されたタイミングで、図８のジョブリストの取得元にクライアントＰＣ１００から前記選択されたジョブの文書名に対応する詳細情報を取得して表示してもよい。
【００６７】
また、図８のジョブリスト表示画面８０１において、ジョブが選択され、「消去」ボタン８０５が押下（指示）されると、複合機３００のＣＰＵ３０１は、図８のジョブリストの取得元にクライアントＰＣ１００に対して、前記選択されたジョブの文書名を含む消去指示を送信する。この消去指示を受けたクライアントＰＣ１００のプリントモジュールは、この消去指示に含まれる文書名に対応する印刷データを、クライアントＰＣ１００のスプール領域、及び、プリントモジュールの管理するジョブリストから消去する。
【００６８】
次に、図１１〜図１３を用いてＰＩＮコード算出のために必要なＰＩＮコード設定とネットワーク環境について説明する。
図１１は、クライアントＰＣ１００におけるＰＩＮコード設定のＵＩの一例を示す図であり、プリントモジュールによりクライアントＰＣ１００のモニタ２１０に表示される。
図１２は、複合機３００におけるＰＩＮコード設定のＵＩの一例を示す図であり、ＣＰＵ３０１により操作部３０８の表示部に表示される。
システム管理者は、ＰＩＮコードの桁数を減らすために、予め図１１、図１２に示すＵＩでＰＩＮコード設定を行っておく必要がある。ここで設定する内容は、対象とする環境におけるクライアントＰＣ１００と複合機３００とのネットワーク上の関係（即ち、双方のＩＰアドレスの関係（以降、ネットワーク環境とよぶ））である。
【００６９】
図１１に示すＰＩＮコード設定ダイアログ１１０１では、ネットワーク環境として「同一ネットワーク内」１１０２、「同一サブネット内」１１０３、「同一ビット指定」１１０４の３種類の指定が可能となっている。
【００７０】
図１２に示すＰＩＮコード設定ダイアログ１２０１も同様に、ネットワーク環境として「同一ネットワーク内」１２０２、「同一サブネット内」１２０３、「同一ビット指定」１２０４の３種類の指定が可能となっている。
【００７１】
以下、上記３種類の指定におけるネットワーク環境の違いについて図１３を用いて説明する。
図１３は、本実施例におけるクライアントＰＣ１００と複合機３００の関係を示す３種類のネットワーク環境を説明する図である。ここでは３種類ともクライアントＰＣ１００のＩＰアドレスを「１６３．２４．１８．１２５」と仮定している。
【００７２】
ネットワーク環境の１つ目は、１３０１に示すように、全ての複合機３００がクライアントＰＣ１００と同一のサブネット内に存在する環境である。
図１３に示す環境では、サブネットマスクが「２５５．２５５．２５５．１９２」であるため、全ての複合機３００は「１６３．２４．１８．６４」から「１６３．２４．１８．１２７」の間に存在する。
【００７３】
このようなネットワーク環境の時、システム管理者は、図１１に示すクライアントＰＣ１００上のＰＩＮコード設定ダイアログ１１０１において「同一サブネット内」１１０３を選択しておく。さらに、サブネットマスクとして、１１０５に示す領域に「２５５．２５５．２５５．１９２」を入力しておく。なお、サブネットマスクについては、プリントモジュールが、クライアントＰＣ１００の設定から取得するようにしてもよい。
【００７４】
同様に、図１２に示す複合機３００上のＰＩＮコード設定画面１２０１においても「同一サブネット内」１２０３を選択し、不図示のサブネットマスク入力ＵＩで「２５５．２５５．２５５．１９２」を入力しておく。なお、サブネットマスク入力ＵＩは、詳細ボタン１２０５を押下すると表示される画面上に設けられている。なお、同様に、サブネットマスクについては、複合機３００のＣＰＵ３０１が、複合機３００の設定から取得するようにしてもよい。
【００７５】
ネットワーク環境の２つ目は、１３０２に示すように全ての複合機３００がクライアントＰＣ１００と同一のネットワーク内に存在する環境である。なお、同一のネットワークとはすなわち、ＩＰアドレスの上位ビットで決定するアドレスクラスのネットワークアドレスが同一であることを指す。
【００７６】
図１３に示す環境では、クライアントＰＣ１００のＩＰアドレスが「１６３．２４．１８．１２５」であり、上位２ビットが「１０」であるのでクラスＢのアドレスクラスであることがわかる。クラスＢのデフォルトネットマスクは「２５５．２５５．０．０」であるので、全ての複合機３００は「１６３．２４．０．０」から「１６３．２４．２５５．２５５」の間に存在する。
【００７７】
このようなネットワーク環境の時、システム管理者は、図１１に示すクライアントＰＣ１００上のＰＩＮコード設定ダイアログ１１０１において「同一ネットワーク内」１１０２を選択しておく。同様に図１２に示す複合機３００上のＰＩＮコード設定画面１２０１においても「同一ネットワーク内」１２０２を選択しておく。
【００７８】
ネットワーク環境の３つ目は、１３０３に示すように全ての複合機３００とクライアントＰＣのＩＰアドレスの上位ビットが、ある一定数だけ同一である環境である。図１３はＩＰアドレスの上位１２ビットが同一である環境を示しており、ＩＰアドレスの上位１２ビットが「１０１０００１１０００１」であるので、全ての複合機３００は「１６３．１６．０．０」から「１６３．３１．２５５．２５５」の間に存在する。
【００７９】
このようなネットワーク環境の時、システム管理者は、図１１に示すクライアントＰＣ１００上のＰＩＮコード設定ダイアログ１１０１において「同一ビット指定」１１０４を選択し、ビット数を指定する１１０６や１１０７のＵＩで「１２」を入力しておく。同様に図１２に示す複合機３００上のＰＩＮコード設定画面１２０１においても「同一ビット指定」１２０４を選択し、不図示のビット数指定ＵＩで「１２」を入力しておく。なお、ビット数指定ＵＩは、詳細ボタン１２０５を押下すると表示する画面上に存在する。図１１の１１０８と同様「ＰＩＮコードを４ケタに限定する」の設定も同じ画面にて行うことができるようになっている。
【００８０】
次に、上述した３種類のネットワーク環境のそれぞれについて、クライアントＰＣ１００におけるＰＩＮコードの算出方法と複合機３００におけるＩＰアドレスの算出方法について説明する。
【００８１】
本実施例において、ＰＩＮコードは、クライアントＰＣ１００が自身のＩＰアドレスを１つの十進数にして表現したものである。前述の通り、ＰＩＮコードはユーザが記憶して複合機３００のＰＩＮコード入力画面７０２に入力する必要があるため、桁数が少ないほうが望ましい。本実施例においては、前述のＰＩＮコード設定を使用することで、桁数を減らすことができる。その具体例を図１４に示す。
【００８２】
図１４は、本実施例におけるクライアントＰＣ１００のＩＰアドレスである「１６３．２４．１８．１２５」を二進数で表した図である。
このＩＰアドレスを、単純に十進数に変換すると、１４０５に示す通り「２７３６２６３８０５」となり、桁数が多くユーザにとって記憶するのが困難である。
前述の１つ目のネットワーク環境１３０１においては、ＰＩＮコード設定ダイアログ１１０１において「同一サブネット内」１１０３が選択されているため、サブネットマスクから計算される上位２６ビットまでは割愛することが可能である。そのため、上記ＩＰアドレスの上位２７ビット目から３２ビット目までを十進数に変換した「６１」がＰＩＮコードとなる（１４０２）。すなわち、クライアントＰＣ１００は、自身のＩＰアドレスから、サブネットアドレス部分を除外したホストアドレス部分のみを十進数に変換することでＰＩＮコードを算出する。
【００８３】
前述の２つ目のネットワーク環境１３０２においては、ＰＩＮコード設定ダイアログ１１０１において「同一ネットワーク内」１１０２が選択されているため、デフォルトネットマスク（標準のサブネットマスク）から計算される上位１６ビットまでは割愛することが可能である。そのため上位１７ビット目から３２ビット目までを十進数に変換した「４７３３」がＰＩＮコードとなる（１４０１）。すなわち、クライアントＰＣ１００は、自身のＩＰアドレスから、デフォルトネットマスク部分（標準のサブネットマスク部分）を除外した部分のみを十進数に変換することでＰＩＮコードを算出する。
【００８４】
前述の３つ目のネットワーク環境１３０３においては、ＰＩＮコード設定ダイアログ１１０１において「１２」ビットでの「同一ビット指定」１１０４が選択されているため、上位１２ビットまでは割愛することが可能である。そのため、上位１３ビット目から２４ビット目までを十進数に変換した「５２９０２１」がＰＩＮコードとなる（１４０３）。すなわち、クライアントＰＣ１００は、自身のＩＰアドレスから、指定されたビット部分を除外した部分のみを十進数に変換することでＰＩＮコードを算出する。
【００８５】
なお、同一ビット数が少なければ少ないほど、ユーザの記憶すべきＰＩＮコードの桁数が増えてしまう。そのため、図１１に示したＰＩＮコード設定ダイアログ１１０１には「ＰＩＮコードを４ケタに限定する」チェックボックス１１０８が設けてある。
【００８６】
このチェックボックス１１０８が「ＯＮ」になっており、かつ指定ビットが「１９」ビットより小さい場合は、下位１３ビットのみを十進数に変換する処理を行う。これは、１３ビット以下であれば十進数に変換した際に必ず４ケタ以下の数値に変換されるためである。
【００８７】
図１３の１３０３の例では同一ビット指定が「１２」であり１９ビットより小さいため、下位１３ビット、すなわち上位２０ビット目から３２ビット目までを十進数に変換した「４７３３」がＰＩＮコードとなる（１４０４）。すなわち、この場合、クライアントＰＣは自身のＩＰアドレスから、下位１３ビットを十進数とすることでＰＩＮコードを算出する。
【００８８】
次に、上記で示した３種類のネットワーク環境のそれぞれについて、複合機３００におけるクライアントＰＣ１００のＩＰアドレスの算出方法について説明する。
前述の１つ目のネットワーク環境１３０１においては、ＰＩＮコード設定画面１２０１において「同一サブネット内」１２０３が選択されているため、自身のＩＰアドレスのうち、サブネットマスクから計算される上位２６ビットまでは同一である。
【００８９】
そのため、ＰＩＮコード入力画面７０１で入力された値を二進数に変換して残りの２７ビット目から３２ビット目までにあてはめたものが、求めるクライアントＰＣ１００のＩＰアドレスと特定することができる。
【００９０】
図１３，図１４の例では、自身のＩＰアドレスである「１６３．２４．１８．９９」と、入力されたＰＩＮコード「６１」から、クライアントＰＣ１００のＩＰアドレスを「１６３．２４．１８．１２５」と特定することができる。詳細には、自身のＩＰアドレスである「１６３．２４．１８．９９」から上位２６ビットを特定し、また、入力されたＰＩＮコード「６１」から下位６ビットを特定し、クライアントＰＣ１００のＩＰアドレスを「１６３．２４．１８．１２５」と特定する。
【００９１】
すなわち、複合機３００は、自身のＩＰアドレスのサブネットアドレス部分に対して、入力された値をホストアドレス部分に加えることでクライアントＰＣ１００のＩＰアドレスを算出する。
【００９２】
前述の２つ目のネットワーク環境１３０２においては、ＰＩＮコード設定画面１２０１において「同一ネットワーク内」１２０２が選択されているため、自身のＩＰアドレスのうち、デフォルトネットマスクから計算される上位１６ビットまでは同一である。そのため、ＰＩＮコード入力画面７０１で入力された値を二進数に変換して残りの１７ビット目から３２ビット目までにあてはめたものが、求めるクライアントＰＣ１００のＩＰアドレスと特定することができる。
【００９３】
図１３，図１４の例では、自身のＩＰアドレスである「１６３．２４．４８．１０３」と、入力されたＰＩＮコード「４７３３」から、クライアントＰＣのＩＰアドレスを「１６３．２４．１８．１２５」と特定することができる。
【００９４】
すなわち、複合機３００は自身のＩＰアドレスのデフォルトネットアドレス部分に対して、入力された値を残りの部分に加えることでクライアントＰＣ１００のＩＰアドレスを算出する。
【００９５】
前述の３つ目のネットワーク環境１３０３においては、ＰＩＮコード設定画面１２０１において「１２」ビットの「同一ビット指定」１２０４が選択されているため、自身のＩＰアドレスのうち、上位１２ビットまでは同一である。そのため、ＰＩＮコード入力画面７０１で入力された値を二進数に変換して残りの１３ビット目から３２ビット目までにあてはめたものが、求めるクライアントＰＣ１００のＩＰアドレスと特定することができる。
【００９６】
図１３，図１４の例では、自身のＩＰアドレスである「１６３．２０．４８．１０３」と、入力された「５２９０２１」のＰＩＮコードから、クライアントＰＣのＩＰアドレスを「１６３．２４．１８．１２５」と特定することができる。
【００９７】
すなわち、複合機３００は自身のＩＰアドレスの指定ビット部分に対して、入力された値を残りの部分に加えることでクライアントＰＣ１００のＩＰアドレスを算出する。
なお、ＰＩＮコード設定画面１２０１の詳細画面において「ＰＩＮコードを４ケタに限定する」の設定がなされている場合は、異なる処理となる。前述の通り上位１２ビットまでは自身のＩＰアドレスと同一のものをあてはめ、入力されたＰＩＮコードを二進数に変換したものを下位１３ビットにあてはめる。すなわち、残りの上位１３ビット目から１９ビット目までは不定となり、クライアントＰＣ１００のＩＰアドレスを特定することができない。この場合、図６のＳ６０５のジョブリスト要求を、考えられる全てのＩＰアドレスに対して行う。不定なビット数が７ビットであれば、総計１２８個のＩＰアドレスが対象となる。
【００９８】
図１３，図１４の例では、自身のＩＰアドレスである「１６３．２０．４８．１０３」と、入力されたＰＩＮコード「４７３３」から算出した、以下の１２８個のＩＰアドレスが対象となる。「１６３．１６．１８．１２５」、「１６３．１６．５０．１２５」、「１６３．１６．８２．１２５」、・・・、「１６３．３１．２４２．１２５」。
【００９９】
なお、本実施例において、「ＰＩＮコードを４桁に限定する」を例に挙げているが、実際は４桁に限られるものではなく、５桁や６桁を用いても実施することができる。
以上のように、クライアントＰＣ１００は、ＰＩＮコード設定ＵＩで指定されたクライアントＰＣと複合機のネットワーク上での関係に基づいて、ＩＰアドレスの一部の情報からＰＩＮコードを生成して、ＰＩＮコードの桁数を減らすことができる。これにより、ユーザがＰＩＮコードを忘れてしまう可能性を減少させることができる。
【０１００】
なお、本実施例では、ユーザがＰＩＮコードを忘れてしまった場合やＰＩＮコードの桁数を限定した場合に、複合機３００が複数のＩＰアドレスへジョブリスト要求を行う例を提示した。
【０１０１】
この場合、毎回、複数のＩＰアドレスへ要求を出していてはシステムの負荷が大きい。一般に、ユーザが同じであればＰＣのＩＰアドレスは同じものである確率が高い。
よって、複写機３００がユーザごとによく使うＩＰアドレスを記憶しておき（印刷ごとにキャッシュしておく）、そのＩＰアドレスに、優先的にジョブリスト要求を行うように実施してもよい。
【０１０２】
具体的には、複写機３００は、まずユーザがよく使うＩＰアドレスに対してのみジョブリスト要求を行い、応答がなかった場合のみ残りの複数のＩＰアドレスに対してジョブリスト要求を行う。このようにすることで、システムの負荷を低減することが可能となる。
【０１０３】
以上、図を用いて本発明の実施例の一例を説明した。
本実施例では印刷装置として複合機を用いたが、操作部を有する単機能プリンタを用いても同様に実施可能である。
また、本実施例ではシステムの管理者が、ＰＩＮコード設定をクライアントＰＣ１００と複合機３００にそれぞれセットする必要があるが、ツールを用いて各クライアントＰＣ１００と各複合機３００に対して一括でセットできるようにしてもよい。
【０１０４】
また、ＰＩＮコードの桁数を減らすために「同一ネットワーク内」、「同一サブネット内」、「同一ビット指定」の３項目を使用する例を挙げたが、ＰＩＮコードの桁数を減らす目的であれば、ネットワーク上の関係を示す別の指定方法を用いても実施可能である。
【０１０５】
さらに、本実施例では、ＩＰｖ４を元に説明したが、ＩＰｖ６でも同様に実施することが可能である。
本実施例によれば、サーバレスのプルプリントシステムにおいて、必要のない印刷装置（複合機３００）と情報処理装置（クライアントＰＣ１００）との接続を行うことなく、直接、所望の印刷装置と情報処理装置を接続してプルプリントを行うことが可能となる。また、サブネットを超えた接続も可能となる。
【０１０６】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施例について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０７】
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【０１０８】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１０９】
１００    クライアントＰＣ
３００    複合機
７００    ネットワーク
【図１】
0005677047.tif 000002
【図２】
0005677047.tif 000003
【図３】
0005677047.tif 000004
【図４】
0005677047.tif 000005
【図５】
0005677047.tif 000006
【図６】
0005677047.tif 000007
【図７】
0005677047.tif 000008
【図８】
0005677047.tif 000009
【図９】
0005677047.tif 000010
【図１０】
0005677047.tif 000011
【図１１】
0005677047.tif 000012
【図１２】
0005677047.tif 000013
【図１３】
0005677047.tif 000014
【図１４】
0005677047.tif 000015