(57)【特許請求の範囲】
【請求項１】
複数の処理が連結されたフローを画面上で生成する情報処理装置であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が画面上で指示された場合、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報が登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定し、
不足すると判定された場合、前記第２の処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得し、
取得した候補処理を画面上に提示し、
提示した候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続して画面上に表示することを特徴とする情報処理装置。
【請求項２】
複数の処理が連結されたフローを画面上で生成する情報処理装置であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が画面上で指示された場合、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報とカテゴリの階層構造を示す階層情報とが登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定し、
不足すると判定された場合、前記第２の処理と同じカテゴリまたは該カテゴリの上位階層のカテゴリに属し、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報と階層情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得し、
取得された候補処理を画面上に提示し、
提示した候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続して画面上に表示することを特徴とする情報処理装置。
【請求項３】
前記第２の処理において２つ以上の入力データが不足する場合、不足する全ての入力データに対応する出力データを有する処理を候補処理として取得することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第２の処理において２つ以上の入力データが不足する場合、不足する入力データの一部に対応する出力データを有する処理を候補処理として取得することを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記処理情報は、１つの処理が複数のカテゴリに属することを許容することを特徴とする請求項１または２に記載の情報処理装置。
【請求項６】
前記情報処理装置は、画面上に提示された前記候補処理より選択された処理が入力データを必要とする場合には、当該選択された処理の入力データが不足していると判定して、
前記選択された処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得し、
取得した候補処理を画面上に提示し、
提示した候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記選択された処理の前段の処理として接続して画面上に表示する、ことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
複数の処理が連結されたフローを生成する情報処理装置による情報処理方法であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が指示された場合、前記情報処理装置のコンピュータが、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報が登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定する判定工程と、
前記判定工程で不足すると判定された場合、前記情報処理装置のコンピュータが、前記第２の処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得する取得工程と、
前記情報処理装置のコンピュータが、前記取得工程で取得した候補処理を表示装置に表示させる提示工程と、
前記情報処理装置のコンピュータが、前記提示工程で提示された候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続する接続工程とを備えることを特徴とする情報処理方法。
【請求項８】
複数の処理が連結されたフローを生成する情報処理装置による情報処理方法であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が指示された場合、前記情報処理装置のコンピュータが、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報とカテゴリの階層構造を示す階層情報とが登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定する判定工程と、
前記判定工程で不足すると判定された場合、前記情報処理装置のコンピュータが、前記第２の処理と同じカテゴリまたは該カテゴリの上位階層のカテゴリに属し、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報と階層情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得する取得工程と、
前記情報処理装置のコンピュータが、前記取得工程で取得した候補処理を表示装置に表示させる提示工程と、
前記情報処理装置のコンピュータが、前記提示工程で提示された候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続する接続工程とを備えることを特徴とする情報処理方法。
【請求項９】
前記取得工程では、前記第２の処理において２つ以上の入力データが不足する場合、前記情報処理装置のコンピュータが、不足する全ての入力データに対応する出力データを有する処理を候補処理として取得することを特徴とする請求項７または８に記載の情報処理方法。
【請求項１０】
前記取得工程では、前記第２の処理において２つ以上の入力データが不足する場合、前記情報処理装置のコンピュータが、不足する入力データの一部に対応する出力データを有する処理を候補処理として取得することを特徴とする請求項７または８に記載の情報処理方法。
【請求項１１】
前記処理情報は、１つの処理が複数のカテゴリに属することを許容することを特徴とする請求項７または８に記載の情報処理方法。
【請求項１２】
前記情報処理装置のコンピュータが、前記提示工程で提示された候補処理より選択された処理が入力データを必要とする場合には、当該選択された処理の入力データが不足しているとして判定して、
前記選択された処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得し、
取得した候補処理を画面上に提示し、
提示した候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記選択された処理の前段の処理として接続して画面上に表示する、ことを特徴とする請求項７乃至１１のいずれか１項に記載の情報処理方法。
【請求項１３】
コンピュータに、複数の処理が連結されたフローを生成する情報処理を実行させるためのプログラムであって、前記コンピュータに、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が指示された場合、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報が登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定する判定工程と、
前記判定工程で不足すると判定された場合、前記第２の処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得する取得工程と、
前記取得工程で取得した候補処理を表示装置に表示させる提示工程と、
前記提示工程で提示された候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続する接続工程と、を実行させるためのプログラム。
【請求項１４】
コンピュータに、複数の処理が連結されたフローを生成する情報処理を実行させるためのプログラムであって、前記コンピュータに、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が指示された場合、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報とカテゴリの階層構造を示す階層情報とが登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定する判定工程と、
前記判定工程で不足すると判定された場合、前記第２の処理と同じカテゴリまたは該カテゴリの上位階層のカテゴリに属し、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報と階層情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得する取得工程と、
前記取得工程で取得した候補処理を表示装置に表示させる提示工程と、
前記提示工程で提示された候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続する接続工程と、をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の処理を連結した、実行可能なジョブフローの作成に関するものである。
【背景技術】
【０００２】
文書データに施すべきＦａｘ送信、スキャナ及びプリントなどの処理を直列もしくは並列に組み合わせてジョブフローとして設定できるサービス処理装置が特許文献１によって開示されている。このサービス処理装置によれば、ネットワークに接続された機器を用いて、上記複数の処理を連携したジョブフローに従った文書データの処理を実行させることができる。
【特許文献１】特開２００４−２８７８５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
特許文献１のサービス処理装置は、ネットワークに接続された各機器に対して複数の処理を連携して直列処理及び並列処理することができる。しかしながら、並列処理後にさらに処理を続けるようなジョブフローを作成及び実行することはできなかった。例えば、特許文献１のサービス処理装置では、２つの処理を並列に実行して得られた２つの結果を入力とする処理を、当該並列処理の後段に接続したジョブフローを作成することは考慮されていない。
【０００４】
ジョブフローの作成に利用可能な処理には、複数の入力を必要とする処理が数多く存在することが予想される。そのような場合、タスク間の接続性を意識して複雑な並列処理を含んだジョブフローを作成することは困難である。
【０００５】
本発明は、上記課題に鑑みてなされたものであり、並列処理後に、当該並列処理によって得られた複数の結果を用いた処理を続けるというような複雑なジョブフローを容易に作成可能にすることを目的とする。
【課題を解決するための手段】
【０００６】
上記の目的を達成するための本発明による情報処理装置は以下の構成を備えるすなわち、
複数の処理が連結されたフローを画面上で生成する情報処理装置であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が画面上で指示された場合、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報が登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定し、
不足すると判定された場合、前記第２の処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得し、
取得した候補処理を画面上に提示し、
提示した候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続して画面上に表示する。
【０００８】
また、上記の目的を達成するための本発明の他の態様による情報処理装置は以下の構成を備える。すなわち、
複数の処理が連結されたフローを画面上で生成する情報処理装置であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が画面上で指示された場合、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報とカテゴリの階層構造を示す階層情報とが登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定し、
不足すると判定された場合、前記第２の処理と同じカテゴリまたは該カテゴリの上位階層のカテゴリに属し、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報と階層情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得し、
取得された候補処理を画面上に提示し、
提示した候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続して画面上に表示する。
【０００９】
また、上記の目的を達成するための本発明による情報処理方法は、
複数の処理が連結されたフローを生成する情報処理装置による情報処理方法であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が指示された場合、前記情報処理装置のコンピュータが、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報が登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定する判定工程と、
前記判定工程で不足すると判定された場合、前記情報処理装置のコンピュータが、前記第２の処理と同じカテゴリに属するとともに、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得する取得工程と、
前記情報処理装置のコンピュータが、前記取得工程で取得した候補処理を表示装置に表示させる提示工程と、
前記情報処理装置のコンピュータが、前記提示工程で提示された候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続する接続工程とを備える。
【００１１】
また、上記の目的を達成するための本発明の他の態様による情報処理方法は、
複数の処理が連結されたフローを生成する情報処理装置による情報処理方法であって、
フローを生成するために、第１の処理に後続する処理として第２の処理の接続が指示された場合、前記情報処理装置のコンピュータが、複数の処理の各々について入力データと出力データを規定するとともに各処理が属するカテゴリを示す処理情報とカテゴリの階層構造を示す階層情報とが登録された登録手段に登録されている前記第１及び第２の処理の処理情報を参照することにより、前記第２の処理の入力データが不足するか否かを判定する判定工程と、
前記判定工程で不足すると判定された場合、前記情報処理装置のコンピュータが、前記第２の処理と同じカテゴリまたは該カテゴリの上位階層のカテゴリに属し、不足している入力データを出力可能な処理を、前記登録手段に登録されている処理情報と階層情報を参照して、前記登録手段に登録されている前記複数の処理の中から候補処理として取得する取得工程と、
前記情報処理装置のコンピュータが、前記取得工程で取得した候補処理を表示装置に表示させる提示工程と、
前記情報処理装置のコンピュータが、前記提示工程で提示された候補処理のうちの一つを選択する操作に応じて、選択された候補処理を前記第２の処理の前段の処理として接続する接続工程とを備える。
【発明の効果】
【００１２】
本発明によれば、並列処理後に、当該並列処理によって得られた複数の結果を用いた処理を続けるというような複雑なジョブフローを容易に作成することが可能になる。
【発明を実施するための最良の形態】
【００１３】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
【００１４】
まず、本実施形態のシステム構成、およびアプリケーション構成について説明する。
【００１５】
〈システム構成〉
図１は実施形態１に係るタスク連携処理システムの全体構成を図示している。タスク連携処理システムは、印刷処理装置から、印刷処理装置のタスクを含むさまざまなタスクを連携実行可能とするシステムである。
【００１６】
なお、本実施形態におけるタスクとは、文書データに対して実行可能な処理のことを示している。たとえば、印刷処理装置のタスクとしては、文書データのコピー、スキャン、Ｆａｘ送信、印刷処理装置内のハードディスクへの保存、メール送信等を挙げることができる。もちろん、本発明に適用可能なタスクはこれらに限定されるものではない。また、本タスク連携処理システムでは、上記タスクを提供する印刷処理装置の他、さまざまなタスクを提供可能な複数のアプリケーションとも連携可能である。本実施形態では、タスクを実行可能な印刷処理装置やアプリケーション実行する情報処理装置をタスク処理装置と定義する。なお、タスクを実行可能なアプリケーションを実行する装置としては、例えばパーソナルコンピュータ等の情報処理装置が挙げられる。
【００１７】
タスク連携処理システムは、管理サーバ１１、クライアントＰＣ１２、タスク一覧ＤＢ１３、アプリＡ１４、アプリＢ１５、印刷処理装置Ａ１６及び印刷処理装置Ｂ１７を含み、それぞれネットワーク１８で接続されている。なお、アプリＡ１４は情報処理装置１９によって実行されるアプリケーションＡを、アプリＢ１５は情報処理装置１９によって実行されるアプリケーションＢを表している。また、アプリケーション及び印刷処理装置の数は図示のものに限定されるものではない。また、タスク一覧ＤＢ１３はアプリケーション毎に用意するもしくは印刷処理装置のタスク管理とは別にするなど、その形態に関しては何等限定されるものではない。また、アプリＡ１４及びアプリＢ１５を実行する情報処理装置は別々の装置であってもよい。ただし、以下では、図１に示されるように、２つのアプリケーション（アプリＡ１４、アプリＢ１５）及び２台の印刷処理装置（印刷処理装置Ａ１６、印刷処理装置Ｂ１７）が接続されているタスク連携処理システムを用いて説明する。
【００１８】
管理サーバ１１はアプリＡ１４、アプリＢ１５、印刷処理装置Ａ１６、印刷処理装置Ｂ１７の各タスク処理装置の管理を行い、各タスク処理装置の実行可能なタスクをタスク一覧ＤＢ１３で管理する。また、クライアントＰＣ１２は、タスク一覧ＤＢ１３に登録されたタスクから実行可能な所望のタスクを管理サーバ１１を介して取得し、それらを用いてジョブフローを作成する。なお、ジョブフローは複数のタスクを組み合わせて得られる一連の処理を表している。ジョブフローとは、１つのジョブとして実行する単位、即ち、複数タスクを連続実行する単位である。作成されたジョブフローは管理サーバ１１上で管理され、印刷処理装置Ａ１６や印刷処理装置Ｂ１７から実行することができる。
【００１９】
〈動作フロー〉
図２Ａ、図２Ｂは新規アプリケーション（ジョブフローに利用可能なタスクを含むアプリケーション）の追加からジョブフローの実行までの本実施形態１のタスク連携処理システムの動作フローを示している。なお、図２ＡはクライアントＰＣ１２を介してアプリケーションの登録を行う系を示し、図２ＢはクライアントＰＣ１２を介さずにアプリケーションの登録を行う系を示している。
【００２０】
まず、クライアントＰＣ１２を介して、アプリケーションの登録を行う場合（図２Ａ）を、アプリＢ１５が新規追加されたものとして説明する。クライアントＰＣ１２は新規追加されたアプリＢ１５のタスクインターフェース（Ｉ／Ｆ）情報をアプリＢ１５から取得（２１）する。タスクＩ／Ｆ情報には例えば当該タスクが必要とする入力データ、当該タスクの実行により得られる出漁ｋデータの定義が含まれている。次にクライアントＰＣ１２から管理サーバ１１に対して、取得したタスクＩ／Ｆ情報を含めたアプリ情報を送信（２２）し、当該アプリの登録を要求する。アプリ情報とその登録要求を受け取った管理サーバ１１は、タスク一覧ＤＢ１３へアプリＢ１５のタスク情報の登録（２３）を行う。この際、管理サーバ１１はタスクＩ／Ｆ情報にもとづいて図３で後述するようなタスク定義情報を生成し、これをタスク一覧ＤＢ１３に登録する。こうしてアプリＢ１５によって実行可能なタスクがタスク一覧ＤＢ１３に登録される。
【００２１】
以上のような登録処理が完了した後、アプリＢ１５のタスクを含むジョブフローを作成することができるようになる。ジョブフローの作成はクライアントＰＣ１２により行われる。ジョブフローの作成において、クライアントＰＣ１２は、管理サーバ１１を介してタスク一覧ＤＢ１３に登録されているタスク一覧を参照（２４）し、所望のタスクを組み合わせてジョブフローの作成及び登録（２５）を行う。登録されたジョブフローは管理サーバ１１上で管理される。
【００２２】
ジョブフローの登録完了後、管理サーバ１１の管理する印刷処理装置からジョブフローを実行することができる。例えば、印刷処理装置Ａ１６は管理サーバ１１で管理されているジョブフロー一覧を参照（２６）することができる。ジョブフローを実行させたいユーザ２０は、印刷処理装置Ｂ１６から所望のジョブフローを選択し、これを実行（２７）させる。ジョブフローの実行依頼を受け取った管理サーバ１１はジョブフロー内のタスクを実行可能なタスク処理装置へタスク実行依頼（２８）を行い、選択されたジョブフローを実行する。なお、ジョブフロー内のタスクをどのタスク処理装置で実行するか、タスク名等はタスク定義情報としてタスク一覧ＤＢ１３内で管理されるものとするが、その詳細は図３で説明する。
【００２３】
一方、クライアントＰＣ１２を介さずに、アプリケーションの登録を行う場合は図２Ｂのように動作する。図２Ａとの差異は、管理サーバ１１が新規追加アプリケーション（アプリＢ１５）のタスクＩ／Ｆ情報を、直接アプリＢ１５から取得（２９）する点である。従って、図２Ｂでは、アプリＢ１５からクライアントＰＣ１２へのタスクＩ／Ｆ情報の登録（２１）とクライアントＰＣ１２から管理サーバ１１へのアプリ登録（２２）は存在しない。その他の動作フローに関しては図２Ａと同様である。
【００２４】
〈タスク定義情報〉
図３は本実施形態において、タスク一覧ＤＢ１３へタスク情報を登録（タスク登録（２３））する際のタスク定義情報を図示している。タスク定義情報は、タスク名３１、タスク処理装置３２、属性情報３３、入力データ３４、出力データ３５を含む。タスク名３１は、当該タスクのタスク名を表す。タスク処理装置３２は当該タスクを実行可能なタスク処理装置を示す。属性情報３３は、当該タスクを実行する際に必要となる属性情報を表している。属性情報３３について、帳票のフォームとその帳票フォームに差し込むマスタデータを選択し、帳票合成後に帳票を出力するアプリケーションを例に説明する。このアプリケーションでは、帳票の出力フォーマットに、ＰＤＦとして出力、アプリケーション独自の帳票フォーマットで出力の２パターンが存在する。また帳票を出力する場合には、このどちらかを必ず指定する必要がある。つまり、帳票出力を実行する場合には、出力フォーマットを指定しなければタスクを実行することができないが、このタスクを実行するために指定する出力フォーマットが帳票出力タスクの属性情報３３となる。指定時には属性情報３３の欄にＰＤＦ出力もしくは独自フォーマット出力のどちらかが指定されることになる。入力データ３４は、当該タスクを実行するのに必要な入力データを表す。出力データ３５は、当該タスクの実行により出力される出力データを表す。入力データ３４、出力データ３５は、それぞれ複数種類のデータを定義することができる。なお、タスク定義情報の記述形式に関しては特に限定されるものではない。
【００２５】
〈ジョブフロー定義情報〉
次に、クライアントＰＣ１２によって生成され、管理サーバ１１に登録されるジョブフローの定義情報（ジョブフロー定義情報）について説明する。図４Ａ，図４Ｂは本実施形態によるジョブフロー定義情報を説明する図である。
【００２６】
図４Ａは、本実施形態によるジョブフロー定義情報を説明するために、ジョブフロー定義情報を模式的に示したものである。図４Ａの例では、タスク４１（Task1）を実行後、タスク４２（Task2）及びタスク４３（Task3）を並列処理し、その後、タスク４４（Task4）を実行して終了するジョブフローとなっている。
【００２７】
図４Ｂは図４Ａに例示したジョブフロー定義情報をＸＭＬ形式で示したものである。本実施形態では、タスクの実行順序を定義するため、ＸＭＬ内にtaskタグが用意され、該タスクの前に実行するタスク名をbeforeタグに、該タスクの後に実行するタスク名をafterタグに記述される。また、タスク定義情報内にタスクの属性に関する情報（図３の属性情報）が定義されている場合は、propertyタグ内に該当する情報を記述する。上記定義をジョブフロー内に定義されているタスク分記述することによってジョブフロー定義情報が完成する。なおジョブフロー定義情報の記述は、タスク間の前後関係を明記できるものであれば、上記のようなＸＭＬ形式に限定するものではない。
【００２８】
〈タスクのアイコン表示〉
図５Ａは本発明におけるタスク定義情報からタスクをアイコン表示した例を図示している。図３で説明したように本発明におけるタスク定義情報は、タスクの実行に必要な入力データ及びタスクを実行した結果の出力データを有しており、アイコンにはこれらの情報が反映されている。本タスク連携処理システムではジョブフローの作成を容易に行うため、ジョブフロー作成エディタ上でのタスクを図５Ａのようなアイコンで示す。そして、それぞれのタスクは図５Ｂに示すような意味をもつ。例えば、TaskAはタスク定義情報において入力データの定義はなく、出力データに「ＰＤＦデータ」が定義されている。従って、図５ＡのTaskAアイコン５１に示されるように、出力側のみに、データ内容（ＰＤＦデータ）とともに矢印が示される。また、TaskBは、図５Ｂに示されるように、入力データがＰＤＦデータ、出力データがＴＸＴデータとなっている。よって、図５ＡのTaskBアイコン５２に示されるように、入力側と出力側にデータ内容と矢印が示される。同様に、TaskCでは２種類の入力データが定義されているので、TaskCアイコン５３では入力側に２つの矢印がデータ内容とともに示されている。本実施形態では、図６で後述するジョブフロー作成エディタにより、管理者もしくは権限をもつユーザがこれらのアイコンを用いてジョブフローを作成する。以下、タスクを表すアイコンをタスクアイコンと称する。
【００２９】
〈ジョブフロー作成エディタ〉
図６Ａ，図６Ｂは本実施形態におけるジョブフロー作成エディタのユーザインターフェース例を示す図である。ジョブフロー作成エディタのユーザインターフェースは、タスク一覧ウィンドウ６１及びワークスペースウィンドウ６７から構成され、マウスカーソル６０を用いて操作される。
【００３０】
タスク一覧ウィンドウ６１は、操作時にアクティブなタスク処理装置内のタスク一覧を表示するためのアクティブサブウィンドウ６２と、非アクティブなタスク処理装置の一覧を表示するための非アクティブサブウィンドウ６３から構成される。また、本タスク連携処理システムで利用可能なタスク処理装置がそれぞれアイコンで表示されており、アイコン６４が印刷装置Ａ１６に、アイコン６５がアプリＡ１４に、アイコン６６がアプリＢ１５にそれぞれ対応している。即ち、図６Ａでは、印刷処理装置Ａ１６、アプリＡ１４、アプリＢ１５のタスク処理装置が利用可能であることが示されている。
【００３１】
ジョブフロー作成エディタ起動時にアクティブサブウィンドウ６２内に表示されるタスク一覧は、あらかじめ設定されたタスク処理装置のタスクの一覧である。図６Ａの例では印刷処理装置Ａ１６（アイコン６４）がデフォルトに設定されている状態が示されている。また図６Ａの例では、アクティブウインドウ６２内にタスクアイコン５１〜５４が表示されており、印刷処理装置Ａ１６内にTaskA、TaskB、TaskC、TaskDの４つのタスクが存在していることを示している。
【００３２】
ワークスペースウィンドウ６７内は作成するジョブフロー名を入力するテキストフィールド６８及びタスクを配置していくためのジョブフロー作成ウィンドウ６９から構成される。
【００３３】
一方、図６Ｂでは、ジョブフロー作成時にアプリＡ１４のアイコン６５をクリックした後のジョブフロー作成エディタを図示している。選択されたアプリＡ１４（アイコン６５）のもつタスク一覧がアクティブサブウィンドウ６２内に表示され、起動時にアクティブであった印刷処理装置Ａ１６のタスク一覧は非アクティブウィンドウ６３内にデバイスアイコン６４としてまとめて表示される。なお、タスクアイコン６５−１〜６５−３はアプリＡ１４内に存在するタスクの一覧を示している。
【００３４】
以上のような構成を備えた本実施形態のタスク連携処理システムの動作について、以下、具体例を示しながら説明する。
【００３５】
《例１》
図７は例１によるタスク連携処理システムの概要を示す図である。クライアントＰＣ７２は図１のクライアントＰＣ１２に対応している。例１において、連携するアプリケーションはコンテンツ管理サーバ７１、クライアントＰＣ７２から構成され、それぞれネットワーク７３で接続されている。例えば、図７ではクライアントＰＣ７２とコンテンツ管理サーバ７１で各々帳票に関するアプリケーションが動いており、そのサーバとクライアント上のアプリケーションが連携してタスクを形成している。なお、クライアントＰＣ７２或いはコンテンツ管理サーバ７１が管理サーバ１１を兼ねてもよい。
【００３６】
コンテンツ管理サーバ７１は、コンテンツデータ７４、マスタデータ７５、フォームデータ７６を管理している。コンテンツデータ７４は、画像データやＰＤＦカタログデータなどを登録したものである。マスタデータ７５は、商品などの基本情報をテキストデータで登録したものである。フォームデータ７６は、帳票データなどを作成するための雛型となる帳票テンプレートを登録したものである。コンテンツ管理サーバ７１はクライアントＰＣ７２からマスタデータ及びフォームデータの指定（７７）を入力として受け取り、マスタデータ及びフォームデータから帳票データを作成し、その帳票データを出力結果（７８）としてクライアントＰＣ７２へ返す。即ち、例１において生成、実行されるジョブフローは、クライアントが所望するさまざまな帳票を容易に作成可能とするものである。
【００３７】
図８は例１において連携するアプリケーションに含まれるタスクの一部についてそれらのアイコン表示例を示す図である。図８には４つのタスクが例示されており、各タスクの入出力データは図１４に示す通りである。例えば、フォーム選択タスク（Task1）はフォームデータを選択するタスクであり、タスクアイコン８１はこれに対応するアイコンである。フォーム選択タスクには図１４に示されるように０個の入力データと１個の出力データが存在する。従って、タスクアイコン８１には、出力データのみが示されている。テキスト抽出タスク（Task2）はＰＤＦカタログデータからテキストを抽出するタスクであり、タスクアイコン８２がこれに対応する。テキスト抽出タスクには１つの入力データと１つの出力データが存在し、タスクアイコン８２にはこの状態が明示されている。同様に、帳票合成タスク（Task3）はクライアントから指示されたマスタデータ及びフォームデータから帳票データを合成するタスクであり、タスクアイコン８３がこのタスクに対応する。また、マスタ選択タスク（Task4）はマスタデータを選択するタスクであり、タスクアイコン８４がこのタスクを表している。
【００３８】
図９Ａ，図９Ｂはタスクをカテゴライズするためのタスク定義情報を図示している。図９Ａは本タスク連携処理システムで連携するアプリケーションのタスク定義情報を示している。連携するアプリケーションによっては、図３で説明したタスク定義情報９１の付加情報としてカテゴリ情報９２を設定可能である。この場合、例えば図４Ｂに示したＸＭＬ記述において、categoryタグを設けてカテゴリ名を記述するようにすればよい。図９Ｂは、マスタ選択タスク８４のタスク定義情報を図示している。図９Ｂでは、マスタ選択タスク８４がアプリＡ（例１で連携するアプリケーション）の「帳票出力」カテゴリに属していることを示している。
【００３９】
図１０は図９Ａ，図９Ｂのタスク定義情報により、図８で示したタスク等をカテゴライズした例を図示している。例１で利用可能な各タスクはそれぞれ「帳票出力」カテゴリ１０１と「カタログ登録」カテゴリ１０２にカテゴライズすることができる。「帳票出力」カテゴリ１０１には、帳票合成タスク、フォーム選択タスク、マスタ選択タスクが分類されている。また、テキスト抽出タスク、サムネイル作成タスク、ページ分割タスクが「カタログ登録」カテゴリ１０２に分類されている。
【００４０】
図１１Ａ〜Ｃは、上述したジョブフロー作成エディタを用いた、例１におけるジョブフローの作成手順を図示している。例1では、図７で示すアプリケーションを使用し、帳票データを出力するまでの流れを定義したジョブフローを作成する。図１１Ａ〜Ｃは、ジョブフロー作成エディタのジョブフロー作成ウィンドウ６９（図６）上での操作例を示している。
【００４１】
ジョブフロー作成者は、ジョブフローの作成を開始し、例えばまず図１１Ａに示すようにタスクアイコンを配置する。タスクアイコンは、アクティブサブウィンドウ６２に表示されたタスクアイコンをドラッグ＆ドロップすることにより配置される。図１１Ａの例では、スタートアイコン１１１から開始し、フォーム選択タスクに対応するタスクアイコン８１に続いて、帳票合成タスクに対応するタスクアイコン８３が配置された状態が示されている。
【００４２】
図１１Ｂは、並列処理の合流を含むジョブフローの作成手順を図示している。タスクアイコン８３には、入力データが２つ必要であることが示されている。従って図１１Ａに示されるように、タスクアイコン８３が配置されると、これに対応する帳票合成タスクにはＰＤＦデータ及びＴＸＴデータの２つの入力データ必要であることがわかる。そのため、タスクアイコン８３を配置した時点では、入力データがそろっておらず、タスクアイコン８３（帳票合成タスク）に続くタスクを配置することができない。
【００４３】
そこで、複数の入力が必要なタスクのアイコンがジョブフロー作成ウィンドウ６９（図６）上に配置された時点で、対応するタスクが入力として必要なデータを出力データにもつタスクの候補を表示（１１５）する。図１１Ａ、図１１Ｂの例では、タスクアイコン８３がジョブフロー作成ウィンドウ６９上に配置された時点で、対応する帳票合成タスクが入力として必要なデータ１１４を出力データにもつタスクの候補が表示される。なお例１で候補として表示されるタスクは、帳票合成タスク８３が必要とする入力データと同じデータ型を出力データにもつタスクでかつ該タスク８３と同カテゴリに属するタスクとする。
【００４４】
同カテゴリのタスクを候補として出力することによって、入出力のデータ型としては同じだが、実際にジョブフローとしては成立しないようなタスクが配置されることを回避できる。出力データが複数のタスクを連携するような場合は、処理実行後のデータを渡すだけなので特に後続するタスクに制限はない。これに対して、上述した帳票合成タスクのように複数の入力データを必要とする場合は、制限を設ける必要がある。すなわち、タスクの出力側に後段のタスクを接続する場合には、出力データの型の一致さえ見ればよいが、タスクの入力側にタスクを接続する場合にはカテゴリの一致まで考慮する必要がある。本例では、複数入力を必要とするタスクを含む、ジョブフローの作成に利用可能なタスクをカテゴライズして管理することにより、この制限を実現している。
【００４５】
例えば、テキスト抽出タスクはその出力データがＴＸＴデータであり、帳票合成タスクの入力データと同じデータ型であるが、カテゴリが異なるためジョブフローとして定義することができない。従って、テキスト抽出タスクに対応するタスクアイコン８２はジョブフローとして定義することができず、図１１Ｂに示されるように候補として表示されない。また、マスタ選択タスクは、その出力データが帳票合成タスクの入力データと同じデータ型（ＴＸＴデータ）であり、かつ同カテゴリとして管理されているタスクである。従って、図１１Ｂに示されるように、マスタ選択タスクに対応するタスクアイコン８４が候補として表示されることになる。なお、候補タスクに対応するタスクアイコンの表示は、図１１１Ｂのような破線によるものに限られず、所定色での表示、点滅表示等、候補タスクであることがユーザに認識できる形態とすればよい。
【００４６】
以上のように候補タスクの一覧が提示されると、ジョブフロー作成者は、帳票合成タスク（タスクアイコン８３）を実行可能にするために必要な、所望のタスクを候補タスク一覧（図１１Ｂではタスクアイコン８４のみ）から選択することができる。候補タスク一覧から選択されたタスクアイコンは、タスクアイコン８３で示される帳票合成タスクへ続くタスク（帳票合成タスクの前段のタスク）として配置される。例えば、タスクアイコン８４（マスタ選択タスク）が選択されると、帳票合成タスクの前段に、フォーム選択タスクと並列に処理が実行されるようにマスタ選択タスクが配置され、図１１Ｃに示されるようなジョブフローが生成されることになる。
【００４７】
図１１Ｃは並列処理の合流を含んだジョブフローを作成した結果を図示している。図１１Ｃのジョブフローでは、タスクアイコン８３後にＥｎｄアイコン１１８が接続されている。従って、フォーム選択、マスタ選択がなされた後、帳票合成タスクを実行した時点で当該ジョブフローによる処理は終了する。
【００４８】
なお、図１１Ｂで示された候補タスク一覧から選択されたタスクが更に入力データを必要とするタスクであった場合は、上記と同様の手順で、当該選択されたタスクに接続され得る候補タスクが表示する。一方、選択されたタスクが入力データを必要としないタスクである場合は、選択されたタスクの実行開始地点を任意に設定することができる。図１１Ｃの例では選択されたマスタ選択タスク（タスクアイコン８４）は入力データを必要としない。図１１Ｃでは、タスクアイコン８４が示すマスタ選択タスクの実行開始地点がスタート地点に配置されている（１１９）。なお、このような実行開始地点の設定は、デフォルトでスタート時としておき、ユーザの操作指示により任意に設定できるようにしてもよいし、種々の変形が考えられる。
【００４９】
図１２は本実施形態におけるジョブフロー作成エディタの全体処理のフローチャートを示している。
【００５０】
ジョブフロー作成エディタが起動され処理が開始されると、ステップＳ１において、タスクがジョブフロー作成ウィンドウ６９（図６）上に配置されたかどうかチェックする。タスクが配置されると、ステップＳ１からステップＳ２へ進み、配置されたタスクの入力データが不足しているかどうかをする。前段のタスクの出力データが配置されたタスクの入力データの全てを満たしていない場合、入力データが不足していると判定される。入力データが不足していない場合はステップＳ１へ戻る。一方、入力データが不足している場合は、ステップＳ３へ進み、図１１Ｂにより上述したような候補タスクの表示を行い、ユーザにタスクを選択させる。その後、ステップＳ１へ戻り、上記の処理を繰り返す。図１２に示される処理は、ジョブフローの作成終了が検出されるまで（本実施形態ではＥｎｄアイコンの配置が検出されるまで）繰り返される。Ｅｎｄアイコンが配置されると、ジョブフローの作成終了であるとして本処理を終了する。
【００５１】
図１３は本実施形態におけるタスクの検索・表示・選択（図１２のステップＳ３）の処理を示すフローチャートである。
【００５２】
まず、ステップＳ１０１において、タスクが必要とする入力データ（不足している入力データ）の型をIdataに格納する。そして、ステップＳ１０２において、該当タスク（＝Ｔａとする）のカテゴリ情報（＝Ｃａとする）を取得する。次に、ステップＳ１０３〜Ｓ１０６では、カテゴリＣａに属する全てのタスクについて、出力データの型が該当タスクの入力データの型（Idata）と一致するタスクを一覧表示対象に選択する。即ち、ステップＳ１０４において、ｉ番目のタスクTa_iの出力データの型がIdataと一致するかを判定し、一致すればステップＳ１０５において、そのタスクTa_iを一覧表示対象に設定する。以上のステップＳ１０４とＳ１０５の処理をカテゴリＣａに属する全てのタスク（ｉ＝１〜ｎ：ｎはカテゴリＣａに属する全タスク数）について行う（ステップＳ１０３、Ｓ１０６）。以上のようにして、タスク一覧ＤＢ１３に登録されたタスク定義情報を参照することにより、候補タスクが選択される。
【００５３】
ステップＳ１０３〜Ｓ１０６の処理を終了すると、ステップＳ１０７に進み、候補タスクに設定されたタスク一覧を表示する。表示されたタスクの中からジョブフロー作成者によりタスクが選択されるとステップＳ１０８からステップＳ１０９に進む。なお、選択されたタスクをＴｂとする。ステップＳ１０９では、選択されたタスクＴｂが入力データを必要とするかどうかチェックし、入力データが必要なければ処理を終了する。入力データを必要とする場合は、ステップＳ１１０へ進み、選択されたタスクＴｂを対象として「タスク検索＆表示＆選択」処理を再帰的に行う。
【００５４】
図１１Ａ〜Ｃに示すジョブフローの作成処理について図１２、図１３のフローチャートを参照しながら説明する。
【００５５】
ジョブフローエディタが起動されると図１２に示す処理が開始される。ユーザによりStartアイコン１１１が配置され、続いてフォーム選択タスク（タスクアイコン８１）が配置される。フォーム選択タスクのタスクアイコン８１が配置されると、ステップＳ１からステップＳ２へ進み、配置されたフォーム選択タスクの入力データが複数であるか、すなわち必要な入力データが不足しているかどうかをチェックする。上述したようにフォーム選択タスクの入力データは存在しない（入力データは不足しない）ため、処理はステップＳ２からステップＳ１へ戻り、次のタスクの配置を待つ。次に、ユーザが帳票合成タスクに対応するタスクアイコン８３を配置すると、再び処理はステップＳ１からステップＳ２進み、帳票合成タスクの入力データが不足しているかどうかチェックする。帳票合成タスクは、入力データとしてＰＤＦデータ及びＴＸＴデータを必要とする。従って、フォーム選択タスクの出力データであるＰＤＦデータだけでは入力が不足しており、処理はステップＳ２からステップＳ３へ進む。
【００５６】
ステップＳ３では、候補タスクの表示（図１１Ｂのタスクアイコン８４の表示）を行い、ユーザにタスクを選択させる。
【００５７】
即ち、帳票合成タスクに不足している入力データの型と帳票合成タスク８３の属するカテゴリを取得し、取得された入力データの型に一致する出力データを有し、取得されたカテゴリに属するタスクを検索する（ステップＳ１０１〜Ｓ１０６）。そして、検索されたタスクを候補タスクとして図１１Ｂに示したように表示する（ステップＳ１０７）。図１１Ｂの例ではタスクアイコン８４が候補タスクとして表示される。このタスクアイコン８４が選択されると、マスタ選択タスクは入力データが不要なので、ステップＳ１０９からステップＳ３ノ処理を終え、その後、ステップＳ１へ戻る。
【００５８】
以上説明したように、例１に拠れば、入力データが不足した場合に接続可能な候補タスクが自動的に選択され、提示される。このため、ユーザは、並列処理を含む複雑なジョブフローを容易に作成できる。また、例１によれば、タスクをカテゴライズして登録しているので、データ入力に不足が生じたタスクの前段に接続可能タスクを、出力データと入力データの方の一致とカテゴリの一致を用いて抽出できる。このため、適切なタスクを提示することができ、ジョブフロー生成の操作性がより向上する。
【００５９】
《例２》
次に、例２について説明する。例１ではタスクのカテゴリをタスク定義情報によって決定した。例２では、カテゴリを階層化して管理し、接続先のタスクと同一のカテゴリ及びその上位階層のカテゴリから候補タスクを取得できるようにする。図１５は例２で連携するアプリケーションの概要を図示している。
【００６０】
例２で連携するアプリケーションはＬＡＮ１５１、ＷＡＮ１５２に接続され、ＬＡＮ１５１とＷＡＮ１５２はファイヤーウォール１５３を介して接続されている。ＬＡＮ１５１内にはメールサーバ１５４、クライアントＡ１５５、クライアントＢ１５６が存在し、それぞれネットワーク１５７で接続されている。また、ＷＡＮ１５２内にはクライアントＣ１５８が存在し、ネットワーク１５７で接続されている。なお、ＬＡＮ１５１内のメールサーバ及びクライアントの数及びＷＡＮ１５２内のクライアント数は限定するものではないが、例２では簡単のため上記構成を利用して説明する。
【００６１】
例２で連携するアプリケーションはＬＡＮ環境（社内）からＷＡＮ環境（社外）へ添付メールを送信する場合に、ある一定の条件を満たしたメールのみ送信可能としたシステムである。例２におけるメール送信アプリケーションでは、送信者が社外へ添付メールを送信する場合に、宛先（ＴｏもしくはＣｃ）へ該送信者の上司のアドレスを指定しなければＷＡＮ環境（社外）へメールを送信することができない仕組み（１５９）になっている。このような方法は社内の機密情報を保持するためによく用いられる方法の１つである。
【００６２】
図１６は例２で連携するアプリケーション内のタスクの一部に対応するタスクアイコンの表示例を示している。例２で連携するアプリケーション内のタスクとしては、例えば、図２１に示されるように、メール本文作成タスク、ファイル添付タスク、社外添付メール送信タスク、社内添付メール送信タスク、上司Ｔｏ指定タスク、上司Ｃｃ指定タスクがある。これらのタスクのそれぞれの入出力データは図２１に示す通りである。
【００６３】
メール本文作成タスクはメールの本文を作成するタスクであり、タスクアイコン１６１はこれに対応するアイコンである。ファイル添付タスクは、メール本文にファイルを添付するタスクであり、タスクアイコン１６２はこれに対応するアイコンである。社外添付メール送信タスクは社外へ添付メールを送信する処理を行なうタスクであり、タスクアイコン１６３はこれに対応するアイコンである。社内添付メール送信タスクは、社内へ添付メールを送信する処理を行うタスクであり、タスクアイコン１６４はこれに対応するアイコンである。上司Ｔｏ指定タスクは、アドレスの送付先を上司に指定する処理を行うタスクであり、タスクアイコン１６５はこれに対応するアイコンである。上司Ｃｃ指定タスクは、上司のアドレスをＣｃに指定する処理を行うタスクであり、タスクアイコン１６６はこれに対応するアイコンである。
【００６４】
図１７は例２におけるタスク情報の一例を示す図である。図１７では、アプリケーションのタスクである上司Ｃｃ指定タスクのタスク定義情報が示されている。図１７の定義情報によれば、上司Ｃｃ指定タスクはアプリＢ（例２で連携するアプリケーションに該当）の「メール送信」カテゴリに属している。
【００６５】
図１８は、カテゴリの階層管理を説明する図である。連携するアプリケーションによっては、複数のカテゴリに属するタスクが多く存在する場合がある。そこで例２では、複数のカテゴリに属するタスクを集めて親カテゴリとして管理し、差分タスクを子カテゴリとして管理することによって、カテゴリを階層化して管理することを可能とする。例えば図１８の１８１に示すように、「カテゴリ名」及び該カテゴリの親となる「親カテゴリ名」を定義することによって、親カテゴリに属するタスクも該カテゴリと同カテゴリに属することを表す。例２では１８２及び１８３に示すように、「社外メール送信」、「社内メール送信」カテゴリはそれぞれ親カテゴリとして「メール送信」カテゴリを持っている。なお、このようなカテゴリ階層管理情報は、管理サーバ１１（図１）が管理するものとする。なお、クライアントＡ〜Ｃ、及びメールサーバ１５４のいずれかが管理サーバ１１を兼ねてもよい。
【００６６】
図１９は図１７のタスク定義情報及び図２１で示したタスク及び図１８で示したカテゴリ階層管理情報をもとにタスクをカテゴライズした例を図示している。図１８に示したカテゴリ階層管理情報例２では、各タスクはそれぞれ「メール送信」カテゴリ１９１と「社外メール送信」カテゴリ１９２と「社内メール送信」カテゴリ１９３にカテゴライズすることができる。そして、「社外メール送信」カテゴリ１９２及び「社内メール送信」カテゴリ１９３は「メール送信」カテゴリ１９１を親カテゴリにもつ。「社外メール送信」カテゴリ１９２及び「社内メール送信」カテゴリ１９３の親カテゴリである「メール送信」カテゴリ１９１には、メール本文作成タスク、ファイル添付タスク、上司Ｔｏ指定タスク、上司Ｃｃ指定タスクが分類される。また、「社外メール送信」カテゴリ１９２には社外添付メール送信タスクが分類され、「社内メール送信」カテゴリ１９３には社内添付メール送信タスクが分類される。
【００６７】
図２０Ａ〜図２０Ｃは例２におけるジョブフローの作成手順を示している。図２０Ａ〜図２０Ｃでは、図１５で示すアプリケーションを使用し、社外へ添付メールを送信するまでの流れをジョブフローとして定義する作成手順を表している。このジョブフローの作成は、ジョブフロー作成エディタのジョブフロー作成ウィンドウ６９（図６）上で行われる。
【００６８】
図２０Ａでは、メール本文作成タスク（タスクアイコン１６１）、ファイル添付タスク（タスクアイコン１６２）及び社外添付メール送信タスク（タスクアイコン１６３）を連携させた状態が示されている。ジョブフロー作成者は、ジョブフロー作成エディタを用いて、ジョブフローの作成を開始する。図２０Ａの例では、スタートアイコン２００から開始し、メール本文作成タスクのタスクアイコン１６１に続いてファイル添付タスクに対応するタスクアイコン１６２、社外添付メール送信タスクに対応するタスクアイコン１６３までが配置されている。
【００６９】
社外添付メール送信タスクには本文データ、添付データ及び上司アドレスデータの３つの入力データ必要である。図２０Ａのタスクアイコン１６３まで配置した時点では、社外添付メール送信タスクの入力データが不足していることがわかる。そのため、社外添付メール送信タスクに後続するタスクを配置することはできない。
【００７０】
例１で説明したように、ジョブフロー作成ウィンドウ６９（図６）に配置されたタスクの入力データが不足している場合、配置された時点で候補タスクが表示される。即ち、該配置されたタスクが入力として必要なデータ２０４を出力データにもつタスクで、且つ、該タスクと同カテゴリに存在するタスクの一覧を候補として表示する。例２では、上述したようにカテゴリが階層管理されており、親カテゴリ内のタスクも候補タスクの対象となる。図１９で説明したように、社外添付メール送信タスクは社外メール送信カテゴリ１９２に属するが、社外メール送信カテゴリ１９２はメール送信カテゴリ１９１を親に持つので、メール送信カテゴリ１９１に属するタスクも候補タスクとして選択される。この結果、図２０Ｂに示されるように、上司Ｔｏ指定タスク及び上司Ｃｃ指定タスクに対応するタスクアイコン１６５，１６６が候補として表示（２０５）されることになる。即ち、図２０Ｂの例では、社外添付メール送信タスクがジョブフロー作成ウィンドウ６９（図６）上に配置された時点で、上司Ｔｏ指定タスクと上司Ｃｃ指定タスクが候補タスクとして提示される。
【００７１】
ジョブフロー作成者は、図２０Ｂで示されたアイコン１６３に対応する社外添付メール送信タスクを実行可能にするために、表示された候補タスクの一覧から所望のタスクを選択できる。そして、選択された候補タスクは、社外添付メール送信タスクへ続くタスクとして配置される。図２０Ｂの例において、上司Ｃｃ指定タスクのタスクアイコン２０７が選択された場合のジョブブローの表示状態を図２０Ｃに示す。図２０Ｃのジョブフローでは、社外添付メール送信タスクに続いてＥｎｄアイコン２０８が配されており、社外添付メール送信タスクを実行した時点で当該ジョブフローは終了する。なお、上司Ｃｃ指定タスクの実行開始地点は任意であるが、図２０Ｃでは、メール本文作成タスクを実行した後に実行されるように設定されている。
【００７２】
図２０Ａ〜Ｃに示したジョブフローの作成処理における処理手順を、図１２、図１３のフローチャートを参照して説明する。
【００７３】
ジョブフローエディタが起動されると図１２の処理が開始される。まず、Startアイコン２００が配置された後に、メール本文作成タスクのタスクアイコン１６１が配置されると、処理はステップＳ１からステップＳ２へ進む。ステップＳ２において、配置されたタスクアイコンに対応するメール本文作成タスクの入力データが不足しているかどうかをチェックする。例２では、メール本文作成タスクの入力データは「ない」ため、処理はステップＳ１に戻り、次のタスクの配置を待つ。メール本文作成タスクの次にファイル添付タスク（タスクアイコン１６２）が配置される。ファイル添付タスクが配置されると、メール本文作成タスクが配置された後と同様にステップＳ１からステップＳ２へ進み、ファイル添付タスクの入力データが不足しているかどうかチェックする。ファイル添付タスクは、前段のメール本文作成タスク１６１の出力データにより入力データが満たされているので処理はステップＳ１へ戻る。
【００７４】
社外添付メール送信タスク（タスクアイコン１６３）が配置されると、ステップＳ１からステップＳ２へ進み、入力データの不足がチェックされる。社外添付メール送信タスクは、入力データとして本文データ、添付データ及び上司アドレスデータを必要とする。図２０Ａの接続状態では、本文データと添付データの２つはファイル添付タスクから取得されるが、上司アドレスデータは取得できない。即ち、ファイル添付タスクの出力データでは社外添付メール送信タスクの入力データは不足しているため、処理はステップＳ３へ進む。ステップＳ３では上述の図１３に示した処理が実行される。
【００７５】
ただし、例２では、図１８に示したようなカテゴリ階層管理情報を参照して、当該タスクの属するカテゴリに親カテゴリが存在する場合、その親カテゴリに属するタスクも候補タスクの対象とする。即ち、ステップＳ１０３〜Ｓ１０６の処理の対象となるタスクは、当該タスクの属するカテゴリとその親カテゴリということになる。ステップＳ１０３〜Ｓ１０６では、社外添付メール送信タスクと同カテゴリ（社外メール送信カテゴリ１９２）とその親カテゴリ（メール送信カテゴリ１９１）に属するタスクで、上司アドレスデータを出力データとするタスクが抽出される。そして、ステップＳ１０７において、候補タスクとして図２０Ｂに示す如く表示する。
【００７６】
候補タスクのうちの一つをユーザが選択すると、選択されたタスク（図２０Ｃでは上司Ｃｃ指定タスク）の出力が社外添付メール送信タスクの入力に接続される。こうして、社外添付メール送信タスクの入力データの不足が解消される。
【００７７】
その後、図２０Ｃに示されるように、Ｅｎｄアイコン２０８を配置することにより、ジョブフローの生成が完了する。
【００７８】
以上説明したように、例２ではカテゴリを階層的に管理し、同一カテゴリ及びその上位階層のカテゴリから候補タスクを取得するようにした。このため、カテゴリの管理をより柔軟に行うことが可能となる。
【００７９】
《例３》
次に、例３について説明する。例３では、１つのタスクが複数のカテゴリに属する場合の例、及び、タスク検索＆表示＆選択処理によって選択されたタスクが更に入力データを必要とする場合を説明する。
【００８０】
図２２は例３で連携するアプリケーションの概要を示している。例３で連携するアプリケーションは印刷処理装置２２０、電子署名サーバ２２１、コンテンツ管理サーバ２２２、クライアントＰＣ２２３から構成され、それぞれネットワーク２２４で接続されている。
【００８１】
例３で連携するアプリケーションは、電子署名対応アプリケーションである。このアプリケーションでは、印刷処理装置２２０からスキャン（２２５）されたデータに電子署名サーバ２２１を使用して電子署名を付与（２２６）する。そして、電子署名が付与されたスキャンデータをコンテンツとしてコンテンツ管理サーバ２２２に登録（２２７）する。また、クライアントＰＣ２２３を操作可能なユーザはコンテンツ管理サーバ２２２に登録された電子署名済みのコンテンツ（印刷処理装置からスキャンされたデータ）を参照２２８することができる。また、必要に応じて電子署名済みのコンテンツの真実性を検証するために、電子署名サーバへ検証２２９を依頼することも可能である。なお、コンテンツ管理サーバ２２２或いは電子署名サーバ２２１が管理サーバ１１を兼ねてもよい。
【００８２】
図２３は例３で連携するアプリケーション内の一部のタスクのアイコン表示例を示している。例３で連携するアプリケーション内のタスクとしては、例えば、図２７に示されるように、スキャンタスク、電子署名付与タスク、検証タスク、プリントタスク、キー取得タスク、ログインタスクがある。スキャンタスク２３１は紙文書のスキャンを実行するタスクである。電子署名付与タスクは、電子署名を付与する処理を実行するタスクである。検証タスクは、署名済みのデータの検証を行うタスクである。プリントタスクは、データをプリント処理するタスクである。キー取得タスクは電子署名を付与するためのキーを取得するタスクである。ログインタスク２３６はユーザ認証をするためのタスクである。各タスクの入出力データは図２７に示す通りである。図２３において、タスクアイコン２３１〜２３６はそれぞれスキャンタスク、電子署名付与タスク、検証タスク、プリントタスク、キー取得タスク、ログインタスクに対応する。
【００８３】
図２４は例３におけるアプリケーションのタスクであるキー取得タスク２３５のタスク定義情報を示している。図２４はキー取得タスクがアプリＣ（例３で連携するアプリケーションに該当）の「電子署名」カテゴリに属していることを示している。また、入力データとしてＩＤデータとpassデータが必要であり、出力データとしてキーデータが出力されることが示されている。
【００８４】
図２５は図２４のタスク定義情報及び図２３で示したタスクをもとにタスクをカテゴライズした例を図示している。例３では、各タスクはそれぞれ「電子署名」カテゴリ２５１と「デバイス」カテゴリ２５２と「ユーザ認証」カテゴリ２５３にカテゴライズされている。「電子署名」カテゴリ２５１には、電子署名付与タスク、検証タスク、キー取得タスク、ログインタスクが分類される。また、「デバイス」カテゴリ２５２にはスキャンタスク及びプリントタスクが分類され、「ユーザ認証」カテゴリ２５３にはログインタスクが分類されている。
【００８５】
図２６Ａ〜図２６Ｄは例３におけるジョブフローの作成手順を図示している。即ち、図２２で示すアプリケーションを使用して、スキャンデータに電子署名を付与し、プリントするまでの流れをジョブフローとして定義する作成手順を表している。なお、図２６Ａ〜Ｄは、ジョブフロー作成エディタのジョブフロー作成ウィンドウ６９（図６）上での操作例を示している。
【００８６】
図２６Ａでは、スタートアイコン２６１から開始し、スキャンタスク（タスクアイコン２３１）に続いて電子署名付与タスク（タスクアイコン２６３）までが配置されている。電子署名付与タスクにはＰＤＦデータ及びキーデータの２つの入力データ必要であるのに対し、スキャンタスク２３１の出力データはＰＤＦデータのみである。従って、電子署名付与タスク２６３まで配置した時点では入力データが不足しており、電子署名付与タスク２６３に続くタスクを配置することができない。そこで、例１、例２で説明したように、候補タスクの一覧を図２６Ｂに示す如く表示する。即ち、入力データが不足しているタスクがジョブフロー作成ウィンドウ６９上に配置された時点で、該タスクが入力として必要なデータを出力データにもつタスクで且つ、該タスクと同カテゴリに存在する候補タスクの一覧を表示（２６５）する。例３では、キーデータを出力データとし、「電子署名」カテゴリ２５１に属するキー取得タスク（タスクアイコン２３５）が候補として表示されることになる。キー取得タスクが選択されると、図２６Ｃに示すようにキー取得タスクに対応するタスクアイコン２３５が確定される。
【００８７】
例３では、図２６Ｂで候補として唯一表示したキー取得タスクは入力データを必要とするタスクである。そのため、該タスクが選択された時点で、該タスクを実行するために必要なタスクの候補が図２６Ｂと同様の方法で表示される。例３では、ログインタスクに対応するタスクアイコン２３６がキー取得タスクと同カテゴリで且つその出力データの型がキー取得タスクの出力データの型と一致する。そのため、図２６Ｃに示されるように、ログインタスクが候補タスクとして表示される。ログインタスク（タスクアイコン２３６）を選択することにより、電子署名付与タスク２３２のための並列処理が完成する。図２６Ｄは並列処理の合流を含んだジョブフローを作成した結果を図示している。
【００８８】
ジョブフロー作成者は、電子署名付与タスクを実行するために必要なタスクの配置が終了後、電子署名付与タスクに続くタスクとしてプリントタスクを配置し、更にＥｎｄアイコン２６７を配置してジョブフローの作成が終了する。なお、ログインタスクの実行開始地点はスタート地点に配置（２６８）される。
【００８９】
以上の図２６Ａ〜図２６Ｄに示された操作に対応する処理を図１２、図１３のフローチャートを参照して説明する。
【００９０】
ジョブフローエディタが起動され図１２の処理が開始される。まず、スキャンタスク（タスクアイコン２３１）が配置されると、ステップＳ２において、配置されたスキャンタスクの入力データが不足しているかどうかをチェックする。スキャンタスクの入力データは「ない」ので、入力データの不足はなく、次のタスクの配置へ進むべく、ステップＳ１へ処理を戻す。次に、電子署名付与タスク８タスクアイコン２３２）が配置されると、スキャンタスクと同様、ステップＳ２で電子署名付与タスクの入力データが不足しているかどうかチェックされる。電子署名付与タスクは、入力データにＰＤＦデータ及びキーデータを必要とするが、これに接続されているスキャンタスクは出力データとしてＰＤＦデータを有するのみである。従って、スキャンタスクでは入力データが不足しており、処理はステップＳ２からステップＳ３へ進む。
【００９１】
ステップＳ３では、「タスク検索＆表示＆選択」処理が実行される。即ち、当該タスクの属するカテゴリに属するタスクから候補タスクの対象とする。即ち、ステップＳ１０３〜Ｓ１０６において、電子署名付与タスクと同カテゴリ（電子署名カテゴリ２５１）に属するタスクで、キーデータを出力データとするタスクが抽出される。ここではキー取得タスクが抽出され、ステップＳ１０７において、候補タスクとして図２６Ｂに示す如く表示される。
【００９２】
このキー取得タスクが選択されると、当該タスクは入力データが必要かどうかが判定される（ステップＳ１０９）。キー取得タスクは、ＩＤデータとpassデータを必要とするため、ステップＳ１１０へ進み、キー取得タスクを対象として「タスク検索＆表示＆選択」処理が再帰的に実行される。
【００９３】
この結果、キー取得タスクと同じカテゴリに属し、ＩＤデータとpassデータを出力データとして持つログインタスクが候補タスクとして表示される（ステップＳ１０７）。ログインタスクが選択されると、ログインタスクは入力データを必要としないので、キー取得タスクを対象とした「タスク検索＆表示＆選択」を終了する。そして、電子署名付与タスクを対象とした「タスク検索＆表示＆選択」が終了し、処理はステップＳ１へ戻る。
【００９４】
その後、プリントタスクが配置されると、ステップＳ１からステップＳ２へ進み、配置されたスキャンタスクの入力データが不足しているかどうかをチェックする。例３では、プリントタスクの入力データは１つであり、入力データの不足はないので処理をステップＳ１に戻す。その後、Ｅｎｄアイコン２６７が配置されると、本ジョブフロー作成処理が終了する。
【００９５】
なお、上記の図１３に示したステップＳ１０４とＳ１０５の処理に関して、図１１Ｂ、図２０Ｂ、図２６Ｂでは、入力データの不足が１つの場合を示している。図２６Ｃでは、キー取得タスクが２つの入力データを必要としており、２つの入力データが不足している場合が示されている。図２６Ｃの例では、ステップＳ１０４、Ｓ１０５において、電子署名カテゴリに属し、２つの入力データを出力データとして有するタスク（ログインタスク）が候補タスクとして提示されている。
【００９６】
しかしながら、複数の入力データが不足した場合に、不足した複数の入力データの一部を含むタスクを候補タスクとして提示するようにしてもよい。図２６Ｃのキー取得タスクの場合、電子署名カテゴリに属し、出力データとしてＩＤデータまたはpassデータを含むタスクを候補タスクとして提示するようにしてもよい。
【００９７】
また、例えば、入力データＡ，Ｂ，Ｃが不足している場合に以下の（１）〜（５）の順に候補タスクを提示するようにしてもよい。なお、（１）〜（５）の候補タスクの提示は、所定のユーザ操作により切り替えるようにする。
（１）Ａ，Ｂ，Ｃを出力データとして有するタスクを候補タスクとする。
（２）Ａ，Ｂを出力データとして有するタスクとＣを出力データとして有するタスクを候補タスクとする。
（３）Ａ，Ｃを出力データとして有するタスクとＢを出力データとして有するタスクを候補タスクとする。
（４）Ｂ，Ｃを出力データとして有するタスクとＡを出力データとして有するタスクを候補タスクとする。
（５）Ａを出力データとして有するタスクとＢを出力データとして有するタスクとＣを出力データとして有するタスクを候補タスクとする。
【００９８】
以上のような実施形態のタスク連携システムによれば、複雑な処理を含むジョブフロー作成時に以下の効果を得ることができる。すなわち、
・入力データの不足を補うための接続可能な候補タスクが表示されるので、複雑な並列処理やタスク間の接続性を意識することなく簡単に目的のジョブフローを作成することができる。
・複数の入力データを必要とするタスクであっても、入力データが１つの場合のタスクと変わらずに容易にジョブフローを作成することができる。
【００９９】
アプリケーションにおけるタスクでは、複数の入力を必要とするタスクが数多く存在することが予想される。そのような場合、アプリケーションを十分理解したユーザでなければ、タスク間の接続性を意識して複雑な並列処理を含んだジョブフローを作成することは困難である。上記実施形態のタスク連携システムによれば、接続可能な候補タスクの提示により並列処理を含んだジョブフローを容易に定義することができる。よって、上記実施形態におけるジョブフロー作成方法を使用することは大変意義のあることである。
【０１００】
＜他の実施形態＞
以上、実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０１】
また、前述の実施形態では、文書データのコピー、スキャン、Ｆａｘ送信、印刷処理装置内のハードディスクへの保存、メール送信等の印刷処理装置のタスクと外部連携するパーソナルコンピュータ等の情報処理装置上で動作するアプリケーションを例に挙げた。つまり印刷処理装置のタスクと情報処理装置上で動作するアプリケーションの処理タスクが連携してジョブフローを形成する例である。しかしながら本発明は印刷処理装置と情報処理装置の連携を必須とするものではなく、印刷処理装置単体内でのジョブフローの生成に適用して良い。また、情報処理装置単体あるいは複数の情報処理装置上で動作するアプリケーションの処理タスクが連携してジョブフローを形成する場合に適用しても良い。
【０１０２】
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したプログラムである。
【０１０３】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１０４】
プログラムを供給するための記録媒体としては以下が挙げられる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などである。
【０１０５】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１０６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
【０１０７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどとの協働で実施形態の機能が実現されてもよい。この場合、ＯＳなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
【０１０８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行なう。
【図面の簡単な説明】
【０１０９】
【図１】実施形態のサービス連携処理システムのシステム構成図を示す図である。
【図２Ａ】実施形態のサービス連携処理システムにおけるアプリケーション追加時からジョブフロー実行までの動作フローを示す図である。
【図２Ｂ】実施形態のサービス連携処理システムにおけるアプリケーション追加時からジョブフロー実行までの動作フローを示す図である。
【図３】実施形態によるタスク定義情報のデータ構成例を示す図である。
【図４Ａ】実施形態におけるジョブフロー定義情報を模式的に示す図である。
【図４Ｂ】図４Ａに例示したジョブフロー定義情報のＸＭＬによる記述例を示す図である。
【図５Ａ】実施形態によるタスクのアイコン表示例を示す図である。
【図５Ｂ】実施形態によるタスクの入出力データ定義例を示す図である。
【図６Ａ】実施形態によるジョブフロー作成エディタのユーザインターフェース表示例を示す図である。
【図６Ｂ】実施形態によるジョブフロー作成エディタのユーザインターフェース表示例を示す図である。
【図７】実施形態のより具体的な例１による連携アプリケーションの概要を示す図である。
【図８】例１の連携アプリケーションにおけるタスクのタスクアイコン表示例を示す図である。
【図９Ａ】例１のタスク定義情報のデータ構成例を示す図である。
【図９Ｂ】例１のマスタ選択タスクのタスク定義情報のデータ構成例を示す図である。
【図１０】例１のタスクをカテゴライズした例を示す図である。
【図１１Ａ】例１のジョブフロー作成手順を説明する図である。
【図１１Ｂ】例１のジョブフロー作成手順を説明する図である。
【図１１Ｃ】例１のジョブフロー作成手順を説明する図である。
【図１２】実施形態によるジョブフロー作成の全体処理を示すフローチャートである。
【図１３】実施形態によるジョブフロー作成の、タスク検索＆表示＆選択処理を示すフローチャートである。
【図１４】例１によるタスクの入出力データ定義例を示す図である。
【図１５】実施形態のより具体的な例２による連携アプリケーションの概要を示す図である。
【図１６】例２の連携アプリケーションにおけるタスクのタスクアイコン表示例を示す図である。
【図１７】例２の上司Ｃｃ指定タスクのタスク定義情報のデータ構成例を示す図である。
【図１８】例２におけるカテゴリの階層管理を説明する図である。
【図１９】例２のタスクをカテゴライズした例を示す図である。
【図２０Ａ】例２のジョブフロー作成手順を説明する図である。
【図２０Ｂ】例２のジョブフロー作成手順を説明する図である。
【図２０Ｃ】例２のジョブフロー作成手順を説明する図である。
【図２１】例２によるタスクの入出力データ定義例を示す図である。
【図２２】実施形態のより具体的な例３による連携アプリケーションの概要を示す図である。
【図２３】例３の連携アプリケーションにおけるタスクのタスクアイコン表示例を示す図である。
【図２４】例３のキー取得タスクのタスク定義情報のデータ構成例を示す図である。
【図２５】例３のタスクをカテゴライズした例を示す図である。
【図２６Ａ】例３のジョブフロー作成手順を説明する図である。
【図２６Ｂ】例３のジョブフロー作成手順を説明する図である。
【図２６Ｃ】例３のジョブフロー作成手順を説明する図である。
【図２６Ｄ】例３のジョブフロー作成手順を説明する図である。
【図２７】例３によるタスクの入出力データ定義例を示す図である。
【図１】
0004756947.tif 000002
【図２Ａ】
0004756947.tif 000003
【図２Ｂ】
0004756947.tif 000004
【図３】
0004756947.tif 000005
【図４Ａ】
0004756947.tif 000006
【図４Ｂ】
0004756947.tif 000007
【図５Ａ】
0004756947.tif 000008
【図５Ｂ】
0004756947.tif 000009
【図６Ａ】
0004756947.tif 000010
【図６Ｂ】
0004756947.tif 000011
【図７】
0004756947.tif 000012
【図８】
0004756947.tif 000013
【図９Ａ】
0004756947.tif 000014
【図９Ｂ】
0004756947.tif 000015
【図１０】
0004756947.tif 000016
【図１１Ａ】
0004756947.tif 000017
【図１１Ｂ】
0004756947.tif 000018
【図１１Ｃ】
0004756947.tif 000019
【図１２】
0004756947.tif 000020
【図１３】
0004756947.tif 000021
【図１４】
0004756947.tif 000022
【図１５】
0004756947.tif 000023
【図１６】
0004756947.tif 000024
【図１７】
0004756947.tif 000025
【図１８】
0004756947.tif 000026
【図１９】
0004756947.tif 000027
【図２０Ａ】
0004756947.tif 000028
【図２０Ｂ】
0004756947.tif 000029
【図２０Ｃ】
0004756947.tif 000030
【図２１】
0004756947.tif 000031
【図２２】
0004756947.tif 000032
【図２３】
0004756947.tif 000033
【図２４】
0004756947.tif 000034
【図２５】
0004756947.tif 000035
【図２６Ａ】
0004756947.tif 000036
【図２６Ｂ】
0004756947.tif 000037
【図２６Ｃ】
0004756947.tif 000038
【図２６Ｄ】
0004756947.tif 000039
【図２７】
0004756947.tif 000040