(57)【要約】【課題】本発明は、自機で実行不可能な処理フローが存在していた場合にも、当該処理フローの内容を変更することなく実行することができる画像処理装置を提供する。【解決手段】ＭＦＰ１０１において、登録された処理フローの中に自機で実行不可能な処理が存在した場合に、処理フローの実行可否確認要求をＭＦＰ１０２，１０３に送信し、該実行可否確認要求に対する実行可能応答を送信したＭＦＰ１０２，１０３の中から処理フローの転送先を決定する。そして、処理フローから、自機で実行可能な処理のみを含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する。そして、決定された転送先に処理フローおよび第２の連携処理フローを転送し、第１の連携処理フローを実行するための実行ボタンを表示する。【選択図】図７
2010114505.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置において、
前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信手段と、
前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信手段と、
前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定手段と、
前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成手段と、
前記転送先決定手段により決定された転送先に前記第２の連携処理フローを転送する処理フロー転送手段と、
前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示手段とを備えることを特徴とする画像処理装置。
【請求項２】
ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信手段を更に備えることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記転送先となる他の画像処理装置は、
前記処理フローの実行可否確認要求を受信する実行可否確認要求受信手段と、
前記処理フローが自機で実行可能であるかを判定する判定手段と、
前記判定手段により実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信手段と、
前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信手段とを更に備えることを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
前記転送先となる他の画像処理装置は、
前記第２の連携処理フローの実行指示を受信する実行指示受信手段と、
前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定手段と、
前記ボタン表示判定手段により表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示手段と、
前記ボタン表示判定手段により表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行手段とを更に備えることを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記ボタン表示判定手段は、前記第２の連携処理フローの最終処理が印刷処理であるかどうかによって前記実行ボタンの表示／非表示を判定することを更に特徴とする請求項４記載の画像処理装置。
【請求項６】
前記第２の連携処理フロー実行ボタン表示手段は、前記第２の連携処理フローを実行するための実行ボタンを、他の処理フローを実行するための実行ボタンとは異なる形式で表示することを更に特徴とする請求項４または５記載の画像処理装置。
【請求項７】
前記画像処理装置は、前記実行指示送信手段により実行指示が送信された後、前記第２の連携処理フローの実行結果通知を待ち受ける実行結果通知待ち受け手段を更に備えることを特徴とする請求項２乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記転送先となる他の画像処理装置は、前記第２の連携処理フロー実行手段により前記第２の連携処理フローが実行された後、当該実行結果を前記画像処理装置に通知する実行結果通知手段を更に備えることを特徴とする請求項７記載の画像処理装置。
【請求項９】
複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置において、
前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信手段と、
前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信手段と、
前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定手段と、
前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成手段と、
前記転送先決定手段により決定された前記転送先に前記第２の連携処理フローを転送する処理フロー転送手段と、
前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示手段と、
ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信手段と、
処理フローの実行可否確認要求を受信する実行可否確認要求受信手段と、
前記処理フローが自機で実行可能であるかを判定する判定手段と、
前記判定手段により実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信手段と、
前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信手段と、
前記第２の連携処理フローの実行指示を受信する実行指示受信手段と、
前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定手段と、
前記ボタン表示判定手段により表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示手段と、
前記ボタン表示判定手段により表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行手段とを備えることを特徴とする画像処理装置。
【請求項１０】
前記ボタン表示判定手段は、前記第２の連携処理フローの最終処理が印刷処理であるかどうかによって前記実行ボタンの表示／非表示を判定することを更に特徴とする請求項９記載の画像処理装置。
【請求項１１】
前記第２の連携処理フロー実行ボタン表示手段は、前記第２の連携処理フローを実行するための実行ボタンを、他の処理フローを実行するための実行ボタンとは異なる形式で表示することを更に特徴とする請求項１０記載の画像処理装置。
【請求項１２】
前記実行指示送信手段により実行指示が送信された後、前記第２の連携処理フローの実行結果通知を待ち受ける実行結果通知待ち受け手段を更に備えることを特徴とする請求項１０または１１記載の画像処理装置。
【請求項１３】
前記転送先となる他の画像処理装置は、前記第２の連携処理フロー実行手段により前記第２の連携処理フローが実行された後、当該実行結果を前記画像処理装置に通知する実行結果通知手段を更に備えることを特徴とする請求項１２記載の画像処理装置。
【請求項１４】
複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法において、
前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信工程と、
前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信工程と、
前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定工程と、
前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成工程と、
前記転送先決定工程にて決定された転送先に前記第２の連携処理フローを転送する処理フロー転送工程と、
前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示工程とを備えることを特徴とする画像処理装置の制御方法。
【請求項１５】
複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法において、
前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信工程と、
前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信工程と、
前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定工程と、
前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成工程と、
前記転送先決定工程にて決定された前記転送先に前記第２の連携処理フローを転送する処理フロー転送工程と、
前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示工程と、
ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信工程と、
処理フローの実行可否確認要求を受信する実行可否確認要求受信工程と、
前記処理フローが自機で実行可能であるかを判定する判定工程と、
前記判定工程にて実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信工程と、
前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信工程と、
前記第２の連携処理フローの実行指示を受信する実行指示受信工程と、
前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定工程と、
前記ボタン表示判定工程にて表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示工程と、
前記ボタン表示判定工程にて表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行工程とを備えることを特徴とする画像処理装置の制御方法。
【請求項１６】
複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法をコンピュータに実行させるためのプログラムにおいて、
前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信ステップと、
前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信ステップと、
前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定ステップと、
前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成ステップと、
前記転送先決定ステップにて決定された転送先に前記第２の連携処理フローを転送する処理フロー転送ステップと、
前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示ステップとを備えることを特徴とするプログラム。
【請求項１７】
複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法をコンピュータに実行させるためのプログラムにおいて、
前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信ステップと、
前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信ステップと、
前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定ステップと、
前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成ステップと、
前記転送先決定ステップにて決定された前記転送先に前記第２の連携処理フローを転送する処理フロー転送ステップと、
前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示ステップと、
ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信ステップと、
処理フローの実行可否確認要求を受信する実行可否確認要求受信ステップと、
前記処理フローが自機で実行可能であるかを判定する判定ステップと、
前記判定ステップにて実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信ステップと、
前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信ステップと、
前記第２の連携処理フローの実行指示を受信する実行指示受信ステップと、
前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定ステップと、
前記ボタン表示判定ステップにて表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示ステップと、
前記ボタン表示判定ステップにて表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行ステップとを備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のタスクを一連の処理フローとして登録し、実行することができる画像処理装置及びその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
文書に対する画像処理装置が有するタスクを複数組み合わせて一連の処理として登録し、それをユーザが呼び出すことにより、煩わしい操作をすることなく頻繁に使用する複数の処理を実行できるアプリケーションが提供されている。タスクとは、例えば複合的な機能を持つ画像処理装置等における個々の機能にて実現可能な処理や、情報処理装置等によって実行されるアプリケーションによって実現可能な処理を指す。例えば、画像処理装置が有する入出力のタスクとしては、原稿のスキャン、文書のプリント、送信（電子メール、ファクス、ファイル等）、ディスクへの保存（当該印刷処理装置内外のハードディスクへの保存）等が挙げられる。編集のタスクとしては、複数文書の結合、文書内のページ削除などがある。
【０００３】
上記のような複数のタスクをつなぎ合わせて、時系列的に処理をすることを目的に作成される一連のタスクの組み合わせを処理フローと呼ぶ。この組み合わせには、あるタスクの結果を入力として他のタスクを実行することも含め様々な組み合わせ処理が可能である。上記処理フローを扱うアプリケーションが組み込まれた画像処理装置では、ユーザによりボタン（処理フローが割り当てられたボタン）が押下されることで、当該ボタンに対応する処理フローが実行される。
【０００４】
このような画像処理装置では、作成した処理フローを別の画像処理装置に送信する機能を持つものがある。処理フローを受信した画像処理装置では、その処理フローが割り当てられたボタンをＵＩに表示する。そして、ユーザによりそのボタンが押下されることで処理フローが実行される。また、受信した画像処理装置で処理フローをさらに他の画像処理装置に送ることも可能である。それにより、例えば、一つの画像処理装置を他の画像処理装置にリプレイスする場合などであっても、リプレイス後の画像処理装置上で従来使用していたのと同じ処理フローを再度作成し直す必要が無くなる。
【０００５】
しかしながら、上記のような画像処理装置では、画像処理装置の機種やオプション構成、或いは処理フローを扱うアプリケーションのバージョンによって、解析、実行できるタスクやタスクの設定が異なることがある。そのため、送信された処理フローが受信側の画像処理装置でサポートしていないタスクを含んでいる場合、その部分は解析できない。例えば、「スキャンしたデータにユーザ証明書を付与して送信する」という内容の処理フローを作成したとする。その場合に、ユーザ証明書を付与する機能をサポートしていない画像処理装置では、「ユーザ証明書の付与」の部分を解析できない。その結果、当該処理フローを実行しようとしても、「ユーザ証明書の付与」する部分は実行されず、単に「スキャンしたデータを送信する」処理だけが実行されてしまうか、処理エラーとなって終了する。
【０００６】
このように実行不可能な画像処理要求が存在した場合の解決手段として、例えば、特許文献１に開示された方法がある。特許文献１では、画像処理装置において、設定された所定の画像処理要求を自機で実行できないと判断した場合に、変換された画像データを該選択設定された所定の画像処理機能を有効に利用できると判断された画像処理装置に転送して代替実行させる。
【特許文献１】特開２００２−１９０８８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記特許文献１において画像処理装置間でやり取りされるのは画像データのみであり、代替実行する側の画像処理装置上で同じ画像処理要求を実行したい場合には、再度当該画像処理要求を設定する必要があった。既述の処理フローを扱うアプリケーションが備える「ユーザにとって煩わしい操作が不要である」というメリットは維持しつつ、更に、実行不可能な処理フローについても、その内容を変更することなく、ユーザが所望する処理フローを実行可能としたい。
【０００８】
更には、自機で実行不可能な処理フローを他の画像処理装置に代替実行させる場合、例えば最終的に印刷物を排紙する処理フローのケースでは、以下に挙げるセキュリティ面での懸念があった。すなわち、ユーザが処理フローの実行開始を指示した画像処理装置とは物理的に離れた他の画像処理装置から印刷物が排紙されることとなるため、どの画像処理装置の排紙部に排紙されているのかがユーザにとって分かりにくいという問題点が考えられる。同様に、ユーザが処理フローの実行開始を指示した画像処理装置とは物理的に離れた別の画像処理装置から印刷物が排紙されるため、紙の放置や取り忘れなどが生じやすいという問題点も考えられる。
【０００９】
本発明は、上記問題に鑑みて成されたものであり、自機で実行不可能な処理フローが存在していた場合にも、当該処理フローの内容を変更することなく実行することができる画像処理装置およびその制御方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、請求項１記載の画像処理装置は、複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置において、前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信手段と、前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信手段と、前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定手段と、前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成手段と、前記転送先決定手段により決定された転送先に前記第２の連携処理フローを転送する処理フロー転送手段と、前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示手段とを備えることを特徴とする。
【００１１】
上記目的を達成するために、請求項９記載の画像処理装置は、複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置において、前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信手段と、前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信手段と、前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定手段と、前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成手段と、前記転送先決定手段により決定された前記転送先に前記第２の連携処理フローを転送する処理フロー転送手段と、前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示手段と、ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信手段と、処理フローの実行可否確認要求を受信する実行可否確認要求受信手段と、前記処理フローが自機で実行可能であるかを判定する判定手段と、前記判定手段により実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信手段と、前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信手段と、前記第２の連携処理フローの実行指示を受信する実行指示受信手段と、前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定手段と、前記ボタン表示判定手段により表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示手段と、前記ボタン表示判定手段により表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行手段とを備えることを特徴とする。
【００１２】
上記目的を達成するために、請求項１４記載の画像処理装置の制御方法は、複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法において、前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信工程と、前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信工程と、前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定工程と、前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成工程と、前記転送先決定工程にて決定された転送先に前記第２の連携処理フローを転送する処理フロー転送工程と、前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示工程とを備えることを特徴とする。
【００１３】
上記目的を達成するために、請求項１５記載の画像処理装置の制御方法は、複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法において、前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信工程と、前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信工程と、前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定工程と、前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成工程と、前記転送先決定工程にて決定された前記転送先に前記第２の連携処理フローを転送する処理フロー転送工程と、前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示工程と、ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信工程と、処理フローの実行可否確認要求を受信する実行可否確認要求受信工程と、前記処理フローが自機で実行可能であるかを判定する判定工程と、前記判定工程にて実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信工程と、前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信工程と、前記第２の連携処理フローの実行指示を受信する実行指示受信工程と、前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定工程と、前記ボタン表示判定工程にて表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示工程と、前記ボタン表示判定工程にて表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行工程とを備えることを特徴とする。
【００１４】
上記目的を達成するために、請求項１６記載のプログラムは、複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法をコンピュータに実行させるためのプログラムにおいて、前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信ステップと、前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信ステップと、前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定ステップと、前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成ステップと、前記転送先決定ステップにて決定された転送先に前記第２の連携処理フローを転送する処理フロー転送ステップと、前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示ステップとを備えることを特徴とする。
【００１５】
上記目的を達成するために、請求項１７記載のプログラムは、複数の処理を組み合わせて設定された処理フローを登録する処理フロー登録手段と、前記登録された処理フローに基づいて前記複数の処理を実行する実行手段とを備える画像処理装置の制御方法をコンピュータに実行させるためのプログラムにおいて、前記登録された処理フローの中に自機で実行不可能な処理が存在した場合に、前記処理フローの実行可否確認要求を他の画像処理装置に送信する実行可否確認要求送信ステップと、前記処理フローの実行可否確認要求に対する実行可能応答を前記他の画像処理装置から受信する実行可能応答受信ステップと、前記実行可能応答を送信した前記他の画像処理装置の中から前記処理フローの転送先を決定する転送先決定ステップと、前記処理フローから、自機で実行可能な処理を含む第１の連携処理フローと、自機で実行不可能な処理を含む第２の連携処理フローとを生成する連携フロー生成ステップと、前記転送先決定ステップにて決定された前記転送先に前記第２の連携処理フローを転送する処理フロー転送ステップと、前記第１の連携処理フローを実行するための実行ボタンを表示する第１の連携処理フロー実行ボタン表示ステップと、ユーザによって前記第１の連携処理フローを実行するための実行ボタンが押された場合に、前記実行手段により前記第１の連携処理フローが実行された後、前記転送先に対して前記第２の連携処理フローの実行指示を送信する実行指示送信ステップと、処理フローの実行可否確認要求を受信する実行可否確認要求受信ステップと、前記処理フローが自機で実行可能であるかを判定する判定ステップと、前記判定ステップにて実行可能と判断された場合に、前記処理フローの実行可否確認要求の送信元に前記実行可能応答を送信する実行可能応答送信ステップと、前記実行可否確認要求の送信元から前記第２の連携処理フローを受信する処理フロー受信ステップと、前記第２の連携処理フローの実行指示を受信する実行指示受信ステップと、前記第２の連携処理フローを実行するための実行ボタンを表示するかどうかを判定するボタン表示判定ステップと、前記ボタン表示判定ステップにて表示すると判定された場合に、前記第２の連携処理フローを実行するための実行ボタンを表示する第２の連携処理フロー実行ボタン表示ステップと、前記ボタン表示判定ステップにて表示しないと判定された場合に、前記第２の連携処理フローを実行する第２の連携処理フロー実行ステップとを備えることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、自機では実行不可能な処理フローが存在した場合に、当該処理フローを実行可能な他の画像処理装置を探索し、転送先として決定した画像処理装置に当該処理フローを転送する。それにより、転送先の画像処理装置上に当該処理フローの実行ボタンが表示され、当該処理フローの内容が変更されることなく、ユーザが所望した通りの処理フローを実行することが可能となる。
【００１７】
また、本発明によれば、当該処理フローを分割して連携処理フローを新たに生成する。当該連携処理フローの実行ボタンを表示することで、転送先の画像処理装置上のみではなく、転送元の画像処理装置上からでも、ユーザは当該処理フローを内容変更することなく実行することが可能となる。
【００１８】
また、当該処理フローの最終タスクが“印刷“処理である場合には，転送先の画像処理装置では、連携処理フローの実行ボタンも表示して、当該実行ボタンが押下された場合にはじめて当該連携処理フローを実行する。それにより、ユーザが転送元の画像処理装置上で連携処理フローの実行ボタンを押下した場合に、物理的に離れた別の画像処理装置上で直ちに印刷処理が実行されてしまい、ユーザの機密文書などが排紙部に放置されてしまう事態を防ぐことも可能になる。一方で、最終タスクが印刷処理以外（他装置への送信やＨＤＤへの保存など）の場合には、転送先の画像処理装置では連携処理フローの実行ボタンは表示されない。この場合、ユーザが転送元の画像処理装置上で連携処理フローの実行ボタンを押下した時点で、直ちに連携先の画像処理装置も対応する処理フローを実行する。そのため、ユーザは転送先の画像処理装置の前まで移動して、ログインやボタン押下などの操作を行う必要が無く、簡単な操作のみで所望の処理フローを実行することが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００２０】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る画像処理装置がネットワークに接続された画像処理システムの構成図である。
【００２１】
図１において、ＭＦＰ（Multi Function Peripheral）１０１，１０２，１０３は、本発明の実施形態に係る画像処理装置としての多機能型の画像形成装置であり、ＬＡＮ１００に接続され、互いに通信可能である。ＭＦＰ１０１は、ユーザ証明書機能および文書結合機能に非対応の画像形成装置で、ホスト名をＡＡＡ、ＩＰアドレスを１９２．１６８．０．１０１とする。ＭＦＰ１０２は、ユーザ証明書機能に対応するが文書結合機能に非対応の画像形成装置で、ホスト名をＢＢＢ、ＩＰアドレスを１９２．１６８．０．１０２とする。ＭＦＰ１０３は、ユーザ証明書機能に非対応であるが文書結合機能に対応する画像形成装置で、ホスト名をＣＣＣ、ＩＰアドレスを１９２．１６８．０．１０３とする。
【００２２】
ＭＦＰ１０１，１０２，１０３にはそれぞれ処理フローアプリケーションが組み込まれている。処理フローアプリケーションとは、一連の複数の画像処理タスクを組み合わせて設定された処理フローを実行するアプリケーションである。画像処理タスクは、上述したように、例えば複合的な機能を持つ画像処理装置等における個々の機能にて実現可能な処理を指し、画像処理のみに限定されるものではない。処理フローアプリケーションにおける処理フローの編集、実行に関する説明については後述する。
【００２３】
なお、図示例のネットワーク環境では、ＭＦＰ１０１〜１０３がＬＡＮ１００に接続されているが、これに限定されず、ＬＡＮ１００にＭＦＰや他の装置が複数接続されていてもよい。
【００２４】
図２は、図１のＭＦＰ１０１の内部構成の一例を示すブロック図である。なお、ＭＦＰ１０２，１０３については、ＭＦＰ１０１と同じ内部構成を有することから、ＭＦＰ１０１についてのみ説明する。
【００２５】
ＭＦＰ１０１は、コントローラユニット（Controller Unit）２００と、ＵＩ（User Interface）である操作部２１２と、画像入力デバイスであるスキャナ部２７０と、画像出力デバイスであるプリンタ部２９５とを備える。コントローラユニット２００は、スキャナ部２７０およびプリンタ部２９５に接続されている。また、コントローラユニット２００は、ＬＡＮ１００や公衆回線（ＷＡＮ）２１４に接続することで、画像情報やデバイス情報の入出力を行う。
【００２６】
コントローラユニット２００内のＣＰＵ２０１は、システム全体を制御するコントローラである。ＲＡＭ２０２は、ＣＰＵ２０１が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２０３はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２０４はハードディスクドライブであり、画像データやソフトウェアモジュールを格納する。
【００２７】
操作部Ｉ／Ｆ２０６は、操作部２１２とインタフェース部で、操作部２１２に表示する画像データを操作部２１２に対して出力する。ネットワークＩ／Ｆ２１０はＬＡＮ１００に接続し、情報の入出力を行う。モデム２１３は公衆回線２１４に接続し、画像情報の入出力を行う。
【００２８】
以上のデバイスがシステムバス２０７上に配置される。
【００２９】
イメージバス（Image Bus）Ｉ／Ｆ２０５は、システムバス２０７と画像データを高速で転送する画像バス２０８に接続し、データ構造を変換するバスブリッジである。
【００３０】
画像バス２０８上には以下のデバイスが配置される。
【００３１】
ラスターイメージプロセッサ（ＲＩＰ）２６０は、ＰＤＬ（Page Description Language）コードをビットマップイメージに展開する。デバイスＩ／Ｆ２２０は、スキャナ部２７０やプリンタ部２９５とコントローラユニット２００とを接続する。
【００３２】
スキャナ画像処理部２８０は、入力画像データに対して補正、加工、編集を行う。また、入力された画像がカラー原稿か白黒原稿かを画像の彩度信号から判断し、その結果を保持する機能を有する。プリンタ画像処理部２９０は、出力画像データに対して補正、加工、編集を行う。
【００３３】
画像回転部２３０は、スキャナ画像処理部２８０と連携して、スキャナ部２７０からの画像読み込みと同時に画像を回転してメモリに格納したり、メモリに格納された画像を回転して再びメモリに格納する。また、画像回転部２３０は、メモリに格納された画像をプリンタ画像処理部２９０と連携して回転しながら印字出力することができる。
【００３４】
解像度変換部２３１は、メモリに格納された画像に解像度変換処理を施し、再びメモリに格納する。色空間変換部２３２は、マトリクス演算により、例えばメモリに格納されたＹＵＶ画像をＬａｂ画像に変換して、再びメモリに格納する。階調変換部２３３は、例えばメモリに格納された８ｂｉｔ、２５６階調の画像を誤差拡散処理などの手法により１ｂｉｔ、２階調に変換して、再びメモリに格納する。画像圧縮部２４０は、多値画像データに対してＪＰＥＧ、２値画像データに対してＪＢＩＧ、ＭＭＲ、ＭＲ、ＭＨの圧縮伸張処理を行う。
【００３５】
画像回転部２３０、解像度変換部２３１、色空間変換部２３２、階調変換部２３３、及び画像圧縮部２４０は、それぞれ連結して動作することが可能である。例えば、メモリに格納された画像を一度メモリに格納することなく、つづけて画像回転及び解像度変換することができる。
【００３６】
図３は、ＭＦＰの各種機能（以下、「タスク」と称する）の組み合わせと処理の順番の流れの制御にかかわるＭＦＰのソフトウェアモジュールの構成を示す図である。図示のソフトウェアモジュールはＣＰＵ２０１により実行される。
【００３７】
図３において、処理フローアプリケーション３００は、フロー実行部３０５と、フロー管理部３０６とから成る。処理フローアプリケーション３００は、図３に示す他のソフトウェアモジュールと連携することで処理フローの登録、編集や実行を実現している（処理フロー登録手段）。フロー実行部３０５、フロー管理部３０６についての詳細は後述する。
【００３８】
ＵＩ部３０１は、操作部Ｉ／Ｆ２０６を介して操作部２１２に表示を行ったり、操作部２１２からのユーザの入力を処理したりするソフトウェアモジュールである。ＵＩ部３０１は、処理フローアプリケーション３００からの指示により、処理フローアプリケーション３００による画面の表示を行う。また、ＵＩ部３０１は、操作部２１２からのユーザの入力等の内容を処理フローアプリケーション３００に伝える。
【００３９】
処理フローアプリケーション３００は、ＵＩ部３０１から伝えられた入力内容の結果をフロー実行部３０５に渡す。本実施の形態では、ＵＩ部３０１は、処理フローアプリケーション３００外に設けられたモジュールであるが、処理フローアプリケーション３００がＵＩ部３０１を内部に持っていてもよい。
【００４０】
通信部３０２は、ネットワークＩ／Ｆ２１０やモデム２１３を操作して通信（送受信）を行うソフトウェアモジュールである。認証部３０３は、ユーザによる操作部２１２の操作によってＵＩ部３０１が受け付けたユーザのログイン情報や通信部３０２から受け取ったユーザ情報に基づいてユーザ認証を行い、ユーザのセッションの管理を行うソフトウェアモジュールである。
【００４１】
認証情報管理部３０４は、ユーザの認証情報を管理し、認証部３０３からの認証情報の問い合わせに応答するソフトウェアモジュールである。本実施の形態では、デバイス内部に認証情報を持っているが、不図示の認証サーバを別途設けて認証情報を管理する構成も可能である。
【００４２】
フロー実行部３０５は、後述する処理フロー定義ファイルを解析するソフトウェアモジュールである。また、フロー実行部３０５は、処理フローを機能単位のタスクの設定（例えば、スキャンジョブ設定、プリントジョブ設定、送信ジョブ設定等）に分解する。
【００４３】
フロー管理部３０６は、各ユーザがログインしているときにどの処理フロー実行ボタンを操作部２１２に表示させるかという処理フロー管理ファイルを管理するためのソフトウェアモジュールである。また、フロー管理部３０６は、処理フローを実行するための設定が記述されている処理フロー定義ファイルを管理する。処理フロー管理ファイルと処理フロー定義ファイルについての詳細は後述する。本実施形態では、処理フローの記述をファイルとして扱っているが、ＲＡＭ２０２上に保持してもよい。
【００４４】
タスク実行部３０７は、各種タスクの設定情報に基づいてタスクを生成し、生成したタスクを実行するためのソフトウェアモジュールである。タスクリスト管理部３０８は、実行すべきタスクを管理するためのソフトウェアモジュールである。
【００４５】
各種タスクは、ＵＩ部３０１、通信部３０２、処理フローアプリケーション３００のフロー実行部３０５からの要求に応じて生成される。例えば、ＵＩ部３０１でユーザからコピーやスキャンの指示があった場合、ＵＩ部３０１からコピーやスキャンのそれぞれのタスクの設定がタスク実行部３０７に渡される。一方、タスクリスト管理部３０８にはタスクが登録される。タスク実行部３０７は、そのタスクリスト管理部３０８で管理されたタスクを順に実行する。同様に、通信部３０２を介して他のＭＦＰ（画像形成装置）やＰＣからタスク設定が渡された場合も同様に処理される。
【００４６】
図４は、ＭＦＰ１０１で管理される処理フロー管理ファイルの一例を示す図である。
【００４７】
本実施形態では、処理フロー管理ファイル４００は、図示のようにテーブル形式で構成されているが、ＣＳＶ形式や、ＸＭＬなどでのテキストファイルで構成されてもよい。［ＣＳＶ（Comma Separated Values）、ＸＭＬ（Extensible Markup Language）］
図４において、カラム４０１には、処理フローの管理ＩＤが格納される。カラム４０２には、処理フローの名称が格納される。カラム４０３には、処理フローが誰に対してアクセス権が与えられているかを示す情報が格納される。例えば、ＩＤ：１の処理フローは、「Ｕｓｅｒ  Ａ」に実行のためのアクセス権が与えられており、Ｕｓｅｒ  Ａがログインしているときにボタンとして表示される。なお、共有になっているものに関してはログインユーザに関係なく表示される。
【００４８】
カラム４０４には、処理フローを構成するタスクが格納される。カラム４０５には、処理フローが他のＭＦＰと連携して実行するものであるかどうかを示す情報が格納される。他のＭＦＰと連携して実行する処理フロー（以下、「連携処理フロー」と称する）の場合は“Ｙ”が、当該ＭＦＰのみで実行可能な処理フローである場合は“Ｎ”が格納される。
【００４９】
カラム４０６には、カラム４０５に“Ｙ”が格納されている場合すなわち連携処理フローである場合に、当該連携処理フローのシリアルＩＤが格納される。シリアルＩＤは、連携処理フローにのみ、生成時にＭＦＰが自動的に付与するもので、ネットワーク上で一意な値が付与される。また、一旦生成時に付与されると、その後は値が変更されることは無い。
【００５０】
カラム４０７には、カラム４０５に“Ｙ”が格納されている場合すなわち連携処理フローである場合に、当該連携処理フローの連携種別を示す情報が格納される。ＭＦＰ１０１側が先に当該連携処理フローを実行し、その後、他のＭＦＰ上で別の所定の連携処理フローが実行される場合は“Ｓｒｃ”が格納される。一方、他のＭＦＰが先に連携処理フローを実行し、それを受けてＭＦＰ１０１上で当該連携処理フローが実行される場合は“Ｄｓｔ”が格納される。
【００５１】
カラム４０８には、カラム４０５に“Ｙ”が格納されている場合すなわち連携処理フローである場合に、その連携先となるＭＦＰの情報が格納される。カラム４０８には、例えば、連携先となるＭＦＰのホスト名およびＩＰアドレス、また、連携先で実行されることになる連携処理フローのシリアルＩＤが格納される。
【００５２】
図５は、図１の画像形成システムで用いられる処理フロー定義ファイルの一例を示す図であり、（ａ）は処理フロー定義ファイル、（ｂ）は処理フロー定義ファイル中のタグを抜き出したものである。
【００５３】
図示例では、処理フロー定義ファイル５００をＸＭＬファイルとして扱うものとする。処理フロー定義ファイル５００については、処理フローアプリケーション３００を組み込んだＭＦＰでの作成が可能である。処理フローに含まれるタスクはＸＭＬのタグとして表現され、その出現順番がタスクの処理順番とみなすものとする。ただし、図５では、タスクに関する詳細な設定内容については省略されている。
【００５４】
図５（ａ）において、タグ５０１は、スキャナ部２７０を用いたスキャンタスクを実行して、文書を入力することを示している。タグ５０２は、文書にユーザ証明書を付与することを示している。タグ５０３は、送信タスクを実行して文書を送信先に送信することを示している。タグ５０４は、送信タスクの設定で送信先となるアドレスを示している。送信先となるアドレスは、タグ５０４を追加することで複数設定可能ある。また、送信タスクには、メール送信、ＳＭＢ送信などのファイル送信、ファクス送信などの宛先が設定可能である。
【００５５】
図５（ｂ）において、タグ５５０（Ｔａｓｋ Ｆｌｏｗタグ）は、１件の処理フローであることを示しており、処理フローの管理ＩＤを表す属性５５１および処理フローの名称を表す属性５５２より構成される。
【００５６】
図６は、Ｕｓｅｒ  ＡがＭＦＰ１０１にログインしたときに操作部２１２に表示される操作画面の一例を示す図である。
【００５７】
図６において、ボタン６０１は、処理フローアプリケーション３００を起動して画面表示を行うためのボタンである。本実施形態では、その他のアプリケーションを起動するためのボタンは表示されていないものとする。
【００５８】
ボタン６０２，６０３は、それぞれのボタンに割り当てられている処理フローを呼び出して実行するためのボタンである。Ｕｓｅｒ  Ａがログインしたときにボタンとして表示される処理フローは、処理フロー管理ファイル４００のカラム４０３の公開範囲がＵｓｅｒ  Ａとなっているものである。一方、Ｕｓｅｒ  Ｂがログインしたときに表示されるボタンは、Ｕｓｅｒ  Ａのときと同様に、カラム４０３の公開範囲がＵｓｅｒ  Ｂとなっているものである（図示を省略）。
【００５９】
ボタン６０４は、ログインユーザに関係なく表示される共有の画面に切り替えるためのボタンである。ボタン６０４が押下されたときに表示されるボタンは、処理フロー管理ファイル４００のカラム４０３の公開範囲が共有となっているものである（図示を省略）。ボタン６０５は、処理フローを作成（登録）・編集画面を表示するためのものである。
【００６０】
図７は、ユーザがＭＦＰ１０１上で実行不可能なタスクを含む処理フローに対応するボタンを押下した際の当該処理フローの転送処理の一例を示すフローチャートである。
【００６１】
図７において、ステップＳ７０１〜Ｓ７０９は各処理ステップを示し、ＭＦＰ１０１における処理フロー転送処理の流れに対応する。なお、各処理ステップに対応する制御プログラムは、ＭＦＰ１０１内のＲＯＭ２０３に記憶されており、ＣＰＵ２０１により実行される。
【００６２】
同図では、具体例として、ＭＦＰ１０１にＵｓｅｒ  Ａであるユーザがログインし、図６に示す画面上のボタン６０２を押下した場合のＭＦＰ１０１の実行する処理について説明する。
【００６３】
ボタン６０２に対応する処理フローは、処理フロー定義ファイル５００に表される「スキャンした文書にユーザ証明書を付与して送信する」というものである。しかしながら、既述の通り、ＭＦＰ１０１はユーザ証明書機能に非対応であるため、当該処理フローのうち、「ユーザ証明書を付与する」部分を実行することができない。このような場合、ＭＦＰ１０１は、処理フロー定義ファイル５００の実行可否確認要求をブロードキャストでＬＡＮ１００上の他のデバイス（本実施形態ではＭＦＰ１０２およびＭＦＰ１０３）に送信する。そして、他のデバイスに処理フロー定義ファイル５００を実行可能であるかどうかを問い合わせる（ステップＳ７０１）。この処理は、本発明における実行可否確認要求送信手段の一例である。
【００６４】
次に、ＭＦＰ１０１は、ＬＡＮ１００上の他のデバイスからの実行可能応答の受信を、所定の時間待ち受ける（ステップＳ７０２）。この処理は本発明における実行可能応答受信手段の一例である。ステップＳ７０２において、所定時間内に実行可能応答を返してくるデバイスが存在しない場合は（ステップＳ７０２でＮＯ）、ＬＡＮ１００上に処理フロー定義ファイル５００を実行可能なデバイスが存在しないと判断し、直ちに本処理を終了する。
【００６５】
一方、所定時間内に実行可能応答を返してきたデバイスが存在する場合は（ステップＳ７０２でＹＥＳ）、ＭＦＰ１０１は、当該デバイスの情報を処理フロー転送先候補リストとして操作部２１２上に表示する（ステップＳ７０３）。本実施形態では、上述したようにＭＦＰ１０２がユーザ証明書機能に対応しているため、ＭＦＰ１０２より実行可能応答を受け取ることとなる。なお、ＭＦＰ１０３は、ユーザ証明書機能非対応であるため、ＭＦＰ１０１から受信した実行可否確認要求を直ちに破棄し、ＭＦＰ１０１への返信は行わない。
【００６６】
図８は、ステップＳ７０３で操作部２１２上に表示される処理フロー転送先候補リストの表示画面の一例を示す図である。
【００６７】
図８において、処理フロー転送先候補リスト８０１には、ステップＳ７０２で実行可能応答を返してきたデバイスのホスト名およびＩＰアドレスが表示される。本実施形態では、ＭＦＰ１０２のみが実行可能応答を返してきているため、ＭＦＰ１０２のホスト名（ＢＢＢ）と、ＩＰアドレス（１９２．１６８．０．１０２）が表示されている。
【００６８】
ＭＦＰ１０１は、図８に示す処理フロー転送先候補リスト画面を操作部２１２に表示して、ユーザが処理フローの転送先となるデバイスを決定するのを待ち受ける（ステップＳ７０４）。ユーザによって任意のデバイスが選択され、決定ボタン８０２が押下されると、ステップＳ７０５に進む。一方、ユーザによりキャンセルボタン８０３が押下されると、直ちに本処理を終了する。この処理は、本発明における転送先決定手段の一例である。
【００６９】
ステップＳ７０５では、ＭＦＰ１０１は、処理フロー定義ファイル５００を分割し、自機で実行可能なタスクのみを含む第１の連携処理フロー定義ファイル９００と、自機で実行不可能なタスクを含む第２の連携処理フロー定義ファイル１０００を生成する。この処理は、本発明における連携フロー生成手段の一例である。
【００７０】
図９は、ＭＦＰ１０１がステップＳ７０５で生成する第１の連携処理フロー定義ファイル９００の一例を示す図であり、（ａ）は第１の連携処理フロー定義ファイル９００、（ｂ）は第１の連携処理フロー定義ファイル９００中のタグを抜き出したものである。
【００７１】
図９（ａ）において、タグ９０１は、処理フロー定義ファイル５００のタグ５０１の内容がそのまま転記されており、スキャナ部２７０を用いたスキャンタスクを実行して、文書を入力することを示している。タグ９０２は、送信タスクを実行して文書を送信先に送信することを示している。タグ９０３は、送信タスクの設定で送信先となるアドレスを示しており、ここには連携処理フローの転送先であるＭＦＰ１０２のＩＰアドレス（１９２．１６８．０．１０２）が設定される。タグ９０４は、ＭＦＰ１０２に送信する文書を示している。タグ９０５は、ＭＦＰ１０２に対して実行を指示する連携処理フローのシリアルＩＤを示している。
【００７２】
タグ９０２〜タグ９０５の記載は、「タグ９０３の宛て先にタグ９０４のデータを送信し、宛て先にタグ９０５の連携処理フローの実行を指示する」という処理を示している。
【００７３】
図９（ｂ）において、タグ９５０は１件の処理フローであることを示している。タグ９５０は以下の属性より構成される。
【００７４】
属性９５１は、処理フローの管理ＩＤを表している。属性９５２は、処理フローの名称を表している。属性９５３は、処理フローのシリアルＩＤを表している。属性９５４は、連携先となる連携処理フローのシリアルＩＤを表している。
【００７５】
属性９５３および属性９５４は、連携処理フローにのみ設定される属性である。シリアルＩＤには、ネットワーク上で一意な値が設定される。本実施形態では、“ＭＦＰ（画像形成装置）のＭＡＣ（Media Access Control）アドレスの下８桁”＋“ＭＦＰが管理するシーケンシャルな４桁の番号”から構成される１２桁の数字より構成されるものとする。ただし、シリアルＩＤは、あくまでネットワーク上で一意な値であればよく、必ずしも上記構成である必要は無い。シリアルＩＤの構成は、桁数も含めて様々な形態をとり得る。
【００７６】
図１０は、ＭＦＰ１０１がステップＳ７０５で生成する第２の連携処理フロー定義ファイル１０００の一例を示す図であり、（ａ）は第２の連携処理フロー定義ファイル、（ｂ）は第２の連携処理フロー定義ファイル中のタグを抜き出したものである。
【００７７】
図１０（ａ）において、タグ１００１は、受信タスクを実行して文書を受信することを示している。タグ１００２は、処理フロー定義ファイル５００のタグ５０２の内容がそのまま転記されており、文書にユーザ証明書を付与することを示している。タグ１００３は、処理フロー定義ファイル５００のタグ５０３の内容がそのまま転記されており、送信タスクを実行して文書を送信先に送信することを示している。タグ１００４は、処理フロー定義ファイル５００のタグ５０４の内容がそのまま転記されており、送信タスクの設定で送信先となるアドレスを示している。
【００７８】
図１０（ｂ）において、タグ１０５０は１件の処理フローであることを示している。タグ１０５０は以下の属性より構成される。
【００７９】
属性１０５１は、処理フローの管理ＩＤを表している。ただし、第２の連携処理フロー定義ファイル１０００は、後述する図７のステップＳ７０６で別のＭＦＰに転送され、転送先のＭＦＰ側で任意の管理ＩＤが付与されるものであるため、ここでは属性１０５１には管理ＩＤは付与されない。
【００８０】
属性１０５２は、処理フローの名称を表している。属性１０５３は、処理フローのシリアルＩＤを表している。属性１０５４は、連携元となる連携処理フローのシリアルＩＤを表している。
【００８１】
属性１０５３および属性１０５４は連携処理フローにのみ設定される属性である。シリアルＩＤにはネットワーク上で一意な値が設定される。本実施形態では、“ＭＦＰのＭＡＣ（Media Access Control）アドレスの下８桁”＋“ＭＦＰが管理するシーケンシャルな４桁の番号”から構成される１２桁の数字より構成されるものとする。ただし、シリアルＩＤはあくまでネットワーク上で一意な値であればよく、必ずしも上記構成である必要は無い。シリアルＩＤの構成は、桁数も含めて様々な形態をとり得る。
【００８２】
既述の通り、処理フロー定義ファイル５００では、「スキャンした文書にユーザ証明書を付与して送信する」処理フローが定義されていた。しかしながら、ＭＦＰ１０１で実行可能なのは「スキャン」までである。そのため、ＭＦＰ１０１上で実行可能なタスクまでからなる第１の連携処理フロー定義ファイル９００としては「スキャンした文書をＭＦＰ１０２に送信する」処理フローが定義される。そして、それ以降のタスクからなる第２の連携処理フロー定義ファイル１０００としては、第１の連携処理フロー定義ファイル９００の処理を引き継いで、「ＭＦＰ１０１から受信した文書にユーザ証明書を付与して送信する」処理フローが定義される。
【００８３】
図７に戻り、ステップＳ７０６では、ＭＦＰ１０１は、処理フロー定義ファイル５００および第２の連携処理フロー定義ファイル１０００を連携処理フロー転送先であるＭＦＰ１０２に転送する（ステップＳ７０６）。この処理は、本発明における処理フロー転送手段の一例である。そして、処理フロー定義ファイル５００を実行するためのボタン６０２を図６に示す操作部２１２に表示される操作画面上から削除する（ステップＳ７０７）。更に、ボタン６０２に替わり、第１の連携処理フロー定義ファイル９００を実行するためのボタン６０６を操作部２１２に表示される操作画面上に表示する（ステップＳ７０８）。この処理は、本発明における第１の連携処理フロー実行ボタン表示手段の一例である。その後、処理フロー管理ファイル４００の内容を更新して（ステップＳ７０９）、本処理を終了する。
【００８４】
図１１は、図７の処理を実行した後に操作部２１２に表示される操作画面の一例を示す図である。図６に示す操作画面との差異は、ボタン６０２に代えてボタン６０６が表示されている点にある。
【００８５】
ボタン６０６は、第１の連携処理フロー定義ファイル９００を実行するためのボタンであり、ボタン上にはＭＦＰ１０２と連携して処理フローを実行するボタンであることを示す“［連携フロー］連携ホスト：ＢＢＢ”という文言が表示されている。
【００８６】
なお、図１１に示すボタン６０１，６０３，６０４，６０５については、図６で説明したものと同じであり、それらの詳細な説明については割愛する。
【００８７】
図１２は、図７に示す処理を実行した後の処理フロー管理ファイル４００の一例を示す図である。
【００８８】
図１２において、図７に示す処理が実行された結果、処理フロー“機密文書送信”は、ＭＦＰ１０２との連携処理フローに変更されている。そのため、カラム４０５には、連携処理フローであることを示す“Ｙ”が設定されている。
【００８９】
また、カラム４０６には、当該連携処理フローのシリアルＩＤである“ａａｂｂｃｃｄｄ０００１”が設定されている。カラム４０７には、当該連携処理フローが第１の連携処理フローであること、すなわち、当該連携処理フローが実行された後に、連携先のＭＦＰ上で対応する連携処理フローが実行されることを表わす“Ｓｒｃ”が設定されている。
【００９０】
カラム４０８には、連携先のＭＦＰがＭＦＰ１０２であることを表わす“ＢＢＢ／１９２．１６８．０．１０２”が設定されている。更に、ＭＦＰ１０２上で実行される連携処理フローのシリアルＩＤである“ａａｂｂｃｃｄｄ０００２”も設定されている。
【００９１】
図１３は、ＭＦＰ１０１が図７に示す処理フロー転送処理を実行した際に、ＭＦＰ１０２およびＭＦＰ１０３側で実行される処理フロー受信処理の一例を示すフローチャートである。
【００９２】
図１３において、ステップＳ１３０１〜Ｓ１３０６は各処理ステップを示し、ＭＦＰ１０１がステップＳ７０１のステップを実行して処理フロー定義ファイル５００の実行可否確認要求を送信した際のＭＦＰ１０２およびＭＦＰ１０３側の処理の流れに対応している。なお、各処理ステップに対応する制御プログラムは、ＭＦＰ１０２およびＭＦＰ１０３それぞれのＲＯＭ２０３に記憶されており、ＭＦＰ１０２およびＭＦＰ１０３それぞれのＣＰＵ２０１により実行される。
【００９３】
ＭＦＰ１０２およびＭＦＰ１０３は、ＭＦＰ１０１から処理フロー定義ファイル５００の実行可否確認要求を受信する（ステップＳ１３０１）と、処理フロー定義ファイル５００を解析する（ステップＳ１３０２）。この処理は、本発明における実行可否確認要求受信手段の一例である。そして、処理フロー定義ファイル５００に記載されたタスクが全て自機上で実行可能なものであるかどうかを判定する（ステップＳ１３０３）。この処理は、本発明における判定手段の一例である。実行不可能なタスクが１つでも存在していた場合は（ステップＳ１３０３でＮＯ）、実行可否確認要求を内部的に破棄して直ちに本処理を終了する。
【００９４】
一方、タスクが全て実行可能と判定した場合は（ステップＳ１３０３でＹＥＳ）、ＭＦＰ１０２および／またはＭＦＰ１０３は、実行可否確認要求の送信元であるＭＦＰ１０１に対して実行可能応答を送信する（ステップＳ１３０４）。この処理は、本発明における実行可能応答送信手段の一例である。本実施形態では、ＭＦＰ１０２は、ユーザ証明書機能に対応しており、ＭＦＰ１０３は対応していない。したがって、ＭＦＰ１０２は、処理フロー定義ファイル５００を自機上で実行可能と判断し、ＭＦＰ１０１に対して実行可能応答を送信する。それに対し、ＭＦＰ１０３は、処理フロー定義ファイル５００に記載されたタスクのうち、ユーザ証明書を付与するタスクが実行不可能と判断して、実行可否確認要求は内部的に破棄し、ＭＦＰ１０１に対して何ら応答は返さない。
【００９５】
次に、ＭＦＰ１０２は、ＭＦＰ１０１より処理フロー定義ファイルおよび第２の連携処理フロー定義ファイルを受信するのを所定の期間待ち受ける（ステップＳ１３０５）。所定の期間内にＭＦＰ１０１からの処理フロー定義ファイルおよび第２の連携処理フロー定義ファイルを受信しなかった場合は、直ちに本処理を終了する。本実施形態では、所定の時間内にＭＦＰ１０１側でステップＳ７０６に示すステップが実行されたものとする。
【００９６】
処理フロー定義ファイル５００および第２の連携処理フロー定義ファイル１０００を受信すると、ＭＦＰ１０２はそれらの内容を、後述する処理フロー管理ファイル１４００に登録して（ステップＳ１３０６）、本処理を終了する。この処理は、本発明における処理フロー受信手段の一例である。なお、受信した処理フロー定義ファイル５００において、タグ５５０の属性５５１に設定された管理ＩＤは、受信時点ではＭＦＰ１０１内部で管理するための値となっている。したがって、ＭＦＰ１０２は、属性５５１を自機内部で管理するのに最適な管理ＩＤに再設定する。同様に、第２の連携処理フロー定義ファイル１０００のタグ１０５０の属性１０５１にも、最適な管理ＩＤを設定する。
【００９７】
図１４は、ＭＦＰ１０２が図１３に示す処理を実行した後の、ＭＦＰ１０２で管理される処理フロー管理ファイルの一例を示す図である。
【００９８】
本実施形態では、処理フロー管理ファイル１４００は、図示のようにテーブル形式で構成されているが、ＣＳＶ形式や、ＸＭＬなどでのテキストファイルで構成されてもよい。
【００９９】
図１４において、カラム１４０１には、処理フローの管理ＩＤが格納される。カラム１４０２には、処理フローの名称が格納される。カラム１４０３には、処理フローが誰に対してアクセス権が与えられているかを示す情報が格納されている。例えば、ＩＤ：１の処理フローは、「Ｕｓｅｒ  Ａ」に実行のためのアクセス権が与えられており、Ｕｓｅｒ  Ａがログインしているときにボタンとして表示される。なお、共有になっているものに関してはログインユーザに関係なく表示される。
【０１００】
カラム１４０４には、処理フローを構成するタスクが格納される。カラム１４０５には、処理フローが連携処理フローであるかどうかを示す情報が格納される。連携処理フローである場合は“Ｙ”が、当該ＭＦＰのみで実行可能な処理フローである場合は“Ｎ”が格納される。
【０１０１】
カラム１４０６には、カラム１４０５に“Ｙ”が設定されている場合すなわち連携処理フローである場合に、当該連携処理フローのシリアルＩＤが格納される。
【０１０２】
カラム１４０７には、カラム１４０５に“Ｙ”が設定されている場合すなわち連携処理フローである場合に、当該連携処理フローの連携種別を示す情報が格納される。当該連携処理フローが第１の連携処理フローである場合、すなわち、ＭＦＰ１０２側が先に当該連携処理フローを実行し、その後、他のＭＦＰ上で所定の連携処理フローが実行される場合は“Ｓｒｃ”が格納される。一方、当該連携処理フローが第２の連携処理フローである場合、すなわち、他のＭＦＰが先に所定の連携処理フローを実行し、それを受けてＭＦＰ１０２上で当該連携処理フローが実行される場合は“Ｄｓｔ”が格納される。
【０１０３】
カラム１４０８には、カラム１４０５に“Ｙ”が設定されている場合すなわち連携処理フローである場合に、その連携先となるＭＦＰの情報が格納される。ここには、連携先となるＭＦＰのホスト名およびＩＰアドレス、また、連携先で実行されることになる連携処理フローのシリアルＩＤが設定される。ここで、ＩＤ：１として登録されている処理フローは処理フロー定義ファイル５００に、ＩＤ：２として登録されている処理フローは第２の連携処理フロー定義ファイル１０００に、それぞれ対応している。処理フロー定義ファイル５００は、ＭＦＰ１０２のみで実行可能な処理フローであるため、カラム１４０５には“Ｎ”が格納されている。
【０１０４】
一方、第２の連携処理フロー定義ファイル１０００は、ＭＦＰ１０１と連携し、ＭＦＰ１０１の第１の連携処理フロー定義ファイル９００に対応して実行される連携処理フローである。そのため、カラム１４０５には“Ｙ”が格納されている。更に、ＭＦＰ１０１→ＭＦＰ１０２というシーケンスで実行されるため、カラム１４０６には“Ｄｓｔ”が格納されている。また、カラム１４０７には、連携相手であるＭＦＰ１０１のホスト名（ＡＡＡ）およびＩＰアドレス（１９２．１６８．０．１０１）が格納されている。
【０１０５】
図１５は、Ｕｓｅｒ  ＡがＭＦＰ１０２にログインした際にＭＦＰ１０２の操作部２１２に表示される操作画面の一例を示す図である。
【０１０６】
図１５において、ボタン１５０１は、処理フローアプリケーション３００を起動して画面表示を行うためのボタンである。本実施形態では、その他のアプリケーションを起動するためのボタンは表示されていないものとする。ボタン１５０２は、そのボタン割り当てられている処理フローを呼び出して実行するためのボタンである。
【０１０７】
ボタン１５０３は、ログインユーザに関係なく表示される共有の画面に切り替えるためのボタンである。ボタン１５０３が押下されたときに表示されるボタンは、処理フロー管理ファイル１４００のカラム１４０３の公開範囲が共有となっているものである（図示を省略）。
【０１０８】
ボタン１５０４は、処理フローを作成・編集画面を表示するためのものである。なお、Ｕｓｅｒ  Ａがログインしたときにボタンとして表示される処理フローは、処理フロー管理ファイル１４００のカラム１４０３の公開範囲がＵｓｅｒ  Ａとなっているものである。一方、Ｕｓｅｒ  Ｂがログインしたときに表示されるボタンはＵｓｅｒ  Ａのときと同様に、カラム１４０３の公開範囲がＵｓｅｒ  Ｂとなっているものである（図示を省略）。ただし、カラム１４０３の公開範囲がＵｓｅｒ  Ａである処理フローのうち、以下の条件を全て満たす場合は、当該連携処理フローをボタンとして表示しない。その条件とは、カラム１４０５の連携フローが“Ｙ”、カラム１４０７の連携種別が“Ｄｓｔ”で、更にカラム１４０４の最終タスクがＰｒｉｎｔ以外の場合である。
【０１０９】
連携処理フローの最終処理がＰｒｉｎｔ以外の例えばＳｅｎｄなどである場合、当該連携処理フローは、連携元のＭＦＰ側で第１の連携処理フローが実行された場合に、それをトリガとして自動実行される。そのため、図１５に示したＭＦＰ１０２の操作部２１２に表示される操作画面上でＵｓｅｒ  Ａにボタンを押下される必要がないので、始めからボタンとしては表示しない。
【０１１０】
一方、連携処理フローの最終処理がＰｒｉｎｔである場合はボタンとして表示する。この場合、連携元のＭＦＰ側で第１の連携処理フローが実行された後、更にＵｓｅｒ  ＡがＭＦＰ１０２の前まで来てログインを行い、関連するボタンを押下した時点で当該連携処理フローが実行されることになる。
【０１１１】
図１６は、ＭＦＰにおける、ログインユーザに対応したボタン表示判定処理の一例を示すフローチャートである。
【０１１２】
図１６において、ステップＳ１６０１〜Ｓ１６０６は各処理ステップを示し、ＭＦＰが処理フローを実行するためのボタンを操作部２１２の操作画面に表示するかどうかを判定するボタン表示判定処理の流れに対応する。
【０１１３】
本処理の結果、“表示ボタン”と判定されたボタンは、操作部２１２の操作画面に表示される。一方、本処理の結果、“非表示ボタン”と判定されたボタンは、操作部２１２の操作画面には表示されない。なお、各処理ステップに対応する制御プログラムは、ＭＦＰ内のＲＯＭ２０３に記憶されており、ＣＰＵ２０１により実行される。ここでは、ステップＳ１６０１〜Ｓ１６０６の各処理ステップについて、ＭＦＰ１０２がボタン表示判定処理を行うケースを例として説明する。
【０１１４】
ＭＦＰ１０２は、任意のユーザがログインすると、処理フロー管理ファイル１４００を参照して、登録されている各処理フローに関し、カラム１４０３の公開範囲がログインユーザと一致するかどうかを判定する（ステップＳ１６０１）。この結果、一致しない場合は（ステップＳ１６０１でＮＯ）、当該処理フローを実行するためのボタンを“非表示ボタン”と判定して（ステップＳ１６０６）、本処理を終了する。
【０１１５】
一方、ステップＳ１６０１の判定で一致した場合は（ステップＳ１６０１でＹＥＳ）、カラム１４０５の内容から当該処理フローが連携処理フローであるかどうかを判定する（ステップＳ１６０２）。この結果、連携処理フローで無い場合は（ステップＳ１６０２でＮＯ）、当該フローを実行するためのボタンを“表示ボタン”と判定して（ステップＳ１６０５）、本処理を終了する。
【０１１６】
一方、ステップＳ１６０２で連携処理フローであると判定された場合は、ステップＳ１６０３へ進む。ステップＳ１６０３では、カラム１４０７の連携種別の内容から、当該連携処理フローが”他のＭＦＰ”→”ＭＦＰ１０２”というシーケンスで実行されるもの、すなわち第２の連携処理フローであるかどうかを判定する。この判定の結果、第２の連携処理フローでない場合は（ステップＳ１６０３でＮＯ）、当該連携処理フローを実行するためのボタンを“表示ボタン”と判定（ステップＳ１６０５）して、本処理を終了する。
【０１１７】
一方、ステップＳ１６０３の判定で第２の連携処理フローであると判定された場合は、更に、カラム１４０４の内容から当該連携処理フローの最終処理が“Ｐｒｉｎｔ”（印刷処理）であるかどうかを判定する（ステップＳ１６０４）。この結果、最終処理が“Ｐｒｉｎｔ”である場合は（ステップＳ１６０４でＹＥＳ）、当該連携処理フローを実行するためのボタンを“表示ボタン”と判定して（ステップＳ１６０５）、本処理を終了する。
【０１１８】
一方、最終処理が“Ｐｒｉｎｔ”以外の処理（例えば“Ｓｅｎｄ”など）である場合は（ステップＳ１６０４でＮＯ）、当該連携処理フローを実行するためのボタンは“非表示ボタン”と判定して（ステップＳ１６０６）、本処理を終了する。このように、第２の連携処理フローの最終処理が印刷処理であるかどうかによって表示ボタンの表示／非表示が判定される。
【０１１９】
以上述べた通り、「スキャンした文書にユーザ証明書を付与して送信する」処理フローに関して、当初登録されていた実行不可能なデバイス（ＭＦＰ１０１）から、実行可能な他のデバイス（ＭＦＰ１０２）に転送されることとなる。更には、ＭＦＰ１０１にも連携処理フローとして登録される。そのため、ユーザはＭＦＰ１０２上からでも、ＭＦＰ１０１上からでも、所望の上記処理フローを、内容を変更することなく実行することが可能となる。
【０１２０】
次に、ＭＦＰにおいて実行される処理フローの動作処理について説明する。
【０１２１】
図１７は、第１の実施形態におけるＭＦＰの処理フロー実行処理の一例を示すフローチャートである。
【０１２２】
図１７において、ステップＳ１７０１〜Ｓ１７０７は各処理ステップを示し、ＭＦＰにおける処理フロー実行処理の流れに対応する。なお、各処理ステップに対応する制御プログラムは、ＭＦＰ内のＲＯＭ２０３に記憶されており、ＣＰＵ２０１により実行される。
【０１２３】
まず、ステップＳ１７０１〜Ｓ１７０７の各処理ステップを、Ｕｓｅｒ  ＡがＭＦＰ１０２において処理フローの実行を希望した際のＭＦＰ１０２の動作処理について説明する。
【０１２４】
ＭＦＰ１０２は、ユーザによるログインが発生するのを待ち受ける（ステップＳ１７０１）。ここで、Ｕｓｅｒ  Ａがログインを実行したとする。すると、ＭＦＰ１０２が管理する処理フロー管理ファイル１４００に登録されている各処理フローに関して、図１６のフローチャートで示したボタン表示判定処理を実行する（ステップＳ１７０２）。その結果として、図１５に示したＵｓｅｒ  Ａ用の操作画面を操作部２１２に表示する（Ｓ１７０３）。
【０１２５】
次に、図１５に示した操作画面において、Ｕｓｅｒ  Ａにより、処理フローを実行するためのボタンであるボタン１５０２が押下されるのを待ち受ける（ステップＳ１７０４）。ここでボタン１５０２が押下されることなく、不図示のログアウトキーでＵｓｅｒ  Ａのログアウトが検出されると、直ちに本処理を終了する。
【０１２６】
ステップＳ１７０４においてボタン１５０２の押下を検出すると、対応する処理フロー定義ファイル５００の内容を実行する（ステップＳ１７０５）。次に、当該処理フローが第１の連携処理フローであるかを判定する（ステップＳ１７０６）。ここで、ボタン１５０２に対応する処理フロー定義ファイル５００は、第１の連携処理フローではないため、ＭＦＰ１０２は直ちに本処理を終了する。
【０１２７】
同様に、ステップＳ１７０１〜Ｓ１７０７の各処理ステップを、Ｕｓｅｒ  ＡがＭＦＰ１０１において処理フローの実行を希望した際のＭＦＰ１０１の動作処理について説明する。
【０１２８】
ＭＦＰ１０１は、ユーザによるログインが発生するのを待ち受ける（ステップＳ１７０１）。ここで、Ｕｓｅｒ  Ａがログインを実行したとする。すると、ＭＦＰ１０１が管理する処理フロー管理ファイル４００に登録されている各処理フローに関して、図１６のフローチャートで示したボタン表示判定処理を実行する（ステップＳ１７０２）。その結果として、図１１に示したＵｓｅｒ  Ａ用の操作画面を操作部２１２に表示する（ステップＳ１７０３）。
【０１２９】
次に、図１１に示した操作画面において、Ｕｓｅｒ  Ａにより、処理フローを実行するためのボタンであるボタン６０３若しくはボタン６０６が押下されるのを待ち受ける（ステップＳ１７０４）。ここでボタン６０３若しくはボタン６０６が押下されることなく、不図示のログアウトキーでＵｓｅｒ  Ａのログアウトが検出されると、直ちに本処理を終了する。ここでは、Ｕｓｅｒ  Ａはボタン６０６を押下したものとする。
【０１３０】
ステップＳ１７０４においてボタン６０６の押下を検出すると、対応する第１の連携処理フロー定義ファイル９００の内容を実行する（ステップＳ１７０５）。既述の通り、第１の連携処理フロー定義ファイル９００は、第１の連携処理フローが定義されているものである（ステップＳ１７０６）。したがって、連携先となるＭＦＰ１０２に対して、第２の連携処理フロー定義ファイル１０００の実行指示を送信する（ステップＳ１７０７）。この処理は、本発明における実行指示送信手段の一例である。以上のステップを実行した後、ＭＦＰ１０１は本処理を終了する。
【０１３１】
以上述べた通り、ＭＦＰ１０２における処理フロー定義ファイル５００のようにＭＦＰ上で単体で実行可能な処理フローに関しては、対応するボタンが押下されることにより当該処理フローが最後まで実行される。一方、ＭＦＰ１０１における第１の連携処理フロー定義ファイル９００のように、他のＭＦＰとの連携処理フローに関しては、対応するボタンが押下されることで、当該ＭＦＰ上で実行可能なタスクまでのみが実行される。そして、それ以降のタスクからなる連携処理フローの実行指示が、当該画像形成から連携先となるＭＦＰに送信される。
【０１３２】
図１８は、連携先となるＭＦＰ１０２，１０３において、連携元のＭＦＰ１０１から所定の連携処理フローの実行指示を受け取った際の連携処理フロー実行処理の一例を示すフローチャートである。
【０１３３】
図１８において、ステップＳ１８０１〜Ｓ１８０７は各処理ステップを示し、連携先となるＭＦＰ１０２，１０３における連携処理フロー実行処理の流れに対応する。なお、各処理ステップに対応する制御プログラムは、連携先となるＭＦＰ１０２，１０３の各ＲＯＭ２０３に記憶されており、各ＣＰＵ２０１により実行される。
【０１３４】
ＭＦＰ（ここではＭＦＰ１０２，１０３）は、他のＭＦＰ（ここではＭＦＰ１０１）から連携処理フローの実行指示を受信するのを待ち受けている（ステップＳ１８０１）。この処理は、本発明における実行指示受信手段の一例である。実行指示を受信すると、処理フロー管理ファイルを参照し、実行指示された連携処理フローに関して、図１６のフローチャートで示したボタン表示判定処理を実施する（ステップＳ１８０２）。そして、当該連携処理フローのボタンが“表示ボタン”であるかどうかを判定する（ステップＳ１８０３）。判定の結果、“非表示ボタン”と判定した場合は、直ちに当該連携処理フローを実行して（ステップＳ１８０７）、本処理を終了する。
【０１３５】
一方、ステップＳ１８０７で“表示ボタン”と判定した場合は、ユーザによるログインを待ち受ける（ステップＳ１８０４）。ユーザのログインが行われると、当該連携処理フローを実行するためのボタンを表示する（ステップＳ１８０５）。この処理は、本発明における第２の連携処理フロー実行ボタン表示処理の一例である。そして、ユーザによるボタン押下を待ち受け（ステップＳ１８０６）、ボタン押下されると当該連携処理フローを実行する（ステップＳ１８０７）。この処理は、本発明における第２の連携処理フロー実行処理の一例である。以上のステップを実行した後、ＭＦＰは本処理を終了する。
【０１３６】
次に、図１８に示す処理を、ＭＦＰ１０１が図１７に示す処理を実行して、第１の連携処理フロー定義ファイル９００に連携する第２の連携処理フロー定義ファイル１０００の実行指示を行ってきた際の、ＭＦＰ１０２の動作処理に当てはめて説明する。
【０１３７】
ＭＦＰ１０２は、ＭＦＰ１０１よりシリアルＩＤ：”ａａｂｂｃｃｄｄ０２”の連携処理フローの実行指示を受信する（ステップＳ１８０１）。処理フロー管理ファイル１４００を参照すると、シリアルＩＤ：”ａａｂｂｃｃｄｄ０２”に対応する連携処理フローは管理ＩＤ：”２”として登録されていることが分かる。管理ＩＤ：”２”の連携処理フローを図１６のボタン表示判定処理にかけると（ステップＳ１８０２）、カラム１４０４の内容から当該連携処理フローの最終処理は“Ｐｒｉｎｔ”ではないことが分かり、“ボタン非表示”と判定される（ステップＳ１８０３でＮＯ）。したがって、直ちに対応する第２の連携処理フロー定義ファイル１０００の内容である「スキャンした文書にユーザ証明書を付与して送信する」処理フローを実行することとなる（ステップＳ１８０７）。
【０１３８】
以上のように、本実施形態では、「スキャンした文書にユーザ証明書を付与して送信する」処理フローを例にとって説明した。
【０１３９】
次に、「スキャンした文書とＨＤＤ内に保存している文書を結合して印刷する」という別の新たな処理フローを例にとり、本実施形態におけるＭＦＰの動作処理を更に説明する。ここでは、図４において管理ＩＤ：３として登録されている“文書結合印刷”処理フローに着目する。当該処理フローはＭＦＰ１０１に登録されており、公開範囲はＵｓｅｒ  Ｂに設定されている。
【０１４０】
図１９は、“文書結合印刷”処理フローの処理フロー定義ファイルの一例を示す図であり、（ａ）は“文書結合印刷”処理フローの処理フロー定義ファイル、（ｂ）は当該処理フロー定義ファイル中のタグを抜き出したものである。
【０１４１】
本実施形態では、処理フロー定義ファイル１９００は、ＸＭＬファイルとして扱うものとする。この処理フロー定義ファイルは、処理フローアプリケーション３００を組み込んだＭＦＰで作成可能である。処理フローに含まれるタスクはＸＭＬのタグとして表現され、その出現順番がタスクの処理順番とみなすものとする。ただし、図１９では、タスクに関する詳細な設定内容が省略されている。
【０１４２】
図１９（ａ）において、タグ１９０１は、スキャナ部２７０を用いたスキャンタスクを実行して、文書を入力することを示している。タグ１９０２は、ＨＤＤ２０４に保存されている画像データを入力文書として扱うタスクであることを示している。タグ１９０３でＨＤＤ２０４に保存されている画像データを特定している。
【０１４３】
タグ１９０４は、文書を結合するタスクを実行して、複数の文書を１つの文書に結合することを示している。タグ１９０５は、結合する文書を特定している。タグ１９０６は、印刷タスクを実行して、印刷を行うことを示している。
【０１４４】
図１９（ｂ）において、タグ１９５０は、１件の処理フローであることを示しており、処理フローの管理ＩＤを表す属性１９５１および処理フローの名称を表す属性１９５２より構成される。
【０１４５】
ここで、本実施形態においてＭＦＰ１０１は、文書結合機能に非対応の画像形成装置である。そのため、Ｕｓｅｒ  ＢがＭＦＰ１０１にログインして、処理フロー定義ファイル１９００に対応する実行ボタンを押下すると、ＭＦＰ１０１は、図７に示した処理を実行し、当該処理フローを実行可能な他のＭＦＰに転送することを試みる。すなわち、ＭＦＰ１０１は、まず処理フロー定義ファイル１９００の実行可否確認要求をＬＡＮ１００上に送信し（ステップＳ７０１）、ＬＡＮ１００上の他のＭＦＰから実行可能応答が届くのを待ち受ける（ステップＳ７０２）。本実施形態では、ＭＦＰ１０３が文書結合機能に対応しているため、ＭＦＰ１０１に対して処理フロー定義ファイル１９００の実行可能応答を返信してくるものとする。
【０１４６】
次に、ＭＦＰ１０１は、実行可能なＭＦＰをリスト表示し（ステップＳ７０３）、ユーザにより処理フロー転送先が決定されるのを待ち受ける（ステップＳ７０４）。本実施形態では、ステップＳ７０３でＭＦＰ１０３のみが実行可能なＭＦＰとしてリスト表示され、また、ステップＳ７０４でユーザによりＭＦＰ１０３が処理フロー転送先として決定されたものとする。
【０１４７】
そして、ＭＦＰ１０１は、処理フロー定義ファイル１９００を分割して、後述する第１の連携処理フロー定義ファイル２０００および第２の連携処理フロー定義ファイル２１００を生成する（ステップＳ７０５）。その後、処理フロー定義ファイル１９００および第２の連携処理フロー定義ファイル２１００をＭＦＰ１０３に転送する（ステップＳ７０６）。
【０１４８】
次に、処理フロー定義ファイル１９００に対応する実行ボタンを削除し（ステップＳ７０７）、第１の連携処理フロー定義ファイル２０００に対応する実行ボタンを表示する（ステップＳ７０８）。最後に、処理フロー管理ファイル４００の内容を更新して（ステップＳ７０９）、本処理を終了する。
【０１４９】
一方、ＭＦＰ１０３では、図１３に示した処理が実行される。すなわち、ＭＦＰ１０１より処理フロー定義ファイル１９００の実行可否確認応答を受信すると（ステップＳ１３０１）、当該処理フローを解析し（ステップＳ１３０２）、実行可能であるかどうかを判断する（ステップＳ１３０３）。本実施形態では、ＭＦＰ１０３は、処理フロー定義ファイル１９００を実行可能であるため、ＭＦＰ１０１に対して実行可能応答を送信する（ステップＳ１３０４）。その後、ＭＦＰ１０１より処理フロー定義ファイル１９００および第２の連携処理フロー定義ファイル２１００を受信するのを待ち受ける（ステップＳ１３０５）。上記２つの処理フロー定義ファイルを受信すると、その内容を処理フロー管理ファイルに登録して（ステップＳ１３０６）、本処理を終了する。
【０１５０】
同様に、ＭＦＰ１０２に関しても、図１３に示した処理が実行される。すなわち、ＭＦＰ１０１より処理フロー定義ファイル１９００の実行可否確認応答を受信すると（ステップＳ１３０１）、当該処理フローを解析し（ステップＳ１３０２）、実行可能であるかどうかを判断する（ステップＳ１３０３）。ただし、本実施形態では、ＭＦＰ１０２は文書結合機能に非対応であり、処理フロー定義ファイル１９００を実行不可能と判断するため、上記実行可否確認応答を内部的に破棄して、直ちに本処理を終了する。
【０１５１】
以上述べた通り、「スキャンした文書とＨＤＤ内に保存している文書を結合して印刷する」処理フローに関しても、当初登録されていた実行不可能なデバイス（ＭＦＰ１０１）から、実行可能な他のデバイス（ＭＦＰ１０３）に転送されることとなる。更には、ＭＦＰ１０１にも連携処理フローとして登録される。そのため、ユーザはＭＦＰ１０３上からでも、ＭＦＰ１０１上からでも、所望の上記処理フローを、内容を変更することなく実行することが可能となる。
【０１５２】
図２０（ａ）、図２０（ｂ）および図２１（ａ）、図２１（ｂ）は、ステップＳ７０５の処理フローの分割ステップの結果作成される第１の連携処理フロー定義ファイル２０００および第２の連携処理フロー定義ファイル２１００を示している。
【０１５３】
図２０（ａ）に示す第１の連携処理フロー定義ファイル２０００において、タグ２０５０は１件の処理フローであることを示している。タグ２０５０は以下の属性より構成される。
【０１５４】
図２０（ｂ）において、属性２０５１は、処理フローの管理ＩＤを表している。属性２０５２は、処理フローの名称を表している。属性２０５３は、処理フローのシリアルＩＤを表している。属性２０５４は、連携先となる連携処理フローのシリアルＩＤを表している。
【０１５５】
属性２０５３および属性２０５４は、他のＭＦＰと連携する連携処理フローにのみ設定される属性である。シリアルＩＤには、ネットワーク上で一意な値が設定される。本実施形態では、”ＭＦＰのＭＡＣ（Media Access Control）アドレスの下８桁”＋”ＭＦＰが管理するシーケンシャルな４桁の番号”から構成される１２桁の数字より構成されるものとする。ただし、シリアルＩＤは、あくまでネットワーク上で一意な値であればよく、必ずしも上記構成である必要は無い。シリアルＩＤの構成は、桁数も含めて様々な形態をとり得る。
【０１５６】
図２０（ａ）において、タグ２００１は、処理フロー定義ファイル１９００のタグ１９０１の内容がそのまま転記されており、スキャナ部２７０を用いたスキャンタスクを実行して、文書を入力することを示している。タグ２００２は、処理フロー定義ファイル１９００のタグ１９０２の内容がそのまま転記されており、ＨＤＤ２０４に保存されている画像データを入力文書として扱うタスクであることを示している。
【０１５７】
タグ２００３は、処理フロー定義ファイル１９００のタグ１９０３の内容がそのまま転記されており、ＨＤＤ２０４に保存されている画像データを特定している。タグ２００４は、送信タスクを実行して文書を送信先に送信することを示している。タグ２００５は、送信タスクの設定で送信先となるアドレスを示しており、ここには連携処理フロー転送先であるＭＦＰ１０３のＩＰアドレス（１９２．１６８．０．１０３）が設定される。タグ２００６は、ＭＦＰ１０３に送信する文書を示している。タグ２００７は、ＭＦＰ１０３に対して実行を指示する連携処理フローのシリアルＩＤを示している。
【０１５８】
タグ２００４〜タグ２００７の記載は、「タグ２００５の宛て先にタグ２００６のデータを送信し、宛て先にタグ２００７の連携処理フローの実行を指示する」という処理を示している。同様に、図２１（ａ）に示す第２の連携処理フロー定義ファイル２１００において、タグ２１５０は１件の処理フローであることを示している。タグ２１５０は以下の属性より構成される。
【０１５９】
図２１（ｂ）において、属性２１５１は、処理フローの管理ＩＤを表している。ただし、第２の連携処理フロー定義ファイル２１００は、図７に示す処理の中で後ほどＭＦＰ１０３に転送され、ＭＦＰ１０３側で任意の管理ＩＤが付与されるものであるため、ここでは属性２１５１には管理ＩＤは付与されない。
【０１６０】
属性２１５２は、処理フローの名称を表している。属性２１５３は、処理フローのシリアルＩＤを表している。属性２１５４は、連携元となる連携処理フローのシリアルＩＤを表している。属性２１５３および属性２１５４は、他のＭＦＰと連携する連携処理フローにのみ設定される属性である。シリアルＩＤには、ネットワーク上で一意な値が設定される。本実施形態では、”ＭＦＰのＭＡＣ（Media Access Control）アドレスの下８桁”＋”ＭＦＰが管理するシーケンシャルな４桁の番号”から構成される１２桁の数字より構成されるものとする。ただし、シリアルＩＤは、あくまでネットワーク上で一意な値であればよく、必ずしも上記構成である必要は無い。シリアルＩＤの構成は、桁数も含めて様々な形態をとり得る。
【０１６１】
図２１（ａ）において、タグ２１０１は、受信タスクを実行して文書を受信することを示している。タグ２１０２は、受信する文書を特定している。タグ２１０３は、処理フロー定義ファイル１９００のタグ１９０４の内容がそのまま転記されており、文書を結合するタスクを実行して、複数の文書を１つの文書に結合することを示している。タグ２１０４は、処理フロー定義ファイル１９００のタグ１９０５の内容がそのまま転記されており、結合する文書を特定している。タグ２１０５は、処理フロー定義ファイル１９００のタグ１９０６の内容がそのまま転記されており、印刷タスクを実行して、印刷を行うことを示している。
【０１６２】
既述の通り、処理フロー定義ファイル１９００では、「スキャンした文書とＨＤＤ内に保存している文書を結合して印刷する」処理フローが定義されていた。しかしながら、ＭＦＰ１０１で実行可能なのは「スキャンした文書とＨＤＤ内に保存している文書を特定する」部分までである。そのため、ＭＦＰ１０１上で実行可能なタスクまでからなる第１の連携処理フロー定義ファイル２０００としては「スキャンした文書とＨＤＤ内に保存している文書をＭＦＰ１０３に送信する」処理フローが定義される。そして、それ以降のタスクからなる第２の連携処理フロー定義ファイル２１００としては、第１の連携処理フロー定義ファイル２０００の処理を引き継いで、「ＭＦＰ１０１から受信した文書を結合して印刷する」処理フローが定義される。
【０１６３】
図２２は、ＭＦＰ１０１において図７の処理が実行され、「スキャンした文書とＨＤＤ内に保存している文書をＭＦＰ１０３に送信する」処理フローがＭＦＰ１０３に転送された後の、ＭＦＰ１０１におけるＵｓｅｒ  Ｂの操作画面の一例を示す図である。
【０１６４】
図２２において、ボタン６０７は、第１の連携処理フロー定義ファイル２０００を実行するボタンである。ボタン６０７上には、ＭＦＰ１０３と連携して処理フローを実行するボタンであることを示す“［連携フロー］連携ホスト：ＣＣＣ”という文言が表示されている。その他のボタン６０１，６０４，６０５については、図６で説明したものから変更は無いため、それらの詳細な説明は省略する。
【０１６５】
図２３は、ＭＦＰ１０３において図１３の処理が実行された後の、ＭＦＰ１０３で管理される処理フロー管理ファイル２３００の一例を示す図である。
【０１６６】
図２３において、カラム２３０１には、処理フローの管理ＩＤが格納される。カラム２３０２には、処理フローの名称が格納される。カラム２３０３には、処理フローが誰に対してアクセス権が与えられているかを示す情報が格納される。カラム２３０４には、処理フローを構成するタスクが格納される。
【０１６７】
カラム２３０５には、処理フローが連携処理フローであるかどうかを示す情報が格納される。連携処理フローである場合は“Ｙ”が、当該ＭＦＰのみで実行可能な処理フローである場合は“Ｎ”が格納される。
【０１６８】
カラム２３０６には、カラム２３０５に“Ｙ”が設定されている場合、すなわち連携処理フローである場合に、当該連携処理フローのシリアルＩＤが格納される。シリアルＩＤは、連携処理フローにのみ、生成時にＭＦＰが自動的に付与するもので、ネットワーク上で一意な値が付与される。また、一旦生成時に付与されると、その後は値が変更されることは無い。
【０１６９】
カラム２３０７には、カラム２３０５に“Ｙ”が設定されている場合、すなわち連携処理フローである場合に、当該連携処理フローの連携種別を示す情報が格納される。ＭＦＰ１０３側が先に当該連携処理フローを実行し、その後、他のＭＦＰ上で別の所定の連携処理フローが実行される場合は“Ｓｒｃ”が格納される。一方、他のＭＦＰが先に連携処理フローを実行し、それを受けてＭＦＰ１０３上で当該連携処理フローが実行される場合は“Ｄｓｔ”が格納される。
【０１７０】
カラム２３０８には、カラム２３０５に“Ｙ”が設定されている場合、すなわち連携処理フローである場合に、その連携先となるＭＦＰの情報が格納される。ここには、連携先となるＭＦＰのホスト名およびＩＰアドレス、また、連携先で実行されることになる連携処理フローのシリアルＩＤが格納される。ここで、ＩＤ：１として登録されている処理フローは処理フロー定義ファイル１９００に、ＩＤ：２として登録されている処理フローは第２の連携処理フロー定義ファイル２１００に、それぞれ対応している。処理フロー定義ファイル１９００は、ＭＦＰ１０３のみで実行可能な処理フローであるため、カラム２３０５には“Ｎ”が設定されている。
【０１７１】
一方、第２の連携処理フロー定義ファイル２１００は、ＭＦＰ１０１と連携し、ＭＦＰ１０１の第１の連携処理フロー定義ファイル２０００に対応して実行される連携処理フローである。そのため、カラム２３０５には“Ｙ”が格納されている。更に、ＭＦＰ１０１→ＭＦＰ１０２というシーケンスで実行されるため、カラム２３０６には“Ｄｓｔ”が格納されている。また、カラム２３０７には、連携相手であるＭＦＰ１０１のホスト名（ＡＡＡ）およびＩＰアドレス（１９２．１６８．０．１０１）が格納されている。
【０１７２】
図２４は、Ｕｓｅｒ  ＢがＭＦＰ１０３にログインした際にＭＦＰ１０３の操作部２１２に表示される操作画面の一例を示す図である。
【０１７３】
図２４において、ボタン２４０１は、処理フローアプリケーション３００を起動して画面表示を行うためのボタンである。本実施形態では、その他のアプリケーションを起動するためのボタンは表示されていないものとする。
【０１７４】
ボタン２４０２，２４０３は、それぞれに割り当てられている処理フローを呼び出して実行するためのボタンである。ボタン２４０４は、ログインユーザに関係なく表示される共有の画面に切り替えるためのボタンである。ボタン２４０４が押下されたときに表示されるボタンは、処理フロー管理ファイル２３００のカラム２３０３の公開範囲が共有となっているものである（図示を省略）。ボタン２４０５は、処理フローを作成・編集画面を表示するためのものである。
【０１７５】
ここで、ボタン２４０２は、処理フロー定義ファイル１９００を実行するボタンであり、ボタン２４０３は第２の連携処理フロー定義ファイル２１００を実行するボタンである。各ボタンの表示・非表示は、ＭＦＰ１０３が図１６に示した処理を実行した結果、決定される。処理フロー定義ファイル１９００は連携処理フローではないため、対応するボタン２４０２は操作画面上に表示される。また、第２の連携処理フロー定義ファイル２１００は連携処理フローで、かつ連携種別が“Ｄｓｔ”であり、更に最終タスクは“Ｐｒｉｎｔ”であるため、やはり対応するボタン２４０３は操作画面上に表示される。
【０１７６】
Ｕｓｅｒ  ＢがＭＦＰ１０３にログインしてボタン２４０２を押下したケースでは、図１７に示す処理をＭＦＰ１０３が実行して、ボタン２４０２に対応する処理フロー定義ファイル１９００に定義された処理フローが、ＭＦＰ１０３上で実行される。
【０１７７】
Ｕｓｅｒ  ＢがＭＦＰ１０１にログインしてボタン６０７を押下したケースでは、ＭＦＰ１０１が図１７に示す処理を実行して、ボタン６０７に対応する第１の連携処理フロー定義ファイル２０００に定義された連携処理フローが実行される。そして、ＭＦＰ１０１からＭＦＰ１０３に対して、スキャン文書とＨＤＤ内に保存していた文書が送信され、併せて第２の連携処理フロー定義ファイル２１００に定義された処理フローの実行指示が送信される。その結果、ＭＦＰ１０３では図１８に示す処理が実行される。
【０１７８】
ＭＦＰ１０３は、第２の連携処理フロー定義ファイル２１００に定義された連携処理フローの実行指示を受信すると（ステップＳ１８０１）、指示された連携処理フローがボタンを表示する処理フローであるかを判定する（ステップＳ１８０２，Ｓ１８０３）。今回のケースでは、ボタンを表示する連携処理フローであると判断されるため、その時点では当該連携処理フローを実行せず、Ｕｓｅｒ  Ｂのログインを待ち受ける（ステップＳ１８０４）。Ｕｓｅｒ  Ｂのログインを受け付けると、図２４に示す操作画面を表示する（ステップＳ１８０５）。そして、第２の連携処理フロー定義ファイル２１００に対応するボタン２４０３が押下されるのを待ち受ける（ステップＳ１８０６）。ボタン２４０３の押下を受け付けると、対応する第２の連携処理フロー定義ファイル２１００に定義された連携処理フローを実行する（ステップＳ１８０７）。
【０１７９】
以上、本実施形態によれば、ＭＦＰにおいて、単体では実行不可能な処理フローが存在した場合に、当該処理フローを実行可能な他のＭＦＰを探索し、転送先として決定したＭＦＰに当該処理フローを転送する。それにより、転送先のＭＦＰ上では当該処理フローの実行ボタンが表示され、当該処理フローの内容を変更することなく、ユーザが所望した通りの処理フローを実行することが可能となる。
【０１８０】
更には、当該処理フローを分割して連携処理フローを新たに生成し、その実行ボタンを表示することで、転送先のＭＦＰ上のみではなく、転送元のＭＦＰ上からでも、当該処理フローを内容変更することなく実行することが可能となる。
【０１８１】
更には、当該処理フローの最終タスクが印刷処理である場合には、転送先のＭＦＰでは連携処理フローの実行ボタンも表示して、当該実行ボタンが押下された場合にはじめて当該連携処理フローを実行する。それにより、ユーザが転送元のＭＦＰ上で連携処理フローの実行ボタンを押下した場合に、物理的に離れた別のＭＦＰ上で直ちに印刷処理が実行されてしまい、ユーザの機密文書などが排紙部に放置されてしまう事態を防ぐことも可能になる。一方で、最終タスクが印刷処理以外（他装置への送信やＨＤＤへの保存など）の場合には、転送先のＭＦＰでは連携処理フローの実行ボタンは表示されない。この場合、ユーザが転送元のＭＦＰ上で連携処理フローの実行ボタンを押下した時点で、直ちに連携先のＭＦＰも対応する連携処理フローを実行する。そのため、ユーザは転送先のＭＦＰの前まで移動して、ログインやボタン押下などの操作を行う必要が無く、簡単な操作のみで所望の処理フローを実行することが可能となる。
【０１８２】
［第２の実施形態］
次に、本発明の第２の実施形態に係る画像処理装置について説明する。
【０１８３】
上記第１の実施形態では、図２４に示した通り、第２の連携処理フロー定義ファイル２１００に定義された処理フローを実行するためのボタン２４０３は、Ｕｓｅｒ  Ｂのログイン時には常に表示されていた。しかしながら、ボタン２４０３は、実際にはＵｓｅｒ  Ｂが事前にＭＦＰ１０１上で図２２に示すボタン６０７を押下している場合にのみ有効となるボタンである。更には、ボタン２４０２とボタン２４０３は表示内容が似ているため、Ｕｓｅｒ  Ｂからはどちらのボタンを押下してよいのか判別がつきにくい場合も考えられる。
【０１８４】
したがって、Ｕｓｅｒ  Ｂが事前にＭＦＰ１０１上で図２２に示すボタン６０７を押下している場合以外は、ボタン２４０３はボタン全体がグレーアウトされ、ユーザによる押下を受け付けない状態となっていてもよい。
【０１８５】
図２５は、本発明の第２の実施形態におけるＭＦＰ１０３が、Ｕｓｅｒ  Ｂのログイン時に操作部２１２に表示する操作画面の一例を示す図である。ここでは、Ｕｓｅｒ  Ｂは、事前にＭＦＰ１０１上で図２２に示すボタン６０７を押下していない、すなわち、ＭＦＰ１０３にはＭＦＰ１０１からの第２の連携処理フロー定義ファイル２１００の実行指示が来ていないものとする。そのため、第２の連携処理フロー定義ファイル２１００を実行するためのボタン２５０３はグレーアウトされており、ボタン押下を受け付けない状態となっている。一方、処理フロー定義ファイル１９００に定義された処理フローを実行するためのボタン２５０２は、ボタン押下を受け付ける状態で表示されている。
【０１８６】
図２６は、本発明の第２の実施形態におけるＭＦＰ１０３が、Ｕｓｅｒ  Ｂのログイン時に操作部２１２に表示する操作画面の一例を示す図である。ただし、図２５とは異なり、ここではＵｓｅｒ  Ｂが事前にＭＦＰ１０１上で図２２に示すボタン６０７を押下している、すなわち、ＭＦＰ１０３にはＭＦＰ１０１からの第２の連携処理フロー定義ファイル２１００の実行指示が来ているものとする。
【０１８７】
図２６では、図２５とは逆に、第２の連携処理フロー定義ファイル２１００に定義された処理フローを実行するためのボタン２６０３はボタン押下を受け付ける状態となっている。一方、処理フロー定義ファイル１９００に定義された処理フローを実行するためのボタン２６０２はグレーアウトされており、ボタン押下を受け付けない状態となっている。
【０１８８】
したがって、Ｕｓｅｒ  Ｂは、誤ってボタン２６０２を押下してしまうことなく、ボタン２６０３を押下して、ボタン押下待ち状態である所望の連携処理フローを開始させることが可能となる。
【０１８９】
以上述べてきた通り、本第２の実施形態によれば、ＭＦＰは必要に応じてボタンをグレーアウトし、ユーザによる押下を受け付けない状態とする。それにより、ユーザが実行不可能な状態のボタンや意図したのと異なるボタンを誤って押下してしまう、或いは、いずれのボタンを押下すればよいのか判断に迷う事態を防ぐことが可能となる。
【０１９０】
なお、あくまでユーザが実行不可能な状態のボタンや意図したのと異なるボタンを誤って押下してしまう、またはいずれのボタンを押下すればよいのか判断に迷う事態を防ぐことが目的であり、その方法は必ずしもボタンのグレーアウト等の表示方法に限定されない。上記目的を実現するためのあらゆる方法が本発明の範疇に含まれる。例えば、図２５において、ボタン２５０３はグレーアウトではなく、そもそも非表示とされていてもよい。同様に、図２６において、ボタン２６０２はグレーアウトではなく、そもそも非表示とされていてもよい。または、Ｕｓｅｒ  Ｂが事前にＭＦＰ１０１上で図２２に示すボタン６０７を押下している場合にのみ、ボタン２６０３の表示方法を他のボタンとは異なる形式としてもよい。例えば、ボタン２６０３のみ表示の色を変更する、点滅表示させる、ボタンのサイズを大きくする、などであってもよい。または、単に、ボタン２６０３の押下をユーザに促すメッセージを操作画面上の空白領域に表示させてもよい。その他、ボタン２６０３を他のボタンより目立たせるためのあらゆる方法が本発明の範疇に含まれる。
【０１９１】
［第３の実施形態］
次に、本発明の第３の実施形態に係る画像処理装置について説明する。
【０１９２】
上記第１の実施形態おけるＭＦＰでは、図１７のフローチャートで示した通り、第２の連携処理フローの実行指示を送信（ステップＳ１７０７）した後、直ちに処理を終了していた。しかしながら、連携先となる他のＭＦＰからの実行結果の通知を待ち受けてもよい。
【０１９３】
図２７は、本発明の第３の実施形態におけるＭＦＰの処理フロー実行処理の一例を示すフローチャートである。
【０１９４】
図２７において、ステップＳ２７０１〜Ｓ２７０８は各処理ステップを示し、ＭＦＰ（ここではＭＦＰ１０１）において、ユーザからの処理フロー実行指示を受け付けて、当該処理フローを実行する際に処理の流れに対応している。なお、各処理ステップに対応する制御プログラムは、ＭＦＰ内のＲＯＭ２０３に記憶されており、ＣＰＵ２０１により実行される。なお、ステップＳ２７０１〜Ｓ２７０７の各処理ステップについては、図１７に示したステップＳ１７０１〜Ｓ１７０７の各処理ステップと同一であるため、それらの説明については省略する。
【０１９５】
ステップＳ２７０７において、第２の連携処理フローの実行指示を送信した後、連携先のＭＦＰ（ここではＭＦＰ１０２，１０３）から実行結果が通知されるのを待ち受ける（ステップＳ２７０８）。この処理は、本発明における実行結果通知待ち受け手段の一例である。そして、実行結果の通知を受信すると、本処理を終了する。
【０１９６】
図２８は、本発明に係る第３の実施形態において、連携先のＭＦＰが、連携元のＭＦＰから所定の連携処理フローの実行指示を受け取った際の処理の一例を示すフローチャートである。
【０１９７】
図２８において、ステップＳ２８０１〜Ｓ２８０８は各処理ステップを示し、連携元となるＭＦＰにおいて図２７に示す処理が実行され、連携処理フローの実行指示が送信された際の、連携先のＭＦＰにおける処理の流れに対応している。なお、各処理ステップに対応する制御プログラムは、連携先のＭＦＰ内のＲＯＭ２０３に記憶されており、ＣＰＵ２０１により実行される。なお、ステップＳ２８０１〜Ｓ２８０７の各処理ステップについては、図１８に示したステップＳ１８０１〜Ｓ１８０７の各処理ステップと同一であるため、それらの説明については省略する。
【０１９８】
ステップＳ２８０７において、実行指示がなされた連携処理フローを実行すると、連携先のＭＦＰは、連携元のＭＦＰに対して当該連携処理フローの実行結果を通知する（ステップＳ２８０８）。この処理は、本発明におけう実行結果通知手段の一例である。その後、本処理を終了する。
【０１９９】
以上述べてきた通り、本第３の実施形態によれば、ＭＦＰは連携処理フローの実行指示を送信した場合、連携先のＭＦＰからの実行結果通知を待ち受ける。それにより、例えば連携先での連携処理フローの実行結果も含めた、より詳細な処理フローの実行履歴を残すことが可能となる。ユーザは、連携元・連携先いずれかのＭＦＰに残された実行履歴を参照するだけで詳細な履歴情報を把握できるため、利便性が増す。
【０２００】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２０１】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０２０２】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０２０３】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【０２０４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【図面の簡単な説明】
【０２０５】
【図１】本発明の第１の実施形態に係る画像処理装置がネットワークに接続された画像処理システムの構成図である。
【図２】図１のＭＦＰの内部構成の一例を示すブロック図である。
【図３】ＭＦＰのソフトウェアモジュールの構成を示す図である。
【図４】ＭＦＰ１０１で管理される処理フロー管理ファイルの一例を示す図である。
【図５】図１の画像形成システムで用いられる処理フロー定義ファイルの一例を示す図であり、（ａ）は処理フロー定義ファイル、（ｂ）は処理フロー定義ファイル中のタグを抜き出したものである。
【図６】ＭＦＰ１０１においてＵｓｅｒＡがログインしたときに操作部２１２に表示される操作画面の一例を示す図である。
【図７】ＭＦＰ１０１における処理フロー転送処理の一例を示すフローチャートである。
【図８】ＭＦＰ１０１において処理フロー転送処理時に操作部２１２に表示される処理フロー転送先候補リストの表示画面の一例を示す図である。
【図９】第１の連携処理フロー定義ファイルの一例を示す図であり、（ａ）は第１の連携処理フロー定義ファイル、（ｂ）は第１の連携処理フロー定義ファイル中のタグを抜き出したものである。
【図１０】第２の連携処理フロー定義ファイルの一例を示す図であり、（ａ）は第２の連携処理フロー定義ファイル、（ｂ）は第２の連携処理フロー定義ファイル中のタグを抜き出したものである。
【図１１】ＭＦＰ１０１において図７の処理フロー転送処理が実行された後に操作部２１２に表示される操作画面の一例を示す図である。
【図１２】ＭＦＰ１０１において図７の処理フロー転送処理が実行された後の処理フロー管理ファイルの一例を示す図である。
【図１３】ＭＦＰ１０２、ＭＦＰ１０３における処理フロー受信処理の一例を示すフローチャートである。
【図１４】ＭＦＰ１０２において図１３の処理を実行された後の処理フロー管理ファイルの一例を示す図である。
【図１５】ＭＦＰ１０２においてＵｓｅｒＡがログインしたときに表示される操作画面の一例を示す図である。
【図１６】ＭＦＰにおけるボタン表示判定処理の一例を示すフローチャートである。
【図１７】ＭＦＰにおける処理フロー実行処理の一例を示すフローチャートである。
【図１８】ＭＦＰ１０２，１０３における連携処理フロー実行処理の一例を示すフローチャートである。
【図１９】処理フロー定義ファイルの第二の例を示す図であり、（ａ）は処理フローの処理フロー定義ファイル、（ｂ）は当該処理フロー定義ファイル中のタグを抜き出したものである。
【図２０】第１の連携処理フロー定義ファイルの第二の例を示す図であり、（ａ）は第１の連携処理フロー定義ファイル、（ｂ）は第１の連携処理フロー定義ファイル中のタグを抜き出したものである。
【図２１】第２の連携処理フロー定義ファイルの第二の例を示す図であり、（ａ）は第２の連携処理フロー定義ファイル、（ｂ）は第２の連携処理フロー定義ファイル中のタグを抜き出したものである。
【図２２】ＭＦＰ１０１においてＵｓｅｒＢがログインしたときに表示される操作画面の一例を示す図である。
【図２３】ＭＦＰ１０３で管理される処理フロー管理ファイルの一例を示す図である。
【図２４】ＭＦＰ１０３においてＵｓｅｒＢがログインしたときに表示される操作画面の一例を示す図である。
【図２５】本発明の第２の実施形態におけるＭＦＰ１０３において連携処理フローの実行指示が無い時点でＵｓｅｒＢがログインしたときに表示される操作画面の一例を示す図である。
【図２６】本発明の第２の実施形態におけるＭＦＰ１０３において連携処理フローの実行指示がある時点でＵｓｅｒＢがログインしたときに表示される操作画面の一例を示す図である。
【図２７】本発明の第３の実施形態におけるＭＦＰの処理フロー実行処理の一例を示すフローチャートである。
【図２８】本発明の第３の実施形態におけるＭＦＰにおける連携処理フロー実行処理の一例を示すフローチャートである。
【符号の説明】
【０２０６】
１００  ＬＡＮ
１０１，１０２，１０３  ＭＦＰ
２００  コントローラユニット
２０１  ＣＰＵ
２０３  ＲＯＭ
２１２  操作部
３０５  フロー実行部
３０６  フロー管理部
３０７  タスク実行部
４００  処理フロー管理ファイル
５００  処理フロー定義ファイル
【図１】
2010114505.tif 000003
【図２】
2010114505.tif 000004
【図３】
2010114505.tif 000005
【図４】
2010114505.tif 000006
【図５】
2010114505.tif 000007
【図６】
2010114505.tif 000008
【図７】
2010114505.tif 000009
【図８】
2010114505.tif 000010
【図９】
2010114505.tif 000011
【図１０】
2010114505.tif 000012
【図１１】
2010114505.tif 000013
【図１２】
2010114505.tif 000014
【図１３】
2010114505.tif 000015
【図１４】
2010114505.tif 000016
【図１５】
2010114505.tif 000017
【図１６】
2010114505.tif 000018
【図１７】
2010114505.tif 000019
【図１８】
2010114505.tif 000020
【図１９】
2010114505.tif 000021
【図２０】
2010114505.tif 000022
【図２１】
2010114505.tif 000023
【図２２】
2010114505.tif 000024
【図２３】
2010114505.tif 000025
【図２４】
2010114505.tif 000026
【図２５】
2010114505.tif 000027
【図２６】
2010114505.tif 000028
【図２７】
2010114505.tif 000029
【図２８】
2010114505.tif 000030