(57)【要約】    【課題】  ワークフローの遷移の条件分岐を自動化することを可能とし、帳票の形式が異なっている場合でもワークフローを共通化することを可能としたワークフロー管理装置、ネットワークシステム、制御方法、及びプログラムを提供する。    【解決手段】  ネットワークシステムは、クライアントＰＣ１０１、１０２、１０６、ＨＴＴＰサーバ１０８、Ｗｅｂアプリケーションサーバ１０９を備える。Ｗｅｂアプリケーションサーバ１０９は、帳票の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、帳票の文字認識を行い、文字認識された文字列とフィールド情報とを対応付けてデータベース１１０に格納し、ワークフローの条件分岐の設定時に指定されたフィールド情報に対応する文字列をデータベース１１０から取得し、取得した文字列をワークフローの条件分岐判定の要素とする。【選択図】      図１０
2006126943.tif 000002
【特許請求の範囲】
【請求項１】
電子化した帳票を使用する業務の流れをルール化するワークフローを管理するワークフロー管理装置であって、
前記業務に関わる文書の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、前記文書の文字認識を行う文字認識手段と、
前記文字認識手段により文字認識された文字列とフィールド情報とを対応付けて記憶手段に格納する格納手段と、
前記ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を前記記憶手段から取得する取得手段と、
前記取得手段により取得した文字列を前記ワークフローの条件分岐判定の要素とする制御手段とを備えることを特徴とするワークフロー管理装置。
【請求項２】
前記制御手段は、前記取得手段により取得した文字列を前記条件分岐判定を行うためのデータ型に変換し、前記データ型に変換されたデータが設定条件に適合するか否かに基づき、前記ワークフローの条件分岐処理を行うことを特徴とする請求項１記載のワークフロー管理装置。
【請求項３】
前記設定条件は、前記ワークフローの条件分岐で何れの作業ルートに遷移させるかを示すものであることを特徴とする請求項２記載のワークフロー管理装置。
【請求項４】
前記条件分岐の設定を行う際に、前記記憶手段に格納されているフィールド情報の参照が可能であることを特徴とする請求項１記載のワークフロー管理装置。
【請求項５】
前記条件分岐の設定を行う際に、指定したフィールド情報に記入される文字列のデータ型を指定することが可能であることを特徴とする請求項１記載のワークフロー管理装置。
【請求項６】
前記データ型は、数値、文字列、真偽を含む群から選択されることを特徴とする請求項２又は５記載のワークフロー管理装置。
【請求項７】
前記業務に関わる文書は、見積書、申請書、稟議書、精算書を含む群から選択されることを特徴とする請求項１記載のワークフロー管理装置。
【請求項８】
前記請求項１乃至７の何れかに記載のワークフロー管理装置と、情報処理装置と、画像処理装置をネットワークを介して接続したことを特徴とするネットワークシステム。
【請求項９】
電子化した帳票を使用する業務の流れをルール化するワークフローを管理するワークフロー管理装置の制御方法であって、
前記業務に関わる文書の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、前記文書の文字認識を行う文字認識工程と、
前記文字認識工程により文字認識された文字列とフィールド情報とを対応付けて記憶手段に格納する格納工程と、
前記ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を前記記憶手段から取得する取得工程と、
前記取得工程により取得した文字列を前記ワークフローの条件分岐判定の要素とする制御工程とを備えることを特徴とする制御方法。
【請求項１０】
電子化した帳票を使用する業務の流れをルール化するワークフローを管理するワークフロー管理装置の制御方法をコンピュータに実行させるプログラムであって、
前記業務に関わる文書の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、前記文書の文字認識を行う文字認識機能と、
前記文字認識機能により文字認識された文字列とフィールド情報とを対応付けて記憶手段に格納する格納機能と、
前記ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を前記記憶手段から取得する取得機能と、
前記取得機能により取得した文字列を前記ワークフローの条件分岐判定の要素とする制御機能とをコンピュータに実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書の画像に対して文字認識を行い、電子画像と文字認識された電子画像データを例えば稟議フローや業務フローと連携して活用するワークフローシステムに適用可能なワークフロー管理装置、ネットワークシステム、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
企業の複数の部門や人が関わる業務の流れをルール化し、そのルールを基にコンピュータネットワーク上で業務処理や業務支援を行う仕組みをワークフローシステムという。
【０００３】
ワークフローシステムは、1990年代後半から製品化され始めていたが、各ベンダーが個別に実装を行っていたため、実装形態や仕様はそれぞれ異なっており、ワークフローシステム同士の連携ができなかった。しかし、1993年に設立されたWfMC（Workflow Management Coalition）により、ワークフローシステムの標準が提案された。WfMCは、ソフトウェアに関するワークフロー関連仕様の標準化団体であり、300を越える企業がメンバーとして参加している（例えば、非特許文献１参照）。その後もワークフローシステムの標準化は、他社ベンダーや非営利組織によって行われているが、WfMCの標準がそのベースとなっている。
【０００４】
ワークフローシステムを使うことで、企業で扱う文書の稟議や交通費精算など、企業内の各部門やメンバー間を巡回していた書類が電子化され、効率的に処理することが可能となる。 ワークフローシステムでは、予め、作業フローを定義することによって、作業の流れを自動化する。例えば文書の稟議などでは、承認ルートを予め作成し、文書を電子化することで、承認ルートに沿った承認フローをシステム上で実行することが可能となる。
【０００５】
ワークフローシステムには、一般的に次のような効果があるとされている。
【０００６】
一連の作業フローを定義することにより、作業の流れや担当者（誰が、何を、いつ行うのか）が明確になる。コンピュータネットワークを用い作業フローを自動化することで、作業の効率化を図ることができる。データを電子化し一元管理することで、入力の手間や入力ミスを減少することができ、また、データの保管と管理を自動化することができる。作業フローを記録することで、業務分析や業務改善のためのデータを得ることができる。
【０００７】
近年、ワークフローシステムやそのコアモジュールが各種ベンダーから提供されている。しかし、それらのワークフローシステムやコアモジュールは、単体として利便性の高い機能を提供するに至ってはいない。なぜなら、企業における業務は、各々の企業が独自に積み上げてきたノウハウによって構築されており、その運用方法が異なっているからである。
【０００８】
そのため、ワークフローシステムの実装形態は、次の２通りの方向へ分かれてきている。また、この２通りの方向はトレードオフの関係にあると考えることができる。
（１）業務の汎用的な部分のみをモジュール化し、他の部分は業務ごと個別に作成する。
（２）利便性は失われるが、多くの業務に対応するためのインタフェースを設け、運用でカバーする。
【０００９】
しかし、上記（１）では、結果的にワークフローシステム全体としての汎用性が損なわれる。また、上記（２）では、利便性が失われ、実作業における効率は低下する。
【００１０】
現在、ワークフローシステムでは、利便性が高く、より汎用性のある機能を実装して行くことが求められている。
【非特許文献１】Workflow Management Coalition Webサイト                        （http://www.wfmc.org/）、2004年9月14日現在
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上述したようにコンピュータネットワーク上で業務処理や業務支援を行う、多くのワークフローシステムでは、ワークフローの遷移を条件分岐させることができる。例えば承認フローで、稟議書の金額に応じて決裁権の異なったルートを選択する、といったケースが考えられる。しかし、ワークフローシステムで扱う文書には多様な形式があり、これら多様な形式の文書に対して、予め条件分岐を定義することは困難である。
【００１２】
例えば、見積書の金額を基に決裁権の異なるルートを選択させる場合を考える。見積書は発行する業種において形式が異なるため、金額の記載されている位置は異なっている。従って、従来の電子画像データを基にした承認フローでは、担当者が金額を入力する或いは担当者が電子画像データを見て承認ルートを選択するなど人手を介して行うか、もしくは帳票に合わせてカスタマイズした機能を実装する必要があった。
【００１３】
本発明の目的は、ワークフローの遷移の条件分岐を自動化することを可能とし、帳票の形式が異なっている場合でもワークフローを共通化することを可能としたワークフロー管理装置、ネットワークシステム、制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１４】
上述の目的を達成するために、本発明のワークフロー管理装置は、電子化した帳票を使用する業務の流れをルール化するワークフローを管理するワークフロー管理装置であって、前記業務に関わる文書の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、前記文書の文字認識を行う文字認識手段と、前記文字認識手段により文字認識された文字列とフィールド情報とを対応付けて記憶手段に格納する格納手段と、前記ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を前記記憶手段から取得する取得手段と、前記取得手段により取得した文字列を前記ワークフローの条件分岐判定の要素とする制御手段とを備えることを特徴とする。
【００１５】
上述の目的を達成するために、本発明の制御方法は、電子化した帳票を使用する業務の流れをルール化するワークフローを管理するワークフロー管理装置の制御方法であって、前記業務に関わる文書の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、前記文書の文字認識を行う文字認識工程と、前記文字認識工程により文字認識された文字列とフィールド情報とを対応付けて記憶手段に格納する格納工程と、前記ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を前記記憶手段から取得する取得工程と、前記取得工程により取得した文字列を前記ワークフローの条件分岐判定の要素とする制御工程とを備えることを特徴とする。
【００１６】
上述の目的を達成するために、本発明のプログラムは、電子化した帳票を使用する業務の流れをルール化するワークフローを管理するワークフロー管理装置の制御方法をコンピュータに実行させるプログラムであって、前記業務に関わる文書の文字認識を行う個所を示すフィールド情報を有するテンプレートを基に、前記文書の文字認識を行う文字認識機能と、前記文字認識機能により文字認識された文字列とフィールド情報とを対応付けて記憶手段に格納する格納機能と、前記ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を前記記憶手段から取得する取得機能と、前記取得機能により取得した文字列を前記ワークフローの条件分岐判定の要素とする制御機能とをコンピュータに実現させることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、文書から文字認識した文字列とフィールド情報とを対応付けて記憶手段に格納しておき、ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列を記憶手段から取得し、文字列をワークフローの条件分岐判定の要素とするため、ワークフローの条件分岐設定を予め行うことができ、条件分岐を自動化することができる。また、条件分岐の設定を行う際に、指定したフィールド情報に記入される文字列のデータ型を指定可能であるため、文書の形式が異なっている場合でもワークフローを共通化することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面に基づき説明する。
【００１９】
図１は、本発明の実施の形態に係るネットワークシステムの構成例を示す概略図である。
【００２０】
図１において、ネットワークシステムは、ＬＡＮ１０５、１１１、インターネット１０７を備えており、ＬＡＮ１０５に接続されたクライアントパーソナルコンピュータ（以下クライアントＰＣと略称）１０１、１０２、画像読取装置１０３、複合機（マルチファンクションデバイス）１０４と、ＬＡＮ１１１に接続されたＨＴＴＰ（Hypertext Transfer Protocol）サーバ１０８、Ｗｅｂアプリケーションサーバ１０９と、インターネット１０７に直接接続されたクライアントＰＣ１０６から構成されている。
【００２１】
クライアントＰＣ１０１及び１０２は、企業のシステム管理者が新規データファイルを登録したり、ユーザ管理情報の修正等のシステムメンテナンス処理を行ったり、或いは企業の登録作業者がＷｅｂアプリケーションサーバ１０９上で受信した電子文書を仕分けして内容を確認したり、企業の承認者が稟議書や申請書等の承認作業を行ったりする際に使用される。
【００２２】
画像読取装置（スキャナ）１０３は、上記ネットワーク上で共有されているデバイスであり、ユーザから郵便で送付されてきた申請書や当該企業の支店へ持ち込まれた書類等を読み取る。複合機１０４は、スキャナ機能、プリンタ機能、ファクシミリ機能等を備えた、上記ネットワーク上で共有されているマルチファンクションデバイスであり、画像読取装置１０３と同様にスキャナとしても使用でき、更には複合機１０４で受信したファクシミリ画像をＷｅｂアプリケーションサーバ１０９等へＬＡＮ１０５、インターネット１０７、ＬＡＮ１１１を経由して登録することもできる。
【００２３】
ＨＴＴＰサーバ１０８は、ＬＡＮ１０５、インターネット１０７、ＬＡＮ１１１を経由してクライアントＰＣ１０１、１０２、１０６からＨＴＴＰプロトコルで送信されてきたリクエストを受け取るサーバである。Ｗｅｂアプリケーションサーバ１０９は、ＨＴＴＰサーバ１０８から転送されたクライアントＰＣからのリクエストを受け取ると、リクエストを基に処理を実行し、その処理結果をクライアントＰＣ１０１、１０２、１０６へ返信する。また、Ｗｅｂアプリケーションサーバ１０９は、データベース１１０により、見積書や申請書等の帳票の属性を識別するための帳票テンプレート（図４参照）を管理する。
【００２４】
データベース１１０は、Ｗｅｂアプリケーションサーバ１０９に接続されており、Ｗｅｂアプリケーションサーバ１０９がクライアントＰＣ等から受信したデータ、電子画像データの文字認識結果、申請書に関わる申請処理ステータス等の情報、及びユーザ／グループ情報、登録データファイルの処理情報等のシステム情報を保存する。
【００２５】
上記のＨＴＴＰサーバ１０８、Ｗｅｂアプリケーションサーバ１０９、データベース１１０を有機的に組み合わせることにより、Ｗｅｂデータベースシステムとして機能する。
【００２６】
尚、本ネットワークシステムは、上述した画像読取装置１０３と複合機１０４のように、画像読取機能のみを有する機器（スキャナ）と画像読取機能を含む複数の機能を有する機器（複合機）とを別個に設置する構成や、画像読取機能を含む複数の機能を有する機器（複合機）を単独で設置する構成や、画像読取機能のみを有する機器（スキャナ）と画像形成機能のみを有する機器（プリンタ）を設置する構成など、任意の構成とすることが可能である。
【００２７】
図２は、本発明のワークフロー管理装置としてのＷＥＢアプリケーションサーバ１０９の構成例を示すブロック図である。
【００２８】
図２において、ＷＥＢアプリケーションサーバ１０９は、システムバス１、ＣＰＵ２、プログラムメモリ（以下ＰＭＥＭと略称）３、通信制御部４、通信ポート５、外部記憶制御部８、入力制御部１１、キーボード１２、ポインティングデバイス１３、ビデオイメージメモリ（以下ＶＲＡＭと略称）１４、表示出力制御部１５、ＣＲＴディスプレイ（以下ＣＲＴと略称）１６、複合機制御部１７、外部機器制御部１８、画像読取装置制御部１９を備えている。
【００２９】
上記各構成要素はシステムバス１に接続されている。ＣＰＵ２は、システムバス１を介して各構成要素を制御する中央処理装置であり、ＲＯＭ（不図示）に格納された制御プログラムに基づき図１０のフローチャートに示す条件分岐処理を実行する。ＰＭＥＭ３は、条件分岐処理を実行するための制御プログラムを適宜ＲＯＭから選択して読み込むためのメモリである。また、キーボード１２から入力されたデータはテキストメモリでもあるＰＭＥＭ３にコード情報として格納される。
【００３０】
通信制御部４は、通信ポート５における入出力データの制御を行う。通信ポート５から出力された信号は、通信回線６を経由してネットワーク（ＬＡＮ１０５、ＬＡＮ１１１、インターネット１０７）上の他の装置の通信ポートに伝送される。本実施の形態では、ＬＡＮ等のネットワークを使用する場合について記述するが、通信制御部４に接続される通信ポート及び通信回線が一般の公衆回線であっても本発明が適用されることは言うまでもない。
【００３１】
外部記憶装置制御部８は、外部記憶装置（本実施の形態ではフロッピー（登録商標）ディスクとハードディスク）に対するデータの書き込み／読み出しを制御する。フロッピー（登録商標）ディスク（以下ＦＤと略称）９は、データファイル用の外部記憶装置である。ハードディスク（以下ＨＤと略称）１０は、データファイル用の外部記憶装置である。
【００３２】
入力制御部１１には、キーボード１２、ポインティングデバイス１３等の入力装置が接続される。操作者はキーボード１１を操作することによりシステムに対する動作指令等を行う。ポインティングデバイス１３は、操作者がＣＲＴ１６上で画像情報の加工を指示するためのものであり、本実施の形態ではマウスを使用している（以下マウス１３と称する）。操作者はマウス１３により、ＣＲＴ１６上のカーソルをＸ方向／Ｙ方向へ任意に移動させ、コマンドメニュー上のコマンドアイコンを選択して処理の指示を行うほか、編集対象の指示や描画位置の指示等も行う。
【００３３】
ＶＲＡＭ１４は、ＣＲＴ１６に表示する文字データや図形データがビットマップデータとして展開されるメモリである。表示出力制御部１５は、ＣＲＴ１６に対する表示を制御する。ＣＲＴ１６は、後述の図６〜図９に示す各種画面等を表示する表示手段である。尚、表示方式はＣＲＴに限定されず、液晶でもよい。
【００３４】
外部機器制御部１８は、複合機制御部１７及び画像読取装置制御部１９を制御する。複合機制御部１７は、複合機１０４の制御を司るものであり、複合機１０４に対するデータの出力制御を行う。画像読取装置制御部１９は、画像読取装置１０３の制御を司るものであり、画像読取装置１０３からの読取データの入力制御を行う。尚、ＷＥＢアプリケーションサーバ１０９には、画像読取装置制御部１９が必須であるが、クライアントＰＣは、ＷＥＢアプリケーションサーバ１０９の通信制御部４及び通信ポート５を介して、ＷＥＢアプリケーションサーバ１０９側で共有されている構成要素を使用することができる。
【００３５】
尚、本実施の形態では、制御プログラムを上記ＲＯＭ（不図示）に格納する構成としているが、制御プログラムをＦＤ９やＨＤ１０に格納する構成としても、或いはネットワーク（ＬＡＮ１０５、ＬＡＮ１１１、インターネット１０７）上に接続されている他の装置上に格納する構成としてもよい。また、制御プログラムは、ＷＥＢアプリケーションサーバ１０９からＦＤ９やＨＤ１０等の記憶媒体やネットワークを介して他のシステムや他の装置に供給することができる。
【００３６】
図３は、クライアントＰＣ及びＷｅｂアプリケーションサーバのモジュールの構成例を示すブロック図である。
【００３７】
図３において、クライアントＰＣ１０１、１０２、１０６は、それぞれ、情報登録モジュール３０２、出力フォーム登録モジュール３０３を備えている。Ｗｅｂアプリケーションサーバ１０９は、リクエスト処理モジュール３０７、編集モジュール３０８、データベース共通ライブラリ３０９、各種ユーティリティライブラリ３１０、データベース１１０を備えている。ＨＴＴＰサーバ１０８は、クライアントＰＣ１０１、１０２、１０６からのリクエストをＷｅｂアプリケーションサーバ１０９に転送する。尚、クライアントＰＣ１０６は上記図１に示した通りインターネット１０７に直接接続されているが、図３では各クライアントＰＣに共通の内部のモジュール構成を一括して図示するため、便宜上、符号１０１の他に符号１０２、１０６を括弧内に付記している。
【００３８】
クライアントＰＣ１０１において、情報登録モジュール３０２は、カタログ情報、画像データ等のデータファイルをＷｅｂアプリケーションサーバ１０９に登録するモジュールである。出力フォーム登録モジュール３０３は、商品データを出力するフォームを登録するモジュールである。ただし、情報登録モジュール３０２及び出力フォーム登録モジュール３０３は、Ｗｅｂアプリケーションサーバ１０９から必要に応じて、Ｊａｖａ（登録商標）アプレットやアクティブエックスコントロール等の形式でクライアントＰＣに自動的に配信されるので、クライアントＰＣ上でインストール処理等を行う必要はない。
【００３９】
Ｗｅｂアプリケーションサーバ１０９において、リクエスト処理モジュール３０７は、ＨＴＴＰサーバ１０８から転送されたクライアントＰＣからのリクエストを処理するモジュールである。リクエスト処理モジュール３０７に対応している機能としては、ユーザ認証、検索処理、ワークフロー制御、受信データ登録、送付状登録、ユーザ管理、グループ管理、データメンテナンス、文字認識結果登録、文字認識帳票登録、デバイス設定登録等の各機能がある。リクエスト処理モジュール３０７は、クライアントＰＣからのリクエストに応じてＷｅｂアプリケーションサーバ１０９のメモリ上にロードされ、該当する処理が実行される。
【００４０】
編集モジュール３０８は、ワークフローを編集するワークフローエディタ部、送付状を編集する送付状エディタ部等を有するモジュールである。データベース共通ライブラリ３０９は、データベース１１０との間でデータ（帳票テンプレートデータを含む）のやり取りを行うためのライブラリである。各種ユーティリティライブラリ３１０は、文字認識アプリケーション等の各種ユーティリティソフトのライブラリである。
【００４１】
次に、文書に記載された文字を認識する文字認識処理及び文字認識された情報をデータベースに格納する情報格納処理について図４、図５を参照しながら説明する。
【００４２】
図４（ａ）は、見積書Ａの帳票テンプレートの概念を示す図、図４（ｂ）は、見積書Ｂの帳票テンプレートの概念を示す図である。
【００４３】
図４において、帳票テンプレートは、帳票の属性を識別するためのテンプレートである。帳票テンプレートのデータには、文字認識処理を行う位置と領域が定義されている。以下、この定義された位置と領域をフィールドと呼ぶ。
【００４４】
４００及び４１０は、それぞれ形式の異なった見積書（Ａ、Ｂ）の帳票テンプレートである。４０１及び４１１は、見積書発行年月日を示す日付フィールドを表し、４０２及び４１２は、見積書発行元企業を示す取引先フィールドを表し、４０３及び４１３は、見積書記載金額を示す金額フィールドを表している。フィールドは、フィールドを識別するための属性としてフィールドＩＤやフィールド名を有する。
【００４５】
帳票テンプレートを基に文書（見積書、申請書、稟議書、精算書等の各種文書）の文字認識処理を行うことで、指定されたフィールド情報とフィールドの文字列を対応付けた状態でデータベース１１０に格納することができる。この場合、帳票テンプレート４００と帳票テンプレート４１０のように、異なった形式の帳票テンプレートであっても、フィールドの属性を共通にすることで、同じ性質の帳票テンプレートデータとして扱うことが可能となる。
【００４６】
Ｗｅｂアプリケーションサーバ１０９により、帳票テンプレート４００及び４１０にそれぞれ対応した文書の文字認識処理を行うと、日付フィールドの位置にある文字列、取引先フィールドの位置にある文字列、金額フィールドの位置にある文字列がそれぞれ読み込まれ、日付フィールドのデータ、取引先フィールドのデータ、金額フィールドのデータが帳票テンプレートデータとしてデータベース１１０に格納される。
【００４７】
図５は、帳票テンプレートデータを示す図である。
【００４８】
図５において、データベース１１０には、帳票テンプレートデータとして日付フィールドのデータ、取引先フィールドのデータ、金額フィールドのデータが格納されている。５０１及び５１１は、日付フィールドのデータを示し、５０２及び５１２は、取引先フィールドのデータを示し、５０３及び５１３は、金額フィールドのデータを示している。
【００４９】
次に、ワークフローの遷移を条件分岐させる設定について図６〜図９を参照しながら説明する。図６〜図９は、ワークフローの手続きを定義するアプリケーションの画面を示すものであり、該アプリケーションは上記図１のクライアントＰＣ１０１、１０２、１０６上で起動されるものである。
【００５０】
図６は、ワークフローのフローを定義するエディタのフロー定義画面６００を示す図である。
【００５１】
図６において、フロー定義画面６００は、クライアントＰＣのＣＲＴ１６に表示される。ユーザはフロー定義画面６００上で、ワークフローのフローを定義するために、フローを構成するオブジェクトを配置していく。
【００５２】
６０１（Ｓ：START）は、ワークフローの開始を定義するオブジェクトであり、６０２（Ｅ：END）は、ワークフローの終了を定義するオブジェクトである。６０３は、ワークフローの遷移を定義するオブジェクトであり、以下、トランジションと呼ぶ。６０４は、ワークフローにおける個々の作業を定義するオブジェクトであり、以下、アクティビティと呼ぶ。６０５は、ワークフローの条件分岐を定義するオブジェクトであり、以下、条件分岐アクティビティと呼ぶ。
【００５３】
ユーザはフロー定義画面６００上で上記の各オブジェクトを配置してフローを定義した後、各オブジェクトの設定を行う。条件分岐アクティビティ６０５を選択してマウス１３を右クリックし、ポップアップメニューからプロパティを選択すると、ＣＲＴ１６上に図７の画面が表示される。また、トランジション６０３を選択してマウス１３を右クリックし、ポップアップメニューからプロパティを選択すると、ＣＲＴ１６上に図９の画面が表示される。
【００５４】
図７は、条件分岐プロパティ設定画面７００を示す図である。
【００５５】
図７において、条件分岐プロパティ設定画面７００は、クライアントＰＣのＣＲＴ１６に表示されるものであり、条件分岐の際に条件分岐判定の根拠となるデータを設定するための画面である。ユーザは条件分岐プロパティ設定画面７００で、文字認識された情報のうちどの情報を条件分岐のデータとするかを設定する。
【００５６】
７０１は、条件分岐オブジェクトを識別しておくためにユーザが設定する名前である。図示例では、金額による分岐条件が設定されている。７０２は、文字列認識で設定したフィールド名を設定するテキストボックスである。７０３は、フィールド名の一覧を取得するためのボタンである。ユーザがボタン７０３を押すと、ネットワークを介してＷｅｂアプリケーションサーバ１０９から帳票テンプレート名の一覧がクライアントＰＣに取得され、ＣＲＴ１６に図８の画面が表示される。図８の画面については後述する。
【００５７】
７０４は、フィールドの値をどのデータ型として扱うかを設定するコンボボックスである。例えば金額フィールドのデータであれば、条件分岐判定において数値として扱われるため、数値を選択する。上記図５に示したように文字列認識されたデータは、全て文字列としてデータベース１１０に格納される。従って、条件分岐判定を行う際に、フィールドの値はプログラムの中で指定のデータ型に変換される。尚、コンボボックス７０４では、数値、文字列、真偽等を設定することができる。
【００５８】
７０５は、条件分岐プロパティ設定画面７００で設定した内容を確定して、該画面７００を閉じるボタンである。７０６は、条件分岐プロパティ設定画面７００で設定した内容を取り消して、該画面７００を閉じるボタンである。
【００５９】
尚、テキストボックス７０２には、ユーザが手入力でフィールド名を設定することもできる。フィールド名の選択は、ユーザの入力を補助するためのものであり、指定した帳票に依存するわけではない。例えば、フィールド名として“金額”を設定した場合、そのフィールド名は、上記図４の見積書Ａの帳票テンプレート４００でも見積書Ｂの帳票テンプレート４１０でも、条件分岐の対象となる。
【００６０】
図８（ａ）は、帳票テンプレート一覧画面８００を示す図、図８（ｂ）は、フィールド一覧画面８１０を示す図である。
【００６１】
図８において、帳票テンプレート一覧画面８００、フィールド一覧画面８１０は、クライアントＰＣのＣＲＴ１６に表示されるものであり、条件分岐の際に条件分岐判定の根拠となるデータを設定するための画面である。
【００６２】
帳票テンプレート一覧画面８００において、８０１は、帳票テンプレート一覧を表示するリストボックスであり、選択されている行は図示のように強調表示される。８０２は、フィールド一覧を表示ボタンである。リストボックス８０１で帳票テンプレートを指定し、フィールド一覧を表示ボタン８０２を押すと、ネットワークを介してＷｅｂアプリケーションサーバ１０９から、指定された帳票テンプレートで設定されているフィールド名の一覧がクライアントＰＣに取得され、ＣＲＴ１６にフィールド一覧画面８１０が表示される。８０３は、帳票テンプレート一覧画面８００を閉じるボタンである。
【００６３】
フィールド一覧画面８１０において、８１１は、帳票テンプレート一覧画面８００で選択された帳票テンプレート名である。８１２は、フィールド一覧を表示するリストボックスであり、選択された帳票テンプレートに設定されているフィールドの一覧が表示される。選択されている行は図示のように強調表示される。８１３は、設定ボタンである。リストボックス８１２でフィールドを選択して設定ボタン８１３を押すと、フィールド名が上記図７の条件分岐プロパティ設定画面７００のテキストボックス７０２に設定され、フィールド一覧画面８１０、帳票テンプレート一覧画面８００が閉じる。８１４は、フィールド一覧画面８１０を閉じるボタンである。
【００６４】
図９は、トランジション設定画面９００を示す図である。
【００６５】
図９において、トランジション設定画面９００は、クライアントＰＣのＣＲＴ１６に表示されるものであり、上記図６に示したトランジション６０３の設定を行う画面である。トランジション設定画面９００では、上記図７の条件分岐プロパティ設定画面７００で設定したフィールドのデータに対して条件を設定する。また、トランジションの設定は、条件分岐アクティビティ６０５に接続されているトランジションについてそれぞれ行う。
【００６６】
９０１は、条件を設定するかどうかのチェックボックスである。チェックボックス９０１のチェックを行わなければ、条件判定は行われない。９０２は、フィールド値のデータ型を設定するコンボボックスであり、上記図７の条件分岐プロパティ設定画面７００のコンボボックス７０４で設定したデータ型と対応する。尚、コンボボックス９０２では、数値、文字列、真偽などを設定することができる。
【００６７】
９０３は、条件式を設定するためのエディットボックスとコンボボックスである。条件の範囲を示す値と不等号を選択することにより（図示例では、条件値１：1000、条件１：≦、条件値２：2000、条件２：＜）、フィールド値に対して条件の設定を行うことができる。設定された条件は条件式プレビュー９０４に表示される。条件式は、ワークフローの条件分岐で何れの作業ルートに遷移させるかを示すものである。
【００６８】
条件が１つの場合は、もう一方の条件を無指定とすることができる。データ型が数値の場合は、条件は不等号や等号を指定することが可能である。また、データ型が文字列の場合は、一致や不一致、含まれるか否か、といった指定をすることが可能である。また、データ型が真偽の場合は、真または偽を設定することが可能である。
【００６９】
９０５は、トランジション設定画面９００で設定した内容を確定して、該画面９００を閉じるボタンである。９０６は、トランジション設定画面９００で設定した内容を取り消して、該画面９００を閉じるボタンである。
【００７０】
次に、条件分岐処理の流れについて図１０を参照しながら説明する。
【００７１】
図１０は、Ｗｅｂアプリケーションサーバ１０９におけるワークフローの条件分岐処理の流れを示すフローチャートである。
【００７２】
図１０において、ワークフローが条件分岐アクティビティ６０５に遷移する（ステップＳ１００１）。Ｗｅｂアプリケーションサーバ１０９のＣＰＵ２は図７の条件分岐プロパティ設定画面７００でユーザにより設定されたフィールド名を取得し（図７の例では金額）、データベース１１０にアクセスし、上記フィールド名に対応する、帳票から文字認識された文字列（図４の例では金額フィールドの文字列）を取得する（ステップＳ１００２）。
【００７３】
次に、ＣＰＵ２は上記ステップＳ１００２で取得した文字列の中に、ユーザにより設定されたフィールドが存在するかどうかを判断する（ステップＳ１００３）。設定されたフィールドが存在しなかった場合は、エラー扱いとなり（ステップＳ１０１１）、設定されたフィールドが存在する場合は、ステップＳ１００４に移行する。
【００７４】
設定されたフィールドが存在する場合、ＣＰＵ２は当該フィールドのデータ型を変換する（ステップＳ１００４）。例えば、上記ステップＳ１００２で取得した文字認識された金額フィールドの文字列“200,000”を、条件分岐判定を行うために数値の“200000”に変換する。次に、ＣＰＵ２は図７の条件分岐プロパティ設定画面７００でユーザが指定したデータ型に変換できたかどうかを判断する（ステップＳ１００５）。指定のデータ型に変換できなかった場合は、エラー扱いとなり（ステップＳ１０１１）、指定のデータ型に変換できた場合は、ステップＳ１００６に移行する。
【００７５】
指定のデータ型に変換できた場合、ＣＰＵ２は条件分岐アクティビティ６０５に接続されているトランジション６０３の数に相当する分のループ処理を行う（ステップＳ１００６）。ＣＰＵ２は図９のトランジション設定画面９００でユーザにより設定されたトランジション６０３の条件式の文字列を取得する（ステップＳ１００７）。
【００７６】
ＣＰＵ２は上記ステップＳ１００７で取得したトランジション６０３の条件式の文字列を解釈し、上記ステップＳ１００４で変換したデータ型が条件式に適合しているかどうかを判断する（ステップＳ１００８）。変換したデータ型が条件式に適合していない場合は、上記ステップＳ１００７に戻り処理を繰り返す。変換したデータ型が条件式に適合していた場合は、ループを抜け、ステップＳ１００９に移行する。
【００７７】
変換したデータ型が条件式に適合していた場合、ＣＰＵ２はワークフローの条件分岐アクティビティから適合したトランジションに遷移させる（ステップＳ１００９）。これにより、ワークフローの条件分岐処理を終了する。他方、上記ループ処理を繰り返しても、変換したデータ型が条件式に適合していない場合は、ループを抜け、ＣＰＵ２はワークフローの条件分岐アクティビティから遷移する先が無いと判断し（ステップＳ１０１０）、エラー扱いとなる（ステップＳ１０１１）。
【００７８】
上記により、帳票テンプレートを用いた文字認識処理と連動することで、ワークフローの条件分岐設定を簡潔に行うことができ、条件分岐処理をより汎用的なロジックで実装することが可能となる。
【００７９】
以上説明したように、本実施の形態によれば、帳票から文字認識した文字列とフィールド情報とを対応付けてデータベース１１０に格納しておき、ワークフローを定義する際の条件分岐の設定時に指定されたフィールド情報に対応する文字列をデータベース１１０から取得し、文字列をワークフローの条件分岐判定の要素とするため、ワークフローの条件分岐設定を予め行うことができ、条件分岐を自動化することができる。また、条件分岐の設定を行う際に、指定したフィールド情報に記入される文字列のデータ型を指定可能であるため、帳票の形式が異なっている場合でもワークフローを共通化することができる。
【００８０】
［他の実施の形態］
上記実施の形態では、Ｗｅｂアプリケーションサーバ１０９がワークフローの条件分岐処理を行う場合を例に挙げたが、これに限定されるものではなく、クライアントＰＣ側でワークフローの条件分岐処理を行うようにすることも可能である。
【００８１】
上記実施の形態では、ＨＴＴＰサーバ１０８とＷｅｂアプリケーションサーバ１０９を別構成とした場合を例に挙げたが、これに限定されるものではなく、ＨＴＴＰサーバ１０８とＷｅｂアプリケーションサーバ１０９を統合した単一の装置（筐体）とすることも可能である。
【００８２】
本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラム（図１０のフローチャート）をコンピュータまたはＣＰＵに供給し、そのコンピュータまたはＣＰＵが該供給されたプログラムを読出して実行することによって、達成することができる。
【００８３】
この場合、上記プログラムは、該プログラムを記録した記憶媒体から直接供給されるか、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【００８４】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【００８５】
また、本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラムを記憶した記憶媒体をコンピュータまたはＣＰＵに供給し、そのコンピュータまたはＣＰＵが記憶媒体に記憶されたプログラムを読出して実行することによっても、達成することができる。
【００８６】
この場合、記憶媒体から読出されたプログラムコード自体が上述した各実施の形態の機能を実現すると共に、そのプログラムコードを記憶した記憶媒体は本発明を構成する。
【００８７】
プログラムコードを記憶する記憶媒体としては、例えば、ＲＯＭ、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、ハードディスク、光ディスク（登録商標）、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード等がある。
【００８８】
上述した実施の形態の機能は、コンピュータから読出されたプログラムコードを実行することによるばかりでなく、コンピュータ上で稼動するＯＳ等がプログラムコードの指示に基づいて実際の処理の一部または全部を行うことによっても実現することができる。
【００８９】
更に、本発明は、前述した実施の形態を実現するソフトウェアのプログラムがネットワーク上のデータベースまたはホームページから通信プログラムによりダウンロードされ、このプログラムを読出して実行することによって達成することができる。
【００９０】
上記プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページからコンピュータプログラム自体、または自動インストール機能を含む圧縮ファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給することができる。
【００９１】
また、上記プログラムは、プログラムコードを暗号化した上で格納したＣＤ−ＲＯＭ等の記憶媒体をユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムコードを実行してコンピュータにインストールさせることによっても供給することができる。
【００９２】
上述した実施の形態の機能は、プログラムコードを複数のファイルに分割し、夫々のファイルを異なるホームページからダウンロードすることによっても実現することができる。即ち、本発明の機能処理をコンピュータで実現させるためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明を構成する。
【００９３】
また、上述した実施の形態の機能は、記憶媒体から読出されたプログラムが、コンピュータに挿入された機能拡張ボードまたはコンピュータに接続された機能拡張ユニットに備えられたメモリに書込まれた後、そのプログラムの指示に基づき、その機能拡張ボードまたは機能拡張ユニットに備えられたＣＰＵまたはＭＰＵ等が実際の処理の一部または全部を実行することによっても実現することができる。
【図面の簡単な説明】
【００９４】
【図１】本発明の実施の形態に係るネットワークシステムの構成例を示す概略図である。
【図２】ワークフロー管理装置としてのＷＥＢアプリケーションサーバの構成例を示すブロック図である。
【図３】クライアントＰＣ及びＷｅｂアプリケーションサーバのモジュールの構成例を示すブロック図である。
【図４】（ａ）は見積書Ａの帳票テンプレートの概念を示す図、（ｂ）は見積書Ｂの帳票テンプレートの概念を示す図である。
【図５】帳票テンプレートデータを示す図である。
【図６】ワークフローのフローを定義するエディタのフロー定義画面を示す図である。
【図７】条件分岐プロパティ設定画面を示す図である。
【図８】（ａ）は帳票テンプレート一覧画面を示す図、（ｂ）はフィールド一覧画面を示す図である。
【図９】トランジション設定画面を示す図である。
【図１０】Ｗｅｂアプリケーションサーバにおけるワークフローの条件分岐処理の流れを示すフローチャートである。
【符号の説明】
【００９５】
２  ＣＰＵ（文字認識手段、取得手段、格納手段、制御手段）
１０１、１０２、１０６  クライアントＰＣ（情報処理装置）
１０３  画像読取装置（画像処理装置）
１０４  複合機（画像処理装置）
１０５、１１１  ＬＡＮ（ネットワーク）
１０７  インターネット（ネットワーク）
１０８  ＨＴＴＰサーバ（情報処理装置）
１０９  Ｗｅｂアプリケーションサーバ（ワークフロー管理装置）
１１０  データベース（記憶手段）
６０３  トランジション
６０５  条件分岐アクティビティ
６００  フロー定義画面
７００  条件分岐プロパティ設定画面
８００  帳票テンプレート一覧画面
８１０  フィールド一覧画面
９００  トランジション設定画面
【図１】
2006126943.tif 000003
【図２】
2006126943.tif 000004
【図３】
2006126943.tif 000005
【図４】
2006126943.tif 000006
【図５】
2006126943.tif 000007
【図６】
2006126943.tif 000008
【図７】
2006126943.tif 000009
【図８】
2006126943.tif 000010
【図９】
2006126943.tif 000011
【図１０】
2006126943.tif 000012