(57)【要約】      （修正有）【課題】印刷対象ファイルが格納されると自動的に当該ファイルを印刷装置に送信する所定のフォルダを利用した印刷ジョブについて、フォルダを有する装置の挙動に依存することなく、複数の印刷対象ファイルが一括で格納された場合にはユーザが意図する順序で印刷を行う仕組みを提供する。【解決手段】画像形成装置は、画像形成装置が管理するファイルシステムにアクセスする要求を外部装置から受け付ける。要求を受け付けると、画像形成装置は、要求されたアクセス先のフォルダに対して設定されている印刷設定の情報に従って、フォルダに格納される複数の画像形成対象の画像形成の順序を決定するプログラムを生成する。さらに、画像形成装置は、フォルダを操作するための操作画面の画面情報と、生成したプログラムとを、外部装置に送信する。【選択図】図１４
2020017216.tif 000002
【特許請求の範囲】
【請求項１】
印刷設定情報が関連付けられたフォルダを提供する記憶部と、シートに画像を形成する画像形成部と、を備える画像形成装置であって、
前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムと、を前記外部装置に送信する送信手段と、
前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御手段と
を備えることを特徴とする画像形成装置。
【請求項２】
前記プログラムは、前記画面に表示されるフォルダに複数の印刷ファイルが格納されると、所定の条件に従って、該複数の印刷ファイルの転送順序を決定することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記所定の条件とは、前記フォルダに格納された複数の印刷ファイルの名称順、サイズ順、及び更新日時順の少なくとも何れかであることを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記画面に複数の印刷ファイルが格納される操作は、ドラッグアンドドロップ操作であることを特徴とする請求項２又は３に記載の画像形成装置。
【請求項５】
前記画面は、さらに、フォルダの作成、及びフォルダ階層の移動が操作可能に構成されることを特徴とする請求項４に記載の画像形成装置。
【請求項６】
所定のフォルダに対する印刷設定を行う要求を前記外部装置から受け付ける受付手段をさらに備え、
前記送信手段は、前記所定のフォルダの印刷設定を行う設定画面の画面情報を前記外部装置へ送信することを特徴とする請求項１乃至５の何れか１項に記載の画像形成装置。
【請求項７】
前記設定画面を介して設定された印刷設定の情報は、前記所定のフォルダ内に印刷設定ファイルとして保存され、
前記制御手段は、前記印刷設定の情報として、操作されるフォルダ内に保存された印刷設定ファイルを参照することを特徴とする請求項６に記載の画像形成装置。
【請求項８】
前記送信手段は、前記受付手段によって所定の要求を前記外部装置から受け付けると、操作者のユーザ認証を行う認証画面の画面情報を送信し、認証が成功すると、前記所定の要求に応じた画面情報を送信することを特徴とする請求項６又は７に記載の画像形成装置。
【請求項９】
前記プログラムは、ＪＡＶＡスクリプトであることを特徴とする請求項１乃至８の何れか１項に記載の画像形成装置。
【請求項１０】
画像形成の要求を受け付けると、画像形成のリストに要求を追加し、かつ、画像形成対象を記憶部に格納するとともに、格納が完了すると当該リストに該画像形成対象の保存先を登録する格納手段をさらに備え、
前記画像形成部は、前記画像形成のリストに登録された要求の順序で、かつ、保存先が登録されている画像形成対象の画像形成を行うことを特徴とする請求項１乃至９の何れか１項に記載の画像形成装置。
【請求項１１】
前記画像形成部によって画像形成が開始された画像形成対象と、前記格納手段によって格納が失敗した画像形成対象とは、前記画像形成のリストから削除されることを特徴とする請求項１０に記載の画像形成装置。
【請求項１２】
印刷設定情報が関連付けられたフォルダを提供する記憶部と、シートに画像を形成する画像形成部と、を備える画像形成装置の制御方法であって、
送信手段が、前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムと、を前記外部装置に送信する送信工程と、
制御手段が、前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御工程と
を含むことを特徴とする画像形成装置の制御方法。
【請求項１３】
印刷設定情報が関連付けられたフォルダを提供する記憶部と、シートに画像を形成する画像形成部と、を備える画像形成装置の制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記制御方法は、
送信手段が、前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムと、を前記外部装置に送信する送信工程と、
制御手段が、前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御工程と
を含むことを特徴とするプログラム。
【請求項１４】
情報処理装置と、印刷設定情報が関連付けられたフォルダを提供する記憶部及びシートに画像を形成する画像形成部を備える画像形成装置とが通信可能なシステムであって、
前記情報処理装置は、
前記画像形成装置が管理するファイルシステムへのアクセスを要求する要求手段と、
前記要求手段による要求の応答として、前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムとを受信する受信手段と、
前記画面情報に従って前記画面をウェブブラウザに表示する表示手段と、
前記表示手段によって表示された前記画面を介して、前記フォルダに複数の印刷ファイルが格納されると、前記プログラムを用いて前記複数の印刷ファイルの転送順序を決定する決定手段と
を備え、
前記画像形成装置は、
前記要求手段による要求を受け付けると、前記画面情報と、前記プログラムと、を前記情報処理装置に送信する送信手段と、
前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御手段と
を備えることを特徴とするシステム。
【請求項１５】
情報処理装置と、印刷設定情報が関連付けられたフォルダを提供する記憶部及びシートに画像を形成する画像形成部を備える画像形成装置とが通信可能なシステムの制御方法であって、
前記情報処理装置は、
要求手段が、前記画像形成装置が管理するファイルシステムへのアクセスを要求する要求工程と、
受信手段が、前記要求工程による要求の応答として、前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムとを受信する受信工程と、
表示手段が、前記画面情報に従って前記画面をウェブブラウザに表示する表示工程と、
決定手段が、前記表示工程で表示された前記画面を介して、前記フォルダに複数の印刷ファイルが格納されると、前記プログラムを用いて前記複数の印刷ファイルの転送順序を決定する決定工程と
を含み、
前記画像形成装置は、
送信手段が、前記要求工程による要求を受け付けると、前記画面情報と、前記プログラムと、を前記情報処理装置に送信する送信工程と、
制御手段が、前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御工程と
を含むことを特徴とするシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、システム、それらの制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、プリンタ等の画像形成装置に対して印刷処理を実行させるために、クライアント装置にホットフォルダを用意し、そのホットフォルダに印刷対象ファイルが格納されると、自動的にプリンタに印刷ジョブを送信して印刷させることが知られている。これにより、クライアント装置のユーザは、印刷対象ファイルを格納するという操作という比較的簡易な操作によって印刷を指示することができる。従って、例えば大量の印刷データ（ファイル）を同一の印刷設定で印刷するように指示する場合、プリンタドライバ等のアプリケーションを用いて個別のファイルをオープンして印刷指示するといった煩雑さからユーザを解放できる。
【０００３】
更に、近年では上述したホットフォルダがクライアント装置で動作するアプリケーションとしてではなく、プリンタ等の画像形成装置の機能として、同等の機能を供する仕組み、即ち、機器内蔵ホットフォルダも知られている。機器内蔵ホットフォルダは、画像形成装置が備えるファイルシステム及びファイルサーバが、外部のクライアント装置に対して共有フォルダを公開し、その共有フォルダに対してクライアント装置が印刷対象ファイルを格納することにより印刷を実行する仕組みである。機器内蔵ホットフォルダは、クライアント装置で動作するホットフォルダと同等の操作性、利便性を享受しつつ、更なる利便性をユーザに提供することができる。第一に、クライアント装置に対してホットフォルダ機能を実現するためのアプリケーションをインストールする必要がない。第二に、画像形成装置が所有するファイルシステムにアクセスする仕組みさえ備えていれば、オペレーティングシステムに依存しない印刷環境を実現できる。第三に、ホットフォルダの印刷設定は画像形成装置に保持されるため、個々のクライアント装置で個別に保持もしくは管理する必要がない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２１９９２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来技術には以下に記載する課題がある。例えば、上記従来技術では、クライアント装置から画像形成装置のファイルシステムに対して印刷対象ファイルが配置されたことを、ホットフォルダ機能を実現するプログラムがホットフォルダを定常的に監視することにより実現していた。この方法では、複数のファイルを一括でホットフォルダに投入した場合、印刷される順序はクライアント装置のシステムの挙動に依存する。即ち、複数のファイルをフォルダに投入した際に、転送される順序はクライアント装置のファイルシステムの挙動に依存するため、ユーザの意図する順序で印刷することができない場合がある。例えば、プログラムがフォルダの監視を行ったタイミングで全てのファイルが揃っていない場合などがある。通常のファイル操作であればファイルを移動する順序が前後しても影響は少ないが、印刷物の出力順序が変わってしまうと印刷後にユーザが手で印刷物の並び替えを行う必要があり、作業量やミスの増加に繋がる。
【０００６】
本発明は、上述の問題の少なくとも一つに鑑みて成されたものであり、印刷対象ファイルが格納されると自動的に当該ファイルを印刷装置に送信する所定のフォルダを利用した印刷ジョブについて、当該フォルダを有する装置の挙動に依存することなく、複数の印刷対象ファイルが一括で格納された場合にはユーザが意図する順序で印刷を行う仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、例えば、印刷設定情報が関連付けられたフォルダを提供する記憶部と、シートに画像を形成する画像形成部と、を備える画像形成装置であって、前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムと、を前記外部装置に送信する送信手段と、前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御手段とを備えることを特徴とする。
【０００８】
また、本発明は、例えば、情報処理装置と、印刷設定情報が関連付けられたフォルダを提供する記憶部及びシートに画像を形成する画像形成部を備える画像形成装置とが通信可能なシステムであって、前記情報処理装置は、前記画像形成装置が管理するファイルシステムへのアクセスを要求する要求手段と、前記要求手段による要求の応答として、前記フォルダに紐づけて前記画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報と、前記画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムとを受信する受信手段と、前記画面情報に従って前記画面をウェブブラウザに表示する表示手段と、前記表示手段によって表示された前記画面を介して、前記フォルダに複数の印刷ファイルが格納されると、前記プログラムを用いて前記複数の印刷ファイルの転送順序を決定する決定手段とを備え、前記画像形成装置は、前記要求手段による要求を受け付けると、前記画面情報と、前記プログラムと、を前記情報処理装置に送信する送信手段と、前記フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって前記印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で前記画像形成部に実行させる制御手段とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、印刷対象ファイルが格納されると自動的に当該ファイルを印刷装置に送信する所定のフォルダを利用した印刷ジョブについて、当該フォルダを有する装置の挙動に依存することなく、複数の印刷対象ファイルが一括で格納された場合にはユーザが意図する順序で印刷を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】印刷システムのブロック図。
【図２Ａ】、
【図２Ｂ】システム全体のシーケンス図。
【図３】機器内蔵ホットフォルダのシステム構成図
【図４】複合機１０１の構成を説明するブロック図。
【図５】クライアント装置の構成を説明するブロック図。
【図６】ウェブブラウザ７０５に表示するログイン機能を有するウェブページの一例を示す図。
【図７Ａ】、
【図７Ｂ】ウェブブラウザ７０５に表示するフォルダの階層表示、作成機能を有するウェブページの一例を示す図。
【図８Ａ】、
【図８Ｂ】ウェブブラウザ７０５に表示する印刷設定作成機能を有するウェブページの一例を示す図。
【図９】複合機１０１のＨＤＤ４０４に作成されるフォルダ構成の模式図。
【図１０】ウェブブラウザ７０５に表示する機器内蔵ホットフォルダの設定機能有するウェブページの一例を示す図。
【図１１】複数のファイルへの印刷指示操作を受け付けた時に実行されるファイル整列プログラムの一例を示す図。
【図１２Ａ】、
【図１２Ｂ】印刷指示を行なった時のウェブブラウザ７０５に表示するウェブページの遷移図。
【図１３】ウェブブラウザに操作を受け付けた時のＣＰＵ５０１の処理手順を示すフローチャート。
【図１４】フォルダ画面要求を受信した時のＣＰＵ４０１の処理手順を示すフローチャート。
【図１５】印刷要求を受け付けた時のＣＰＵ４０１の処理手順を示すフローチャート。
【図１６】受け付けたファイルの印刷順序を制御するＣＰＵ４０１の処理手順を示すフローチャート。
【図１７】印刷処理におけるＣＰＵ４０１の処理手順を示すフローチャート。
【図１８】複数ファイルへの印刷要求指示操作と本発明によるファイルの送信順序を説明する図。
【図１９】ＲＡＭ４０２に記憶される印刷リストの変化を示す模式図。
【発明を実施するための形態】
【００１１】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確立されるのであって、以下の個別の実施形態によって限定されるわけではない。なお、実施形態に係る画像形成装置として複合機（デジタル複合機／ＭＦＰ／Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）を例に説明する。しかしながら適用範囲は複合機に限定はせず、画像処理機能を有する装置であればよい。
【００１２】
＜第１の実施形態＞
＜印刷システムの構成＞
以下では、添付図面を参照して、本発明の第１の実施形態について説明する。まず、図１を参照して、本実施形態に係る印刷システムの構成を説明する。本実施形態では画像形成装置の一例として複合機１０１（ＭＦＰ：Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）を、情報処理装置であるクライアント装置の一例としてＰＣ、携帯端末を例に説明する。複合機１０１とＰＣ１０２，１０３は、ネットワーク１００を介して通信可能に接続されている。ＰＣ１０２及びＰＣ１０３は、異なるオペレーティングシステムによって動作するシステムであっても構わない。或いは、同一オペレーティングシステムの異なるバージョンによるシステムであっても構わない。本実施形態では、このような、クライアント装置のアプリケーション実行環境の種別が混在した印刷システム環境を想定している。
【００１３】
更に、ネットワーク１００には、無線ＬＡＮアクセスポイント１０５が接続されている。この無線ＬＡＮアクセスポイント１０５には、携帯端末１０４や、図示しないその他様々な種類の機器と無線ＬＡＮによって通信可能なよう構成される。本実施形態では、携帯端末１０４のような種類のデバイスも、ＰＣ１０２，ＰＣ１０３と同等のクライアント装置として、以下に説明する印刷環境が提供されうる。このような携帯端末１０４は、急速に普及が進み、かつ製品の多様化も著しい。また、このような携帯性の高い端末の普及に伴い、例えば同図に示すネットワーク１００上に配置された複合機１０１に対して印刷を要望するユーザのクライアント装置は、パブリック環境から持ちこまれた装置である場合なども想定している。
【００１４】
次にクライアント装置であるＰＣ１０２，ＰＣ１０３、携帯端末１０４について説明する。以下、ＰＣ１０２，ＰＣ１０３、携帯端末１０４を総称するときはクライアント装置とする。
【００１５】
ＰＣ１０２，１０３は、印刷ジョブを投入するアプリケーションプログラム等の各種のプログラムを実行できる。しかしながら、本実施形態においては、これら印刷用アプリケーションプログラムがインストールされていないことを前提としている。また、近代的なオペレーティングシステムが通常有しているネットワークファイル共有機能及び、ウェブブラウザ等のウェブ情報アクセス機能は有していることを前提としている。クライアント装置は、上述のウェブ情報アクセス機能を利用することにより、ネットワーク１００上に接続された機器との間で相互にウェブ経由での情報の送受信、共有機能を利用することができる。従って、クライアント装置は複合機１０１に対してウェブ情報アクセス機能を利用して、印刷対象ファイルを含む各種データを送受信することが可能である。
【００１６】
＜印刷システム全体のシーケンス図＞
次に、図２Ａ及び図２Ｂを参照して、ユーザ３２６が認証、フォルダ移動、及び複数ファイルの印刷指示を行い、実際に印刷されるまでのシーケンスについて説明する。図３に示すユーザ３２６がＵＩ部３０１を操作し、ウェブサーバ部３２８にアクセス要求をしたところから処理が開始される。なお、クライアント装置ごとによる構成や制御に差異はないため、１台を例に挙げて説明する。
【００１７】
まず、図２Ａを説明する。Ｓ２０１乃至Ｓ２０８の処理は、ユーザ３２６がクライアント装置の操作部３２７を介してウェブブラウザアプリ部３０２を操作し、複合機１０１のウェブサーバ部３２８にウェブページアクセス操作を行なった際の処理の流れである。ウェブサーバ部３２８を介して認証部３０４で操作者（ユーザ）の認証処理が実行される。認証処理においてＵＩ部３０１に表示する画面は図８を用いて後述する。
【００１８】
Ｓ２０１で、ユーザ３２６がクライアント装置のＵＩ部３０１を操作すると、クライアント装置のウェブブラウザアプリ部３０２は、ウェブページ表示を行うための当該操作を受け付ける。機器内蔵ホットフォルダが提供するウェブページの取得を指示する操作であり、具体的にはアドレスを入力することやリンクを選択するなどの操作となる。続いて、Ｓ２０２で、ウェブブラウザアプリ部３０２は、受け付けたＵＲＬに対してページ取得要求を複合機１０１に対して行う。この処理は通常のウェブブラウザの処理であり、ＧＥＴリクエストなどによって行われる。
【００１９】
次に、Ｓ２０３で、複合機１０１のウェブサーバ部３２８は、受信したページ取得要求からユーザ３２６の情報を取得し、指定のＵＲＬにアクセスする権利（アクセス権）を有するか否かを判定する。ユーザ３２６はログイン認証を行うことによってアクセス権を取得することができる。ここで、ウェブサーバ部３２８は、ユーザがアクセス権とを有していればログイン認証を行うための認証画面の情報をクライアント装置に送信する。
【００２０】
次に、Ｓ２０４で、ウェブブラウザアプリ部３０２は、ウェブサーバ部３２８から受信した画面情報に従って認証画面をＵＩ部３０１に表示する。続いて、Ｓ２０５で、ユーザ３２６がＵＩ部３０１に表示された認証画面に認証情報を入力すると、ウェブブラウザアプリ部３０２は当該入力情報を受け付ける。その後、Ｓ２０６で、ウェブブラウザアプリ部３０２は、認証画面のウェブページに記載されたＵＲＬに認証要求を送信する。認証要求にはユーザ３２６から入力された認証情報が含まれる。通常、認証要求は暗号化して送信される。
【００２１】
Ｓ２０７で、ウェブサーバ部３２８は受信した認証要求から認証情報を取得し、複合機１０１の認証部３０４に認証情報が有効であるか否かを問い合わせる。認証部３０４はユーザＤＢ３０５の情報と受け付けた認証情報とを比較し、結果を返答する。ウェブサーバ部３２８は認証部３０４からの結果が認証成功を示す場合には、認証結果とともに、フォルダ画面の情報をウェブブラウザアプリ部３０２に通知する。Ｓ２０８で、ウェブブラウザアプリ部３０２は、ウェブサーバ部３２８から受信した画面情報に従ってフォルダ画面をＵＩ部３０１に表示する。ここで表示されるフォルダ画面は、ホットフォルダにおける最上位階層のフォルダの画面である。
【００２２】
次に、Ｓ２１０乃至Ｓ２１４に示すフォルダ操作の処理手順を説明する。ここでは、ユーザ３２６がＵＩ部３０１に表示されたフォルダ画面を操作してフォルダ画面の要求操作を行うところから処理を開始する。フォルダ画面及び当該画面における操作は図７Ａ及び図７Ｂを用いて後述をする。
【００２３】
Ｓ２１０で、クライアント装置のウェブブラウザアプリ部３０２は、ユーザ３２６がＵＩ部３０１に表示されたフォルダ画面を操作して行った、フォルダ画面の要求操作を受け付ける。当該操作は、いずれかの移動先フォルダ指定ボタンの操作、図７Ａに示す上階層移動ボタン９１０の操作、又はウェブブラウザアプリ部３０２に直接フォルダパスを含むアドレスを指定する操作などである。
【００２４】
次に、Ｓ２１１で、ウェブブラウザアプリ部３０２は、指定されたアドレスの情報を取得するリクエストをウェブサーバ部３２８に送信する。詳細は図１３及び図１４を用いて後述する。続いて、Ｓ２１２で、複合機１０１のウェブサーバ部３２８は、フォルダ画面の要求を検知する。さらに、ウェブサーバ部３２８は、受信したフォルダ画面の要求からフォルダパスを取得し、ファイルシステム部３２９を介してフォルダのファイルリストを取得する。そして、ウェブサーバ部３２８は、取得したファイルリストに既定の印刷設定ファイルの拡張子を持つファイルが含まれているかを判定する。詳細は図１４を用いて後述する。
【００２５】
次に、Ｓ２１３で、ウェブサーバ部３２８は、ページ生成部３０６によって、取得したフォルダ情報に基づいてフォルダ画面を生成する。更にホットフォルダ機能部３２１を呼び出す。ホットフォルダ機能部３２１はプログラム生成部３３１でファイル整列プログラムを生成する。生成した情報はウェブブラウザアプリ部３０２に通知される。詳細は図１０、図１１、図１４を用いて後述する。
【００２６】
Ｓ２１４で、ウェブブラウザアプリ部３０２は、ウェブサーバ部３２８から受信した情報に従った、フォルダ画面をＵＩ部３０１に表示する。フォルダ画面は図８Ａ及び図８Ｂを用いて後述する。
【００２７】
次に、図２Ｂを説明する。Ｓ２２０乃至Ｓ２２５に示す印刷要求の処理手順を説明する。ここでは、ユーザ３２６がＵＩ部３０１に表示されたフォルダ画面を操作して印刷指示操作を行うところから処理を開始する。
【００２８】
Ｓ２２０で、ウェブブラウザアプリ部３０２は、ユーザ３２６がＵＩ部３０１に表示されたフォルダ画面を介して操作した、印刷指示操作を受け付ける。当該操作は、例えば図７Ａに示すフォルダ種別の表示領域９０８にファイルをドラッグアンドドロップする操作である。
【００２９】
Ｓ２２１で、ウェブブラウザアプリ部３０２は、ファイル整列プログラムを実行する。ファイル整列プログラムはユーザ３２６の設定に従ってファイルを送信する順序を決定するプログラムである。Ｓ２２２乃至Ｓ２２５の処理は印刷指示操作で指定されたファイルの回数だけ実行され、それぞれの処理において１つのファイルをウェブサーバ部３２８に送信する。Ｓ２２３乃至Ｓ２２５の処理の詳細は図１５を用いて後述する。
【００３０】
Ｓ２２２で、ウェブブラウザアプリ部３０２は、ウェブサーバ部３２８に印刷要求処理を行う。この処理はＰＯＳＴリクエストなどの通常のウェブブラウザの機能を使用する。印刷要求処理には印刷指示を受けたファイルとフォルダ画面のフォルダパスとが含まれる。続いて、Ｓ２２３で、複合機１０１のウェブサーバ部３２８は、受信した印刷要求を検知し、ホットフォルダ機能部３２１を呼び出してＲＡＭ４０２に記憶する印刷リストに印刷要求を登録する。登録する印刷要求には要求を対応付ける情報としてＩＤを付加し、受け付けたフォルダパスを含める。
【００３１】
次に、Ｓ２２４で、ウェブサーバ部３２８は、印刷要求からファイルを読み出し、ファイルシステム部３２９を介してＨＤＤ４０４に読み出したファイルを格納する。続いて、Ｓ２２５で、ホットフォルダ機能部３２１は、Ｓ２２３で印刷リストに登録した印刷要求に、保存したファイルのファイルパスを加える。
【００３２】
次に、Ｓ２３０乃至Ｓ２３３に示す印刷処理の処理手順を説明する。ホットフォルダ機能部３２１が、印刷リストが更新されたことを検知するところから処理を開始する。Ｓ２３０乃至Ｓ２３３の処理の詳細は図１６から図１７を用いて後述する。
【００３３】
Ｓ２３０で、ホットフォルダ機能部３２１は、複合機１０１のＲＡＭ４０２に記憶する印刷リストが更新されたことを検知する。Ｓ２３１乃至Ｓ２３３の処理は印刷リストに印刷要求がなくなる、又は先頭の印刷要求のファイルパスが未登録になるまで繰り返し実行される。
【００３４】
Ｓ２３１で、ホットフォルダ機能部３２１は、印刷リストの先頭の印刷要求を取得する。印刷リストに印刷要求がない場合、又は印刷要求のファイルパスが登録されていない場合は処理を終了する。続いて、Ｓ２３２で、ホットフォルダ機能部３２１は、印刷要求からフォルダパスを取得し、ファイルシステム部３２９を介してフォルダ内の印刷設定ファイルを取得する。さらに、ジョブ登録依頼部３２３によって、取得した印刷設定ファイルの解析を行う。
【００３５】
次に、Ｓ２３３で、ホットフォルダ機能部３２１は、印刷要求からファイルパスを取得し、ファイルシステム部３２９を介してファイルを読み出す。ジョブ登録依頼部３２３はＳ２３２で解析した結果と読み出したファイルを用いてジョブ登録部３２０にジョブ登録リクエストを送信する。同時にＲＡＭ４０２に記憶する印刷リストから印刷要求を削除する。
【００３６】
次に、Ｓ２４０及びＳ２４１に示す結果記録の処理手順を説明する。ここでは、印刷キュー管理部３１９が印刷完了を検知するところから処理を開始する。Ｓ２４０及びＳ２４１の処理の詳細は図１５を用いて後述する。
【００３７】
Ｓ２４０で、印刷キュー管理部３１９は、印刷部３１４から印刷完了（ジョブ終了）を検知し、印刷結果管理部３３２に通知する。続いて、Ｓ２４１で、印刷結果管理部３３２は、印刷完了通知を受けて、ＲＡＭ４０２に記憶する印刷履歴に印刷結果を登録する。
【００３８】
＜システム構成＞
次に、図３を参照して、本実施形態に係るホットフォルダ印刷システムの機能構成を説明する。図３に示すように印刷システムは、複数の機能モジュールの集合で表すことができる。各モジュールはハードウェアで実現してもよいし、ソフトウェアで実現してもよい。また、一部の機能モジュールを外部サーバ（不図示）に配置し、この外部サーバと通信することで機能を実現してもよい。なお、図２と共通する箇所は同じ参照番号を使用して、それらの説明を省略する。さらに、ここでは、各システムが構成する、機能モジュールと、それらの機能モジュールの処理並びに機能間の関連とを説明する。
【００３９】
印刷システムは、前述した操作部３２７、ウェブサーバ部３２８、ファイルシステム部３２９、プリント制御部３３０、印刷部３１４、及び認証部３０４等を備える。操作部３２７は、ＵＩ部３０１、ウェブブラウザアプリ部３０２、及びリモートファイルシステム部３０３を含む。ＵＩ部３０１は、画像情報の表示並びにデータの入出力指示、操作指示を受け付けるために設けられた機能部である。ユーザ３２６の操作内容は、ウェブブラウザアプリ部３０２やリモートファイルシステム部３０３に反映される。
【００４０】
ウェブブラウザアプリ部３０２は、ＵＩ部３０１上のウィンドウ画面にウェブコンテンツを表示することによって画面情報を提示する機能部である。ウェブブラウザアプリ部３０２は、後述するウェブサーバ部３２８と情報の送受信処理を行う。ウェブブラウザアプリ部３０２からＵＩ部３０１には主に画面情報が提供される。
【００４１】
リモートファイルシステム部３０３は、クライアント装置が備えるファイルシステム機能を用いて複合機１０１内のフォルダ及びファイルを操作するための機能部である。リモートファイルシステム部３０３は、共有設定部３１０の設定情報に基づくアクセス権限のもと、ファイル管理部３１１にアクセスし各種操作を行う。リモートファイルシステム部３０３と共有設定部３１０の間では共有設定情報のやり取りが行われる。なお、リモートファイルシステム機能を利用すると具体的には次のような操作が可能である。例えば、フォルダの階層の情報、パスの情報、フォルダ配下のサブフォルダやファイルのリスト情報取得、フォルダ作成／削除処理、及びファイルの作成／削除処理等のファイルシステム由来の処理の実行がこれに相当する。また機器内蔵ホットフォルダ機能においては、印刷対象データであるＰＤＦ形式のファイルの送信処理等が含まれる。ただし、後述するように、本発明における機器内蔵ホットフォルダは、ファイルシステム部３２９に対して操作部３２７が直接的に印刷関連指示を実行する代わりとして、ウェブサーバ部３２８を経由して印刷関連指示を実行することを特徴としている。
【００４２】
ウェブサーバ部３２８は、複合機１０１が有する、ウェブサービスを外部装置に対して提供する機能部である。ウェブサーバ部３２８は、外部装置からの各種要求、即ち、リクエストを受信して、その内容に応じた処理を実行した結果をページ情報という形で外部に返却する一連の処理を実行する。
【００４３】
ウェブサーバ部３２８は、ページ生成部３０６、ＰＤＦ転送部３０７、印刷設定生成部３０８、及び通知部３０９を含んで構成される。ページ生成部３０６は、受け付けたリクエストを実行した結果を外部装置に対して提供するためのページ情報を生成するモジュールである。ＰＤＦ転送部３０７は、印刷対象データであるＰＤＦフォーマットのファイルをウェブサーバ部３２８が外部装置から受信した場合に、当該受信ファイルの格納処理を実行する。具体的には、ファイルシステム部３２９を介して、ファイル管理部３１１がＰＤＦ３１２を格納する処理を実行する。
【００４４】
印刷設定生成部３０８は、ウェブサーバ部３２８が外部装置から印刷設定を含むリクエストを受信した場合の処理を実行するモジュールである。これは、ホットフォルダ作成処理における、フォルダに対応付ける印刷設定セットをウェブサーバ部３２８が受信した場合に相当する。この場合、印刷設定生成部３０８は、ホットフォルダ機能部３２１が備えるフォーマット変換部３２５を利用し、ＪＤＦ形式のファイル３１３に変換した上で、ファイルシステム部３２９が管轄するファイル管理部３１１経由で格納する。
【００４５】
プログラム生成部３３１は、後述するファイル整列プログラム等、クライアント装置へ提供するプログラムを生成する。印刷結果管理部３３２は、上述したように、印刷キュー管理部３１９からの印刷完了通知を受けて、ＲＡＭ４０２に記憶する印刷履歴に印刷結果を登録する。
【００４６】
通知部３０９は、ウェブサーバ部３２８が外部装置からのウェブリクエストを受け付けたことをトリガとして、複合機１０１内部で処理を実行する際の、モジュール間の通知イベントを生成するためのモジュールである。具体的には、ホットフォルダ機能部３２１に、ウェブサーバ部３２８が受理した要求に応じ、印刷処理やフォルダ階層移動処理、並びにそれらに付随する描画情報の生成、返信処理等の一連の処理実行のタイミングを制御するモジュールである。
【００４７】
ウェブサーバ部３２８は、さらに認証部３０４と連動し、ウェブサーバ部３２８を経由して提供するウェブサービスに対するユーザのアクセス制御を実現するための認証処理を実行可能である。認証処理を実行する際には、ウェブサーバ部３２８は、受信したユーザ情報に基づき、認証部３０４が備えるユーザＤＢ３０５に対し、照合及び認証可否の判断を行う。認証が成功した場合に限り、ウェブサーバ部３２８経由で提供する各種ウェブサービスの利用を当該ユーザに対して許可するよう、制御する。
【００４８】
プリント制御部３３０は、複合機１０１が備える、印刷部３１４、及びメディア管理部３１５を制御し、印刷対象データをシート上に画像形成し、かつシートを加工処理するための一連の制御を司るモジュールである。プリント制御部３３０はさらに、ジョブ実行部３１６、印刷キュー管理部３１９、ジョブ登録部３２０、及びホットフォルダ機能部３２１という複数のサブモジュールに分割される。
【００４９】
ジョブ実行部３１６は、複合機１０１内部に生成される印刷制御をジョブという、印刷データの単位でまとめて管理し、かつ実行するモジュールである。印刷キュー管理部３１９は、ジョブ実行部３１６で管理される個別のジョブに順序を付けて実行順序を管理するためのモジュールである。ホットフォルダ機能部３２１は、ホットフォルダ機能を実現するためのモジュールである。ホットフォルダ機能部３２１が生成する印刷ジョブは、ジョブ登録部３２０を経由して印刷キュー管理部３１９に対して、生成順に格納される。
【００５０】
印刷キュー管理部３１９は、管理するジョブの先頭のジョブに対して、ジョブ実行部３１６に実行指示を与える。具体的には、まず画像生成部３１７が、ジョブが印刷対象とする、ＰＤＦ３１２等の画像データをラスタライズする。また、印刷設定部３１８がＪＤＦ（Job Definition Format）３１３等に記述される印刷設定やメディア設定を解析する。さらに、ジョブ実行部３１６は、印刷部３１４、及びメディア管理部３１５を制御し、上記ラスタライズされた画像データを、解析されたコマンドに従って、シート上に画像形成する処理を実行する。これにより、一連の成果物生成処理が実行される。ジョブ実行部３１６による成果物生成処理が完了すると、印刷キュー管理部３１９は次のジョブに対して、同様の制御を順に実行するよう制御される。このような処理を、印刷キュー管理部３１９が管理するジョブの全てについて完了するまで、順に処理するよう制御される。
【００５１】
ホットフォルダ機能部３２１は、機器内蔵ホットフォルダ機能を複合機１０１において実現するためのモジュールであり、機能提供部である。ホットフォルダ機能部３２１が提供する、機器内蔵ホットフォルダ機能を構成する機能群としては、ホットフォルダの作成関連処理、投入された印刷ジョブの実行関連処理、及び機器内蔵ホットフォルダ機能自体の設定処理が含まれる。さらに、当該機能群には、これら各機能を指示するための操作部３２７に対する操作画面の提示処理等が含まれる。
【００５２】
また、本実施形態における機器内蔵ホットフォルダ機能は、ウェブサーバ部３２８を経由して印刷対象データを受理することを特徴としている。したがって、ウェブサーバ部３２８が管理する通知部３０９からの印刷処理実行トリガをブラウザ経由用通知部３２４が受けて、ジョブ登録依頼部３２３がジョブ登録部３２０に登録することで、印刷ジョブの実行が指示される。
【００５３】
＜複合機の構成＞
次に、図４を参照して、複合機１０１の構成について説明する。図４（ａ）は複合機１０１のハードウェア構成を示し、図４（ｂ）は複合機１０１のソフトウェア構成を示す。複合機１０１は、シート上の画像を読み取る読取機能、及びシートに画像を印刷する印刷機能を有する。また、複合機１０１は、画像が印刷された複数のシートを綴じたり、複数のシートを揃えたり、複数のシートの排出先を複数のトレイに分けたりする後処理機能を有する。なお、シートには、普通紙や厚紙などの用紙、フィルムシートなどが含まれる。
【００５４】
更に、複合機１０１は、ＰＣ１０２、ＰＣ１０３、携帯端末１０４などのクライアント装置から利用可能なファイル共有機能を有する。また、複合機１０１が有するファイル共有機能は前述したウェブ情報アクセス機能を経由しても利用可能なように構成される。ファイル共有機能及びそのウェブ情報アクセス機能や、各装置でこれら機能を提供するプログラム構成、さらにこれらを経由した利用方法についての詳細は後述する。なお、これらの機能に本発明に係る複合機の機能を限定する意図はなく、他の機能、例えば、画像データの送信機能等、他の機能を含んでもよい。
【００５５】
複合機１０１は、コントローラ４００、スキャンデバイス４０９、プリントデバイス４１０、給紙デバイス４１１、シート処理デバイス４１２、操作デバイス４１３、及び外部ストレージ４１４を備える。また、コントローラ４００は、ＣＰＵ４０１、ＲＡＭ４０２、ＲＯＭ４０３、ＨＤＤ４０４、ＲＩＰ回路４０５、圧縮展開回路４０６、ＮＩＣ４０７、インタフェース４０８を備える。複合機１０１は、展開された画像データを給紙部に格納されたメディア（紙、シートなど）を搬送し、当該メディア上にトナーを用いて画像形成するための装置である。複数の異なる役割を持つ装置が相互に連結され、複雑なシート処理が可能なよう構成されている。本発明による複合機１０１は、装置内部に複数の処理対象となるジョブのデータを記憶可能なハードディスクドライブ４０４（以下、ＨＤＤとも称する。）等の不揮発性メモリを具備する。なお、本実施形態ではハードディスクを用いた複合機１０１の例を示すが、同様の大容量かつ不揮発性の記憶装置であれば、ハードディスクに限定されなくてもよい。
【００５６】
複合機１０１は、スキャンデバイス４０９から受け付けたジョブデータを、当該ＨＤＤ４０４を介してプリントデバイス４１０で印刷するコピー機能を具備する。さらに、複合機１０１は、外部装置からインタフェース４０８を介して受け付けたジョブデータを、当該ＨＤＤ４０４を介してプリントデバイス４１０で印刷する印刷機能等を具備する。本発明による複合機１０１は、このような複数の機能を具備したＭＦＰタイプの印刷装置（画像形成装置とも称する。）である。本実施形態の複合機１０１は、カラープリント可能な印刷装置でも、モノクロプリント可能な印刷装置でも、本形態で述べる各種制御を実行可能であるならば如何なる構成でもよい。
【００５７】
スキャンデバイス４０９は、原稿画像を読み取り、読み取られた画像データを画像処理する。インタフェース４０８は、ファクシミリ、ネットワーク接続機器、及び外部専用装置と、画像データなどを送受する。また、ＨＤＤ４０４は、スキャンデバイス４０９及びインタフェース４０８の何れかから受け付けた複数の印刷対象となるジョブの画像データを記憶する。従って、本実施形態に係る複合機１０１は、スキャンデバイス４０９から受け付けたジョブデータを、当該ＨＤＤ４０４を介してプリントデバイス４１０で印刷することができる（コピー機能）。さらに、複合機１０１は、外部装置からインタフェース４０８を介して受け付けたジョブデータを、当該ＨＤＤ４０４を介してプリントデバイス４１０で印刷することができる（印刷機能）。本発明による複合機１０１は、このような複数の機能を具備したＭＦＰタイプの印刷装置（画像形成装置とも称する。）である。
【００５８】
ＨＤＤ４０４には、本発明による複合機１０１によって永続的に記憶及び変更、管理される各種管理情報なども格納される。プリントデバイス４１０は、ＨＤＤ４０４に記憶された印刷対象のジョブのデータの印刷処理を印刷媒体に対して実行する。操作デバイス４１３は、ユーザインタフェースの一例に該当する表示部である。
【００５９】
ＣＰＵ４０１は、複合機１０１が具備する各種ユニットの処理や動作等を統括的に制御する。ＲＯＭ４０３には、後述するフローチャートの各種処理等を実行する為のプログラムを含む本実施形態にて要する各種の制御プログラムが記憶されている。ＲＯＭ４０３には、図示しているユーザインタフェース画面（以下、ＵＩ画面と称する。）を含む、操作デバイス４１３の表示部に各種のＵＩ画面を表示させるための表示制御プログラムも記憶されている。
【００６０】
ＣＰＵ４０１は、ＲＯＭ４０３のプログラムを読出実行することで、本実施形態にて説明する各種の動作を複合機１０１により実行させる。ＲＯＭ４０３は、読み出し専用のメモリであり、ブートシーケンスやフォント情報等のプログラムや上記のプログラム等各種プログラムが予め記憶されている。また、ＲＯＭ４０３は、クライアント装置に対して、複合機１０１が備えるファイルシステムを公開し、アクセス可能とするためのファイルサーバ機能プログラムを記憶している。また、ＲＯＭ４０３は、ウェブブラウザを使用し複合機１０１が備えるウェブサーバを経由してウェブページによる機能を提供するウェブプログラム等も記憶している。さらに、ＲＯＭ４０３は、ウェブアクセス機能によって機器内蔵ホットフォルダ機能をクライアント装置に対して提供する機器内蔵ホットフォルダプログラムも記憶している。これらＲＯＭ４０３に格納される各種プログラムの詳細については後述する。
【００６１】
ＲＡＭ４０２は、読み出し及び書き込み可能なメモリであり、スキャンデバイス４０９やインタフェース４０８から送られてきた画像データや、各種プログラムや設定情報を記憶する。ＨＤＤ４０４は、圧縮展開回路４０６によって圧縮された画像データや、ＲＩＰ回路４０５が印刷データを展開したラスタ画像データなどを記憶する大容量の記憶装置である。当該ＨＤＤ４０４には、処理対象となるジョブのプリントデータ等、複数のデータが保持されている。ＣＰＵ４０１は、スキャンデバイス４０９やインタフェース４０８等の各種入力ユニットを介して入力された処理対象となるジョブのデータを、ＨＤＤ４０４を介してプリントデバイス４１０でプリント可能に制御する。また、ＣＰＵ４０１は、インタフェース４０８を介して外部装置へ送信できるようにも制御する。このように、ＣＰＵ４０１は、ＨＤＤ４０４に格納した処理対象ジョブのデータの各種出力処理を実行可能に制御する。さらに、ＣＰＵ４０１は、ＨＤＤ４０４内に構築されたファイルシステムを外部の装置に対してファイル共有や送受信等を行う機能を、ＲＯＭ４０３のプログラムを読出し、実行することによって実現可能なように構成されている。
【００６２】
ＲＩＰ回路４０５は、受信した印刷データをラスタ画像データに変換するためのＲＩＰ（Raster Image Processor）回路を含んで構成される。圧縮展開回路４０６は、ＪＢＩＧやＪＰＥＧ等といった各種圧縮方式によってＲＡＭ４０２、ＨＤＤ４０４に記憶されている画像データ等に対して、圧縮・伸張動作を行う。以上のような構成のもと、本印刷システムが具備する制御部の一例としてのＣＰＵ４０１が、各シート処理デバイス４１２の動作も制御する。
【００６３】
ＮＩＣ４０７はＬＡＮに接続し、画像データや装置情報の入出力を行うNetwork Interface Cardである。インタフェース４０８は、例えばＵＳＢやＬＡＮなどのシリアルバスインタフェースであり、スキャンデバイス４０９やプリントデバイス４１０が接続される。スキャンデバイス４０９は、オートドキュメントフィーダーを含むスキャナである。束状の又は一枚の原稿画像に対して、不図示の光源で光を照射し、原稿反射像をレンズでＣＣＤ（Ｃｈａｒｇｅ Ｃｏｕｐｌｅｄ Ｄｅｖｉｃｅ）センサ等の固体撮像素子上に結像する。そして、固体撮像素子からラスタ状の画像読取信号を画像データとして得る。画像データはインタフェース４０８を介して転送され、ＨＤＤ４０４に格納される。
【００６４】
プリントデバイス４１０はシートへの画像形成を行う部位であり、一般的な動作原理は以下のとおりである。回転多面鏡（ポリゴンミラー等）が、画像データに応じて変調された、例えばレーザ光などの光線を入射させ、反射ミラーを介して反射走査光として感光ドラムに照射する。感光ドラム上にレーザ光によって形成された潜像はトナーによって現像され、転写ドラム上に貼り付けられたシート材、即ち、メディアに対してトナー像を転写する。この一連の画像形成プロセスをイエロー（Ｙ）、マゼンタ（Ｍ）、シアン（ｃ）、ブラック（Ｋ）のトナーに対して順次実行することによりフルカラー画像が形成される。また、４色に加え、特色と呼ぶトナーや、透明トナーなどを転写可能とする構成としてもよい。フルカラー画像が形成された転写ドラム上のシート材は、その後定着器へ搬送される。定着器は、ローラやベルトの組み合わせによって構成され、ハロゲンヒータなどの熱源を内蔵し、トナー像が転写されたシート材上のトナーを、熱と圧力によって溶解、定着させる。
【００６５】
給紙デバイス４１１は、印刷に使用する用紙やＯＨＰシートなどのメディアを格納するためのカセットやトレイを備える装置であり、格納されたメディアをプリントデバイス４１０に送り出す。シート処理デバイス４１２は、プリントデバイス４１０によって画像形成された後のメディアに対して各種加工を施した成果物を得るための装置である。ここにおける各種加工とは、シート処理デバイス４１２に搬送されてきたメディアの束の端部を針で閉じる針綴じ処理等が含まれる。また、同様にシート処理デバイス４１２に搬送されてきたメディアの束の中央部を針で綴じ、針に沿って折り曲げる製本処理が含まれる。また、シート処理デバイス４１２に搬送されてきたメディアの束の端部を歯型で圧力を加えて閉じる針無綴じ処理等が含まれる。さらに、シート処理デバイス４１２に搬送されてきたメディアの端部に穴あけ処理を行うパンチ処理が含まれる。
【００６６】
操作デバイス４１３は本発明による複合機１０１の各種設定や操作などをオペレータが行う場合の各種インタフェースを提供する。
【００６７】
続いて、図４（ｂ）を参照して、複合機１０１のソフトウェア（プログラム）構成を説明する。これらプログラムはＲＯＭ４０３に格納され、複合機１０１のＣＰＵ４０１によって読み出されて実行される。
【００６８】
ブートローダ６０１は、複合機１０１の電源投入直後に実行されるプログラムである。これらプログラムには、システムの起動に必要となる各種起動シーケンスを実行するためのプログラムが含まれる。オペレーティングシステム６０２は、複合機１０１の機能を実現する各種プログラムの実行環境を提供することを目的としたプログラムである。これは、主に複合機１０１のメモリ、即ちＲＯＭ４０３やＲＡＭ４０２，ＨＤＤ４０４等の資源管理、及び図４に示すその他各部の基本的な入出力制御等の機能を提供する。
【００６９】
ネットワーク制御プログラム６０３は、ネットワークを介して接続される機器に対してデータを送受信する際に実行されるプログラムである。このプログラムは、印刷するファイルの受信処理や、外部装置からのデータ送信、コマンドの送受信等の各種処理実行時に利用される。ネットワーク制御プログラム６０３には、ＮＩＣ４０７を制御するためのドライバプログラムも含まれる。
【００７０】
ファイルシステムサーバ６０４は、複合機１０１が備えるＨＤＤ４０４内部のファイルをネットワーク経由で接続された外部装置に対して、ファイル作成、送信、受信などのリクエストを提供するためのサーバプログラムである。当該プログラムが有効化及び作動することによって、ＨＤＤ４０４内のファイル及びファイルシステムが提供するサービスを、ネットワーク接続されたＰＣ１０２、１０３や携帯端末１０４等の外部装置がネットワーク経由で利用することが可能となる。
【００７１】
ウェブサーバ６０５は、複合機１０１が備えるウェブコンテンツ及びウェブプログラムによって提供されるウェブサービスをネットワーク経由で接続したＰＣ１０２、１０３や携帯端末１０４等の外部装置が利用可能とするサーバ機能を提供するプログラムである。ホットフォルダ機能プログラム６０６は、本発明による複合機１０１が備える特徴的なプログラムである。即ち、本プログラムは、ウェブサーバ６０５によってネットワークに接続されるクライアント装置からのウェブサービスに対するリクエストの受信を検知する。また、当該プログラムは、検知した受信リクエストに応じて機器内蔵ホットフォルダ機能として供される一連の機能を実行する。
【００７２】
ＪＤＦ機能プログラム６０７は、ＪＤＦジョブデータが受信された場合に、ＮＩＣ４０７の指示でＣＰＵ４０１によって実行されるＪＤＦプリント機能を実行するプログラムである。このＪＤＦプリント機能では、このプログラムに記述された処理順序、処理条件に基づいてＣＰＵ４０１が適切な順序で図４に記載の各デバイスの動作を順次指示する。これら各デバイスには、シート処理デバイス４１２、プリントデバイス４１０、ＨＤＤ４０４、圧縮展開回路４０６、及びＲＡＭ４０２等が含まれる。また、当該プログラムには、ＮＩＣ４０７経由で受信されたＪＤＦジョブデータの解析処理及び、解析処理の結果、ＪＤＦに正しくない設定が含まれるか否かの判別処理、及び正しくない設定を解消するための設定変更等を行うプログラム処理も含まれる。
【００７３】
ＰＤＬプリント機能プログラム６０８は、ＰＤＬデータ（印刷ジョブデータ）が受信された場合に、ＣＰＵ４０１によって実行されるＰＤＬプリント機能を実行する。ＣＰＵ４０１によって行われるＰＤＬプリント機能では、このプログラムに記述された処理順序、処理条件に基づいてＣＰＵ４０１によって適切な順序で図４記載の各デバイスの動作を順次指示する。これら各デバイスには、シート処理デバイス４１２、プリントデバイス４１０、ＨＤＤ４０４、圧縮展開回路４０６、及びＲＡＭ４０２等が含まれる。
【００７４】
メディア管理プログラム６０９は、複合機１０１が利用可能なシートに関連する管理機能を実行するためのプログラムである。このプログラムによって管理されるシート関連情報は、ＨＤＤ４０４に格納される。ユーザ認証プログラム６１０は、複合機１０１を利用するユーザの利用権限の設定情報に基づいて、複合機１０１及びそれが提供する機能の利用可否と制限制御とを実行する。ユーザ認証プログラム６１０は、第１に認証処理を実行し、認証処理の結果に基づいて上述した機能利用可否、利用制御処理などを実行する。認証処理は、複合機１０１が備える操作デバイス４１３、又はＰＣ１０２，１０３や携帯端末１０４などが備えるウェブブラウザを経由したウェブ画面を経由して処理することが可能である。
【００７５】
印刷ジョブキュー管理プログラム６１１は、ジョブの生成から印刷処理、印刷後処理、その過程におけるジョブ状況の確認を含むジョブ管理情報の生成等を司るプログラムである。具体的には、上述したＪＤＦ機能プログラム６０７、ＰＤＬプリント機能プログラム６０８、又はホットフォルダ機能プログラム６０６等が印刷要求を受けて、印刷ジョブを生成し、生成した印刷ジョブの実行処理のライフサイクルを管理する。また、当該プログラムは、複合機１０１の内部に生成されたジョブデータを逐次処理すべく、一時的にＨＤＤ４０４等の領域に対して、ジョブ実行要求の順序に従って当該実行順序を管理する処理も含む。その他のプログラム６１２は、複合機１０１が実行しうるＲＯＭ４０３内に格納されたプログラムのうち、上述した何れにも含まれないプログラムの総称である。これらは本発明の効果を説明する上で重要ではないため説明を割愛する。
【００７６】
＜クライアント装置のハードウェア構成＞
次に、図５を参照して、クライアント装置、即ち、図１におけるＰＣ１０２，１０３及び携帯端末１０４の構成を説明する。図５（ａ）はクライアント装置のハードウェア構成を示し、図５（ｂ）はクライアント装置のソフトウェア構成を示す。クライアント装置は、コントローラ５０８、キーボード（ＫＢ）５０９、表示部（ＣＲＴ）５１０、及びＨＤＤ５１１を備える。コントローラ５０８は、ＣＰＵ５０１、ＲＡＭ５０２、ＲＯＭ５０３、キーボードコントローラ５０５、表示コントローラ（ＣＲＴＣ）５０６、ディスクコントローラ５０７、及びＮＩＣ５１２を備える。これらの各部はバス５０４によって信号を相互に伝達可能に接続されている。
【００７７】
ＣＰＵ５０１は、ＲＯＭ５０３のプログラム用ＲＯＭに記憶されたプログラムや、ＨＤＤ５１１からＲＡＭ５０２にロードされたＯＳや一般アプリケーションのプログラムを実行する。ＲＯＭ５０３はまた、フォントＲＯＭやデータＲＯＭを有している。ＲＡＭ５０２は、ＣＰＵ５０１の主メモリ、ワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）５０５は、キーボードやポインティングデバイス（不図示）からの入力を制御する。表示コントローラ（ＣＲＴＣ）５０６は、表示部（ＣＲＴ）５１０への表示を制御する。ディスクコントローラ（ＤＫＣ）５０７は、ブートプログラム、種々のアプリケーション、フォントデータ等を記憶するＨＤＤ５１１等とのアクセスを制御する。ネットワークコントローラ（ＮＩＣ）５１２は、ネットワークに接続されて、そのネットワークに接続された他の機器との通信制御処理を実行する。バス５０４は、ＣＰＵ５０１、ＲＡＭ５０２、ＲＯＭ５０３及び各種コントローラ等を接続して、データ信号や制御信号を搬送する。
【００７８】
なお、携帯端末の場合にはキーボードコントローラ（ＫＢＣ）５０５の代わりにタッチパネルコントローラ等を構成に含む場合がある。また、ＨＤＤ５１１の代わりとなる大容量記憶装置を備える場合もある。さらに、ネットワークコントローラ（ＮＩＣ）５１２は、装置が有線ＬＡＮ、無線ＬＡＮの何れかを備える場合、或いは双方を備える場合とで、内部構成が異なる。ただし、これらの内部構成による差異は、ネットワークコントローラ（ＮＩＣ）５１２内部に隠蔽され、同図に示す他のモジュールには等価なものとしてシステムを制御可能なように構成される。
【００７９】
続いてに、図５（ｂ）を参照して、クライアント装置であるＰＣ１０２、１０３、携帯端末１０４が有するソフトウェア（プログラム）構成を説明する。
【００８０】
ブートローダ７０１は、ＰＣ１０２、１０３、携帯端末１０４の電源投入直後に実行されるプログラムである。これらプログラムには、システムの起動に必要となる各種起動シーケンスを実行するためのプログラムが含まれる。オペレーティングシステム７０２は、ＰＣ１０２、１０３、携帯端末１０４の機能を実現する各種プログラムの実行環境を提供することを目的としたプログラムである。これは、ＰＣ１０２、１０３、携帯端末１０４のメモリ、即ちＲＯＭ５０３やＲＡＭ５０２，ＨＤＤ５１１等の資源管理等の機能を提供する。
【００８１】
ネットワーク制御プログラム７０３は、ネットワークを介して接続される機器に対してデータを送受信する際に実行されるプログラムである。このプログラムは、印刷するファイルの送信をファイルシステムが実行する際に利用されうる。また、後述するリモートファイルシステムクライアント７０４やウェブブラウザ７０５は、ネットワークを介して接続された複合機１０１が有するファイルシステムサーバ６０４及びウェブサーバ６０５が提供する機能を利用する際に副次的に利用される。
【００８２】
リモートファイルシステムクライアント７０４は、ネットワーク制御プログラム７０３を利用して、ネットワーク経由で接続された複合機１０１等の外部機器との間で、ファイルの送受信処理を実行する際に、クライアント装置側で動作するプログラムである。当該プログラムは、ネットワーク経由で接続された外部機器が提供するファイルサーバの機能にアクセスして、当該ファイルサーバ機能を利用する際のクライアントの処理を実行する。リモートファイルシステムクライアント７０４は、ネットワークコントローラ（ＮＩＣ）５１２を介して、ネットワークに接続される外部の機器が供するファイルサーバにアクセスし、ファイルの送受信やコピー等を可能にする。
【００８３】
ウェブブラウザ７０５は、ネットワーク経由で接続された外部機器であって、ウェブサーバ６０５が動作する外部装置が提供するウェブサービスを利用する際のクライアントプログラムである。汎用的なオペレーティングシステムであれば、予めオペレーティングシステムの機能の一部として装置に備えられていることもある。一方で、ウェブブラウザは汎用的なクライアント装置上で動作するアプリケーションプログラムでもあるため、当該クライアント装置のユーザが任意のウェブブラウザアプリケーションをインストールした上で利用することも考えられる。本実施形態においては、ウェブブラウザ７０５がクライアント装置上に対して提供される形態は問わない。
【００８４】
ローカルファイルシステム７０６は、ＨＤＤ５１１内に格納された各種ファイルの作成、編集、削除等のファイル管理を実行するファイル管理機能プログラムである。前述したリモートファイルシステムクライアント７０４と併用することで、ネットワーク経由で接続された外部装置のファイルシステムサーバ６０４にアクセスし、ファイルシステムが管理するファイルをリモート装置（外部装置）にコピーする。また、その逆にリモート装置側のファイルをローカルファイルシステム７０６にコピーするなどのネットワークファイル管理機能を実現する。
【００８５】
その他のプログラム７０７は、上記のいずれにも該当しないプログラム群が含まれるが、それらの詳細な説明は省略する。なお、上述したローカルファイルシステム７０６、リモートファイルシステムクライアント７０４、ネットワーク制御プログラム７０３、及びウェブブラウザ７０５等の各種プログラムがオペレーティングシステム７０２の一部として提供される形態でもよい。本発明は上述した各種機能をオペレーティングシステム７０２がそれ自身の機能として内包するか否かに関わらず、クライアント装置がこれら機能を有する限り適用される。
【００８６】
上述した、図３乃至図５までに示したシステム、クライアント装置（１０２，１０３，１０４）、及び複合機１０１の其々が備えるソフトウェア、ハードウェア構成の対応関係は次に示す通りである。操作部３２７は、ＣＰＵ５０１が、ＫＢ５０９、ＣＲＴ５１０、ＣＲＴＣ、及びＫＢＣ５０５等の入出力装置の制御と共にウェブブラウザ７０５を実行することによって実現される。ウェブサーバ部３２８は、ウェブサーバ６０５をＣＰＵ４０１が実行することで実現される。ファイルシステム部３２９は、ファイルシステムサーバ６０４及びネットワーク制御プログラム６０３をＣＰＵ４０１が実行することで実現される。
【００８７】
印刷部３１４は、ＪＤＦ機能プログラム６０７をＣＰＵ４０１が実行し、かつＣＰＵ４０１が各種プリントデバイス、即ちプリントデバイス４１０、圧縮展開回路４０６、及びシート処理デバイス４１２を制御することで実現される。メディア管理部３１５は、印刷部３１４で実行する画像形成処理に好適な態様でシートを制御する機能部である。メディア管理部３１５は、メディア管理プログラム６０９をＣＰＵ４０１が実行し、給紙デバイス４１１、及びシート処理デバイス４１２を制御することで実現される。
【００８８】
ホットフォルダ機能部３２１は、ホットフォルダ機能プログラム６０６をＣＰＵ４０１が実行することによって実現される。ジョブ実行部３１６は、ＪＤＦ機能プログラム６０７をＣＰＵ４０１が実行することによって実現される。印刷キュー管理部３１９及びジョブ登録部３２０は、印刷ジョブキュー管理プログラム６１１をＣＰＵ４０１が実行することによって実現される。
【００８９】
＜ログインのウェブブラウザ画面の説明＞
次に、図６を参照して、ウェブサーバ６０５がホットフォルダ機能プログラム６０６を利用する際のウェブリクエストを複合機１０１に送信した結果、ウェブブラウザ画面に表示される初期画面について説明する。
【００９０】
ＰＣ１０２、１０３、携帯端末１０４が複合機１０１の備えるホットフォルダ機能プログラム６０６に対してウェブブラウザ７０５を経由してアクセスした際に、最初に図６（ａ）に示す認証要求画面がウェブブラウザ画面上に表示される。当該画面には、認証に必要な情報であるユーザ名フィールド８０１、当該ユーザ名に対応したパスワード入力フィールド８０２、ログイン先、即ち認証サーバ選択フィールド８０３、及びログインボタン８０４が表示されている。
【００９１】
ホットフォルダ機能プログラムのユーザは、図６（ｂ）に示すように、これら画面によって提供される各フィールドに、利用者の情報を適切に入力したうえで、ログインボタン８０４を押すと、認証処理がユーザ認証プログラム６１０によって実行される。ユーザ認証プログラム６１０の認証処理に必要な認証情報は、ウェブブラウザ７０５から、ネットワークを経由して複合機１０１のウェブサーバ６０５経由でユーザ認証プログラム６１０に送信される。
【００９２】
＜フォルダ表示のウェブブラウザ画面の説明＞
次に、図７Ａ及び図７Ｂを参照して、認証が成功した際にウェブブラウザ画面上に表示される機器内蔵ホットフォルダ機能画面の一例を説明する。
【００９３】
図７Ａ（ａ）はホットフォルダ機能のウェブブラウザ画面の初期状態を示す。同図を用いて、ウェブブラウザ画面上に表示される画面構成要素について説明する。ただし、ウェブブラウザ画面のアドレス表示部や各ウェブページのタイトルタブ等、ウェブブラウザ機能自身が一般的に提供する画面構成要素であって、本実施形態に係るホットフォルダ機能とは関係ないものについては説明を割愛する。
【００９４】
フォルダ表示領域９０１は、ウェブブラウザ７０５によるウェブブラウザ画面を経由して、複合機１０１が備えるファイルシステムサーバ６０４が管理する、ファイルシステム上の階層の移動や表示、及び新規フォルダ作成等が操作可能な階層管理機能領域である。プリント機能選択ボタン９０２は、ホットフォルダ機能が提供する各種機能のうち、印刷機能を選択する際に使用するボタンである。図６に示した認証処理を経た直後に表示されるデフォルト機能の画面は、図７Ａ（ａ）に示す画面である。
【００９５】
ジョブリスト表示ボタン９０３は、ホットフォルダ機能を経由して複合機１０１に投入された印刷ジョブのリストを表示する画面に遷移するためのボタンである。カレントパス表示領域９０４は、ウェブブラウザ７０５によって複合機１０１のファイルシステムサーバ６０４にアクセスした際に、処理対象、即ちカレントパスをルートフォルダからの絶対パス形式によって表示する領域である。図７Ａ（ａ）においては、カレントパスは”／ｓｈａｒｅ”であることを示している。これは本実施形態における複合機１０１のファイルシステムサーバ６０４が管理する、公開フォルダの最上位階層の状態をウェブブラウザ画面によって表示した状態である。公開可能フォルダの最上位階層である”／ｓｈａｒｅ”よりも上位層の階層には移動することができず、本実施形態における複合機１０１のファイルシステムサーバ６０４は最上位階層フォルダ直下にユーザがフォルダを作成することを許可していない。図７Ａ（ａ）はこの挙動を満たす画面の例である。
【００９６】
移動先フォルダ指定ボタンであるｆｏｌｄｅｒボタン９０５は、現在のフォルダの下層にあるフォルダに対応したボタンである。移動先フォルダ指定ボタンは現在のフォルダの階層にあるフォルダの数だけ表示され、各ボタンはフォルダの名称となっている、選択されると、フォルダ画面要求処理が行われ、名称が示すフォルダの画面に遷移する。即ちｆｏｌｄｅｒボタン９０５は、”／ｓｈａｒｅ／ｆｏｌｄｅｒ”の画面に遷移するためのボタンである。フォルダ画面要求処理は図１３及び図１４を用いて説明する。
【００９７】
ログインユーザ表示領域９０６は、図６において示した、ウェブブラウザ画面を利用して認証時に入力したユーザ名を表示する領域である。ユーザ固有機能選択ボタン９０７は、ログインユーザ毎にカスタマイズされる各種機能提供画面への遷移を指示するためのボタンである。
【００９８】
フォルダ種別表示領域９０８は、本発明において特徴的な画面領域であり、カレントパス表示領域９０４に表示されるパスが示すファイルシステムサーバ６０４上のフォルダが、ホットフォルダであるか否かを判別可能とする情報を提供する領域である。図７Ａ（ａ）において示した画面の一例においては、カレントパスの”／ｓｈａｒｅ”に対応するファイルシステムサーバ６０４上のフォルダはホットフォルダではないことを示している。この状態で後述するファイル送信処理を行うための操作を行なっても、ファイルの送信は実行されない。
【００９９】
図７Ａ（ｂ）は、図７Ａ（ａ）に示した画面の状態において、移動先フォルダ指定ボタンのｆｏｌｄｅｒボタン９０５を選択した直後に遷移する画面状態の一例を示す。図７Ａ（ａ）に示す”／ｓｈａｒｅ”からその直下にある”ｆｏｌｄｅｒ”に遷移した画面であり、カレントパス表示領域９０４に”／ｓｈａｒｅ／ｆｏｌｄｅｒ”が表示される。本実施形態における複合機１０１のファイルシステムサーバ６０４は、最上位より下位のフォルダに対しユーザが任意のフォルダやファイルを作成することが可能なように構成される。そのため最上位階層を示す図７Ａ（ａ）とは異なり、フォルダ作成ボタン９０９、及び上階層移動ボタン９１０が表示される。
【０１００】
フォルダ作成ボタン９０９は、現在のフォルダに新規フォルダを作成するためのボタンである。上階層移動ボタン９１０は、現在のフォルダから上位フォルダへ遷移するためのボタンである。上階層移動ボタン９１０が選択されると、１つ上位のフォルダに対するフォルダ画面要求処理を行う。印刷設定作成ボタン９１１は、現在のフォルダに印刷設定ファイルを配置するための画面に遷移するボタンである。遷移先の印刷設定作成画面は図８Ａ及び図８Ｂを用いて説明をする。
【０１０１】
図７Ａ（ｃ）は、図７Ａ（ｂ）でフォルダ作成ボタン９０９を選択した直後に表示されるウェブブラウザの画面状態の一例を示す。フォルダ名称入力欄９１２は、作成するフォルダの名前を入力するための入力フィールドである。所望のフォルダ名の文字列を入力した状態でＯＫボタン９１４を押下すると、前述した名称と同じ名称のフォルダがカレントパス直下に作成される。キャンセルボタン９１３を押下した場合にはフォルダ作成処理は実行されず、遷移元の図７Ａ（ｂ）の画面状態に戻る。ＯＫボタン９１４は、フォルダ名称入力欄９１２に文字が入力されている場合に選択可能となる。入力されたフォルダ名称がすでに存在するフォルダの名称と同一である場合、フォルダは作成されない。
【０１０２】
図７Ｂ（ｄ）は、図７Ａ（ｃ）でＯＫボタン９１４を選択した直後に表示されるウェブブラウザの画面状態の一例を示す。図示の通り、図７Ａ（ｃ）の画面において示した作成対象となるフォルダ名称である、”ｆｏｌｄｅｒ０１”という名称のフォルダが新規作成されていることが、フォルダ表示領域にｆｏｌｄｅｒ０１ボタン９１５が追加されていることによって確認できる。
【０１０３】
図７Ｂ（ｅ）は、ウェブブラウザに表示される画面が図７Ｂ（ｄ）に示した状態において、ｆｏｌｄｅｒ０１ボタン９１５を選択した直後に表示されるウェブブラウザの画面状態の一例を示す。図示の通り、カレントパス表示領域９０４が”／ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”となっている。つまり、図７Ａ（ｃ）及び図７Ｂ（ｄ）の画面に提示されるフォルダ作成に関わる画面構成要素の操作によって作成されたフォルダにカレントパスが移動していることが確認される。
【０１０４】
＜印刷設定作成のウェブブラウザ画面の説明＞
次に、図８Ａ及び図８Ｂを参照して、本実施形態に係る印刷設定作成のウェブブラウザ画面について説明する。図８Ａ（ａ）、（ｂ）、（ｃ）は、図７Ｂ（ｅ）で印刷設定作成ボタン９１１を選択することで遷移する印刷設定作成画面である。複合機１０１のホットフォルダ機能として指定可能な印刷設定を選択するための機能選択ボタンやセレクトボックス等が配置されている。図８Ａ（ａ）、（ｂ）、（ｃ）はそれぞれ、ウェブブラウザ画面の表示領域に制限があるためにスクロール表示した状態の画面の一部を表示したものである。しかし、本発明はこの画面構成限定されず、例えば表示ウィンドウサイズの変更や表示文字サイズの変更によって、単一の画面として表示してもよい。ウェブブラウザにおいて一般的な画面制御であるため、詳細な説明は省略する。印刷設定作成画面で設定できる印刷設定には、印刷設定指定、部数、使用する用紙の指定、用紙の出力先、解像度やカラー／モノクロ指定、プロファイルなどの印刷時の画像処理に関する指定、ホチキスやパンチ折り等の印刷後のシートに対する後処理の指定がある。
【０１０５】
図８Ｂ（ｄ）は、図８Ａ（ａ）、（ｂ）、（ｃ）の印刷設定作成画面で印刷設定を作成したフォルダを表示した例を示す。フォルダ種別表示領域９０８に、印刷機能を利用可能な「ホットフォルダ」であることを示す情報が提示されている。この状態で、ＰＣ１０２、１０３、携帯端末１０４内に保持されているファイルをフォルダ種別表示領域９０８にドラッグアンドドロップすることでファイル送信処理を行うことができる。
【０１０６】
また上述のとおり、カレントパス”／ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”がホットフォルダに変更されたことに伴い、ウェブブラウザの画面には新規の機能選択ボタン（１００２、１００３）が配置される。印刷設定確認ボタン１００２は、フォルダに作成されている印刷設定を確認するためのボタンである。一時設定ボタン１００３は、フォルダに作成した印刷設定を一時的に変更して設定を適用し、印刷ジョブを実行する際の利便性を向上させることを目的として設けられた機能選択画面への遷移を指示するためのものである。
【０１０７】
図８Ｂ（ｅ）は、エラー情報提示画面の一例を示す。当該画面では、ウェブブラウザ画面によって提供されるフォルダの移動及びウェブブラウザの機能を使用したウェブサーバ６０５を経由しホットフォルダ機能プログラム６０６に対してフォルダ移動操作を実施した際に、発生しうるエラーを通知する画面である。指定したフォルダが存在しない旨のエラー情報、及び、エラーであるために上述したような正常なフォルダ操作を実施できない旨の情報がフォルダ種別表示領域９０８に提示される。上述のエラー状態は、第１のユーザがある階層のフォルダをウェブブラウザ画面で閲覧している際に、別のユーザが同一フォルダを消去又はフォルダ名称を変更し、その状態で第１のユーザが当該フォルダに対してアクセスした場合である。この場合、指定された名称のフォルダは既に存在しないため、同図に示すようなエラーを示す画面情報を提示しユーザにその旨通知することが可能である。またユーザが存在しないファイルパスを表示する画面のアドレスを直接ブラウザに指定した場合にも、同様のエラー状態が発生する。
【０１０８】
図８Ｂ（ｆ）は、印刷設定作成ボタン９１１が選択された際にウェブサーバ６０５に送信される印刷設定作成要求のデータの一例である。本実施形態においてはＸＭＬ形式で印刷設定情報が記述された例を示しているが、図８Ａ（ａ）、（ｂ）、（ｃ）において設定した印刷設定項目の内容を格納可能な形式であれば任意の形式であっても構わない。図８Ａ（ａ）、（ｂ）、（ｃ）に示した一連の印刷設定作成画面によって印刷設定が指定され、作成ボタン１００１が選択されると、ＪＡＶＡ（登録商標）スクリプトなどによって、指定された印刷設定が図８Ｂ（ｆ）に示すＸＭＬ形式のデータに変換される。
【０１０９】
ＸＭＬデータ１００５は複数のパートから構成されており、それぞれＸＭＬ宣言部１００６、メタデータ部１００７、一般印刷設定部１００８、及び面付設定部１００９を含む。ＸＭＬ宣言部１００６はデータ形式がＸＭＬであることを示すために必ず記載しなくてはならない記述である。メタデータ部１００７は対象のフォルダに関する情報を記載する部分であり、図例ではフォルダパス部１００４に印刷設定を適用するフォルダのアドレス情報又はパス情報が記述されている。一般印刷設定部１００８は印刷に使用する用紙の情報や部数、排紙方法などを記述する部分である。面付設定部１００９は印刷面や印刷面の順序、面数などを記述する部分である。一般印刷設定部１００８の内容は指定された印刷設定に応じて増減する。例えばホチキス設定や折り設定を指定した場合にはホチキス設定部と折り設定部に相応する情報が付加される。作成されたＸＭＬデータ１００５は、前述のウェブブラウザ用プログラムによってウェブサーバ６０５に非同期通信で送信される。ウェブサーバ６０５は受信したＸＭＬデータをホットフォルダ機能プログラム６０６に送信し、ホットフォルダ機能プログラム６０６は当該データを解析し、ＸＭＬデータに含まれる印刷指定を実現するためのＪＤＦファイルを作成する。
【０１１０】
＜複合機のファイルシステム構成＞
次に、図９を参照して、本実施形態に係る複合機１０１のファイルシステムの構成を説明する。図９（ａ）は、複合機１０１のＨＤＤ４０４上に作成されたフォルダ構成を、ファイルシステムサーバ６０４を介してクライアント装置１０２のＣＲＴ５１０に表示したクライアントファイルシステム画面１１００である。図８Ａ及び図８Ｂの印刷設定作成画面から印刷設定ファイルを作成したフォルダに、印刷設定ファイルとしてＪＤＦファイルが作成されていることが確認できる。
【０１１１】
図９（ｂ）はＪＤＦファイルの一例である。図９（ｃ）は複合機１０１のＨＤＤ４０４上のフォルダ構成を示す模式図である。図７Ａ及ぶ図７Ｂの操作でｆｏｌｄｅｒ０１フォルダ１１２３と、ｆｏｌｄｅｒ０２フォルダ１１２４を作成し、図８Ａ及び図８Ｂの操作でそれぞれに印刷設定ファイル１１２５、１１２６を作成した状態である。ｓｈａｒｅフォルダ１１２１は最上位階層のフォルダであり、ｆｏｌｄｅｒ１１２２はその１つ下の階層である。
【０１１２】
＜アプリケーション設定のウェブブラウザ画面の説明＞
次に、図１０を参照して、本実施形態に係るプログラムの動作を設定するためのアプリケーション設定画面１２００を説明する。クライアントからブラウザを使用して既定のアドレスにアクセスすることで複合機１０１から画面を取得することができる。アプリケーション設定画面１２００には多くの設定項目があるが、ここではファイル送信順序に関係のある項目のみ説明する。
【０１１３】
キャンセルボタン１２０１は、アプリケーション設定画面１２００を終了するためのボタンである。キャンセルボタン１２０１が選択された場合、アプリケーション設定画面１２００で行なったアプリケーション設定は保存されない。ウェブブラウザ画面はウェブサーバ６０５に遷移元のフォルダ画面の表示要求を送信し、レスポンスによって画面を遷移する。
【０１１４】
ＯＫボタン１２０２は、アプリケーション設定画面１２００を終了するためのボタンである。ＯＫボタン１２０２が選択された場合、ウェブブラウザはウェブサーバ６０５にアプリケーション設定画面１２００で行なったアプリケーション設定の保存要求を送信する。アプリケーション設定の保存要求には少なくとも変更されたアプリケーション設定の項目と設定値が含まれる。ウェブサーバ６０５はアプリケーション設定の保存要求を受信すると、ＲＡＭ４０２及びＨＤＤ４０４にリクエストから取得したユーザ識別情報と対応付けて記憶する。
【０１１５】
ファイル送信順序選択メニュー１２０３は、複数ファイルの印刷要求を受けつけた場合に、ファイルを送信する順序を指定するための選択メニューである。前述の通りウェブサーバ６０５は受信した順序でファイルを印刷する。ファイル送信順序選択メニュー１２０３には、順序を変更しない、ファイルの名前順、ファイルサイズ順、最終更新日時順を選択する項目が含まれている。“順序を変更しない”を選択した場合、ファイルの順序は変更されないので、クライアントのシステムの種類やバージョンによって順序が変わる可能性がある。即ち、クライアントのシステムに依存する順序となる。ファイルの名前順、ファイルサイズ順、最終更新日時順のいずれかを選ぶことによって、システムに依存することなく一定の規則で整列した順序で印刷を行うことが可能となる。画面を開いた時の初期選択状態はその時の設定値であり、ＲＡＭ４０２にユーザ情報と紐付けて記憶されている設定を示す項目である。
【０１１６】
＜ファイル整列プログラムの例＞
次に、図１１を参照して、ファイルを送信する順序を決定するプログラムの一例としてＪＡＶＡスクリプトを説明する。ウェブブラウザ上で動作するプログラムはＪＡＶＡスクリプトでなくてもよい。図１１（ａ）は名称順整列プログラム１３００であり、ファイルを名称順に送信する際の送信順序を取得するＪＡＶＡスクリプトの例である。図１１（ｂ）は最終更新日時順整列プログラム１３１０であり、ファイルを最終更新日時順に送信する際の送信順序を取得するＪＡＶＡスクリプトの例である。図１１（ｃ）はファイルサイズ順整列プログラム１３２０であり、ファイルをファイルサイズ順に送信する時の送信順序を取得するＪＡＶＡスクリプトの例である。図１１（ｄ）、（ｅ）はそれぞれ順序配列作成サブプログラム１３３０、配列追加済み判定サブプログラム１３４０であり、図１１（ａ）、（ｂ）、（ｃ）に示すプログラムから呼び出されるサブプログラムである。
【０１１７】
前述の通り、ファイル送信順序選択メニュー１２０３の設定に従って、送信されるＪＡＶＡスクリプトが決定され、図８（ｄ）のジョブ投入画面と一緒にクライアント装置に送信される。送信されたＪＡＶＡスクリプトは、複数ファイルの印刷指示を受け付けた際にウェブブラウザ上で動作し、ファイルの送信順序を決定し、その順序でウェブサーバ６０５に印刷ファイルを送信する。
【０１１８】
＜印刷ジョブを投入した際のウェブブラウザ画面の説明＞
次に、図１２Ａ及び図１２Ｂを参照して、図８Ｂ（ｄ）のフォルダ種別表示領域９０８にマウス等の指示装置を用い、ファイルをドラッグアンドドロップ等の操作によって配置した直後に遷移する画面の一例を説明する。図７Ｂ（ｅ）における説明で述べたとおり、カレントパスが”／ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”であるフォルダはホットフォルダであり、単なる共有フォルダではない。図８Ａ（ａ）、（ｂ）、（ｃ）に示す一連の操作による印刷設定が紐づいたフォルダである。従って、当該フォルダに対してウェブブラウザを経由して上述の操作を実施した場合には、ウェブブラウザ７０５からウェブサーバ６０５に対する処理要求及び印刷対象データの送信処理が実行される。当該処理は図４（ｂ）におけるホットフォルダ機能プログラム６０６の説明で述べたとおり、ＪＡＶＡスクリプトをウェブブラウザ７０５が実行することによって処理される。
【０１１９】
図１２Ａ（ａ）はフォルダ種別表示領域９０８にマウス等の指示装置を用いて、ファイルをドラッグアンドドロップする操作を行う時にウェブブラウザ７０５が表示する画面を示す。ドラッグアンドドロップ表示１４０１は、ドラッグアンドドロップ操作中であることを示す表示である。クライアント装置のシステムによって提供される表示であり、この図が示すようになるとは限らない。どのように表示されても本発明の実施には影響がない。
【０１２０】
図１２Ａ（ｂ）はファイルを送信中にウェブブラウザ７０５が表示する画面の一例を示す。図示の通り、ファイルの送信中であることが判別可能な情報が提示される。また複数ファイルを同時に送信する場合には、何個目のファイルを送信しているかを識別可能に表示する。例えば、送信中のファイルが変わる度に表示が変更される。図１２Ａ（ｃ）は図１２Ａ（ｂ）においてウェブブラウザ７０５が実施する処理、即ち印刷対象ファイルの送信処理が完了した直後にウェブブラウザ画面に表示される情報の一例を示す。図示の通り、ファイルの送信処理が完了したことが判別可能な情報が提示される。図１２Ｂ（ｄ）はウェブブラウザ７０５が表示する画面が図１２Ａ（ｃ）に示した状態となった一定時間経過後に遷移する画面の一例を示す。同図に示した画面状態は図７Ｂ（ｅ）と同等である。即ち、カレントパスである”／ｓｈａｒｅ／ｆｏｌｄｅｒ／ｆｏｌｄｅｒ０１”に対する印刷処理の指示を再び受け付け可能であることを示す情報が提示される。
【０１２１】
図１２Ｂ（ｅ）は送信したファイルの印刷が実行されている時の複合機１０１の操作デバイス４１３に表示する画面の例である。送信したファイルの印刷順序は図１５のチャート及び図１９の印刷リストの模式図を用いて後述する。デバイス状態表示１４０２は現在の複合機１０１の状態を表示する領域である。図１２Ｂ（ｅ）では複合機１０１は印刷処理を実行中であるため、“Ｐｒｉｎｔｉｎｇ”が表示されている。表示するべき状態がない場合は何も表示されず、ジャムや消耗品切れなどのエラーが発生している場合には発生しているエラーの内容が表示される。
【０１２２】
図１２Ａ（ｂ）の説明で述べたとおり、クライアント装置から印刷対象ファイルをドラッグアンドドロップ等の操作によって配置した直後に、この操作をＪＡＶＡスクリプトによる、ウェブブラウザ用プログラムが実行される。またＪＡＶＡスクリプトは図１１で説明したＪＡＶＡスクリプトのうち、ファイル送信順序選択メニュー１２０３で選択された設定に対応するものを含む。このファイル整列プログラムによって複数のファイルに同時に印刷指示操作が行われた場合には、ファイル送信順序選択メニュー１２０３の設定に従ってファイルが並び替えられて複合機１０１に送信される。
【０１２３】
＜ウェブブラウザ上で操作を受け付けた際の処理手順＞
次に、図１３を参照して、図７Ａ乃至図１２Ｂで説明した機能を実行する際のＣＰＵ５０１の処理手順を説明する。以下で説明する処理は、例えばクライアント装置のＣＰＵ５０１がＲＯＭ５０３やＨＤＤ５１１に格納された制御プログラムをＲＡＭ５０２に読み出して実行することにより実現されてもよい。ここでは、図６、図７Ａ及び図７Ｂで説明をした操作により操作画面がウェブブラウザ７０５上に表示したところから処理を開始する。
【０１２４】
Ｓ１５０１で、ＣＰＵ５０１は、ウェブブラウザ７０５に対するユーザからの操作を受け付ける。操作を受け付けたと判定するとＳ１５０２に進み、そうでない場合にはＳ１５０１にとどまる。Ｓ１５０２で、ＣＰＵ５０１は、Ｓ１５０１で受け付けた操作が、クライアント装置の画面をクリックする操作であったか否かを判定する。画面をクリックする操作である場合にはＳ１５０４に進み、そうでない場合にはＳ１５０３に進む。ここでの画面をクリックする操作とは、ＰＣ１０２、１０３の場合は、マウス等のポインティングデバイスによるクリック操作に対応し、携帯端末１０４の場合は、タッチパネルデバイスのタッチ操作に対応する。なお、クリック操作については、押下を開始してから所定時間以内に押下を解放した場合に当該操作が行われたと判定する。
【０１２５】
Ｓ１５０３で、ＣＰＵ５０１は、Ｓ１５０１で受け付けた操作が、画面にファイルをドラッグアンドドロップする操作であったかを判定する。ドラッグアンドドロップする操作である場合にはＳ１５０５に進み、そうでない場合にはＳ１５０１に進む。ドラッグアンドドロップ操作については、例えば、マウスのボタンの押下を検知してから、所定時間を超えて、かつ、所定距離の移動の後に当該押下の解放を検知した場合に当該操作が行われたと判定する。Ｓ１５０５で、ＣＰＵ５０１は、Ｓ１５０１でファイルをドラッグアンドドロップする操作が、フォルダ種別表示領域９０８に対する操作であったか否かを判定する。そうである場合にはＳ１５０８に進み、そうでない場合にはＳ１５０１に進む。
【０１２６】
一方、Ｓ１５０４で、ＣＰＵ５０１は、Ｓ１５０１で受け付けた画面をクリックする操作が、印刷設定作成ボタン９１１に対する操作であったかを判定する。クリック操作については、例えばマウスのボタンが押下された後に、所定時間内に当該押下の解放が検知されると当該操作が行われたと判定する。印刷設定作成ボタン９１１をクリックする操作である場合にはＳ１５０９に進み、そうでない場合にはＳ１５０６に進む。Ｓ１５０６で、ＣＰＵ５０１は、Ｓ１５０１で受け付けた画面をクリックする操作が、フォルダを移動するボタン、即ち上階層移動ボタン９１０や移動先フォルダ指定ボタン９０５、９１５に対する操作であったかを判定する。移動先フォルダ指定ボタンをクリックする操作である場合には、Ｓ１５１０に進み、そうでない場合にはＳ１５０７に進む。Ｓ１５０７で、ＣＰＵ５０１は、Ｓ１５０１で受け付けた画面をクリックする操作が、アプリケーション設定ボタンをクリックする操作であったかを判定する。そうである場合にはＳ１５１１に進み、そうでない場合にはＳ１５０１に進む。
【０１２７】
Ｓ１５０８で、ＣＰＵ５０１は、ファイル整列プログラムを実行して送信するファイルの送信順序を決定し、ファイル送信プログラムを実行して、ウェブサーバ６０５に対して送信する通信処理を実行する。一回の送信で１つのファイルを送信する。同ステップにおける送信処理に要する時間は、印刷対象データのサイズ及びネットワーク１００の通信速度、或いは、クライアント装置（１０２、１０３、１０４）のＣＰＵ５０１によって実行されるＪＡＶＡスクリプトの処理速度に依存する。ウェブサーバ６０５から、Ｓ１５０８にて実行したデータ送信処理の結果の受信待機状態に遷移する。ウェブサーバ６０５からのレスポンスを受信するまで同ステップにウェブサーバ６０５の実行処理はとどまる。印刷対象データの送信処理ならびにウェブサーバ６０５からのレスポンスをウェブブラウザ７０５が受信したら、受信したレスポンスに従って画面の表示を行う。画面を表示したらＳ１５０１に進む。
【０１２８】
Ｓ１５０９で、ＣＰＵ５０１は、ウェブブラウザ７０５上に印刷設定作成画面を表示して入力を受け付ける印刷設定作成処理を実行する。当該処理については図８Ａ及び図８Ｂを用いて前述している。処理を終了すると、Ｓ１５０１に進む。また、Ｓ１５１０で、ＣＰＵ５０１は、複合機１０１からフォルダ画面を取得し、取得したウェブページを表示するフォルダ画面要求処理を実行する。フォルダ画面要求処理はウェブブラウザの標準的な機能であるＧＥＴリクエストなどを用いて、取得するフォルダのパスを送信し、取得したフォルダ画面をウェブブラウザ７０５上に表示する処理である。表示すると、Ｓ１５０１に進む。Ｓ１５１１で、ＣＰＵ５０１は、アプリケーション設定処理を実行する。アプリケーション設定処理は図１０を用いて前述している。アプリケーション設定処理が終了すると、ステップ１５０１に進む。
【０１２９】
＜フォルダ画面の表示要求を受け付けた際の処理手順＞
次に、図１４を参照して、本実施形態に係るフォルダ画面の表示要求を受け付けた際の複合機１０１のＣＰＵ４０１における処理手順を説明する。以下で説明する処理は、例えば複合機１０１のＣＰＵ４０１がＲＯＭ４０３やＨＤＤ４０４に格納された制御プログラムをＲＡＭ４０２に読み出して実行することにより実現されてもよい。クライアントからフォルダ画面の表示要求を受け付けた時に処理を開始する。
【０１３０】
Ｓ１６０１で、ＣＰＵ４０１は、受付手段として機能し、受け付けたフォルダ画面の表示要求から表示するフォルダのパスを取得する。本実施形態ではＨＴＭＬ通信のＧＥＴメッソッドによりフォルダ画面の表示要求を行うものとし、フォルダのパスはＧＥＴパラメータで指定するものとする。フォルダのパスを取得するとＳ１６０２に進む。
【０１３１】
Ｓ１６０２で、ＣＰＵ４０１は、Ｓ１６０１で取得したフォルダパスにフォルダが存在するかを判定する。フォルダが存在する場合はＳ１６０３に進み、フォルダが存在しない場合はＳ１６０４に進む。Ｓ１６０４で、ＣＰＵ４０１は、フォルダパスが無効であることを示すフォルダ画面である図８Ｂ（ｅ）に示したウェブページを作成し、Ｓ１６１３に進む。
【０１３２】
一方、Ｓ１６０３で、ＣＰＵ４０１は、Ｓ１６０１で取得したフォルダパスが示すフォルダ内に印刷設定ファイルがあるか否かを判定する。印刷設定ファイルがあるか否かの判定は、フォルダ内のファイルのリストを取得し、既定の拡張子を持つファイルがあるか否かによって判定する。印刷設定ファイルがある場合にはＳ１６０５に進み、ない場合にはＳ１６０６に進む。なお、フォルダ自体がない場合は印刷設定ファイルがないものとする。Ｓ１６０６で、ＣＰＵ４０１は、指定された印刷要求が無効なフォルダ画面である図７Ｂ（ｄ）のウェブページを作成し、Ｓ１６１３に進む。
【０１３３】
Ｓ１６０５で、ＣＰＵ４０１は、指定された印刷要求可能なフォルダ画面である図８Ｂ（ｄ）のウェブページ及びウェブブラウザ上で動作するプログラムを作成し、Ｓ１６０７に進む。ここでは印刷要求処理の一部をＪＡＶＡスクリプトで行うものとする。続いて、Ｓ１６０７で、ＣＰＵ４０１は、複数ファイル投入時の整列設定（印刷設定）が名称順に指定されているかを判定する。複数ファイル投入時の整列設定に関しては図１０を用いて前述している。複数ファイル投入時の整列設定が名称順に指定されている場合にはＳ１６１０に進み、指定されていない場合にはＳ１６０８に進む。Ｓ１６１０で、ＣＰＵ４０１は、ファイルを名前順に送信するためのプログラムを選択し、Ｓ１６０５で作成したプログラムに付加し、Ｓ１６１３に進む。前述の通り、本実施形態ではＪＡＶＡスクリプトを用いることとする。プログラムは予め作成されているものを選択して使用してもよい。
【０１３４】
一方、Ｓ１６０８で、ＣＰＵ４０１は、複数ファイル投入時の整列設定がファイルサイズ順に指定されているか否かを判定する。複数ファイル投入時の整列設定がファイルサイズ順に指定されている場合にはＳ１６１２に進み、指定されていない場合にはＳ１６０９に進む。Ｓ１６１２で、ＣＰＵ４０１は、ファイルをサイズ順に送信するためのプログラムを選択し、Ｓ１６０５で作成したプログラムに付加し、１６１３に進む。
【０１３５】
Ｓ１６０９で、ＣＰＵ４０１は、複数ファイル投入時の整列設定が更新日時順に指定されているかを判定する。複数ファイル投入時の整列設定が更新日時順に指定されている場合にはＳ１６１１に進み、指定されていない場合にはＳ１６１３に進む。Ｓ１６１１で、ＣＰＵ４０１は、ファイルを更新日時順に送信するためのプログラムを選択し、Ｓ１６０５で作成したプログラムに付加し、Ｓ１６１３に進む。
【０１３６】
Ｓ１６１３で、ＣＰＵ４０１は、Ｓ１６０４、Ｓ１６０６、Ｓ１６０５，Ｓ１６１０、Ｓ１６１１又はＳ１６１２で作成したウェブページ、ファイル送信プログラム、ファイル整列プログラム等をレスポンス（応答）として送信し、処理を終了する。
【０１３７】
＜印刷要求の受信処理＞
次に、図１５を参照して、上記Ｓ１５０８においてクライアント装置１０２，１０３，１０４が送信する印刷要求を受信した際の複合機１０１のＣＰＵ４０１の処理手順を説明する。以下で説明する処理は、例えば複合機１０１のＣＰＵ４０１がＲＯＭ４０３やＨＤＤ４０４に格納された制御プログラムをＲＡＭ４０２に読み出して実行することにより実現されてもよい。クライアント装置１０２，１０３，１０４からの印刷要求を検知すると処理を開始する。
【０１３８】
Ｓ１７０１で、ＣＰＵ４０１は、ＲＡＭ４０２に記憶する印刷リストの末尾に印刷要求を追加し、Ｓ１７０２に進む。追加する情報には受信したリクエストに含まれる投入先のホットフォルダのパス、投入者の名前、ファイルの名前、などが含まれる。Ｓ１７０２で、ＣＰＵ４０１は、リクエストのボディ部分を読み出しファイルをＨＤＤ４０４等の記憶部に保存する。ファイルを保存すると、Ｓ１７０３に進む。
【０１３９】
Ｓ１７０３で、ＣＰＵ４０１は、ファイルの保存に成功したか否かを判定する。ファイルの受信中にネットワークが切断した場合や、ＨＤＤ４０４の記憶領域が不足し保存できなかった場合などに失敗となる。ファイルの保存に成功した場合Ｓ１７０５に進み、そうでない場合にはＳ１７０４に進む。
【０１４０】
Ｓ１７０４で、ＣＰＵ４０１は、Ｓ１７０１で追加した印刷要求を印刷リストから削除する。続いて、Ｓ１７０６で、ＣＰＵ４０１は、ファイルの投入に失敗したことを示すレスポンスを作成し返却する。レスポンスにはファイル投入に失敗したことを示す画面を表示するためのウェブページなどを含めてもよい。レスポンスを返却したらネットワークを切断し、処理を終了する。なお、ネットワークが切断されている場合には、レスポンスは返却せずに処理を終了する。
【０１４１】
一方、Ｓ１７０５で、ＣＰＵ４０１は、Ｓ１７０１で追加した印刷要求にＳ１７０２で保存したファイルパス（保存先）を追加する。続いて、Ｓ１７０７で、ＣＰＵ４０１は、ファイルの投入に成功したことを示すレスポンスを作成し返却する。レスポンスにはファイル投入に成功したことを示す画面を表示するためのウェブページなどを含めてもよい。レスポンスを返却すると、ネットワークを切断し処理を終了する。なお、ネットワークが切断されている場合には、レスポンスは返却せずに処理を終了する。
【０１４２】
＜印刷リストの印刷要求を処理する際の処理手順＞
次に、図１６を参照して、ＲＡＭ４０２に記憶されている印刷リストの印刷要求を順番に印刷する処理手順を説明する。以下で説明する処理は、例えば複合機１０１のＣＰＵ４０１がＲＯＭ４０３やＨＤＤ４０４に格納された制御プログラムをＲＡＭ４０２に読み出して実行することにより実現されてもよい。ＣＰＵ４０１は図１５で示される印刷要求受信時の処理と並行して、図１６で示される印刷要求の処理を行う。ＲＡＭ４０２に記憶する印刷リストが変更されたことを検知すると処理を開始する。
【０１４３】
Ｓ１８０１で、ＣＰＵ４０１は、印刷リストの先頭の印刷要求にファイルのパスが格納されているか否かを判定する。印刷リストに印刷要求が１つも格納されていない場合や、先頭の印刷要求にファイルのパスが格納されていない場合には処理を終了する。
【０１４４】
Ｓ１８０２で、ＣＰＵ４０１は、印刷リストから印刷処理を行なった印刷要求、即ち、先頭の印刷要求を取り出し、印刷リストから削除する。削除したらＳ１８０３に進む。続いて、Ｓ１８０３で、ＣＰＵ４０１は、Ｓ１８０２で取り出した印刷要求の印刷処理を行う。この処理は図１７を用いて後述する。印刷要求の印刷処理を行うと、Ｓ１８０１に進む。
【０１４５】
＜印刷要求の印刷処理の処理手順＞
次に、図１７を参照して、本実施形態のＳ１８０３の印刷要求の処理におけるＣＰＵ４０１の処理手順を説明する。以下で説明する処理は、例えば複合機１０１のＣＰＵ４０１がＲＯＭ４０３やＨＤＤ４０４に格納された制御プログラムをＲＡＭ４０２に読み出して実行することにより実現されてもよい。本処理は、上記Ｓ１８０１で、ＣＰＵ４０１が印刷リストの先頭の印刷要求にファイルのパスが格納されていると判定された場合に処理を開始する。
【０１４６】
Ｓ１９０１で、ＣＰＵ４０１は、印刷リストの先頭の印刷要求に格納されている投入先フォルダに印刷設定ファイルがあるか否かを判定する。ここでは印刷設定ファイルはＪＤＦファイルであるとし、ファイルの拡張子によってＪＤＦファイルであるか否かを判定する。ＪＤＦファイルがある場合には、Ｓ１９０２に進み、ＪＤＦファイルがない場合にはＳ１９０７に進む。フォルダ自体がない場合にはＪＤＦファイルがないと判定する。
【０１４７】
Ｓ１９０２で、ＣＰＵ４０１は、ＪＤＦファイルの解析を行う。この処理ではＪＤＦファイルの構文解析、意味解析を行い、印刷設定に必要な値を取得する。ここで取得される印刷設定は、図８Ａ及び図８Ｂで説明をした作成画面によって指定した印刷設定である。続いて、Ｓ１９０３で、ＣＰＵ４０１は、Ｓ１９０２でＪＤＦファイルの解析の結果にエラーがあるかを判定する。構文に不正がある場合や印刷設定に実行不可能な指定が含まれる場合などにエラーとなる。エラーを検出するとＳ１９０７に進み、エラーがない場合にはＳ１９０４に進む。
【０１４８】
Ｓ１９０４で、ＣＰＵ４０１は、印刷リストの先頭の印刷要求に格納されているファイルパスを取得し、ファイルを印刷する。ファイルの印刷にはＳ１９０２のＪＤＦ解析処理によって取得した印刷設定を使用する。続いて、Ｓ１９０５で、ＣＰＵ４０１は、Ｓ１９０４で行なったファイルの印刷に成功したか否かを判定する。印刷ファイルが存在しなかった場合や、印刷途中にキャンセルされた場合などに印刷失敗となる。印刷に成功したと判定された場合にはＳ１９０６に進み、そうでない場合にはＳ１９０７に進む。
【０１４９】
Ｓ１９０６で、ＣＰＵ４０１は、ＲＡＭ４０２に記憶されている印刷履歴の末尾に印刷要求を印刷完了として格納し、処理を終了する。一方、Ｓ１９０７で、ＣＰＵ４０１は、ＲＡＭ４０２に記憶されている印刷履歴の末尾に印刷要求を印刷失敗として格納し、処理を終了する。
【０１５０】
＜複数ファイルに印刷要求を行う際の操作と送信順序＞
次に、図１８を参照して、ユーザ３２６がフォルダ種別表示領域９０８に行うファイルをドラッグアンドドロップする操作の説明と、本発明を使用した際の印刷順序について説明する。
【０１５１】
図１８（ａ）は、ユーザ３２６がフォルダ種別表示領域９０８に行うファイルをドラッグアンドドロップする操作を示す複数ファイル選択時においてクライアントのファイルシステム画面２０００を示す。選択後のドロップ操作の際にウェブブラウザ７０５が表示する画面は図１２Ａ（ａ）を用いて前述している。選択状態ファイル２００１は、クライアントのファイルシステム上で選択状態になっているファイルである。図１８（ａ）に示す選択状態ファイル２００１では４つのファイルが同時に選択状態となっている。ユーザインタフェースのマウスやキーボードを使用して複数のファイルを同時に選択する操作を行うことで、同時に選択状態にすることが可能である。ユーザは、この状態で、マウスを使用しフォルダ画面のフォルダ種別表示領域９０８にドラッグアンドドロップ操作を行うことで複数ファイルに同時に印刷要求を行うことができる。
【０１５２】
図１８（ｂ）は、図１８（ａ）で説明した操作により印刷指示要求が行われた際に、ファイル整列プログラムによって決定されたファイルの送信順序を示す。ソートしない送信順２０１１は、ソートしないが設定されている時のファイルの送信順序である。ソートをしない場合の送信順序はクライアント装置のファイルシステムによって決定されるため、ここで示す例のようになるとは限らない。例えばＷｉｎｄｏｗｓでは、複数ファイルをドラッグした時の位置によって送信順序が異なる。ソートしない送信順２０１１は“ｂｏｏｋｌｅｔ０２３．ｐｄｆ”の位置をドラッグしてフォルダ種別表示領域９０８にドロップした時のものである。“ｄｏｃｕｍｅｎｔ４１．ｐｄｆ”をドラッグしたときには、“ｄｏｃｕｍｅｎｔ４１．ｐｄｆ”、“ｈａｎｄｏｕｔ．ｐｄｆ”、“２０１８０２２２＿２３１２．ｐｄｆ”、“ｂｏｏｋｌｅｔ０２３．ｐｄｆ”の順となる。ファイルの名前順の送信順序２０１２は、ファイルの名前順が設定されている際のファイルの送信順序である。ファイル名をＵＴＦ−８で表した際の昇順で並び替えが行われる。
【０１５３】
ファイルサイズ順の送信順序２０１３は、ファイルサイズ順が設定されている際のファイルの送信順序である。ファイルサイズが小さいものから先に送信されるように並び替えが行われる。最終更新日時順の送信順序２０１４は、最終更新日時が設定されている際のファイルの送信順序である。更新日時が古いものから送信されるように並び替えが行われる。このようにクライアント装置のシステムによって順序が変わり、さらに操作によっても順序が変わってしまうことが課題であり、本発明によって常に決まった順序で印刷することが可能となるのである。
【０１５４】
＜印刷リストの変化＞
次に、図１９を参照して、図１５及び図１６を用いて説明した印刷要求の受信、及び印刷要求処理においてＲＡＭ４０２に記憶される印刷リストが変化する様子を説明する。
【０１５５】
図１９（ａ）は、ｆｏｌｄｅｒ０２フォルダ１１２４に受けた“２０１８０２２２＿２３１２．ｐｄｆ”の印刷要求をＳ１７０１で印刷リストの最後に追加したところである。要求を識別するために割り当てられたＩＤ”１０２”に応じて、印刷要求から取得した投入先フォルダパス、投入者名（ユーザ名）、及びファイル名が登録されているが、ファイルの保存が終わっていないため、ファイルパスは登録されていない。先に受け付けた“ｍａｒｋｅｔｉｎｇ＿ｍａｔｅｒｉａｌｓ．ｐｄｆ”はファイルの受信が完了しておりＳ１７０５でファイルパスが追加で登録されている。
【０１５６】
図１９（ｂ）は、“ｍａｒｋｅｔｉｎｇ＿ｍａｔｅｒｉａｌｓ．ｐｄｆ”の印刷要求の処理が開始された際の印刷リストを示している。Ｓ１８０２でＩＤが１０１の印刷要求が削除されている。この時点でも“２０１８０２２２＿２３１２．ｐｄｆ”のファイルの受信が終わっていないためＩＤが１０２の印刷要求にはファイルパスが登録されていない。図１６の印刷リストの印刷要求の処理はＳ１８０１から一度終了する。
【０１５７】
図１９（ｃ）は、“２０１８０２２２＿２３１２．ｐｄｆ”の保存が完了し、Ｓ１７０５でＩＤが１０２の印刷要求にファイルパスが追加で登録された際の印刷リストである。Ｓ１８０３で印刷リストの先頭の印刷要求の印刷処理を実行する。図１９（ｄ）は、新たに“ｂｏｏｋｌｅｔ０２３.ｐｄｆ”の印刷要求を受け付け、Ｓ１７０１で追加した時の印刷リストである。
【０１５８】
本実施形態に係る印刷装置は、ユーザの指定に従ってクライアント端末のブラウザ上で動作するファイル整列プログラムを送信する。ファイル整列プログラムはブラウザから複数ファイルの印刷指示を同時に受け付けた場合に、ファイルを整列してから一つずつ複合機１０１に印刷要求として送信する。複合機１０１はファイルを受信したタイミングで印刷要求として印刷リストに追加し、ファイルの保存が完了すると印刷処理を開始するので、印刷の順序はファイルを受信の順序に保たれる。したがって、複数ファイルをまとめて印刷指示を行なっても、ユーザが意図する順序で印刷を行うことが可能である。
【０１５９】
以上説明したように、本実施形態に係る複合機（画像形成装置）は、印刷設定情報が関連付けられたフォルダを提供する記憶部と、シートに画像を形成する画像形成部とを備える。また、本画像形成装置は、フォルダに紐づけて画像形成装置に転送する印刷ファイルの指定を受け付ける画面であって複数の印刷ファイルの指定を同時に受け付け可能な画面を外部装置に表示させるための画面情報を外部装置に送信する。同時に、本画像形成装置は、画面で指定された複数の印刷ファイルの転送順序を決定するためのプログラムも外部装置に送信する。また、本画像形成装置は、フォルダに紐づけて転送されてきた印刷ファイルに基づく画像形成であって印刷設定情報を用いる画像形成を、印刷ファイルが転送されてきた順序で画像形成部に実行させる。一方、外部装置（情報処理装置）では、受信した画面情報に従ってウェブブラウザに操作画面を表示し、当該操作画面を介して所定のフォルダに複数の印刷ファイルが格納されると、受信したプログラムを用いて、これらのファイルの転送順序（即ち、印刷順序）を決定する。その後、情報処理装置は、決定した画像形成の順序に従って、画像形成対象のファイルを順に画像形成装置に対して送信し、画像形成装置では、受け付けた順に画像形成を実行する。これにより、本実施形態によれば、機器内蔵（複合機）のホットフォルダを利用した印刷ジョブについて、当該フォルダを有する装置の挙動に依存することなく、複数の印刷対象ファイルが一括で格納された場合にはユーザが意図する順序で印刷を行うことができる。
【０１６０】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１６１】
１０１：複合機（ＭＦＰ）、１０２，１０３：ＰＣ、１０４：携帯端末、４０５：ＣＰＵ（ＭＦＰ）、６０５：ウェブサーバ、６０６：ホットフォルダ機能プログラム、５０１：ＣＰＵ（クライアント装置）、７０５：ウェブブラウザ
【図１】
2020017216.tif 000003
【図２Ａ】
2020017216.tif 000004
【図２Ｂ】
2020017216.tif 000005
【図３】
2020017216.tif 000006
【図４】
2020017216.tif 000007
【図５】
2020017216.tif 000008
【図６】
2020017216.tif 000009
【図７Ａ】
2020017216.tif 000010
【図７Ｂ】
2020017216.tif 000011
【図８Ａ】
2020017216.tif 000012
【図８Ｂ】
2020017216.tif 000013
【図９】
2020017216.tif 000014
【図１０】
2020017216.tif 000015
【図１１】
2020017216.tif 000016
【図１２Ａ】
2020017216.tif 000017
【図１２Ｂ】
2020017216.tif 000018
【図１３】
2020017216.tif 000019
【図１４】
2020017216.tif 000020
【図１５】
2020017216.tif 000021
【図１６】
2020017216.tif 000022
【図１７】
2020017216.tif 000023
【図１８】
2020017216.tif 000024
【図１９】
2020017216.tif 000025