(57)【要約】【課題】  文書データに関して所定の処理を行うサービスをネットワーク上で連携するにあたって、エラーが発生したとしてもジョブフローをできる限り完遂する。【解決手段】  連携制御部は、３つの判定結果を組合せ条件テーブルに照らし合わせて、文書データ管理部、エラーレベル判定部、サービスタイプ判別部の各々の判別結果の組合せに対応する再実行処理（Ｎ１〜Ｎ３、Ｒ１及びＲ２のいずれか）を行う。【選択図】        図３
2005063160.tif 000002
【特許請求の範囲】
【請求項１】
文書データに関して所定の処理をそれぞれ行う複数のサービスをネットワーク上で連携する指示を表した連携指示情報に基づいて、各々のサービスの連携処理を実行する連携処理装置であって、
前記連携処理におけるサービスで発生したエラーを判別するエラー判別手段と、
前記連携処理で処理された文書データの有無を検出する文書検出手段と、
前記エラー判別手段で判別されたエラーと、前記文書検出手段で検出された文書データの有無とに基づいて、前記連携処理を再実行する連携制御手段と、
を備えた連携処理装置。
【請求項２】
前記連携処理を構成するサービスの種類を判別するサービス種類判別手段を更に備え、
前記連携制御手段は、更に、前記サービス種類判別手段で判別されたサービスの種類に基づいて、前記連携処理を再実行する
請求項１に記載の連携処理装置。
【請求項３】
前記連携制御手段は、前記エラー判別手段で判別されたエラーが復旧可能なエラーであり、前記文書検出手段で文書データが存在すると判別されたときに、前記連携処理のうち前記エラーが発生したサービスから遡って最も近い順のサービスから、前記連携処理を再実行する
請求項１または請求項２に記載の連携処理装置。
【請求項４】
前記連携制御手段は、前記サービス種類判別手段で判別されたサービスの種類が取消不可能な種類のときに、前記取消不可能なサービスをスキップして前記連携処理を再実行する
請求項３に記載の連携処理装置。
【請求項５】
前記連携制御手段は、前記エラー判別手段で判別されたエラーが復旧不可能なエラーであり、前記文書検出手段で文書データが存在しないと判別されたときに、所定の通知を行う
請求項１から請求項４のいずれか１項に記載の連携処理装置。
【請求項６】
文書データに関して所定の処理をそれぞれ行う複数のサービスをネットワーク上で連携する指示を表した連携指示情報に基づいて、各々のサービスの連携処理をコンピュータに実行させる連携処理プログラムであって、
前記コンピュータを、
前記連携処理におけるサービスで発生したエラーを判別するエラー判別手段と、
前記連携処理で処理された文書データの有無を検出する文書検出手段と、
前記エラー判別手段で判別されたエラーと、前記文書検出手段で検出された文書データの有無とに基づいて、前記連携処理を再実行する連携制御手段と、
して機能させる連携処理プログラム。
【請求項７】
前記コンピュータを、
前記連携処理を構成するサービスの種類を判別するサービス種類判別手段として更に機能させ、
前記連携制御手段は、更に、前記サービス種類判別手段で判別されたサービスの種類に基づいて、前記連携処理を再実行する
請求項６に記載の連携処理プログラム。
【請求項８】
前記連携制御手段は、前記エラー判別手段で判別されたエラーが復旧可能なエラーであり、前記文書検出手段で文書データが存在すると判別されたときに、前記連携処理のうち前記エラーが発生したサービスから遡って最も近い順のサービスから、前記連携処理を再実行する
請求項６または請求項７に記載の連携処理プログラム。
【請求項９】
前記連携制御手段は、前記サービス種類判別手段で判別されたサービスの種類が取消不可能な種類のときに、前記取消不可能なサービスをスキップして前記連携処理を再実行する
請求項８に記載の連携処理プログラム。
【請求項１０】
前記連携制御手段は、前記エラー判別手段で判別されたエラーが復旧不可能なエラーであり、前記文書検出手段で文書データが存在しないと判別されたときに、所定の通知を行う
請求項６から請求項９のいずれか１項に記載の連携処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、連携処理装置及びプログラムに係り、特に、複数のサービスの連携処理中にエラーが発生したときに再実行処理を行う連携処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来、サーバにデータベース管理システムを搭載しているクライアントサーバシステムにおけるオンライントランザクション処理の高速化技術が提案されている（例えば、特許文献１参照。）。
【０００３】
特許文献１に記載されたクライアントサーバシステムでは、特許文献１の図１及び図２に示すように、最初に、オペレータ等が、クライアント１の伝票入力部１１により、例えば伝票入力を行う（ステップＳ１）。オペレータ等が保存を指示すると、入力された伝票のデータが伝票入力部１１からデータ生成部１２に与えられる。
【０００４】
データ生成部１２は、与えられた伝票のデータをもとにして、入力されたトランザクション情報を一括して送信するための電文を生成し、送信する（ステップＳ２）。この電文は、ネットワークＮＷを介してサーバ２に伝送され、サーバ２のトランザクション保存部２１で受信される。
【０００５】
トランザクション保存部２１は、受信した電文に基づき、伝票のトランザクションデータを伝票トランザクションテーブルとして伝票トランザクションファイル２２に保存する（ステップＳ３）。トランザクション保存部２１は、さらに、受信した電文から、他のテーブルを更新するための予め定められた情報を抽出すると共に定義情報２３を参照する。トランザクション保存部２１は、ＤＢＭＳ２４のストアードプロシージャテーブルに登録されている定義情報２３を参照し、与えられたトランザクションデータに基づき、ＤＢＭＳ２４のストアードプロシージャを用いた他のテーブルの更新を定義するトリガをＤＢＭＳ２４に供給する。
【０００６】
ＤＢＭＳ２４は、トリガに応答し、ストアードプロシージャをコールする（ステップＳ４）。このストアードプロシージャのコールに関してエラーが発生したか否かがチェックされる（ステップＳ５）。
【０００７】
ＤＢＭＳ２４は、エラーが発生していなければ、コールしたストアードプロシージャを実行し、マスタテーブルファイル２５内の該当するマスタテーブルを更新させる（ステップＳ６）。この更新作業に際してエラーが発生したか否かがチェックされる（ステップＳ７）。エラーが発生していなければ処理を終了する。
ステップＳ５及びＳ７で、エラーが検出された場合には、全ての更新情報を無効として、トランザクション保存部２１によるトランザクションデータの保存情報もロールバックされて（ステップＳ８）、最新のトランザクション発生前の状態に復旧される。
【特許文献１】特開平１０−２８３３１９号公報（第４８段落から第５６段落）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
このように、上記のクライアントサーバシステムは、エラーを検出した場合にはすべての更新情報を無効にして最初の状態に戻していたため、エラー発生時点から処理を再開することができなかった。
【０００９】
一方、従来、ドキュメントのジョブフローを実行するサービス処理システムが提案されている。このサービス処理システムは、あらかじめ指定された所定の処理(ドキュメント処理、配信・集配・転送・変換・保存など)を何らかの原因により実行できない場合、そのまま所定の処理を中断するか、あらかじめ指定された代替装置により所定の処理を代替していた。
【００１０】
しかし、代替装置があったとしても、一部のサービスにエラーが発生したときは対処することができない問題があった。例えば、文書データに対して画像処理が施されたり、文書データが配信された後にエラーが発生した場合、文書データのオリジナルが失われてしまった。このため、ジョブフローの再実行をすることができず、ジョブフローを完遂することができなかった。
【００１１】
本発明は、上述した課題を解決するために提案されたものであり、文書データに関して所定の処理を行うサービスをネットワーク上で連携するにあたって、エラーが発生したとしてもジョブフローをできる限り完遂する連携処理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る連携処理装置は、文書データに関して所定の処理をそれぞれ行う複数のサービスをネットワーク上で連携する指示を表した連携指示情報に基づいて、各々のサービスの連携処理を実行する連携処理装置であって、前記連携処理におけるサービスで発生したエラーを判別するエラー判別手段と、前記連携処理で処理された文書データの有無を検出する文書検出手段と、前記エラー判別手段で判別されたエラーと、前記文書検出手段で検出された文書データの有無とに基づいて、前記連携処理を再実行する連携制御手段と、を備えている。
【００１３】
また、本発明に係る連携処理プログラムは、文書データに関して所定の処理をそれぞれ行う複数のサービスをネットワーク上で連携する指示を表した連携指示情報に基づいて、各々のサービスの連携処理をコンピュータに実行させる連携処理プログラムであって、  前記コンピュータを、前記連携処理におけるサービスで発生したエラーを判別するエラー判別手段と、前記連携処理で処理された文書データの有無を検出する文書検出手段と、  前記エラー判別手段で判別されたエラーと、前記文書検出手段で検出された文書データの有無とに基づいて、前記連携処理を再実行する連携制御手段と、して機能させる。
【００１４】
上記の発明において、サービスとは、外部からの要求に応じて文書に関する利用可能な機能をいい、例えば、コピー、プリント、スキャン、ファクシミリ送受信、メール配信など特に限定されるものではない。連携処理装置は、指示書に基づいて、連携処理の順番になったサービス毎に、そのサービスの実行を制御する。
【００１５】
エラー判別手段は、前記連携処理におけるサービスで発生したエラーを判別する。ここでは、復旧可能なエラーか復旧不可能なエラーであるかを判別するのが好ましい。復旧不可能なエラーであれば、連携処理の再実行ができないからである。
【００１６】
文書検出手段は、連携処理で処理された文書データの有無を検出する。連携処理中に文書データが残っているか否かを判別し、文書データが残っていればその文書データを用いて指示書の再実行を容易に行うことができるからである。
【００１７】
連携制御手段は、エラー判別手段で判別されたエラーと、文書検出手段で検出された文書データの有無とに基づいて、連携処理を再実行する。例えば、復旧可能なエラーであり、文書データが残っている場合は、所定時間経過後エラーが解消される。したがって、連携制御手段は、その文書データを用いてジョブフローを再実行できる。すなわち、連携制御手段は、エラー内容や文書データの有無に応じて、適切なエラー処理を実行できる。
【発明の効果】
【００１８】
本発明に係る連携処理装置及びプログラムは、エラー判別手段で判別されたエラーと、文書検出手段で検出された文書データの有無とに基づいて、連携処理を再実行することにより、指示書に記述されたジョブフローを実行している最中にエラーが発生した場合であっても、エラー内容や文書の有無に応じて適切なエラー処理を行うので、指示書に記述されたジョブフローをできる限り完遂することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の好ましい実施の形態について図面を参照しながら詳細に説明する。
【００２０】
図１は、本発明の実施の形態に係るサービス処理システムの構成を示す図である。サービス処理システムは、様々なサービスやアプリケーションがネットワークを介して接続されたものである。
【００２１】
サービスとは、外部からの要求に応じて文書に関する利用可能な機能をいう。サービスは、例えば、コピー、プリント、スキャン、ファクシミリ送受信、メール配信、レポジトリへの格納やリポジトリからの読込、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）処理、ノイズ除去処理等が該当し、特に限定されるものではない。
【００２２】
サービス処理システムは、文書データに対して第１のサービスを行う第１のサービス処理装置１０と、文書データに対して第２のサービスを行う第２のサービス処理装置２０と、文書データに対して第３のサービスを行う第３のサービス処理装置３０と、指示書に基づいて複数のサービスの連携処理（以下「ジョブフロー」という。）を実行する連携処理装置４０と、を備えている。
【００２３】
指示書とは、一連の処理を複数の機能的な処理に分解した場合において、各サービスの関係（ジョブフロー）を表す情報と、各サービスを呼び出すためのインタフェース（Ｉ／Ｆ）情報と、ジョブフローに関するグラフィカルユーザインタフェース（ＧＵＩ）を構成するための情報と、を含んだデータをいう。
【００２４】
図２は、指示書の概略的な構成を示す図である。この指示書には、３つのサービスＳ１，Ｓ２，Ｓ３を連携処理するジョブフローが記述されている。指示書には、サービス（Ｓ１〜Ｓ３）毎に、文書データの読み出し先を示すアドレス、サービスの内容、処理された文書データの保管先を示すアドレスが記述されている。
【００２５】
第１のサービス処理装置１０は、文書データが入力される入力メモリ１１と、文書データに対して第１のサービスを行う第１のサービス処理部１２と、第１のサービス処理済みの文書データを一時記憶してから出力する出力メモリ１３と、を備えている。なお、入力メモリ１１と出力メモリ１３とは共通のメモリで構成してもよい。
【００２６】
第２のサービス処理装置２０及び第３のサービス処理装置３０は、第１のサービス処理装置１０と同様に構成されている。ただし、第１のサービス処理部１２、第２のサービス処理部２２、第３のサービス処理部３２は、それぞれ異なったサービスを実行するものとする。
【００２７】
連携処理装置４０は、第１から第３のサービス処理装置１０，２０，３０のそれぞれで処理された文書データを管理する文書データ管理部４１と、サービスのエラーレベルを判別するエラーレベル判定部４２と、エラーが発生したサービスのタイプを判別するサービスタイプ判別部４３と、指示書に基づいてジョブフローを制御する連携制御部４４と、を備えている。
【００２８】
文書データ管理部４１は、第１から第３のサービス処理装置１０，２０，３０でそれぞれ処理された文書データが存在する場合には、その文書データを記憶する。そして、その文書データが第１から第３のサービス処理装置１０，２０，３０のいずれにおいて処理されたデータかを管理している。
【００２９】
エラーレベル判定部４２は、ジョブフローの実行の最中に第１から第３のサービス処理装置１０，２０，３０のいずれかにエラーが発生したとき、そのエラーが「復旧可能」であるか又は「復旧不可能」であるかを示すエラーレベルを判別する。
【００３０】
ここで、復旧可能なエラーとは、一時的にサービスを実行できなかったために生じたエラーをいう。この場合、所定時間経過すれば再びサービスを実行できる状態になる。例えば、メモリや磁気ディスク等の記録媒体がビジー信号を発生した場合、通信回線が一時的に渋滞していた場合などが該当する。復旧不可能なエラーとは、ハードウェア又はソフトウェアの問題によりサービスを実行できないために生じたエラーをいう。この場合、所定時間経過してもサービスを実行することができない。
【００３１】
サービスタイプ判別部４３は、ジョブフロー実行開始からエラー発生までの実行済みのサービスについて、各々サービスタイプを判別する。具体的には、各々のサービスについて、取消可能なサービスであるか、取消不可能なサービスであるかを判別する。ここで、取消不可能なサービスとしては、プリント、ＦＡＸ送信、メール送信等が該当する。逆に、取消可能なサービスとしては、例えば画像処理が該当する。画像処理済みの文書データを破棄して、画像処理前の文書データを用いれば、再度画像処理を行うことができるからである。
【００３２】
連携制御部４４は、通常、指示書に基づいてジョブフローを実行するように、第１から第３のサービス処理装置１０，２０，３０を各々制御する。このとき、連携制御部４４は、第１から第３のサービス処理装置１０，２０，３０からそれぞれ送信される応答信号を監視して、ジョブフローが正常に実行されているかを確認する。
【００３３】
また、連携制御部４４は、ジョブフロー実行中にエラーが発生した場合は、エラー状況に応じてジョブフローを再実行することができる。ここで、連携制御部４４は、次の組合せ条件テーブルに基づいてジョブフローを再実行する。
【００３４】
図３は、連携制御部４４に記憶されている組み合わせ条件テーブルを示す図である。
【００３５】
「再開可能入力文書」の「ある」、「ない」については、文書データ管理部４１の管理状況に基づいて、連携制御部４４が判定する。具体的には、連携制御部４４は、文書データ管理部４１が第１から第３のサービス処理装置１０，２０，３０のいずれかで処理された文書データを記憶している場合は、「再開文書可能入力文書」があると判定する。また、連携制御部４４は、文書データ管理部４１が文書データを記憶していないときは、「再開文書可能入力文書」がないと判定する。すなわち、連携制御部４４は、ジョブフローの途中にジョブフローを再実行できるような文書データが残っているときは「再開文書可能入力文書」が「あり」と判定し、文書データが残っていないときは「再開文書可能入力文書」が「なし」と判定する。
【００３６】
「実行済みサービスタイプ」の「取消可能」、「取消不可能」については、サービスタイプ判別部４３の判別結果に基づいて、連携制御部４４が判定する。具体的には、連携制御部４４は、サービスタイプ判別部４３の判別結果に基づいて、ジョブフローを構成する実行済みサービスの中において１つでも取消不可能なサービスがあるときは、実行済みサービスタイプは「取消不可能」と判定する。また、連携制御部４４は、上記実行済みサービスの中で１つも取消不可能なサービスがないときは、ジョブフローのすべてのサービスが取消可能であるので、実行済みサービスタイプは「取消可能」と判別する。
【００３７】
「エラーレベル」が「復旧可能」であるか「復旧不可能」であるかについては、エラーレベル判定部４２が判定する。
【００３８】
連携制御部４４は、上述した３つの判定結果を図３に示す組合せ条件テーブルに照らし合わせて、文書データ管理部４１、エラーレベル判定部４２、サービスタイプ判別部４３の各々の判別結果の組合せに対応する再実行処理（図３に示すＮ１〜Ｎ３、Ｒ１及びＲ２のいずれか）を行う。
【００３９】
ここで、“Ｎ”はユーザへの通知を表す。具体的には、“Ｎ１”は、ジョブフローの実行が失敗したためにジョブフローを最初からやり直すことをユーザに促す通知を表す。“Ｎ２”は、ジョブフローの実行が失敗して復旧不可能なエラーが発生したことを通知することを表す。“Ｎ３”は、ジョブフローの実行が失敗し、その際に取消不可能なサービスが実行されてしまったことを通知することを表す。
【００４０】
“Ｒ”はジョブフローの再実行を表す。具体的には、“Ｒ１”は、エラーになったサービスから遡って一番近いサービス（エラーになったサービス自身も含む。）から再実行することを表す。“Ｒ２”は、取消不可能なサービスをスキップしながらジョブフローを再実行することを表す。
【００４１】
このように構成されたサービス処理システムにおいて、連携処理装置４０は、指示書に記述されたジョブフローに従って、第１のサービス処理装置１０、第２のサービス処理装置２０、第３のサービス処理装置３０の順にそれぞれ第１から第３のサービスを実行させる。
【００４２】
例えば、連携制御部４４は、ジョブフローのエラー発生時、「実行済みサービスタイプ」が「取消可能」、「エラーレベル」が「復旧可能」、「再開可能入力文書」が「あり」の場合、“Ｒ１”の再実行を指示する。すなわち、連携制御部４４は、エラーになったサービスからジョブフローの逆順に一番近いサービス（エラーになったサービス自身も含む。）まで遡る。ここで、一番近いサービスとは、文書データ管理部４１に記憶されている文書データを処理できるサービスの中で、エラーになったサービスから一番近い順番のサービスをいう。そして、連携制御部４４は、その一番近いサービスに入力される文書データを用いて、当該一番近いサービスからジョブフローを再実行する。
【００４３】
これにより、連携処理装置４０は、ジョブフローのエラーが発生しても、そのエラーが復旧可能であり、かつ文書データが存在する場合には、その文書データを用いてジョブフローを再実行することができる。
【００４４】
また例えば、連携制御部４４は、ジョブフローのエラー発生時、「実行済みサービスタイプ」が「取消不可能」、「エラーレベル」が「復旧可能」、「再開可能入力文書」が「あり」の場合、“Ｒ１”だけでなく“Ｒ２”の再実行も指示する。すなわち、連携制御部４４は、上述のように、エラーになったサービスからジョブフローの逆順に一番近いサービスまで遡る。そして、連携制御部４４は、その一番近いサービスに入力される文書データを用いて、当該一番近いサービスからジョブフローを再実行する。ただし、取消不可能なサービスの順番になったら、そのサービスをスキップして次のサービスを実行する。
【００４５】
これにより、連携処理装置４０は、取消不可能なサービスを実行した後にジョブフローにエラーが発生した場合であっても、そのエラーが復旧可能であり、かつ文書データが存在する場合には、取消不可能なサービスを飛び越しながら、文書データを用いてジョブフローを再実行することができる。
【００４６】
また、連携処理装置４０は、「再開可能入力文書」が「なし」の場合や「エラーレベル」が「復旧不可能」な場合には、組合せ条件テーブルに従って、例えば、メール配信やユーザインタフェース表示により、ユーザに対して、エラーの状況や再実行指示を通知することができる。
【００４７】
以上のように、連携処理装置４０は、指示書に記述されたジョブフローを実行している最中にエラーが発生した場合、実行済みサービスタイプや文書データの状態に応じて、適切なエラー処理を行うので、指示書に記述されたジョブフローをできる限り完遂することができる。
【００４８】
なお、本発明は、上述した実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で設計上の変更をされたものにも適用可能であるのは勿論である。
【００４９】
本実施の形態では、指示書に記述されたジョブフローとして、３つのサービスを直列的に連携させる場合を例に挙げて説明した。本発明は、このような例に限定されるものではなく、２つ又は４つ以上のサービスを直列的に又は並列的に連携させてもよい。
【００５０】
また、連携処理装置４０は、第１から第３のサービス処理装置１０，２０，３０のぞれぞれで処理された文書データを管理していたが、例えば、管理サーバに文書データを管理させてもよい。また、第１から第３のサービス処理装置１０，２０，３０の各々は、ジョブフローの最終工程が実行されるまで、自身で処理した文書データを保存しておいてもよい。
【００５１】
さらに、第１のサービス処理装置１０、第２のサービス処理装置２０、第３のサービス処理装置３０のいずれかが、連携処理装置４０の機能を備え、指示書がジョブフローを完遂するかを監視してもよい。
【図面の簡単な説明】
【００５２】
【図１】本発明の実施の形態に係るサービス処理システムの構成を示す図である。
【図２】指示書の概略的な構成を示す図である。
【図３】連携制御部に記憶されている組み合わせ条件テーブルを示す図である。
【符号の説明】
【００５３】
１０  第１のサービス処理装置
２０  第２のサービス処理装置
３０  第３のサービス処理装置
４０  連携処理装置
４１  文書データ管理部
４２  エラーレベル判定部
４３  サービスタイプ判別部
４４  連携制御部
【図１】
2005063160.tif 000003
【図２】
2005063160.tif 000004
【図３】
2005063160.tif 000005