(57)【特許請求の範囲】
【請求項１】
１または複数のジョブ処理装置にて処理される複数のジョブから構成されるワークフローの編集を受け付ける編集手段と、
前記１または複数のジョブ処理装置が処理したジョブの履歴情報を取得する取得手段と、
前記編集手段にて編集されたワークフローを構成する複数のジョブのうちの着目するジョブおよびその前もしくはその後ろの少なくとも一方のジョブとジョブ種の並びが同じである一連のジョブを、前記取得手段にて取得した履歴情報から抽出する抽出手段と、
前記抽出手段にて抽出した一連のジョブのうち、前記着目するジョブに対応するジョブに設定された設定値を選択可能に表示する表示手段と、
前記表示手段にて表示した設定値の中からユーザーが選択した設定値を、前記着目するジョブの設定値として設定する設定手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記取得手段は、前記１または複数のジョブ処理装置それぞれからジョブの履歴情報を取得してマージし、処理した順にソートすることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記抽出手段は、前記履歴情報において同じユーザーにて処理を指示されている一連のジョブを前記履歴情報から抽出することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記抽出手段は、前記履歴情報において所定の時間内に処理された一連のジョブを前記履歴情報から抽出することを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記編集手段は、前記着目するジョブの選択を受け付けることを特徴とする請求項１乃至４のいずれか一項に記載の情報処理装置。
【請求項６】
前記編集手段は、前記ワークフローを構成する複数のジョブの中から、前記着目するジョブを含む連続する複数のジョブの選択を受け付け、
前記抽出手段は、前記編集手段にて選択された前記複数のジョブとジョブ種の並びが同じである一連のジョブを前記履歴情報から抽出することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記複数のジョブは、前記着目するジョブを含めて３つ以上の連続するジョブであることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
予め定義された連続するジョブの情報を保持する手段を更に有し、
前記着目するジョブおよびその前もしくはその後ろの少なくとも一方のジョブのジョブ種の並びと、前記予め定義された連続するジョブのジョブ種の並びとが一致する場合、前記抽出手段は、前記予め定義された連続するジョブとジョブ種の並びが同じである一連のジョブを、前記履歴情報から抽出し、
前記着目するジョブおよびその前もしくはその後ろの少なくとも一方のジョブのジョブ種の並びと、前記予め定義された連続するジョブのジョブ種の並びとが一致しない場合、前記着目するジョブと同じジョブ種のジョブを、前記履歴情報から抽出することを特徴とする請求項５乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
前記予め定義された連続するジョブは、同一の画像処理装置における、プリントアウト処理、スキャン送信の順のジョブであることを特徴とすることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記予め定義された連続するジョブは、画像処理装置によるスキャン送信、情報処理装置によるファイル操作の順のジョブであることを特徴とする請求項８に記載の情報処理装置。
【請求項１１】
１または複数のジョブ処理装置にて処理される複数のジョブから構成されるワークフローの編集を受け付ける編集工程と、
前記１または複数のジョブ処理装置が処理したジョブの履歴情報を取得する取得工程と、
前記編集工程にて編集されたワークフローを構成する複数のジョブのうちの着目するジョブおよびその前もしくはその後ろの少なくとも一方のジョブとジョブ種の並びが同じである一連のジョブを、前記取得工程にて取得した履歴情報から抽出する抽出工程と、
前記抽出工程にて抽出した一連のジョブのうち、前記着目するジョブに対応するジョブに設定された設定値を選択可能に表示する表示工程と、
前記表示工程にて表示した設定値の中からユーザーが選択した設定値を、前記着目するジョブの設定値として設定する設定工程と
を有することを特徴とする情報処理装置の制御方法。
【請求項１２】
コンピュータを、
１または複数のジョブ処理装置にて処理される複数のジョブから構成されるワークフローの編集を受け付ける編集手段、
前記１または複数のジョブ処理装置が処理したジョブの履歴情報を取得する取得手段、
前記編集手段にて編集されたワークフローを構成する複数のジョブのうちの着目するジョブおよびその前もしくはその後ろの少なくとも一方のジョブとジョブ種の並びが同じである一連のジョブを、前記取得手段にて取得した履歴情報から抽出する抽出手段、
前記抽出手段にて抽出した一連のジョブのうち、前記着目するジョブに対応するジョブに設定された設定値を選択可能に表示する表示手段、
前記表示手段にて表示した設定値の中からユーザーが選択した設定値を、前記着目するジョブの設定値として設定する設定手段
として機能させるためのプログラム。
【請求項１３】
１または複数のジョブ処理装置と、請求項１乃至１０のいずれか一項に記載の情報処理装置とを含むシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびその制御方法、プログラム、並びにシステムに関し、特に、画像処理装置などの機器に対する処理要求を含むワークフローの編集における処理の設定に関する。
【背景技術】
【０００２】
現在、ドキュメントを扱う定型的な業務の効率化のために、ワークフローエンジンを使用したドキュメント業務フローの自動実行が注目されている。ワークフローエンジンはサーバー上で動作し、予め決められたワークフロー手順に従って、サーバー上のドキュメントファイルのプリントや、作業者へのメールの通知などのタスクを実行する。また、ワークフローエンジンは、サーバーとネットワーク接続されたＰＣなどの機器に対し、同じくドキュメントファイルのプリントやファイルの移動、編集などの処理を実行させることができる。
【０００３】
ワークフローエンジンが実行するワークフローは、ワークフローエディタと呼ばれるツールを用いて編集される。ワークフローエディタは、編集したワークフローをワークフロー定義ファイルとして出力し保存する。ワークフローエンジンは、ワークフロー定義ファイルを読み込んでワークフローを実行する。特許文献１では、ワークフローの編集において、ドキュメントの処理を行う機器の履歴の中から、ワークフローのタスクとして実行する処理を選択して設定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−３１１９４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ワークフローエディタによるワークフローの編集において、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）などの機器に対して処理を実行させるタスクが含まれる場合、処理の設定値を設定する必要がある。ＭＦＰは、コピーやスキャン送信といった複数の機能を有し、さらにコピー機能単体においても、部数、両面印刷の設定、印刷倍率の設定、読込画質の設定、印刷時のカラー設定など、処理実行に対して非常に多くの設定項目がある。これらを全て意図したとおりに間違いなく設定することは非常に困難である。
【０００６】
また、ワークフローの作成においては、現在手動で行っているワークフローを、ワークフローエンジンによって自動化する場合、各装置が過去に行った処理の履歴を取得し、その履歴から所望の処理の設定値を設定することが考えられる。しかし、履歴の数が膨大な場合は、その中から目的とする処理の履歴を見つけ出すことが困難になる。特許文献１においても、同様に、履歴の数が増えると目的とする処理をその中から見つけ出すのは困難である。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、１または複数のジョブ処理装置にて処理される複数のジョブから構成されるワークフローの編集を受け付ける編集手段と、前記１または複数のジョブ処理装置が処理したジョブの履歴情報を取得する取得手段と、前記編集手段にて編集されたワークフローを構成する複数のジョブのうちの着目するジョブおよびその前もしくはその後ろの少なくとも一方のジョブとジョブ種の並びが同じである一連のジョブを、前記取得手段にて取得した履歴情報から抽出する抽出手段と、前記抽出手段にて抽出した一連のジョブのうち、前記着目するジョブに対応するジョブに設定された設定値を選択可能に表示する表示手段と、前記表示手段にて表示した設定値の中からユーザーが選択した設定値を、前記着目するジョブの設定値として設定する設定手段とを有する。
【発明の効果】
【０００８】
本願発明により、多くの設定項目を持つ機器の処理に対する設定値の設定において、ワークフローにおける所望の処理の設定値を素早く容易に設定することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明に係るシステム構成の例を示す図。
【図２】本発明に係るＭＦＰのハードウェア構成の例を示す図。
【図３】本発明に係るサーバーおよびＰＣのハードウェア構成の例を示す図。
【図４】第一の実施形態に係るワークフローエディタの画面例を示す図。
【図５】第一の実施形態に係るＭＦＰの履歴データの例を示す図。
【図６】第一の実施形態に係るワークフローエディタの画面例を示す図。
【図７】第一の実施形態に係るワークフローエディタの処理のフローチャート。
【図８】第二の実施形態に係るワークフローエディタの画面例を示す図。
【図９】第二の実施形態に係るマージされた履歴データの例を示す図。
【図１０】第二の実施形態に係るワークフローエディタの処理のフローチャート。
【図１１】第三の実施形態に係るワークフローエディタの画面例を示す図。
【図１２】第三の実施形態に係るワークフローエディタの処理のフローチャート。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施の形態は、特許請求の範囲に係る発明を限定するものではなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１１】
［ハードウェア構成］
図１は、本発明の実施形態を適用可能なシステムの全体構成例を示す図である。本システムでは、画像処理装置であるＭＦＰ１０１と、ＰＣ１０２およびサーバー１０３などの情報処理装置とが、ＬＡＮ１０４で構成されたネットワークによって接続される。本システムにおいては、画像処理装置（ＭＦＰ）および情報処理装置（ＰＣ）はいずれもワークフローにて指定されたジョブ（タスク）を処理可能なジョブ処理装置として動作する。
【００１２】
ＭＦＰ１０１は、紙などの記録媒体をスキャンし、そのスキャンデータを元に用紙に画像を形成して印刷するコピー機能や、スキャンデータを電子的なデータとしてＰＣ１０２やサーバー１０３にネットワーク経由で送信するスキャン送信などの機能を備える。さらに、ＭＦＰ１０１は、サーバー１０３などネットワーク接続された外部装置からの要求に応じて、送信された画像データをプリントアウトしたり、コピーやスキャン送信したりする機能も備える。プリントやコピー、スキャン送信機能における設定値は、処理実行の要求元であるサーバー１０３が実行要求時に指定する。なお、ここでは画像処理装置の一例としてＭＦＰを例に挙げているが、これに限定するものではない。
【００１３】
サーバー１０３は、予め指定された処理順に従って順番に処理を実行するワークフローエンジンの機能を備える。ワークフローエンジンは、予め指定された処理順が定義されたワークフローに従い、サーバー１０３やＰＣ１０２におけるファイル操作、メール送信、ＭＦＰ１０１に対する実行要求などの処理を自動的に行う。なお、以下の説明において、ワークフローを構成する複数の処理は、各装置にて実行されるジョブと同義として用いる。ワークフローエンジンが実行するワークフローは、サーバー１０３などにおいてワークフローエディタと呼ばれる編集ツールを使ってユーザーが定義する。ユーザーは、ワークフローエディタを介して、ワークフローエンジンが実行可能な処理を選択し、その実行順番を指定し、さらに実行する処理の設定値も設定する。ワークフローエディタによって作成されたワークフローは、ワークフロー定義ファイルとして出力され、それをワークフローエンジンが読み込むことでワークフローが実行可能になる。サーバー１０３が提供するワークフローエディタは、ＰＣ１０２等からの要求に応じて、例えばＰＣ１０２のＷｅｂブラウザ上で表示されるようにしてもよい。
【００１４】
図２は、ＭＦＰ１０１のハードウェアの構成例を示す図である。ＭＦＰ１０１は、スキャナ２１３およびプリンタ２１４を接続するとともに、操作表示部２１１、操作入力部２１２、およびＬＡＮ１０４を接続することが可能なコントローラユニット２００を備える。コントローラユニット２００は、各種制御プログラムを実行するＣＰＵ２０１を備える。ＣＰＵ２０１は、ＲＯＭ２０３に格納されているブートプログラムに基づきＭＦＰ１０１を起動する。また、ＣＰＵ２０１は、ＨＤＤ２０４に格納されている制御プログラムを読み出し、ＲＡＭ２０２をワークエリアとして用いて、所定の処理を実行、制御する。
【００１５】
ＨＤＤ２０４は、不揮発性の記憶部であり、コピーやスキャン送信などの機能を含む、各種制御プログラムが格納されている。また、ＨＤＤ２０４には、各種制御プログラムが実行した処理の履歴が保存される。この履歴には、処理を実行した時間やユーザー、処理を実行した際の各種設定値などが記録される。さらに、ＨＤＤ２０４に保存されている処理の実行履歴は、装置外の機器の要求によって、ネットワークＩ／Ｆ２０７を介して送信される。
【００１６】
操作部出力Ｉ／Ｆ２０５は、操作表示部２１１へのデータ出力通信制御を行う。操作部入力Ｉ／Ｆ２０６は、操作入力部２１２からのデータ入力通信制御を行う。ネットワークＩ／Ｆ２０７は、ＬＡＮ１０４に接続され、ＬＡＮ１０４を介した情報の入出力制御を行う。スキャナＩ／Ｆ２０８は、スキャナ２１３から画像データを入力するとともに、スキャナ制御データの入出力を行う。プリンタＩ／Ｆ２０９は、プリンタ２１４へ出力画像データを出力するとともに、プリンタ制御データの入出力を行う。以上の各デバイスがシステムバス２１０上に配置される。
【００１７】
操作入力部２１２は、タッチパネルやハードキーなどの入力装置を備えた、ユーザーからの指示を入力するためのインターフェースである。操作表示部２１１は、ＬＣＤやＬＥＤなどの表示装置を備えた、ユーザーへ情報を表示するためのインターフェースである。スキャナ２１３は、ＣＣＤなどの光学的な読み取り装置を備え、紙媒体を光学的に走査して、電子的な画像データとして読み取る機能を持つ。プリンタ２１４は、電子的な画像データを、用紙などの記録媒体上に画像として形成する機能を持つ。
【００１８】
また、ＭＦＰ１０１は、ネットワークＩ／Ｆ２０７を介して、外部装置から処理の実行要求を受け付けることが可能である。処理の実行要求は、実行処理の種別や実行時の設定値情報などとともに、外部装置から要求され、ＨＤＤ２０４やＲＡＭ２０２などに一時保存された後、ＣＰＵ２０１によって実行される。
【００１９】
図３は、サーバー１０３のハードウェアの構成例を示す図である。なお、ＰＣ１０２もサーバー１０３と同様の構成を備えるものとし、ＰＣ１０２の構成に関する詳細な説明は省略する。サーバー１０３は、ＬＡＮ１０４に接続可能な制御部３００を備える。制御部３００は、各種制御プログラムを実行するＣＰＵ３０１を有し、サーバー１０３およびＰＣ１０２の全体の動作を制御する。ＣＰＵ３０１は、ＲＯＭ３０３やＨＤＤ３０４に格納されている制御プログラムを読み出し、ＲＡＭ３０２をワークエリアとして用いて、所定の処理を実行する。
【００２０】
ＨＤＤ３０４は、不揮発性の記憶部であり、ワークフローエンジンやワークフローエディタの機能を含む各種制御プログラムが格納されている。また、ＨＤＤ３０４には、各種制御プログラムが実行した処理の履歴が保存される。この履歴には、処理を実行した時間やユーザー、処理を実行した際の各種設定値などが記録される。さらに、ＨＤＤ３０４に保存されている処理の実行履歴は、外部装置からの要求に応じて、ネットワークＩ／Ｆ３０５を介して送信される。
【００２１】
ネットワークＩ／Ｆ３０５は、ＬＡＮ１０４を介した情報の入出力制御を行う。操作部出力Ｉ／Ｆ３０６は、操作表示部３０８へのデータ出力通信制御を行う。操作部入力Ｉ／Ｆ３０７は、操作入力部３０９からのデータ入力通信制御を行う。以上の各デバイスが、システムバス３１０上に配置される。
【００２２】
操作表示部３０８は、ＬＣＤやＬＥＤなどの表示装置を備えた、ユーザーへ情報を表示するためのインターフェースである。操作入力部３０９は、キーボードやマウスなどの入力装置を備えた、ユーザーからの指示を入力するためのインターフェースである。
【００２３】
また、ＰＣ１０２およびサーバー１０３は、ネットワークＩ／Ｆ２０７を介して、外部装置から処理の実行要求を受け付けることが可能である。処理の実行要求は、実行処理の種別や実行時の設定値情報などとともに、外部装置から要求され、ＨＤＤ３０４やＲＡＭ３０２などに一時保存された後、ＣＰＵ３０１によって実行される。
【００２４】
＜第一の実施形態＞
図４は、第一の実施形態において、サーバー１０３の操作表示部３０８に表示されるワークフローエディタの操作画面の例を示す。フロー編集部４０１には、現在編集しているワークフローが表示される。フローの各処理として定義された処理４０４〜４０７が図形として表示され、それらを結ぶ矢印がフローの実行順番を示している。これら図形の種類や配置、矢印を結ぶ順番を変更し、ワークフローが実行する処理や順番を編集する。図４では、ワークフローにおいて、処理４０４、４０５、４０６、４０７が順番に実行されることを示している。
【００２５】
エディタメニュー部４０２には、例えば、編集したワークフローの保存、保存したワークフローの読み込み、各処理の設定値の履歴から取得、といったワークフローに関する操作を行うための指示ボタンもしくはメニューが配置されている。フロー選択部４０３は、フロー編集部４０１で編集するワークフローの各処理がボタンとして配置されている。フロー選択部４０３に配置される処理の種類は、特に限定するものではないが、例えば、システムに含まれるＭＦＰ１０２が備える機能が挙げられる。フローで実行させる希望の処理のオブジェクトを選択した後、マウスを使用したドラッグドロップでフロー編集部４０１に配置することでワークフローを編集する。
【００２６】
図４に示す例では、フロー編集部４０１において、処理４０６が選択状態にある。処理４０６は、ＭＦＰにおいてコピー機能を実行させる処理である。このコピー機能を実行させる処理４０６におけるコピー機能の設定値を設定する。処理４０６を選択状態にして、エディタメニュー部４０２から、設定値を履歴から取得する、という操作を選択する。すると、ワークフローエディタは、処理の実行を指定されているＭＦＰから、機能の実行履歴を取得する。
【００２７】
ＭＦＰから取得した実行履歴の例の一部を図５に示す。ここでは、説明上、履歴の内容を表形式で示している。番号５０１は、履歴を処理順番に並べた場合の番号を示す。日付５０２および時刻５０３は、ＭＦＰにおいて処理を実行した日付と時刻を示す。処理種別５０４は、ＭＦＰが実行した処理の種別を示す。ここでの処理種別とは、コピー機能やスキャン送信などの機能の種類（ジョブ種）である。実行者５０５は、処理の実行を指示したユーザー名である。ＭＦＰにおいてユーザー管理されている場合、処理の実行前に認証を経て、機器にログインしなければならない。その認証処理によって識別されたユーザー名が記録される。
【００２８】
設定値５０６〜５０９は、処理種別５０４にて示す処理が実行された場合の設定値情報を示す。実際には、再度同じ処理を実行できる程度の情報量が記録されているが、ここでは記載を省略する。なお、実行履歴における設定値の並びや割り当ては、処理種別ごとに予め定義されているものとする。ワークフローエディタは、取得した実行履歴から、現在選択され設定値を設定しようとしている処理に一致する履歴情報を検索する。このとき、ワークフローエディタでエディットしているフローの処理順番も考慮して実行履歴から検索を行う。
【００２９】
図４のフロー編集部４０１では、設定値を設定しようとする処理としてＭＦＰのコピー処理が選択されている。さらに、その選択された処理の前後に、同じＭＦＰの処理が存在するか否かが確認される。ここでは、コピー処理の前に、同じＭＦＰによるスキャン送信の処理４０５が行われるワークフローになっている。つまり、設定値を設定するコピー処理の前に、スキャン送信の処理が行われている個所が履歴から検索される。
【００３０】
ワークフローをワークフローエディタで編集し、ワークフローエンジンなどで自動実行する場合、一から新規にワークフローを作成するよりも、現在人手で順番に実行されているワークフローを自動化することのほうが多い。つまり、ワークフローエディタで編集するワークフローは、現在行っている処理であることが多いため、そこでの処理の設定値は、実行履歴に記録されているものを流用したほうが編集作業の効率が良い。しかし、膨大な実行履歴の中から編集しているワークフローの処理に一致する個所を検索することは非常に難しい。そこで、現在編集しているワークフローと同じ順番で処理を実行している個所を検索し、同じ処理の設定値を流用できるようにする。
【００３１】
ワークフローエディタは、図５に示した実行履歴の中から、「スキャン送信」、「コピー」の順で処理されている個所を検索する。処理種別５０４の情報に基づいて検索すると、図５においては、履歴５１０〜５１４の５個所が一致する。ここで、現在編集しているフローは、単一ユーザーが順番に実行するフローであるため、実行者５０５の情報をもとに、連続した２つの処理を異なるユーザーが実行している履歴５１２は除外する。さらに、日付５０２および時刻５０３の情報をもとに、連続した２つの処理の時間間隔が一定時間以上開いている履歴５１４は、同一のワークフローにおける処理とはみなさず除外する。従って、図５においては、履歴５１０、５１１、５１３という３個所が図４で示すワークフローの処理４０５、４０６に該当するものとして検出される。なお、上記の時間間隔を判定する際の一定時間の閾値は予め定義しておく。
【００３２】
図６は、図４において、エディタメニュー部４０２から、設定値を履歴から取得する操作を行い、その操作に基づいて履歴が取得され検索が行われた後に表示される操作画面を示す。複数検索された履歴の該当箇所から抽出された設定値を選択するための設定値選択ダイアログ６０１が表示される。
【００３３】
履歴リスト６０２は、実行履歴から検出した複数の該当箇所を選択可能に表示したリストである。履歴リスト６０２は、該当箇所の情報の一部を表示し、ユーザーに選択させる。ここでは、図５の実行履歴における履歴５１０、５１１、５１３の３個所に相当する履歴情報の設定値が表示されている。ユーザーが、履歴リスト６０２のうちのいずれかを選択し、ＯＫボタン６０３を選択すると、履歴リスト６０２で選択された処理の設定値の内容が、図４のフロー編集部４０１において選択状態にあった処理４０６の設定値として設定される。ここで、図５の履歴５１０に相当する設定値が選択されたとすると、そのコピー処理（番号５０１の値が“３”の履歴）に相当する設定値が、処理４０６におけるコピー機能の設定値として設定される。
【００３４】
［処理フロー］
図７は、第一の実施形態に係る一連の処理の流れを示すフローチャートである。図７のフローチャートにおける各ステップは、サーバー１０３のＨＤＤ２０４に格納されたワークフローエディタの実行プログラムを、ＣＰＵ２０１が実行することにより処理される。
【００３５】
Ｓ７０１にて、ワークフローエディタは、ワークフローの編集を受け付ける。実際には、図４に示した編集画面で、フロー選択部４０３からフロー編集部４０１に処理のオブジェクトをドラッグドロップし、それらの順番を編集する処理を受け付ける。
【００３６】
Ｓ７０２にて、ワークフローエディタは、ワークフローの編集において、ＭＦＰ１０１における処理の設定値を履歴から取得する指示を受けたか否かを判定する。具体的には、フロー編集部４０１において、ＭＦＰの処理が選択されている状態で、エディタメニュー部４０２における設定値を履歴から取得する操作が指示されたか否かを判定する。指示されていないと判定された場合は（Ｓ７０２にてＮＯ）、Ｓ７０１の処理に戻る。指示されていると判定された場合は（Ｓ７０２にてＹＥＳ）、Ｓ７０３にて、ワークフローエディタは、ＭＦＰから履歴を取得する。
【００３７】
Ｓ７０４にて、ワークフローエディタは、フロー編集部４０１にて選択されている処理の前の処理がＭＦＰの処理であるか否かを判定する。前の処理が同じＭＦＰの処理であると判定した場合は、ワークフローエディタは、その連続した２つの処理を検索の対象と見なす。なお、図７のフローチャートでは、着目している処理（選択された処理）の前の処理を判定しているが、これに限定するものではなく、後の処理を対象としてもよい。また、前後の両方を判定の対象としてもよい。この場合において、前後のどちらもＭＦＰの処理である場合は、そのどちらを連続した２つの処理と見なしてもかまわない。同じＭＦＰの処理であると判定した場合は（Ｓ７０４にてＹＥＳ）、Ｓ７０５へ進む。一方、同じＭＦＰの処理でないと判定した場合は（Ｓ７０４にてＮＯ）、Ｓ７１５へ進む。
【００３８】
Ｓ７０５にて、ワークフローエディタは、設定値を設定するフロー処理（すなわち、図４のフロー編集部４０１において選択されている処理）と一致する処理が実行されている箇所を、Ｓ７０３で取得した履歴から検索する。
【００３９】
Ｓ７０６にて、ワークフローエディタは、履歴から検索された処理について、その前の実行された処理が、フロー編集部４０１において現在選択されている処理の前の処理と同じ処理種別であるか否かを判定する。履歴から検出された処理の前の処理と、選択された処理の前の処理が、同じ処理種別でないと判定した場合（Ｓ７０６にてＮＯ）、Ｓ７１０の処理に進む。
【００４０】
履歴から検出された処理の前に実行された処理が、選択された処理の前の処理と同じ処理種別であると判定した場合（Ｓ７０６にてＹＥＳ）、Ｓ７０７にてワークフローエディタは、履歴の連続した２つの処理が、同一ユーザーによって指示された処理かを判定する。同一ユーザーによって実施された処理ではないと判定した場合は（Ｓ７０７にてＮＯ）、Ｓ７１０の処理へ進む。
【００４１】
同一ユーザーによって実施された処理であると判定した場合（Ｓ７０７にてＹＥＳ）、Ｓ７０８にて、ワークフローエディタは、履歴における連続した２つの処理の実行時間の間隔が、一定時間以内であるか否かを判定する。この一定時間は、予め決められた値でもよいし、ユーザーが指定してもかまわない。一定時間以内ではないと判定された場合は（Ｓ７０８にてＮＯ）、Ｓ７１０の処理へ進む。
【００４２】
一定時間内であると判定した場合は（Ｓ７０８にてＹＥＳ）、Ｓ７０９にて、ワークフローエディタは、連続した２つの処理が履歴と一致したものとみなし、対応する処理の設定値を履歴から抽出する。そして、ワークフローエディタは、抽出した情報を、ＨＤＤ２０４やＲＡＭ２０２などの保存場所に保存する。
【００４３】
Ｓ７１０にて、ワークフローエディタは、取得した履歴の全てについてＳ７０５〜Ｓ７０９までの処理を実施したか否かを判定する。履歴について検索処理を完了していないと判定した場合は（Ｓ７１０にてＮＯ）、Ｓ７０５の処理に戻る。全てについて実施したと判定した場合（Ｓ７１０にてＹＥＳ）、Ｓ７１１にて、ワークフローエディタは、図６の設定値選択ダイアログ６０１のように、Ｓ７０９で抽出された設定値を一覧表示する。
【００４４】
一方、フロー編集部４０１で選択されている処理の前の処理がＭＦＰの処理でないと判定した場合（Ｓ７０４にてＮＯ）、Ｓ７１５にて、ワークフローエディタは、選択されている処理と同じ処理種別の設定値を履歴から抽出する。Ｓ７１５にて設定値が抽出された場合も、Ｓ７１１において同様に一覧表示される。その後、Ｓ７１１へ進む。
【００４５】
設定値選択ダイアログ６０１を表示した後、Ｓ７１２にて、ワークフローエディタは、設定値が選択されたか否かを判定する。具体的には、ワークフローエディタは、履歴リスト６０２のいずれかが選択された状態で、ＯＫボタン６０３が選択されたか否かを判定する。設定値が選択されていないと判定した場合は（Ｓ７１２にてＮＯ）、Ｓ７１１の処理に戻る。
【００４６】
設定値が選択されたと判定した場合（Ｓ７１２にてＹＥＳ）、Ｓ７１３にて、ワークフローエディタは、選択された設定値を、現在設定の対象としている処理の設定値として設定する。
【００４７】
Ｓ７１４にて、ワークフローエディタは、ワークフローの編集が完了したか否かを判定する。具体的には、エディタメニュー部４０２において、ワークフロー編集終了の操作が指示されたか否かを判定する。終了が指示されていないと判定した場合は（Ｓ７１４にてＮＯ）、Ｓ７０１の処理に戻る。一方、終了が指示されたと判定した場合は（Ｓ７１４にてＹＥＳ）、ワークフローエディタは、ワークフローの編集処理を終了する。
【００４８】
以上、本実施形態により、ワークフロー編集における、ＭＦＰの処理の設定値の編集作業において、ＭＦＰが実際に処理を行った過去の履歴から簡単に設定値を設定することが可能になる。さらに、実際に処理を行った処理の順番、処理を行ったユーザーが考慮されて抽出され、かつ処理実行間隔の大きいもの除外される。このため、膨大な履歴の中から、目的とする処理の履歴を見つけ易くすることができ、ワークフロー編集時の操作性を向上することができる。
【００４９】
＜第二の実施形態＞
第二の実施形態では、現在編集しているワークフローにおいて、設定値を設定する処理に該当する箇所を外部装置から取得した履歴から検索する際、ＭＦＰだけでなく、ＰＣなどの装置から取得した履歴からも検索を行う。また、その際、設定値を設定する処理の前後の一処理だけを連続した処理の対象とみなすのではなく、連続した３つ以上の処理も検索対象と見なす。さらに、それら検索対象とする連続した処理を現在編集しているワークフローからユーザーが自由に選択可能とする。第二の実施形態については、第一の実施形態との差分についてのみ記述する。
【００５０】
図８は、第二の実施形態において、サーバー１０３の操作表示部３０８に表示されるワークフローエディタの操作画面の例を示す。図８のフロー編集部８０１からフロー選択部８０３までは、図４におけるフロー編集部４０１からフロー選択部４０３までと同じである。また、処理８０４〜８０７が、連続した一連の処理として定義されている点も同じである。
【００５１】
図８において、設定値を設定する処理として、ＭＦＰにおけるコピーの処理８０６が選択されている。また、処理８０６の前の処理８０５は、ＭＦＰにおける実行処理ではなく、ＰＣにおけるメール送信の処理となる。
【００５２】
ここで、コピーの処理８０６が選択されている状態で、エディタメニュー部８０２から、設定値を履歴から取得する、という操作を選択したとする。すると、選択されている処理８０６以外の処理８０４、８０５、８０７の表示の一部に、どの処理を選択対象処理に対する一連の連続処理と見なすかを選択するチェックボックス８０８〜８１０が表示される。これは、履歴から選択対象となる処理を検索する際に、一連の処理としてどの処理を検索対象に含むかをユーザーに選択させるためのものである。ユーザーは、このチェックボックスを選択することにより、どの処理を、現在選択している処理との一連の処理とみなし、履歴から検索させるかを指定することができる。
【００５３】
ここでは、図８のように、処理８０６の前後の処理８０５、８０７が選択されたものとする。選択する処理は、この例のように２つでもよいし、それ以上であってもよい。また、現在設定の対象となっている処理と連続した処理でなくてはならない。したがって、設定値の設定の対象が処理８０６である場合、処理８０４のチェックボックスを選択すると、処理８０５も自動的にチェックボックスが選択され、対象と見なされる。
【００５４】
設定値を設定する処理としてＭＦＰの処理８０６（コピー処理）が選択され、さらに履歴を検索する一連の処理として処理８０５、８０７が選択され、結果として３つの処理が選択される。この状態で、エディタメニュー部８０２から、設定値を履歴から取得する、という操作が指示される。一連の処理として、処理８０６はＭＦＰのコピー処理、処理８０５、８０７は、ＰＣにおけるメール送信処理であるため、ワークフローエディタは、ＭＦＰおよびＰＣから処理の履歴を取得する。さらに、ワークフローエディタは、取得した複数の履歴をマージし、時間順にソートする。
【００５５】
マージおよびソートした実行履歴の例の一部を図９に示す。ここでは、説明上、履歴の内容を表形式で示している。図９において、番号９０１、日付９０２、時刻９０３は、図５における５０１〜５０３と同じである。また、処理種別９０５、実行者９０６、設定値９０７〜９１０は、それぞれ図５における処理種別５０４、実行者５０５、設定値５０６〜５０９と同じである。
【００５６】
デバイス９０４は、処理を実行した機器がＭＦＰかＰＣかを示す情報である。また、複数台のＭＦＰやＰＣから履歴を取得した場合、それらの機器を識別する情報も含まれる。また、この実行処理の履歴情報には、再度同じ処理を実行できる程度の情報量が記録されているが、第一の実施形態と同じ箇所については説明を省略する。
【００５７】
ワークフローエディタは、取得した実行処理の履歴から、現在選択された一連の処理が行われている箇所を検索する。フロー編集部８０１で選択されている一連の処理８０５〜８０７は、それぞれ、ＰＣにおけるメール送信処理、ＭＦＰにおけるコピー処理、ＰＣにおけるメール送信処理である。このことから、履歴における該当箇所として、履歴９１１、９１２の２カ所が検索される。このとき、第一の実施形態のように、一連の処理が同一ユーザーによる実行であるか否か、また、一連の処理の時間間隔が一定以上開いているか否かをチェックしてもかまわない。
【００５８】
検索によって一連の処理から、設定値を設定するＭＦＰの処理が抽出される。ここでは、図９において番号９０１の値が“６”と“１５”の履歴に該当するＭＦＰの処理が抽出される。ワークフローエディタは、第一の実施形態における図６のように、設定値選択ダイアログ６０１を表示してユーザーにどの設定値を設定するかを選択させる。その後の処理については第一の実施形態における処理と同じである。
【００５９】
［処理フロー］
図１０は、第二の実施形態に係る一連の処理の流れを示すフローチャートである。図１０のフローチャートにおける各ステップは、サーバー１０３のＨＤＤ２０４に格納されたワークフローエディタの実行プログラムを、ＣＰＵ２０１が実行することにより処理される。
【００６０】
Ｓ１００１にて、ワークフローエディタは、ワークフローの編集を受け付ける。第一の実施形態と同じように、ワークフローエディタは、図８に示した編集画面で、ユーザーがフロー選択部８０３からフロー編集部８０１に処理のオブジェクトをドラッグドロップすることで、それらの順番を編集する処理を受け付ける。さらに、処理のいずれかが選択状態にある場合、ワークフローエディタは、それ以外の処理について、チェックボックス８０８〜８１０を表示し、選択状態にある処理と一連の処理として検索対象とする処理をユーザーに選択させる。
【００６１】
Ｓ１００２にて、ワークフローエディタは、フローの編集において、処理の設定値を履歴から取得する指示を受けたか否かを判定する。これは、第一の実施形態における図７のＳ７０２と同じである。指示されていないと判定した場合は（Ｓ１００２にてＮＯ）、Ｓ１００１の処理に戻る。指示されたと判定した場合は（Ｓ１００２にてＹＥＳ）、Ｓ１００３にて、ワークフローエディタは、フロー編集部８０１において一連の処理として選択されている処理の実行機器から、実行履歴を取得する。ここでは、ＭＦＰとＰＣが該当する。
【００６２】
Ｓ１００４にて、ワークフローエディタは、複数の機器から取得した履歴をマージし、時間順にソートする。Ｓ１００５にて、ワークフローエディタは、一連の処理として選択されている処理の中の先頭の処理を、Ｓ１００４でマージ、ソートされた履歴から検索する。
【００６３】
Ｓ１００６にて、ワークフローエディタは、一連の処理のうちの選択された処理の次の処理が、履歴における検索された処理の次の処理として存在するか否かを判定する。存在しないと判定した場合、もしくは一連の処理の先頭処理が存在しないと判定した場合は（Ｓ１００６にてＮＯ）、Ｓ１００９の処理へ進む。
【００６４】
一連の処理のうちの選択された処理の次の処理が、履歴から検出された処理の次の処理として存在すると判定した場合（Ｓ１００６にてＹＥＳ）、Ｓ１００７にてワークフローエディタは、一連の処理の全てにおいて履歴との一致の判定を行ったか否かを判定する。一連の処理全てについて判定していない場合（Ｓ１００７にてＮＯ）、Ｓ１００６の処理に戻る。
【００６５】
一連の処理全てについて履歴との一致の判定を行った場合（Ｓ１００７にてＹＥＳ）、Ｓ１００８にて、ワークフローエディタは、履歴から選択対象としている処理に該当する箇所の設定値を履歴から抽出する。抽出した設定値は、第一の実施形態と同様に、ＨＤＤ２０４やＲＡＭ２０２などの保存場所に保存される。その後、Ｓ１００９の処理に進む。
【００６６】
Ｓ１００９にて、ワークフローエディタは、履歴を全て検索したか否かを判定する。履歴を全て検索していないと判定した場合（Ｓ１００９にてＮＯ）、Ｓ１００５の処理に戻る。履歴を全て検索したと判定した場合（Ｓ１００９にてＹＥＳ）、Ｓ１０１０にて、ワークフローエディタは、抽出された設定値を一覧表示する。これは、第一の実施形態におけるＳ７１１と同様の処理である。この後のＳ１０１１〜Ｓ１０１３の処理は、第一の実施形態における図７のＳ７１２〜Ｓ７１４の処理と同様であるため、説明を省略する。
【００６７】
以上、第二の実施形態では、設定値を設定する処理がＭＦＰで実行する処理でない場合でも、処理を実行する機器から履歴情報を取得して設置値を設定することが可能である。また、ワークフローにおける処理の順番を考慮して履歴から該当箇所を抽出する場合でも、２つ以上の処理を考慮可能で、かつユーザーが検索対象とする処理を選択することが可能である。このため、処理順を考慮しても検索結果が膨大であった場合でも、より柔軟な検索条件を指定でき、履歴から該当する設定値を検索しやすくできる。
【００６８】
＜第三の実施形態＞
第三の実施形態では、現在編集しているワークフローにおいて、設定値を設定する処理が選択された場合に、その処理と関連性が高いと想定される前後の処理を一連の処理とし、履歴の取得と検索を行う。第三の実施形態は、第一、第二の実施形態との差分についてのみ記述する。
【００６９】
図１１は、第三の実施形態において、サーバー１０３の操作表示部３０８に表示されるワークフローエディタの操作画面の例を示す。図１１のフロー編集部１１０１からフロー選択部１１０３までは、図４におけるフロー編集部４０１からフロー選択部４０３までと同じである。また、処理１１０４〜１１０７が、連続した一連の処理として定義されている点も同じである。
【００７０】
図１１において、設定値を設定する処理として、ＭＦＰにおけるスキャン送信の処理１１０６が選択されている。ここで、ユーザーがエディタメニュー部１１０２から、設定値を履歴から取得する、という操作を選択する。すると、ワークフローエディタは、ワークフローにおいて現在選択されている処理の前後において、選択されている処理と関連性の高い処理が存在するか否かを判定する。ここでは、ＭＦＰにおけるスキャン送信の処理の前に、ＭＦＰにおけるプリントアウト処理が存在する。スキャン送信においては、プリントされた紙媒体をスキャンして送信する可能性が高く、ＭＦＰのプリント処理からスキャン送信の連続した処理は、関連性が高いと判定できる。よって、この一連の処理を、履歴からの設定値の抽出における検索対象と見なす。関連が高いと判定できる一連の処理としては、この他に、ＭＦＰにおけるスキャン送信の後に、ＰＣでのファイル操作が考えられる。ＭＦＰから送信されたスキャン画像のファイルを、ＰＣ上で編集、移動するなどの可能性が高いと考えられるためである。もちろんこれ以外の関連性が高いと思われる処理であってもかまわない。また、２つの連続した処理だけでなく、３つ以上の関連性の高い処理であってもかまわない。
【００７１】
一連の処理であると判定された処理には、図１１のチェックボックス１１０９にチェックマークが表示され、一連の処理の対象となったことをユーザーに示す。この一連の処理として判定する関連性の高い複数の処理（以下、連続処理）については、予め決定された情報としてＨＤＤ２０４などに保持されているものとする。もしくは、これらの関連性が高いと判定する基準として、履歴に基づいて、連続する処理の集計を行っておき、所定の頻度以上、もしくは、所定の時間間隔以内で発生する処理の並びを関連性が高いものとして扱ってもよい。一連の処理が選択された後は、第一、第二の実施形態と同様の検索処理を行い、履歴から目的とする設定値を取得する。
【００７２】
［処理フロー］
図１２は、第三の実施形態に係る一連の処理の流れを示すフローチャートである。図１２のフローチャートにおける各ステップは、サーバー１０３のＨＤＤ２０４に格納されたワークフローエディタの実行プログラムを、ＣＰＵ２０１が実行することにより処理される。
【００７３】
Ｓ１２０１にて、ワークフローエディタは、ワークフローの編集を受け付ける。第一の実施形態と同じように、ワークフローエディタは、図１１に示した編集画面で、ユーザーがフロー選択部１１０３からフロー編集部１１０１に処理のオブジェクトをドラッグドロップすることで、それらの順番を編集する処理を受け付ける。
【００７４】
Ｓ１２０２にて、ワークフローエディタは、フローの編集において、処理の設定値を履歴から取得する指示を受けたか否かを判定する。これは、第一の実施形態における図７のＳ７０２と同じである。指示されていないと判定した場合は（Ｓ１２０２にてＮＯ）、Ｓ１２０１の処理に戻る。指示されたと判定した場合は（Ｓ１２０２にてＹＥＳ）、Ｓ１２０３にて、ワークフローエディタは、ＨＤＤ２０４などに保存されている、予め定義された関連性の高い連続処理の定義を読み出す。
【００７５】
Ｓ１２０４にて、ワークフローエディタは、フロー編集部１１０１において、選択されている処理が、定義されている連続処理の中に存在するか検索する。存在しないと判定した場合（Ｓ１２０４にてＮＯ）、選択された処理と関連性の高い処理は存在しないため、ワークフローエディタは、選択された１つの処理のみを検索対象とし、Ｓ１２０７の処理に進む。
【００７６】
存在すると判定した場合（Ｓ１２０４にてＹＥＳ）、Ｓ１２０５にて、ワークフローエディタは、選択された処理の前後の処理が、予め定義されている連続処理の順番と処理種別が一致するか否かを判定する。ここで一致すると判定した場合（Ｓ１２０５にてＹＥＳ）、ワークフローエディタは、一致した連続処理を履歴から検索する検索対象として設定し、Ｓ１２０７の処理に進む。
【００７７】
一致しないと判定した場合（Ｓ１２０５にてＮＯ）、Ｓ１２０６にて、ワークフローエディタは、予め定義されている連続処理の全てについて判定を行ったか否かを判定する。全てについて判定を行っていないと判定した場合は（Ｓ１２０６にてＮＯ）、Ｓ１２０４の処理に戻る。
【００７８】
全てについて判定を行ったと判定した場合（Ｓ１２０６にてＹＥＳ）、選択された処理およびその前後の処理と、関連性の高い連続処理は見つからなかったとして、ワークフローエディタは、選択された処理のみを検索対象として設定する。その後、Ｓ１２０７にて、ワークフローエディタは、検索対象とする処理を実行する機器から、実行履歴を取得する。
【００７９】
Ｓ１２０８にて、ワークフローエディタは、複数の機器から取得した履歴をマージし、時間順にソートする。これは、第二の実施形態における図１０のＳ１００４の処理と同じであるが、単体の機器からのみ履歴を取得した場合は、特に実行する必要は無い。
【００８０】
Ｓ１２０９にて、ワークフローエディタは、履歴から一連の処理と一致する箇所を検索し、その設定値を抽出し、さらに設定値を設定する処理を行う。このＳ１２０９における処理は、第２の実施形態におけるＳ１００５〜Ｓ１０１２の一連の処理と一致するため、説明を省略する。
【００８１】
Ｓ１２１０にて、ワークフローエディタは、ワークフローの編集が完了したか否かを判定する。完了していないと判定した場合は（Ｓ１２１０にてＮＯ）、Ｓ１２０１の処理に戻る。完了したと判定した場合は（Ｓ１２１０にてＹＥＳ）、ワークフローの編集処理を終了する。
【００８２】
以上、処理の設定値の編集作業において、ワークフローの順序として関連性の高い処理が存在する場合に、その関連を判別して、履歴の中から同じ処理順番を検索して設置値を設定することが可能になる。関連性の高い処理をユーザーがその都度指定することなく、予め定義された関連性によって自動的に判別するため、ユーザー指示の手間が取り除かれ、素早く容易に設定値を設定することが可能になる。
【００８３】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８４】
１０１…ＭＦＰ、１０２…ＰＣ、１０３…サーバー、４０１…フロー編集部、４０２…エディタメニュー部、４０３…フロー選択部
【図１】
0006343226.tif 000002
【図２】
0006343226.tif 000003
【図３】
0006343226.tif 000004
【図４】
0006343226.tif 000005
【図５】
0006343226.tif 000006
【図６】
0006343226.tif 000007
【図７】
0006343226.tif 000008
【図８】
0006343226.tif 000009
【図９】
0006343226.tif 000010
【図１０】
0006343226.tif 000011
【図１１】
0006343226.tif 000012
【図１２】
0006343226.tif 000013