(57)【特許請求の範囲】
【請求項１】
複数の格納領域を有する格納部を備えた印刷装置であって、
前記複数の格納領域のそれぞれに、前記印刷装置を用いた印刷設定を設定する設定手段と、
印刷データと、前記複数の格納領域のうちのいずれかの格納領域を指定するための指定情報とを受信する受信手段と、
前記受信手段によって受信した印刷データを格納する格納手段と、
前記受信手段によって受信した印刷データを、前記指定情報により指定された格納領域に対して前記設定手段によって設定されている印刷設定に従って印刷する印刷手段と、
前記受信手段によって受信した印刷データを印刷できなかった場合、前記複数の格納領域の中から当該印刷データの移動先又は複製先となる他の格納領域をユーザが選択するための画面を生成する生成手段と、
前記生成手段によって生成された画面においてユーザに選択された他の格納領域へ、前記印刷データを移動又は複製する処理手段と、
を有し、
前記印刷手段は、前記他の格納領域に移動または複製によって格納された前記印刷データを、前記他の格納領域に対して前記設定手段によって設定されている印刷設定に従って印刷する
ことを特徴とする印刷装置。
【請求項２】
前記受信手段は、前記指定情報と前記印刷データとを、情報処理装置からネットワークを介して受信することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記複数の格納領域の識別情報と、該複数の格納領域のそれぞれに設定されている印刷設定とを対応付けて一覧表示する表示手段をさらに有することを特徴とする請求項１又は２に記載の印刷装置。
【請求項４】
前記表示手段は、前記複数の格納領域それぞれに設定されている印刷設定が使用可能な状態であるか否かを識別可能に表示することを特徴とする請求項３に記載の印刷装置。
【請求項５】
前記格納領域に設定される印刷設定は、カラー印刷設定、モノクロ印刷設定、両面印刷設定、片面印刷設定、ステープル設定のうちのいずれかを含むことを特徴とする請求項１乃至４のいずれか１項に記載の印刷装置。
【請求項６】
前記処理手段は、前記印刷手段による印刷が完了した印刷データを前記格納領域から削除し、印刷が完了していない印刷データを前記格納領域に格納し続けることを特徴とする請求項１乃至５のいずれか１項に記載の印刷装置。
【請求項７】
複数の格納領域を有する格納部を備えた印刷装置の制御方法であって、
前記印刷装置が備える設定手段が、前記複数の格納領域のそれぞれに、前記印刷装置を用いた印刷設定を設定する設定工程と、
前記印刷装置が備える受信手段が、印刷データと、前記複数の格納領域のうちのいずれかの格納領域を指定するための指定情報とを受信する受信工程と、
前記印刷装置が備える格納手段が、前記受信手段によって受信した印刷データを格納する格納工程と、
前記印刷装置が備える印刷手段が、前記受信手段によって受信した印刷データを、前記指定情報により指定された格納領域に対して前記設定手段によって設定されている印刷設定に従って印刷する印刷工程と、
前記印刷装置が備える生成手段が、前記受信手段によって受信した印刷データを印刷できなかった場合、前記複数の格納領域の中から当該印刷データの移動先又は複製先となる他の格納領域をユーザが選択するための画面を生成する生成工程と、
前記印刷装置が備える処理手段が、前記生成手段によって生成された画面においてユーザに選択された他の格納領域へ、前記印刷データを移動又は複製する処理工程と、
前記印刷手段が、前記他の格納領域に移動または複製によって格納された前記印刷データを、前記他の格納領域に対して前記設定手段によって設定されている印刷設定に従って印刷する工程と
を有することを特徴とする制御方法。
【請求項８】
印刷装置に請求項７に記載の各工程を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置に印刷を指示するためのユーザインタフェースを提供する技術に関する。
【背景技術】
【０００２】
一般に、パーソナルコンピュータ（ＰＣ）は、ＰＣにインストールされたプリンタドライバを利用することで、様々な印刷条件や印刷属性を印刷装置に指示できる。指示の内容としては、例えば、用紙のサイズ、出力枚数、カラー印刷、両面印刷、シート処理などがある。
【０００３】
ところで、特許文献１によれば、印刷装置ですぐに印刷するか否か、および、複数ある印刷ページの扱いを定めたルールをフォルダごとに設定する技術が提案されている。このフォルダに格納された印刷データは、当該フォルダに設定されているルールに従って、すぐに印刷されたり、複数の印刷ページが１つのジョブとして印刷されたりする。
【０００４】
また、特許文献２によれば、印刷条件と一対一で対応するフォルダを階層化する技術が提案されている。具体的に、特許文献２によれば、最上位のフォルダは、用紙サイズに対応し、次の階層のフォルダは、印刷部数に対応している。特許文献２の発明では、最上位のフォルダから最下位のフォルダを順番に選択することで、印刷に必要となる印刷条件を１つずつ選択できる。最下層のフォルダに印刷データが格納されると、選択された印刷条件に従って印刷処理が実行される。
【特許文献１】特開２０００−１１８０９５号公報
【特許文献２】特開２００３−２５６１６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
近年、多種多様な機能を備えた印刷装置（マルチファンクションプリンタと呼ばれることもある。）も登場しつつある。また、このような印刷装置を、携帯電話機やＰＤＡ（携帯情報端末）などの携帯端末から利用したいという要望もある。
【０００６】
ところが、携帯端末はプリンタドライバを有していない。特許文献２の技術では、印刷条件に対応したフォルダを１つずつ選択することで、携帯端末であっても印刷を実行できるかもしれない。しかしながら、この技術では、毎回、すべての印刷条件（フォルダ）を１つずつ指定する必要があり、非常に面倒である。
【０００７】
また、特許文献１の技術は、ユーザインフェースに関する工夫が開示されていない。従って、フォルダごとにどのような印刷処理がなされるかを、管理者以外の操作者が理解することは難しい。
【０００８】
そこで、本発明は、このような課題および他の課題のうち、少なくとも１つを解決することを目的とする。なお、他の課題については明細書の全体を通して理解できよう。
【課題を解決するための手段】
【０００９】
本発明は、上記課題を解決すべく、複数の格納領域を有する格納部を備えた印刷装置であって、
前記複数の格納領域のそれぞれに、前記印刷装置を用いた印刷設定を設定する設定手段と、
印刷データと、前記複数の格納領域のうちのいずれかの格納領域を指定するための指定情報とを受信する受信手段と、
前記受信手段によって受信した印刷データを格納する格納手段と、
前記受信手段によって受信した印刷データを、前記指定情報により指定された格納領域に対して前記設定手段によって設定されている印刷設定に従って印刷する印刷手段と、
前記受信手段によって受信した印刷データを印刷できなかった場合、前記複数の格納領域の中から当該印刷データの移動先又は複製先となる他の格納領域をユーザが選択するための画面を生成する生成手段と、
前記生成手段によって生成された画面においてユーザに選択された他の格納領域へ、前記印刷データを移動又は複製する処理手段と、
を有し、
前記印刷手段は、前記他の格納領域に移動または複製によって格納された前記印刷データを、前記他の格納領域に対して前記設定手段によって設定されている印刷設定に従って印刷する
ことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、端末装置の操作者は、ユーザインタフェースを通じて、複数の印刷機能を組み合わせてなる仮想的な印刷デバイスを選択し、当該仮想的な印刷デバイスに対応するフォルダに印刷データを格納できる。よって、管理者以外の操作者であっても、複数の印刷機能を組み合わせた印刷処理を、比較的に簡単な操作によって実行できる。
【発明を実施するための最良の形態】
【００１２】
以下に本発明の一実施形態を示す。もちろん以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１３】
＜システム構成＞
図１は、実施形態に係る印刷システムの全体構成を示すブロック図である。本印刷システムは、情報処理装置としてのホストコンピュータ１０１と、ＰＤＡや携帯電話などの携帯端末１０２と、実際の印刷装置としてのネットワークプリンタ１０３〜１０５とを含む。これらの各装置は、ネットワーク１０６を介して互いに接続されている。ここで、ホストコンピュータ１０１および携帯端末１０２は、端末装置の一例である。ホストコンピュータ１０１は、例えば、クライアントコンピュータまたはＰＣと呼ばれることもあろう。なお、ここでは、ホストコンピュータ１０１および携帯端末１０２には、いわゆるプリンタドライバはインストールされていないものとする。
【００１４】
ホストコンピュータ１０１や携帯端末１０２には、プリンタドライバの代わりとなって印刷を指示するためのユーザインタフェース（ＵＩ）を実現するコンピュータプログラムが格納されている。このようなコンピュータプログラムとしては、例えば、ＷＥＢブラウザプログラム、Ｊａｖａ（登録商標）アプリケーション、プラグインソフトウエアなどがある。ホストコンピュータ１０１や携帯端末１０２は、ＷＥＢブラウザを通じてネットワークプリンタ１０３ないし１０５にアクセスできる。
【００１５】
このＷＥＢブラウザを通じて実現されるユーザインタフェース上において、仮想的な印刷デバイスが提示される。仮想的な印刷デバイスは、ネットワークプリンタが有する１以上の印刷機能の組み合わせごとに設けられる。これによって、単一のネットワークプリンタが複数の仮想的な印刷デバイスとして表現される。また、ネットワークプリンタの記憶装置には、仮想的な印刷デバイスに対応するフォルダが設けられている。このフォルダは、ボックスと呼ばれることもある。
【００１６】
ＷＥＢブラウザを通じて、携帯端末１０２等は、フォルダに印刷データ（例：ＰＤＦファイル、文書ファイル、画像ファイルなど）を格納できる。なお、携帯端末１０２やホストコンピュータ１０１は、電子メールなどの他のプロトコルを使用して、フォルダに印刷データを格納してもよい。
【００１７】
ネットワークプリンタは、印刷データが格納されたフォルダに対応する仮想的な印刷デバイスの印刷機能に従って印刷を実行する。これによって、ホストコンピュータ１０１や携帯端末１０２の操作者は、従来よりも簡単な操作によって、複数の印刷機能を組み合わせた印刷処理を実行できる。
【００１８】
ネットワークプリンタ１０３〜１０５は、ホストコンピュータ１０１や携帯端末１０２から印刷データを含む印刷ジョブを受信し、受信した印刷ジョブを解析して印刷する物理的な印刷装置である。ネットワークプリンタ１０３〜１０５としては、電子写真方式を採用したレーザービームプリンタ、インクジェット方式を採用したインクジェットプリンタ、または、熱転写方式を利用したプリンタなど、あらゆる方式の印刷装置を採用することができる。すなわち、本発明に係る印刷装置は、印刷方式に依存することはない。
【００１９】
＜プリンタ及びサーバの構成＞
図２は、実施形態に係る端末装置（ホストコンピュータ１０１や携帯端末１０２）の例示的なブロック図である。ＣＰＵ２００は、ＨＤＤ（ハードディスクドライブ）２０５に格納されているコンピュータプログラムを読出して実行する。コンピュータプログラムとしては、アプリケーションプログラム、ＷＥＢブラウザプログラム、ＯＳやファイルシステムプログラム等がある。
【００２０】
ＲＯＭ２０１は、基本Ｉ／Ｏプログラムなどのプログラムや、フォントデータなどの各種データを記憶する記憶部である。ＲＡＭ２０２は、ＣＰＵ２００の主メモリやワークエリア等として機能する一時記憶部である。ＲＡＭ２０２には、例えば、コンピュータプログラムの実行に必要となる情報やファイルなどが記憶される。
【００２１】
ＦＤ（フレキシブルディスク）ドライブ２０３は、記憶媒体（ＦＤ２０４）に記憶されたプログラム等を読み出すための手段である。なお、ホストコンピュータ１０１や携帯端末１０２は、ＦＤドライブ２０３に代えて、或いはＦＤドライブ２０３と共に、他の記憶媒体用の読み出し手段を備えてもよい。他の記憶媒体としては、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＰＣカード、ＤＶＤ、ＩＣメモリカードまたはＭＯなど、コンピュータが読み取り可能ないずれかの記憶媒体が挙げられる。
【００２２】
ＨＤＤ２０５は、大容量メモリとして機能する外部記憶装置である。ＨＤＤ２０５は、上述したように各種のコンピュータプログラムやデータファイル（例：ＰＤＦファイル）などを格納している。
【００２３】
キーボード２０６は、入力装置として機能する。操作者が、ホストコンピュータ１０１や携帯端末１０２に対して、仮想的な印刷デバイス（フォルダ）を選択したり、印刷対象のファイルを選択したり、あるいは各種の印刷指示を入力するために使用される。キーボード２０６に加えて、ポインティングデバイスが入力装置として使用されてもよい。
【００２４】
ディスプレイ２０７は、ユーザインタフェースの情報などを出力する出力装置として機能する。ユーザインタフェースには、例えば、仮想的な印刷デバイス（フォルダ）に関する情報が表示される。
【００２５】
システムバス２０８は、ホストコンピュータ１０１や携帯端末１０２内におけるデータの伝送媒体として機能する。インタフェース２０９は、ネットワークインタフェースカード（ＮＩＣ）やモデムなどの入出力装置として機能する。インタフェース２０９を介して、ネットワーク１０６上の他の装置とのデータの送信および受信が実行される。
【００２６】
図３は、実施形態に係るネットワークプリンタの例示的なブロック図である。ネットワークプリンタ１０３、１０４および１０５は、主に、プリントサーバ３００とプリントコントローラ３２０とに分けられる。
【００２７】
プリントサーバ３００において、ＣＰＵ３０１は、書き換え可能なフラッシュＲＯＭ５０３に記憶された制御プログラムを実行する。そして、ＣＰＵ３０１は、システムバス３０４に接続される各ユニットを統括的に制御する。ＲＡＭ３０２は、ＣＰＵ３０１のワークエリアなどとして機能する。
【００２８】
ＬＡＮコントローラ（ＬＡＮＣ）３０５は、ネットワーク１０６に接続されたホストコンピュータ１０１や携帯端末１０２と通信するためのコントローラである。ＣＰＵ３０１は、ＬＡＮコントローラ３０５を介して受信した印刷データやプリンタ制御命令を実行し、プリントコントローラ３２０に適切なデータを送出する。
【００２９】
ＬＥＤ３０６は、プリントサーバ３００の動作状態を示す表示部として用いられる。拡張インタフェース３０７は、プリントサーバ３００とプリントコントローラ３２０を接続するためのインタフェースである。
【００３０】
プリントコントローラ３２０において、ＣＰＵ３２１は、ＲＯＭ３２３に記憶された制御プログラムを実行する。なお、制御プログラムは、外部メモリ３３２に記憶されていてもよい。外部メモリ３３２は、例えば、ディスクコントローラ（ＤＫＣ）３２９によって制御されるハードディスクドライブなどである。ＲＯＭ３２３や外部メモリ３３２には、リソースデータなどが格納されうる。
【００３１】
ＣＰＵ３２１は、システムバス３２４に接続される各ユニットを統括的に制御する。ＲＡＭ３２２は、ＣＰＵ３２１のワークエリアとして機能する。ＣＰＵ３２１は、拡張インタフェースコントローラ（ＥＸＰＣ）３２７を介してプリントサーバ３００から受信される印刷データを処理する。なお、プリントコントローラ３２０とプリントサーバ３００とは、バス３１７を介して接続されているものとする。
【００３２】
ＣＰＵ３２１は、ラスタコントローラ３２８によって印刷データをラスタデータに変換する。ラスタデータまたはラスタデータから生成された画像信号が、プリントエンジン３３０に出力される。なお、プリントエンジン３３０は、電子写真方式、インクジェット方式、昇華（熱転写）方式などを用いて印刷処理を実行する。
【００３３】
操作パネル３３１は、各種の指示を入力したり、各種の情報を出力したりするための入出力装置として機能する。例えば、操作パネル３３１には、ボタン、タッチパネル、動作状態を示す液晶パネル、ＬＥＤなどが含まれてもよい。
【００３４】
図４は、実施形態に係るネットワークプリンタを制御するための制御プログラムの例示的なブロック図である。
【００３５】
オペレーティングシステム（ＯＳ）４０１は、プリントサーバ３００の基本的なデータの入出力を制御する。さらに、ＯＳ４０１には、ネットワークインタフェースドライバ４０２、拡張インタフェースドライバ４０３およびファイルシステム４１２を有している。ネットワークインタフェースドライバ４０２は、ＬＡＮコントローラ３０５を制御するためのプログラムモジュールである。拡張インタフェースドライバ４０３は、拡張インタフェース３０７を制御するモジュールである。ファイルシステム４１２は、プログラム／データ記憶部４１３の入出力を制御するモジュールである。記憶部４１３は、例えば、ＲＡＭ３０２内に確保される。
【００３６】
ＬＰＤ／ＲＡＷモジュール４０４は、ホストコンピュータ１０１や携帯端末１０２から送信される印刷データを受け付けるためのプロトコルを制御するモジュールである。ＬＰＤ／ＲＡＷモジュール４０４は、受け付けた印刷データをプリントコントローラ３２０に渡すことができる。また、ＬＰＤ／ＲＡＷモジュール４０４は、ＷＥＢ制御モジュール４０５と協働して、印刷データを処理してもよい。
【００３７】
ＷＥＢ制御モジュール４０５は、いわゆるＷＥＢサーバやＣＧＩ（コモンゲートウェイインタフェース）プログラムとして機能するモジュールである。ＷＥＢ制御モジュール４０５は、ホストコンピュータ１０１や携帯端末１０２のＷＥＢブラウザプログラムからからアクセスを受け付けると、ユーザインタフェースを提供するためのソースファイル（例：ＨＴＭＬによるファイルなど）を作成して送信する。ＷＥＢ制御モジュール４０５は、プリントエンジン３３０の動作状態や設定などをプリントコントローラ３２０から取得する。また、ＷＥＢ制御モジュール４０５は、ホストコンピュータ１０１や携帯端末１０２から印刷データを受け付け、フォルダに格納する。
【００３８】
ネットワーク制御モジュール４０６は、ネットワークインタフェースドライバ４０２と、ＷＥＢ制御モジュール４０５およびＬＰＤ／ＲＡＷモジュール４０４との間でデータやコマンドを受け渡すためのモジュールである。
【００３９】
一方、プリントコントローラ３２０には、主に、ＯＳ４２１と拡張インタフェース制御モジュール４２３とが含まれる。ＯＳ４２１は、各種の処理を制御するオペレーティングシステムである。ＯＳ４２１の内部には、プリントエンジン制御モジュール４２２とファイルシステム４３２が含まれる。プリントエンジン制御モジュール４２２は、拡張インタフェース制御モジュール４２３とプリントエンジン３３０との通信を制御する。ファイルシステム４３２は、印刷データや制御プログラムを記憶している印刷データ／プログラム記憶部４３３の入出力を制御する。印刷データ／プログラム記憶部４３３には、例えば、プリントサーバ３００から参照されるビットマップ画像やエラーメッセージ等の機種依存リソースなどが格納されていてもよい。記憶部４３３は、例えば、外部メモリ３３２内に確保される。
【００４０】
拡張インタフェース制御モジュール４２３は、プリントサーバ３００と通信する拡張インタフェース３２７を制御するモジュールである。拡張インタフェース制御モジュール４２３には、データ転送モジュール４４１、リソース制御モジュール４４２、プリンタ制御モジュール４４３、およびジョブ制御モジュール４４４などが含まれる。データ転送モジュール４４１は、制御種別ごとに印刷データの入出力を制御する論理インタフェースである。リソース制御モジュール４４２は、印刷データ／プログラム記憶部４３３に記憶された各種データの入出力を制御する論理インタフェースである。プリンタ制御モジュール４４３は、ネットワークプリンタの再起動、設定値の初期化などの制御を行なう論理インタフェースである。ジョブ制御モジュール４４４は、印刷ジョブの取り消しや再印刷指示などを処理する論理インタフェースである。プリントサーバ３００から要求された命令は、このような論理インタフェースを介してＯＳ４２１へと転送される。また、命令の実行結果は、このような論理インタフェースを介してプリントサーバ３００に返信される。
【００４１】
＜ユーザインタフェースの提示と印刷＞
図５は、実施形態に係るユーザインタフェースを通じた印刷処理を示す例示的なフローチャートである。とりわけ、この印刷処理には、ホストコンピュータ１０１や携帯端末１０２へのＵＩの提示処理も含まれている。また、これらの処理は、ネットワークプリンタ１０３〜１０５のいずれかにおいて実行されるものとする。なお、以下では、携帯端末１０２からネットワークプリンタ１０３にアクセスがあった場合について説明する。もちろん、携帯端末１０２の代わりにホストコンピュータ１０１が採用されてもよい。
【００４２】
ステップＳ５０１において、ネットワークプリンタのＣＰＵ３０１は、携帯端末１０２からユーザインタフェースの提示要求を受信すると、ユーザインタフェースを携帯端末１０２に提示する。このユーザインタフェースは、携帯端末１０２からネットワークプリンタ１０３に対して、印刷を指示するためのユーザインタフェースである。また、このユーザインタフェース上には、ネットワークプリンタ１０３が有する１以上の印刷機能の組み合わせごとに仮想的な印刷デバイスが表示される。
【００４３】
図６は、実施形態に係るユーザインタフェースの一例を示す図である。ＵＩ６００は、仮想的な印刷デバイスを選択するためのユーザインタフェースである。なお、このＵＩは、携帯端末１０２のＷＥＢブラウザによって表示された例である。また、このＵＩは、ボックスの状況を確認するためのボックスリストを応用したものである。
【００４４】
ここでは、仮想的な印刷デバイスは、印刷データを格納するためのＢＯＸ（ボックス）として実現されている。ボックスは、いわゆるフォルダやディレクトリと呼ばれるファイル格納手段である。図６によれば、ボックス番号０１ないし０６までの各ボックスが、仮想的な印刷デバイスとして使用されている。
【００４５】
ボックス名称６０１は、各ボックスを識別するために使用される識別情報である。ボックスが仮想的な印刷デバイスとして使用される場合、ボックス名称６０１には、印刷機能の組み合わせを理解できるような名称が付与されることが好ましいだろう。例えば、ボックス番号「０１」のボックスには、「カラー両面ステープルプリンタ」という名称が付与されている。すなわち、この名称から、カラー印刷、両面印刷、およびステープル処理を実行する印刷デバイスであることが理解できる。
【００４６】
状態の欄６０２には、仮想的な印刷デバイスの動作状態を表す情報が表示される。動作状態としては、正常や異常（例：用紙なし、消耗品切れ、ステープル未装着）などがある。使用率の欄６０３には、仮想的な印刷デバイスの使用率に関する情報が表示される。使用率としては、例えば、当該フォルダに格納されている印刷データ（またはジョブ）の数などがある。プリントボタン６０４は、印刷を実行する仮想的な印刷デバイスを選択（決定）するためのボタンである。
【００４７】
図７は、実施形態に係るユーザインタフェースの他の例を示す図である。この例では、ボックス番号０２ないし０４に対応する仮想的な印刷デバイスが、それぞれ印刷可能な状態（正常）にあることが示されている。また、ボックス番号０１、０５および０６の仮想的な印刷デバイスは、用紙切れであることが示されている。なお、印刷処理を実行できない印刷デバイスについては、プリントボタン６０４が表示されていない。これによって、操作者は、印刷を実行できない印刷デバイスに印刷データを投入してしまうミスを防止できよう。なお、プリントボタン６０４を操作できないような形態で表示してもよい。
【００４８】
図８は、実施形態に係るユーザインタフェースのさらに他の例を示す図である。図６や図７の例では、通常のボックスと仮想的な印刷デバイスのボックスとを異なるアイコンとして表示することで、両者が区別できるようになっていた。一方で、図８の例では、さらに、仮想的な印刷デバイスが有する印刷機能をアイコンに反映させている。
【００４９】
例えば、ボックス番号０１の印刷デバイスによれば、本体の画像８０１に加え、ステープル装置の画像８０２が示されている。よって、ステープルを実行できる印刷デバイスであることを、操作者は簡単に理解できよう。また、ボックス番号０２の印刷デバイスによれば、本体の画像８０１に加え、手差し部の画像８０３が表示されている。よって、手差しにより給紙できることを操作者は理解できよう。
【００５０】
ＵＩ６００を表示するためのソースファイルは、ＷＥＢ制御モジュール４０５がリソース制御モジュール４４２から取得した情報を元に作成している。ホストコンピュータ１０１または携帯端末１０２のＣＰＵ２００は、ＵＩ６００のソースファイルをＷＥＢ制御モジュール４０５から受信して、ディスプレイ２０７に表示する。
【００５１】
ステップＳ５０２において、ネットワークプリンタのＣＰＵ３０１は、仮想的な印刷デバイスに対応して設けられたフォルダに、携帯端末１０２から受信した印刷データを格納する。フォルダは、例えば、外部メモリ３３２などに確保される。
【００５２】
なお、ネットワークプリンタのＣＰＵ３０１は、ＵＩ上のプリントボタン６０４の押し下げを検出すると、印刷データを選択するためのＵＩのソースファイルを携帯端末１０２に送信する。
【００５３】
図９は、実施形態に係る印刷データを選択するためのＵＩの一例を示す図である。携帯端末１０２のＣＰＵ２００は、ＵＩを通じて選択された印刷データをネットワークプリンタに送信する。
【００５４】
ステップＳ５０３において、ＣＰＵ３０１は、フォルダに格納された印刷データを、当該フォルダに対応する仮想的な印刷デバイスの印刷機能に従って印刷処理を実行する。例えば、プリントサーバ３００のＣＰＵ３０１は、プリントコントローラ３２０のＣＰＵ３２１に印刷命令を送出する。ＣＰＵ３２１は、受信した印刷命令に従ってプリントエンジン３３０を制御する。ＣＰＵ３２１は、印刷データが格納されているフォルダを特定し、当該フォルダに対応する印刷機能の組み合わせを特定する。ＣＰＵ３２１は、特定された印刷機能をプリントエンジン３３０に適用して印刷データを印刷処理する。
【００５５】
＜ＵＩの提示処理＞
図１０は、実施形態に係るＵＩ提示処理を示す例示的なフローチャートである。この処理は、上述のステップＳ５０１をサブルーチン化したものである。
【００５６】
ステップＳ１００１において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、携帯端末１０２からＵＩの提示要求（例：ボックス一覧の表示要求）を受信する。この要求は、例えば、特定のＷＥＢページに対するアクセス要求として実現されてもよい。
【００５７】
ステップＳ１００２において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、ボックス管理テーブル（以下、管理テーブル）を参照する。例えば、ＣＰＵ３０１は、プリントコントローラ３２０のＣＰＵ３２１（リソース制御モジュール４４２）に対して管理テーブルを要求する。ＣＰＵ３２１は、外部メモリ３３２（記憶部４３３）から管理テーブルを読み出して、ＣＰＵ３０１に送出する。
【００５８】
図１１は、実施形態に係る管理テーブルの一例を示す図である。この管理テーブル１１００には、各ボックスに関する情報が登録されている。ボックス番号１１０１は、各ボックスの識別情報である。名称１１０２は、各ボックスに付与される名称である。本実施形態では、仮想的な印刷デバイスとして使用されるボックスには、当該印刷デバイスの機能を表すような名称が採用されることが望ましい。名称から印刷機能の組み合わせを連想できれば、管理者以外の操作者であっても、どのような印刷デバイスであるかを理解しやすくなるからである。
【００５９】
管理テーブル１１００には、さらに、印刷デバイスにおいて使用される印刷機能の情報１１０３〜１１０６が登録されている。印刷機能の情報１１０３は、カラー印刷機能を使用するか、モノクロ印刷機能を使用するかを示している。印刷機能の情報１１０４は、両面印刷機能を使用するか、片面印刷機能を使用するかを示している。印刷機能の情報１１０５は、使用される給紙段（給紙カセットや給紙トレイなど）を示している。印刷機能の情報１１０６は、使用されるフィニッシャ（ステープル装置、穿孔装置、ソータなど）を示している。なお、管理テーブル１１００に登録されている情報は、ユーザインタフェース（図６〜図８）を作成する際に使用されてもよい。
【００６０】
ステップＳ１００３において、ＣＰＵ３０１は、プリントエンジン３３０の印刷機能の状態を表す状態情報を取得する。例えば、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、ＣＰＵ３２１（リソース制御モジュール４４２）に対して状態情報を要求する。ＣＰＵ３２１は、印刷機能の状態情報（例：カラー／モノクロの能力の有無、両面ユニットの有無、フィニッシャの有無および給紙段の搭載状況、並びにこれらの状態）をプリントエンジン３３０から取得する。プリントエンジン３３０には、両面ユニットの有無、フィニッシャの有無および給紙段の搭載状況などを検知するためのセンサーが含まれていてもよい。ＣＰＵ３２１は、取得した状態情報をＣＰＵ３０１に送出する。
【００６１】
ステップＳ１００４において、ＣＰＵ３０１は、ＵＩのソースファイルを作成する。例えば、ＣＰＵ３０１は、リソース制御モジュール４４２から取得した管理テーブル１１００や各印刷機能の状態情報をＵＩのソースファイルに反映させる。
【００６２】
例えば、ＣＰＵ３０１は、ボックス番号０１の印刷デバイスが、カラー印刷機能、両面印刷機能およびステープル機能を使用することを管理テーブル１１００から認識できる。また、ＣＰＵ３０１は、各印刷機能の状態情報から、ボックス番号０１の印刷デバイスの印刷機能を実際に使用できるか否かを判定できる。例えば、状態情報が「用紙なし」を示している場合、ＣＰＵ３０１は、ボックス番号０１の状態の欄６０２に「用紙なし」と表示されるようにソースファイルを作成する。なお、ボックス番号０２の印刷デバイスが使用する全て印刷機能が正常であれば、ＣＰＵ３０１は、状態の欄６０２に「正常」と表示されるようにソースファイルを作成する。
【００６３】
ステップＳ１００５において、ＣＰＵ３０１は、作成されたＵＩのソースファイルを携帯端末１０２に送信する。携帯端末１０２のＣＰＵ２００は、受信したソースファイルをＷＥＢブラウザによってディスプレイ２０７に表示する（図６、図７、図８など）。
【００６４】
＜印刷データの格納処理＞
図１２は、実施形態に係る印刷データの格納処理を示す例示的なフローチャートである。この処理は、上述のステップＳ５０２をサブルーチン化したものである。
【００６５】
ステップＳ１２０１において、プリントサーバ３００のＣＰＵ３０１（ＷＥＢ制御モジュール）は、携帯端末１０２のＷＥＢブラウザからボックスの選択要求を受信する。例えば、携帯端末１０２のＷＥＢブラウザに表示されているＵＩ（例：図６〜図８）において、いずれかのボックスまたは印刷デバイスに対応するプリントボタン６０４が押し下げられると、携帯端末１０２のＣＰＵ２００は、選択要求を送信する。ボックスの選択要求は、仮想的な印刷デバイスの選択要求と同義である。このようにして、操作者は、印刷の目的に応じてボックス（仮想的な印刷デバイス）を選択することができる。
【００６６】
ステップＳ１２０２において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、印刷データを選択するためのＵＩ（例：図９）のソースファイルを携帯端末１０２へ送信する。携帯端末１０２のＣＰＵ２００（ＷＥＢブラウザ）は、受信したソースファイルに基づき、印刷データを選択するためのＵＩをディスプレイ２０７に表示する。ＣＰＵ２００（ＷＥＢブラウザ）は、ＵＩ上で印刷データが選択されると、当該印刷データをプリントサーバ３００に送信する。
【００６７】
ステップＳ１２０３において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、携帯端末１０２から印刷データを受信する。
【００６８】
ステップＳ１２０４において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、受信した印刷データを、選択されたボックスの番号と対応付けて、文書テーブルに登録する。
【００６９】
図１３は、実施形態に係る文書テーブルの一例を示す図である。図からわかるように、受信した印刷データを、選択されたボックスの番号と対応付けられている。また、複数の印刷データが、単一のボックス番号に対応付けられていてもよい。なお、印刷データに関しては、絶対的なパス名または相対的なパス名を含めたファイル名が文書テーブルに格納されてもよい。
【００７０】
ステップＳ１２０５において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、受信した印刷データを印刷データ／プログラム記憶部４３３に記憶する。なお、印刷データ／プログラム記憶部４３３には、各フォルダに対応する記憶領域があらかじめ設けられているものとする。
【００７１】
＜印刷処理＞
図１４は、実施形態に係る印刷処理を示す例示的なフローチャートである。この処理は、上述のステップＳ５０３をサブルーチン化したものである。
【００７２】
ステップＳ１４０１において、ＣＰＵ３２１（リソース制御モジュール４４２）は、ボックスに登録されている印刷データを検出する。例えば、ＣＰＵ３２１は、文書テーブルを参照し、ボックスに登録されている印刷データがあるか否かを判定する。印刷データの登録されているボックスが存在すれば、ステップＳ１４０２へ進む。なお、印刷データの登録されているボックスが存在しなければ、ＣＰＵ３２１は、本印刷処理を終了する。文書テーブルを参照することで、印刷データの登録されているボックスの番号と、印刷データの名称とが特定される。
【００７３】
ステップＳ１４０２において、ＣＰＵ３２１は、印刷データの登録されているボックスに付与されている印刷機能を特定する。例えば、ＣＰＵ３２１は、ボックス管理テーブル（例：図１１）を参照することで、ボックス番号に対応する印刷機能を特定する。
【００７４】
ステップＳ１４０３において、ＣＰＵ３２１は、特定された印刷機能の動作状態を取得する。ＣＰＵ３２１は、プリントエンジン３３０に各印刷機能の状態を問い合わせる。
【００７５】
ステップＳ１４０４において、ＣＰＵ３２１は、特定された全ての印刷機能の動作状態に基づいて、各印刷機能が使用可能か否かを判定する。例えば、特定された印刷機能であるＡ３カセットにＡ３用紙がない場合、Ａ３カセットを使用するボックス（仮想的な印刷デバイス）は、使用不可と判定される。
【００７６】
特定された全ての印刷機能が使用可能であれば、ステップＳ１４０５に進み、ＣＰＵ３２１は、特定された全ての印刷機能を用いて印刷処理を実行する。例えば、ボックス番号０１のボックスに「Ｐｒｉｎｔ１．ｐｄｆ」という印刷データが格納されていれば、ラスタコントローラ３２８がＰｒｉｎｔ１．ｐｄｆをラスタデータに変換する。また、ボックス番号が０１であるので、ＣＰＵ３２１は、カラーの両面印刷およびステープル処理を実行するようプリントエンジン３３０に指示する。なお、ソフトウエア上は、リソース制御モジュール４４２が、プリントエンジン制御モジュール４２２に印刷データを渡す。プリントエンジン制御モジュール４２２は、必要なハードウエアを制御することで、特定された印刷機能を用いて印刷処理を実行する。
【００７７】
ステップＳ１４０６において、ＣＰＵ３２１は、プリントエンジン３３０から正常完了を表す信号を受信したか否かを判定する。例えば、印刷中にエラーが発生したことが原因で、印刷が正常に完了しなかった場合、ステップＳ１４１０に進む。正常に完了したのであれば、ステップＳ１４０７に進む。
【００７８】
ステップＳ１４０７において、ＣＰＵ３２１（リソース制御部モジュール４４２）は、印刷の完了した印刷データをボックスから削除する。さらに、ＣＰＵ３２１は、印刷の完了した印刷データの情報を文書テーブルからも削除する。これにより、印刷の完了していない印刷データだけが、ボックスに保持されることになる。
【００７９】
一方、特定されたいずれかの印刷機能を使用できなければ、ステップＳ１４１０に進み、ＣＰＵ３２１は、エラー処理を実行する。例えば、ＣＰＵ３２１は、印刷処理を禁止するとともに、ＣＰＵ３０１を通じて、印刷を実行できないことを表すメッセージを携帯端末１０２に送信してもよい。この場合、印刷データはそのままボックスに保持される。また、ＣＰＵ３２１は、当該印刷データを、印刷が可能な他のボックスに移動してもよい。
【００８０】
＜エラー処理（移動処理）＞
図１５は、実施形態に係るエラー処理の一例を示すフローチャートである。この処理は、上述のステップＳ１４１０をサブルーチン化したものである。この処理によって、エラーが原因で印刷されなかった印刷データ（ジョブ）を他のボックスに移動させることができる。これにより、他のボックスの印刷機能に応じて、当該印刷データを印刷することが可能となる。
【００８１】
ステップＳ１５０１において、ＣＰＵ３２１は、印刷されなかった印刷データを特定したエラー通知を送信するようＣＰＵ３０１に要求する。ＣＰＵ３０１は、印刷データを送信してきたユーザまたは携帯端末１０２を特定し、エラー通知を送信する。携帯端末１０２のＣＰＵ２００は、エラー通知を受信すると、ＷＥＢブラウザによりＵＩの提示要求をプリントサーバ３００に送信する。
【００８２】
ステップＳ１５０２において、プリントサーバ３００のＣＰＵ３０１は、携帯端末１０２からボックスを選択するためのＵＩの提示要求を受信する。ＣＰＵ３０１は、ボックスを選択するためのＵＩのソースファイルを作成して、携帯端末１０２に送信する。このＵＩの一例は、図６ないし８において説明した通りである。携帯端末１０２のＣＰＵ２００は、受信したソースファイルをＷＥＢブラウザにより表示する。ここで、ＣＰＵ２００は、いずれかのボックスが選択されたことを検出すると、ボックスの選択要求をプリントサーバ３００に送信する。なお、ボックスの選択要求は、ボックスに格納されている印刷データ（ジョブ）の一覧を表示するための要求である。
【００８３】
ステップＳ１５０３において、ＣＰＵ３０１は、ボックスの選択要求を受信する。さらに、ＣＰＵ３０１は、選択されたボックスに関する印刷データのリストを表示するためのＵＩのソースファイルを作成する。例えば、ＣＰＵ３０１は、選択されたボックスの番号に基づいて、文書テーブルを検索し、印刷データの名称などを取得する。
【００８４】
ステップＳ１５０４において、ＣＰＵ３０１は、選択されたボックスに関する印刷データのリストを表示するためのＵＩを携帯端末１０２に提示する。例えば、ＣＰＵ３０１は、リスト（ＵＩ）のソースファイルを携帯端末１０２に送信する。
【００８５】
図１６は、実施形態に係る印刷データのリスト（ＵＩ）の一例を示す図である。選択されたボックスを操作者が認識できるようにするために、ボックス番号１６００と、ボックス名称１６０１とが含まれている。また、ボックスに格納されている印刷データを選択するためのチェックボックス１６０２が設けられている。また、印刷データの名称１６０３もチェックボックス１６０２と対応付けて表示されている。プリントボタン１６０４は、チェックボックス１６０２にチェックが付された印刷データを再印刷するためのボタンである。移動／複製ボタン１６０５は、選択された印刷データを他のボックスに移動するためのボタンである。ＣＰＵ２００は、移動／複製ボタン１６０５の押し下げを検出すると、選択された印刷データについての移動／複製要求をプリントサーバ３００に送信する。
【００８６】
ステップＳ１５０５において、ＣＰＵ３０１は、携帯端末１０２から移動要求を受信したか否かを判定する。移動要求を受信した場合はステップＳ１５０６に進む。移動要求を受信しなかった場合は、印刷データをフォルダに保持したまま、本処理を終了する。この場合、プリントコントローラ３２０のＣＰＵ３２１は、所定時間後に、再印刷を実行することになろう。
【００８７】
ステップＳ１５０６において、ＣＰＵ３０１は、移動先を選択するためのＵＩを携帯端末１０２に提示する。例えば、ＣＰＵ３０１は、当該ＵＩのソースファイルを作成して、携帯端末１０２に送信する。なお、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、ＵＩを提示するために必要となる情報をＣＰＵ３２１（リソース制御モジュール４４２）に問い合わせてもよい。携帯端末１０２のＣＰＵ２００は、受信したソースファイルをＷＥＢブラウザにより表示することで、ＵＩを実現する。
【００８８】
図１７は、実施形態に係る移動先を選択するためのＵＩの一例を示す図である。移動決定ボタン１７０１が押し下げられると、携帯端末１０２のＣＰＵ２００は、決定された移動先を表す情報をプリントサーバ３００に送信する。
【００８９】
ステップＳ１５０７において、ＣＰＵ３０１は、決定された移動先の情報を受信すると、移動対象の印刷データを移動先として選択されたボックスに移動する。この場合、文書テーブルもＣＰＵ３２１によって更新されることはいうまでもない。なお、移動ではなく、複製が選択されたときは、当該印刷データは、他のボックスに書き込まれるとともに、元のフォルダにも保持される。
【００９０】
＜フォルダの設定処理＞
以下では、上述したフォルダの設定処理について説明する。ここでは、便宜上、携帯端末１０２を通じた設定処理について説明する。しかしながら、この設定処理は、ネットワークプリンタの操作パネル３３１を通じて実行されてもよい。さらに、この設定処理は、ホストコンピュータ１０１を通じて実行されてもよい。
【００９１】
図１８は、実施形態に係るボックスの設定（変更）処理を示す例示的なフローチャートである。ステップＳ１８０１において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、携帯端末１０２からＵＩの提示要求（例：ボックスの設定要求）を受信する。この要求は、例えば、特定のＷＥＢページに対するアクセス要求として実現されてもよい。
【００９２】
ステップＳ１８０２において、ＣＰＵ３０１（ＷＥＢ制御モジュール４０５）は、管理テーブル（例：図１１）を参照する。例えば、ＣＰＵ３０１は、プリントコントローラ３２０のＣＰＵ３２１（リソース制御モジュール４４２）に対して管理テーブルを要求する。ＣＰＵ３２１は、外部メモリ３３２（記憶部４３３）から管理テーブルを読み出して、ＣＰＵ３０１に送出する。
【００９３】
ステップＳ１８０３において、ＣＰＵ３０１は、プリントエンジン３３０（ＷＥＢ制御モジュール４０５）の印刷機能の状態を表す状態情報をＣＰＵ３２１（リソース制御モジュール４４２）から取得する。すなわち、ＣＰＵ３２１（リソース制御モジュール４４２）は、ネットワークプリンタに備えられる印刷機能を監視しているものとする。これによって、印刷機能の追加や削除が検出されることになる。
【００９４】
ステップＳ１８０４において、ＣＰＵ３０１は、ＵＩのソースファイルを作成する。例えば、ＣＰＵ３０１は、リソース制御モジュール４４２から取得した管理テーブル１１００や各印刷機能の状態情報を、ＵＩのソースファイルに反映させる。例えば、エラーにより使用不可能な印刷機能や未装着の印刷機能については、操作者が選択できないような状態でＵＩに表示されるようにソースファイルが作成される。このようにして、仮想的な印刷デバイスおよびフォルダの内容が更新されることになる。ところで、一方で、印刷機能に関して複数の選択肢が存在する場合、プルダウメニューによっていずれかの選択肢を選択できるようにしてもよい。
【００９５】
ステップＳ１８０５において、ＣＰＵ３０１は、作成されたＵＩのソースファイルを携帯端末１０２に送信する。携帯端末１０２のＣＰＵ２００は、受信したソースファイルをＷＥＢブラウザによってディスプレイ２０７に表示する。
【００９６】
図１９は、実施形態に係るボックス設定ＵＩの一例を示す図である。各ボックスを区別できるようにするために、管理テーブルから読み出されたボックスの番号とボックスの名称１９０１が、ボックスごとに表示される。また、この例では、設定可能な印刷機能として、カラー／モノクロの属性、両面／片面の属性、給紙段の属性、フィニッシャの属性が例示されている。各属性は、プルダウンメニュー１９０２ないし１９０５によって択一的に選択される。
【００９７】
終了ボタン１９０６が押し下げられると、終了指示が携帯端末１０２からプリントサーバ３００に送信される。一方、適用ボタン１９０７が押し下げられると、変更後の各属性を識別するための情報とともに、変更内容の適用要求が携帯端末１０２からプリントサーバ３００に送信される。
【００９８】
図２０は、実施形態に係るボックス設定ＵＩの他の例を示す図である。とりわけ、この例では、使用不可能な状態にある印刷機能が存在する場合のＵＩを示している。例えば、ボックス１によれば、ステープル機能がグレーアウト表示されている（２００１）。また、ボックス２によれば、排紙ビン２がグレーアウト表示されている（２００２）。よって、ステープル機能および排紙ビン２が、それぞれ使用できないことを携帯端末１０２の操作者に認識させることができよう。
【００９９】
図２１は、実施形態に係るボックス設定ＵＩのさらに他の例を示す図である。とりわけ、この例では、ボックス２についてのフィニッシャについての機能を、プルダウメニュー２１０１から選択できることが示されている。
【０１００】
ステップＳ１８０６において、ＣＰＵ３０１は、携帯端末１０２からフォルダの設定の変更要求を受信する。ステップＳ１８０７において、ＣＰＵ３０１は、ＵＩを通じて携帯端末１０２により変更された内容を管理テーブルに反映させることで、管理テーブルを更新する。
【０１０１】
以上説明したように本実施形態の作用効果について概括する。印刷装置（例：ネットワークプリンタ１０３〜１０５）に対して印刷を指示するためのユーザインタフェースにおいて、印刷装置が有する１以上の印刷機能の組み合わせごとに仮想的な印刷デバイスを、印刷装置が端末装置に提示する。さらに、印刷装置は、仮想的な印刷デバイスに対応して設けられたフォルダを記憶部（例：外部メモリ３３２）に記憶する。さらに、印刷装置は、フォルダに格納された印刷データを、フォルダに対応する仮想的な印刷デバイスの印刷機能に従って印刷する。よって、管理者以外の操作者であっても、複数の印刷機能を組み合わせた印刷処理を、比較的に簡単な操作によって実行できる。
【０１０２】
また、本実施形態によれば、印刷装置は、仮想的な印刷デバイスをフォルダとしてユーザインタフェース上に提示してもよい。よって、フォルダ機能を有する既存の印刷装置に対しても本発明を適用しやすくなる。
【０１０３】
また、本実施形態によれば、印刷装置は、仮想的な印刷デバイスに関する印刷機能の名称に基づいて、仮想的な印刷デバイスまたはフォルダの名称を提示する（例：図６〜図８）。よって、操作者は、どのフォルダ（仮想的な印刷デバイス）が、どのような印刷機能を組み合わせたものであるかを容易に判断できる。
【０１０４】
また、本実施形態によれば、ＣＰＵ３０１は、仮想的な印刷デバイスごとの動作状態を取得する。さらに、ＣＰＵ３０１は、仮想的な印刷デバイスごとの動作状態に関する情報をユーザインタフェース上で提示する。よって、操作者は、ＵＩを通じて、仮想的な印刷デバイスの状態を視覚的に把握できるようになる。
【０１０５】
また、仮想的な印刷デバイスの印刷機能を使用できるか否かを動作状態としてＵＩ上に提示してもよい。仮想的な印刷デバイスの動作状態もユーザインタフェース上に表示することで、操作者は、すぐに印刷を実行できる仮想的な印刷デバイスを一目瞭然に認識できよう。また、操作者が、使用できない仮想的な印刷デバイスに印刷データを投入してしまうミスを抑制できよう。
【０１０６】
さらに、ＣＰＵ３０１やＣＰＵ３２１は、仮想的な印刷デバイスが印刷を実行できない場合に、仮想的な印刷デバイスによる印刷を禁止することが好ましい。例えば、印刷データがフォルダに格納された後に、当該フォルダの印刷機能にエラーが発生することもある。この場合は、印刷を禁止するように制御することで、ジャムなどを効果的に抑制できよう。
【０１０７】
また、本実施形態によれば、ＣＰＵ３２１は、正常に印刷された印刷データをフォルダから削除し、一方で、正常に印刷されなかった印刷データをフォルダに保持することが望ましい。正常に印刷された印刷データをフォルダから削除することで、外部メモリ３３２を効率よく使用できる。一方で、常に印刷されなかった印刷データまで削除してしまうと、操作者にとっては印刷データを再度格納せねばならず不便であろう。よって、正常に印刷されなかった印刷データをフォルダに保持することで、所定時間後の再印刷を期待できよう。所定時間後には、エラーのあった印刷機能が回復している可能性もあるからである。例えば、用紙切れなどであれば、比較的簡単に回復されるからである。
【０１０８】
本実施形態によれば、ＣＰＵ３０１またはＣＰＵ３２１は、正常に印刷されなかった印刷データを他のフォルダに格納することで、他のフォルダに対応する仮想的な印刷デバイスにより印刷データを印刷させてもよい。例えば、操作者は、すぐに印刷を希望することもある。よって、フォルダ間での印刷データの移動を認めることで、印刷データを再度格納することなく、即座に、印刷を実行できよう。
本実施形態によれば、ＣＰＵ３０１は、他のフォルダとして選択可能な１以上の候補をユーザインタフェース（例：図１７）上に提示してもよい。ＵＩでは、印刷機能の組み合わせの異なる種々の仮想的な印刷デバイス（フォルダ）が表示されているので、操作者は、目的に応じて他の印刷デバイスを選択しやすいであろう。
【０１０９】
本実施形態によれば、ＣＰＵ３０１やＣＰＵ３２１は、印刷装置に備えられる印刷機能を監視する。さらに、ＣＰＵ３０１やＣＰＵ３２１は、印刷機能が追加または削除されると、仮想的な印刷デバイスおよびフォルダの内容を更新する。これによって、ＵＩ上に表示される仮想的な印刷デバイスおよびフォルダの内容を常に最新のものとすることができる。よって、操作者が、使用できない仮想的な印刷デバイスに印刷データを投入していますミスを抑制できるであろう。
【０１１０】
なお、ＣＰＵ３２１は、ＷＥＢサーバプログラムを実行することで、ＵＩを端末装置に提示することが望ましい。今日において、ほとんどのＰＣや携帯端末には、ＷＥＢブラウザが搭載されているので、ＷＥＢベースの技術によってＵＩを実現することが望ましい。この場合、ＰＣや携帯端末の改編作業を限りなく０にすることが可能となる。
【０１１１】
［他の実施形態］
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、ネットワークプリンタ１０３〜１０５は、プリントサーバ３００とプリントコントローラ３２０とが、複数の装置によって実現されてもよい。すなわち、プリントサーバ３００は、印刷装置が有する１以上の印刷機能の組み合わせごとに仮想的な印刷デバイスを端末装置に提示することになる。なお、プリントサーバ３００のＲＡＭ２０２にフォルダが確保されてもよい。
【０１１２】
また、上述の実施形態では、携帯端末１０２を端末装置として用いたが、プリンタドライバをインストールされていないホストコンピュータ１０１が端末装置として用いられてもよい。この場合、プリンタドライバをインストールされていないホストコンピュータ１０１であっても、１以上の印刷条件を組み合わせた印刷処理を実行できる利点がある。
【０１１３】
また、上述の実施形態では、ＷＥＢベースの技術を利用したが、同様の効果が得られる専用のコンピュータプログラムを用いて実現してもよい。但し、ＷＥＢベースの技術は、広くＰＣや携帯電話機に普及しているため、より好ましいだろう。
【０１１４】
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
【０１１５】
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【０１１６】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１１７】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１１８】
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。すなわち、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の構成要件となる場合がある。
【０１１９】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
【０１２０】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
【０１２１】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
【図面の簡単な説明】
【０１２２】
【図１】実施形態に係る印刷システムの全体構成を示すブロック図である。
【図２】実施形態に係る端末装置の例示的なブロック図である。
【図３】実施形態に係るネットワークプリンタの例示的なブロック図である。
【図４】実施形態に係るネットワークプリンタを制御するための制御プログラムの例示的なブロック図である。
【図５】実施形態に係るユーザインタフェースを通じた印刷処理を示す例示的なフローチャートである。
【図６】実施形態に係るユーザインタフェースの一例を示す図である。
【図７】実施形態に係るユーザインタフェースの他の例を示す図である。
【図８】実施形態に係るユーザインタフェースのさらに他の例を示す図である。
【図９】実施形態に係る印刷データを選択するためのＵＩの一例を示す図である。
【図１０】実施形態に係るＵＩ提示処理を示す例示的なフローチャートである。
【図１１】実施形態に係る管理テーブルの一例を示す図である。
【図１２】実施形態に係る印刷データの格納処理を示す例示的なフローチャートである。
【図１３】実施形態に係る文書テーブルの一例を示す図である。
【図１４】実施形態に係る印刷処理を示す例示的なフローチャートである。
【図１５】実施形態に係るエラー処理の一例を示すフローチャートである。
【図１６】実施形態に係る印刷データのリスト（ＵＩ）の一例を示す図である。
【図１７】実施形態に係る動先を選択するためのＵＩの一例を示す図である。
【図１８】実施形態に係るボックスの設定（変更）処理を示す例示的なフローチャートである。
【図１９】実施形態に係るボックス設定ＵＩの一例を示す図である。
【図２０】実施形態に係るボックス設定ＵＩの他の例を示す図である。
【図２１】実施形態に係るボックス設定ＵＩのさらに他の例を示す図である。
【符号の説明】
【０１２３】
１０１  ホストコンピュータ
１０２  携帯端末
１０３〜１０５  ネットワークプリンタ
【図１】
0004756998.tif 000002
【図２】
0004756998.tif 000003
【図３】
0004756998.tif 000004
【図４】
0004756998.tif 000005
【図５】
0004756998.tif 000006
【図６】
0004756998.tif 000007
【図７】
0004756998.tif 000008
【図８】
0004756998.tif 000009
【図９】
0004756998.tif 000010
【図１０】
0004756998.tif 000011
【図１１】
0004756998.tif 000012
【図１２】
0004756998.tif 000013
【図１３】
0004756998.tif 000014
【図１４】
0004756998.tif 000015
【図１５】
0004756998.tif 000016
【図１６】
0004756998.tif 000017
【図１７】
0004756998.tif 000018
【図１８】
0004756998.tif 000019
【図１９】
0004756998.tif 000020
【図２０】
0004756998.tif 000021
【図２１】
0004756998.tif 000022