(57)【要約】      （修正有）【課題】プリンタ、複写機、ファクシミリ等の機能を統合した複合機において、複数の処理工程を１つのジョブとして実行できるワークフローの作成、変更を容易にする。【解決手段】複数のステップで構成されるワークフローの各ステップで用いるパラメータ情報を登録するフロー登録部６００１と、ワークフローに含まれる各ステップの処理の種類、各ステップの順番、各ステップの開始パラメータ及び終了パラメータを含む情報を管理するフロー管理部６００３と、複数のステップのうちの１つで用いるパラメータ情報が、フロー登録部６００１で登録されたパラメータ情報の中から選択された場合に、その選択されたパラメータ情報に応じて、フロー管理部６００３で管理している情報に基づいて後続のステップで用いるべきパラメータ情報を判断するパラメータ判断部６００２を有する。【選択図】図５
2010219788.tif 000002
【特許請求の範囲】
【請求項１】
複数のステップで構成されるワークフローを作成するための情報処理装置であって、
複数のステップで構成されるワークフローの各ステップで用いるパラメータ情報を登録するフロー登録手段と、
前記ワークフローに含まれる各ステップの処理の種類、各ステップの順番、各ステップの開始パラメータ及び終了パラメータを含む情報を管理するフロー管理手段と、
前記複数のステップのうちの１つで用いるパラメータ情報が、前記フロー登録手段で登録されたパラメータ情報の中から選択された場合に、当該選択されたパラメータ情報に応じて、前記フロー管理手段で管理している情報に基づいて後続のステップで用いるべきパラメータ情報を判断するパラメータ判断手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記フロー登録手段は、前記複数のステップで使用できるパラメータ情報をステップごとに複数登録し、前記フロー管理手段は、各ステップにおける複数のパラメータ情報を用いる順番をさらに管理することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記フロー登録手段は、ワークフローにユニークな識別子を付して登録することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記フロー管理手段は、ワークフローの識別子、ワークフローの種類、ワークフローを実行するステップ順、各ステップで提供する機能の名称をテーブル化したフロー情報管理テーブルを有することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記フロー管理手段は、ワークフローの識別子、ワークフローを実行するステップ順、開始パラメータ、終了パラメータをテーブル化したパラメータ情報管理テーブルを有することを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記フロー管理手段は、サブグループの識別子、サブグループ名、開始パラメータ、ワークフローの識別子をテーブル化したパラメータサブグループ情報管理テーブルを有することを特徴とする請求項３に記載の情報処理装置。
【請求項７】
複数のステップで構成されるワークフローを作成するための情報処理装置の制御方法であって、
複数のステップで構成されるワークフローの各ステップで用いるパラメータ情報を登録するフロー登録工程と、
前記ワークフローに含まれる各ステップの処理の種類、各ステップの順番、各ステップの開始パラメータ及び終了パラメータを含む情報を管理するフロー管理工程と、
前記複数のステップのうちの１つで用いるパラメータ情報が、前記フロー登録工程で登録されたパラメータ情報の中から選択された場合に、当該選択されたパラメータ情報に応じて、前記フロー管理工程で管理している情報に基づいて後続のステップで用いるべきパラメータ情報を判断するパラメータ判断工程と、
を有することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を媒介として連携する複数の作業工程を規定するワークフローを自動的に変更する情報処理装置及びその制御方法に関するものである。
【背景技術】
【０００２】
近年、プリンタ、複写機、ファクシミリ等の機能を統合した多機能処理装置（ＭＦＰ）（以下、複合機）が広く用いられている。このような複合機は、オフィス等において、ユーザの業務を簡略化するために、複数の処理工程を１つのジョブとして実行できる機能も備えている。このようなユーザの業務は種々の形態が想定されるため、任意の処理工程の組み合わせ（以下、ワークフロー）を定義することが要求される。このようなワークフローの作成は複雑な作業を要するため、管理者がコンピュータ（以下、クライアントコンピュータ（ＰＣ））で編集用のツールを用いて作成して、それを複合機に配布することが一般的である。こうしてユーザは、その配布されたワークフローを利用してユーザの業務を実行できるため、業務効率が向上する。
【０００３】
複合機に配布されるワークフローの具体例として例えば、「原稿読込→認証→送信」からなる業務が挙げられる。このワークフローが複合機で実行されるとき、まずユーザ毎にログインする利用環境（設定するべき設定値の初期値が予め設定されている状態）が提供される。そしてユーザにワークフローが提供されると、ユーザは、各機能の初期値を設定する。この初期値の設定とは、例えば「原稿読込」では、スキャナの読込値の指定、「認証」の場合には、アクセスするサーバへのログインユーザ情報の指定、また「送信」では送信先の指定などである。
【０００４】
特許文献１には、管理者が、関連性のある一連の処理の流れを予めＰＣでツールを利用して作成し、これらを複数パターンのワークフローとして提供する。ユーザは、その提供された複数のワークフローから所望のワークフローを選択して利用することが記載されている。これにより、ユーザは様々な業務の処理のパターンでワークフローを利用することが可能となる。これにより、利用頻度の高いワークフローで設定値の再入力を行う必要がなくなり、業務の効率が高まってユーザの利便性が向上されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−２０３１４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら上記従来技術では、通常の業務で利用されることが想定されるワークフローとして、関連性のある一連の処理の流れを想定した複数の業務の処理パターンを予め作成して提供しなければならない。従って、ワークフローを作成、更新し管理をする管理者、或いは、ワークフローを作成する作成者は、多数のワークフローの作成及び管理をしなければならないため、その負担が大きなものとなる。
【０００７】
図６は、本発明の課題を説明するための具体例を説明する図である。
【０００８】
ワークフロー（フローＩＤ＝１）７００１は、管理者が作成したワークフローで、複合機で実行可能である。このワークフローは、処理すべき作業を順番に複数個の作業工程に分け、これら作業工程の順序と各作業工程の処理内容とを定義するものである。各作業工程は、作業が終了して終了状態（終了パラメータで定義）になると、次の作業工程の作業を開始する（開始パラメータで定義）ように管理される。このメインフロー７００１は呼び出し元となるワークフローで、以下、メインフローと称する。このメインフロー７００１は、複数のステップで構成されており、各ステップは、〔ステップ１〕原稿読込、〔ステップ２〕認証、〔ステップ３〕送信である。このメインフロー７００１は、対応するワークフローを呼び出すことが可能である。ここで呼び出される各ワークフローをサブフローと称する。このサブフローは、所定の作業工程の作業を細分化した作業の単位と、その細分化した作業の単位の前後の繋がりとを定義する。
【０００９】
メインフロー７００１の〔ステップ１〕原稿読込は、複合機における原稿の読み込み機能を示し、一般的にスキャナを利用することによって提供される。またサブフロー７００２は、〔ステップ２〕認証により呼び出されるサブフロー（フローＩＤ＝２）を示し、このサブフローは、〔ステップ１〕ログイン、〔ステップ２〕マイアドレス確認、〔ステップ３〕アドレス帳選択を含んでいる。このサブフロー７００２は、電子メールの機能を提供するサーバがユーザ毎に管理している情報を取得し、ユーザの認証を行う機能を提供する処理を示している。更に７００３は、メインフロー７００１の〔ステップ３〕送信により呼び出されるサブフロー（フローＩＤ＝３）を示す。このサブフロー７００３は、〔ステップ１〕FROMアドレス指定、〔ステップ２〕TOアドレス指定、〔ステップ３〕文書名指定を含んでいる。このサブフロー７００３は、電子メールの機能を提供するサーバに、添付ファイル付きのメールを送信するために必要な情報を設定するための処理を示している。こうして管理者或いは作成者は、このようなサブフローを含むメインフロー７００１を作成した後、ワークフローを実行する複合機に提供する。
【００１０】
これによりユーザは、これらメインフロー７００１、サブフロー７００２及びサブフロー７００３に従った処理順序でワークフローを実行できる。
【００１１】
次に、このようなワークフローの構成を変更する例について説明する。
【００１２】
図７は、図６に示すワークフローの変更例を示す図である。図７と図６との相違点は、図７のサブフロー８００２（ＩＤ＝２−１）では、図６のサブフロー７００２の〔ステップ３〕アドレス帳選択が省略されている。また図７のサブフロー７００３（ＩＤ＝３−１）では、図６のサブフロー７００３の〔ステップ１〕FROMアドレス指定が省略されている。このような変更を行う際、ワークフローの管理者或いは作成者は、図７に示すようなメインフロー８００１、サブフロー８００２及びサブフロー８００３からなるワークフローを作成した後、そのワークフローを複合機に提供する。このようにワークフローの管理者或いは作成者は、ワークフローの変更に際して、多数のワークフローの作成、編集及び管理をしなければならず、その作業負担は膨大なものとなっていた。
【００１３】
本発明の目的は、上記従来技術の問題点を解決することにある。
【００１４】
本発明の特徴は、ワークフローの作成を容易にすることにある。
【課題を解決するための手段】
【００１５】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、複数のステップで構成されるワークフローを作成するための情報処理装置であって、複数のステップで構成されるワークフローの各ステップで用いるパラメータ情報を登録するフロー登録手段と、前記ワークフローに含まれる各ステップの処理の種類、各ステップの順番、各ステップの開始パラメータ及び終了パラメータを含む情報を管理するフロー管理手段と、前記複数のステップのうちの１つで用いるパラメータ情報が、前記フロー登録手段で登録されたパラメータ情報の中から選択された場合に、当該選択されたパラメータ情報に応じて、前記フロー管理手段で管理している情報に基づいて後続のステップで用いるべきパラメータ情報を判断するパラメータ判断手段とを有する。。
【発明の効果】
【００１６】
本発明によれば、複数のステップで構成されるワークフローの作成に際し、各ステップで用いるパラメータ情報を適切に選択でき、ワークフローの作成を容易にすることができる。
【図面の簡単な説明】
【００１７】
【図１】実施形態に係る情報処理システムの構成を示す図である。
【図２】本実施形態に係る複写機の主要部の構成を示すブロック図である。
【図３】本発明の実施形態に係る複写機の操作部の構成を示す平面図である。
【図４】複写機の操作部に表示される操作画面の一例を示す図である。
【図５】実施形態のフロー変更プログラムの機能構成を説明するブロック図である。
【図６】本願発明の課題を説明するための具体例を説明する図である。
【図７】図７に示すワークフローの変更例を示す図である。
【図８】、
【図９】本実施形態に係るフロー変更プログラムを説明するフローチャートである。
【図１０】、
【図１１】本実施形態に係るフロー変更プログラムの制御部による処理を示すフローチャートである。
【図１２】フロー管理部が管理するフロー情報管理テーブルの一例を示す図である。
【図１３】フロー管理部が管理するパラメータ情報管理テーブルの一例を示す図である。
【図１４】フロー管理部が管理するパラメータサブグループ情報管理テーブルの一例を示す図である。
【図１５】フロー変更プログラムによる処理を説明するための概念図である。
【図１６】ワークフローが実行される際に提供するワークフローの処理パターンのイメージ図である。
【図１７】フロー変更プログラムのパラメータ判断部からワークフローがグルーピングされて提供されるイメージ図である。
【発明を実施するための形態】
【００１８】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１９】
図１は、本発明の実施形態に係る複合機及びクライアントコンピュータを収容する情報処理システムの構成を示す図である。尚、本実施形態に係る複合機は、データ送受信機能を有する複写機の場合で説明する。
【００２０】
複写機１００１は、複写機１００２、ファクシミリ装置１００３、データベース／メールサーバ（以下、サーバ）１００４、クライアントコンピュータ（以下、ＰＣ）１００５とともにＬＡＮ１００６に収容されている。尚、複写機１００２は、複写機１００１と同等の機能を有している。ＬＡＮ１００６はイーサネット（登録商標）等である。また複写機１００１は、公衆回線１００８を介してファクシミリ装置１００７と接続されている。複写機１００１は、コピー機能、ファクシミリ機能とともに、原稿画像を読み取り、その読み取って得られた画像データをＬＡＮ１００６上の各装置に送信するデータ送信機能を有する。また複写機１００１は、ＰＤＬ（ページ記述言語）機能を有し、ＬＡＮ１００６に接続されているＰＣ１００５から指示されたＰＤＬデータを受信して印刷できる。また複写機１００１は、複写機１００１で読み取った画像や、ＬＡＮ１００６に接続されているＰＣ１００５から指示されたＰＤＬデータを、複写機１００１のハードディスク２００４（図２）の指定したボックス領域に保存できる。また複写機１００１は、そのボックス領域に保存した画像データを印刷することもできる。更に、複写機１００１は、複写機１００２が読み取ったデータをＬＡＮ１００６を介して受信し、その受信したデータを複写機１００１のハードディスク２００４に保存、或いは印刷できる。また、ＰＣ１００５及びＬＡＮ１００６を介して、サーバ１００４から画像データを受信して複写機１００１に保存したり、印刷できる。またファクシミリ装置１００３は、複写機１００１が読み取ったデータを、ＬＡＮ１００６を介して受信し、その受信したデータをファクシミリで送信できる。
【００２１】
サーバ１００４は、複写機１００１が読み取ったデータを、ＬＡＮ１００６を介して受信し、受信したデータをデータベースとして格納し、また電子メールとして送信する機能を有するサーバ装置である。
【００２２】
ＰＣ１００５は、サーバ１００４と接続されることによって、サーバ１００４から所望のデータを取得して表示できる。またＰＣ１００５は、複写機１００１が読み取ったデータを、ＬＡＮ１００６を介して受信し、その受信したデータを加工、編集できる。
【００２３】
ファクシミリ装置１００７は、複写機１００１が読み取ったデータを、公衆回線１００８を介して受信し、その受信したデータを印刷することが可能である。
【００２４】
図２は、本実施形態に係る複写機１００１の主要部の構成を示すブロック図である。
【００２５】
複写機１００１はコントローラユニット２０００を含み、コントローラユニット２０００には、画像入力デバイスであるスキャナ２０７０や画像出力デバイスであるプリンタ２０９５が接続されるとともに操作部２０１２が接続される。コントローラユニット２０００は、スキャナ２０７０で読み取った画像データをプリンタ２０９５により印刷するコピー機能を実現するための制御を行う。また、コントローラユニット２０００は、ＬＡＮ１００６や公衆回線１００８（ＷＡＮ）と接続することによって、ネットワークや公衆回線を介して画像情報やデバイス情報の入出力を行うための制御を行う。
【００２６】
以下、コントローラユニット２０００の構成及びその実行の流れを説明する。
【００２７】
コントローラユニット２０００はＣＰＵ２００１を有する。ＣＰＵ２００１は、ＲＯＭ２００３に格納されているブートプログラムによりオペレーションシステム（ＯＳ）を立ち上げる。このＯＳでＨＤＤ（ハードディスクドライブ）２００４に格納されているアプリケーションプログラムをＲＡＭ２００２にロードして実行し、これによって各種処理を実行する。このＣＰＵ２００１の作業領域としてはＲＡＭ２００２が用いられる。ＲＡＭ２００２は、ＣＰＵ２００１の作業領域を提供するとともに、プログラムや画像データを一時記憶するためのメモリ領域を提供する。ＨＤＤ２００４にはアプリケーションプログラムがインストールされており、また画像データを格納するのにも使用される。
【００２８】
ＣＰＵ２００１には、システムバス２００７を介して、ＲＯＭ２００３及びＲＡＭ２００２とともに、操作部Ｉ／Ｆ（インタフェース）２００６、ネットワークＩ／Ｆ２０１０、モデム２０５０、イメージバスＩ／Ｆ２００５が接続される。操作部Ｉ／Ｆ２００６は、タッチパネルを有する操作部２０１２とのインタフェースを制御し、操作部２０１２に表示すべき画像データを操作部２０１２に出力し、また、操作部２０１２でユーザの操作により入力された情報をＣＰＵ２００１に送出する。
【００２９】
次に、ネットワークＩ／Ｆ２０１０はＬＡＮ１００６に接続され、ＬＡＮ１００６を介してＬＡＮ１００６上の各装置との間で情報の入出力を行う。モデム２０５０は、公衆回線１００８に接続され、公衆回線１００８を介して情報の入出力を行う。
【００３０】
イメージバスＩ／Ｆ２００５は、システムバス２００７と、画像データを高速で転送するイメージバス２００８とを接続し、各バスの間でデータ形式を変換するためのバスブリッジである。イメージバス２００８は、ＰＣＩバス又はＩＥＥＥ１３９４から構成される。イメージバス２００８には、ラスタイメージプロセッサ（以下、ＲＩＰ）２０６０、デバイスＩ／Ｆ２０２０、スキャナ画像処理部２０８０、プリンタ画像処理部２０９０、画像回転部２０３０及び画像圧縮部２０４０が接続されている。
【００３１】
ＲＩＰ２０６０は、ＰＤＬデータをビットマップイメージに展開する。デバイスＩ／Ｆ２０２０には、スキャナ２０７０及びプリンタ２０９５が接続され、デバイスＩ／Ｆ２０２０は、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２０８０は、スキャナ２０７０から入力した画像データに対して、補正、加工、編集を行う。プリンタ画像処理部２０９０は、プリンタ２０９５に出力する画像データに対してプリンタ２０９５に応じた補正、解像度の変換等を行う。画像回転部２０３０は、画像データの回転を行う。画像圧縮部２０４０は、多値画像データをＪＰＥＧデータに、２値画像データをＪＢＩＧ，ＭＭＲ，ＭＨ等のデータに圧縮するとともに、その伸張処理を行う。
【００３２】
図３は、本発明の実施形態に係る複写機１００１の操作部２０１２の構成を示す平面図である。
【００３３】
表示部２０１３は、表示画面上にタッチパネルシートが貼られた構造となっており、複写機１００１の操作画面を表示するとともに、その画面に表示されたキーが押されるとその位置情報をコントローラユニット２０００のＣＰＵ２００１に伝える。スタートキー２０１４は、原稿画像の読み取り動作を開始する時などに用いられる。スタートキー２０１４の中央部には、緑と赤の２色ＬＥＤ２０１８が設けられ、その色によってスタートキー２０１４が使える状態にあるか否かを示す。ストップキー２０１５は、稼働中の動作を停止させるときに操作される。ＩＤキー２０１６は、使用者のユーザＩＤを入力する時に使用される。リセットキー２０１７は、操作部２０１２からの設定を初期化する時に操作される。
【００３４】
図４は、本実施形態に係る複写機１００１の操作部２０１２に表示される操作画面の一例を示す図である。
【００３５】
操作部２０１２の操作画面の上部には、タッチキーである、各種の機能を選択するためのコピータブ５０１、送信／ＦＡＸタブ５０２、ボックスタブ５０３、ブラウザタブ５０４、右矢印キー５０５が表示される。
【００３６】
図４は、コピータブ５０１のタッチキーが押下されたときのコピー機能の初期画面を表している。コピー機能の各種設定に関する表示は領域５０６に表示され、領域５０６のメッセージ「コピーできます」が表示されている領域には、コピー機能で表示すべきステータスが表示されている。「１００％」は等倍コピーを示し、「Ａ４」は用紙サイズ、「１」はコピーする部数を示している。更に、この領域の下方には、コピー機能の動作モードを設定するためのタッチキーとして、「等倍」「倍率」「用紙選択」「ソータ」「両面」「割込み」「文字」及び濃度調整用キーが表示されている。左矢印キーは濃度を薄くし、右矢印キーは濃度を濃くし、「自動」は濃度の自動調整を指示するキーである。また、この初期画面に表示しきれない動作モードの指定画面は「応用モード」キーを押下することで、階層的に領域５０６内に表示されるようになっている。
【００３７】
また、表示領域５０７は、複写機１００１のステータスを表示する領域であり、例えば、ジャムなどのアラームメッセージや、ＰＤＬプリントが行われているときにＰＤＬプリント中であることを示すステータスメッセージが表示される。表示領域５０７には「システム状況／中止」キー５０８が表示され、この「システム状況／中止」キー５０８を押下すると、複写機１００１のデバイス情報を表示する画面や、プリントジョブ状況を表示する画面（不図示）が表示される。この画面ではジョブの中止を指示することが可能になる。
【００３８】
送信／ＦＡＸタブ５０２を押下すると、複写機１００１で読み取った画像をＬＡＮ１００６上の機器に電子メール送信又はＦＴＰ送信したり、また公衆回線１００８を使ってファクシミリ送信したりするための設定画面（図４）を表示する。
【００３９】
ボックスタブ５０３を押下すると以下のような画面を表示する。複写機１００１で読み取った画像データをＨＤＤ２００４のボックス領域に保存する。また或いは、ボックス領域に保存されている画像データを指定して印刷したり、ＬＡＮ１００６上の機器に送信したりするための設定画面（図示せず）を表示する。
【００４０】
また、５つ以上の機能がコントローラユニット２０００に装備されている場合は、次のような画面が表示される。コピー、送信／ＦＡＸ、ボックス、ブラウザの４つ機能タブ５０１〜５０４の右横に右矢印キー５０５が表示され、右矢印キー５０５が押下されると、別の機能のための画面が表示されるようになっている。
【００４１】
図５は、本発明の実施形態に係るワークフローを自動的に変更するフロー変更プログラムの機能構成を説明するブロック図である。
【００４２】
このフロー変更プログラムは、例えば複写機１００１のＨＤＤ２００４に格納され、アプリケーションプログラムとしてユーザに提供される。また、このフロー変更プログラムは、ＰＣ１００５が保有する情報記憶部（ＨＤＤ）に格納され、アプリケーションプログラムとしてユーザに提供されても良い。尚、ワークフローとは、情報を媒介として連携する複数の作業工程（ステップ）を規定するものである。ここではメインフローと、それに従属するサブフローを含む例で説明する。
【００４３】
フロー登録部６００１は、フロー提供部６００４から提供される複数のステップで構成されるワークフロー情報を解析し、ワークフローを登録するために必要なワークフローに関連するパラメータの情報を取得する。ここで取得されるパラメータの情報は、ワークフローの種類、ワークフローの各ステップの情報（処理の種類、処理の順番）、ワークフローの開始パラメータ、ワークフローの終了パラメータを含む。フロー登録部６００１は、こうして解析したワークフローを登録するとともに、その解析結果を示す情報をフロー管理部６００３に渡す。また開始パラメータは、グループ管理を行う場合、サブグループの情報を登録する機能を提供する。登録する情報は、フロー管理部６００３に渡す。
【００４４】
パラメータ判断部６００２は、パラメータ情報が指定されることで、フロー管理部６００３が管理している開始パラメータの情報を特定し、対応するワークフローを判断する機能を提供する。また、パラメータ情報の１つが選択されることで、後続のステップで用いるべきパラメータ情報の候補が判断される。
【００４５】
フロー管理部６００３は、フロー登録部６００１より渡される情報を管理するために、後述するフローの種類、各ステップの順序、パラメータ、複数のテーブルに格納する。フロー提供部６００４は、ワークフロー情報の取得と、ワークフローに関連するパラメータ情報の取得要求に対してフローを提供する。また、サブグループ情報に関する情報の取得要求に対して、サブフローなどの機能を提供する。またフロー提供部６００４は、フロー管理部６００３が管理するテーブルの情報の取得をする機能を提供する。制御部６００５は、ＨＤＤ２００４に格納されているアプリケーションプログラムである。制御部６００５は、各種機能の管理や呼び出しなど各機能の処理の制御を行う。情報記憶部（メモリ／ＨＤ）６００６は、ＨＤＤ２００４と同様に構成されるものであり、必要な情報を保有しておくためのデータベースである。フロー登録部６００１は、登録対象となるワークフローの情報が指定されることによってフローを複数登録できる。
【００４６】
図８及び図９は、本実施形態に係るフロー変更プログラムの制御部（図５）の処理を説明するフローチャートである。この処理は、フロー提供部６００４から登録対象のワークフローの情報が渡されてフローが登録されるまでに制御部６００５により実行される処理を示している。
【００４７】
図１０及び図１１は、本実施形態に係るフロー変更プログラムの制御部によるパラメータ情報、或いは、サブグループのパラメータ情報による、次のワークフローを特定し判断する処理を示すフローチャートである。
【００４８】
図８及び図９のフローチャートを参照して、メインのフロー情報が提供されて、それに従ってワークフローを作成し、登録する処理の流れを説明する。
【００４９】
まずステップＳ１０１で、制御部６００５は、フロー登録部６００１を呼び出して処理を開始する。ここでは制御部６００５は、フロー提供部６００４から提供されたフロー情報をフロー登録部６００１に渡す。フロー登録部６００１は、そのフロー情報を認識したことを制御部６００５に返す。そして制御部６００５は、フロー登録部６００１にワークフローの種類の判断を依頼する。次にステップＳ１０２で、フロー登録部６００１は、フロー情報がメインフローのワークフローか、サブフローの情報かを判断し、その判断した結果を制御部６００５に返す。ここでメインフローであると判断した場合はステップＳ１０３へ進み、サブフローであると判断するとステップＳ１０４へ進む。ステップＳ１０３では、制御部６００５は、ワークフローの種類がメインフローであることを一時記憶領域（例えばＨＤＤ２００４、以下、同様）に記憶してステップＳ１０５に進む。一方ステップＳ１０４では、制御部６００５は、ワークフローの種類がサブフローであることを一時記憶領域に記憶してステップＳ１０５に進む。ステップＳ１０５では、制御部６００５は、フロー登録部６００１に、ワークフローのＩＤ（識別番号）の発番を依頼してユニークなＩＤを取得する。このときフロー登録部６００１は、シーケンシャルなユニークなＩＤを発番し、そのＩＤを制御部６００５に返す。制御部６００５は、取得したユニークなワークフローのＩＤを一時記憶領域に記憶する。なお、ＩＤは数字に限らず、他の形態の識別子であってもよい。
【００５０】
次にステップＳ１０６に進み、制御部６００５は、フロー登録部６００１に対して、認識したフロー情報で指定されている複数のステップ（工程）のそれぞれに対して、ステップＳ１２４との間のループで処理を実行する。
【００５１】
次にステップＳ１０７に進み、制御部６００５は、フロー登録部６００１に対して、特定されているステップに指定されている名称（例えば図６の各ステップの名称）の情報の取得を依頼する。フロー登録部６００１は、ワークフローのステップに指定されている名称の情報を特定し、その名称を制御部６００５に返す。制御部６００５は、その取得した名称の情報を一時記憶領域に記憶する。次にステップＳ１０８に進み、制御部６００５は、フロー登録部６００１に対して、特定されているステップに、開始パラメータがあるかどうかの判断を依頼する。ここで開始パラメータがあると判断するとステップＳ１０９に進む。ステップＳ１０９では、制御部６００５は、フロー登録部６００１が特定した開始パラメータを取得し、その取得した開始パラメータの情報を、一時記憶領域に記憶してステップＳ１１０に進む。一方、開始パラメータがないと判断するとステップＳ１１０に進み、制御部６００５は、フロー登録部６００１に対して、特定されているステップに終了パラメータがあるかどうかの判断を依頼する。ここで終了パラメータがあると判断した場合はステップＳ１１１に進み、制御部６００５は、フロー登録部６００１が特定した終了パラメータを取得し、その取得した終了パラメータの情報を一時記憶領域に記憶してステップＳ１１２に進む。一方、終了パラメータがないと判断した場合はステップＳ１１２に進み、制御部６００５は、一時記憶領域に記憶したステップごとのワークフローの情報をフロー管理部６００３に渡す。フロー管理部６００３は、その渡されたワークフローの情報を、フロー管理部６００３が管理する後述するパラメータ情報を管理するテーブルに格納する。そして図９のステップＳ１１３に進む。
【００５２】
ステップＳ１１３では、制御部６００５は、フロー提供部６００４に対して、サブグループとして管理されている情報の取得を依頼する。これによりフロー提供部６００４は、管理対象となっている後述のパラメータサブグループ情報管理テーブル（図１４）で管理している情報を全件取得し、制御部６００５は、その取得した管理されているパラメータサブグループ情報を認識する。次にステップＳ１１４に進み、制御部６００５は、取得したパラメータサブグループ情報に、特定しているステップの開始パラメータが存在しているかどうかを調べ、サブグループの対象となっているかどうかを判断する。ここでサブグループの対象となっていると判断するとステップＳ１１６に進み、制御部６００５は、特定したサブグループ情報のサブグループＩＤを一時記憶領域に記憶してステップＳ１１７に進む。一方、対象となっていないと判断するとステップＳ１１５に進み、制御部６００５は、フロー登録部６００１に対して、サブグループのＩＤの発番を依頼し、そのＩＤを取得してステップＳ１１７に進む。このときフロー登録部６００１は、シーケンシャルなユニークＩＤを発番し、そのＩＤを制御部６００５に返す。制御部６００５は、取得したユニークなＩＤを一時記憶領域に記憶する。
【００５３】
次にステップＳ１１７で、制御部６００５は、フロー管理部６００３が管理するパラメータ情報の全件を取得し、その取得したパラメータ情報を認識する。次にステップＳ１１８に進み、制御部６００５は、フロー登録部６００１に対して、ステップＳ１１７で取得したパラメータ情報の全件について、ステップＳ１２１との間でループ処理を依頼する。次にステップＳ１１９に進み、制御部６００５は、フロー登録部６００１に対して、認識している開始パラメータの情報と、特定しているパラメータ情報の開始パラメータとが等しいかどうかの判断を依頼する。ここでフロー登録部６００１が等しいと判断するとステップＳ１２０に進み、そうでなければ、ループを継続する。ステップＳ１２０で、制御部６００５は、特定しているパラメータ情報を一時記憶領域に記憶してループを継続する。こうしてステップＳ１２１で、取得したパラメータの全てに対する処理が終了するとステップＳ１２２に進む。ステップＳ１２２で制御部６００５は、等しいと特定したサブグループの情報と、特定しているステップの開始パラメータから、サブグループの情報を作成してステップＳ１２３に進む。ステップＳ１２３で、制御部６００５は、作成したサブグループの情報をフロー管理部６００３に渡し、フロー管理部６００３が管理する後述するサブグループ情報を管理するテーブルに格納する。
【００５４】
図１０は、パラメータ情報が指定され、対応するワークフローを特定する処理の流れを説明するフローチャートである。
【００５５】
図１０に示す処理は、制御部６００５がパラメータ判断部６００２を呼び出すことにより開始される。まずステップＳ２０１で、制御部６００５は、認識したパラメータ情報をパラメータ判断部６００２に渡す。これによりパラメータ判断部６００２は、パラメータ情報を認識したことを制御部６００５に返す。次にステップＳ２０２に進み、制御部６００５は、フロー管理部６００３が管理するパラメータ情報で管理されている情報を全件取得し、制御部６００５は、その取得したパラメータ情報を認識する。次にステップＳ２０３に進み、制御部６００５は、パラメータ判断部６００２に対して、ステップＳ２０２で取得したパラメータ情報の全件について、ステップＳ２０６との間でループ処理を実行する。次にステップＳ２０４に進み、制御部６００５は、パラメータ判断部６００２に対して、認識しているパラメータ情報と、特定しているパラメータ情報とが等しいかどうかの判断を依頼する。ここでパラメータ判断部６００２が、等しいと判断すればステップＳ２０５へ進み、制御部６００５は、判断結果である特定しているパラメータ情報を一時記憶領域に記憶して、ループを継続する。一方、ステップＳ２０４で等しいと判断しないときは、ループを継続する。
【００５６】
図１１は、パラメータ判断部６００２により、サブグループ情報のパラメータが指定され、対応するワークフローを特定する処理の流れを説明するフローチャートを示す。
【００５７】
この処理は、制御部６００５がパラメータ判断部６００２を呼び出すことにより開始される。先ずステップＳ３０１で、制御部６００５は、認識したサブグループのパラメータ情報をパラメータ判断部６００２に渡し、パラメータ判断部６００２は、サブグループのパラメータ情報を認識したことを制御部６００５に返す。次にステップＳ３０２に進み、制御部６００５は、フロー管理部６００３が管理するパラメータサブグループ情報で管理されている情報を全件取得し、制御部６００５は、取得したパラメータサブグループ情報を認識する。次にステップＳ３０３に進み、制御部６００５は、パラメータ判断部６００２に対して、認識したパラメータサブグループ情報の全件について、ステップＳ３０６との間でループ処理を依頼する。
【００５８】
ステップＳ３０４では、制御部６００５は、パラメータ判断部６００２に、認識しているサブグループのパラメータ情報と、特定しているパラメータサブグループ情報が等しいかどうかの判断を依頼する。ここでパラメータ判断部６００２が等しいと判断するとステップＳ３０５に進み、そうでなければループを継続する。ステップＳ３０５で、制御部６００５は、判断結果である特定しているパラメータサブグループ情報を一時記憶領域に記憶してステップＳ３０６のループに進む。
【００５９】
取得したパラメータサブグループ情報に全てに対する処理が終了するとステップＳ３０７に進み、制御部６００５は、フロー管理部６００３が管理するパラメータ情報を全件取得し、制御部６００５は、その取得したパラメータ情報を認識する。次にステップＳ３０８に進み、制御部６００５は、パラメータ判断部６００２に対して、ステップＳ３０５で記憶したサブグループ情報の件数の全件について、ステップＳ３１４との間でループ処理を行う。次にステップＳ３０９に進み、制御部６００５は、パラメータ判断部６００２に対して、ステップＳ３０３で取得したパラメータ情報の全件について、ステップＳ３１３との間でループ処理を行う。次にステップＳ３１０に進み、制御部６００５は、パラメータ判断部６００２に対して、特定したサブグループのワークフローのＩＤと、特定したパラメータ情報のワークフローのＩＤが等しいかどうかの判断を依頼する。ここでパラメータ判断部６００２が等しいと判断すればステップＳ３１１へ進むが、そうでなければループを継続する。ステップＳ３１１で、制御部６００５は、パラメータ判断部６００２に対して、特定したサブグループの開始パラメータと、特定したパラメータ情報の開始パラメータが等しいかどうかの判断を依頼する。ここでパラメータ判断部６００２は、判断の結果を制御部６００５に返し、等しいと判断すればステップＳ３１２へ進み、そうでなければループを継続する。ステップＳ３１２で、制御部６００５は、判断結果である特定しているパラメータ情報を一時記憶領域に記憶する。
【００６０】
図１２は、本実施形態に係るフロー管理部６００３が管理するフロー情報管理テーブルの一例を示す図である。
【００６１】
図１２のテーブルの項目は、ワークフローのＩＤ１３０１、ワークフローの種類１３０２、ワークフローを実行するステップ順（ステップの順番）１３０３、ステップで提供する機能の名称１３０４を含んでいる。このテーブルは、ワークフローの情報を管理することを目的として、上記情報をテーブル化している。各項目の利用目的は以下の通りである。
【００６２】
ワークフローのＩＤ１３０１は、ワークフローのシーケンシャルなユニークＩＤであり、ワークフロー毎に一義に定義されたＩＤである。ワークフローの種類は、図６に示すようなメインフロー７００１、サブフロー７００２等の種類を示すフィールドである。実行するステップ順１３０３は、同一のワークフロー内での処理の順序を特定するフィールドである。ステップで提供する機能の名称１３０４は、同一のワークフロー内での各ステップの機能の名称を示すフィールドである。
【００６３】
図１３は、本実施形態に係るフロー管理部６００３が管理するパラメータ情報管理テーブルの一例を示す図である。
【００６４】
このテーブルの項目は、ワークフローのＩＤ１４０１、ワークフローを実行するステップ順１４０２、開始パラメータ１４０３、終了パラメータ１４０４を含んでいる。このテーブルは、同一のワークフロー内での各ステップにおけるパラメータの情報を管理することを目的としている。
【００６５】
ワークフローのＩＤ１４０１は、図１２のワークフローのＩＤ１３０１と同様である。ワークフローを実行するステップ順１４０２は、図１２のワークフローを実行するステップ順１３０３と同様である。開始パラメータ１４０３は、ステップの実行開始時に必要となるパラメータの情報を記述したフィールドである。終了パラメータ１４０４は、ステップの実行終了時に返却されるパラメータの情報を示すフィールドである。
【００６６】
図１４は、本実施形態に係るフロー管理部６００３が管理するパラメータサブグループ情報管理テーブルの一例を示す図である。
【００６７】
図１４のテーブルの項目は、サブグループＩＤ１５０１、サブグループ名１５０２、開始パラメータ１５０３、ワークフローＩＤ１５０４を含んでいる。このテーブルは、サブグループに関する情報を管理することを目的としている。
【００６８】
サブグループＩＤ１５０１は、サブグループのシーケンシャルなユニークＩＤである。サブグループ名１５０２は、サブグループの名称を表すフィールドである。開始パラメータ１５０３は、図１３の開始パラメータ１４０３と同様である。ワークフローＩＤ１５０４は、図１２のワークフローのＩＤ１３０１と同様である。
【００６９】
図１５は、本実施形態に係るフロー変更プログラムにより処理を説明するための概念図である。ここでは図１２、図１３、及び図１４に記載したテーブルを使用した例で説明する。
【００７０】
１６００はメインフロー（フローＩＤ＝１）を示し、これは図６のメインフロー７００１と同じである。１６０１は、サブフロー（フローＩＤ＝２）を示し、これは図７のサブフロー７００２と同様である。１６０２は、サブフロー（フローのＩＤ＝３）を示し、図６のサブフロー７００３と同様である。１６０３は、サブフロー（フローのＩＤ＝４）を示し、これはサブフロー１６０２の別処理パターンである。
【００７１】
本実施形態では、管理者或いは作成者は、メインフロー１６００、サブフロー１６０１、サブフロー１６０２及びサブフロー１６０３のフローの情報を登録するものとする。この登録に際しては、フロー登録部６００１に、メインフロー１６００、サブフロー１６０１、サブフロー１６０２、サブフロー１６０３及びサブフロー１６０４を渡すことでデータの登録が完了する。フロー登録部６００１は、図８のステップＳ１０１からステップＳ１１２、又は、図９のステップＳ１１３からステップＳ１２４の処理を呼び出すことで、フロー管理部６００３に登録する情報を生成する。フロー管理部６００３は、ステップＳ１１２又はステップＳ１２３において、生成された登録情報を登録することで、図１２、図１３及び図１４に記載したテーブルのデータを作成する。
【００７２】
以上説明したように、フロー登録部６００１に前述のワークフローを渡すことにより、そのワークフローのデータの登録が完了するため、作成及び管理の手間が省ける。
【００７３】
図１６は、本実施形態に係るフロー変更プログラムが保有するパラメータ判断部６００２が提供するワークフローを特定する機能を利用することで、ワークフローが実行される際に提供するワークフローの処理パターンのイメージ図である。
【００７４】
パラメータ判断部６００２は、フロー提供部６００４から情報を取得しながら、以下のようなパラメータの判断を行う。
（１）１７００で示す遷移のケース
（判断１）メインフロー１６００の終了したステップは、メイン（フローＩＤ＝１）ステップ：１〔原稿読込〕である。従って、図１５より、この〔原稿読込〕の終了パラメータは〔入力系情報〕となる。
（判断２）次に実行するステップは、開始パラメータが〔入力系情報〕のステップとなる。よって図１５より、（判断結果）サブフロー（フローＩＤ＝２）ステップ：１〔ログイン〕の開始パラメータが〔入力系情報〕であるため、該当するステップであると判断される（図１０のステップＳ２０５で格納される）。
（２）１７０１で示す遷移のケース
（条件１）サブフロー１６０１の終了したステップは、サブフロー（フローＩＤ＝２）ステップ：１〔ログイン〕である。図１５より、このステップ：１〔ログイン〕の終了パラメータは、〔入力系情報＋認証系情報（ログイン）〕である。
【００７５】
（判断２）従って、次のステップは、開始パラメータが、〔入力系情報＋認証系情報（ログイン）〕のステップとなる。
（判断結果）図１５より、サブフロー（フローＩＤ＝３）ステップ：１〔FROMアドレス指定〕が該当するステップと判断される（図１０のステップＳ２０５で格納される）。
（３）１７０２で示す遷移のケース
（条件１）サブフロー１６０１の終了したステップは、サブフロー（ＩＤ＝２）のステップ：２〔マイアドレス確認〕である。このステップ：２〔マイアドレス確認〕の終了パラメータは、図１５より〔入力系情報＋認証系情報（ログイン、マイアドレス）〕である。
（判断２）次のステップは、開始パラメータが、〔入力系情報＋認証系情報（ログイン、マイアドレス）〕である、サブフロー（フローＩＤ＝３）ステップ：２〔TOアドレス指定〕が該当するステップとなる（図１０のステップＳ２０５で格納される）。
（４）１７０３で示す遷移のケース
（条件１）サブフロー１６０１の終了したステップは、サブフロー（ＩＤ＝２）のステップ：３〔マイアドレス帳選択〕である。従って、図１５より、このステップの終了パラメータは、〔入力系情報＋認証系情報（ログイン、マイアドレス、アドレス帳）〕となる。
（判断２）従って、次のステップの開始パラメータは、〔入力系情報＋認証系情報（ログイン、マイアドレス、アドレス帳）〕となる。そして図１５から、サブ（フローＩＤ＝３）ステップ：３〔文書名指定〕が該当するステップとなる（図１０のステップＳ２０５で格納される）。
【００７６】
このようにして、終了したステップの終了パラメータと、サブフローの各ステップの開始パラメータとを比較することにより、その終了したステップに続いて実行されるステップを特定することができる。
【００７７】
＜サブグループ情報のパラメータが指定されるケース＞
図１７は、本実施形態に係るフロー変更プログラムのパラメータ判断部６００２からワークフローがグルーピングされて提供されるイメージ図である。
【００７８】
パラメータ判断部６００２では、以下のようなパラメータの判断を行う。
【００７９】
１８００で示す遷移を実行した際に提供されるサブグループ情報として、（条件１）終了したステップはメイン（フローＩＤ＝１）のステップ：２〔認証〕である。従って、このステップの終了パラメータは、図１５より〔入力系情報＋認証系情報（ログイン）〕である。
（判断２）次に実行されるステップは、サブフローの開始パラメータが、〔入力系情報＋認証系情報（ログイン）〕のステップである。
（判断結果）サブグループのＩＤ（ＩＤ＝Ｓｕｂ-１）のフロー（ＩＤ＝３）とフロー（ＩＤ＝４）が該当するもの（ステップＳ２０５で格納される）となる。
【００８０】
１８０１及び１８０２で示す遷移を実行した際に提供するフローの情報として、
（１）１８０１で示す遷移のケース
（条件１）パラメータサブグループ情報で、フロー（ＩＤ＝３）を選択する。この開始パラメータは、入力系情報＋認証系情報（ログイン）である。
（条件２）次のステップの開始パラメータは、入力系情報＋認証系情報（ログイン）であるため、サブ（フローＩＤ＝３）ステップ：１〔FROMアドレス指定〕が該当するステップとなる（図１１のステップＳ３１２で格納される）。
（２）１８０２で示す遷移のケース
（条件１）パラメータサブグループ情報で、フロー（ＩＤ＝４）を選択する。この開始パラメータは、入力系情報+認証系情報（ログイン）である。
（条件２）次のステップの開始パラメータは、入力系情報＋認証系情報（ログイン）であるため、図１５よりサブ（フローのＩＤ＝４）ステップ：１〔ログイン〕が該当するステップとなる（図１１のステップＳ３１２で格納される）。
【００８１】
以上説明したように本実施形態によれば、提供したワークフローと登録されているワークフローとに基づいて、各ステップでのパラメータの選択に応じて順次後続のパラメータが決定され、ワークフローが自動的に作成できる。
【００８２】
従って、予め管理者又は作成者によって作成され提供される多数のワークフローの中から、所望のワークフローを選択してワークフローを作成する手間が省ける。
【００８３】
また、次に実行するワークフローの候補が複数存在する場合には、グルーピングされた候補のリストとして提供されるため、多数のワークフローの候補から所望のワークフローを選択する手間を省くことができる。
【００８４】
また本実施形態によれば、管理者、或いは作成者は、フロー登録部６００１にそれぞれのワークフローを渡すことでデータの登録が完了するため、作成及び管理の手間が省ける。また、ワークフローを実行するユーザは、実行時に次に行うべきワークフローが自動的に提供されるため、複数のワークフローの候補から選択をする手間が省ける。更に、次に実行するワークフローの候補が複数存在する場合には、グルーピングされた候補のリストとして自動的に提供されるので、複数のワークフローの候補から選択をする手間を省くこととなり、ユーザの利便性が高まるという効果がある。
【００８５】
（他の実施形態）
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを読み出して実行することによっても達成され得る。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
【００８６】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明のクレームでは、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【図１】
2010219788.tif 000003
【図２】
2010219788.tif 000004
【図３】
2010219788.tif 000005
【図４】
2010219788.tif 000006
【図５】
2010219788.tif 000007
【図６】
2010219788.tif 000008
【図７】
2010219788.tif 000009
【図８】
2010219788.tif 000010
【図９】
2010219788.tif 000011
【図１０】
2010219788.tif 000012
【図１１】
2010219788.tif 000013
【図１２】
2010219788.tif 000014
【図１３】
2010219788.tif 000015
【図１４】
2010219788.tif 000016
【図１５】
2010219788.tif 000017
【図１６】
2010219788.tif 000018
【図１７】
2010219788.tif 000019