(57)【要約】【課題】  ワークフロー管理者の確認作業の負担を軽減する。【解決手段】  ワークフローに含まれる処理を実施する実施条件を表示させるためのコンピュータ読み取り可能なプログラムとして提供する。このプログラムは、コンピュータを、実施条件を表示する対象の処理の指定を受け付ける指定受付部４０と、ワークフローを定義したワークフロー情報を参照して、指定された処理へと繋がる一連の処理を検出し、ワークフローに含まれる１以上の分岐処理に対して定義された条件についての条件情報に基づき、指定された処理を実施するときの条件を検出する条件検出部４１と、検出された条件を、指定された処理を実施するときの実施条件として表示させる情報表示部４２として機能させる。【選択図】  図５
2014215983.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローに含まれる処理を実施する実施条件を表示させるためのコンピュータ読み取り可能なプログラムであって、コンピュータを、
実施条件を表示する対象の処理の指定を受け付ける指定受付部と、
ワークフローを定義したワークフロー情報を参照して、指定された処理へと繋がる一連の処理を検出し、前記ワークフローに含まれる１以上の分岐処理に対して定義された条件についての条件情報に基づき、指定された処理を実施するときの条件を検出する条件検出部と、
検出された条件を、指定された処理を実施するときの実施条件として表示させる情報表示部として機能させる、プログラム。
【請求項２】
前記条件検出部は、前記一連の処理の各々につき分岐処理であるか否かを判断し、分岐処理と判断された処理に対して定義された条件を検出する、請求項１に記載のプログラム。
【請求項３】
前記情報表示部は、表示された実施条件に関連した分岐処理に対して定義された条件についての条件情報を表示させる、請求項１または２に記載のプログラム。
【請求項４】
さらに、前記ワークフローを実行する機器に記憶された前記ワークフロー情報および前記条件情報を取得する情報取得部として機能させる、請求項１〜３のいずれか１項に記載のプログラム。
【請求項５】
ワークフローに含まれる処理を実施するための実施条件を表示させる条件表示処理を実行する情報処理装置であって、
実施条件を表示する対象の処理の指定を受け付ける指定受付部と、
ワークフローを定義したワークフロー情報を参照して、指定された処理へと繋がる一連の処理を検出し、前記ワークフローに含まれる１以上の分岐処理に対して定義された条件についての条件情報に基づき、指定された処理を実施するときの条件を検出する条件検出部と、
検出された条件を、指定された処理を実施するときの実施条件として表示させる情報表示部とを含む、情報処理装置。
【請求項６】
前記条件検出部は、前記一連の処理の各々につき分岐処理であるか否かを判断し、分岐処理と判断された処理に対して定義された条件を検出する、請求項５に記載の情報処理装置。
【請求項７】
前記情報表示部は、さらに、表示された実施条件に関連した分岐処理に対して定義された条件についての条件情報を表示させる、請求項５または６に記載の情報処理装置。
【請求項８】
前記ワークフローを実行する機器に記憶された前記ワークフロー情報および前記条件情報を取得する情報取得部をさらに含む、請求項５〜７のいずれか１項に記載の情報処理装置。
【請求項９】
ワークフローに含まれる処理を実施するための実施条件を表示させる方法であって、前記方法は、コンピュータにより実行され、
実施条件を表示する対象の処理の指定を受け付けるステップと、
ワークフローを定義したワークフロー情報を参照して、指定された処理へと繋がる一連の処理を検出し、前記ワークフローに含まれる１以上の分岐処理に対して定義された条件についての条件情報に基づき、指定された処理を実施するときの条件を検出するステップと、
検出された条件を、指定された処理を実施するときの実施条件として表示させるステップとを含む、条件表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフローに含まれる処理を実施する実施条件を表示させることが可能な情報処理装置、条件表示方法およびその方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
複数の機能を備えたＭＦＰ(Multi Function Peripheral)に対して１以上のワークフローを登録しておき、その中の１つを選択して実行させることにより、業務を効率化する技術が知られている（例えば、特許文献１参照）。ワークフローは、流れ図等を用い、業務の一連の処理手続を定義したものである。ワークフローの例としては、原稿文書の読み取り、文書データへの変換、文書データの配信といった複数の処理と、読み取り、変換、配信の順といった処理の順序とを定義したものが挙げられる。
【０００３】
ワークフローは、分岐処理を実施するために条件分岐を含むことができる。条件分岐は、文書の書誌情報を参照し、その書誌情報に含まれる値によって行う処理を変更するものである。書誌情報は、文書を特定するために必要な情報で、例えば、文書名、送信日時、送信元等である。
【０００４】
一般に、ワークフローの設計では、数多くの条件分岐が用いられる。各条件分岐における分岐の条件は、テーブルにより表され、このようなテーブルは、実際のシステム運用中に追加、変更される（例えば、特許文献２参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ワークフローの設計中や設計後において、ワークフローの管理者は、どういう条件の時にメール配信されるか等、ワークフロー中の各処理を実施するための実施条件を確認したい場合がある。しかしながら、ワークフローにおいては、処理名等しか表示されず、一見して実施条件がどのようなものであるかを確認することはできない。
【０００６】
画面上に表示されるワークフローと上記のテーブルの内容とを合わせて見れば、実施条件を確認することは可能である。しかしながら、ワークフロー中に数多くの条件分岐が含まれる場合、このテーブルの数も多くなり、管理者の確認作業の負担が増大するという問題があった。
【課題を解決するための手段】
【０００７】
本発明は、上記課題に鑑み、ワークフローに含まれる処理を実施する実施条件を表示させるためのコンピュータ読み取り可能なプログラムであって、コンピュータを、実施条件を表示する対象の処理の指定を受け付ける指定受付部と、ワークフローを定義したワークフロー情報を参照して、指定された処理へと繋がる一連の処理を検出し、ワークフローに含まれる１以上の分岐処理に対して定義された条件についての条件情報に基づき、指定された処理を実施するときの条件を検出する条件検出部と、検出された条件を、指定された処理を実施するときの実施条件として表示させる情報表示部として機能させる、プログラムが提供される。
【発明の効果】
【０００８】
本発明によれば、ワークフロー中の各処理の実施条件を表示させることができるので、管理者の確認作業の負担を軽減することができる。
【図面の簡単な説明】
【０００９】
【図１】ワークフロー処理システムとしての文書配信システムの１つの構成例を示した図。
【図２】ワークフロー処理システムに用いられるＰＣのハードウェア構成の一例を示した図。
【図３】ワークフロー設計における設計手順を例示した図。
【図４】ワークフロー処理システムとしての文書配信システムの他の構成例を示した図。
【図５】情報処理装置としてのＰＣの機能ブロック図。
【図６】条件検出部が行う処理の流れを例示したフローチャート。
【図７】作成されたワークフローの一例を示した図。
【図８】ワークフローに含まれる分岐処理に対して定義された条件についてのテーブルの一例を示した図。
【図９】ワークフローに含まれる分岐処理に対して定義された条件についてのテーブルの別の例を示した図。
【図１０】ワークフローに含まれる分岐処理に対して定義された条件についてのテーブルのさらに別の例を示した図。
【図１１】ワークフロー情報の一例を示した図。
【図１２】表示された実施条件を例示した図。
【発明を実施するための形態】
【００１０】
図１は、ワークフロー処理システムとしての文書配信システムの１つの構成例を示した図である。ワークフロー処理システムは、ワークフローを定義したワークフロー情報を１つ以上保持し、ユーザが選択したワークフローに従ってデータを処理するシステムである。ここでは、一例として、文書配信システムを挙げている。
【００１１】
文書配信システムは、１つ以上のワークフローを作成し、管理する管理者が使用する管理者用ＰＣ１０と、ワークフロー情報が登録され、実際にワークフローを実行するＭＦＰ１１とを備える。また、文書配信システムは、ＭＦＰ１１から出力されたデータを各配信先へ配信するためのＦＴＰ(File Transfer Protocol)サーバ１２およびメールサーバ１３を備えている。これらは、互いにケーブルまたはネットワーク１４により接続され、互いに通信可能とされている。
【００１２】
ネットワーク１４は、ＬＡＮ(Local Area Network)、ＷＡＮ(Wide Area Network)、インターネット等、いずれのネットワークであってもよい。ネットワーク１４を介した通信は、ＴＣＰ(Transmission Control Protocol)／ＩＰ(Internet Protocol)等の適切なプロトコルを使用して行うことができる。その他、ＳＭＴＰ(Simple Mail Transfer Protocol)、ＦＴＰ等を使用することができる。また、ネットワーク１４を介して通信を行う場合、データをそのまま送受信してもよいし、暗号化処理した後のデータを送受信してもよい。
【００１３】
ＰＣ１０は、ノートＰＣ、デスクトップＰＣ、タブレットＰＣのいずれであってもよい。ここではＰＣ１０としているが、タブレット端末、スマートフォン、ＰＤＡ(Personal Digital Assistant)等であってもよい。
【００１４】
図２を参照して、ＰＣ１０のハードウェア構成を簡単に説明する。ＰＣ１０は、一般的なＰＣと同様の構成であり、ＰＣ１０全体の制御を行うＣＰＵ２０を備えている。ＰＣ１０は、ブートプログラムやファームウェア等を記憶するＲＯＭ２１と、ＣＰＵ２０の作業空間として使用されるＲＡＭ２２とを備えている。
【００１５】
また、ＰＣ１０は、アプリケーション、後述する条件表示処理を実行するためのプログラム等を記憶するＨＤ(Hard Disk)２３と、ＨＤ２３に対する読み出しや書き込みを制御するＨＤＤ(Hard Disk Drive)２４とを備えている。ここではＨＤ２３およびＨＤＤ２４を用いる構成を例示しているが、ＳＳＤ(Solid State Drive)を用いる構成であってもよい。図２では、さらに、フラッシュメモリ等の記録メディア２５に対するデータの読み出し、書き込みを制御するメディアドライブ２６を備えている。
【００１６】
ＰＣ１０は、カーソル、メニュー、ウィンドウ、文字、映像等の各種情報を表示する表示装置としてのディスプレイ２７と、通信ネットワークを利用してデータ伝送をするためのネットワークＩ／Ｆ２８とを備えている。また、ＰＣ１０は、文字、数値、各種指示等の入力のための複数のキーを備えたキーボード２９と、各種指示の選択や実行、処理対象の選択、カーソルの移動等を行うマウス３０とを備えている。
【００１７】
ＰＣ１０は、着脱可能な記録媒体の一例としてのＣＤ−ＲＯＭ３１に対するデータの読み出しや書き込みを制御するＣＤ−ＲＯＭドライブ３２を備えている。また、ＰＣ１０は、外部の装置との間でデータを送受信する外部装置Ｉ／Ｆ３３と、互いに電気的に接続するためのアドレスバスやデータバス等のバスライン３４とを備えている。
【００１８】
上記のアプリケーションやプログラムは、図示しないコンテンツサーバ等からのダウンロード形式で提供することもできるし、記録メディア２５やＣＤ−ＲＯＭ３１等のコンピュータ可読な記録媒体に格納して提供することもできる。
【００１９】
ＭＦＰ１１は、スキャナ機能、コピー機能、ファックス機能、印刷機能、通信機能、保存機能等の複数の機能を実現するための各ユニットを備える。ＭＦＰ１１は、例えば、原稿文書を読み取るための読み取りユニット、紙に印刷して出力する印刷ユニット等を備える。また、ＭＦＰ１１は、ＨＤおよびＨＤＤ、ＳＳＤ等の記憶装置およびＣＰＵを備える。ＣＰＵは、ＨＤ等に記憶されるプログラムを実行して各ユニットを制御し、各機能を実現する。ＭＦＰ１１は、入力装置および表示装置として操作パネルを備え、ネットワークに接続するためのネットワークＩ／Ｆを備える。ＭＦＰ１１は、そのほか、ＵＳＢ(Universal Serial Bus)インタフェース、ＳＤ(Secure Digital)カードスロット等を備えていてもよい。
【００２０】
ＦＴＰサーバ１２およびメールサーバ１３は、それらの機能を実現するためのプログラムを記憶する記憶装置、そのプログラムを実行するＣＰＵを備える。また、ＦＴＰサーバ１２およびメールサーバ１３は、ネットワーク１４に接続するためのネットワークＩ／Ｆを備える。これらのサーバは、入力装置や表示装置、ＵＳＢインタフェース、ＳＤカードスロット、ＣＤ−ＲＯＭドライブやＤＶＤ(Digital Versatile Disk)ドライブ等を備えていてもよい。
【００２１】
図１に示す実施形態では、ＰＣ１０において、管理者がアプリケーションを起動させ、ワークフローを作成し、その作成により得られたワークフロー情報や条件情報としてのテーブル情報をＭＦＰ１１へ送信して記憶させる。この記憶により、ＭＦＰ１１にそのワークフローを登録する。管理者は、１以上のワークフローを作成し、１以上のワークフローをＭＦＰ１１に登録する。
【００２２】
ここで、図３を参照してワークフロー設計における設計手順について説明しておく。ワークフローの設計にあたって、一例として以下のような背景が存在するものとする。現在、Ａ社のＢ事業所は、Ａ社全体の庶務の取り纏めを行っている。他の事業所は、Ｂ事業所宛にファックスにて、契約書や社内伝票を送付している。Ｂ事業所の庶務担当者は、送付されてきた契約書や社内伝票をスキャンし、スキャンしたデータを以下のルールでサーバに保存している。
【００２３】
（契約書の場合）
・金額が１００万円以上であれば、重要サーバに保存する。
・金額が１００万円未満であれば、簡易サーバに保存する。
（社内伝票の場合）
・金額が１０万円以上であれば、重要サーバに保存する。
・金額が１０万円未満であれば、簡易サーバに保存する。
（判別不明の場合）
・一旦、簡易サーバの一時フォルダに保存する（後日、各人の目で確認する）。
【００２４】
重要サーバおよび簡易サーバにサイズの大きいファイルを保存する場合、管理者にメールを送付する必要があるため、以下のルールでメールを送信している。
【００２５】
（重要サーバおよび簡易サーバに保存されたファイルの場合）
１０ＭＢ以上のファイルの場合にメール送信する。
（簡易サーバの一時フォルダに保存されたファイルの場合）
１００ＭＢ以上のファイルの場合にメール送信する。
【００２６】
これらの処理をワークフローとして構築する。管理者用ＰＣ１０において管理者がアプリケーションを起動させる。そして、ＰＣ１０が備えるディスプレイ２７の画面上に、各機能を実現するプラグインと呼ばれる小さなプログラムのＧＵＩ(Graphic User Interface)コンポーネントを表示させる。ここでは、最初にＯＣＲ(Optical Character Reader)を行うので、複数のＧＵＩコンポーネントのうち、ＯＣＲコンポーネントをドラッグして丸で表されたルートノードに接続する。
【００２７】
各ＧＵＩコンポーネントは、種々の設定を行うための入力フォームを備えていて、例えば、ＧＵＩコンポーネントにカーソルを重畳させ、右クリックして選択することにより、この入力フォームを表示させることができる。なお、これは一例であるので、これに限定されるものではなく、これ以外の方法により表示させることも可能である。このＯＣＲでは、契約書や社内伝票といったタイトルを抽出するので、例えば「タイトル抽出」という処理名が入力される。
【００２８】
次に、タイトルによって異なる処理を実行するため、複数のＧＵＩコンポーネントのうち、分岐処理を実現するフロー条件分岐コンポーネントを選択し、ＯＣＲコンポーネントに接続してルートを作成する。条件分岐コンポーネントは、分岐する条件を設定するための入力フォームを備えている。この入力フォームにおいて、例えば「タイトル分岐」という処理名を入力し、タイトルに応じてどこへ進むかを指定する。この例では、契約書、社内伝票、判別不明で簡易サーバに一時保存という３つを指定する。
【００２９】
タイトルが契約書の場合のフロー、社内伝票の場合のフロー、簡易サーバ保存（一時）の場合のフローがそれぞれ構築される。ここでは、別々にフローが構築されているが、上記の条件分岐コンポーネントに接続する形で１つにまとめたものとして構築されていてもよい。
【００３０】
予め用意されたテンプレートと、上記で指定されたタイトルとを用い、契約書フォーマット、社内伝票フォーマット、簡易サーバ一時保存フォーマットという３つのフォーマットが生成される。これらのフォーマットも、上記のアプリケーションを起動させた場合と同様、複数のＧＵＩコンポーネントを含む。これらのフォーマットは、例えば、指定したタイトルを選択し、入力フォームに設けられたボタンを押下する等により生成することができる。これも一例であるので、これに限定されるものではない。
【００３１】
契約書フォーマットでは、最初にＯＣＲを行い、契約書の金額記載領域を読み取り、金額を確認するため、ＯＣＲコンポーネントをドラッグして丸で表されたノードに接続する。このノードは、タイトル分岐のフロー条件分岐コンポーネントにリンクするものである。このＯＣＲコンポーネントは、金額を抽出するので、例えば「金額抽出」という処理名が入力される。
【００３２】
次に、金額によって異なる処理を実行することになるので、フロー条件分岐コンポーネントを選択し、ＯＣＲコンポーネントに接続してルートを作成する。フロー条件分岐コンポーネントの入力フォームにおいて、例えば「金額分岐」という処理名を入力し、金額に応じてどこへ進むかを指定する。この例では、１００万円以上、１００万円未満という２つを指定する。
【００３３】
社内伝票フォーマットでは、最初にＯＣＲを行い、社内伝票の金額記載領域を読み取り、金額を確認するため、ＯＣＲコンポーネントをドラッグしてノードに接続する。このノードも、タイトル分岐のフロー条件分岐コンポーネントにリンクするものである。このＯＣＲコンポーネントも、金額を抽出するので、金額抽出という処理名が入力される。
【００３４】
次に、金額によって異なる処理を実行することになるので、フロー条件分岐コンポーネントを選択し、ＯＣＲコンポーネントに接続してルートを作成する。フロー条件分岐コンポーネントの入力フォームにおいて、例えば「金額分岐」という処理名を入力し、金額に応じてどこへ進むかを指定する。この例では、１０万円以上、１０万円未満という２つを指定する。
【００３５】
簡易サーバ一時保存フォーマットでは、簡易サーバに配信し、簡易サーバの一時フォルダに保存するため、複数のＧＵＩコンポーネントのうち、フォルダ配信コンポーネントをドラッグしてノードに接続する。このノードも、タイトル分岐のフロー条件分岐コンポーネントにリンクするものである。このフォルダ配信コンポーネントは、簡易サーバへ配信するものであるため、例えば「簡易サーバ配信」という処理名が入力される。
【００３６】
次に、ファイルサイズによって異なる処理を実行することになるので、フロー条件分岐コンポーネントを選択し、フォルダ配信コンポーネントに接続してルートを作成する。フロー条件分岐コンポーネントの入力フォームにおいて、例えば「ファイルサイズ分岐」という処理名を入力し、ファイルサイズに応じてどこへ進むかを指定する。この例では、１００ＭＢ以上という１つのみを指定する。１００ＭＢ未満については指定しないので、この場合は、何の処理も実行されない。
【００３７】
上記３つのフォーマットにおいてもそれぞれフロー条件分岐コンポーネントが選択されているので、分岐先となるフローが必要となる。このため、さらに３つのフォーマットが生成される。３つのフォーマットは、重要サーバ保存フォーマット、簡易サーバ保存フォーマット、保存通知フォーマットである。
【００３８】
重要サーバ保存フォーマットは、重要サーバに保存する流れを定義し、簡易サーバ保存フォーマットは、簡易サーバに保存する流れを定義する。保存通知フォーマットは、サイズの大きいファイルを保存する際にメール送信する流れを定義する。
【００３９】
重要サーバ保存フォーマットでは、重要サーバに配信し、重要サーバの所定のフォルダに保存するため、複数のＧＵＩコンポーネントのうち、フォルダ配信コンポーネントをドラッグしてノードに接続する。このノードは、契約書フォーマットおよび社内伝票フォーマットにおける金額分岐のフロー条件分岐コンポーネントにリンクするものである。このフォルダ配信コンポーネントは、重要サーバへ配信するものであるため、例えば「重要サーバ配信」という処理名が入力される。
【００４０】
次に、ファイルサイズによって異なる処理を実行することになるので、フロー条件分岐コンポーネントを選択し、フォルダ配信コンポーネントに接続してルートを作成する。フロー条件分岐コンポーネントの入力フォームにおいて、例えば「ファイルサイズ分岐」という処理名を入力し、ファイルサイズに応じてどこへ進むかを指定する。この例では、１０ＭＢ以上という１つのみを指定する。１０ＭＢ未満という条件については指定しないので、この場合は、何の処理も実行されない。
【００４１】
簡易サーバ保存フォーマットでは、簡易サーバに配信し、簡易サーバの所定のフォルダに保存するため、複数のＧＵＩコンポーネントのうち、フォルダ配信コンポーネントをドラッグしてノードに接続する。このノードは、契約書フォーマットおよび社内伝票フォーマットにおける金額分岐のフロー条件分岐コンポーネントにリンクするものである。このフォルダ配信コンポーネントは、簡易サーバへ配信するものであるため、例えば「簡易サーバ配信」という処理名が入力される。
【００４２】
次に、ファイルサイズによって異なる処理を実行することになるので、フロー条件分岐コンポーネントを選択し、フォルダ配信コンポーネントに接続してルートを作成する。フロー条件分岐コンポーネントの入力フォームにおいて、例えば「ファイルサイズ分岐」という処理名を入力し、ファイルサイズに応じてどこへ進むかを指定する。この例では、１０ＭＢ以上という１つのみを指定する。１０ＭＢ未満という条件については指定しないので、この場合は、何の処理も実行されない。
【００４３】
保存通知フォーマットでは、管理者へメール送信を行うため、複数のＧＵＩコンポーネントのうち、メール配信コンポーネントをドラッグしてノードに接続し、ルートを作成する。このルートノードは、重要サーバ保存フォーマット、簡易サーバ保存フォーマットおよび簡易サーバ一時保存フォーマットにおけるファイルサイズ分岐のフロー条件分岐コンポーネントにリンクするものである。このメール配信コンポーネントは、例えば「管理者へメール」という処理名が入力される。
【００４４】
このようにしてワークフローを作成することにより、作成中に設定した各種データを含めてワークフロー情報およびテーブル情報が生成される。ワークフロー情報には、ＯＣＲ、フォルダ配信、メール配信、条件分岐といった複数の処理、その処理順、処理名、ワークフロー名等の情報が含まれる。テーブル情報には、処理名、比較対象の文字列、分岐先等の情報が含まれる。比較対象の文字列は、その文字列を含むか否かによってルートを変更する分岐条件を表すものである。テーブル情報は、ワークフローに含まれる条件分岐の数だけ設けられ、ワークフロー情報と紐付けて記憶される。
【００４５】
再び図１を参照して、このようにして得られたワークフロー情報およびテーブル情報を、ＰＣ１０からワークフローを実行させるＭＦＰ１１へ送信し、記憶させることによりワークフローを登録する。管理者は、１以上のワークフローを登録することができる。
【００４６】
文書配信システムに１以上のワークフローが登録され、実際にワークフローを実行する場合の動作について説明する。文書配信システムを利用するユーザが、ＭＦＰ１１の操作パネルを操作し、登録された１以上のワークフローのワークフロー名を表示させ、その１つを選択し、選択したワークフローの実行を指示する。選択したワークフローの実行は、例えば、操作パネルに表示される開始ボタンを押下することにより指示することができる。ＭＦＰ１１は、ユーザからのワークフローの選択および選択されたワークフローの実行指示を受け付け、選択されたワークフローに従って各処理を実行する。
【００４７】
ＭＦＰ１１は、選択されたワークフローの処理がフォルダ配信である場合、ＦＴＰサーバ１２へ処理を依頼し、メール配信である場合、メールサーバ１３へ処理を依頼する。このとき、ＭＦＰ１１は、ワークフロー情報およびそれに紐付けられたテーブル情報も一緒に送信する。ＦＴＰサーバ１２は、受け取ったワークフロー情報等を参照し、重要サーバまたは簡易サーバへ配信してファイルを保存させる。メールサーバ１３は、受け取ったワークフロー情報等を参照し、ＰＣ１０へメール送信を行う。
【００４８】
図４は、ワークフロー処理システムとしての文書配信システムの別の構成例を示した図である。この例でも、ワークフロー処理システムは、文書配信システムとされている。
【００４９】
文書配信システムは、図１に示した構成と同様、ワークフローの管理者が使用する管理者用ＰＣ１０と、ワークフローを実行するＭＦＰ１１とを備えている。また、文書配信システムは、ＭＦＰ１１から出力されたデータを各配信先へ配信するためのＦＴＰサーバ１２およびメールサーバ１３を備えている。これらは、互いにケーブルまたはネットワーク１４により接続され、互いに通信可能とされている。
【００５０】
図４に示す実施形態では、文書配信システムは、さらに、ＰＣ１０からワークフロー情報およびテーブル情報を受信して記憶し、ＭＦＰ１１からの要求に応じてワークフロー情報等を送信する配信サーバ１５を備えている。配信サーバ１５も、ＰＣ１０、ＦＴＰサーバ１２、メールサーバ１３と同様のハードウェア構成を採用することができる。
【００５１】
配信サーバ１５は、ＦＴＰサーバ１２やメールサーバ１３とネットワーク１４を介して接続されていて、ワークフローに従ってファイルを送信し、フォルダ配信やメール配信を依頼する。
【００５２】
図４に示す実施形態では、管理者は、ワークフロー情報等を配信サーバ１５へ送信し、記憶させることによりワークフローを登録する。この場合も、管理者は、１以上のワークフローを登録することができる。管理者は、ＰＣ１０において、図３に例示したようにしてワークフローを作成し、ワークフロー情報等を生成させることができる。
【００５３】
文書配信システムに１以上のワークフローが登録され、実際にワークフローを実行する場合の動作について説明する。文書配信システムを利用するユーザは、ＭＦＰ１１の操作パネルを操作し、登録された１以上のワークフローのワークフロー名を表示させるために、例えば、検索を実行させる。検索は、操作パネルに表示された検索ボタンを押下することにより実行させることができる。ＭＦＰ１１は、この検索実行の指示を受け付け、配信サーバ１５にアクセスし、登録されたワークフローの情報を取得する。この場合の情報としては、登録されたワークフローのワークフロー名をリストしたワークフロー選択画面情報を挙げることができる。
【００５４】
ＭＦＰ１１は、その情報を受け取り、操作パネルにワークフロー選択画面を表示させる。ユーザは、表示された１以上のワークフローの１つを選択し、選択したワークフローの実行を指示する。選択したワークフローの実行は、例えば、操作パネルに表示される開始ボタンを押下することにより指示することができる。ＭＦＰ１１は、ユーザからの選択および選択されたワークフローの実行指示を受け付け、選択されたワークフローに従って各処理を実行する。
【００５５】
ＭＦＰ１１は、選択されたワークフローのワークフロー情報およびそれに紐付けられたテーブル情報を配信サーバ１５へ要求し、取得する。ここでは、ユーザの選択後に取得しているが、取得のタイミングはこれに限らず、例えばワークフロー選択画面情報とともにこれらの情報を取得するようにしてもよい。
【００５６】
ＭＦＰ１１は、取得したワークフロー情報等を参照し、ＯＣＲ等の処理を実行し、その後の処理がフォルダ配信やメール配信である場合、配信サーバ１５へファイルを送信して、その後の処理を依頼する。配信サーバ１５は、フォルダ配信である場合、ＦＴＰサーバ１２へ処理を依頼し、メール配信である場合、メールサーバ１３へ処理を依頼する。配信サーバ１５は、この依頼をする際、ワークフロー情報およびそれに紐付けられたテーブル情報も各サーバへ送る。
【００５７】
ＦＴＰサーバ１２は、受け取ったワークフロー情報等を参照し、分岐条件に応じて、図示しない重要サーバまたは簡易サーバへ配信してファイルを保存させる。メールサーバ１３は、受け取ったワークフロー情報等を参照し、ＰＣ１０へメール送信を行う。
【００５８】
なお、ＯＣＲ等の処理や、分岐条件に応じた配信先の特定は、配信サーバ１５が実行してもよい。この場合、ＭＦＰ１１では、実行したいワークフローを選択し、開始ボタンを押下することにより、ワークフロー処理の対象となる原稿をスキャナで読み取る。そして、ＭＦＰ１１は、得られた画像データとともに、選択されたワークフローの実行要求を配信サーバ１５に送信する。配信サーバ１５は、画像データとワークフローの実行要求を受信し、実行するワークフローのワークフロー情報等を参照し、受信した画像データに対するＯＣＲ等の処理を実行する。また、配信サーバ１５は、予め指定された配信先へ処理後のデータを送る。なお、配信先は、サーバ等の特定の装置を指定するものに限らず、例えば、１つのサーバの特定のフォルダ等であってもよい。
【００５９】
文書配信システムは、図１および図４に示したシステム構成に限定されるものではなく、他の構成を採用することも可能である。例えば、ネットワーク１４にユーザが利用するＰＣ、プリントサーバ、ＤＨＣＰ(Dynamic Host Configuration Protocol)サーバ等を含んでいてもよい。
【００６０】
文書配信システムは、図１および図４に示した例のように、各装置が有線接続されているものに限らず、無線接続されたものや、有線接続および無線接続が混在したものであってもよい。無線接続を行う場合には、アクセスポイントと呼ばれる電波中継機を備えることができる。また、文書配信システムは、２以上のネットワークに接続される機器から構成されていてもよく、この場合、ネットワーク間を接続するルータと呼ばれる中継装置を備えることができる。
【００６１】
文書配信システムは、ワークフローの作成時あるいは作成後に、ワークフロー中の各処理の実施条件を容易に確認することができる機能を有する。この機能により、管理者の確認作業の負担を軽減することができる。
【００６２】
この機能は、例えば、図１に示すシステムではＰＣ１０に、図４に示すシステムでは配信サーバ１５に実装することができる。この機能は、条件表示処理を実行するためのコンピュータ読み取り可能なプログラムとして提供され、提供されたプログラムをインストールすることにより、ＰＣ１０や配信サーバ１５に実装することができる。この条件表示処理を実行するＰＣ１０または配信サーバ１５の機能ブロック図を図５に例示し、その機能について詳細に説明する。
【００６３】
ＰＣ１０または配信サーバ１５は、指定受付部４０と、条件検出部４１と、情報表示部４２とを機能部として備える。これらの機能部のみを備える構成であってもよいが、図５では、ワークフロー情報を取得するワークフロー情報取得部４３と、そのワークフロー情報を保持するワークフロー情報保持部４４とをさらに備えている。また、図５では、テーブル情報を取得するテーブル情報取得部４５と、そのテーブル情報を保持するテーブル情報保持部４６とをさらに備えている。さらに、図５では、ＵＩ部４７も備えている。
【００６４】
ＵＩ部４７は、管理者に対して、複数のＧＵＩコンポーネントが接続され、ルートを形成したワークフローの図を表示させる。また、ＵＩ部４７は、管理者が確認したい処理を表すＧＵＩコンポーネント上にカーソルを重畳させ、右クリックすると、例えば「入力フォーム」や「条件表示」等の複数の項目を表示させる。指定受付部４０は、管理者によって「条件表示」という項目が選択された場合に、カーソルが重畳された処理の指定を受け付ける。この処理は、管理者が実施条件を表示する対象の処理である。
【００６５】
ワークフロー情報取得部４３は、ＵＩ部４７が表示させているワークフローのワークフロー情報を、そのワークフローが登録されているＭＦＰ１１から取得する。そして、ワークフロー情報取得部４３は、取得したワークフロー情報をワークフロー情報保持部４４に保存する。また、テーブル情報取得部４５は、ワークフロー情報に紐付けられたテーブル情報を取得し、テーブル情報保持部４６に保存する。
【００６６】
条件検出部４１は、指定された処理を実施する実施条件を、ワークフロー情報保持部４４に保存されているワークフロー情報およびテーブル情報保持部４６に保存されているテーブル情報を参照して検出する。このとき、条件検出部４１は、まず、ワークフロー情報を参照して、指定された処理へと繋がる一連の処理を検出する。次に、条件検出部４１は、テーブル情報に基づき、指定された処理を実施するときの条件を検出する。
【００６７】
ＯＣＲ、フォルダ配信、メール配信といった個々の処理については特に条件はなく、分岐処理の場合にのみ条件が伴う。このため、条件検出部４１は、一連の処理の各々につき分岐処理であるか否かを判断し、分岐処理と判断された処理に対して定義された条件を検出することができる。なお、条件は、テーブル情報に含まれることから、テーブル情報を参照することにより検出することができる。
【００６８】
条件検出部４１は、このようにして検出した条件を情報表示部４２に渡す。情報表示部４２は、その条件を、指定された処理を実施するときの実施条件として、予め用意されたテンプレートに入力し、カーソルが重畳されたＧＵＩコンポーネントに近隣した場所に表示させる。
【００６９】
図６を参照して、条件検出部４１が行う条件検出処理の詳細について説明する。条件検出部４１は、指定受付部４０から指定された処理の情報を受け付けることにより、ステップ６００から処理を開始する。以下、指定された処理を、対象処理である処理Ａと呼ぶことにする。また、この条件検出処理は一例であるので、一連の処理を検出し、指定された処理を実施するときの条件を検出することができれば、これ以外の方法も採用することができる。
【００７０】
ステップ６０５では、ワークフロー情報を参照し、処理Ａへと繋がる一連の処理（処理群Ｂと呼ぶ）の検出を行う。ステップ６１０では、処理群Ｂが存在するかどうかを判断する。存在する場合は、ステップ６１５へ進み、存在しない場合は、ステップ６６０へ進む。
【００７１】
ステップ６１５では、１つの処理群Ｂを選択する。処理群Ｂの選択は、任意の順に行うことができる。そして、ステップ６２０へ進み、選択した処理群Ｂの中の１つの処理（処理Ｃ）を選択する。この選択も、任意の順に行うことができる。ステップ６２５では、処理Ｃが分岐処理であるか否かを判断する。分岐処理であるか否かは、ワークフロー情報に分岐(branching)が「true」や「false」で記述されている場合、「true」であるか否か等によって判断することができる。分岐処理である場合、ステップ６３０へ進み、分岐処理でない場合、ステップ６３５へ進む。
【００７２】
ステップ６３０では、テーブル情報を参照し、処理Ａへと繋がる分岐の条件（条件Ｄ）を検出し、ステップ６４０へ進む。一方、ステップ６３５では、分岐の条件がないため、条件Ｄをなしとする。
【００７３】
ステップ６４０では、処理群Ｂの中の処理を全て選択したかどうかを判断する。選択した処理に対しては、例えばフラグを立てることにより、選択したかどうかを判別可能とすることができる。未選択の処理が存在する場合は、ステップ６２０へ戻り、未選択の処理を処理Ｃとして選択する。一方、全て選択した場合は、ステップ６４５へ進む。ステップ６４５では、検出された条件Ｄを論理積andで繋ぎ合わせ、それを条件Ｅとして保持する。
【００７４】
ステップ６５０では、全ての処理群Ｂを選択したかどうかを判断する。選択していない場合は、ステップ６１５へ戻り、選択した場合は、ステップ６５５へ進む。ステップ６５５では、各処理群Ｂにつき得られた条件Ｅを論理和orで繋ぎ合わせ、それを条件Ｆとする。そして、ステップ６６５へ進み、この処理を終了する。
【００７５】
ステップ６６０では、処理群Ｂが存在しないので、条件は存在せず、条件Ｆをなしとする。そして、ステップ６６５へ進み、この処理を終了する。条件検出部４１は、条件Ｆを情報表示部４２へ渡し、情報表示部４２が条件Ｆを表示させる。
【００７６】
この条件表示処理をより理解しやすくするために、以下に具体例を用いて説明する。作成したワークフローが、図７に示すワークフロー図のようなものであったとする。このワークフローは、最初にＯＣＲによりタイトルを抽出し、タイトルが契約書であれば、契約書保存用サーバに保存するように定義されている。また、契約書の顧客名も抽出し、特定の顧客名である場合に限り、承認依頼としてメール送信を行うように定義されている。タイトルが社内伝票であれば、社内伝票保存用サーバに保存するように定義されている。また、社内伝票の勘定コードが特定の番号である場合に限り、承認依頼としてメール送信を行い、特定の場合でない場合には、郵送用にコピーを行うように定義されている。
【００７７】
このワークフローには、３つの条件分岐が含まれている。それは、タイトル分岐、顧客名分岐、勘定コード分岐である。タイトル分岐は、ワークフローの作成時に設定された情報から生成されるテーブル情報に基づき実施される。そのテーブル情報の内容を、図８に例示する。図８に示すテーブル情報は、比較対象の文字列、すなわちＯＣＲにより認識された文字列が「社内伝票」であれば、分岐先として「１」で表されるワークフローの上側のルート（社内伝票保存用サーバ配信）へ進むことを示している。また、「契約書」であれば、分岐先として「２」で表されるワークフローの下側のルート（契約書保存用サーバ配信）へ進むことを示している。
【００７８】
顧客名分岐も、ワークフローの作成時に設定された情報から生成されるテーブル情報に基づき実施される。このテーブル情報の内容を、図９に例示する。図９に示すテーブル情報は、比較対象の文字列が「Ａ社」、「Ｂ社」、「Ｃ社」のいずれかであれば、分岐先として「１」で表されるワークフローの承認依頼へ進むことを示している。それ以外の場合は、分岐先として「０」で表される分岐先なしで、何も処理を行わないことを示している。
【００７９】
勘定コード分岐も、ワークフローの作成時に設定された情報から生成されるテーブル情報に基づき実施される。このテーブル情報の内容を、図１０に例示する。図１０に示すテーブル情報は、比較対象の文字列が「００１」、「００２」、「００３」であれば、分岐先として「１」で表されるワークフローの下側のルート（承認依頼）へ進むことを示している。それ以外の場合は、分岐先として「２」で表されるワークフローの上側のルート（郵送用コピー作成）へ進むことを示している。
【００８０】
このワークフローのワークフロー情報の内容を例示すると、図１１に示すようなものになる。なお、このワークフロー情報は、ＸＭＬ(eXtensible Markup Language)という記述言語を用いてワークフローを記述したものである。図１１中「ｐｌｕｇｉｎ０１」は、ＯＣＲによりタイトル抽出を行う処理を示している。「ｐｌｕｇｉｎ０２」は、タイトル分岐を行う処理を示している。「ｐｌｕｇｉｎ０３」は、社内伝票保存用サーバ配信を、「ｐｌｕｇｉｎ０４」は、勘定コード分岐を、「ｐｌｕｇｉｎ０５」は、契約書保存用サーバ配信を、「ｐｌｕｇｉｎ０６」は、顧客名分岐をそれぞれ示している。また、「ｐｌｕｇｉｎ０７」は、承認依頼のためにメール配信を、「ｐｌｕｇｉｎ０８」は、郵送用コピー作成のために印刷配信を行う処理を示している。また、「ｐｌｕｇｉｎ０７」、「ｐｌｕｇｉｎ０８」で処理が終了することを示している。
【００８１】
図１１中「ｐｌｕｇｉｎ０２」、「ｐｌｕｇｉｎ０４」、「ｐｌｕｇｉｎ０６」は、テーブル情報としてそれぞれ「ｔａｂｌｅ０１」、「ｔａｂｌｅ０２」、「ｔａｂｌｅ０３」というテーブルを識別するための識別情報を含んでいる。
【００８２】
管理者が、例えば、ワークフロー中の「承認依頼」というＧＵＩコンポーネント上にカーソルを重畳させ、右クリックして複数の項目を表示させ、「条件表示」という項目を選択した場合、以下のような処理が実行される。
【００８３】
指定受付部４０は、「承認依頼」という処理名が付されたメール配信という処理の指定を受け付ける。ワークフロー情報取得部４３は、ＵＩ部４７が表示させているワークフローのワークフロー情報、すなわち図１１に示したワークフロー情報を、そのワークフローが登録されているＭＦＰ１１から取得する。そして、ワークフロー情報取得部４３は、取得したワークフロー情報をワークフロー情報保持部４４に保存する。また、テーブル情報取得部４５は、ワークフロー情報に紐付けられた図８〜図１０に示したテーブル情報を取得し、テーブル情報保持部４６に保存する。
【００８４】
条件検出部４１は、処理群Ｂとして、以下の２つの処理群を検出する。１つは、ＯＣＲ（タイトル抽出）−フロー条件分岐（タイトル分岐）−フォルダ配信（社内伝票保存サーバ配信）−フロー条件分岐（勘定コード分岐）という処理群である。もう１つは、ＯＣＲ（タイトル抽出）−フロー条件分岐（タイトル分岐）−フォルダ配信（契約書保存サーバ配信）−フロー条件分岐（顧客名分岐）という処理群である。このように２つの処理群を検出するので、条件検出部４１は、処理群Ｂが存在すると判断する。
【００８５】
条件検出部４１は、例えば、前者の処理群を選択し、その中の１つの処理として、フロー条件分岐（勘定コード分岐）を選択する。これは、分岐処理であるため、メール配信（承認依頼）へと繋がる分岐の条件Ｄを検出する。この場合の条件Ｄは、勘定コード番号が「００１」、「００２」、「００３」という条件である。このようにして、条件検出部４１は、残りの３つの処理に対して条件Ｄを求める。ちなみに、ＯＣＲ（タイトル抽出）やフォルダ配信（社内伝票保存サーバ配信）は、分岐処理ではないため、条件Ｄはなしとされる。フロー条件分岐（タイトル分岐）については、タイトルが「社内伝票」という条件が検出される。
【００８６】
条件検出部４１は、このようにして得られた２つの条件Ｄを論理積ａｎｄで繋ぎ合わせ、タイトル＝「社内伝票」ａｎｄ勘定コード＝「００１」ｏｒ「００２」ｏｒ「００３」という条件Ｅを求める。
【００８７】
条件検出部４１は、同様にして、後者の処理群についても条件Ｅを求める。条件検出部４１は、これら２つの条件Ｅを論理和ｏｒで繋ぎ合わせ、それを条件Ｆとし、情報表示部４２に渡す。情報表示部４２は、その条件Ｆを受け取り、処理Ａを実施するときの実施条件として表示させる。すると、表示画面には、図１２に示すような内容が表示される。
【００８８】
図１２では、承認依頼のためにメール配信を行う処理を実施するときの条件として、２つの条件があることを示している。１つの条件は、タイトルが契約書で、かつ顧客名が特定の顧客名であるという条件である。もう１つの条件は、タイトルが社内伝票で、かつ勘定コードが特定の勘定コード番号であるという条件である。図１２では、条件１と条件２が論理和ｏｒで繋ぎ合わされてはいるが、ｏｒの表示が省略されている。
【００８９】
このように条件が一見して分かるように表示されるので、ワークフローの管理者の負担を軽減することができる。
【００９０】
ワークフロー図は、図７に示すように１つの画面で表示されるものに限らず、図３に示したような複数のフローを組み合わせたものであってもよい。このため、条件検出部４１は、複数のフロー内にある条件を組み合わせて条件Ｅを求め、情報表示部４２が、その組み合わせたものを表示させることも可能である。
【００９１】
また、情報表示部４２が表示させる条件の形式や位置は、図１２に示した形式および位置に限定されるものではなく、図１２に示す内容を含むものであれば、いかなる形式であってもよいし、いかなる位置であってもよい。
【００９２】
情報表示部４２は、指定された処理の実施条件のほか、その実施条件に関連したテーブル情報を表示させることも可能である。このテーブル情報は、例えば、表示された実施条件上にカーソルを重畳させ、右クリックする等して表示させることができる。これは一例であり、この方法に限定されるものではない。
【００９３】
これまで本発明を、情報処理装置、条件表示方法およびプログラムとして上述した実施の形態をもって説明してきたが、本発明は上述した実施の形態に限定されるものではない。したがって、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【００９４】
したがって、本発明としては、上記プログラムが記録された記録媒体や、上記ワークフロー処理システム等も提供することができるものである。
【符号の説明】
【００９５】
１０…ＰＣ、１１…ＭＦＰ、１２…ＦＴＰサーバ、１３…メールサーバ、１４…ネットワーク、１５…配信サーバ、２０…ＣＰＵ、２１…ＲＯＭ、２２…ＲＡＭ、２３…ＨＤ、２４…ＨＤＤ、２５…記録メディア、２６…メディアドライブ、２７…ディスプレイ、２８…ネットワークＩ／Ｆ、２９…キーボード、３０…マウス、３１…ＣＤ−ＲＯＭ、３２…ＣＤ−ＲＯＭドライブ、３３…外部装置Ｉ／Ｆ、３４…バスライン、４０…指定受付部、４１…条件検出部、４２…情報表示部、４３…ワークフロー情報取得部、４４…ワークフロー情報保持部、４５…テーブル情報取得部、４６…テーブル情報保持部、４７…ＵＩ部
【先行技術文献】
【特許文献】
【００９６】
【特許文献１】特許第４９２５９６９号公報
【特許文献２】特開２０１３−０２０３２６号公報
【図１】
2014215983.tif 000003
【図２】
2014215983.tif 000004
【図３】
2014215983.tif 000005
【図４】
2014215983.tif 000006
【図５】
2014215983.tif 000007
【図６】
2014215983.tif 000008
【図７】
2014215983.tif 000009
【図８】
2014215983.tif 000010
【図９】
2014215983.tif 000011
【図１０】
2014215983.tif 000012
【図１１】
2014215983.tif 000013
【図１２】
2014215983.tif 000014