(57)【要約】      （修正有）【課題】フォルダに紐付く印刷設定ファイルを用いて印刷ファイルを印刷する画像形成システムにおいて、様々な装置から利用可能な印刷設定ファイルの作成環境を提供する。【解決手段】ウェブブラウザを利用可能なクライアント装置１０２、１０３、１０４と、シェアフォルダを提供するプリンタ１０１と、が通信可能に接続された印刷システムにおいて、印刷設定画面をウェブブラウザ１５３に表示し、ウェブブラウザで設定された印刷設定の設定情報およびフォルダの指定情報に基づき、指定情報の示すフォルダに設定情報に基づく設定ファイルを格納する。【選択図】図１
2019212057.tif 000002
【特許請求の範囲】
【請求項１】
ウェブブラウザを利用可能な情報処理装置と、前記情報処理装置からアクセス可能なフォルダを提供する画像形成装置と、が通信可能に接続された画像形成システムにおいて、
前記情報処理装置から前記画像形成装置へ、画面情報を送信する手段と、
前記情報処理装置のウェブブラウザにおいて、前記画面情報に基づき、印刷設定が可能な指定画面を出力する手段と、
前記情報処理装置から前記画像形成装置へ、前記ウェブブラウザにおいて設定された印刷設定の設定情報、およびフォルダの指定情報を送信する手段と、
前記画像形成装置において、前記設定情報に基づいて設定ファイルを生成し前記指定情報の示すフォルダに紐づける手段と、
前記設定ファイルを用いて印刷ファイルを印刷する手段と、を有することを特徴とする画像形成システム。
【請求項２】
ウェブブラウザを利用可能な情報処理装置と通信可能で且つ前記情報処理装置からアクセス可能なフォルダを提供する画像形成装置において、
シートに画像を形成する印刷処理を実行可能な画像形成デバイスと、
印刷設定が可能な設定画面を前記ウェブブラウザに出力させるべく、前記設定画面の基となる画面情報を出力する手段と、
前記画像形成装置において、前記設定情報に基づいて設定ファイルを生成し前記指定情報の示すフォルダに紐づける手段と、
前記設定ファイルおよび印刷ファイルに基づく印刷処理を前記画像形成デバイスに実行させる手段と、を有することを特徴とする画像形成装置。
【請求項３】
前記紐づける手段は、前記設定ファイルを前記フォルダに格納することで紐づけを行うことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記設定情報はマークアップ言語で記述されていることを特徴とする請求項２または３に記載の画像形成装置。
【請求項５】
前記設定ファイルはＪＤＦ形式のファイルであることを特徴とする請求項２乃至４のいずれか１項に記載の画像形成装置。
【請求項６】
前記印刷ファイルはＰＤＦ形式のファイルであることを特徴とする請求項２乃至５のいずれか１項に記載の画像形成装置。
【請求項７】
前記指定情報はマークアップ言語で記述されていることを特徴とする請求項２乃至６のいずれか１項に記載の画像形成装置。
【請求項８】
印刷設定の紐付くフォルダを指定するための画面を前記情報処理装置に表示させるべく、前記画面の画面情報を出力する手段を有することを特徴とする請求項２乃至７のいずれか１項に記載の画像形成装置。
【請求項９】
印刷ファイルを指定するための画面を前記情報処理装置に表示させるべく、前記画面の画面情報を出力する手段を有することを特徴とする請求項２乃至８のいずれか１項に記載の画像形成装置。
【請求項１０】
前記印刷設定で指定される項目は、カラー・モノクロ、部数、シートサイズ、シート種、片面・両面、製本、開き方向、中綴じ、ソートモード、複数部排出時の仕分け、シフト排紙時の部数単位指定、パンチ、綴じ処理、折り処理のうちの少なくともいずれか１つの項目を含むことを特徴とする請求項２乃至９のいずれか１項に記載の画像形成装置。
【請求項１１】
ウェブブラウザを利用可能な情報処理装置と通信可能で且つ前記情報処理装置からアクセス可能なフォルダを提供する画像形成装置であって、シートに画像を形成する印刷処理を実行可能な画像形成デバイスを備える画像形成装置の制御方法において、
印刷設定が可能な設定画面を前記ウェブブラウザに出力させるべく、前記設定画面の基となる画面情報を出力する工程と、
前記画像形成装置において、前記設定情報に基づいて設定ファイルを生成し前記指定情報の示すフォルダに紐づける工程と、
前記設定ファイルおよび印刷ファイルに基づく印刷処理を前記画像形成デバイスに実行させる工程と、を有することを特徴とする制御方法。
【請求項１２】
シートに画像を形成する印刷処理を実行可能な画像形成装置と通信可能な情報処理装置において、
前記画像形成装置から画面情報を取得する手段と、
前記画面情報に基づき、ウェブブラウザを用いて、印刷設定が可能な設定画面を出力する手段と、
前記ウェブブラウザで設定された印刷設定に基づく設定ファイルを指定のフォルダに紐づけさせるべく、前記印刷設定の設定情報およびフォルダの指定情報を前記画像形成装置に送信する手段と、
前記設定ファイルを用いる印刷処理を前記画像形成装置に実行させるべく、前記設定ファイルが紐付くフォルダの指定情報、および印刷ファイルを前記画像形成装置に送信する手段と、を有することを特徴とする情報処理装置。
【請求項１３】
前記設定情報は、前記設定ファイルの格納先を示す情報であることを特徴とする請求項１２に記載の情報処理装置。
【請求項１４】
前記設定情報はマークアップ言語で記述されていることを特徴とする請求項１２または１３に記載の情報処理装置。
【請求項１５】
前記設定ファイルはＪＤＦ形式のファイルであることを特徴とする請求項１２乃至１４のいずれか１項に記載の情報処理装置。
【請求項１６】
前記印刷ファイルはＰＤＦ形式のファイルであることを特徴とする請求項１２乃至１５のいずれか１項に記載の情報処理装置。
【請求項１７】
前記設定情報はマークアップ言語で記述されていることを特徴とする請求項１２乃至１６のいずれか１項に記載の情報処理装置。
【請求項１８】
画像形成装置から送信された画面情報に基づいて、印刷設定の紐付くフォルダを指定するための画面を表示部に表示させる手段を有することを特徴とする請求項１２乃至１７のいずれか１項に記載の情報処理装置。
【請求項１９】
印刷ファイルを指定するための画面を前記情報処理装置に表示させるべく、前記画面の画面情報を出力する手段を有することを特徴とする請求項１２乃至１８のいずれか１項に記載の情報処理装置。
【請求項２０】
前記印刷設定で指定される項目は、カラー・モノクロ、部数、シートサイズ、シート種、片面・両面、製本、開き方向、中綴じ、ソートモード、複数部排出時の仕分け、シフト排紙時の部数単位指定、パンチ、綴じ処理、折り処理のうちの少なくともいずれか１つの項目を含むことを特徴とする請求項１２乃至１９のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシート（用紙）に画像形成（印刷）する画像形成装置、特に外部装置からアクセス可能なフォルダを備える画像形成装置に関する。この画像形成装置は、プリンタやファクシミリ等の各装置として用いられる。
【背景技術】
【０００２】
従来、複合機ならびにプリンタ等の画像形成装置に対して印刷データを投入する方法として、ホットフォルダを用いた投入方法が知られている。ホットフォルダは、アプリケーションによって監視されたフォルダであり、このフォルダにファイルが格納されると自動的にプリンタに印刷データを転送される。また、このホットフォルダ内に印刷設定ファイルを格納しておき、印刷ファイルの転送時に印刷設定情報を付与する仕組みも知られている。
【０００３】
昨今では、画像形成装置側が提供する共有フォルダをホットフォルダとして活用する画像形成システムが検討されている。このシステムは、クライアント装置側に特別なアプリケーションを設けずに済むため、様々なクライアント装置からの利用が期待できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２１９９２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ホットフォルダ内に配置される印刷設定ファイルの記述内容は、一般的なユーザにとって馴染みの深いものではない。そのため、印刷設定ファイルの作成を補助する仕組みを設けることが望ましい。特に、画像形成装置が提供する共有フォルダをホットフォルダとして利用する場合は、様々なクライアント装置からの利用が想定される。そのため、クライアント装置の装置構成や利用環境による影響を受けにくい仕組みで、印刷設定ファイルの作成を補助する仕組みを提供することが望ましい。
【０００６】
本発明の目的は、フォルダに紐付く印刷設定ファイルを用いて印刷ファイルを印刷する画像形成システムにおいて、様々な装置から利用可能な印刷設定ファイルの作成環境を提供することである。
【課題を解決するための手段】
【０００７】
本発明は、ウェブブラウザを利用可能な情報処理装置と、前記情報処理装置からアクセス可能なフォルダを提供する画像形成装置と、が通信可能に接続された画像形成システムにおいて、前記情報処理装置から前記画像形成装置へ、画面情報を送信する手段と、前記情報処理装置のウェブブラウザにおいて、前記画面情報に基づき、印刷設定が可能な指定画面を出力する手段と、前記情報処理装置から前記画像形成装置へ、前記ウェブブラウザにおいて設定された印刷設定の設定情報、およびフォルダの指定情報を送信する手段と、前記画像形成装置において、前記設定情報に基づいて設定ファイルを生成し前記指定情報の示すフォルダに紐づける手段と、前記設定ファイルを用いて印刷ファイルを印刷する手段と、を有することを特徴とするものである。
【発明の効果】
【０００８】
本発明によれば、フォルダに紐付く印刷設定ファイルを用いて印刷ファイルを印刷する画像形成システムにおいて、様々な装置から利用可能な印刷設定ファイルの作成環境を提供することである。
【図面の簡単な説明】
【０００９】
【図１】図１（ａ）は印刷システムの利用環境を示す図である。図１（ｂ）は機器内蔵印刷システムのシステムフローを示す図である。
【図２】機器内蔵印刷システムの機能構成を示す図である。
【図３】図３（ａ）はプリンタのハードフェア構成を示す図である。図３（ｂ）はプリンタのソフトウェア構成を示す図である。
【図４】図４（ａ）はクライアント装置のハードフェア構成を示す図である。図４（ｂ）はクライアント装置のソフトウェア構成を示す図である。
【図５】図５（ａ）は機器内蔵ホットフォルダの利用環境の階層構造を示す図である。図５（ｂ）は機器内蔵ホットフォルダをファイルシステムで確認した様子を示す図である。
【図６】図６（ａ）はＷＥＢページのログイン画面を示す図である。図６（ｂ）はＷＥＢページの基本画面を示す図である。
【図７】図７（ａ）はＷＥＢページのフォルダ作成画面を示す図である。図７（ｂ）はＷＥＢページの非ホットフォルダ画面を示す図である。
【図８】図８（ａ）はＷＥＢページの印刷設定画面（上）を示す図である。図８（ｂ）はＷＥＢページの印刷設定画面（下）を示す図である。
【図９】図９（ａ）はＷＥＢページのホットフォルダ画面を示す図である。図９（ｂ）はＷＥＢページの印刷設定確認画面を示す図である。
【図１０】図１０（ａ）はＷＥＢページ上のホットフォルダにファイルを投入する様子を示す図である。図１０（ｂ）はＷＥＢページのファイル投入後画面を示す図である。
【図１１】ＷＥＢページのエラー画面を示す図である。
【図１２】図１２（ａ）は印刷設定データの構成を示す図である。図１２（ｂ）はＪＤＦファイルの構成を示す図である。
【図１３】ウェブブラウザを実行するクライアント側の処理フローを説明するための図である。
【図１４】ファイル送信処理の詳細フローを説明するための図である。
【図１５】ジョブ設定作成処理の詳細フローを説明するための図である。
【図１６】ジョブ設定確認処理の詳細フローを説明するための図である。
【図１７】フォルダ操作処理の詳細フローを説明するための図である。
【図１８】プリンタ側の処理フローを説明するための図である。
【図１９】印刷ジョブ生成処理の詳細フローを説明するための図である。
【図２０】ジョブ設定作成処理の詳細フローを説明するための図である。
【図２１】ジョブ設定確認処理の詳細フローを説明するための図である。
【図２２】フォルダ操作処理の詳細フローを説明するための図である。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について実施例と図面を用いて具体的に説明する。なお、本発明の範囲は実施例に記載の構成に限定されるものではない。目的の効果と同様の効果を得ることができれば構成の一部または全部を均等物に置き換えてもよい。
【００１１】
（実施例）
本実施例では、機器内蔵ホットフォルダを用いた印刷システム１を例に本発明の説明を行う。なお、システム全体について説明した後に各構成の詳細説明していく。
【００１２】
＜システム利用環境＞
まず、本実施例のシステム利用環境について説明する。印刷システム１（画像形成システム）の利用環境は例えば図１に示す通りである。図１（ａ）は印刷システムの利用環境を示す図である。
【００１３】
図１（ａ）に示すように、印刷システム１の利用環境は、プリンタ１０１、ＰＣ１０２、１０３、携帯端末１０４を備える。プリンタ１０１とＰＣ（１０２，１０３）はネットワーク１００を介して通信可能に接続されている。また、プリンタ１０１と携帯端末１０４は、ネットワーク１００と無線ＬＡＮアクセスポイント１０５を介して通信可能に接続されている。
【００１４】
プリンタ１０１は、シート（用紙）に画像形成（印刷）を行う画像形成装置（印刷装置）である。プリンタ１０１は、ＭＦＰであってもＳＦＰであってもよい。ＭＦＰである場合、外部装置から受信した印刷データに基づいて印刷する印刷機能や、原稿から読み取った画像を印刷するコピー機能等の複数の機能を有する。
【００１５】
ＰＣ１０２、ＰＣ１０３、携帯端末１０４は、プリンタ１０１に対してデータを送信可能なクライアント装置（情報処理装置）である。ＰＣ１０２、ＰＣ１０３、携帯端末１０４はオペレーティングシステムの種類やバージョン等が多種多様に異なる。したがって、プリンタ１０１への印刷データの送信環境をアプリケーションプログラムで実現しようとした場合、それぞれの装置のシステム環境にあわせてアプリケーションプログラムを用意する必要がある。本実施例では、印刷データの送信環境をプリンタ１０１が提供するＷＥＢページによって実現する。そのため、各クライアント装置は、ＷＥＢブラウザさえ有していればプリンタ１０１に印刷データを送信することができる。以降では、特別に区別する必要がない場合、ＰＣ１０２、ＰＣ１０３、携帯端末１０４についてクライアント装置（１０２、１０３、１０４）と総称する。
【００１６】
＜システムフロー＞
次に印刷システム１の利用時の処理フローを説明する。説明にあたり、印刷システムを複数のサブシステムに分解し、これらサブシステム間でやりとりされる情報をフローで示す。図１（ｂ）は機器内蔵ホットフォルダシステムのシステムフローを示す図である。図１（ｂ）において、ユーザ１０６はクライアント装置（１０２，１０３，１０４）の操作者であり、機器内蔵ホットフォルダ機能の利用者である。ユーザ１０６のサブシステムはユーザ操作１５２である。ユーザ操作１５２には、機器内蔵ホットフォルダ利用時のユーザの役割が記載される。
【００１７】
操作部１５３は、ウェブブラウザを実行するクライアント装置（１０２，１０３，１０４）によって提供されるサブシステムである。操作部１５３では、ウェブブラウザの画面遷移、ならびにプリンタ１０１とのデータ送受信、ＪＡＶＡ（登録商標）スクリプトなどの実行に関する処理が行われる。
【００１８】
プリンタ１０１は３つのサブシステムに分解される。すなわち、ウェブサーバ部１５４、ファイルシステム部１５５、プリント制御部１５６に示す３つのサブシステムである。ウェブサーバ部１５４は、機器内蔵ホットフォルダに関するウェブページ情報を提供するサブシステムである。ファイルシステム部１５５は、プリンタ１０１が提供する共有フォルダならびにファイルを外部装置に公開するための処理を実行するサブシステムである。プリント制御部１５６は、機器内蔵ホットフォルダ機能により取得されたファイルに基づき印刷ジョブを登録し、実行するサブシステムである。
【００１９】
印刷システム１は次のようにして利用される。まず、ユーザは操作部１５３のウェブブラウザに対し、操作の開始を指示する（ステップ１１１、以後Ｓ１１１のように記する）。具体的には、特定のウェブアドレスを入力し、開始ボタンをして、指定された画面に遷移する指示を行う。
【００２０】
指示を受け付けた操作部１５３は、プリンタ１０１が備えるウェブサーバ部１５４に対してアクセスする（Ｓ１１２）。アクセス要求を受け付けたウェブサーバ部１５４は、当アクセスを行ったユーザ１０６のユーザ認証処理を実行する。ここでは、認証処理が正しく行われた状態を想定し、その詳細な説明を省略する。
【００２１】
認証が成功すると、ウェブサーバ部１５４は、特定フォルダのディレクトリ情報を取得するためにファイルシステム部１５５に問い合わせをおこなう（Ｓ１１３）。
【００２２】
ファイルシステム部１５５は、問い合わせに対する応答をとして、ディレクトリ情報を返却する（Ｓ１１４）。
【００２３】
ウェブサーバ部１５４は、ディレクトリ情報に基づきページ情報を生成し、操作部１５３に出力する（Ｓ１１５）。
【００２４】
ページ情報を取得した操作部１５３は、ページ情報に基づきページ画面を生成し、ユーザ１０６に提示する（Ｓ１１６）。
【００２５】
ページ画面を確認したユーザ１０６は、ホットフォルダの作成処理を指示し、ホットフォルダに対して紐づける印刷機能の設定処理を行う（Ｓ１１７）。なお、設定処理にともない行われる画面の更新処理およびサブシステム間の情報のやりとりの説明は省略する。
【００２６】
指示を受け付けると、操作部１５３は、登録指示された印刷設定情報をウェブサーバ部１５４に出力する（Ｓ１１８）。
【００２７】
ウェブサーバ部１５４は、印刷設定情報に基づき設定ファイルを取得して、ファイルシステム部１５５の指定されたディレクトリ内に格納させる（Ｓ１１９）。これにより、設定ファイルが格納されたフォルダはホットフォルダとして機能するようになる。
【００２８】
このホットフォルダに対して、ユーザ１０６は印刷ファイルの投入操作を行う（Ｓ１２０）。ファイルの投入操作は、ウェブブラウザに対してファイルをドラッグ＆ドロップすることで実現される。印刷ファイルの投入操作を検知した操作部１５３は、印刷ファイルとフォルダパス情報（格納先情報、フォルダの指定情報）をウェブサーバ部１５４に送信する（Ｓ１２１）。
【００２９】
ホットフォルダ印刷を検知したウェブサーバ部１５４は、フォルダパス情報の示すフォルダに対して印刷ファイルを出力する（Ｓ１２２）。これにより、ファイルシステム部１５５の指定のフォルダに印刷ファイルが格納される。
【００３０】
また、これにともない、ウェブサーバ部１５４は、ホットフォルダ印刷の利用通知をプリント制御部１５６に出力する（Ｓ１２３）。通知を受け付けたプリント制御部１５６は、印刷ファイルおよび格納先ホットフォルダに対応付いた印刷設定ファイルをファイルシステム部１５５に要求し（Ｓ１２４）、取得する（Ｓ１２５）。プリント制御部１５６は、取得した印刷ファイルおよび印刷設定ファイルに基づき印刷キューに登録する。登録された印刷ジョブの順番になると印刷処理が実行される（Ｓ１２６）。こうして、画像の形成されたシートがユーザに成果物として提供される（Ｓ１２７）。
【００３１】
本実施例は、上述したステップのうち、Ｓ２０７からＳ２０９までの一連の処理において、特に特徴的な構成を有する。すなわち、本実施例では、機器内蔵ホットフォルダに紐づける印刷設定ファイルの作成指示をクライアント装置のウェブブラウザ上から行うことができる。ウェブブラウザに表示される設定画面は、チェックボックス等で印刷設定を指定するものであり、印刷設定ファイルの作成指示を容易に行うことが出来る。このように、本実施例によれば、従来のホットフォルダ機能から、より利便性の高まったホットフォルダ機能の提供することができる。以上がホットフォルダ機能の使用に伴うシステムフローに関する説明である。
【００３２】
＜システム構成＞
次に、印刷システム１のシステム構成について説明する。図２はホットフォルダ印刷システムの機能構成を示す図である。図２に示すように印刷システム１は、複数の機能モジュールの集合で表すことができる。各モジュールはハードウェアで実現してもよいし、ソフトウェアで実現してもよい。また、一部の機能モジュールを外部サーバ（不図示）に配置し、この外部サーバと通信することで機能を実現してもよい。
【００３３】
印刷システム１は、前述した操作部１５３、ウェブサーバ部１５４、ファイルシステム部１５５、プリント制御部１５６、印刷部２１４、認証部２０４等を備える。
【００３４】
操作部１５３は、ＵＩ部２０１、ブラウザアプリ部２０２、リモートファイルシステム部２０３を含む。
【００３５】
ＵＩ部２０１は、画像情報の表示ならびにデータの入出力指示、操作指示を受け付ける手段を提供するために設けられた機能部である。ユーザの操作内容は、ブラウザアプリ部２０２やリモートファイルシステム部２０３に反映される。
【００３６】
ブラウザアプリ部２０２は、ＵＩ部２０１上のウィンドウ画面にウェブコンテンツを表示することによって画面情報を提示する機能部である。ブラウザアプリ部２０２は、後述するウェブサーバ部１５４と情報の送受信処理をおこなう。ブラウザアプリ部２０２からＵＩ部２０１には主に画面情報が提供される。
【００３７】
リモートファイルシステム部２０３は、クライアント装置が備えるファイルシステム機能を用いてプリンタ１０１内のフォルダおよびファイルを操作するための機能部である。リモートファイルシステム部２０３は、共有設定部２１０の設定情報に基づくアクセス権限のもと、ファイル管理部２１１にアクセスし各種操作をおこなう。リモートファイルシステム部２０３と共有設定部２１０の間では共有設定情報のやり取りが行われる。なお、リモートファイルシステム機能を利用すると具体的には次のような操作が可能である。フォルダの階層の情報、パスの情報、フォルダ配下のサブフォルダやファイルのリスト情報取得、フォルダ作成／削除処理、ファイルの作成／削除処理等のファイルシステム由来の処理の実行。
【００３８】
また、リモートファイルシステム部２０３の機能を用いて、ファイル管理部２１１の管理下にあるフォルダにファイルを投入してもよい。例えば、ＰＤＦ形式のファイル等の印刷ファイルをホットフォルダに投入してもよい。また、共有フォルダ内にＪＤＦ形式のファイルを投入し、ホットフォルダとして利用可能にしてもよい。ただし、本実施例では、ＷＥＢページを用いたホットフォルダの利用方法について着目して説明する。そのため、ファイルシステムを用いたホットフォルダ機能の利用方法については詳細な説明を省略する。
【００３９】
ファイルシステム部１５５は、プリンタ１０１が提供する共有フォルダならびにファイルを外部装置に公開するための処理を実行する機能部である。すなわち、シェアフォルダ、共有フォルダの管理をおこなう機能部である。ファイルシステム部１５５は、共有設定部２１０、ファイル管理部２１１を備える。ファイル管理部２１１は、プリンタ１０１内の記憶領域に設けられたフォルダやファイルを管理する機能部である。ファイル管理部２１１は記憶領域に対してファイルの読み書きを行う。共有設定部２１０は、ファイル管理部２１１で管理されるフォルダ・ファイルに対してのアクセス権限設定を取り扱う機能部である。なお、アクセス権限はユーザ毎に設定することができる。
【００４０】
ウェブサーバ部１５４は、プリンタ１０１のウェブサービスを外部装置に対して提供する機能部である。ウェブサーバ部１５４は、外部装置からの各種要求（リクエスト）を受信しかつその内容に応じた処理を実行した結果をページ情報という形で外部装置に返却する一連の処理を実行する。ウェブサーバ部１５４は、レスポンス生成部２０６、データ転送部２０７、通知部２０９を含む。
【００４１】
レスポンス生成部２０６は、クライアント装置（外部装置）のブラウザアプリ部２０２からページ更新に関わるリクエストを受信した場合に処理を実行する機能部である。レスポンス生成部２０６は、リクエスト内容に基づいて送信するページ情報を決定し、ブラウザアプリ部２０２に送信する。
【００４２】
データ転送部２０７は、ブラウザアプリ部２０２を経由して送信されてきたデータの処理を実行する機能部である。データ転送部２０７は、ブラウザアプリ部２０２からＰＤＦファイル２１２を取得し、データ取得部２２７に転送する。データ転送部２０７は、ブラウザアプリ部２０２から印刷設定情報を取得し、データ取得部２２７に転送する。
【００４３】
通知部２０９は、リクエストの受信をトリガとして、ホットフォルダ機能部２２１と情報のやり取りを行う機能部である。例えば、ブラウザアプリ部２０２を経由して印刷ファイル（ＰＤＦファイル２１２）が送信されてきた場合、すなわち、ホットフォルダ印刷のリクエストが来た場合にホットフォルダ印刷のリクエストをホットフォルダ機能部２２１に通知する。また、通知部２０９は、印刷処理やフォルダ階層移動処理、ならびにそれらに付随する描画情報の生成、返信処理等の一連の処理の実行タイミングを制御する。通知部２２４から画像更新のレスポンスが来ると、通知部２０９は、ページ生成部にページ生成を要求する。
【００４４】
また、ウェブサーバ部１５４は、認証部２０４と連動することで、ウェブサービス利用の許可・不許可を切り替えることができる。すなわち、ウェブサービスに対するユーザのアクセス制御を実現することができる。
【００４５】
認証部２０４は、ウェブサーバ部１５４から認証情報が送信されてきた場合に処理を行う機能部である。認証部２０４は、ブラウザアプリ部２０２から認証情報（ユーザ名、パスワード）が送信されてくると、この認証情報をユーザＤＢで照合する。ユーザＤＢはプリンタ１０１内の記憶領域に格納されている。ユーザＤＢには複数のユーザ名が管理されており、ユーザ名に紐づけてパスワードが設定されている。認証部２０４は、取得したユーザ名と一致するユーザ名がユーザＤＢにあるか否かを検索する。そして、一致するユーザ名があった場合は、取得したパスワードとユーザＤＢに記憶されたパスワードが一致するか否かを判定する。ユーザ名とパスワードの両方が一致すれば認証成功の通知をＷＥＢサーバ２５４に通知する。いずれか一方でも一致しなければ認証失敗の通知をＷＥＢサーバ２５４に通知する。そして、ウェブサーバ部１５４は、認証成功を受信すると、ウェブサーバ部１５４により提供されるウェブサービスの利用をユーザに許可する。すなわち、ウェブサーバ部１５４は、ユーザにホットフォルダ機能の利用を許可する。
【００４６】
印刷部２１４は、シートに画像を形成する画像形成処理（印刷処理）に関する制御を行う機能部である。印刷部２１４により出力された成果物はユーザ１０６に提供される。
【００４７】
プリント制御部１５６は、印刷部２１４を制御し、印刷対象データに基づきシート上に画像形成し、かつシートを加工処理するための一連の制御を司る機能部である。ここでは、印刷データに基づき実行される一連の画像形成を印刷ジョブと呼ぶ。プリント制御部１５６は、印刷ジョブ単位で管理をおこなう。プリント制御部１５６は、ジョブ実行部２１６、ジョブ管理部２２６、ホットフォルダ機能部２２１を含む。
【００４８】
ホットフォルダ機能部２２１は、機器内蔵ホットフォルダ機能をプリンタ１０１において実現するための中核となる機能部である。ホットフォルダ機能部２２１が提供する機能群としては、ホットフォルダの作成関連処理、投入された印刷ジョブの実行関連処理、機器内蔵ホットフォルダ機能自体の設定処理、これら各機能を指示するための操作部１５３に対する操作画面の提示処理等が含まれる。ホットフォルダ機能部２２１は、ディレクトリ監視部２２２、ジョブ登録依頼部２２３、データ取得部２２７、ＪＤＦ変換部２２５、通知部２２４を備える。
【００４９】
通知部２２４は、通知部２０９と通信する機能部である。通知部２２４は、印刷処理実行トリガを通知部２０９から受信した場合、ジョブ登録依頼部２２３にジョブの登録を依頼する。また、通知部２２４は、画面更新トリガを通知部２０９から受信した場合、操作部１５３における操作画面の表示に用いる情報を返却する。例えば、通知部２０９からフォルダ操作に関するリクエストを受信した場合、ディレクトリ監視部２２２から取得したディレクトリ情報に基づく情報を通知部２０９に返却する。
【００５０】
データ取得部２２７は、データ転送部２０７から転送されてくるデータを取得する機能部である。データ取得部２２７は、データ転送部２０７からＰＤＦファイル２１２を取得すると、プリンタ１０１内の記憶領域に格納するための格納処理を行う。詳細には、データ取得部２２７は、ＰＤＦファイル２１２を記憶領域に格納すべくファイル管理部２１１にＰＤＦファイル２１２の格納を要求する。データ取得部２２７は、データ転送部２０７から印刷設定情報に基づく印刷設定ファイルをプリンタ１０１内の記憶領域に格納するための格納処理を行う。詳細には、データ取得部２２７は、ＪＤＦ変換部２２５を利用して印刷設定情報をＪＤＦファイル２１３に変換する。そして、ＪＤＦファイル２１３を記憶領域に格納すべくファイル管理部２１１にＪＤＦファイル２１３の格納を要求する。
【００５１】
ＪＤＦ変換部２２５は、設定情報の変換処理をおこなう機能部である。ＪＤＦ変換部２２５は、データ取得部２２７から印刷設定情報を取得すると、ＪＤＦ形式のコマンドに置き換えてデータ取得部２２７に返却する。
【００５２】
ジョブ登録依頼部２２３、ＰＤＦファイル２１２及びＪＤＦファイル２１３に基づく印刷ジョブの登録を印刷ジョブ管理部に依頼する機能部である。印刷ジョブの登録に用いる情報には、ＰＤＦファイル２１２の格納先情報、ＪＤＦファイル２１３の格納先情報が含まれる。
【００５３】
このように、本実施例の機器内蔵ホットフォルダ機能は、ウェブサーバ部１５４を経由して印刷対象データを受理することを特徴としている。したがって、ウェブサーバ部１５４が管理する通知部２０９からの印刷処理実行トリガを通知部２２４が受けて、ジョブ登録依頼部２２３が、ジョブ登録部２２０に登録要求することで、印刷ジョブが実行される状態となる。
【００５４】
また、本実施例の機器内蔵ホットフォルダ機能は、ウェブサーバ部１５４を経由して印刷ホットフォルダに紐づける印刷設定情報の作成、登録処理等を行うことが出来る。すなわち、本実施例ではクライアント装置であるＰＣ（１０２，１０３）や携帯端末で印刷設定情報の作成、登録処理の指示を行うことができる。
【００５５】
一方で、本実施例のプリンタ１０１は従来の機器内蔵ホットフォルダ機能を利用することができる。ディレクトリ監視部２２２は、ファイルシステム部１５５で管理されるディレクトリの情報を取得する機能部である。ディレクトリ監視部２２２は、ディレクトリ情報を要するリクエストを受信したことに従って、ファイルシステム部１５５で管理されるディレクトリの情報を取得する。例えばフォルダ操作処理が行われる場合にフォルダの階層構造等のディレクトリ情報が取得され、通知部２２４を経由してウェブサーバ部１５４に送信される。なお、ディレクトリ情報は、ファイルシステム部１５５とウェブサーバ部１５４との間で直接的に交換してもよい。
【００５６】
また、ディレクトリ監視部２２２は、印刷対象ファイルの格納を検知するための機能部である。ディレクトリ監視部２２２は、ファイルシステム部１５５で管理される特定のフォルダにおいて、ＰＤＦファイル２１２等の印刷対象データが新たに追加されているか否かを定常的に監視している。この定常的な監視処理により印刷対象ファイルの格納が検知された場合、ジョブ登録依頼部２２３に対して印刷ジョブの登録を依頼する。なお、機器内蔵ホットフォルダ機能をＷＥＢページでのみ利用する場合はこの監視を停止してもよい。監視を停止すると、記憶領域へのアクセスが低減するため、プリンタ１０１の省エネ化につながる。
【００５７】
ジョブ管理部２２６は、印刷ジョブに関する情報を管理する機能部である。ジョブ管理部２２６は、印刷キュー管理部２１９、ジョブ登録部２２０を備える。
【００５８】
ジョブ登録部２２０は、登録リクエストにしたがって印刷データの書誌情報を登録する機能部である。登録される書誌情報には、印刷データの格納先アドレス、ユーザ情報、印刷設定情報あるいは印刷設定ファイルの格納先アドレス、ステータス情報等が含まれる。
【００５９】
印刷キュー管理部２１９は、個別の印刷ジョブに順序を付けて実行順番を管理する機能部である。印刷キュー管理部２１９はジョブ登録部２２０でジョブが登録されると、登録されたジョブを印刷キュー（順番待ちリスト）に配置する。そして、印刷キューの先頭ジョブについて、ジョブ実行部２１６に実行指示を与える。印刷処理が完了した印刷ジョブは印刷キューから取り除かれる。印刷キュー管理部２１９は、印刷キューから印刷ジョブがなくなるまで、次に並ぶ印刷ジョブについても同様に処理する。
【００６０】
ジョブ実行部２１６は、印刷処理の実行に伴う各種制御を行う機能部である。ジョブ実行部２１６は、画像生成部２１７と印刷設定部２１８を含む。
【００６１】
画像生成部２１７は、印刷データに基づいてページ単位の画像を生成する機能部である。画像生成部２１７は、ＰＤＦファイル２１２を取得し、ＰＤＦファイル２１２内のＰＤＬコマンドに基づき画像を生成する。生成された画像は印刷部２１４に送信される。
【００６２】
印刷設定部２１８は、画像生成部２１７で生成される画像に印刷設定を反映させる機能部である。印刷設定部２１８は、ジョブ登録部２２０を介してＪＤＦファイル２１３から印刷設定を抽出し、抽出した印刷設定を画像生成部の画像生成に反映させる。また印刷設定部２１８は、抽出された印刷設定に基づいて印刷部に送信する印刷制御コマンドを決定する。
【００６３】
印刷システム１の機能構成は上述した通りである。このような構成により、ＷＥＢページを介して格納されたＰＤＦファイル２１２を、ホットフォルダに紐付くＪＤＦファイル２１３の印刷設定で印刷することができる。
【００６４】
＜プリンタハードウェア＞
プリンタ１０１が備えるハードウェアについて説明する。図３（ａ）はプリンタのハードフェア構成を示す図である。
【００６５】
図３（ａ）に示すように、プリンタ１０１は、コントローラ３００、スキャンデバイス３０１、プリントデバイス３０３、シート処理デバイス３１０、操作デバイス３０４、記憶デバイス３０９を備える。
【００６６】
スキャンデバイス３０１は、原稿を読み取り画像データを生成するための機器である。スキャンデバイス３０１は、圧板原稿台に置かれた原稿を可動するイメージセンサで読み取る原稿台方式の読取機器であっても、搬送ローラ等によって搬送される原稿を固定のイメージセンサで読み取るドキュメントフィード方式の読取機器であってもよい。
【００６７】
プリントデバイス３０３（画像形成デバイス）は、シートに画像を形成する印刷処理が実行可能な機器である。プリントデバイス３０３は印刷部２１４として機能する。プリントデバイス３０３は、電子写真方式の機器であってもインクジェット方式の機器であってもよい。また、プリントデバイス３０３は、モノクロ機であってもフルカラー機であってもよい。電子写真方式のフルカラー機の場合、帯電・露光工程を経て感光ドラム上に形成された潜像をトナーによって現像する。そして、イエロー（Ｙ）・マゼンタ（Ｍ）・シアン（Ｃ）・ブラック（Ｋ）のトナーを重畳したあとシート上に転写し、これを熱定着することで画像が形成される。画像形成に利用されるシートは手差しトレイから搬送されるシートであっても、カセット内から搬送されるシートであってもよい。
【００６８】
シート処理デバイス３１０は、プリントデバイス３０３によって画像形成された後のメディア（シート、用紙）に対して各種加工を施した成果物を得るための装置である。シート処理デバイス３１０は、ステープル、パンチ、針なしステープル、製本等のいずれの加工ができるものであってもよい。
【００６９】
操作デバイス３０４は、ユーザに操作を促しユーザの操作を受け付けるユーザインタフェース（操作パネル）である。操作デバイス３０４は、ユーザに情報を表示する表示部として機能する表示デバイス３１１を備える。表示デバイス３１１としては、液晶等のディスプレイが用いられる。操作デバイス３０４は、ユーザの操作を受け付ける入力部として機能する入力デバイス３１２を備える。入力デバイス３１２としては、ハードキーや、ディスプレイをタッチスクリーンにするためのタッチセンサ等が用いられる。
【００７０】
記憶デバイス３０９は、大容量の情報を記憶するための不揮発性メモリである。記憶デバイス３０９としては、ＨＤＤやＳＳＤが用いられる。記憶デバイス３０９は印刷データ等のジョブデータや、設定情報、システムプログラム、アプリケーションプログラムが記憶される。
【００７１】
コントローラ３００は、プリンタ１０１が備える各機器を統括的に制御する制御機器である。コントローラ３００は、ＣＰＵ３０５，ＲＯＭ３０７，ＲＡＭ３０８，画像処理回路３０６，ＮＩＣ３０２，インターフェース３１４を備える。各構成はシステムバス３１５により互いに通信可能に接続されている。
【００７２】
ＣＰＵ３０５は、プログラムに記述されたコマンドに基づいて各種処理を実行するプロセッサである。ＣＰＵ３０５は、後述する各種プログラムを実行してプリンタ１０１が備える各機器を制御することで様々な機能を実現させる。
【００７３】
ＲＯＭ３０７は、読み出し専用のメモリである。ＲＯＭ３０７は、ブートシーケンスやフォント情報等のプログラムや上記のプログラム等各種プログラムが予め記憶されている。ＲＯＭ３０７に記憶されたプログラムはＣＰＵ３０５によって読み出される。
【００７４】
ＲＡＭ３０８は読み出し及び書き込み可能なメモリである。ＲＡＭ３０８は、ＣＰＵ３０５の主メモリ、ワークエリア等として機能する。ＲＡＭ３０８は、一時的に利用される画像データ、展開中のプログラム、各種設定情報等が記憶される。
【００７５】
ＮＩＣ３０２は、ネットワーク１００を介して外部装置と通信するための通信インターフェースである。ＮＩＣ３０２は、有線通信方式のインターフェースでも無線通信方式のインターフェースであってもよい。ＮＩＣ３０２は、外部装置と間で画像データを送受信する等の用途も用いられる。
【００７６】
画像処理回路３０６は、画像データの生成や変換をおこなうための処理回路である。画像処理回路３０６は、ＰＤＬ形式の印刷データをビットマップ形式のデータに変換する処理を行う。ビットマップ形式のデータは、必要に応じて圧縮処理されてからプリントデバイス３０３に転送され、印刷処理に用いられる。
【００７７】
インターフェース３１４は、各デバイスとの間で情報の入出力を行うためのデバイスインターフェースである。なお、本実施例では、説明の簡略化のために一つのインターフェースとして記載しているが、実際にはデバイス毎にインターフェースを設けることが望ましい。インターフェース３１４は、スキャンデバイス３０１に制御命令を出力し、スキャンデバイス３０１からの画像データに入力を受け付ける。インターフェース３１４は、プリントデバイス３０３に制御命令や画像データを出力し、プリントデバイス３０３からステータス情報の入力を受け付ける。インターフェース３１４は、シート処理デバイス３１０に制御命令を出力し、シート処理デバイス３１０からの画像データに入力を受け付ける。インターフェース３１４は、操作デバイス３０４（表示デバイス３１１）に制御命令や画面情報を出力し、操作デバイス３０４（入力デバイス３１２）からのユーザ操作結果の入力を受け付ける。インターフェース３１４は、記憶デバイス３０９に制御命令や書込対象データを出力し、記憶デバイス３０９から読出対象データの入力を受け付ける。
【００７８】
＜プリンタソフトウェア＞
プリンタ１０１が備えるソフトウェアについて説明する。図３（ｂ）はプリンタのソフトウェア構成を示す図である。これらプログラムはＲＯＭ３０７や記憶デバイス３０９に格納されており、ＣＰＵ３０５により読み出されて実行される。
【００７９】
ブートローダ３５１は、プリンタ１０１の電源投入直後に実行されるプログラムである。これらプログラムには、システムの起動に必要となる各種起動シーケンスを実行するためのプログラムが含まれる。
【００８０】
オペレーティングシステム３５２は、プリンタ１０１の機能を実現する各種プログラムの実行環境を提供することを目的としたプログラムである。オペレーティングシステム３５２は、主にプリンタ１０１のメモリ、即ちＲＯＭ３０７やＲＡＭ３０８，記憶デバイス３０９等の資源管理、及び図３（ａ）に示すその他各部の基本的な入出力制御等の機能を提供する。
【００８１】
ネットワーク制御プログラム３５３は、ネットワークを介して接続される機器に対してデータを送受信する際に実行されるプログラムである。このプログラムは、印刷するファイルの受信処理や、外部装置からのデータ送信、コマンドの送受信等の各種処理実行時に利用される。ネットワーク制御プログラムにはＮＩＣ３０２を制御するためのドライバプログラムも含まれる。
【００８２】
ファイルシステム（サーバ）３５４は、プリンタ１０１が備える記憶デバイス３０９内部のファイルをネットワーク経由で接続された外部装置に対して、ファイル作成、送信、受信などのリクエストを提供するためのサーバプログラムである。当プログラムが有効化ならびに作動することによって、記憶デバイス３０９内のファイルならびにファイルシステムが提供するサービスを、ネットワーク接続されたクライアント装置（１０２、１０３、１０４）がネットワーク経由で利用することが可能となる。
【００８３】
なお、このファイルシステム機能を用いて印刷ファイルを投入することも可能である。しかしながら、ファイルシステムサーバ３５４がサポートするネットワークファイル共有プロトコル種は多様であり、かつそのバージョンも多岐に及ぶ。そのため、クライアント装置が備えるデフォルトの共有ファイルアクセス用プログラムではファイルシステムサーバ３５４にアクセス可能か否かの確実性を担保出来ない。そのため、クライアント装置（１０２、１０３、１０４）には、こうした共有プロトコル種に対応するアプリケーションをインストールする等の準備が必要である。
【００８４】
ウェブサーバ３５５は、プリンタ１０１が備えるウェブコンテンツ並びにウェブプログラムによるウェブサービスを提供するためのサービス機能提供プログラムである。このウェブサービスは、ネットワーク経由で接続されたクライアント装置（１０２、１０３、１０４）が利用できる。当プログラムが有効化ならびに作動することによって、プリンタ１０１が提供するウェブコンテンツ、ウェブプログラム等のウェブサービスを、ネットワーク接続されたクライアント装置（１０２、１０３、１０４）がネットワーク経由で利用することが可能となる。
【００８５】
ホットフォルダ機能プログラム３５６は、本発明によるプリンタ１０１が備える特徴的なプログラムである。本プログラムは、ウェブサーバ３５５によってネットワークに接続されるクライアント装置からのウェブサービスに対するリクエストの受信を検知する。そして、検知した受信リクエストに応じて機器内蔵ホットフォルダ機能として供される一連の機能を実行するよう構成されたプログラムである。換言すれば、ホットフォルダ機能プログラム３５６は、外部機器からのリクエスト送信操作を、印刷操作に置き換える事を可能とするプログラムである。
【００８６】
ホットフォルダ機能プログラム３５６では、ウェブサーバ３５５を介してクライアント装置（１０２、１０３、１０４）とｈｔｔｐプロトコルによる通信によりｈｔｍｌデータ並びにＪＡＶＡスクリプト等のプログラムを送信する手法を採用している。ｈｔｍｌはマークアップ言語である。このプログラムをウェブブラウザ４５５が実行することによって、印刷対象ファイルの送受信処理をはじめとするホットフォルダ機能を実現される。ｈｔｔｐによる通信手法は、装置やオペレーティングシステム種に依存しない方式によって、各種情報の閲覧や機能の提供を目的としたものである。従って、従来技術のホットフォルダ機能における課題は、ホットフォルダ機能プログラム３５６が採用するｈｔｔｐ通信手法により解消される。これにより、ホットフォルダのメリットを最大限に享受可能とすることができる。
【００８７】
ＪＤＦ機能プログラム３５７は、ＪＤＦジョブデータを受信した場合に、ＪＤＦプリント機能を実行するためのプログラムである。ＪＤＦ機能プログラム３５７は、ＪＤＦジョブデータの解析処理や設定内容の判別処理、設定内容の変更処理等の機能を提供する。ＪＤＦ機能プログラム３５７は、プリントデバイス３０３、シート処理デバイス３１０、記憶デバイス３０９、画像処理回路３０６等の制御に関する。
【００８８】
ＰＤＬプリント機能プログラム３５８は、ＰＤＬデータ（印刷ジョブデータ）を受信した場合に、ＰＤＬプリント機能を実行するためのプログラムである。これら各デバイスには、ＰＤＬプリント機能プログラム３５８は、プリントデバイス３０３、シート処理デバイス３１０、記憶デバイス３０９、画像処理回路３０６等の制御に関する。
【００８９】
メディア管理プログラム３５９は、プリンタ１０１が利用可能なシートに関連する管理機能を実行するためのプログラムである。このプログラムによって管理されるシート関連情報は、記憶デバイス３０９に格納される。
【００９０】
ユーザ認証プログラム３６０は、プリンタ１０１の備える機能をユーザの利用権限に応じて提供するためのプログラムである。ユーザ認証プログラム３６０は、ユーザの認証処理、ユーザの利用権限の設定処理、機能利用可否の決定処理ならびに機能制限処理に用いられる。なお、認証処理にともなう認証情報の入力処理は、プリンタ１０１が備える操作デバイス３０４からだけでなく、クライアント装置（１０２、１０３、１０４）などが備えるウェブブラウザから行うことも可能である。
【００９１】
印刷ジョブキュー管理プログラム３６１は、生成された印刷ジョブ実行処理のライフサイクルを管理するためのプログラムである。換言すると、印刷ジョブキュー管理プログラム３６１は、ジョブの生成から印刷処理、印刷後処理、その過程におけるジョブ状況の確認を含むジョブ管理情報の生成等をつかさどるプログラムである。印刷ジョブは、例えばＪＤＦ機能プログラム３５７、ＰＤＬプリント機能プログラム３５８、もしくはホットフォルダ機能プログラム３５６によって生成される。
【００９２】
その他のプログラム３６２は、プリンタ１０１が実行しうるＲＯＭ３０７内に格納されたプログラムのうち、上述した何れにも含まれないプログラムの総称である。例えば、操作デバイス３０４の表示部に各種のＵＩ画面を表示させる為の表示制御プログラム等が挙げられる。これらのプログラムは本実施例の特徴部分ではないためその説明は割愛する。
【００９３】
＜クライアントハードウェア＞
クライアント装置（１０２，１０３，１０４）が備えるハードウェアについて説明する。図４（ａ）はクライアント装置のハードフェア構成を示す図である。図４（ａ）に示すように、クライアント装置（１０２，１０３，１０４）は、コントローラ４００、表示デバイス４１０、入力デバイス４０９、記憶デバイス４１１を備える。
【００９４】
表示デバイス４１０は、ユーザに情報を表示する表示部として機能する機器である。表示デバイス４１０としては、液晶等のディスプレイが用いられる。
【００９５】
入力デバイス４０９は、ユーザの操作を受け付ける入力部として機能する機器である。入力デバイス３１２としては、ＰＣ（１０２、１０３）であればマウスやキーボード、携帯端末１０４であればディスプレイをタッチスクリーンにするためのタッチセンサ等が用いられる。
【００９６】
記憶デバイス４１１は、大容量の情報を記憶するための不揮発性メモリである。記憶デバイス４１１としては、ＨＤＤやＳＳＤが用いられる。記憶デバイス３０９は印刷データ等のジョブデータや、設定情報、システムプログラム、アプリケーションプログラムが記憶される。
【００９７】
コントローラ４００は、クライアント装置（１０２，１０３，１０４）が備える各機器を統括的に制御する制御機器である。コントローラ４００は、ＣＰＵ４０１，ＲＯＭ４０３，ＲＡＭ４０２，ＮＩＣ４１２，インターフェース４０５を備える。各構成はシステムバス４０４により互いに通信可能に接続されている。
【００９８】
ＣＰＵ４０１は、プログラムに記述されたコマンドに基づいて各種処理を実行する回路である。ＣＰＵ４０１は、後述する各種プログラムを実行してクライアント装置（１０２，１０３，１０４）が備える各機器を制御することで様々な機能を実現させる。
【００９９】
ＲＯＭ４０３は、読み出し専用のメモリである。ＲＯＭ４０３は、ブートシーケンスやフォント情報等のプログラムや上記のプログラム等各種プログラムが予め記憶されている。ＲＯＭ４０３に記憶されたプログラムはＣＰＵ４０１によって読み出される。
【０１００】
ＲＡＭ４０２は読み出し及び書き込み可能なメモリである。ＲＡＭ４０２は、ＣＰＵ４０１の主メモリ、ワークエリア等として機能する。ＲＡＭ４０２は、一時的に利用される画像データ、展開中のプログラム、各種設定情報等が記憶される。
【０１０１】
ＮＩＣ４１２は、ネットワーク１００を介して外部装置と通信するための通信インターフェースである。ＮＩＣ４１２は、有線通信方式のインターフェースでも無線通信方式のインターフェースであってもよい。ＮＩＣ４１２は、外部装置と間で画像データを送受信する等の用途も用いられる。
【０１０２】
インターフェース４０５は、各デバイスとの間で情報の入出力を行うためのデバイスインターフェースである。なお、本実施例では、説明の簡略化のために一つのインターフェースとして記載しているが、実際にはデバイス毎にインターフェースを設けることが望ましい。インターフェース４０５は、表示デバイス４１０に制御命令や画面情報を出力し、入力デバイス４０９からのユーザ操作結果の入力を受け付ける。インターフェース３１４は、記憶デバイス４１１に制御命令や書込対象データを出力し、記憶デバイス４１１から読出対象データの入力を受け付ける。
【０１０３】
同図において、ＣＰＵ４０１は、ＲＯＭ４０３のプログラム用ＲＯＭに記憶された、或いは記憶デバイス４１１からＲＡＭ４０２にロードされたＯＳや一般アプリケーションのプログラムを実行する。ＲＯＭ４０３はまたフォントＲＯＭやデータＲＯＭを有している。ＲＡＭ４０２は、ＣＰＵ４０１の主メモリ、ワークエリア等として機能する。
【０１０４】
＜クライアントソフトウェア＞
クライアント装置（１０２，１０３，１０４）が備えるソフトウェアについて説明する。図４（ｂ）はクライアント装置のソフトウェア構成を示す図である。これらプログラムはＲＯＭ４０３や記憶デバイス４１１に格納されており、ＣＰＵ４０１により読み出されて実行される。
【０１０５】
ブートローダ４５１は、クライアント装置（１０２、１０３、１０４）の電源投入直後に実行されるプログラムである。これらプログラムには、システムの起動に必要となる各種起動シーケンスを実行するためのプログラムが含まれる。
【０１０６】
オペレーティングシステム４５２は、クライアント装置（１０２、１０３、１０４）の機能を実現する各種プログラムの実行環境を提供することを目的としたプログラムである。これは、クライアント装置（１０２、１０３、１０４）のメモリ、即ちＲＯＭ４０３やＲＡＭ４０２，記憶デバイス４１１等の資源管理等の機能を提供する。
【０１０７】
ネットワーク制御プログラム４５３は、ネットワークを介して接続される機器に対してデータを送受信する際に実行されるプログラムである。
【０１０８】
リモートファイルシステム（クライアント）４５４は、ファイルシステム（サーバ）３５４によって提供されるファイルサーバにアクセスするためのクライアントプログラムである。ファイルサーバにアクセスすることで、外部装置内のファイルの移動やコピー等のファイル操作を実行することができる。リモートファイルシステム（クライアント）４５４は、ファイル操作に伴う通信に関してネットワーク制御プログラム４５３を利用する。
【０１０９】
ウェブブラウザ４５５は、ネットワーク１００を介してＷＥＢコンテンツにアクセスするためのアプリケーションプログラムである。ＪＡＶＡスクリプトを利用可能であれば一般的なウェブブラウザであれば、その種類は問わない。ウェブブラウザ４５５は、ウェブサーバ３５５が提供するウェブサービスを利用する際のクライアントプログラムとして機能する。
【０１１０】
ローカルファイルシステム４５６は、記憶デバイス４１１内に格納された各種ファイルの作成、編集、削除等のファイル管理を実行するファイル管理機能プログラムである。データをファイル形式で管理することができ、マウスポインタ等によるファイル指定で、ファイルのドラッグ＆ドロップ操作を行うことができる。ローカルファイルシステム４５６は、前述したリモートファイルシステム（クライアント）４５４と併用するネットワークを介したファイル操作が可能となる。例えば、ファイルシステムサーバ３５４にアクセスし、ローカルファイルシステム４５６で管理されるファイルをリモート装置にコピーすることができる。あるいは、リモート装置側のファイルをローカルファイルシステム４５６にコピーすることができる。
【０１１１】
その他のプログラム４５７は、上記のいずれにも該当しないプログラム群が含まれるが、それらの詳細な説明は省略する。
【０１１２】
＜システムと装置の対応関係＞
本実施例では、図２で示した印刷システムを、図３（ａ）、図３（ｂ）、図４（ａ）、図４（ｂ）に示す構成で実現する。また、その対応関係は次の通りである。
【０１１３】
操作部１５３は、コントローラ４００、表示デバイス４１０は、入力デバイス４０９、ウェブブラウザ４５５、ローカルファイルシステム４５６、リモートファイルシステム（クライアント）４５４によって実現される。
【０１１４】
ウェブサーバ部１５４は、コントローラ３００、ウェブサーバ３５５によって実現される。
【０１１５】
ファイルシステム部１５５は、コントローラ３００、ファイルシステムサーバ３５４ならびにネットワーク制御プログラム３５３によって実現される。
【０１１６】
印刷部２１４は、プリントデバイス３０３、シート処理デバイス３１０によって実現される。
【０１１７】
ホットフォルダ機能部２２１は、コントローラ３００、ホットフォルダ機能プログラム３５６によって実現される。
【０１１８】
ジョブ実行部２１６は、コントローラ３００、ＪＤＦ機能プログラム３５７、ＰＤＬプリント機能プログラム３５８、によって実現される。
【０１１９】
ジョブ管理部２２６は、コントローラ３００、印刷ジョブキュー管理プログラム３６１によって実現される。
【０１２０】
認証部２０４は、コントローラ３００、ユーザ認証プログラム３６０によって実現される。
【０１２１】
ユーザＤＢ２０５、ＰＤＦファイル２１２，ＪＤＦファイル２１３を記憶する記憶領域は、記憶デバイス３０９によって実現される。
【０１２２】
＜機器内蔵ホットフォルダ＞
次に機器内蔵ホットフォルダの詳細について説明する。図５（ａ）は機器内蔵ホットフォルダの利用環境の階層構造を示す図である。図５（ｂ）は機器内蔵ホットフォルダをファイルシステムで確認した様子を示す図である。
【０１２３】
上述したように、プリンタ１０１は、ファイルシステム（サーバ）３５４を実行することでファイルシステム部１５５としての機能を提供する。図５（ａ）にファイルシステム（サーバ）３５４の管理下のフォルダ階層を示す。
【０１２４】
図５（ａ）には、ルートフォルダからのパスとしてホットフォルダである“ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”（５０６）までの階層の上下関係が図示されている。同図における左方向がフォルダ階層の上階層、右方向が下階層である。ホットフォルダである“ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”（５０６）の配下には、印刷仕様ファイルである５０７が配置されていることも同図において確認できる。
【０１２５】
フォルダ５０４は「ｓｈａｒｅ」と名付けられたフォルダであり公開フォルダの最上位階層のフォルダである。フォルダ５０５は、「ｆｏｌｄｅｒ」と名付けられたフォルダでありフォルダ５０４の下位フォルダである。フォルダ５０６は、「ｆｏｌｄｅｒ０１」と名付けられたフォルダであり、フォルダ５０５の下位フォルダである。フォルダ５０６にはジョブ設定ファイル５０７が格納されており、フォルダ５０６がホットフォルダであることがわかる。クライアント装置においてリモートファイルシステム（クライアント）４５４を実行すると、ブラウザ画面５５０が表示される。ディレクトリ監視部２２２を有効にした状態で、「ｆｏｌｄｅｒ０１」の下にＰＤＦファイル２１２を格納すると、定常監視（例えば１分周期）によりＰＤＦファイル２１２が検出される。そして、機器内蔵ホットフォルダ機能により、プリンタ１０１において、ＰＤＦファイル２１２に基づく画像形成が実行される。
【０１２６】
本実施例では内部印刷設定ファイルとしてＪＤＦ形式のファイルを用いている。換言すれば、ホットフォルダ機能プログラム３５６を経由して投入された印刷対象データを印刷処理する際にＪＤＦ機能プログラム３５７を利用する形式を前提している。しかしながら、内部印刷設定ファイルの形式はＪＤＦ形式のファイルでなくてもよい。したがって、印刷ジョブの実行手段は必ずしもＪＤＦ機能プログラム３５７でなくてもよい。しかしながら、下記に挙げる様々なメリットからＪＤＦ形式のファイルを採用することが望ましい。ＪＤＦ形式のファイルは、印刷設定ファイルの形式として手動編集可能な形式である。ＪＤＦ形式のファイルは業界標準の印刷設定フォーマットとして普及している。ＪＤＦ関連技術の有識者が印刷機器ベンダならびにインテグレータに多く存在している。
【０１２７】
＜ＷＥＢ画面＞
次に機器内蔵ホットフォルダ機能をＷＥＢ画面から利用するケースについて説明する。
【０１２８】
ここではＷＥＢ画面の機能を解説するため、フォルダ５０６やジョブ設定ファイル５０７が作成されていない状況から説明を行う。
【０１２９】
上述したように、印刷システム１はホットフォルダ機能部２２１とウェブサーバ部１５４が連携する構成となっている。そのため、ウェブサーバ部１５４が提供するＷＥＢページを、ウェブブラウザを用いて表示することで、クライアント装置（１０２、１０３、１０４）は機器内蔵ホットフォルダ機能の操作部１５３として機能する。ウェブサーバ部１５４が提供するＷＥＢページを用いて操作できる内容は、ログイン処理、フォルダ階層の移動処理、フォルダの作成処理、印刷設定の登録処理、印刷設定の確認処理、印刷ファイルの投入処理等が挙げられる。以降、各工程におけるＷＥＢページの詳細について説明していく。
【０１３０】
ホットフォルダ機能プログラム３５６に対してウェブブラウザ４５５を用いてアクセスすると、まず図６（ａ）に示すログイン画面６００が表示される。図６（ａ）はＷＥＢページのログイン画面を示す図である。
【０１３１】
ログイン画面６００は、ＷＥＢページにアクセスしてきたユーザを認証すべく、ユーザに認証情報（ユーザ名、パスワード）の入力を要求する画面である。ログイン画面６００は、ユーザ名入力フィールド６０１、ならびにユーザ名に対応したパスワード入力フィールド６０２、ログイン先選択フィールド６０３、ログイン開始ボタン６０４を備える。ホットフォルダ機能プログラムのユーザは各フィールドに、利用者の情報を適切に入力したうえで、ボタン６０４を選択すると、ユーザ認証プログラム３６０によって認証処理が実行される。ユーザ認証プログラム３６０の認証処理に必要な認証情報は、ウェブブラウザ４５５から、ネットワークを経由してプリンタ１０１のウェブサーバ３５５経由でユーザ認証プログラム３６０に送信される。なお、ログイン先選択フィールド６０３では認証に利用するサーバを選択できる。
【０１３２】
ログイン画面６００においてログインが完了すると、図６（ｂ）に示すように基本画面６５０が表示される。図６（ｂ）はＷＥＢページの基本画面を示す図である。
【０１３３】
基本画面６５０は、ログイン後に最初に表示される画面である。本実施例では、公開フォルダの最上位階層のフォルダ（ルートフォルダ）であるフォルダ５０４に関する画面が基本画面である。基本画面６５０は、フォルダ操作領域６５１、プリント機能選択ボタン６５２、ジョブリスト表示ボタン６５３、カレントパス表示領域６５４、ログインユーザ表示領域６５６、ユーザ固有機能選択ボタン６５７、ページ機能表示領域６５８を備える。
【０１３４】
フォルダ操作領域６５１は、ファイルシステムサーバ３５４の管理下のディレクトリ情報に連動して情報が表示される領域である。基本画面６５０において、フォルダ操作領域６５１にはフォルダ指定ボタンボタン６５９が配置されている。ボタン６５９は、フォルダ５０４の下位フォルダであるフォルダ５０５にカレントパスを移動させるボタンである。カレントパスを移動させると、移動先のフォルダの情報に沿って画面が更新される。
【０１３５】
プリント機能選択ボタン６５２は、ＷＥＢページで操作可能な複数の機能のうちホットフォルダ印刷機能を利用する場合に選択するボタンである。ボタン６５２を選択すると、基本画面６５０が表示される。すなわち、基本画面６５０においては利用されず他の画面において利用されるボタンである。本実施例では、ページデザイン統一のために基本画面６５０にもボタン６５２を配置している。
【０１３６】
ジョブリスト表示ボタン６５３は、投入された印刷ジョブの一覧表示するためのボタンである。
【０１３７】
カレントパス表示領域６５４は、カレントパスをルートフォルダからの絶対パス形式によって表示する領域である。図６（ｂ）においては、カレントパスは”／ｓｈａｒｅ”であることを示している。
【０１３８】
ログインユーザ表示領域６５６は、ログイン画面６００において認証したユーザのユーザ名が表示される領域である。
【０１３９】
ユーザ固有機能選択ボタン６５７は、ログインユーザ表示領域６５６に表示されたログインユーザのカスタマイズ設定を確認するためのボタンである。
【０１４０】
ページ機能表示領域６５８は、カレントパス表示領域６５４に示すカレントパスにおいて利用可能な機能に応じて情報を表示する領域である。カレントパスが”／ｓｈａｒｅ”である場合、本実施例ではホットフォルダの作成を認めていない。そのため、ここでは、フォルダ操作領域６５１からホットフォルダとして利用するフォルダに移動すべき旨のメッセージを通知している。
【０１４１】
基本画面６５０において、ボタン６５９を選択すると、カレントパスが”／ｓｈａｒｅ／ｆｏｌｄｅｒ”に移動する。この状態で新規フォルダの作成を指示した様子が図７（ａ）である。図７（ａ）はＷＥＢページのフォルダ作成画面を示す図である。
【０１４２】
フォルダ作成画面７００は、カレントパス表示領域７０１と、名称入力欄７０２と、キャンセルボタン７０３と、ＯＫボタン７０４と、フォルダ作成ボタン７０５と、上階層移動ボタン７０６が配置されている。
【０１４３】
上階層移動ボタン７０６を選択すれば、図５に示す階層図の左方向、すなわち上位階層のフォルダの情報の表示を指示することができる。
【０１４４】
図示の通り、図７（ａ）では、カレントパス表示領域７０１に示す通り、カレントパスが”／ｓｈａｒｅ／ｆｏｌｄｅｒ”の状態を示している。このフォルダでは、フォルダの作成ができるためフォルダ操作領域６５１にフォルダ作成ボタン７０５が配置されている。また、このフォルダには上位階層があるため、上階層移動ボタン７０６が配置されている。フォルダ作成ボタン７０５は、カレントパスの階層直下に新規フォルダを作成する際に選択するボタンである。上階層移動ボタン７０６は、カレントパスの上位階層に表示情報の階層を移動するためのボタンである。
【０１４５】
ボタン７０５を選択すると新規フォルダを作成するためのポップアップウインドウが表示される。ポップアップウインドウには、名称入力欄７０２と、キャンセルボタン７０３と、ＯＫボタン７０４が含まれる。
【０１４６】
名称入力欄７０２は、新規フォルダの名称を入力するフィールドである。名称入力欄７０２をタッチするとソフトウェアキーボード（不図示）が表示され文字列を入力することができる。名称入力欄７０２に文字列が入力された状態でボタン７０４を選択されると、名称入力欄７０２に入力された名称のフォルダがカレントパス直下に作成される。そして、フォルダ操作領域６５１に“ｆｏｌｄｅｒ０１”を示すボタンが追加される。
【０１４７】
“ｆｏｌｄｅｒ０１”を選択すれば、図５における右方向、すなわち下位階層のフォルダの情報の表示を指示することができる。また、フォルダ作成ボタン７０５を使用すれば図５（ａ）の“ｆｏｌｄｅｒＡＡ”６５７のように、さらなるサブフォルダをすることもできる。
【０１４８】
一方でボタン７０３を押下した場合にはフォルダ作成処理は実行されずポップアップウインドウが閉じた状態となる。
【０１４９】
フォルダを作成後、フォルダ操作領域６５１の“ｆｏｌｄｅｒ０１”ボタンを選択すると、図７（ｂ）に示す画面７５０が表示される。図７（ｂ）はＷＥＢページの非ホットフォルダ画面を示す図である。図７（ｂ）では、カレントパス表示領域７５３に示す通り、カレントパスが”／ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”の状態を示している。このフォルダは、ホットフォルダの設定が可能なフォルダである。そのため、ページ機能表示領域７５２や、ジョブ設定作成ボタン７５１が表示される。
【０１５０】
ページ機能表示領域７５２は、カレントパスにホットフォルダの設定が可能であること、また、このフォルダにホットフォルダの設定が未だ成されていないことを通知している。
【０１５１】
ジョブ設定作成ボタン７５１は、カレントパスをホットフォルダとして利用可能すべく、設定ファイルの配置を指示するためのボタンである。なお、ボタン７５１を利用せず、ファイルシステムを用いてカレントパスにＪＤＦファイルを直接配置してもよい。７５１を選択すると、印刷設定画面８００、８５０が表示される。
【０１５２】
図８（ａ）はＷＥＢページの印刷設定画面（上）を示す図である。図８（ｂ）はＷＥＢページの印刷設定画面（下）を示す図である。
【０１５３】
図８（ａ）（ｂ）は、ウェブブラウザ画面に表示される情報が図７（ｂ）に示した状態において、ボタン７５１を選択した直後に表示される画面である。図示の通り、プリンタ１０１のホットフォルダ機能として成果物作成時に適用可能な各種設定を選択するための機能選択ボタンやセレクトボックス等が配置されている。なお、図８（ａ）（ｂ）は、ウェブブラウザ画面の表示領域に制限があるためにスクロール表示した状態の画面の一部を表示したものであるが、実際には単一の画面として表示することも可能である。具体的にはウェブブラウザ画面の表示ウィンドウサイズを変更し、若しくは表示文字サイズを小さくするなどの変更によって単一の画面として表示させることも可能である。これら機能ならびに操作はウェブブラウザ機能にとって一般的な画面制御方法であるため、詳細な説明は省略する。
【０１５４】
なお、図８（ａ）（ｂ）の例で示す通り、ウェブブラウザ画面を経由してホットフォルダに対応付ける印刷設定項目は各種存在する。具体的には、基本機能として、カラー・モノクロ、部数、印刷時に使用するシートサイズ、シート種、印刷面（片面・両面）等である。また製本関連設定として、製本面付の有無、製本印刷時の開き方向、製本面付時に実施する中綴じ処理の有無がある。さらに、出力モード指定として、ソートモード、複数部排出時の仕分け（シフト排紙）、シフト排紙時の部数単位指定等が指定可能である。また、フィニッシング処理の指定として、パンチ、綴じ処理、折り処理等が指定可能である例を本実施例におけるプリンタ１０１のホットフォルダに対応付け可能な設定項目として例を示した。しかしながら、図８（ａ）（ｂ））で示した以外の各種機能であって、プリンタ１０１が備える機能を指定可能な様構成することも当然のことながら可能である。例えば、各種画像処理、図８（ａ）（ｂ）には示していないフィニッシング処理等である。これらは、ホットフォルダを利用するユーザが要望する際に、指定可能な項目として追加し、かつ後述するＪＤＦ形式のフォーマットに格納され、印刷時に適用可能な様構成されればよい。換言すれば、プリンタ１０１が処理可能な設定であれば如何様な項目を図８（ａ）（ｂ）相当の画面によって、ホットフォルダの設定に対応付けるよう、構成可能である。
【０１５５】
このように、本実施例のホットフォルダ機能では、ホットフォルダに対する印刷設定を細かく指定することができる。換言すると、プリセットされた印刷設定を選ぶ等の方法ではないため、カスタマイズ性に優れている。
【０１５６】
印刷設定画面８００、８５０において各種設定を入力後、設定完了ボタン８０１を選択されと、設定が完了する。設定が完了すると、ウェブブラウザは入力された設定情報をＸＭＬ形式のデータに変換する処理を実行する。ＸＭＬはマークアップ言語である。この処理は、例えばウェブプログラムであるＪＡＶＡスクリプトによって実現される。ＸＭＬ形式のデータには、例えば図１２（ａ）に示す内容が記述されている。図１２（ａ）は印刷設定データの構成を示す図である。なお、本実施例ではＸＭＬ形式で印刷設定情報が記述しているが、印刷設定項目の内容を格納可能な形式であれば任意の形式であっても構わない。
【０１５７】
ＸＭＬデータ１２００は複数のパートから構成されており、それぞれＸＭＬ宣言部１２０６、メタデータ部１２０７、一般印刷設定部１２０８、面付設定部１２０９である。ＸＭＬ宣言部１２０６はデータ形式がＸＭＬであることを示すために必ず記載しなくてはならない記述である。メタデータ部１２０７は対象のフォルダに関する情報を記載する部分であり、図例では印刷設定を適用するフォルダのアドレス情報またはパス情報が記述されている。一般印刷設定部１２０８は印刷に使用する用紙の情報や部数、排紙方法などを記述する部分である。面付設定部１２０９は印刷面や印刷面の順番、面数などを記述する部分である。一般印刷設定部１２０８パートの内容は指定された印刷設定に応じて増減する。例えばホチキス設定や折り設定を指定した場合にはホチキス設定部と折り設定部に相応する情報が付加される。
【０１５８】
ＸＭＬデータ１２００には印刷設定情報の他、印刷設定を作成する対象となるフォルダのパスに対応するアドレス情報１２０４も含まれている。
【０１５９】
生成されたＸＭＬ形式のデータ１２００は、ウェブサーバ３５５に送信され、ホットフォルダ機能プログラム３５６に転送される。そして、ＸＭＬデータに基づいてＪＤＦファイルが作成され、アドレス情報１２０４に基づいてカレントパスに配置される。上述処理が完了すると、図９（ａ）に示す画面９００が表示される。図９（ａ）はＷＥＢページのホットフォルダ画面を示す図である。
【０１６０】
画面９００は、ページ機能表示領域９０１と、ジョブ設定確認ボタン９０２を備える。
【０１６１】
ページ機能表示領域９０１は、カレントパスが「ホットフォルダ」であることを示してる。すなわち、カレントパスには印刷設定ファイル（ジョブ設定ファイル５０７）が配置されていることを示している。
【０１６２】
ジョブ設定確認ボタン９０２は、カレントパスに設定された印刷設定を確認するためのボタンである。ボタン９０２を選択すると、画面９５０が表示される。図９（ｂ）はＷＥＢページの印刷設定確認画面を示す図である。
【０１６３】
図示の通り、画面９５０では、図８（ａ）（ｂ）で設定した、印刷設定内容をウェブブラウザ画面上で確認することための情報が提示される。同図において提示される印刷設定情報はカレントパスに格納されているジョブ設定ファイル５０７に記述された内容とほぼ同じである。ただし、ウェブブラウザを用いることで可読性の高い表示が可能となっている。
【０１６４】
ジョブ設定ファイル５０７を、エディタ等のクライアント装置上で動作するプログラム等でオープンすると、図１２（ｂ）に示すように内部の情報を確認することができる。図１２（ｂ）はＪＤＦファイルの構成を示す図である。しかしながら、この方法は、ＪＤＦファイルのフォーマット並びに構造を知らないユーザにとっては困難である。そのため、本実施例のように、ユーザにとってより簡易な方法で、印刷設定内容をウェブブラウザ経由で確認できることが望ましい。
【０１６５】
前述したように、画面９００では、カレントパスが「ホットフォルダ」となっている。そのため、この画面において、印刷ファイルの投入操作が可能である。図１０（ａ）はＷＥＢページ上のホットフォルダにファイルを投入する様子を示す図である。
【０１６６】
この図は、クライアント装置（１０２、１０３、１０４）内のファイルシステムで管理されている印刷対象ファイルをマウス等の操作手段によって選択し、ＷＥＢブラウザで表示される画面１０００上に移動（ドラッグ）させた状態を示している。この状態では、ページ機能表示領域１００２内において、アイコン１００１が表示された状態となる。この状態でドラッグを解除（ドロップする）と、ＷＥＢブラウザにおいて印刷対象ファイルが読み込まれる。これにより、印刷処理に用いる印刷ファイルが指定されたことになる。すなわち画面９００は印刷ファイルの指定画面として機能する。ＷＥＢブラウザは、ＪＡＶＡスクリプトプログラムを実行しており、ページ機能表示領域１００２をファイル投入検知領域として機能させている。そのため、ドロップされたファイルを検知し、プリンタ１０１が備えるウェブサーバ３５５経由でホットフォルダ機能プログラム３５６に送信する処理を実行することができる。換言すると、本実施例では、ＷＥＢブラウザのような汎用的案アプリケーションを用いて、ホットフォルダに特有のドラッグ＆ドロップを用いた直観的なファイル投入操作を実現している。
【０１６７】
ＷＥＢブラウザがファイルの投入を検知し、印刷対象ファイルの送信を開始すると、画面１０５０に遷移する。図１０（ｂ）はＷＥＢページのファイル投入後画面を示す図である。
【０１６８】
図示の通り、画面１０５０のページ機能表示領域１０５１には、ファイルを送信中であることが示すメッセージとして「ＳＥＮＤＩＮＧ」が提示される。また、ファイルの送信処理が完了するとメッセージが「ＣＯＭＰＬＥＴＥ」に変化する。さらに時間が経過すると、画面９００へと遷移する。
【０１６９】
正常に動作している場合は以上のように画面が遷移する。一方で、正常に動作しない場合はエラー画面１１００が表示される。図１１は、ＷＥＢページのエラー画面を示す図である。エラー画面１１００は、ページ機能表示領域１１０１を備える。ページ機能表示領域１１０１には、不測の事態により所望の処理を実施できなかったことを示すエラーをメッセージが提示される。
【０１７０】
上述したエラーは、例えば次のようなケースにおいて生じ得る。階層移動先のフォルダが存在しない。新規に作成する設定ファイルの格納先が存在しない。印刷対象ファイルの投入先がホットフォルダではない。新規作成フォルダのフォルダ名が重複している。
【０１７１】
上述したエラーのほとんどは、ＷＥＢブラウザでの閲覧中に、別のプロセスがフォルダ操作やファイル操作が行った場合に生じ得る。具体的には、ＷＥＢブラウザで閲覧中のフォルダをファイルシステムにより消去されているケース等が挙げられる。こういったケースにも対応できるよう、本実施例ではエラー画面を用意している。
【０１７２】
＜クライアント制御＞
機器内蔵ホットフォルダ機能に利用に際して、クライアント装置（１０２、１０３、１０３）側で行われる処理フローについて説明する。図１３は、ウェブブラウザを実行するクライアント側の処理フローを説明するための図である。同図に示すフローは、ウェブブラウザ４５５のプログラムをＲＡＭ４０２に読み出し、ＣＰＵ４０１が実行することによって実現される。
【０１７３】
ウェブブラウザ４５５は、ユーザインターフェースを用いたユーザの操作があるまで待機した状態にとどまっている（Ｓ１３０１）。そして、ウェブブラウザ４５５は、ユーザが何かしらの操作が行われたことを検知すると、操作内容を判別するための処理へと進める。
【０１７４】
ウェブブラウザ４５５は、Ｓ１３０２において、操作内容が特定箇所のクリックであるか否かを判別する。そして、判別結果が「ＹＥＳ」である場合はＳ１３０４へと処理を進め、判別結果が「ＮＯ」である場合はＳ１３０３へと処理を進める。
【０１７５】
ウェブブラウザ４５５は、Ｓ１３０３において、操作内容が特定箇所へのファイルのドロップであるか否かを判別する。判別結果が「ＹＥＳ」である場合はＳ１３０７へと処理を進め、判別結果が「ＮＯ」である場合は、ホットフォルダ機能とは無関係の操作であるため操作内容を無視し、Ｓ１３０１へと処理を戻す。
【０１７６】
ウェブブラウザ４５５は、Ｓ１３０７において、ファイルのドロップ先が検知領域内であるか否かを判別する。判別結果が「ＹＥＳ」である場合はＳ１３０８へと処理を進めファイル送信に関する処理を実行する。判別結果が「ＮＯ」である場合は、ホットフォルダ機能とは無関係の操作でるため操作内容を無視し、Ｓ１３０１へと処理を戻す。
【０１７７】
ウェブブラウザ４５５は、Ｓ１３０４において、クリック対象がジョブ設定作成ボタン７５１の選択処理であるか否かを判別する。そして、判別結果が「ＹＥＳ」である場合はＳ１３０９へと処理を進め、ジョブ設定作成に関する処理を実行する。判別結果が「ＮＯ」である場合はＳ１３０５へと処理を進める。
【０１７８】
ウェブブラウザ４５５は、Ｓ１３０５において、クリック対象がジョブ設定確認ボタン９０２の選択処理であるか否かを判別する。そして、判別結果が「ＹＥＳ」である場合はＳ１３１０へと処理を進め、ジョブ設定確認に関する処理を実行する。判別結果が「ＮＯ」である場合はＳ１３０６へと処理を進める。
【０１７９】
ウェブブラウザ４５５は、Ｓ１３０６において、クリック対象がフォルダ操作領域６５１の選択処理であるか否かを判別する。そして、判別結果が「ＹＥＳ」である場合はＳ１３１０へと処理を進め、フォルダ操作に関する処理を実行する。判別結果が「ＮＯ」である場合はホットフォルダ機能とは無関係の操作であるため操作内容を無視し、Ｓ１３０１へと処理を戻す。
【０１８０】
＜ジョブ投入処理（クライアント）＞
ここでは、ファイル送信処理の詳細について説明する。Ｓ１３０８で登場するジョブ投入処理は、画面１０００において印刷対象ファイルが投入された後に実行される処理である。ファイル送信処理は、ウェブサーバ３５５が提供するＪＡＶＡスクリプトをウェブブラウザ４５５が実行することで実現される。図１４はファイル送信処理の詳細フローを説明するための図である。
【０１８１】
前述したように、ファイルの投入を検知すると、ウェブブラウザ４５５は、ファイル送信中を示す画面１０５０を表示させる（Ｓ１４０１）。そして、ウェブブラウザ４５５は、ウェブサーバ３５５と通信するための前処理を実行する。詳細には、ｈｔｔｐリクエストヘッダを作成し（Ｓ１４０２）、印刷対象データをｈｔｔｐプロトコル形式で送信するためにエンコード処理を実行する（Ｓ１４０３）。ウェブブラウザ４５５がウェブサーバに対してデータを送信する際のｈｔｔｐプロトコル上のコマンドとしてはＰＯＳＴコマンドが使用される。
【０１８２】
通信の前処理により準備が整うと、ウェブブラウザ４５５はＰＯＳＴコマンドを実行する。これにより、印刷対象データが、ウェブブラウザ４５５からウェブサーバ３５５に送信される（Ｓ１４０４）。なお、同ステップにおける送信処理は有限の時間を要する処理である。この処理時間は、印刷対象データのサイズ並びにネットワーク１００環境やＪＡＶＡスクリプトの処理速度により異なる。従って、送信処理が正常に完了したか否かについて、ウェブサーバから結果を取得して確認することが望ましい。そのため、ウェブブラウザ４５５は、ウェブサーバ３５５からデータ送信処理の結果を受信すべく待機状態に遷移する（Ｓ１４０５）。
【０１８３】
そして、ウェブサーバ３５５からの正常終了レスポンスを受信すると、ウェブブラウザ４５５は、ＪＡＶＡスクリプトの指示にしたがって、表示メッセージを「ＳＥＮＤＩＮＧ」から「ＣＯＭＰＬＥＴＥ」に遷移させる（Ｓ１４０６）。そして、ウェブブラウザ４５５は、通信処理の完了画面をユーザが確実に確認できるように所定時間が経過するまで待機する（Ｓ１４０７）。所定時間が経過すると、ウェブブラウザ４５５は、表示画面を送信処理が実行される前の画面（例えば画面９００）に遷移させる。
【０１８４】
＜ジョブ設定作成処理（クライアント）＞
ここでは、ジョブ設定作成処理の詳細について説明する。Ｓ１３０９で登場するジョブ設定作成処理は、画面７５０においてボタン７５１が選択された後に実行される処理である。ジョブ設定作成処理は、ウェブサーバ３５５が提供するＪＡＶＡスクリプトをウェブブラウザ４５５が実行することで実現される。図１５はジョブ設定作成画面処理の詳細フローを説明するための図である。
【０１８５】
画面７５０においてボタン７５１が選択されると、ウェブブラウザ４５５は、印刷設定画面８００、８５０を表示するためのｈｔｍｌデータをウェブサーバ３５５に要求すべく、リクエストデータを送信する（Ｓ１５０１）。
【０１８６】
リクエストデータに対して返却されたｈｔｍｌデータを受信すると、ウェブブラウザ４５５は、ｈｔｍｌデータに基づき印刷設定画面８００、８５０を生成する（Ｓ１５０２）。表示された印刷設定画面８００、８５０は印刷設定の選択や入力が可能であり、設定が完了するまでウェブブラウザ４５５は設定の入力操作を繰り返し受け付ける（Ｓ１５０３、１５０４：ＮＯ、Ｓ１５１０）。すなわち、Ｓ１５０４において、ボタン８０１が選択されるまで、印刷設定項目の選択、変更などの操作処理が、ウェブブラウザ４５５が供する表示領域に対して実行される。この際、ウェブブラウザ４５５は、ユーザの設定操作に伴い設定画面の表示情報を更新する（Ｓ１５１０）。
【０１８７】
Ｓ１５０４の判別の結果、ボタン８０１が選択されたと判別された場合（Ｓ１５０４：ＹＥＳ）、ウェブブラウザ４５５は、印刷設定の入力受け付けを完了し、Ｓ１５０５へと処理を進める。
【０１８８】
ウェブブラウザ４５５は、Ｓ１５０５において、印刷設定情報に基づくＸＭＬデータを作成し、Ｓ１５０６へと処理を進める。このＸＭＬデータは、プリンタ１０１側において、ＪＤＦファイルの生成に用いられる。ＸＭＬデータの構成は図１２（ａ）に例示した通りである。
【０１８９】
ウェブブラウザ４５５は、Ｓ１５０６において、Ｈｔｍｌヘッダ部を作成し、ＰＯＳＴコマンドを用いてＸＭＬデータをプリンタ１０１に送信する（Ｓ１５０７）。そして、ウェブブラウザ４５５は、送信結果のレスポンスがプリンタ１０１から届くまで待機する（Ｓ１５０８）。
【０１９０】
プリンタ１０１から、ＸＭＬデータの送信が正常に完了したことを示すレスポンスを受け付けると、ウェブブラウザ４５５は、表示中の画面をホットフォルダ画面（例えば図９（ａ））へと遷移させる。
【０１９１】
＜ジョブ設定確認処理（クライアント）＞
ここでは、ジョブ設定確認処理の詳細について説明する。Ｓ１３１０で登場するジョブ設定確認処理は、画面９００においてボタン９０２が選択された後に実行される処理である。ジョブ設定確認処理は、ウェブサーバ３５５が提供するＪＡＶＡスクリプトをウェブブラウザ４５５が実行することで実現される。図１６は、ジョブ設定確認処理の詳細フローを説明するための図である。
【０１９２】
画面９００においてボタン９０２が選択されると、ウェブブラウザ４５５は、設定確認画面を描画処理するのに必要な情報を要求するためのリクエスト情報を、ウェブサーバ３５５に対して送信する（Ｓ１６０１）。同リクエストは具体的にはｈｔｔｐプロトコルにおけるＧＥＴメソッドの実行によりｈｔｍｌデータの受信要求を送信することによって実行される。
【０１９３】
ウェブブラウザ４５５は、Ｓ１６０２においてｈｔｍｌデータを受信し、ｈｔｍｌデータに基づいて画面の描画処理を実行する。その結果、ウェブブラウザ４５５には、ジョブ設定確認画面（たとえば図９（ｂ））が表示された状態となる。この状態において、ウェブブラウザ４５５は、ユーザの操作を待機する（Ｓ１６０３）。
【０１９４】
ウェブブラウザ４５５は、ユーザから受け付けた操作がボタン９５１の選択であることに基づいて（Ｓ１６０４：ＹＥＳ）、印刷設定画面を閉じて遷移元画面に戻すべくＳ１６０５へと処理を進める。
【０１９５】
ウェブブラウザ４５５は、Ｓ１６０５において、Ｈｔｍｌヘッダ部を作成し（Ｓ１６０５）、遷移元画面を描画処理するのに必要な情報を要求するためのリクエスト情報を、ウェブサーバ３５５に対して送信する（Ｓ１６０６）。そして、ウェブブラウザ４５５は、送信結果のレスポンスがプリンタ１０１から届くまで待機する（Ｓ１６０７）。プリンタ１０１から、レスポンスとしてｈｔｍｌデータを受け付けると、ウェブブラウザ４５５は、このｈｔｍｌデータに基づいて画面の描画処理をする。その結果、ＷＥＢブラウザには、遷移元の画面であるホットフォルダ画面（例えば図９（ａ））が表示される。
【０１９６】
＜フォルダ操作処理（クライアント）＞
ここでは、フォルダ操作処理の詳細について説明する。Ｓ１３１１で登場するフォルダ操作処理は、画面６５０等においてフォルダ操作領域６５１内のボタンが選択されることで実行される処理である。フォルダ操作処理は、ウェブサーバ３５５が提供するＪＡＶＡスクリプトをウェブブラウザ４５５が実行することで実現される。図１７は、フォルダ操作処理の詳細フローを説明するための図である。
【０１９７】
画面６５０等においてフォルダ操作領域６５１内で操作が行われると、ウェブブラウザ４５５は、フォルダ操作領域内においてどのような操作がおこなわれたかを判別する処理を行う（Ｓ１７０１）。
【０１９８】
判別の結果、操作内容がフォルダ作成ボタンの選択であった場合（Ｓ１７０２：ＹＥＳ）、ウェブブラウザ４５５は、Ｓ１７０５へと処理を進める。Ｓ１７０５において、ウェブブラウザ４５５は、フォルダ作成処理のリクエストデータを作成する。このリクエストデータは、ウェブブラウザ４５５からウェブサーバ３５５を経由し、ホットフォルダ機能プログラム３５６に送信される。
【０１９９】
判別の結果、操作内容が上階層移動ボタンの選択であった場合（Ｓ１７０２：ＮＯ、Ｓ１７０３：ＹＥＳ）、ウェブブラウザ４５５は、Ｓ１７０６へと処理を進める。Ｓ１７０６において、ウェブブラウザ４５５は、上階層移動処理のリクエストデータを作成する。このリクエストデータは、ウェブブラウザ４５５からウェブサーバ３５５を経由し、ホットフォルダ機能プログラム３５６に送信される。
【０２００】
判別の結果、操作内容がフォルダ指定ボタンの選択であった場合（Ｓ１７０２：ＮＯ、Ｓ１７０３：ＮＯ、Ｓ１７０４：ＹＥＳ）、ウェブブラウザ４５５は、Ｓ１７０７へと処理を進める。フォルダ指定ボタンの選択とは、換言すると、指定した下階層のフォルダに移動するためのボタンの選択処理である。Ｓ１７０７において、ウェブブラウザ４５５は、下階層移動処理のリクエストデータを作成する。このリクエストデータは、ウェブブラウザ４５５からウェブサーバ３５５を経由し、ホットフォルダ機能プログラム３５６に送信される。
【０２０１】
判別の結果、操作内容がいずれのボタン選択でもなかった場合（Ｓ１７０２：ＮＯ、Ｓ１７０３：ＮＯ、Ｓ１７０４：ＮＯ）、本実施例の特徴部分とは関係がない操作であるため説明を省略する。
【０２０２】
Ｓ１７０５，Ｓ１７０６，１７０７のいずれかの処理をおこなったあと、ウェブブラウザ４５５は、Ｓ１７０８へと処理を進める。Ｓ１７０８において、ウェブブラウザ４５５は、ウェブサーバ３５５との間のｈｔｔｐプロトコルによる通信に必要なｈｔｔｐヘッダを生成する。そして、ウェブブラウザ４５５は、Ｓ１７０５、Ｓ１７０６、Ｓ１７０７のいずれかにおいて生成したリクエストデータを、プリンタ１０１に送信する（Ｓ１７０９）。詳細には、ウェブブラウザ４５５からウェブサーバ３５５を経由して、ホットフォルダ機能プログラム３５６にリクエストデータが送信される。
【０２０３】
リクエストデータ送信後、ウェブブラウザ４５５は、ウェブサーバ３５５からのレスポンスを待機する（Ｓ１７１０）。ウェブサーバ３５５からのレスポンスとしてｈｔｍｌデータを受信すると、ウェブブラウザ４５５は、取得したｈｔｍｌデータに基づいて画面の描写処理を行う（Ｓ１７１１）。例えば、カレントパスが“／ｓｈａｒｅ／ｆｏｌｄｅｒ”である状態において、フォルダ作成ボタンが選択されると、ウェブブラウザには画面７００が表示される。また、カレントパスが“／ｓｈａｒｅ／ｆｏｌｄｅｒ”である状態において、上階層移動ボタンが選択されると、画面６５０が表示される。ウェブブラウザには、画面７００が表示される。また、カレントパスが“／ｓｈａｒｅ／ｆｏｌｄｅｒ“である状態において、上階層移動ボタンが選択されると、画面６５０が表示される。また、カレントパスが”／ｓｈａｒｅ／ｆｏｌｄｅｒ“である状態において、ｆｏｌｄｅｒ０１ボタン（不図示）が選択されると、ウェブブラウザには画面７５０が表示される。
【０２０４】
＜プリンタ制御＞
機器内蔵ホットフォルダ機能に利用に際して、プリンタ１０１側で行われる処理フローについて説明する。図１８はプリンタ側の動作フローを説明するための図である。同図に示すフローは、ウェブサーバ３５５ならびにホットフォルダ機能プログラム３５６をＲＡＭ３０８に読み出し、ＣＰＵ３０５が実行することに実現される。なお、本実施例では、ウェブサーバ３５５とホットフォルダ機能プログラム３５６を別々のプログラムに分けているが、それぞれの機能を１つのソフトウェアモジュールで実現してもよい。
【０２０５】
プリンタ側の処理は、クライアント装置（１０２、１０３、１０４）において実行されるウェブブラウザからのリクエストを契機に実行される。ウェブサーバ３５５は、クライアント装置（１０２、１０３、１０４）から何らかの処理要求を受信するまで待機している（Ｓ１８０１）。
【０２０６】
クライアント装置（１０２、１０３、１０４）からのリクエストを受信すると、ウェブサーバ３５５は、受信したリクエストデータをホットフォルダ機能プログラム３５６に送信する。ホットフォルダ機能プログラム３５６は、取得したリクエストデータの内容に基づきリクエストの種類を判別する（Ｓ１８０２）。
【０２０７】
判別の結果、リクエスト内容がフォルダ操作処理であった場合（Ｓ１８０３：ＹＥＳ）、ホットフォルダ機能プログラム３５６はＳ１８０７へと処理を進める。ホットフォルダ機能プログラム３５６は、Ｓ１８０７においてフォルダ操作処理を実行し、その処理結果をウェブサーバ３５５に通知する。ウェブサーバ３５５は、ホットフォルダ機能プログラム３５６からの通知内容に基づきレスポンスデータを作成する。
【０２０８】
判別の結果、リクエスト内容がジョブ設定作成処理であった場合（Ｓ１８０３：ＮＯ，Ｓ１８０４：ＹＥＳ）、ホットフォルダ機能プログラム３５６はＳ１８０８へと処理を進める。
【０２０９】
ホットフォルダ機能プログラム３５６は、Ｓ１８０７においてフォルダ操作処理を実行し、その処理結果をウェブサーバ３５５に通知する。ウェブサーバ３５５は、ホットフォルダ機能プログラム３５６からの通知内容に基づきレスポンスデータを作成する。
【０２１０】
判別の結果、リクエスト内容がジョブ投入処理であった場合（Ｓ１８０３：ＮＯ，Ｓ１８０４：ＮＯ、Ｓ１８０５：ＹＥＳ）、ホットフォルダ機能プログラム３５６はＳ１８１０へと処理を進める。ホットフォルダ機能プログラム３５６は、Ｓ１８１０においてフォルダ操作処理を実行し、その処理結果をウェブサーバ３５５に通知する。ウェブサーバ３５５は、ホットフォルダ機能プログラム３５６からの通知内容に基づきレスポンスデータを作成する。
【０２１１】
判別の結果、リクエスト内容がジョブ設定確認処理であった場合（Ｓ１８０３：ＮＯ，Ｓ１８０４：ＮＯ、Ｓ１８０５：ＮＯ、Ｓ１８０６：ＹＥＳ）、ホットフォルダ機能プログラム３５６はＳ１８１２へと処理を進める。ホットフォルダ機能プログラム３５６は、Ｓ１８１２においてフォルダ操作処理を実行し、その処理結果をウェブサーバ３５５に通知する。ウェブサーバ３５５は、ホットフォルダ機能プログラム３５６からの通知内容に基づきレスポンスデータを作成する。
【０２１２】
Ｓ１８１５、Ｓ１８０９、Ｓ１８１１，Ｓ１８１３のいずれかでレスポンスデータを作成後、ウェブサーバ３５５はクライアント装置（１０２、１０３、１０４）にレスポンスデータを送信する（Ｓ１８１４）。
【０２１３】
そして、次のリクエストを受け付けるべくＳ１８０１へと処理を戻す。
【０２１４】
＜印刷ジョブ投入処理（サーバ）＞
ここでは、ジョブ投入処理の詳細について説明する。Ｓ１８１０で登場するジョブ投入処理は、Ｓ１４０４で送信されたリクエストをウェブサーバ３５５経由で取得したことに基づき実行される処理である。ジョブ投入処理は、ホットフォルダ機能プログラム３５６、ＪＤＦ機能プログラム３５７、印刷ジョブキュー管理プログラム３６１、ファイルシステムサーバ３５４等をＲＡＭ３０８に読み出し、ＣＰＵ３０５が実行することに実現される。図１９は、印刷ジョブ生成処理の詳細フローを説明するための図である。
【０２１５】
Ｓ１４０４で送信されたリクエストを取得すると、プログラム３５６は、リクエストデータを解析する（Ｓ１９０１）。リクエストデータはヘッダ部と印刷対象ファイルのデータが含まれており、ここでは、リクエストデータのうち、ｈｔｍｌ形式のヘッダ部を解析する。解析の結果、プログラム３５６は、リクエストデータに含まれるフォルダのパス情報を取得する（Ｓ１９０２）。このフォルダパスの情報は投入先ホットフォルダを特定するための情報である。
【０２１６】
フォルダのパス情報を取得すると、プログラム３５６は、パス情報で指定されたフォルダが存在するか否かをチェックする（Ｓ１９０３）。フォルダの有無のチェックは、ファイルシステムサーバ３５４に対して問い合わせを行うことによって実現する。
【０２１７】
フォルダが存在する場合（Ｓ１９０３：ＹＥＳ）は、プログラム３５６はＳ１９０４へと処理を進める。
【０２１８】
フォルダが存在しない場合（Ｓ１９０３：ＮＯ）、プログラム３５６はリクエストが不正であると判断し、エラーとして扱うべくＳ１９１１に処理を進める。プログラム３５６は、Ｓ１９１１において、エラー情報を記憶する。その後、Ｓ１９１０において、処理実行結果がエラーであることをウェブサーバ３５５に通知する。エラーを示す処理結果を取得したウェブサーバ３５５は、Ｓ１８１１においてエラーを示すレスポンスデータを作成しＳ１８１４において送信する。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２１９】
Ｓ１９０４において、プログラム３５６は、パス情報の指定するフォルダ内にＪＤＦファイルが存在するか否かを判定する。ＪＤＦファイルがある場合（Ｓ１９０４：ＹＥＳ）、プログラム３５６はＳ１９０５へと処理を進める。ＪＤＦファイルが無い場合（Ｓ１９０４：ＮＯ）、プログラム３５６はＳ１９１１へと処理を進めエラーとして取り扱う。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２２０】
Ｓ１９０５において、プログラム３５６は、受信した印刷対象ファイルについて、ファイルシステムサーバ３５４を介して記憶デバイス３０９に格納する。
【０２２１】
次に、プログラム３５６は、パス情報で指定されたフォルダに格納されているＪＤＦファイルの解析処理を実行し、設定値を取得する（Ｓ１９０６）。同ステップで取得された印刷設定仕様は記憶デバイス３０９内に記憶される。
【０２２２】
図１２（ｂ）に示すように、ＪＤＦファイル内は、ＸＭＬ形式によって表現されるテキストデータ内にＪＤＦが定める文法に従って印刷設定仕様が記載されている。ＪＤＦ解析処理では、このようなＪＤＦファイルに対し、ＸＭＬ解析、構文解析を行う。ＸＭＬ解析処理、構文解析処理の詳細なアルゴリズムに関する説明は省略する。
【０２２３】
プログラム３５６は、印刷対象ファイルと印刷設定仕様をＪＤＦ機能プログラム３５７にセットし、ＪＤＦ機能プログラム３５７を起動する。これにより、ＪＤＦ機能プログラム３５７により実行される印刷ジョブが登録される（Ｓ１９０７）。
【０２２４】
ＪＤＦ機能プログラム３５７は印刷ジョブを実行すべく、Ｓ１９０７において、印刷対象ファイルのフォーマットを解析する。そして、プリンタ１０１のプリントデバイス３０３で印刷可能な画像情報に変換する処理を実行する。その際に、Ｓ１９０７においてセットされた印刷設定情報を反映する。そして、印刷設定に基づき、プリントデバイス３０３、シート処理デバイス３１０に対し制御指示を行う。その結果、変換された画像情報に基づく印刷処理がプリントデバイス３０３で実行される。すなわち、ユーザに成果物が提供される。
【０２２５】
印刷対象データの印刷処理が終了し、正常終了であると判別すると（Ｓ１９１０）、プログラム３５６は正常終了であることをウェブサーバ３５５に通知する。ウェブサーバ３５５は、この通知に基づいて、Ｓ１８１１において正常終了を示すレスポンスデータを作成しＳ１８１４において送信する。その結果、ウェブブラウザ４５５には正常終了のメッセージや印刷履歴情報が表示される。
【０２２６】
＜ジョブ設定作成処理（サーバ）＞
ここでは、ジョブ設定作成処理の詳細について説明する。Ｓ１８０８で登場するジョブ設定作成処理は、Ｓ１５０７で送信されたリクエストをウェブサーバ３５５経由で取得したことに基づき実行される処理である。ジョブ設定作成処理は、ホットフォルダ機能プログラム３５６をＲＡＭ３０８に読み出し、ＣＰＵ３０５が実行することに実現される。図２０は、印刷ジョブ生成処理の詳細フローを説明するための図である。
【０２２７】
Ｓ１５０１で送信されたリクエストを取得して解析する。リクエストデータには、ｈｔｍｌ形式のヘッダ部とＸＭＬ形式のデータが含まれる。ここでｈ、リクエストデータのうち、ｈｔｍｌ形式のヘッダ部に含まれる情報を解析する（Ｓ２００１）。
【０２２８】
プログラム３５６はリクエストデータに含まれるフォルダのパス情報を取得する（Ｓ２００２）。このパス情報はホットフォルダとして機能させるフォルダを特定するのに必要な情報である。すなわち、どのフォルダにＪＤＦファイルを配置するかを特定するのに必要な情報である。
【０２２９】
プログラム３５６は、Ｓ２００３において、パス情報に相当するフォルダが存在するか否かを判別する。この処理はファイルシステムサーバ３５４に対して問い合わせることにより実現する。
【０２３０】
フォルダが存在する場合（Ｓ２００３：ＹＥＳ）は、プログラム３５６はＳ２００４へと処理を進める。
【０２３１】
フォルダが存在しない場合（Ｓ２００３：ＮＯ）、プログラム３５６はリクエストが不正であると判断し、エラーとして扱うべくＳ２００９に処理を進める。プログラム３５６は、Ｓ２００９において、エラー情報を記憶する。その後、Ｓ２００８において、処理実行結果がエラーであることをウェブサーバ３５５に通知する。エラーを示す処理結果を取得したウェブサーバ３５５は、Ｓ１８０９においてエラーを示すレスポンスデータを作成しＳ１８１４において送信する。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２３２】
Ｓ２００４において、プログラム３５６は、パス情報の指定されたフォルダ内にＪＤＦファイルが存在するか否かを判定する。換言すると、パス情報の指定されたフォルダがホットフォルダであるか否かを判定する。
【０２３３】
ＪＤＦファイルがない場合（Ｓ２００４：ＮＯ）、プログラム３５６はホットフォルダ作成処理を継続すべくＳ２００５へと処理を進める。ＪＤＦファイルがある場合（Ｓ２００４：ＹＥＳ）、プログラム３５６はＳ２００９へと処理を進めエラーとして取り扱う。何故ならば、すでにホットフォルダである状態のフォルダをホットフォルダにするためのリクエストは不正な処理とみなされるからである。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２３４】
プログラム３５６は、Ｓ２００５において、受信したＸＭＬデータを解析する。そして、解析によりＸＭＬデータから取得した設定情報に基づきＪＤＦファイル形式に生成する（Ｓ２００６）。プログラム３５６は、生成されたＪＤＦファイルを指定されたフォルダに配置する（Ｓ２００７）。
【０２３５】
ＪＤＦファイルの配置が完了すると、プログラム３５６は、Ｓ２００８において、完了通知をウェブサーバ３５５に通知する。ウェブサーバ３５５は、この通知に基づき、正常終了した際のレスポンスデータを作成する（Ｓ１８１１）。そして、レスポンスデータをクライアント装置（１０２、１０３、１０４）へと送信する（Ｓ１８１４）。その結果、Ｓ１５０９において、ウェブブラウザ４５５にはホットフォルダ画面（例えば図９（ａ））が表示される。
【０２３６】
＜ジョブ設定確認処理（サーバ）＞
ここでは、ジョブ設定確認処理の詳細について説明する。Ｓ１８１２で登場するジョブ設定確認処理は、Ｓ１６０１で送信されたリクエストをウェブサーバ３５５経由で取得したことに基づき実行される処理である。ジョブ設定確認処理は、ホットフォルダ機能プログラム３５６をＲＡＭ３０８に読み出し、ＣＰＵ３０５が実行することに実現される。図２１は、ジョブ設定確認処理の詳細フローを説明するための図である。
【０２３７】
Ｓ１６０１で送信されたリクエストを取得すると、プログラム３５６は、リクエストデータのうち、ｈｔｍｌのヘッダ部に含まれる情報を解析する（Ｓ２１０１）。
【０２３８】
プログラム３５６はリクエストデータに含まれるフォルダのパス情報を取得する（Ｓ２１０２）。このパス情報は設定確認対象のホットフォルダを特定するのに必要な情報である。すなわち、どのフォルダにＪＤＦファイルを配置されているかを特定するのに必要な情報である。
【０２３９】
プログラム３５６は、Ｓ２１０３において、パス情報に相当するフォルダが存在するか否かを判別する。この処理はファイルシステムサーバ３５４に対して問い合わせることにより実現する。
【０２４０】
フォルダが存在する場合（Ｓ２１０３：ＹＥＳ）は、プログラム３５６はＳ２１０４へと処理を進める。
【０２４１】
フォルダが存在しない場合（Ｓ２１０３：ＮＯ）、プログラム３５６はリクエストが不正であると判断し、エラーとして扱うべくＳ２１０８に処理を進める。プログラム３５６は、Ｓ２１０８において、エラー情報を記憶する。その後、Ｓ２１０８において、処理実行結果がエラーであることをウェブサーバ３５５に通知する。エラーを示す処理結果を取得したウェブサーバ３５５は、Ｓ１８０６においてエラーを示すレスポンスデータを作成しＳ１８１４において送信する。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２４２】
Ｓ２１０４において、プログラム３５６は、パス情報の指定されたフォルダ内にＪＤＦファイルが存在するか否かを判定する。換言すると、パス情報の指定されたフォルダがホットフォルダであるか否かを判定する。
【０２４３】
ＪＤＦファイルがある場合（Ｓ２１０４：ＹＥＳ）、プログラム３５６はＳ２１０５へと処理を進める。ＪＤＦファイルがない場合（Ｓ２００４：ＮＯ）、プログラム３５６はＳ２１０８へと処理を進めエラーとして取り扱う。これは、ホットフォルダでないフォルダについて設定確認を要求するリクエストは不正な処理とみなされるからである。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２４４】
Ｓ２１０５において、プログラム３５６は、パス情報の指定されたフォルダ内に格納されたＪＤＦファイルを解析し、印刷設定仕様を抽出する。そして、プログラム３５６は、抽出した印刷設定仕様をｈｔｍｌ形式で記述する変換処理をおこなう（Ｓ２１０６）。
【０２４５】
変換処理が完了すると、プログラム３５６は、Ｓ２１０７において、処理の完了通知とともにｈｔｍｌ形式の印刷設定仕様データをウェブサーバ３５５に通知する。ウェブサーバ３５５は、この通知に基づき、正常終了した際のレスポンスデータを作成する（Ｓ１８１１）。そして、レスポンスデータをクライアント装置（１０２、１０３、１０４）へと送信する（Ｓ１８１４）。その結果、Ｓ１６０２において、ウェブブラウザ４５５には設定確認画面（例えば図９（ｂ））が表示される。
【０２４６】
＜フォルダ操作処理（サーバ）＞
ここでは、ジョブ操作処理の詳細について説明する。Ｓ１８０７で登場するフォルダ操作処理は、Ｓ１７０９で送信されたリクエストをウェブサーバ３５５経由で取得したことに基づき実行される処理である。フォルダ操作処理は、ホットフォルダ機能プログラム３５６をＲＡＭ３０８に読み出し、ＣＰＵ３０５が実行することに実現される。図２２は、フォルダ操作処理の詳細フローを説明するための図である。
【０２４７】
Ｓ１７０９で送信されたリクエストを取得すると、プログラム３５６は、リクエストデータ解析処理をおこなう。ここでは、リクエストデータに含まれる情報のうち、ｈｔｍｌ形式のヘッダ部に含まれる情報を解析する。
【０２４８】
解析の結果、プログラム３５６は、フォルダのパス情報ならびにフォルダの操作指示に関する情報を取得する。そして、これらの情報をもとに、操作指示の内容を判別する（Ｓ２２０２）。
【０２４９】
Ｓ２２０２の判別の結果、要求された内容がフォルダ作成処理である場合（Ｓ２２０３：ＹＥＳ）、プログラム３５６は、Ｓ２２０４へと処理を進める。詳細には、ボタン７０５が選択され、名称入力欄にフォルダ名称が入力されＯＫボタン７０４が選択されたことを示す操作情報がリクエストデータに含まれている場合に、要求された内容がフォルダ作成処理であると判別する。プログラム３５６は、リクエストデータに基づき指定された名称のフォルダを、指定されたパスに作成する。例えば、”／ｓｈａｒｅ／ｆｏｌｄｅｒ／”のパス下に”ｆｏｌｄｅｒ０１”フォルダを作成する。フォルダの作成は、フォルダ作成要求をファイルシステムサーバに送信することで実現する。フォルダ作成後、プログラム３５６は、フォルダ作成の完了を示す情報をウェブサーバに通知する。これにより、フォルダ作成後画面の情報を含むレスポンスデータがウェブサーバからクライアント装置（１０２，１０３，１０４）に送信される。その結果、Ｓ１７１１において、ウェブブラウザに新規フォルダの格納先のパスの様子を示す画面が表示される。
【０２５０】
Ｓ２２０２の判別の結果、要求された内容がフォルダ移動処理である場合（Ｓ２２０３：ＮＯ、Ｓ２２０５：ＹＥＳ）、プログラム３５６は、Ｓ２２０６へと処理を進める。Ｓ２２０６において、プログラム３５６は、要求された階層の移動方向を判別する。カレントパスから上の階層への移動要求であればＳ２２０７へと処理を進める。カレントパスから下の階層への移動要求であればＳ２２０８へと処理を進める。カレントパスから上の階層への移動要求は、上階層移動ボタン７０６が選択された場合にリクエストデータに含まれる。カレントパスから下の階層への移動要求は、フォルダ指定ボタン（たとえばボタン６５９）が選択された場合にリクエストデータに含まれる。
【０２５１】
Ｓ２２０７において、プログラム３５６は、階層移動先がアクセス可能な最上位階層であるか否かを判別する（Ｓ２２０７）。階層移動先が最上位階層フォルダでない場合、（Ｓ２２０７：ＹＥＳ）、Ｓ２２１１へ処理を進め、移動先フォルダの情報を取得する。
【０２５２】
階層移動先が最上位階層フォルダである場合、（Ｓ２２０７：ＹＥＳ）、最上位階層用の画面を表示するための情報をウェブサーバに通知する。これにより、最上位階層用の画面情報を含むレスポンスデータがウェブサーバからクライアント装置（１０２，１０３，１０４）に送信される。その結果、Ｓ１７１１において、ウェブブラウザに最上位階層用の画面（例えば図６（ｂ））が表示される。なお、最上位階層用の画面には上階層移動ボタンは表示されない。
【０２５３】
Ｓ２２０８において、プログラム３５６は、指定された下階層のフォルダが存在するか否かを判別する。指定されたフォルダが存在する場合、（Ｓ２２０８：ＹＥＳ）、Ｓ２２１２へ処理を進め、移動先フォルダの情報を取得する。指定されたフォルダが存在しない場合、不正な要求処理であるため、エラーとして扱うべくＳ２２１３へと処理を進める。そして、プログラム３５６は、Ｓ２２１３において、処理実行結果がエラーであることをウェブサーバ３５５に通知する。エラーを示す処理結果を取得したウェブサーバ３５５は、Ｓ１８１５においてエラーを示すレスポンスデータを作成しＳ１８１４において送信する。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２５４】
Ｓ２２１１またはＳ２２１２でフォルダ情報を取得した後、プログラム３５６は指定フォルダにＪＤＦファイルが存在するか否かを判定する（Ｓ２２１４）。換言すると、移動先フォルダがホットフォルダであるか否かを判別する。
【０２５５】
移動先にＪＤＦファイルが格納されている場合（Ｓ２２１４：ＹＥＳ）、ホットフォルダ用の画面を表示するための情報をウェブサーバに通知する。これにより、ホットフォルダ用の画面情報を含むレスポンスデータがウェブサーバからクライアント装置（１０２，１０３，１０４）に送信される。その結果、Ｓ１７１１において、ウェブブラウザにホットフォルダ用の画面（例えば図９（ａ））が表示される。
【０２５６】
移動先にＪＤＦファイルが格納されていない場合（Ｓ２２１４：ＮＯ）、通常フォルダ用の画面を表示するための情報をウェブサーバに通知する。これにより、通常フォルダ用の画面情報を含むレスポンスデータがウェブサーバからクライアント装置（１０２，１０３，１０４）に送信される。その結果、Ｓ１７１１において、ウェブブラウザに通常フォルダ用の画面（例えば図７（ｂ））が表示される。
【０２５７】
Ｓ２２０２の判別の結果、要求された内容がフォルダ作成処理でもフォルダ移動処理でもない場合（Ｓ２２０３：ＮＯ、Ｓ２２０５：ＮＯ）、不正な要求であると判断し、プログラム３５６は、エラーとして扱うべくＳ２２１３へと処理をすすめる。そして、プログラム３５６は、Ｓ２２１３において、処理実行結果がエラーであることをウェブサーバ３５５に通知する。エラーを示す処理結果を取得したウェブサーバ３５５は、Ｓ１８１５においてエラーを示すレスポンスデータを作成しＳ１８１４において送信する。その結果、ウェブブラウザ４５５にはエラー画面１１００が表示される。
【０２５８】
＜備考＞
以上で述べたように、印刷システム１はウェブブラウザ上のＪＡＶＡスクリプトを活用することにより、ファイルをドラッグ＆ドロップすることで印刷ファイルを投入することができる。そのため従来のホットフォルダと同じ感覚で利用することができ、操作性に優れる。
【０２５９】
ホットフォルダを用い印刷ファイルの投入方法は、印刷対象ファイルをファイルの格納操作という比較的簡易な操作によって印刷処理を指示することを可能とする。従って、たとえば、大量の印刷データ（ファイル）を同一設定で印刷指示する場合、プリンタドライバを用いるよりも操作性に優れる。なぜならプリンタドライバを用いる場合は、アプリケーションを用いて個別のファイルをオープンし、印刷指示する等の煩雑さ工程が必要だからである。すなわち、定型印刷業務の効率向上効果を得ることができる。
【０２６０】
また、印刷システム１では、画像形成装置のシェアフォルダをホットフォルダとしてもちいている。そのため、複合機並びにプリンタ等画像形成装置が所有するファイルシステムにアクセスする仕組みさえ備えていれば、オペレーティングシステムに依存しない印刷環境を実現できる。
【０２６１】
また、印刷システム１では、ホットフォルダの印刷設定がホットフォルダ内に格納される。そのため、個々のクライアント装置側で個別に保持もしくは管理する必要がない。
【０２６２】
また、印刷システム１は、印刷設定ファイルの作成環境をウェブブラウザ上で提供する。そのため、クライアント装置の装置構成等の影響を受けにくく、様々な装置に対して、印刷設定ファイルの作成環境を提供することができる。
【０２６３】
また、印刷システム１は、プリンタ１０１が備える操作デバイス３０４ではなく、クライアント装置からホットフォルダに関する操作を行うことができる。そのため、ユーザは、ホットフォルダに関する操作をするにあたり、プリンタ１０１のそばまで近づく必要がない。また、操作デバイス３０４に固有の制約にとらわれない自由なＵＩを提供することができる。
【０２６４】
また、印刷システム１は、共有フォルダ内に印刷設定ファイルを格納する。そのため、印刷設定ファイルの編集に精通するユーザであればファイルを直接編集することも可能である。
【０２６５】
また、印刷システム１は、印刷対象ファイルの投入をウェブブラウザ上で検知し、クライアント装置（１０２、１０３、１０４）に通知する。そのため、投入された印刷対象ファイルは速やかに印刷処理される。換言すると、従来技術のように定常監視をする方法では、ファイルを投入してから検知されるまでに遅延を生じていたが、本実施例ではこれを解消することができる。課題を解消することができる。したがって、本実施例によれば、印刷待ち時間を抑制可能な機器内蔵ホットフォルダ機能を備えるプリンタ提供することができる。
【０２６６】
また、本実施例では、ホットフォルダ機能を利用するのにフォルダの定常監視が不要である。そのため、ホットフォルダを提供するストレージ（例えばＨＤＤやＳＳＤ）へのアクセス回数を抑制できる。これにより、ストレージの寿命低下を抑制できる。また、ストレージへのアクセスが生じていない場合に、このストレージへの通電を抑制・ＯＦＦにすることで、省エネに貢献できる。
【０２６７】
（その他の実施形態）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０２６８】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
【０２６９】
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【０２７０】
なお、各実施例中に登場する略称の定義は次の通りである。ＭＦＰとは、Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌのことである。ＰＣとは、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒのことである。ＳＦＰとは、Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌのことである。ＡＳＩＣとは、Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔのことである。ＣＰＵとは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔである。ＦＡＸとはＦＡＣＳＩＭＩＬＥのことである。ＬＡＮとは、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋのことである。ＲＡＭとは、Ｒａｎｄｏｍ‐Ａｃｃｅｓｓ  Ｍｅｍｏｒｙのことである。ＲＯＭとは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙのことである。ＵＩとは、Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅのことである。ＵＳＢとは、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓのことである。ＮＩＣとはＮｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄのことである。ＨＤＤとはＨａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅのことである。ＳＳＤとはＳｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅのことである。ＨＴＭＬとはＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅのことである。ＸＭＬとはＥｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅのことである。ＰＤＬとは、Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅのことである。ＪＤＦとは、Ｊｏｂ  Ｄｅｆｉｎｉｔｉｏｎ  Ｆｏｒｍａｔのことである。
【符号の説明】
【０２７１】
１０１  プリンタ
１０２、１０３、１０４  クライアント装置
１５３  操作部
１５４  ウェブサーバ部
１５５  ファイルシステム部
２１４  印刷部
２２１  ホットフォルダ機能部
【図１】
2019212057.tif 000003
【図２】
2019212057.tif 000004
【図３】
2019212057.tif 000005
【図４】
2019212057.tif 000006
【図５】
2019212057.tif 000007
【図６】
2019212057.tif 000008
【図７】
2019212057.tif 000009
【図８】
2019212057.tif 000010
【図９】
2019212057.tif 000011
【図１０】
2019212057.tif 000012
【図１１】
2019212057.tif 000013
【図１２】
2019212057.tif 000014
【図１３】
2019212057.tif 000015
【図１４】
2019212057.tif 000016
【図１５】
2019212057.tif 000017
【図１６】
2019212057.tif 000018
【図１７】
2019212057.tif 000019
【図１８】
2019212057.tif 000020
【図１９】
2019212057.tif 000021
【図２０】
2019212057.tif 000022
【図２１】
2019212057.tif 000023
【図２２】
2019212057.tif 000024