(57)【特許請求の範囲】
【請求項１】
一連の処理を実行するためのユーザの操作に従い、前記一連の処理を定義する定義ファイルに含まれる設定項目とその値に基づき、前記一連の処理を実行する画像処理装置であって、
ユーザごとの固有の設定を含む固有の定義ファイルと、ユーザごとの固有の設定を含まない共通の定義ファイルとを含む複数の定義ファイルを受信する受信手段と、
前記受信した複数の定義ファイルの中で、同じ設定項目を含む固有の定義ファイルと共通の定義ファイルについて、それぞれで設定値が異なる設定項目を特定する特定手段と、
前記特定された設定項目を示す情報を用いて、前記共通の定義ファイルに基づいてテンプレートファイルを生成する生成手段と、
前記生成されたテンプレートファイルを記憶部に記憶する制御を行う制御手段と、
前記テンプレートファイルを用いて新たに定義ファイルが生成される際には、ユーザに対して、前記特定された設定項目の設定値を受け付けるユーザインターフェースを、表示部を介して提供する提供手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記生成手段で前記テンプレートファイルが生成された場合に、前記テンプレートファイルが生成された旨を予め指定された通知先に通知する通知手段を更に有することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記提供手段は、
前記テンプレートファイルを利用可能にする入力を受け付けるユーザインターフェースを、表示部を介して提供し、
前記テンプレートファイルを用いて新たに定義ファイルが生成される際に、前記入力を受け付けている場合には、ユーザに対して、前記特定された設定項目の設定値を受け付けるユーザインターフェースを、表示部を介して提供することを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記共通の定義ファイルを削除する指示を受け付けた場合に、前記共通の定義ファイルを削除する削除手段を更に有することを特徴とする請求項１乃至３のうち何れか１項に記載の画像処理装置。
【請求項５】
前記提供手段は、固有の定義ファイルを編集する際に、前記固有の定義ファイルとテンプレートファイルとを関連付ける指示を受け付けていた場合には、前記テンプレートファイルに含まれる前記特定された設定項目を示す情報をもとに、前記設定項目の設定値を受け付けるユーザインターフェースを、表示部を介して提供することを特徴とする請求項１乃至４のうち何れか１項に記載の画像処理装置。
【請求項６】
一連の処理を実行するためのユーザの操作に従い、前記一連の処理を定義する定義ファイルに含まれる設定項目とその値に基づき、前記一連の処理を実行する画像処理装置の制御方法であって、
ユーザごとの固有の設定を含む固有の定義ファイルと、ユーザごとの固有の設定を含まない共通の定義ファイルとを含む複数の定義ファイルを受信する受信工程と、
前記受信した複数の定義ファイルの中で、同じ設定項目を含む固有の定義ファイルと共通の定義ファイルについて、それぞれで設定値が異なる設定項目を特定する特定工程と、
前記特定された設定項目を示す情報を用いて、前記共通の定義ファイルに基づいてテンプレートファイルを生成する生成工程と、
前記生成されたテンプレートファイルを記憶部に記憶する制御を行う制御工程と、
前記テンプレートファイルを用いて新たに定義ファイルが生成される際には、ユーザに対して、前記特定された設定項目の設定値を受け付けるユーザインターフェースを、表示を介して提供する提供工程と
を含むことを特徴とする画像処理装置の制御方法。
【請求項７】
一連の処理を実行するためのユーザの操作に従い、前記一連の処理を定義する定義ファイルに含まれる設定項目とその値に基づき、前記一連の処理を実行するコンピュータを、
ユーザごとの固有の設定を含む固有の定義ファイルと、ユーザごとの固有の設定を含まない共通の定義ファイルとを含む複数の定義ファイルを受信する受信手段と、
前記受信した複数の定義ファイルの中で、同じ設定項目を含む固有の定義ファイルと共通の定義ファイルについて、それぞれで設定値が異なる設定項目を特定する特定手段と、
前記特定された設定項目を示す情報を用いて、前記共通の定義ファイルに基づいてテンプレートファイルを生成する生成手段と、
前記生成されたテンプレートファイルを記憶部に記憶する制御を行う制御手段と、
前記テンプレートファイルを用いて新たに定義ファイルが生成される際には、ユーザに対して、前記特定された設定項目の設定値を受け付けるユーザインターフェースを、表示を介して提供する提供手段として
機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
ＭＦＰ（Multi Function Peripheral）などの画像処理装置が有する文書データに対するタスクを複数組み合わせて一連の処理を画像処理装置に予め登録しておく。登録した一連の処理をユーザが呼び出すことにより、一連の処理を実行できるアプリケーション（処理フローアプリケーション）が提供されている。処理フローアプリケーションによれば、頻繁に使用する処理の組み合わせを煩わしい操作なく実行できる。本明細書では、タスクを複数組み合わせて一連の処理の流れとしたものを処理フローと称する。また、処理フローの定義が記載されたファイルを処理フロー定義ファイルと称する。
タスクとは、文書データ、テキストデータ、イメージデータ等の各種のデータに対して実行可能な処理を指し、主として複合的な機能を持つ画像処理装置の個々の機能にて実現可能な処理のことである。画像処理装置のタスクとは、原稿のスキャン、文書データのプリント、文書データの送信（電子メール、ファクス、ファイル等）、文書データのディスクへの保存（当該画像処理装置内外のハードディスクへの保存）等を指す。なお、タスクは、特にこれらに限定されるものではない。
【０００３】
処理フローアプリケーションが組み込まれた画像処理装置では、処理フロー定義ファイルを保持しておき、処理フロー定義ファイルをもとに、ＵＩ（User Interface）として処理フローを実行するためのボタンを表示する。ユーザにより、このボタンが押下されると、画像処理装置は、処理フロー定義ファイルを解析し、処理フロー定義ファイルに定義された処理フローの実行を開始する。
処理フロー定義ファイルには、処理フローの公開先としてユーザに共有の「共有」であるのか、ユーザに固有の「ユーザ個人」であるのかを指定すること（定義）が可能である。画像処理装置は、この定義を解析し、あるユーザがログインした際には、公開先が「共有」である処理フローと、公開先がログインしたユーザに固有の「ユーザ個人」である処理フローとを実行するためのボタンだけをＵＩに表示するように制御する。
【０００４】
本明細書では、公開先が「共有」である処理フローを共有処理フローと称する。公開先が「ユーザ個人」である処理フローについてはユーザが専有することから、当該処理フローを専有処理フローと称する。共有処理フロー及び専有処理フローの使われ方の１つとして次のような使われ方がある。
管理者が、予めユーザがよく使うであろう設定項目の指定を行い、共有処理フローとして登録する。ユーザは、共有処理フローで指定されている設定項目の中で、カスタマイズが必要な一部の設定項目の設定値を変更して専有処理フローとして登録する。例えば、ファイルを送信する送信先を自分のメールアドレスに変更する、といったことである。これにより、ユーザは、一部の設定値を変更するだけで、所望の専有処理フローを作成することができる。
【０００５】
しかしながら、ユーザがこのように一部の設定値を変更するだけであったとしても操作が複雑であるといった操作性の問題がある。例えば、ユーザがファイルを送信する送信先を変更するための操作は、次のようになる。
ユーザは、共有処理フローの編集画面のトップ画面を開く。次に、ユーザは、どのタスクを変更するかを選択する。本例であると、「送信」タスクを選択する。次に、「送信」タスクのどの設定項目を変更するかを選択する。本例であると「電子メールアドレス」を選択する。そして、ユーザは、自分のメールアドレスを入力し、専有処理フローを登録する。このように、ユーザは、一部の設定値を変更するだけでも、多くの操作をする必要がある。
【０００６】
一方、近年では、これまでの処理フローに加えて処理フローのテンプレート定義ファイルを扱う新しい処理フローアプリケーションが提供されている。処理フローのテンプレート定義ファイルとは、処理フローの定義に加えてどの設定項目を変更するかを定義として含む。処理フローのテンプレート定義ファイルについては、例えば管理者が、ユースケースごとに新しい処理フローアプリケーションにプリセットしておく。
そして、新しい処理フローアプリケーションを組み込んだ画像処理装置では、ユーザは、テンプレート定義ファイルから処理フロー定義ファイルの作成を行うことができる。新しい処理フローアプリケーションを組み込んだ画像処理装置は、処理フロー定義ファイルの生成の指示を受け付けると、テンプレート定義ファイルで指定されている設定項目の設定画面だけを表示する。これにより、前述したような設定値を変更するためにタスクを選択するなどといった操作の必要がなくなり、操作の手順が少なくなるので、操作性が向上する。
【０００７】
また、これまでの処理フローアプリケーションが組み込まれた画像処理装置から、新しい処理フローアプリケーションが組み込まれた画像処理装置に、処理フロー定義ファイルを送信することが可能である。
しかしながら、共有処理フロー及び専有処理フローの使われ方の１つとして上述したような管理者が用意した共有処理フローの処理フロー定義ファイルは、テンプレート定義ファイルのように使われてはいるが、テンプレート定義ファイルではない。そのため、新しい処理フローアプリケーションであったとしても、共有処理フローの一部の設定項目の設定値を変更して専有処理フローを利用したい場合、ユーザはこれまで通り複雑な操作をしなければならない。
【０００８】
ここで、テンプレートを自動で生成する方法が開示されている（特許文献１参照）。特許文献１では、複数のページの構成要素の位置情報が比較され、位置情報が近い構成要素があったと判断された場合、そのレイアウトがテンプレート化される。
また、ユーザの操作履歴からジョブテンプレート定義情報を生成する方法が開示されている（特許文献２参照）。特許文献２では、ユーザの操作履歴が記憶され、一定のタイミングで操作の頻度からジョブテンプレート定義情報が生成される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００１−３１２４９０号公報
【特許文献２】特開２００８−２１０３８３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献１のシステムは、複数のページの構成要素の位置情報を比較することで、レイアウトをテンプレート化しているが、処理フローのテンプレート定義ファイルの生成に適用できるものではない。また、特許文献２の装置は、操作の頻度からジョブテンプレート定義情報を生成しているが、ジョブテンプレート定義情報には、処理フローのテンプレート定義ファイルのように、どの設定項目を変更するかという定義までは含まれていない。
【００１１】
本発明はこのような問題点に鑑みなされたもので、一連の処理についての設定項目の設定値をより適切に受け付けることを目的とする。
【課題を解決するための手段】
【００１２】
そこで、本発明に係る画像処理装置は、一連の処理を実行するためのユーザの操作に従い、前記一連の処理を定義する定義ファイルに含まれる設定項目とその値に基づき、前記一連の処理を実行する画像処理装置であって、ユーザごとの固有の設定を含む固有の定義ファイルと、ユーザごとの固有の設定を含まない共通の定義ファイルとを含む複数の定義ファイルを受信する受信手段と、前記受信した複数の定義ファイルの中で、同じ設定項目を含む固有の定義ファイルと共通の定義ファイルについて、それぞれで設定値が異なる設定項目を特定する特定手段と、前記特定された設定項目を示す情報を用いて、前記共通の定義ファイルに基づいてテンプレートファイルを生成する生成手段と、前記生成されたテンプレートファイルを記憶部に記憶する制御を行う制御手段と、前記テンプレートファイルを用いて新たに定義ファイルが生成される際には、ユーザに対して、前記特定された設定項目の設定値を受け付けるユーザインターフェースを、表示部を介して提供する提供手段とを有することを特徴とする。
【００１３】
また、本発明は、制御方法、プログラムなどとしてもよい。
【発明の効果】
【００１４】
本発明によれば、一連の処理についての設定項目の設定値をより適切に受け付けることができる。
【図面の簡単な説明】
【００１５】
【図１】システムの構成の一例を示す図である。
【図２】ＭＦＰのハードウェアの構成の一例を示す図である。
【図３】ＭＦＰのソフトウェアの構成の一例を示す図である。
【図４】定義ファイルの情報の一例を示す図である。
【図５】定義ファイルの一例を示す図である。
【図６】ＵＩの一例を示す図である。
【図７】生成時処理に係るフローチャートの一例を示す図である。
【図８】生成処理に係るフローチャートの一例を示す図である。
【図９】確認処理に係るフローチャートの一例を示す図である。
【図１０】ＵＩの一例を示す図である。
【図１１】生成時処理に係るフローチャートの一例を示す図である。
【図１２】ＵＩの一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について図面に基づいて説明する。なお、実施形態は、本発明を限定するものではなく、また、実施形態で説明されている全ての構成が本発明の課題を解決するための手段に必須であるとは限らない。
【００１７】
＜第１の実施形態＞
まず、第１の実施形態について説明する。
（システムの構成）
図１は、本実施形態に係るシステムの構成の一例（画像処理システム）を示す図である。図１に示すように、画像処理装置の一例であるＭＦＰ１１０及びＭＦＰ１２０は、イーサネット（登録商標）等からなるＬＡＮ１００に接続されている。なお、本実施形態では、ＭＦＰ１１０及びＭＦＰ１２０を特に区別しなくてもよい場合は、単にＭＦＰと称する。
【００１８】
ＭＦＰは、コピー機能を有する。また、ＭＦＰは、原稿上の画像を読み取り、読み取って得られた画像データ（テキストデータ等であってもよい。）を、ＦＴＰプロトコル、ＳＭＢプロトコル等を用いてＬＡＮ１００上の指定した装置に送信するデータ送信機能を有する。また、ＭＦＰは、各種のデータ（画像データ、テキストデータ、文書データ等）を添付ファイルとしてＥメールを生成し、Ｅメールサーバ（図示せず。）を利用してＥメールを送信することができる。
ただし、本実施形態では、上述した装置の数に限られることはない。また、本実施形態では、接続方法としてＬＡＮ１００を適用しているが、ＬＡＮ１００に限られるものではない。例えば、ＷＡＮ（公衆回線）等の任意のネットワーク、ＵＳＢ等のシリアル伝送方式、セントロニクス、ＳＣＳＩ等のパラレル伝送方式等も適用可能である。
【００１９】
（ＭＦＰのハードウェアの構成）
図２は、ＭＦＰ１１０及びＭＦＰ１２０のハードウェアの構成の一例を示す図である。ＭＦＰは、構成要素として、画像入力デバイスであるスキャナ部１１２、画像出力デバイスであるプリンタ部１１３、ＭＦＰの制御を司るコントローラ２００、及び操作部１１１を含んで構成される。
スキャナ部１１２は、原稿上の画像を読み取って画像データを生成するデバイスである。なお、原稿は原稿フィーダにセットされ、コントローラ２００からスキャナ部１１２に原稿の読み取り指示が与えられる。スキャナ部１１２は、この指示を受けると、原稿フィーダから原稿を１枚ずつフィードし、原稿の読み取り動作を行う。原稿の読み取り方法については、原稿フィーダによる自動送り方式に限定されるものではなく、原稿をガラス面上に載置して露光部を移動させることで原稿の走査を行う方法などであってもよい（図示せず。）。
【００２０】
プリンタ部１１３は、コントローラ２００から受け取った画像データを用紙等の記録媒体上に画像として形成する画像形成デバイスである。なお、本実施形態では、画像形成方式については、感光体ドラム、感光体ベルト等を用いた電子写真方式に限定されるものではなく、インクジェット方式等であってもよい。
コントローラ２００は、操作部１１１、スキャナ部１１２、プリンタ部１１３と電気的に接続されている。また、コントローラ２００は、ＮｅｔｗｏｒｋＩ／Ｆ２０６を介してＬＡＮ１００に接続されている。即ち、コントローラ２００は、ＬＡＮ１００を経由して他の装置（外部装置）と接続されている。これにより、ＭＦＰは、ＨＴＴＰプロトコル等による通信が可能となっている。
【００２１】
ＣＰＵ２０１は、ＲＯＭ２０２に記憶されたプログラム等に基づいて、接続中の各種のデバイスへのアクセス及び他のデバイスからのアクセスを統括的に制御する。また、ＣＰＵ２０１は、コントローラ２００内部で行われる各種の処理についても統括的に制御する。ＲＯＭ２０２は、各種の情報を記憶する。ＲＯＭ２０２には、ＭＦＰの機能、及び後述のフローチャートの処理を実現するためのプログラムが記憶されている。また、ＲＯＭ２０２には、装置のブートプログラムが格納されている。
ＲＡＭ２０３は、ＣＰＵ２０１が動作するためのシステムワークメモリであり、かつ、画像データ等を一時記憶するためのメモリでもある。ＲＡＭ２０３は、電源のバックアップ等により記憶した内容を装置本体の電源オフ後も保持しておく領域と、電源オフ後には記憶した内容が消去されてしまう領域と、により構成されている。ＨＤＤ２０４は、ハードディスクドライブであり、各種の処理で用いられる各種のデータ（後述の定義ファイル、後述の管理リスト等）を格納することが可能となっている。なお、ＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４は、各種の情報を記憶する記憶部の一例である。
【００２２】
操作部Ｉ／Ｆ２０５は、システムバス２１１と操作部１１１とを接続するためのインターフェース部である。操作部Ｉ／Ｆ２０５は、表示部の一例である操作部１１１に表示するための画像データをシステムバス２１１から受け取って操作部１１１に出力すると共に、操作部１１１から入力された情報をシステムバス２１１に出力する。ＮｅｔｗｏｒｋＩ／Ｆ２０６は、ＬＡＮ１００及びシステムバス２１１に接続され、情報の入出力を行う。
スキャナＩ／Ｆ２０７は、スキャナ部１１２から受け取った画像データに対して、補正、加工、及び編集を行う。なお、スキャナＩ／Ｆ２０７は、受け取った画像データがカラー原稿であるか、白黒原稿であるか、文字原稿であるか、写真原稿であるか等を判定する機能を有する。
【００２３】
画像形成部２０８は、画像データの方向変換、画像圧縮、伸張処理等を行う。また、ＨＤＤ２０４に保存されている画像データ同士を合成して一枚の画像の画像データにすることが可能である。
プリンタＩ／Ｆ２０９は、画像形成部２０８から送られた画像データを受け取り、当該画像データに付随している属性データを参照し、当該画像データに画像形成を施す。画像形成後の画像データは、プリンタ部１１３に出力される。
なお、本実施形態では、ＭＦＰについては、ＵＩ（ユーザインターフェース）の表示を実行し、かつネットワークに接続されたＭＦＰとして説明したが、この構成に限られるものではない。本実施形態では、汎用スキャナ、汎用プリンタ、汎用ディスプレイ等が適宜に接続された汎用コンピュータ等、上述のＭＦＰとは異なる構成を有する画像処理装置（コンピュータ）であってもよい。
【００２４】
（ＭＦＰのソフトウェアの構成）
図３は、ＭＦＰ１１０及びＭＦＰ１２０のソフトウェア（処理部）の構成の一例を示す図である。ＭＦＰ１１０が有しているＨＤＤ２０４に記憶されているプログラムを、ＣＰＵ２０１がＲＡＭ２０３に読み出して実行することによって、ＭＦＰ１１０の処理部及び後述のフローチャートの処理が実現される（機能する）。ＭＦＰ１２０が有しているＨＤＤ２０４に記憶されているプログラムを、ＣＰＵ２０１がＲＡＭ２０３に読み出して実行することによって、ＭＦＰ１２０の処理部及び後述のフローチャートの処理が実現される（機能する）。
なお、ＭＦＰにおける処理部、後述するフローチャートに係る処理の一部、又は全部を専用のハードウェアを用いて構成してもよい。
ＭＦＰ１１０は、処理フローアプリケーション３００を有する。処理フローアプリケーション３００は、ＵＩ部３０１、処理フロー制御部３０２、処理フロー管理部３０３、タスク実行部３０４、及び通信部３０５を含んで構成される。
【００２５】
ＵＩ部３０１は、操作部Ｉ／Ｆ２０５を介して操作部１１１にＵＩを表示し、操作部１１１からのユーザの入力を処理する。例えば、ＵＩ部３０１は、処理フロー管理部３０３で管理されている処理フロー（一連の処理の流れ）の情報をもとに、処理フローを実行するためのボタンを操作部１１１に表示する。ＵＩ部３０１は、ユーザの操作部１１１の操作（ユーザ操作）によりボタンが押下されると、ボタンの押下を検知し、当該ボタンに対応付けられている処理フローの実行を処理フロー制御部３０２に指示する。
処理フロー制御部３０２は、処理フロー定義ファイルの解析を行う。より具体的には、処理フロー制御部３０２は、ＵＩ部３０１から処理フローの実行が指示されると、処理フロー管理部３０３を介して当該処理フローの処理フロー定義ファイルを取得する。そして、処理フロー制御部３０２は、取得した処理フロー定義ファイルの解析を行い、各タスクに分割する。更に、処理フロー制御部３０２は、各タスクを、処理フロー定義ファイルで指定されている順に実行するようにタスク実行部３０４に通知する。また、処理フロー制御部３０２は、通信部３０５から処理フロー定義ファイルを受け取り、処理フロー管理部３０３に処理フロー定義ファイルの登録を指示する。
【００２６】
処理フロー管理部３０３は、処理フロー定義ファイルをＨＤＤ２０４に格納して管理する。より具体的には、処理フロー管理部３０３は、処理フロー制御部３０２からの指示により、ＨＤＤ２０４に格納した処理フロー定義ファイルの読み出しや書き込み等を行う。
タスク実行部３０４は、処理フロー制御部３０２から渡されたタスクを実行する。タスク実行部３０４で実行するタスクとは、原稿のスキャン、文書データのプリント、文書データの送信（電子メール、ファクス、ファイル等）、文書データのディスクへの保存（ＭＦＰ１１０内外のハードディスクへの保存）等である。
通信部３０５は、ＮｅｔｗｏｒｋＩ／Ｆ２０６を介して、ＭＦＰ１２０の通信部３５５と通信を行う。通信部３０５は、ＭＦＰ１２０の通信部３５５に対して処理フロー定義ファイルを送信する。また、通信部３０５は、ＭＦＰ１２０の通信部３５５から処理フロー定義ファイルを受信して処理フロー制御部３０２に渡す。
【００２７】
ＭＦＰ１２０は、処理フローアプリケーション３５０を有する。処理フローアプリケーション３５０では、処理フローアプリケーション３００が扱う処理フロー定義ファイルに加えて処理フローのテンプレート定義ファイルを扱うことが可能である。処理フローのテンプレート定義ファイルについては後述する。以下では、処理フローのテンプレート定義ファイルを単にテンプレートと称する。なお、プンプレートは、処理フロー定義ファイルの生成などに用いられる定型処理情報の一例である。
処理フローアプリケーション３５０は、ＵＩ部３５１、処理フロー制御部３５２、処理フロー管理部３５３、タスク実行部３５４、通信部３５５、テンプレート制御部３５６、及びテンプレート管理部３５７を含んで構成される。
【００２８】
ＵＩ部３５１は、操作部Ｉ／Ｆ２０５を介して操作部１１１にＵＩを表示し、操作部１１１からのユーザの入力を処理する。例えば、ＵＩ部３５１は、処理フロー管理部３５３で管理されている処理フロー定義ファイルの情報をもとに、処理フローを実行するためのボタンを操作部１１１に表示する。ＵＩ部３０１は、ユーザ操作によりボタンが押下されると、ボタンの押下を検知し、当該ボタンに対応付けられている処理フローの実行を処理フロー制御部３０２に指示する。
また、例えば、ＵＩ部３５１は、テンプレート管理部３５７で管理されているテンプレートの情報をもとに、テンプレートから処理フロー定義ファイルをユーザが作成するためのボタンを操作部１１１に表示する。ＵＩ部３５１は、ユーザ操作によりボタンが押下されると、ボタンの押下を検知し、当該ボタンに対応付けられているテンプレートをもとにした処理フロー定義ファイルの生成をテンプレート制御部３５６に指示する。
【００２９】
処理フロー制御部３５２は、処理フロー定義ファイルの解析を行う。より具体的には、処理フロー制御部３５２は、ＵＩ部３５１から処理フローの実行が指示されると、処理フロー管理部３５３を介して当該処理フローの処理フロー定義ファイルを取得する。そして、処理フロー制御部３５２は、取得した処理フロー定義ファイルの解析を行い、各タスクに分割する。更に、処理フロー制御部３５２は、各タスクを、処理フロー定義ファイルで指定されている順に実行するようにタスク実行部３５４に通知する。また、処理フロー制御部３５２は、通信部３５５から処理フロー定義ファイルを受け取り、処理フロー管理部３５３に処理フロー定義ファイルの登録を指示する。
処理フロー管理部３５３は、処理フロー定義ファイルをＨＤＤ２０４に格納して管理する。より具体的には、処理フロー管理部３５３は、処理フロー制御部３５２からの指示により、ＨＤＤ２０４に格納した処理フロー定義ファイルの読み出しや書き込み等を行う。
【００３０】
タスク実行部３５４は、処理フロー制御部３５２から渡されたタスクを実行する。タスク実行部３５４で実行するタスクとは、原稿のスキャン、文書データのプリント、文書データの送信（電子メール、ファクス、ファイル等）、文書データのディスクへの保存（ＭＦＰ１２０内外のハードディスクへの保存）等である。
通信部３５５は、ＮｅｔｗｏｒｋＩ／Ｆ２０６を介して、ＭＦＰ１１０の通信部３０５と通信を行う。通信部３５５は、ＭＦＰ１１０の通信部３０５に対して処理フロー定義ファイルを送信する。また、通信部３５５は、ＭＦＰ１２０の通信部３０５から処理フロー定義ファイルを受信して処理フロー制御部３５２に渡す。
【００３１】
テンプレート制御部３５６は、テンプレートの解析を行う。より具体的には、テンプレート制御部３５６は、ＵＩ部３５１からテンプレートを用いた処理フロー定義ファイルの生成が指示されると、テンプレート管理部３５７を介して当該テンプレートを取得する。そして、テンプレート制御部３５６は、取得したテンプレートの解析を行い、表示すべき設定画面とその順序を決定する。
テンプレート制御部３５６は、表示すべき設定画面を表示するようにＵＩ部３５１に依頼する。テンプレート制御部３５６は、ＵＩ部３５１からユーザが入力した設定値が通知されると、当該設定値を一時的に保持し、次の設定画面を表示するようにＵＩ部３５１に依頼する。表示すべき設定画面の表示を全て完了すると、テンプレート制御部３５６は、テンプレートと一時的に保持したユーザの設定値とから処理フロー定義ファイルを生成し、処理フロー制御部３５２に処理フロー定義ファイルの登録を指示する。
テンプレート管理部３５７は、テンプレートをＨＤＤ２０４に格納して管理する。より具体的には、テンプレート管理部３５７は、テンプレート制御部３５６からの指示により、ＨＤＤ２０４に格納したテンプレートの読み出しや書き込み等を行う。
【００３２】
図４は、図３で示した各管理部が管理する定義ファイルの情報の一例（管理リスト）を示す図である。本実施形態では、管理リストとしては、テーブル形式のデータ構造を用いているが、これに限られるものではなく、ＣＳＶ形式、ＸＭＬ形式等のテキストファイル等であってもよい。
処理フロー管理リスト４００は、処理フロー管理部３０３での処理フロー定義ファイルの管理に用いられるリストである。処理フロー管理リスト４００は、カラム４０１からカラム４０４までの４つのカラムで構成されている。処理フロー管理リスト４００では、１つのレコードが１つの処理フロー定義ファイルの管理に用いられる。
【００３３】
カラム４０１は、処理フロー定義ファイルの名称（処理フロー名）を示す。レコード４０５の処理フロー名は、「ＰＤＦで電子メール送信」である。カラム４０２は、処理フローＩＤを示す。処理フローＩＤは、処理フロー定義ファイルを一意に識別するための識別子である。レコード４０５の処理フローＩＤは、「ｆｌｏｗ＿４０１」である。
カラム４０３は、処理フロー定義ファイルの公開先を示す。レコード４０５の公開先は、「共有」であるので、レコード４０５で管理される処理フロー定義ファイルの処理フローは、共有処理フローである。カラム４０４は、処理フロー定義ファイルのファイル名（アドレス等であってもよい。）を示す。処理フロー定義ファイルについては図５（Ａ）を用いて後述する。
【００３４】
処理フロー管理リスト４３０は、処理フロー管理部３５３での処理フロー定義ファイルの管理に用いられるリストである。処理フロー管理リスト４３０では、１つのレコードが１つの処理フロー定義ファイルの管理に用いられる。処理フロー管理リスト４３０は、処理フロー管理リスト４００のカラムの構成に加えてカラム４３１を有する。
カラム４３１は、処理フロー定義ファイルがどのテンプレートから生成されたかを示す。レコード４３２では、カラム４３１が「ｔｅｍｐ＿００１」であるので、レコード４３２の処理フロー定義ファイルがテンプレートＩＤが「ｔｅｍｐ＿００１」であるテンプレートから生成されたことを示す。
カラム４３１にテンプレートＩＤが格納されている場合、処理フロー定義ファイル及びテンプレートは紐づいている状態である（関連付けられている）。このように紐づいていることで、処理フローアプリケーション３５０は、処理フロー定義ファイルの編集の際に、紐づいているテンプレートで指定されている設定項目の設定値を変更するＵＩのみを表示することを可能としている。なお、処理フロー定義ファイル及びテンプレートが紐づいていない場合は、カラム４３１は空となる。
【００３５】
テンプレート管理リスト４６０は、テンプレート管理部３５７でのテンプレートの管理に用いられるリストである。テンプレート管理リスト４６０は、カラム４６１からカラム４６４までの４つのカラムで構成されている。
カラム４６１は、テンプレートの名称（テンプレート名）を示す。レコード４６５のテンプレート名は、「スキャン原稿をファクス送信」である。カラム４６２は、テンプレートＩＤを示す。テンプレートＩＤは、テンプレートを一意に識別するための識別子である。レコード４６５のテンプレートＩＤは、「ｔｅｍｐ＿００１」である。
カラム４６３は、テンプレートから処理フロー定義ファイルをユーザが作成するためのＵＩを表示するかどうか（ＵＩ表示の有無）を示す。レコード４６５のＵＩ表示は「表示」であるので、レコード４６５のテンプレートから処理フロー定義ファイルをユーザが作成するためのＵＩがＭＦＰ１２０の操作部１１１にボタンとして表示される。なお、カラム４６３が「非表示」である場合は、操作部１１１に当該ボタンが表示されないので、ユーザは当該ボタンのテンプレートから処理フロー定義ファイルを作成する操作を行うことはできない。
【００３６】
図５（Ａ）は、処理フロー定義ファイルの一例（処理フロー定義ファイル５００）を示す図である。処理フロー定義ファイル５００は、レコード４０５のファイル名「フロー４０１．ｘｍｌ」の処理定義ファイルである。本例では、処理フロー定義ファイルをＸＭＬ形式で表現するが、処理フロー定義ファイルについては、処理フローアプリケーションが処理できるフォーマットの形式を適宜採用できる。
タグ５０１は、「ＪｏｂＳｃｒｉｐｔ」タグであり、１つの処理フロー定義ファイルを示している。本タグ内には、処理フローに関する定義が設けられる。属性５０２は、「ｎａｍｅ」属性であり、処理フロー定義ファイルの名称（処理フロー名）を示している。本例では、処理フロー名は、「ＰＤＦで電子メール送信」である。
属性５０３は、「ｐｕｂｌｉｃ」属性であり、処理フロー定義ファイルの公開先を示している。本例では、公開先が「ｓｈａｒｅ（共有）」であり、当該処理フロー定義ファイルの処理フローが共有処理フローであることを示す。属性５０４は、「ｉｄ」属性であり、処理フロー定義ファイルのＩＤ（フローＩＤ）を示している。本例では、フローＩＤは、「ｆｌｏｗ＿４０１」である。
【００３７】
タグ５０５は、「Ｓｃａｎ」タグであり、スキャンに関するタスクであることを示している。本タグ内にスキャンに関するタスクの定義が設けられる。
タグ５０６は、「ＤｏｃｕｍｅｎｔＳｉｚｅ」タグであり、スキャンする原稿のサイズを指定する設定項目であることを示している。本タグ内には、スキャンする原稿のサイズの設定値が設けられる。処理フロー定義ファイル５００では、原稿のサイズを指定せずに自動でスキャンすることを示す「ＡＵＴＯ」が設定値として設けられている。
タグ５０７は、「ＣｏｌｏｒＭｏｄｅ」タグであり、原稿をスキャンする際のカラーを指定する設定項目であることを示している。本タグ内には、原稿をスキャンする際のカラーの設定値が設けられる。処理フロー定義ファイル５００では、フルカラーでスキャンすることを示す「ＦｕｌｌＣｏｌｏｒ」が設定値として設けられている。
【００３８】
タグ５０８は、「Ｒｅｓｏｌｕｔｉｏｎ」タグであり、原稿をスキャンする際の解像度を指定する設定項目であることを示している。本タグ内には、原稿をスキャンする際の解像度の設定値が設けられる。処理フロー定義ファイル５００では、６００×６００の解像度でスキャンすることを示す「６００×６００」が設定値として設けられている。
タグ５０９は、「ＣｏｐｙＲａｔｉｏ」タグであり、原稿をスキャンする際の倍率を指定する設定項目であることを示している。本タグ内には、原稿をスキャンする際の倍率の設定値が設けられる。処理フロー定義ファイル５００では、倍率が１００％であることを示す「１００」が設定値として設けられている。
【００３９】
タグ５１０は、「Ｓｅｎｄ」タグであり、送信に関するタスクであることを示している。本タグ内には、送信に関するタスクの定義が設けられる。
タグ５１１は、「ＥｍａｉｌＡｄｄｒｅｓｓ」タグであり、送信先として電子メールの宛先を指定する設定項目であることを示している。本タグ内には、電子メールの宛先の設定値が設けられる。処理フロー定義ファイル５００では、電子メールアドレスがａａａ＠ｃｏ.ｊｐである宛先に文書データを送信することを示す「ａａａ＠ｃｏ.ｊｐ」が設定値として設けられている。
【００４０】
タグ５１２は、「ＦｉｌｅＦｏｒｍａｔ」タグであり、送信する文書データのファイル形式を指定する設定項目であることを示している。本タグ内には、文書データのファイル形式の設定値が設けられる。処理フロー定義ファイル５００では、送信する文書データのファイル形式がＰＤＦであることを示す「ＰＤＦ」が設定値として設けられている。
タグ５１３は、「ＦｉｌｅＮａｍｅ」タグであり、送信する文書データの名称（文書名）を指定する設定項目であることを示している。本タグ内には、文書データの文書名の設定値が設けられる。処理フロー定義ファイル５００では、送信する文書データの文書名がｔｅｓｔであることを示す「ｔｅｓｔ」が設定値として設けられている。
【００４１】
図５（Ｂ）は、テンプレートの一例（テンプレート５５０）を示す図である。テンプレート５５０は、レコード４６５のファイル名「テンプレート００１．ｘｍｌ」のテンプレートである。本例では、テンプレートをＸＭＬ形式で表現するが、テンプレートについては、処理フローアプリケーションが処理できるフォーマットの形式を適宜採用できる。
タグ５５１は、「Ｔｅｍｐｌａｔｅ」タグであり、１つのテンプレートを示している。本タグ内には、テンプレートに関する定義が設けられる。属性５５２は、「ｉｄ」属性であり、テンプレートＩＤを示している。本例では、テンプレートＩＤは、「ｔｅｍｐ＿００１」である。
【００４２】
タグ５５３は、「ＴｅｍｐｌａｔｅＮａｍｅ」タグであり、テンプレート名を示している。本例では、テンプレート名は、「スキャン原稿をファクス送信」である。
タグ５５４は、「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグであり、テンプレートから処理フロー定義ファイルを生成する際に、設定画面を表示する設定項目を示している。テンプレート５５０では、ファクス宛先及びパスワードの設定項目を入力する設定画面を表示することを示す「ＦａｘＡｄｄｒｅｓｓ，Ｐａｓｓ」が設定値として設けられている。処理フローアプリケーション３５０は、タグ（タグ５５４）を解析することで、表示すべき設定項目（設定画面）を決定する。
【００４３】
タグ５５５は、「ＪｏｂＳｃｒｉｐｔ」タグである。本タグ内には、処理フローに関する定義が設けられる。なお、ＭＦＰ１２０は、テンプレートから処理フロー定義ファイルを生成する場合、本タグ内の設定値と設定画面から入力された設定値とから処理フロー定義ファイルを生成する。
タグ５５６は、「ＦａｘＡｄｄｒｅｓｓ」タグであり、文書データの送信先としてファクスの宛先を指定する設定項目であることを示している。テンプレート５５０では、設定値は空であり、ファクスの宛先については指定されていないことを示している。このようにテンプレートでは、設定値が欠けている状態でもよい。これは、タグ５５４によりファクスの宛先の設定項目の設定値を入力するように指定されるので、テンプレートを選択した後にユーザが指定することができるからである。
【００４４】
タグ５５７は、「Ｐａｓｓ」タグであり、ファクスで送信する際のパスワードを指定する設定項目であることを示している。テンプレート５５０では、設定値は空であり、ファクスで送信する際のパスワードについては指定されていないことを示している。
本実施形態では、タグ５５４で指定された設定項目の設定値を空としたが、設定値（テンプレートのもとにした共有処理フローの処理定義ファイルの設定項目の設定値等）が入っていてもよい。
【００４５】
（処理フロー定義ファイルの送信処理）
まず、ＭＦＰ１１０は、操作部１１１にログイン認証画面を表示する（図示せず。）。ＭＦＰ１１０は、ログイン認証画面におけるユーザ操作により、ログイン処理を受け付けると、処理フローアプリケーション３００のＵＩ部３０１は、処理フローアプリケーション３００のＵＩ（例えば図６の操作画面６００）を表示する。
このとき、ＵＩ部３０１は、共有処理フローの処理フロー定義ファイルの情報とログインしたユーザの専有処理フローの処理フロー定義ファイルの情報とを、処理フロー制御部３０２及び処理フロー管理部３０３を介して取得する。共有処理フローの処理フロー定義ファイルは、ユーザに共通の共通処理情報の一例であり、専有処理フローの処理フロー定義ファイルは、ユーザに固有の固有処理情報の一例である。ＵＩ部３０１は、取得した情報から、共有処理フローの実行を指示するボタン（共有処理フローのボタン）、専有処理フローの実行を指示するボタン（専有処理フローのボタン）等を生成し、生成したボタン等を操作部１１１に表示する。
【００４６】
図６は、処理フローアプリケーション３００のＵＩの一例（操作画面６００）を示す図である。タブページ６０１は、共有処理フローのボタンを表示するためのタブページである。図６は、共有処理フローのボタンが表示されている状態である。タブページ６０２は、専有処理フローのボタンを表示するためのタブページである。
ボタン６０３は、共有処理フローを実行するためのボタンである。ＵＩ部３０１は、ユーザ操作によりボタン６０３が押下されたことを検知すると、ボタン６０３の処理フロー（本例では、処理フロー管理リスト４００のレコード４０５の処理フロー）の実行を、処理フロー制御部３０２に指示する。ボタン６０４は、処理フローアプリケーション３００が保持している処理フロー定義ファイルを他のＭＦＰに送信するためのボタンである。
【００４７】
図７は、ＭＦＰ１１０からＭＦＰ１２０に処理フロー定義ファイルを送信してテンプレートを生成する処理（生成時処理）に係るフローチャートの一例を示す図である。
例えば、操作画面６００のボタン６０４がユーザに押下されると、ＵＩ部３０１は、処理フロー定義ファイルを送信する宛先の設定値を入力するＵＩ、及び送信する処理フロー定義ファイルを指定するＵＩを表示する（図示せず。）。入力および指定がなされた後、ＵＩ部３０１は、処理フロー定義ファイルの送信の指示を受け付ける。
なお、本例では、送信先としてＭＦＰ１２０の識別子が入力され、全ての処理フロー定義ファイルが指定された場合について説明する。ここで、ＭＦＰ１２０の識別子としては、ＩＰアドレス、ＭＦＰ１２０が公開する処理フロー定義ファイルを受信するＷｅｂサービスのアドレスなど、ＭＦＰ１２０に処理フロー定義ファイルを送信するための識別子を適宜採用できる。
【００４８】
Ｓ７０１からＳ７０３までの処理は、ＭＦＰ１１０における処理である。
Ｓ７０１で、ＵＩ部３０１は、処理フロー定義ファイルを送信するためのボタンがユーザにより押下されたかを監視する。ＵＩ部３０１は、押下されたと判断した場合、処理フロー定義ファイルの送信の指示を受け付け、処理フロー制御部３０２に処理フロー定義ファイルの送信を指示し、Ｓ７０２に処理を移す。他方、ＵＩ部３０１は、押下されていないと判断した場合、監視を続ける。
Ｓ７０２で、通信部３０５は、ＭＦＰ１２０の通信部３０５に、指定された全ての処理フロー定義ファイルを送信する。より具体的には、まず処理フロー制御部３０２は、ＵＩ部３０１からＵＩで指定された送信先であるＭＦＰ１２０の識別子、及び送信する処理フローＩＤを受け取る。そして、処理フロー制御部３０２は、処理フロー管理部３０３を介して処理フローＩＤにより識別される処理フロー定義ファイルを読み出し、通信部３０５に送信先と処理フロー定義ファイルとを渡す。通信部３０５は、処理フロー制御部３０２から渡された処理フロー定義ファイルを送信先に送信する。
【００４９】
Ｓ７０３で、通信部３０５は、ＭＦＰ１２０の通信部３５５からの受信通知を受信したかを監視する。通信部３０５は、受信通知を受信したと判断した場合、処理を終了する。他方、通信部３０５は、受信通知を受信していないと判断した場合、監視を続ける。
なお、本例では、通信部３０５が受信通知を受信したか否かを判断しているだけであるが、通信部３０５が受信通知を受信した後、ＵＩ部３０１は、送信完了画面を操作部１１１に表示するように構成してもよい。また、通信部３０５は、送信エラーなども受信するように構成してもよい。
【００５０】
Ｓ７５１からＳ７５６までの処理は、ＭＦＰ１２０における処理である。
Ｓ７５１で、通信部３５５は、処理フロー定義ファイルを全て受信したかを監視する。通信部３５５は、処理フロー定義ファイルの受信が完了したと判断した場合、処理フロー定義ファイルの登録を処理フロー制御部３５２に依頼する。そして処理フロー制御部３５２は、受信した全ての処理フロー定義ファイルを、テンプレートを生成するための対象の処理フロー定義ファイルとして、テンプレート制御部３５６にテンプレートの生成を指示し、Ｓ７５２に処理を移す。他方、通信部３５５は、処理フロー定義ファイルの受信が完了していないと判断した場合、監視を続ける。
Ｓ７５２で、テンプレート制御部３５６は、テンプレートを生成するための対象の処理フロー定義ファイルをもとにテンプレートを生成し、Ｓ７５３に処理を移す。テンプレートを生成するＳ７５２の処理（テンプレート定義ファイルの生成処理）については図８のフローチャートを用いて後述する。
【００５１】
Ｓ７５３で、処理フロー制御部３５２は、受信した処理フロー定義ファイルを処理フロー管理部３５３に登録を依頼する。処理フロー管理部３５３は、処理フロー管理リスト４３０に受信した処理フロー定義ファイルを全て登録する。登録後の処理フロー管理リスト４３０については図示しないが、本例では処理フロー管理リスト４００で管理されている処理フロー定義ファイルの情報全てが処理フロー管理リスト４３０に追加される（管理される状態となる）。このとき、追加されたレコードのカラム４３１は空となる。処理フロー制御部３５２は、登録が完了したことを通信部３５５に通知し、Ｓ７５４に処理を移す。
Ｓ７５４で、通信部３５５は、処理フロー定義ファイルの受信が完了したことをＭＦＰ１１０の通信部３０５に通知し、Ｓ７５５に処理を移す。Ｓ７５５で、テンプレート制御部３５６は、Ｓ７５２でテンプレートを生成したかを判断する。テンプレート制御部３５６は、テンプレートを生成した場合、Ｓ７５６に処理を移し、他方、テンプレートを生成しなかった場合、処理を終了する。
Ｓ７５６で、通信部３５５は、管理者の電子メールアドレス（予め指定された通知先の一例）にテンプレートが生成されたことを通知し、処理を終了する。このように管理者に通知することで、管理者は、テンプレートが生成されたことを知ることができる。
【００５２】
図８は、処理フロー定義ファイルからテンプレートを生成する処理（生成処理）に係るフローチャートの一例を示す図である。図８は、Ｓ７５２の処理の一例を示すものである。
Ｓ８０１で、テンプレート制御部３５６は、テンプレートを生成するための対象の処理フロー定義ファイルの処理フローの中の共有処理フローの数だけ、Ｓ８０２からＳ８１１又はＳ８１２までの処理を繰り返す。テンプレート制御部３５６は、対象の処理フロー定義ファイルが共有処理フローのものであるか、専有処理フローのものであるかは、例えば図５で説明した処理フロー定義ファイル５００の属性５０３から判断する。
Ｓ８０２で、テンプレート制御部３５６は、処理対象の共有処理フローの処理フロー定義ファイルからテンプレートを生成することを示すフラグ（生成フラグ）を一時的に保持する。この際、テンプレートを生成しないことを示す「ｆａｌｓｅ」で生成フラグを初期化する。そして、テンプレート制御部３５６は、Ｓ８０３に処理を移す。
【００５３】
Ｓ８０３で、テンプレート制御部３５６は、テンプレートを生成するための対象の処理フロー定義ファイルの処理フローの中の専有処理フロー数だけ、Ｓ８０４からＳ８０７までの処理を繰り返す。
Ｓ８０４で、テンプレート制御部３５６は、共有処理フローの処理フロー定義ファイルの設定項目と専有処理フローの処理フロー定義ファイルの設定項目とが同じであるかを比較する。設定項目が同じであるかは、処理フロー定義ファイル５００を例にすると、設定項目を示すタグ５０５からタグ５１３までの全てのタグが同じであるかで判断する。テンプレート制御部３５６は、設定項目が同じであると判断した場合、Ｓ８０５に処理を移し、他方、設定項目が同じでないと判断した場合、Ｓ８０３の繰り返しの終端に処理を移す。
【００５４】
Ｓ８０５で、テンプレート制御部３５６は、共有処理フローの処理フロー定義ファイル及び専有処理フローの処理フロー定義ファイルで設定値が異なる設定項目を探す。処理フロー定義ファイル５００のタグ５１１を例にすると、比較対象の専有処理フローの「ＥｍａｉｌＡｄｄｒｅｓｓ」タグ内に設けられている設定値が「ａａａ＠ｃｏ.ｊｐ」と異なる場合、設定値が異なると判断する。また、処理フロー定義ファイル５００である場合、テンプレート制御部３５６は、タグ５０５からタグ５１３までの全てにおいて設定値の比較を行う。
テンプレート制御部３５６は、設定値が異なる設定項目があったと判断した場合、Ｓ８０６に処理を移し、他方、設定値が全て同じあると判断した場合、Ｓ８０３の繰り返しの終端に処理を移す。
Ｓ８０６で、テンプレート制御部３５６は、Ｓ８０５で探し出した設定値が異なる設定項目を示す情報を一時的に記憶し、Ｓ８０７に処理を移す。Ｓ８０７で、テンプレート制御部３５６は、生成フラグを、テンプレートを生成することを表す「ｔｒｕｅ」として記憶する。そして、テンプレート制御部３５６は、処理対象の共有処理フローについて、専有処理フローの数だけ繰り返しが終わっていないと判断した場合、Ｓ８０４に処理を移す。他方、テンプレート制御部３５６は、専有処理フローの数だけ繰り返しが終了していると判断した場合、Ｓ８０８に処理を移す。
【００５５】
Ｓ８０８で、テンプレート制御部３５６は、生成フラグをチェックする。テンプレート制御部３５６は、生成フラグが「ｔｒｕｅ」である場合、Ｓ８０９に処理を移し、他方、生成フラグが「ｆａｌｓｅ」である場合、Ｓ８０１の繰り返しの終端に処理を移す。終端では、テンプレート制御部３５６は、全ての共有処理フローについて処理が終わっていない（共有処理フローの数だけ繰り返しが終わっていない）と判断した場合、Ｓ８０２に処理を移し、終わっていると判断した場合、処理を終了する。
Ｓ８０９で、テンプレート制御部３５６は、テンプレートの生成を行い、Ｓ８１０に処理を移す。
【００５６】
テンプレート制御部３５６によるテンプレートの生成は、次のように行われる。テンプレート制御部３５６は、テンプレートの「ＪｏｂＳｃｒｉｐｔ」タグ内のタスクの定義（設定項目等）については、共有処理フローの処理フロー定義ファイルの「ＪｏｂＳｃｒｉｐｔ」タグ内のタスクの定義（設定項目等）とする。また、テンプレート制御部３５６は、テンプレートの「ＴｅｍｐｌａｔｅＮａｍｅ」タグ内の値については、共有処理フローの処理フロー定義ファイルの「ｎａｍｅ」属性の値とする。
また、テンプレート制御部３５６は、「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグ内の値については、Ｓ８０６で記憶した設定項目を示す情報とする。共有処理フローの処理フロー定義ファイルが処理フロー定義ファイル５００である場合を例に説明する。Ｓ８０６で記憶した設定項目を示す情報が、「ＥｍａｉｌＡｄｄｒｅｓｓ」及び「ＦｉｌｅＮａｍｅ」である場合、「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグ内の値は、「ＥｍａｉｌＡｄｄｒｅｓｓ，ＦｉｌｅＮａｍｅ」となる。
以上のように、テンプレート制御部３５６は、共有処理フローの処理フロー定義ファイルと、専有処理フローでは異なる設定値が用いられる設定項目を示す情報とをもとに、テンプレートの生成を行う。
【００５７】
Ｓ８１０で、テンプレート制御部３５６は、テンプレート管理部３５７で管理しているテンプレート管理リスト４６０を参照して、Ｓ８０９で生成したテンプレートと同じテンプレートが存在するか否かを判断する。
テンプレート制御部３５６は、存在しないと判断した場合、Ｓ８１１に処理を移し、他方、存在すると判断した場合、Ｓ８１２に処理を移す。本実施形態では、テンプレート制御部３５６は、テンプレートの「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグ内の値及び「ＪｏｂＳｃｒｉｐｔ」タグ内の値が全て同じである場合に、同じテンプレートであると判断する。
【００５８】
Ｓ８１１で、テンプレート制御部３５６は、生成したテンプレートについてテンプレート管理部３５７に登録を依頼する。この際、テンプレート制御部３５６は、カラム４６３の値は「非表示」で登録するように依頼する。「非表示」で登録するように依頼にする理由については後述する。テンプレート管理部３５７は、テンプレート制御部３５６から渡されたテンプレートのレコードをテンプレート管理リスト４６０に登録し、処理を終了する。
Ｓ８１２で、テンプレート制御部３５６は、Ｓ８０９で生成したテンプレートを削除し、処理を終了する。これにより、同じテンプレートが登録されないようになる。
【００５９】
（テンプレートの確認）
次に、処理フロー定義ファイルを受信してテンプレートが生成された後に、管理者がＭＦＰ１２０にログインした際の処理について、図９及び図１０を用いて説明する。まず、ＭＦＰ１２０は、操作部１１１にログイン認証画面を表示する（図示せず。）。ＭＦＰ１２０は、ログイン認証画面におけるユーザ操作により、ログイン処理を受け付けると、図９のＳ９０１の処理を開始する。
図９は、テンプレートが生成された後に管理者がＭＦＰ１２０にログインした際の処理（テンプレートの確認処理）に係るフローチャートの一例を示す図である。Ｓ９０１で、ＵＩ部３５１は、テンプレートが生成されたことを確認するためのＵＩ（例えば図１０（Ａ）の確認画面１０００）を表示する。
【００６０】
図１０（Ａ）は、Ｓ９０１で表示するテンプレートが生成されたことを確認するためのＵＩの一例（確認画面１０００）を示す図である。
ラベル１００１は、Ｓ８０９で生成されたテンプレートを示している。ボタン１００２は、テンプレートから処理フロー定義ファイルをユーザが作成する際に設定画面を表示する設定項目である「電子メールアドレス」を示す。ボタン１００２が押下されると、ボタン１００２は選択された状態となる。ボタン１００３は、テンプレートから処理フロー定義ファイルをユーザが作成する際に設定画面を表示する設定項目である「文書名」を示す。ボタン１００３が押下されると、ボタン１００３は選択された状態となる。
【００６１】
テンプレートから処理フロー定義ファイルをユーザが作成する際に設定画面を表示する設定項目を表すボタンは、テンプレートの「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグの値に設けられている設定項目を示す情報に対応して表示される。本例では、「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグの値として「ＥｍａｉｌＡｄｄｒｅｓｓ，ＦｉｌｅＮａｍｅ」が設けられている。よって、「ＥｍａｉｌＡｄｄｒｅｓｓ」に対応してボタン１００２が表示され、「ＦｉｌｅＮａｍｅ」に対応してボタン１００３が表示されている。
ボタン１００４は、テンプレートを使用することを指定するためのボタン（ＯＫボタン）である。ボタン１００５は、テンプレートは使用しないことを指定するためのボタン（キャンセルボタン）である。
【００６２】
図９に戻って説明を続ける。Ｓ９０２で、ＵＩ部３５１は、確認するためのＵＩにおいてＯＫボタン又はキャンセルボタンが押下されたか否かを検知する。より具体的には、ＵＩ部３５１は、ＯＫボタン又はキャンセルボタンが押下されたと判断した場合、Ｓ９０３に処理を移し、他方、ＯＫボタン及びキャンセルボタンの何れも押下されていないと判断した場合、監視を続ける。
Ｓ９０３で、ＵＩ部３５１は、押下されたボタンが、ＯＫボタン及びキャンセルボタンの何れのボタンであるかを判断する。ＵＩ部３５１は、ＯＫボタンが押下されたと判断した場合、Ｓ９０５に処理を移し、他方、キャンセルボタンが押下されたと判断した場合、Ｓ９０４に処理を移す。
Ｓ９０４で、テンプレート制御部３５６は、テンプレート管理部３５７にテンプレートの削除を依頼してテンプレートを削除する。より具体的には、テンプレート制御部３５６は、ＵＩ部３５１から削除すべきテンプレートＩＤを受け取る。そして、テンプレート制御部３５６は、テンプレートＩＤをテンプレート管理部３５７に渡し、テンプレート管理部３５７は、テンプレートＩＤで識別されるテンプレートのレコードをテンプレート管理リストから削除すると共に、当該テンプレートを削除する。これにより自動的に生成したテンプレートが管理者の所望するテンプレートでなかった場合にも削除することを可能としている。
【００６３】
Ｓ９０５で、テンプレート制御部３５６は、確認画面１０００で選択された設定項目ボタンに対応する設定項目を示す情報をテンプレートから削除し、Ｓ９０６に処理を移す。
例えば、ボタン１００３が選択された状態でボタン１００４が押下された場合、ＵＩ部３５１から、「文書名」がテンプレート制御部３５６に通知される。テンプレート制御部３５６は、テンプレートの「ＵｓｅｒＳｅｔｔｉｎｇＩｔｅｍ」タグの値から文書名を表す「ＦｉｌｅＮａｍｅ」を削除する。なお、ＨＤＤ２０４、プログラム等には、「文書名」及び「ＦｉｌｅＮａｍｅ」を対応付ける情報が予め設けられている。
これにより、管理者は、自動的にテンプレートが生成された後に、設定項目に設定値を入力するためのＵＩを表示するか否かを変更することが可能となる。
【００６４】
Ｓ９０６で、テンプレート制御部３５６は、テンプレート管理部３５７を介して、テンプレート管理リスト４６０のカラム４６３の値を「表示」に変更し、Ｓ９０７に処理を移す。テンプレートの生成時には「非表示」としておくことで、テンプレートを自動で生成した後に、テンプレートから処理フロー定義ファイルをユーザが作成するためのボタンがすぐには操作部１１１に表示されない。Ｓ９０６においてテンプレート管理リスト４６０のカラム４６３の値を「表示」に変更することにより、管理者がテンプレートを使用することを決めた時点で操作部１１１に当該ボタンを表示して利用可能としている。
Ｓ９０７で、ＵＩ部３５１は、テンプレートの生成に用いられた共有処理フローの処理フロー定義ファイルの削除を行うためのＵＩ（例えば図１０（Ｂ）の削除画面１０３０）を表示する。
【００６５】
図１０（Ｂ）は、Ｓ９０７で表示するテンプレートの生成に用いられた共有処理フローの処理フロー定義ファイルの削除を行うためのＵＩの一例（削除画面１０３０）を示す図である。
ラベル１０３１は、ラベル１００１で示したテンプレートが生成される際に用いられた（ベースとされた）処理フロー定義ファイルの共有処理フローを示している。ボタン１０３２は、共有処理フローの処理フロー定義ファイルを削除するためのボタン（ＯＫボタン）である。ボタン１０３３は、共有処理フローの処理フロー定義ファイルを削除しないためのボタン（キャンセルボタン）である。
【００６６】
再び図９に戻って説明を続ける。Ｓ９０８で、ＵＩ部３５１は、削除を行うためのＵＩにおいてＯＫボタン又はキャンセルボタンが押下されたか否かを検知する。より具体的には、ＵＩ部３５１は、ＯＫボタン又はキャンセルボタンが押下されたと判断した場合、Ｓ９０９に処理を移し、他方、ＯＫボタン及びキャンセルボタンの何れも押下されていないと判断した場合、監視を続ける。
Ｓ９０９で、ＵＩ部３５１は、押下されたボタンが、ＯＫボタン及びキャンセルボタンの何れのボタンであるかを判断する。ＵＩ部３５１は、ＯＫボタンが押下されたと判断した場合、Ｓ９１０に処理を移し、他方、キャンセルボタンが押下されたと判断した場合、Ｓ９１１に処理を移す。
Ｓ９１０で、処理フロー制御部３５２は、処理フロー管理部３５３を介して処理フロー管理リスト４３０から共有処理フローのレコードを削除すると共に、当該共有処理フローの処理フロー定義ファイルを削除し、Ｓ９１１に処理を移す。本例では、処理フロー制御部３５２は、フローＩＤが「ｆｌｏｗ＿４０１」である共有処理フローのレコードを処理フロー管理リスト４３０から削除し、フローＩＤが「ｆｌｏｗ＿４０１」である処理フロー定義ファイルを削除する。
Ｓ９１１で、ＵＩ部３５１は、テンプレート及び専有処理フローの処理フロー定義ファイルの紐づけを行うためのＵＩ（例えば図１０（Ｃ）の紐付画面１０６０）を表示する。
【００６７】
図１０（Ｃ）は、Ｓ９１１で表示するテンプレート、及び専有処理フローの処理フロー定義ファイルの紐づけを行うためのＵＩの一例（紐付画面１０６０）を示す図である。
ラベル１０６１は、Ｓ８０５で設定値の比較が行われた処理フロー定義ファイルの専有処理フローを示している。つまり、ラベル１０６１は、共有処理フローの処理フロー定義ファイルから生成された可能性が高い処理フロー定義ファイルの専有処理フローを示している。本例では、ラベル１０６１は、フローＩＤが「ｆｌｏｗ＿４０２」である処理フロー定義ファイルの専有処理フローを示している。
ボタン１０６２は、生成されたテンプレート、及びラベル１０６１で示す専有処理フローの処理フロー定義ファイルの紐づけを行うためのボタン（ＯＫボタン）である。ボタン１０６３は、生成されたテンプレート、及びラベル１０６１で示す専有処理フローの処理フロー定義ファイルの紐づけを行わないためのボタン（キャンセルボタン）である。
【００６８】
再び図９に戻って説明を続ける。Ｓ９１２で、ＵＩ部３５１は、紐づけを行うためのＵＩにおいてＯＫボタン又はキャンセルボタンが押下されたか否かを検知する。より具体的には、ＵＩ部３５１は、ＯＫボタン又はキャンセルボタンが押下されたと判断した場合、Ｓ９１３に処理を移し、他方、ＯＫボタン及びキャンセルボタンの何れも押下されていないと判断した場合、監視を続ける。
Ｓ９１３で、ＵＩ部３５１は、押下されたボタンが、ＯＫボタン及びキャンセルボタンの何れのボタンであるかを判断する。ＵＩ部３５１は、ＯＫボタンが押下されたと判断した場合、Ｓ９１４に処理を移し、他方、キャンセルボタンが押下されたと判断した場合、処理を終了する。
Ｓ９１４で、処理フロー制御部３５２は、処理フロー管理部３５３を介して、処理フロー管理リスト４３０のカラム４３１に、生成されたテンプレートのテンプレートＩＤを格納し、処理を終了する。本例では、処理フロー制御部３５２は、処理フロー管理リスト４３０のフローＩＤが「ｆｌｏｗ＿４０２」であるレコードのカラム４３１にテンプレートＩＤを格納する。このように紐づけておくことで、専有処理フローの処理フロー定義ファイルを編集する場合でも、紐づいているテンプレートと同じように、電子メールアドレスの設定画面だけを表示する、といったことが可能となる。
【００６９】
以上のように、処理フロー定義ファイルを受信したときにテンプレートのように使用されていた共有処理フローの処理フロー定義ファイルを探し出し、探し出した処理フロー定義ファイルをもとにテンプレートを自動的に生成する。
これにより、ユーザは、共有処理フローの処理フロー定義ファイルをもとに生成されたテンプレートから処理フロー定義ファイルを作成することが可能となる。即ち、テンプレートから作成する方が共有処理フローの処理フロー定義ファイルから作成するよりも操作の手順が少なくなるので、処理フロー定義ファイルを作成する際のユーザの負担が軽減される。
【００７０】
＜第２の実施形態＞
次に、第２の実施形態を説明する。第１の実施形態では、ＭＦＰ１１０からＭＦＰ１２０に対して処理フロー定義ファイルを送信してテンプレートを自動で生成する方法について説明した。本実施形態では、管理者の任意のタイミングでテンプレートを自動で生成する方法について説明する。
なお、本実施形態の構成は、基本的には第１の実施形態の構成と同じであるので、本実施形態では、第１の実施形態と異なる構成について主に説明する。
【００７１】
（テンプレートの生成）
本実施形態におけるテンプレートを自動で生成する際の処理について図１１及び図１２を用いて説明する。まず、ＭＦＰ１２０は、操作部１１１にログイン認証画面を表示する（図示せず。）。ＭＦＰ１２０は、ログイン認証画面におけるユーザ操作により、ログイン処理を受け付けると、図１１のＳ１１０１の処理を開始する。
図１１は、管理者からのテンプレートの作成の指示に基づいてテンプレートを生成（自動生成）する処理（生成時処理）に係るフローチャートの一例を示す図である。Ｓ１１０１で、ＵＩ部３５１は、処理フローアプリケーション３５０で提供される自動生成を行うためのＵＩ（例えば図１２のトップ画面１２００）を表示する。
【００７２】
図１２は、Ｓ１１０１で表示する自動生成を行うためのＵＩの一例（トップ画面１２００）を示す図である。タブページ１２０１は、テンプレートから処理フロー定義ファイルをユーザが作成するためのボタンを表示するタブページである。テンプレート管理リスト４６０にあるレコードに対応するボタンが表示される。図１２では、タブページ１２０１がアクティブになっており、ボタン１２０４が表示されている。
タブページ１２０２は、共有処理フローを実行するためのボタンを表示するタブページである。タブページ１２０３は、専有処理フローを実行するためのボタンを表示するタブページである。ボタン１２０４は、テンプレートから処理フロー定義ファイルをユーザが作成するためのボタンである。図１２では、テンプレート名が「スキャン原稿をファクス送信」であるレコード４６５のボタン１２０４を表示している。ボタン１２０５は、テンプレートの自動生成をユーザが実行するためのボタン（自動生成ボタン）である。
【００７３】
図１１に戻って説明を続ける。Ｓ１１０２で、ＵＩ部３５１は、自動生成を行うためのＵＩにおいて自動生成ボタンが押下されたかを監視する。ＵＩ部３５１は、自動生成ボタンが押下されたと判断した場合、Ｓ１１０３に処理を移し、他方、自動生成ボタンが押下されていないと判断した場合、監視を続ける。
Ｓ１１０３で、テンプレート制御部３５６は、テンプレートを生成してＳ１１０４に処理を移す。本処理は、図８で説明した処理と同じであるので、その説明を省略する。Ｓ１１０４で、テンプレート制御部３５６は、Ｓ１１０３でテンプレートを生成したか否かを判断する。テンプレート制御部３５６は、テンプレートを生成した場合、Ｓ１１０５に処理を移し、テンプレートを生成しなかった場合、Ｓ１１０６に処理を移す。
【００７４】
Ｓ１１０５で、処理フローアプリケーション３５０は、テンプレートの確認処理を行い、処理を終了する。本確認処理は、図９で説明した処理と同じであるので、その説明を省略する。
Ｓ１１０６で、ＵＩ部３５１は、テンプレートが生成されなかったことを操作部１１１に表示し、処理を終了する。
以上の構成によれば、管理者の任意のタイミングでテンプレートを自動的に生成することが可能となる。また、複数のＭＦＰから処理フロー定義ファイルを受信した後に、テンプレートを自動で生成することが可能となる。
【００７５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００７６】
上述した実施形態の構成によれば、一連の処理についての設定項目の設定値をより適切に受け付けることができる。
【００７７】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
0005875360.tif 000002
【図２】
0005875360.tif 000003
【図３】
0005875360.tif 000004
【図４】
0005875360.tif 000005
【図５】
0005875360.tif 000006
【図６】
0005875360.tif 000007
【図７】
0005875360.tif 000008
【図８】
0005875360.tif 000009
【図９】
0005875360.tif 000010
【図１０】
0005875360.tif 000011
【図１１】
0005875360.tif 000012
【図１２】
0005875360.tif 000013