(57)【特許請求の範囲】
【請求項１】
１以上の処理を含むワークフローをデータに対して実行するワークフロー実行部と、
データに対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該データを記憶装置に記憶させるかを判定する判定部と、を有し、
前記判定部は、
前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行部は、
前記判定部により、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えないと判定された場合に、前記データを印刷処理し、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えると判定された場合に、前記データを記憶装置に記憶処理すること
を特徴とする情報処理装置。
【請求項２】
ユーザからの指示に応じて、前記ワークフロー実行部が前記記憶装置に記憶させた前記データの印刷処理を実行するように制御する印刷制御手段と
をさらに有する請求項１に記載の情報処理装置。
【請求項３】
１以上の処理を含むワークフローをデータに対して実行するワークフロー実行部と、
データに対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該データを記憶装置に記憶させるかを判定する判定部と、
前記ワークフローに含まれる処理のそれぞれの処理時間を示す処理時間情報を記憶する記憶部と、を有し、
前記判定部は、
前記ワークフローに含まれる全ての処理の処理時間を、前記処理時間情報に基づいて予測し、予測された前記処理時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行部は、
前記判定部により、予測された前記処理時間が所定の閾値を超えないと判定された場合は、前記データを印刷処理し、予測された前記処理時間が所定の閾値を超えると判定された場合は、前記データを前記記憶装置に記憶処理すること
を特徴とする情報処理装置。
【請求項４】
前記ワークフロー実行部は、
ネットワークを介して接続された前記記憶装置に前記データを送信して記憶させること
を特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
コンピュータを、
１以上の処理を含むワークフローをデータに対して実行するワークフロー実行部と、
データに対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該データを記憶装置に記憶させるかを判定する判定部として機能させ、
前記判定部は、
前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行部は、
前記判定部により、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えないと判定された場合は、前記データを印刷処理し、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えると判定された場合は、前記データを記憶装置に記憶処理すること
を特徴とする情報処理プログラム。
【請求項６】
少なくとも、画像形成装置、印刷サーバ装置及び情報処理装置を、ネットワークを介して相互に接続して形成された情報処理システムであって、
前記画像形成装置は、
形成した印刷情報を前記情報処理装置に送信し、また、前記印刷サーバ装置から受信した印刷情報に対応する印刷処理を行い、
前記印刷サーバ装置は、
前記印刷情報を記憶し、記憶した前記印刷情報のうち、指定された印刷情報を前記画像形成装置に送信し、
前記情報処理装置は、
１以上の処理を含むワークフローを、前記画像形成装置から受信した前記印刷情報に対して実行するワークフロー実行部と、
前記印刷情報に対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該印刷情報を前記印刷サーバ装置に記憶させるかを判定する判定部と、を有し、
前記判定部は、
前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行部は、
前記判定部により、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えないと判定された場合は、前記印刷情報を印刷処理し、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えると判定された場合は、前記印刷サーバ装置に送信して記憶処理すること
を特徴とする情報処理システム。
【請求項７】
少なくとも、画像形成装置、印刷サーバ装置及び情報処理装置を、ネットワークを介して相互に接続して形成された情報処理システムの情報処理方法であって、
前記画像形成装置が、
形成した印刷情報を前記情報処理装置に送信し、また、前記印刷サーバ装置から受信した印刷情報に対応する印刷処理を行い、
前記印刷サーバ装置が、
前記印刷情報を記憶し、記憶した前記印刷情報のうち、指定された印刷情報を前記画像形成装置に送信し、
前記情報処理装置が、
１以上の処理を含むワークフローを、前記画像形成装置から受信した前記印刷情報に対して実行し、
前記印刷情報に対する印刷処理が前記ワークフローに含まれる場合に、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えるか否かを判定し、
前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えないと判定した場合に、前記印刷情報を印刷処理し、前記ワークフローの実行要求がされてからの経過時間が所定の閾値を超えると判定した場合に、前記印刷情報を前記印刷サーバ装置に送信して記憶処理すること
を特徴とする情報処理方法。
【請求項８】
コンピュータを、
１以上の処理を含むワークフローをデータに対して実行するワークフロー実行部と、
データに対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該データを、前記ワークフローに含まれる処理のそれぞれの処理時間を示す処理時間情報を記憶する記憶装置に記憶させるかを判定する判定部として機能させ、
前記判定部は、
前記ワークフローに含まれる全ての処理の処理時間を、前記処理時間情報に基づいて予測し、予測された前記処理時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行部は、
前記判定部により、予測された前記処理時間が所定の閾値を超えないと判定された場合は、前記データを印刷処理し、予測された前記処理時間が所定の閾値を超えると判定された場合は、前記データを前記記憶装置に記憶処理すること
を特徴とする情報処理プログラム。
【請求項９】
少なくとも、画像形成装置、印刷サーバ装置及び情報処理装置を、ネットワークを介して相互に接続して形成された情報処理システムであって、
前記画像形成装置は、
形成した印刷情報を前記情報処理装置に送信し、また、前記印刷サーバ装置から受信した印刷情報に対応する印刷処理を行い、
前記印刷サーバ装置は、
前記印刷情報を記憶し、記憶した前記印刷情報のうち、指定された印刷情報を前記画像形成装置に送信し、
前記情報処理装置は、
１以上の処理を含むワークフローをデータに対して実行するワークフロー実行部と、
データに対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該データを記憶装置に記憶させるかを判定する判定部と、
前記ワークフローに含まれる処理のそれぞれの処理時間を示す処理時間情報を記憶する記憶部と、を有し、
前記判定部は、
前記ワークフローに含まれる全ての処理の処理時間を、前記処理時間情報に基づいて予測し、予測された前記処理時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行部は、
前記判定部により、予測された前記処理時間が所定の閾値を超えないと判定された場合は、前記データを印刷処理し、予測された前記処理時間が所定の閾値を超えると判定された場合は、前記データを前記記憶装置に記憶処理すること
を特徴とする情報処理システム。
【請求項１０】
ワークフロー実行部が、１以上の処理を含むワークフローをデータに対して実行するワークフロー実行ステップと、
判定部が、データに対する印刷処理が、前記ワークフロー実行部により実行される前記ワークフローに含まれる場合に、当該印刷処理を実行するか、当該印刷処理を実行せずに当該データを、前記ワークフローに含まれる処理のそれぞれの処理時間を示す処理時間情報を記憶する記憶装置に記憶させるかを判定する判定ステップと、を備え
前記判定ステップにおいて、
前記ワークフローに含まれる全ての処理の処理時間を、前記処理時間情報に基づいて予測し、予測された前記処理時間が所定の閾値を超えるか否かを判定し、
前記ワークフロー実行ステップにおいて、
前記判定部により、予測された前記処理時間が所定の閾値を超えないと判定された場合は、前記データを印刷処理し、予測された前記処理時間が所定の閾値を超えると判定された場合は、前記データを前記記憶装置に記憶処理すること
を特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
特許文献１（特開２０１４−１１９９４７号公報）において、データに関する処理の実行順の柔軟性を向上させることが可能な情報処理装置が開示されている。この情報処理装置は、ワークフローの実行要求元であるユーザに関連する情報に応じて、ワークフローの実行単位ごとに優先度を付与する。これにより、同一のフロー定義データに基づくワークフローであっても、ユーザ等に応じて優先度を変化させることができ、ワークフローの実行順に関して、柔軟性を向上させることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ここで、このような情報処理装置において、データを印刷するワークフローに対応できれば、例えば、スキャンしたデータにハンコやバーコード（以降スタンプという）を付加し、そのデータをフォルダに配信すると共に用紙に印刷する等のワークフローも実行可能となり、情報処理装置の利便性をさらに向上させることができる。
【０００４】
本発明は、上述の課題に鑑みてなされたものであり、ワークフローに従って、データを印刷できるような情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法の提供を目的とする。
【課題を解決するための手段】
【０００５】
上述した課題を解決し、目的を達成するために、本発明は、１以上の処理を含むワークフローをデータに対して実行するワークフロー実行部と、データに対する印刷処理が、ワークフロー実行部により実行されるワークフローに含まれる場合に、印刷処理を実行するか、印刷処理を実行せずにデータを記憶装置に記憶させるかを判定する判定部と、を有し、判定部は、ワークフローの実行要求がされてからの経過時間が所定の閾値を超えるか否かを判定し、ワークフロー実行部は、判定部により、ワークフローの実行要求がされてからの経過時間が所定の閾値を超えないと判定された場合に、データを印刷処理し、ワークフローの実行要求がされてからの経過時間が所定の閾値を超えると判定された場合に、データを記憶装置に記憶処理する。
【発明の効果】
【０００６】
本発明によれば、ワークフローに従って、データを印刷できるという効果を奏する。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施の形態の情報処理システムのシステム構成図である。
【図２】図２は、実施の形態の情報処理システムの処理の流れを示す模式図である。
【図３】図３は、情報処理システムのシステム処理が、ＭＦＰで完結可能となることを説明するための図である。
【図４】図４は、ＭＦＰ１のハードウェア構成を示す図である。
【図５】図５は、配信サーバ、印刷サーバ、メールサーバ及びストレージサーバのハードウェア構成を示す図である。
【図６】図６は、配信サーバのＣＰＵが、ＨＤＤに記憶されている配信プログラムを実行することで実現される各機能の機能ブロック図である。
【図７】図７は、印刷サーバのＣＰＵが、ＨＤＤに記憶されている印刷プログラムを実行することで実現される各機能の機能ブロック図である。
【図８】図８は、配信サーバのシステムモジュール構成を示す図である。
【図９】図９は、管理者により選択されたプラグインで形成されたワークフローの一例を示す図である。
【図１０】図１０は、ワークフローの設定動作を説明するためのシーケンス図である。
【図１１】図１１は、ＭＦＰのスキャン機能により得られたデータのワークフロージョブの処理動作の流れを示すシーケンス図である。
【図１２】図１２は、判定処理動作の流れを示すフローチャートである。
【図１３】図１３は、セキュアプリント方式で印刷を行う、第１の実施の形態の情報処理システムの印刷処理の流れを説明するための模式図である。
【図１４】図１４は、第１の実施の形態の情報処理システムの印刷処理の流れを示すシーケンス図である。
【図１５】図１５は、第２の実施の形態における判定処理を含む、ワークフロージョブの処理動作の流れを示すシーケンス図である。
【図１６】図１６は、第３の実施の形態における判定処理を含む、ワークフロージョブの処理動作の流れを示すシーケンス図である。
【図１７】図１７は、印刷ジョブの生成元が配信サーバの場合に、ユーザがＭＦＰ１で正規のユーザとして認証された際に、印刷が可能となる第４の実施の形態の情報処理システムを説明するための図である。
【発明を実施するための形態】
【０００８】
（第１の実施の形態）
（システム構成）
図１に、第１の実施の形態の情報処理システムのシステム構成図を示す。この実施の形態の情報処理システムは、複合機（ＭＦＰ：Multifunction  Peripheral）１、配信サーバ２、印刷サーバ３、メールサーバ４及びストレージサーバ５を有している。ＭＦＰ１〜印刷サーバ３はイントラネット等の狭い範囲で使用されるネットワーク６に接続されている。メールサーバ４及びストレージサーバ５は、インターネット等の広域のネットワーク７に接続されている。なお、ＭＦＰ１〜ストレージサーバ５は、それぞれ一つ設けてもよいし複数設けてもよい。
【０００９】
配信サーバ２（情報処理装置の一例）には、例えばスキャン等により得られたデータを印刷するワークフローに対応する配信プログラム及びＭＦＰ１の印刷制御行う印刷プログラム等がインストールされている。印刷サーバ３（記憶装置の一例）は、ＭＦＰ１にスキャンされた印刷データを蓄積するサーバであり、ＭＦＰ１の印刷制御を行う印刷プログラム等がインストールされている。また、メールサーバ４は、電子メールを配信するサーバである。ストレージサーバ５は、ストレージサービスを行っている外部のサーバである。
【００１０】
図２は、第１の実施の形態の情報処理システムの処理の流れを示す模式図である。この第１の実施の形態の情報処理システムの場合、ＭＦＰ１（印刷部及び画像形成装置の一例）は、スキャンにより得られたデータを配信サーバ２に送信する。配信サーバは、ＭＦＰ１から送信されたデータに対して、所定のワークフロー処理を施し、印刷を実行する。また、所定の条件を満たした場合に、印刷を実行せずに、ワークフロー処理されたデータを印刷サーバ３に送信する。印刷サーバ３は、ワークフロー処理されたデータを一旦、蓄積する。
【００１１】
次に、ＭＦＰ１は、スキャンされたデータの印刷を指定するユーザの印刷操作を検出すると、印刷サーバ３に蓄積されているデータを受信して、ワークフロー処理されたデータの印刷を実行する。
【００１２】
なお、配信プログラム及び印刷制御プログラムがＭＦＰ１にインストールされている場合、配信サーバ２及び印刷サーバ３は、システム構成から除外してもよい。この場合、図３に示すように、ＭＦＰ１は、スキャンしたデータをワークフロー処理して印刷を実行する。また、所定の条件を満たした場合に、印刷実行せずに、ワークフロー処理されたデータを蓄積し、ユーザから印刷指示があった際、印刷処理を実行する。このように、第１の実施の形態のシステム動作は、ＭＦＰ１で完結させることができるが、以下、図１のシステム構成に基づいて、説明を進める。
【００１３】
（ＭＦＰのハードウェア構成）
図４は、ＭＦＰ１のハードウェア構成を示す図である。この図４に示すようにＭＦＰ１は、コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の各種の画像形成機能を備えた本体１０と、ユーザの操作に応じた入力を受け付ける操作部２０とを備える。本体１０と操作部２０は、専用の通信路３０を介して相互に通信可能に接続されている。通信路３０は、例えばＵＳＢ（Universal  Serial  Bus）規格のものを用いることもできる。また、有線か無線かを問わず任意の規格のものを用いることができる。また、本体１０は、コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の画像形成機能のうち、一つの機能を有していてもよいし、複数の機能を有していてもよい。
【００１４】
操作部２０としては、単独で完結した情報処理を実行可能な電子機器を用いることができる。一例として、操作部２０としては、スマートフォン又はタブレット型端末等の情報処理端末（スマートデバイス）を用いることができる。この場合、操作部２０として用いられるスマートデバイスは、ＭＦＰ１の操作部として機能する。
【００１５】
より詳しくは、操作部２０として用いられるスマートデバイスは、従来、ＭＦＰ１専用の操作部として固定され設置されていた操作パネルの代わりに、ＭＦＰ１に対して装着及び取り外しが可能に接続される。すなわち、操作部２０として用いられるスマートデバイスは、例えばＭＦＰ１の操作パネルが配置される位置等の所定の位置に取り外し可能（分離可能）ながらも、ＭＦＰ１と一体的に設置される。従って、操作部２０として用いられるスマートデバイスおよびＭＦＰ１は、一台の装置として把握されてもよい。操作部２０であるスマートデバイスは、ＭＦＰ１から取り外されると、ＭＦＰ１との間で、例えばＢｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）又は赤外線通信等の無線通信を行い、ＭＦＰ１の操作部として機能する。なお、ＭＦＰ１は、このように本体１０から操作部２０が取り外し可能となっているが、操作部２０が本体１０に固定されていてもよい。
【００１６】
本体１０は、操作部２０で受け付けた入力に応じた動作を行う。また、本体１０は、配信サーバ２及び印刷サーバ３等と通信可能であり、印刷サーバ３から受信したワークフロー処理済みの画像データの印刷処理等を行う。
【００１７】
（本体のハードウェア構成）
次に、本体１０のハードウェア構成について説明する。図１に示すように、本体１０は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、ＨＤＤ（ハードディスクドライブ）１４とを備える。また、本体１０は、通信部（インタフェース）１５と、接続Ｉ／Ｆ１６と、エンジン部１７とを備える。各部１１〜１７は、システムバス１８を介して相互に接続されている。
【００１８】
ＣＰＵ１１は、本体１０の動作を統括的に制御する。ＣＰＵ１１は、ＲＡＭ１３をワークエリア（作業領域）としてＲＯＭ１２又はＨＤＤ１４等に格納されたプログラムを実行することで、本体１０全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能などの各種機能を実現する。
【００１９】
通信部１５は、ネットワーク６及びネットワーク７上の各サーバ２〜５と通信するためのインタフェースである。接続Ｉ／Ｆ１６は、通信路３０を介して操作部２０と通信するためのインタフェースである。なお、図４において、通信路３０は、有線的に図示されているが、上述のように操作部２０は、ＭＦＰ１の本体１０に対して装着及び取り外し可能に設けられている。このため、操作部２０をＭＦＰ１に装着しているときには、通信路３０は有線通信路として機能し、操作部２０をＭＦＰ１から取り外したときには、通信路３０は無線通信路として機能するものと理解されたい。
【００２０】
エンジン部１７は、コピー機能、スキャナ機能、ファクシミリ機能及びプリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。エンジン部１７は、例えば原稿の画像をスキャンして読み取るスキャナ（画像読取部）、用紙等のシート材への印刷を行うプロッタ（画像形成部）、ファクシミリ通信を行うファクシミリ通信部等を備えている。なお、印刷済みシート材を仕分けるフィニッシャ及び原稿を自動給送するＡＤＦ（自動原稿給送装置）等の特定のオプションを設けてもよい。
【００２１】
（操作部のハードウェア構成）
次に、操作部２０のハードウェア構成について説明する。図４に示すように、操作部２０は、ＣＰＵ２１と、ＲＯＭ２２と、ＲＡＭ２３と、フラッシュメモリ２４と、通信部２５と、接続Ｉ／Ｆ２６と、操作パネル２７とを備え、これらがシステムバス２８を介して相互に接続されている。
【００２２】
ＣＰＵ２１は、操作部２０の動作を統括的に制御する。ＣＰＵ２１は、ＲＡＭ２３をワークエリア（作業領域）としてＲＯＭ２２又はフラッシュメモリ２４等に格納されたプログラムを実行することで、操作部２０全体の動作を制御する。接続Ｉ／Ｆ２６は、通信路３０を介して本体１０と通信するためのインタフェースである。
【００２３】
操作パネル２７は、タッチセンサを備えた液晶表示装置（ＬＣＤ）で構成される。操作パネル２７は、ユーザの操作に応じた各種の入力を受け付けると共に、例えば受け付けた入力に応じた情報、ＭＦＰ１の動作状況を示す情報、設定状態を示す情報等の各種の情報を表示する。なお、操作パネル２７は、タッチセンサを備えた有機ＥＬ表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。
【００２４】
（各サーバ装置のハードウェア構成）
図５は、各サーバ２〜５のハードウェア構成図である。各サーバ２〜５は、この図５に示す構成と同様の構成を有している。各サーバ２〜５を代表して、配信サーバ２のハードウェア構成を説明する。配信サーバ２は、ＣＰＵ３１、ＲＯＭ３２、ＲＡＭ３３、ＨＤＤ３４、通信部３５を備えている。ＣＰＵ３１〜通信部３５は、システムバス３８を介して相互に接続されている。配信サーバ２のＨＤＤ３４（記憶部の一例）には、配信プログラム等の各種アプリケーションプログラムの他、後述するワークフローが記憶される。また、印刷サーバ３のＨＤＤ３４には、印刷プログラム等の各種アプリケーションプログラムが記憶されている。配信プログラム及び印刷プログラムは、ＲＯＭ３２又はＲＡＭ３３等の他の記憶部に記憶してもよい。
【００２５】
なお、この実施の形態の例では、機能の独立性を保つために、本体１０側のＯＳと操作部２０側のＯＳが互いに異なる。つまり、本体１０と操作部２０は、別々のオペレーティングシステムで互いに独立して動作する。一例ではあるが、第１の実施の形態の場合、本体１０側には、ＯＳとしてリナックス（Ｌｉｎｕｘ（登録商標））が設けられ、操作部２０側には、ＯＳとしてアンドロイド（Ａｎｄｒｏｉｄ（登録商標））が設けられている。
【００２６】
本体１０及び操作部２０を別々のオペレーティングシステムで動作させることで、本体１０と操作部２０との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部２０が受け付けた入力（ユーザからの指示内容）を本体１０へ伝達する動作（コマンド通信）及び本体１０が操作部２０へイベントを通知する動作等がこれに該当する。ここでは、操作部２０が本体１０へコマンド通信を行うことにより、本体１０の機能を使用することができる。また、本体１０から操作部２０に通知するイベントには、本体１０における動作の実行状況、本体１０側で設定された内容等がある。
【００２７】
（配信サーバの機能ブロック構成）
図６は、配信サーバのＣＰＵ３１が、ＨＤＤ３４に記憶されている配信プログラムを実行することで実現される各機能の機能ブロック図である。この図６に示すように、ＣＰＵ３１は、配信プログラムを実行することで、ジョブ入力部５１、ジョブキュー記憶制御部５２、フロー実行制御部５３（ワークフロー実行部の一例）、フロー定義記憶制御部５４、プラグイン記憶制御部５５、フロー作成部５６及び通信制御部５７として機能する。
【００２８】
（印刷サーバの機能ブロック構成）
図７は、印刷サーバ３のＣＰＵ３１が、ＨＤＤ３４に記憶されている印刷プログラムを実行することで実現される各機能の機能ブロック図である。この図７に示すように、ＣＰＵ３１は、印刷プログラムを実行することで、文書データ受付部６１、印刷ジョブ生成部６２、印刷ジョブ記憶制御部６３、印刷ジョブ送信部６４及び通信制御部６５として機能する。
【００２９】
印刷サーバ３は、従来、データをポートモニタから取得していたが、この実施の形態の例の場合、配信サーバ２からネットワーク６，７を介してデータを取得してもよい。また、従来は、ポートモニタがデータを、ＭＦＰ１のプリンタ機能が理解できるにフォーマット変換するレンダリング処理することで、印刷ジョブ（印刷情報の一例）を生成する。これに対し、実施の形態の例の場合、ポートモニタを介さずに、印刷サーバ３がレンダリング処理を行って印刷ジョブを生成する。なお、データのフォーマットが、例えばＰＤＦ（登録商標）（Portable  Document  Format）等のようにプリンタ機能が直接的に理解できるフォーマットである場合、レンダリング処理はしなくてもよい。このような場合は、印刷ジョブ生成部６２でレンダリング処理を行われない。また、配信サーバ２において印刷ジョブが生成され、印刷サーバ３に送信された場合に、印刷ジョブ生成部６２はレンダリング処理をしなくてもよい。
【００３０】
なお、配信プログラム及び印刷プログラムの上述の各機能の一部又は全部を、ＩＣ（半導体集積回路）等のハードウェアで実現してもよい。また、配信プログラム及び印刷プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、ＣＤ−Ｒ、ＤＶＤ、ブルーレイディスク（登録商標）、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。ＤＶＤは、「Digital  Versatile  Disk」の略記である。また、配信プログラム及び印刷プログラムは、インターネット等のネットワーク経由で提供してもよい。また、配信プログラム及び印刷プログラムを、ネットワークを介してダウンロードし、操作部２０（又は本体１０）にインストールして実行してもよい。また、配信プログラム及び印刷プログラムを、機器内のＲＯＭ等に予め組み込んで提供してもよい。
【００３１】
（配信サーバのモジュール構成）
次に、図８は、配信サーバ２のモジュール構成を示す図である。この図８に示すように、配信サーバ２は、ワークフローフレームワーク７１上に入力プラグイン７２、処理プラグイン７３（フィルタープラグイン）、出力プラグイン７４を備えたモジュール構成となっている。入力プラグイン７２としては、例えばスキャンプラグイン７５、ホットフォルダプラグイン７６等が設けられている。また、処理プラグイン７３としては、例えばＯＣＲプラグイン７７、画像変換プラグイン７８、画像補正プラグイン７９、画像フォーマット変換プラグイン８０、スタンププラグイン８１等が設けられている。また、出力プラグイン７４としては、例えばメール配信プラグイン８２、ＦＴＰ（File  Transfer  Protocol）配信プラグイン８３、フォルダ配信プラグイン８４、及び、印刷プラグイン８５等が設けられている。
【００３２】
各プラグインは、ワークフロージョブに含まれる処理を実行する実行単位である。各プラグインは、管理者等が所望のプラグインを選択してインストールできるようになっている。このため、印刷プラグイン８５がインストールされない場合もある。このようなプラグインのうち、処理プラグイン７３は、例えば画像補正プラグイン７９によりデータサイズの変更等の画像補正を行い、画像フォーマット変換プラグイン８０でデータのフォーマットをＰＤＦ（登録商標）に変換し、ＯＣＲ（optical  character  reader）プラグイン７７で画像上の文字を読み取りテキストデータに変換するＯＣＲ処理を行う等のように、実行に時間を要する。
【００３３】
（ワークフロー）
図９は、管理者等により上述の各プラグインから選択され設定されたワークフローの一例を示す図である。この図９において、実線の枠で示すプラグインは処理プラグイン７３に分類されるプラグインである。また、図９において、点線の枠で示すプラグインは出力プラグイン７４に分類されるプラグインであり、データの配信形態を示している。
【００３４】
この図９は、ＭＦＰ１によりスキャンされ、配信サーバ２に配信されたデータに対して、画像補正プラグイン７９→画像フォーマット変換プラグイン→ＯＣＲプラグイン７７→フォルダ配信プラグイン８４の順に処理を施すワークフローが設定されている例を示している。このようなワークフローは、分岐させることも可能である。図９の例の場合、画像フォーマット変換プラグイン８０をＦＴＰ配信プラグイン８３でＦＴＰ配信する分岐のワークフローも設定されている。
【００３５】
さらに、図９の例の場合、画像変換プラグイン７８で画像のサイズ変換等を施したデータを、メール配信プラグイン８２を実行することでメールサーバ４に送信するワークフロー、及び、スタンププラグイン８１でスタンプを付加したデータを、印刷プラグイン８５の処理を行うことで、印刷サーバ３を介してＭＦＰ１に送信して印刷を行うワークフローも設定されている。
【００３６】
なお、ワークフローが分岐している場合、各ワークフローを並列に実行しても良いが、この例においては、図６に示すフロー実行制御部５３は、分岐している各ワークフローを順次実行する。このため、フロー実行制御部５３は、画像補正プラグイン７９からフォルダ配信８４のワークフローを実行すると、画像フォーマット変換プラグイン８０まで処理を戻し、分岐してＦＴＰ配信プラグイン８３を実行する。また、この後、フロー実行制御部５３は、画像変換プラグイン７８を実行してデータのサイズ変更処理等を行い、メール配信プラグイン８２を実行することで、サイズ変更処理等を行ったデータが付加された電子メールをメールサーバ４に配信する。さらに、この後、フロー実行制御部５３は、スタンププラグイン８１を実行することでデータにスタンプを付加し、印刷サーバ３に配信する印刷プラグイン８５を実行する。
【００３７】
すなわち、この例の場合における、フロー実行制御部５３のワークフロー全体の処理順序は、画像補正プラグイン７９→画像フォーマット変換プラグイン８０→ＯＣＲプラグイン７７→フォルダ配信プラグイン８４→ＦＴＰ配信プラグイン８３→画像変換プラグイン７８→メール配信プラグイン８２→スタンププラグイン８１→印刷プラグイン８５の順となる。このように各ワークフローを並列に実行することで、後述するワークフローの処理時間を計算し易くすることができる。
【００３８】
（配信サーバに対するワークフローの設定動作）
図１０は、ワークフローの設定動作を説明するためのシーケンス図である。ワークフローを設定する場合、管理者は、ステップＳ１において、配信サーバ２を操作することで、所望のプラグインを選択し、ワークフローの設定を指示する。ワークフローの設定指示を検出すると、図６に示すプラグイン記憶制御部５５が、ステップＳ２において、配信サーバ２のＨＤＤ３４に記憶されている上述の各種プラグイン７７〜８５の中から、管理者により指定されたプラグインを検索する。そして、フロー作成部５６が、検索されたプラグインを用いて、管理者から指定された処理順序のワークフローを作成する。フロー定義記憶制御部５４は、作成されたワークフローを、配信サーバ２のＨＤＤ３４等の記憶部に保存する。
【００３９】
次に、以下の表１に、文書が記載された用紙をＭＦＰ１がスキャン処理することで形成された画像データに付加される書誌情報の一例を示す。
【００４０】
【表１】
0006794639.tif 000002
【００４１】
この表示１に例示するように、スキャンにより形成された画像データには、「ジョブ識別番号（ジョブＩＤ）」、「投入された時間」、「ユーザ名」、「ＭＦＰのＩＰアドレス」、「フォーマット情報（フォーマット）」、「ワークフローＩＤ」、「印刷サイズ（サイズ）」、及び「印刷種別（カラー/モノクロ）」等の書誌情報が付加される。
【００４２】
「ジョブＩＤ」は、スキャンにより得られた画像データに対いて付加される一意の識別番号である。「ユーザ名」は、スキャンを行ったユーザの名前である。「ＭＦＰのＩＰアドレス」は、スキャンにより得られた画像データを印刷するＭＦＰのネットワーク６内のＩＰアドレスである。「フォーマット情報」は、スキャンにより得られた画像データの、例えばＪＰＥＧ（Joint  Photographic  Experts  Group）又はＧＩＦ（Graphics  Interchange  Format）等のフォーマットを示す情報である。フォーマットは、画像フォーマット変換プラグイン８０により、ＪＰＥＧからＰＤＦ（登録商標）に変換することも可能である。「ワークフローＩＤ」は、スキャンにより得られた画像データに施されるワークフローを示す識別番号である。「印刷種別（カラー/モノクロ）」は、スキャンにより得られた画像データをカラー印刷するかモノクロ印刷するかを指定するための情報である。
【００４３】
１つのジョブに対しては、このような書式情報が１つ付加される。このような書式情報は、ワークフロージョブの生成時に作成され、フロー作成部５６により、ワークフロージョブの一部として配信データ（画像データ）と共にＨＤＤ３４等の記憶部に保存される。
【００４４】
また、ワークフローＩＤは、フロー定義記憶制御部５４により管理される。このため、ジョブは、ワークフローＩＤを参照することで、実行されるワークフローを認識できる。このワークフローＩＤは、ユーザがＭＦＰ１の操作画面を介して選択したワークフローに応じて変化する。
【００４５】
また、このような書誌情報は、印刷時にも用いられる。例えば、Ａ４サイズの用紙をスキャンすることで得られた画像データは、Ａ４サイズの用紙に印刷される。また、カラー印刷が選択されている場合は、カラーで印刷される。なお、ＭＦＰ１でユーザが認証された場合に、印刷物が出力（排紙）されるセキュアプリントを行う場合において、印刷サーバ３にデータを送信する際（スキャンの際）に、ユーザはＭＦＰ１の操作画面で、印刷種別（カラー／モノクロ）、印刷面（両面／片面）、印刷部数等を変更することが可能である。
【００４６】
（スキャンにより得られたデータのワークフロージョブの処理動作）
図１１は、ＭＦＰ１のスキャン機能により得られたデータのワークフロージョブの処理動作の流れを示すシーケンス図である。まず、ステップＳ１１では、所望の用紙に記載されている画像及び（又は）文書のスキャンを行うように、ユーザがＭＦＰ１を操作する。ＭＦＰ１は、載置台に載置された用紙をスキャンし、このスキャンにより得られた画像データに上述の書誌情報を付加したワークフロージョブを生成し、配信サーバ２に送信する（ステップＳ１２）。
【００４７】
配信サーバ２のジョブキュー記憶制御部５２は、ＭＦＰ１から送信されたワークフロージョブを、例えばＦＩＦＯ（First  In  First  Out  memory）メモリ等にキューとして蓄積する（ステップＳ１３）。フロー実行制御部５３は、ジョブキュー記憶制御部５２を介して、メモリに蓄積されたワークフロージョブを取得する（ステップＳ１４）。フロー実行制御部５３は、ステップＳ１５〜ステップＳ１８において、ワークフロージョブに含まれる画像データに対して、表１に示した「ワークフローＩＤ」に対応するプラグイン処理を施す。
【００４８】
なお、フロー実行制御部５３は、メール配信プラグイン８２を実行した場合は、ステップＳ１６において、メールサーバ４にプラグイン処理した画像データを配信する。または、フロー実行制御部５３は、フォルダ配信プラグイン８４を実行した場合は、ステップＳ１６において、メールサーバ４にプラグイン処理しストレージサーバ５に画像データを配信する。
【００４９】
次に、この例の場合、フロー実行制御部５３は、ステップＳ１８において、ワークフロージョブのワークフローに印刷プラグイン８５が含まれているか否かを判定（前判定）する。印刷プラグイン８５が含まれていない場合、ＭＦＰ１で印刷を行う必要はないため、ステップＳ２０に処理を進め、ワークフロー処理が完了したワークフロージョブを印刷サーバ３に送信して一旦、蓄積する。
【００５０】
これに対して、フロー実行制御部５３は、ステップＳ１８において、ワークフロージョブのワークフローに印刷プラグイン８５が含まれていると判別した場合、画像データに対して、印刷プラグイン８５を実行する。例えば、ワークフロー処理されたデータに基づいて、レンダリング処理を行い、印刷ジョブ及び書誌情報等を生成する。そして、判定部の一例を兼ねるフロー実行制御部５３は、ステップＳ１９において、印刷プラグインの処理で生成された印刷ジョブ及び書誌情報を印刷サーバ３に蓄積するか、ＭＦＰ１に送信してすぐに印刷するか、の判定処理を行う。
【００５１】
（時間差を用いた判定処理）
図１２のフローチャートに、ステップＳ１９の判定処理動作の流れを示す。この判定処理を行う場合、フロー実行制御部５３は、ステップＳ３１において、表１を用いて説明したワークフロージョブが投入された時間と、現在の時間との時間差が、ユーザにより予め設定された時間の閾値以内であるか否か（例えば、１分以内であるか否か）を判別する。なお、設定された時間の閾値は、一例としてＨＤＤ１４等の記憶部に記憶されている。
【００５２】
すなわち、このステップＳ３１では、フロー実行制御部５３が、ワークフロージョブが投入されてから、それほど時間が経過してないか否かを判別する。時間差が１分以内であるということは、ユーザがＭＦＰ１の近くに位置している可能性が高い。このため、時間差が１分以内であると判別した場合（ステップＳ３１：Ｙｅｓ）、フロー実行制御部５３は、ステップＳ３２において、ＭＦＰ１で印刷ジョブを印刷すると判定する。
【００５３】
これに対して、時間差が１分を超えているということは、ユーザがＭＦＰ１から離れた場所に移動している可能性が高い。このため、時間差が１分を超えていると判定した場合（ステップＳ３１：Ｎｏ）、フロー実行制御部５３は、ステップＳ３３において、印刷ジョブを印刷サーバ３に送信すると判定する。
【００５４】
印刷サーバ３に送信すると判定した場合、フロー実行制御部５３は、図１１のシーケンス図のステップＳ２０において、印刷ジョブを印刷サーバ３に送信する。印刷サーバ３の文書データ受付部６１は、印刷ジョブを受信し、ＨＤＤ３４等の記憶部に保存する。この場合、印刷ジョブ生成部６２はレンダリング処理をしなくてもよい。また、ステップＳ１８において、印刷プラグイン８５がレンダリング処理を実行せず、ワークフロー処理されたデータが印刷サーバ３に送信された場合に、印刷ジョブ生成部６２はレンダリング処理をしてもよい。
【００５５】
ＭＦＰ１で印刷すると判定した場合、フロー実行制御部５３は、図１１のシーケンス図のステップＳ２１において、通信制御部５７を介して印刷ジョブをＭＦＰ１に送信し、画像データの印刷を行う。ＭＦＰ１は、印刷ジョブの書誌情報で示される用紙サイズ及び印刷種別（カラー/モノクロ）等で画像データの印刷を行う。
【００５６】
ここで、印刷ジョブを印刷サーバ３に送信しない場合は、このように印刷ジョブに対応する印刷処理がＭＦＰ１で実行される。このため、印刷した用紙の出力（排紙）が完了するまでの間、ユーザは、ＭＦＰ１の前で待機する必要がある。従って、直ぐに印刷が行われることを、ユーザに通知することが好ましい。このような通知を行わない場合、ユーザは印刷サーバ３に印刷ジョブが送信されたと考え、ＭＦＰ１の前から立ち去ってしまう。そして、ユーザが立ち去った後に、印刷された用紙が排紙されるおそれがある。これはセキュリティ上、好ましいことではない。このため、印刷サーバ３に印刷ジョブを送信しない場合は、配信サーバ３の通信制御部５７は、ＭＦＰ１に対して印刷が開始される旨のメッセージを送信し、又は、ＭＦＰ１に対して、印刷が開始される旨のメッセージの表示要求を行う。
【００５７】
配信サーバ２から印刷が開始される旨のメッセージを受信すると、ＭＦＰ１の操作部２０のＣＰＵ２１は、例えば「１分以内に印刷されます」又は「印刷中です  お待ちください」等の受信したメッセージを操作パネル２７に表示制御する。これにより、ユーザがＭＦＰ１の前から立ち去る不都合を防止でき、ユーザに対して安全に印刷物を提供できる。
【００５８】
また、印刷ジョブを印刷サーバ３に送信する場合は、その旨をユーザに通知することが好ましい。このような通知を行わないと、ユーザは印刷サーバ３に送信されたことを知らずに、ＭＦＰ１の前で長時間に待機してしまう恐れがあり、ユーザの利便性上、好ましいことではない。
【００５９】
（印刷動作）
次に、第１の実施の形態の情報処理システムの場合、図１３に示すセキュアプリントシステムで印刷ジョブに対応する印刷処理を行う。すなわち、図１３において、印刷サーバ３には、図１１を用いて説明したように、配信サーバ２から送信された印刷ジョブ、及び、ユーザＡが操作するパーソナルコンピュータ装置（ＰＣ）９０から送信された印刷デーを蓄積する。
【００６０】
印刷サーバ３に印刷データを送信したユーザＡは、ＭＦＰ１の設置場所に移動する。ＭＦＰ１が複数設置されている場合は、ユーザＡは所望のＭＦＰ１を選択する。ユーザＡは、選択したＭＦＰ１のカードリーダに対してＩＤカードを近接させる。これにより、選択されたＭＦＰ１でユーザ認証処理が行われる。正規のユーザであることを認証すると、ＭＦＰ１は、印刷サーバ３と通信を行い、ユーザＡの印刷データの一覧を操作パネル２７等に表示する。そして、この一覧からユーザにより選択された印刷データを、印刷サーバ３から取得し、印刷処理を実行する。
【００６１】
このように、ユーザがＭＦＰ１の設置場所に移動した際にユーザ認証を行い、そのユーザの印刷データを印刷することで、安全にユーザＡに対して印刷物を提供できる。
【００６２】
図１４は、このような印刷処理の流れを示すシーケンス図である。この図１４において、ユーザは、ＭＦＰ１の設置場所に移動すると、上述のようにＩＤカードを用いてユーザ認証を行う。この際、ＭＦＰ１は、ＩＤカードからユーザＩＤを取得し、ＲＡＭ２３等に一旦記憶しておく。そして、ユーザは、ＭＦＰ１の操作パネル２７を操作して、印刷ジョブの一覧の取得要求を行う。この取得要求を検出すると、ＭＦＰ１は、ステップＳ４２において、印刷サーバ３に対してユーザＩＤを付加して印刷ジョブの一覧送信要求を行う。
【００６３】
印刷サーバ３の印刷ジョブ送信部６４は、ステップＳ４３において、印刷ジョブ記憶制御部６３に、ＭＦＰ１から送信されたユーザＩＤを付した印刷ジョブの取得要求を行う。印刷ジョブ記憶制御部６３は、ユーザＩＤに基づいて、ＨＤＤ３４等の記憶部に記憶されている印刷ジョブを参照することで、ユーザＩＤに対応する印刷ジョブの一覧情報を形成し、通信制御部６５を介してＭＦＰ１に送信する。ＭＦＰ１は、印刷サーバ３から送信された印刷ジョブの一覧情報を操作パネル２７に表示する。
【００６４】
次に、ユーザは、ステップＳ４４において、操作パネル２７に表示された印刷ジョブの一覧の中から、所望の印刷ジョブを、操作パネル２７を介して選択操作し、印刷実行を指定操作する。ＭＦＰ１は、ユーザにより選択された印刷ジョブを示す情報及び印刷要求を、ステップＳ４５において、印刷サーバ３に送信する。印刷サーバ３の印刷ジョブ送信部６４は、ユーザにより選択された印刷ジョブを示す情報及び印刷要求を、ステップＳ４６において、印刷ジョブ記憶制御部６３に送信する。
【００６５】
印刷サーバ３の印刷ジョブ記憶制御部６３は、ユーザにより選択された印刷ジョブを示す情報に対応する印刷ジョブをＨＤＤ３４等の記憶部から読み出し、通信制御部６５を介してＭＦＰ１に送信する。これにより、ユーザが選択した印刷ジョブに対応する印刷処理が行われる。
【００６６】
（実施の形態の効果）
以上の説明から明らかなように、第１の実施の形態の情報処理システムは、ワークフローの一つとして印刷処理を可能とすることができる。このため、例えばスタンプした文書データを印刷すると共に、所望のフォルダに配信することも可能とすることができる。また、印刷するデータを、印刷サーバ３を介してＭＦＰ１に送信することで、ユーザがＭＦＰ１の近くに位置している際に、印刷した用紙を出力（排紙）することができる。これにより、印刷物を安全に、ユーザに提供することができる。
【００６７】
また、配信サーバ２は、ワークフロージョブが投入されてから経過した時間が、１分以内等の所定時間以内であった場合は、ＭＦＰ１ですぐに印刷を行い、所定時間以上経過していた場合は、印刷サーバ３に印刷ジョブを送信して、一旦、保持する。そして、ユーザにより、印刷が指示された際に、印刷ジョブを印刷サーバ３からＭＦＰ１に送信して印刷を行う。これにより、印刷物を安全に、ユーザに提供することができる。
【００６８】
（第２の実施の形態）
次に、第２の実施の形態の情報処理システムの説明をする。上述の第１の実施の形態の情報処理システムでは、ＭＦＰ１から配信サーバ２に送信されたワークフロージョブの投入からの経過時間に基づいて、ワークフロー処理されたデータに基づいて生成された印刷ジョブをすぐにＭＦＰ１で印刷するか、又は、印刷サーバ３に送信して保持するか、を判定した（図１１のステップＳ１９及び図１２参照）。これに対して、第２の実施の形態の情報処理システムは、配信サーバ２は、蓄積しているワークフロージョブの数（蓄積ジョブ数）で、上述の判定を行うものである。なお、上述の第１の実施の形態及び以下に説明する第２の実施の形態は、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００６９】
図１５は、第２の実施の形態における判定処理を含む、ワークフロージョブの処理動作の流れを示すシーケンス図である。この図１５において、まず、ステップＳ５１では、所望の用紙に記載されている画像及び（又は）文書のスキャンを行うように、ユーザがＭＦＰ１を操作する。ＭＦＰ１は、載置台に載置された用紙をスキャンし、このスキャンにより得られた画像データに上述の書誌情報を付加したワークフロージョブを生成し、配信サーバ２に送信する（ステップＳ５２）。
【００７０】
配信サーバ２は、ジョブ入力部５１によりＭＦＰ１から送信されたワークフロージョブを取得し、ジョブキュー記憶制御部５２に送信する。ジョブキュー記憶制御部５２は、ワークフロージョブをＦＩＦＯメモリ等の記憶部に蓄積する（ステップＳ５３）。
【００７１】
次に、ジョブキュー記憶制御部５２は、ステップＳ５４において、ワークフロージョブのワークフローに印刷プラグイン８５が含まれているか否かを判別する。印刷プラグイン８５が含まれていない場合、ＭＦＰ１で印刷を行う必要はないため、ステップＳ５６〜ステップＳ５８でワークフロー処理が完了したワークフロージョブを、ステップＳ５９で、印刷サーバ３に送信する。
【００７２】
これに対して、ジョブキュー記憶制御部５２は、ステップＳ５４において、ワークフロージョブのワークフローに印刷プラグイン８５が含まれていると判別した場合、ＦＩＦＯメモリに蓄積されているワークフロージョブの数（蓄積ジョブ数）に基づいて、ワークフロー処理されたデータに基づいて生成された印刷ジョブをＭＦＰ１に送信して、すぐに印刷を行うか、又は、印刷ジョブを印刷サーバ３に送信して、一旦、保持するか、の判定を行う。
【００７３】
ＦＩＦＯメモリの蓄積ジョブ数が「０（ゼロ）」の場合（先に蓄積されたワークフロージョブが存在しない場合）、印刷サーバ３にワークフロージョブを送信せず、そのまま印刷すれば良い。このため、ジョブキュー記憶制御部５２は、まず、「印刷中です  お待ちください」等の印刷が開始される旨のメッセージをＭＦＰ１に送信し、ユーザがＭＦＰ１の前から立ち去る不都合を防止する（ステップＳ５５）。
【００７４】
次に、フロー実行制御部５３は、ワークフロージョブをＦＩＦＯメモリに蓄積する（ステップＳ５６）。そして、フロー実行制御部５３は、ステップＳ５７及びステップＳ５８において、ワークフローとなっている、例えばスタンププラグイン８１及び印刷プラグイン８５等のプラグイン処理を実行し、生成された印刷ジョブをＭＦＰ１に送信する（ステップＳ６０）。
【００７５】
これにより、ＭＦＰ１から送信されたワークフロージョブが先頭のワークフロージョブである場合、ＭＦＰ１に印刷が開始される旨のメッセージを送信することで、ユーザがＭＦＰ１の前で待機している間に、配信サーバ２側でワークフローの各プラグイン処理を施したワークフロージョブを生成し、ＭＦＰ１に送信して印刷することができる。
【００７６】
これに対して、ＦＩＦＯメモリの蓄積ジョブ数が「１」以上の場合（先に蓄積されたワークフロージョブが存在する場合）、フロー実行制御部５３は通信制御部５７を介して印刷サーバ３にワークフローの各プラグイン処理済みのデータに基づいて生成された印刷ジョブを送信する（ステップＳ５９）。印刷サーバ３は、この印刷ジョブを一旦記憶する。記憶された印刷ジョブは、ＭＦＰ１から転送要求があった際に、ＭＦＰ１に送信され、印刷に用いられる。
【００７７】
なお、蓄積ジョブ数が、ユーザにより予め設定された閾値以下の場合に、印刷サーバにワークフロージョブを送信せず、当該閾値を超えた場合に、印刷サーバに送信するような構成にしてもよい。この場合、設定された閾値は、例えばＨＤＤ１４の所定の記憶領域に記憶すればよい。
【００７８】
（第２の実施の形態の効果）
このように、第２の実施の形態の情報処理システムの場合、配信サーバ２は、蓄積しているワークフロージョブの数（蓄積ジョブ数）で、ＭＦＰ１にワークフロージョブを送信するか、又は、印刷サーバ３に一旦蓄積するかの判定を行う。これにより、ユーザに対して印刷物を安全に提供できる等、上述の第１の実施の形態と同様の効果を得ることができる。
【００７９】
（第３の実施の形態）
次に、第３の実施の形態の情報処理システムの説明をする。この第３の実施の形態の情報処理システムは、ＭＦＰ１から配信サーバ２に送信されたワークフロージョブのワークフロー処理を完了するまでに要する時間（予測処理時間）に基づいて、ワークフロー処理されたデータに基づいて生成された印刷ジョブをすぐにＭＦＰ１で印刷するか、又は、印刷サーバ３に送信して保持するか、の判定を行うものである。なお、上述の各実施の形態及び以下に説明する第３の実施の形態は、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００８０】
図１６は、第３の実施の形態における判定処理を含む、ワークフロージョブの処理動作の流れを示すシーケンス図である。第３の実施の形態の情報処理システムでは、この図１６のステップＳ７５において、上述の予測処理時間に基づいて、ワークフロー処理されたデータに基づいて生成された印刷ジョブをすぐにＭＦＰ１で印刷するか、又は、印刷サーバ３に送信して保持するか、の判定を行う。この判定に用いられる予測処理時間は、ＭＦＰ１からワークフロージョブを受信した際に、処理時間計算部９５が算出する。
【００８１】
具体的には、処理時間計算部９５は、ワークフロージョブのワークフローを形成する各プラグインの予測処理時間からワークフロー全体の予測処理時間を算出する。一例として、処理時間計算部９５は、各プラグインの処理に要する時間を示す処理時間情報をＨＤＤ３４等の記憶部に記憶しておき、ワークフロージョブのワークフローに含まれるプラグインの処理時間情報を加算して、ワークフロー全体の処理に要する時間を算出する。以下の表２に、各プラグインの処理時間情報を示す。
【００８２】
【表２】
0006794639.tif 000003
【００８３】
この表２の例の場合、画像補正プラグイン７９は、１．０秒（ｓｅｃ）の処理時間を要し、画像変換プラグイン７８は、２．０秒の処理時間を要し、画像フォーマット変換プラグイン８０は、３．０秒の処理時間を要し、ＯＣＲプラグイン７７は、５０．０秒の処理時間を要する例である。配信サーバ２のＨＤＤ３４には、このような各プラグインの処理時間情報が記憶されている。例えば、ワークフロージョブのワークフローが表２に示す画像補正プラグイン７８〜ＯＣＲプラグイン７７で形成されている場合、処理時間計算部９５は、「画像補正プラグイン７８の処理時間１．０秒＋画像変換プラグイン７９の処理時間２．０秒＋画像フォーマット変換プラグインの処理時間３．０秒＋ＯＣＲプラグイン７７の処理時間５０．０秒」の演算を行うことで、ワークフロー全体の予測処理時間を算出する。処理時間計算部９５は、ワークフロージョブをＭＦＰ１から受信した際（ワークフロージョブ投入時）に、このような予測処理時間の演算を行い、ＨＤＤ３４等の記憶部に記憶する。
【００８４】
各プラグインの処理時間は、各プラグインの標準となる処理時間を記憶しておいてもよいし、プラグインを実行した際に要した実時間又は複数の実時間の平均時間を処理時間情報としてＨＤＤ３４に記憶しておいてもよい。また、処理時間計算部９５は、プラグインが実行される毎に、ＨＤＤ上の対応する実時間情報を更新してもよい。このような処理時間情報の更新処理を行うことで、常に最新の処理時間を記憶しておくことができ、正確な予測処理時間を算出可能とすることができる。
【００８５】
第３の実施の形態の場合、このような予め算出した予測処理時間を用いて、上述の判定を行う。すなわち、図１６のシーケンス図のステップＳ７１では、所望の用紙に記載されている画像及び（又は）文書のスキャンを行うように、ユーザがＭＦＰ１を操作する。ＭＦＰ１は、載置台に載置された用紙をスキャンし、このスキャンにより得られた画像データに上述の書誌情報を付加したワークフロージョブを生成し、配信サーバ２に送信する（ステップＳ７２）。
【００８６】
配信サーバ２は、ジョブ入力部５１によりＭＦＰ１から送信されたワークフロージョブを取得し、ジョブキュー記憶制御部５２に送信する。ジョブキュー記憶制御部５２は、ワークフロージョブをＦＩＦＯメモリ等の記憶部に蓄積する（ステップＳ７３）。
【００８７】
ここで、ジョブキュー記憶制御部５２は、ステップＳ７４において、ワークフロージョブのワークフローに印刷プラグイン８５が含まれているか否かを判別する。印刷プラグイン８５が含まれていない場合、ＭＦＰ１で印刷を行う必要はないため、ステップＳ７７〜ステップＳ７９でワークフロー処理が完了したデータに基づいて生成された印刷ジョブを、ステップＳ８０で、印刷サーバ３に送信する。
【００８８】
これに対して、ジョブキュー記憶制御部５２は、ステップＳ７４において、ワークフロージョブのワークフローに印刷プラグイン８５が含まれていると判別した場合、上述のように予め算出された予測処理時間の情報を処理時間計算部９５から取得する。そして、ジョブキュー記憶制御部５２は、取得した予測処理時間が所定時間以内の場合は、ＭＦＰ１ですぐに印刷ジョブに対応した印刷を行うと判定し、取得した予測処理時間が所定時間を超える場合は、印刷ジョブを印刷サーバ３に送信すると判定する。
【００８９】
ＭＦＰ１で印刷ジョブをすぐに印刷すると判定した場合、ジョブキュー記憶制御部５２は、まず、「印刷中です  お待ちください」等の印刷が開始される旨のメッセージをＭＦＰ１に送信し、ユーザがＭＦＰ１の前から立ち去る不都合を防止する（ステップＳ７６）。
【００９０】
次に、フロー実行制御部５３は、ワークフロージョブをＦＩＦＯメモリに蓄積する（ステップＳ７７）。そして、フロー実行制御部５３は、ステップＳ７８及びステップＳ７９において、ワークフローとなっている、例えばスタンププラグイン８１及び印刷プラグイン８５等のプラグイン処理を実行し、プラグイン処理を完了したワークフロージョブをＭＦＰ１に送信する（ステップＳ８１）。
【００９１】
これにより、ＭＦＰ１から送信されたワークフロージョブのワークフローの予測処理時間が所定の時間内である場合、ＭＦＰ１に印刷が開始される旨のメッセージを送信することで、ユーザがＭＦＰ１の前で待機している間に、配信サーバ２側でワークフローの各プラグイン処理を施したデータに基づいて生成された印刷ジョブを生成し、ＭＦＰ１に送信して印刷することができる。
【００９２】
これに対して、ワークフローの予測処理時間が所定の時間を超える場合、フロー実行制御部５３は通信制御部５７を介して印刷サーバ３にワークフローの各プラグイン処理済みのデータに基づいて生成された印刷ジョブを送信する（ステップＳ８０）。印刷サーバ３は、この印刷ジョブを一旦記憶する。記憶された印刷ジョブは、ＭＦＰ１から転送要求があった際に、ＭＦＰ１に送信され、印刷に用いられる。
【００９３】
（第３の実施の形態の効果）
このように、第３の実施の形態の情報処理システムの場合、配信サーバ２は、ワークフロージョブのワークフローの処理が完了する予測処理時間で、ＭＦＰ１に印刷ジョブを送信するか、又は、印刷サーバ３に一旦蓄積するかの判定を行う。これにより、ユーザに対して印刷物を安全に提供できる等、上述の第１の実施の形態と同様の効果を得ることができる。
【００９４】
（第４の実施の形態）
次に、第４の実施の形態の情報処理システムの説明をする。この第４の実施の形態の情報処理システムは、ＭＦＰ１が受信したワークフロー処理されたデータに基づいて生成された印刷ジョブの生成元が配信サーバ２であった場合は、ユーザがＭＦＰ１にユーザ認証を完了した際（ログインした際）に印刷開始指示画面を表示し、すぐに印刷を開始できるようにしたものである。なお、上述の各実施の形態及び以下に説明する第４の実施の形態は、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００９５】
まず、以下の表３に、第４の実施の形態の情報処理システムにおいて、配信サーバ２に蓄積された印刷ジョブを示す。
【００９６】
【表３】
0006794639.tif 000004
【００９７】
この表３の例は、ジョブＩＤが１の印刷ジョブは、ユーザＡ（ＵｓｅｒＡ）の印刷ジョブであり、文書名が「Ｄｏｃｕｍｅｎｔ１．ｄｏｃ」であり、生成元は、ユーザＡのパーソナルコンピュータ（クライアントＰＣ）であることを示している。また、ジョブＩＤが２の印刷ジョブは、ユーザＡ（ＵｓｅｒＡ）の印刷ジョブであり、文書名が「Ｄｏｃｕｍｅｎｔ２．ｄｏｃ」であり、生成元は、配信サーバ２であることを示している。すなわち、生成元が配信サーバ２の印刷ジョブは、配信サーバ２によりワークフロー処理が完了し、一旦、印刷サーバ３に蓄積された印刷ジョブを意味する。
【００９８】
第４の実施の形態の情報処理システムでは、表３に示したように、印刷ジョブ毎に、送信元がクライアントＰＣか配信サーバ２かを記憶しておく。ユーザがＭＦＰ１にログインすると、ＭＦＰ１が印刷サーバ３から取得したログインユーザの印刷ジョブ一覧に含まれる印刷ジョブのうち、送信元が配信サーバ２のものを特定し、特定した印刷ジョブをすぐに印刷サーバから取得して、印刷を開始させる。送信元がクライアントＰＣのものは、通常通り、図１７に示すようにジョブ一覧を表示し、ユーザが選択した印刷ジョブの印刷データを取得して印刷を行う。
【００９９】
また、印刷サーバ３は、配信サーバ２の識別情報（例えば、ＩＰアドレス）を記憶しておき、印刷ジョブが送信されるときに、文書データ受付部６１は、送信元のＩＰアドレスに基づいて、送信元が配信サーバ２であるか又はクライアントＰＣであるかを判断する。例えば、送信元のＩＰアドレスが、記憶している配信サーバ２のＩＰアドレスに一致した場合に、送信元が配信サーバ２であると判断し、一致しない場合は、送信元がクライアントＰＣであると判断する。判断した結果を表３に示すテーブルに登録する。
【０１００】
（第４の実施の形態の効果）
第４の実施の形態は、このように、ユーザがＭＦＰ１にログインするだけで、配信サーバ２から印刷サーバ３に投入した印刷ジョブの印刷処理を開始することができる。このため、ユーザに対して利便性が高いシステムを提供できる。
【０１０１】
上述の各実施の形態は、例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な各実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。
【０１０２】
例えば、ワークフロージョブを印刷サーバ３に送信するか、印刷を実行するかの判定処理（上述のステップＳ１９、ステップＳ５４、及びステップＳ７５）について、任意に組み合わせてもよい。すなわち、一例ではあるが、蓄積ジョブ数（ステップＳ５４）又は予測処理時間（ステップＳ７５）に基づいて、印刷を実行すると判断した場合であっても、その後の経過時間（ステップＳ１９）に基づいて、印刷を実行せずに印刷サーバ３に送信するように制御してもよい。
【０１０３】
各実施の形態及び各実施の形態の変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０４】
１  複合機（ＭＦＰ）
２  配信サーバ
３  印刷サーバ
４  メールサーバ
５  ストレージサーバ
６  ネットワーク
７  ネットワーク
１０  本体
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  ＨＤＤ
１５  通信部
１６  接続Ｉ／Ｆ
１７  エンジン部
１８  システムバス
２０  操作部
２１  ＣＰＵ
２２  ＲＯＭ
２３  ＲＡＭ
２４  フラッシュメモリ
２５  通信部
２６  接続Ｉ／Ｆ
２７  操作パネル
２８  システムバス
３０  通信路
３１  ＣＰＵ
３２  ＲＯＭ
３３  ＲＡＭ
３４  ＨＤＤ
３５  通信部
３８  システムバス
５１  ジョブ入力部
５２  ジョブキュー記憶制御部
５３  フロー実行制御部
５４  フロー定義記憶制御部
５５  プラグイン記憶制御部
５６  フロー作成部
５７  通信制御部
６１  文書データ受付部
６２  印刷ジョブ生成部
６３  印刷ジョブ記憶制御部
６４  印刷ジョブ送信部
６５  通信制御部
７１  ワークフローフレームワーク
７２  入力プラグイン
７３  処理プラグイン
７４  出力プラグイン
７５  スキャンプラグイン
７６  ホットフォルダプラグイン
７７  ＯＣＲプラグイン
７８  画像変換プラグイン
７９  画像補正プラグイン
８０  画像フォーマット変換プラグイン
８１  スタンププラグイン
８２  メール配信プラグイン
８３  ＦＴＰ配信プラグイン
８４  フォルダ配信プラグイン
８５  印刷プラグイン
【先行技術文献】
【特許文献】
【０１０５】
【特許文献１】特開２０１４−１１９９４７号公報
【図１】
0006794639.tif 000005
【図２】
0006794639.tif 000006
【図３】
0006794639.tif 000007
【図４】
0006794639.tif 000008
【図５】
0006794639.tif 000009
【図６】
0006794639.tif 000010
【図７】
0006794639.tif 000011
【図８】
0006794639.tif 000012
【図９】
0006794639.tif 000013
【図１０】
0006794639.tif 000014
【図１１】
0006794639.tif 000015
【図１２】
0006794639.tif 000016
【図１３】
0006794639.tif 000017
【図１４】
0006794639.tif 000018
【図１５】
0006794639.tif 000019
【図１６】
0006794639.tif 000020
【図１７】
0006794639.tif 000021