JP2013228958A - ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体 - Google Patents

ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体 Download PDF

Info

Publication number
JP2013228958A
JP2013228958A JP2012101789A JP2012101789A JP2013228958A JP 2013228958 A JP2013228958 A JP 2013228958A JP 2012101789 A JP2012101789 A JP 2012101789A JP 2012101789 A JP2012101789 A JP 2012101789A JP 2013228958 A JP2013228958 A JP 2013228958A
Authority
JP
Japan
Prior art keywords
information
activity
workflow
route
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012101789A
Other languages
English (en)
Inventor
Kenji Iinuma
賢治 飯沼
Takanobu Tsuruno
貴信 鶴野
Takeshi Takatsuka
剛 高塚
Atsushi Tsumagari
敦 津曲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
Original Assignee
Canon Marketing Japan Inc
Canon MJ IT Group Holdings Inc
Canon Software Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon MJ IT Group Holdings Inc, Canon Software Inc filed Critical Canon Marketing Japan Inc
Priority to JP2012101789A priority Critical patent/JP2013228958A/ja
Publication of JP2013228958A publication Critical patent/JP2013228958A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】 開発者が定義したワークフローの経路に対して、ワークフローシステムの利用者が、制約なく容易に経路を編集できるワークフローシステムを提供する。
【解決手段】 クライアント装置において、ワークフローの経路情報を定義する経路情報オブジェクトを含む前記電子帳票を表示させ、経路情報オブジェクトにおけるアクティビティの情報の編集操作を受け付けて経路情報オブジェクトに反映し、電子帳票における帳票情報をワークフローサーバに送信する。ワークフローサーバは、クライアント装置から送信された帳票情報の経路情報オブジェクトに含まれるアクティビティ毎に、該アクティビティに関連付けられた情報をアクティビティ情報としてアクティビティ情報記憶手段に登録させる。
【選択図】図9

Description

本発明は、開発者によるワークフローの定義が容易であり、またユーザがワークフローのプロセスを簡単に編集できる簡易ワークフローシステムに関する。
従来から、会社などの組織において文書の回覧、承認などを確実に処理するためにワークフローシステムが用いられている。しかしながら、ワークフローの回覧先、承認先などの経路と、経路における各の回覧先、承認先の担当者(ユーザ)や権限などアクティビティとを、ワークフローシステムの導入時に、厳密に定義する必要があった。
そのため、ワークフローシステムを導入するための開発者の作業負荷は高く、また導入されたワークフローシステムを利用するユーザも、導入時の定義に従うこととなり、柔軟な経路編集(例えば、回覧先、承認先(アクティビティ)の追加、スキップ、変更)をすることが困難であった。
特許文献1では、開発者は、基本となる経路と、経路における各アクティビティのみを定義し、ユーザが使用する際には、「選択項目」により基本の経路の「次の担当者」以外の者を回覧先、承認先とすることができるワークフローシステムが提案されている。
選択項目には、例えば次の担当者をスキップして、次の次の担当者に承認依頼などをまわす「スキップ処理」がある。
特開平10−177608号公報
しかしながら、特許文献1におけるワークフローシステムであっても、基本となる経路およびその経路上に現れるアクティビティについては、開発者が定義する必要がある。さらに開発者が定義した経路に従わずにユーザが利用できる「選択項目」における各項目についても、ワークフローシステム内に予め組み込まれている必要がある。
従って、ワークフローの定義を開発するための負荷を削減する効果は、あくまで「選択項目」に明示的に組み込まれる部分に限定されている。また、ユーザから見てもワークフローの柔軟性は、あくまで「選択項目」に明示的に組み込まれた範囲での経路の編集に限定されている。
本発明の目的は、開発者が定義したワークフローの経路に対して、ワークフローシステムの利用者が、制約なく容易に経路を編集できるワークフローシステムを提供することである。
本発明は、クライアント装置と、電子帳票の処理を制御するワークフローサーバがネットワークを介して接続可能なワークフローシステムであって、前記クライアント装置は、ワークフローサーバから受信した画面データに基づき、ワークフローの経路情報を定義する経路情報オブジェクトを含む前記電子帳票を表示させる表示制御手段と、前記表示制御手段により表示された前記経路情報オブジェクトにおけるアクティビティの情報の編集操作を受け付ける経路編集受付手段と、前記電子帳票におけるユーザ処理の操作に基づき、前記電子帳票における帳票情報を前記ワークフローサーバに送信する帳票情報送信手段と、を備え、前記ワークフローサーバは、前記クライアント装置の前記帳票情報送信手段から送信された前記帳票情報を受信する帳票情報受信手段と、前記帳票情報受信手段により受信した前記帳票情報の前記経路情報オブジェクトに含まれるアクティビティ毎に、該アクティビティに関連付けられた情報をアクティビティ情報としてアクティビティ情報記憶手段に登録させるアクティビティ情報登録手段と、を備えることを特徴とする。
本発明により、開発者が定義したワークフローの経路に対して、ワークフローシステムの利用者が、制約なく容易に経路を編集できるワークフローシステムを提供することが可能となる。
本発明の実施形態に係わるシステム構成の一例を示す図である。 本発明の実施形態に係わるワークフローサーバ、クライアント装置、開発装置のハードウェア構成の一例を示すブロック図である。 本発明の実施形態に係わるワークフローシステムにおけるソフトウェア構成の一例を示すブロック図である。 開発者がワークフローを開発する処理の一例を示すフローチャートである。 ワークフローを開発する際に定義する定義体の関連図の一例である。 ワークフローの起票時のメニューと、処理待ち案件一覧を開発する際に定義する定義体の関連図の一例である。 ワークフロー定義を格納するデータベース構成の一例である。 ユーザがワークフローの申請時に利用する画面の一例である。 ユーザがワークフローの確認時に利用し、アクティビティの追加/更新の操作をする画面の一例である。 ユーザがワークフローの確認時に利用し、アクティビティの削除の操作をする画面の一例である。 ワークフロー実行履記憶とアクティビティ情報記憶部のデータベース構成の一例である。 ワークフローの実行処理の一例を示すフローチャートである。 ワークフローの実行処理においてアクティビティの追加/更新をする処理の一例を示すフローチャートである。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
図1は、本発明の実施形態に係わるシステム構成の一例を示す図である。
図1において、ワークフローシステムは、少なくとも1つのクライアント装置101とワークフローサーバ102がネットワーク104を介して接続されている。更に開発装置103もシステム構成に含まれ、ネットワーク104を介してクライアント装置101とワークフローサーバ102に接続されていてもよい。
ユーザは、例えばウェブブラウザやクライアントソフトウェアなどを利用して、クライアント装置101から、ワークフローサーバ102に対して、ワークフロー進行の要求などを行う。
ワークフローサーバ102は、要求に応じた処理、管理をおこない、必要があればクライアント装置101に対して結果などを送信する。
開発者は、例えばウェブブラウザやクライアントソフトウェアなどを利用して、開発装置103から、ワークフローの定義などを行う。その際、開発操作は開発装置103のみで処理可能であり最終的な定義結果をワークフローサーバ102に格納してもよい。あるいは開発装置103とワークフローサーバ102が協調して開発のための動作をし、また定義結果を随時、ワークフローサーバ102に格納するような構成であってもよい。
ワークフローサーバ102、クライアント装置101、開発装置103の間の通信は、通常のHTTPのリクエストでもよいし、SOAPなどを利用したウェブサービスのリクエストでもよい。
クライアント装置101a、ワークフローサーバ102a、開発装置103aは、それぞれLANにおいて接続されてもよい。また、クライアント装置101b、ワークフローサーバ102b、開発装置103bは、それぞれインターネット上、クラウド上において構成されてもよい。前述の構成が混在するものであってもよい。
図2は、本発明の実施形態に係わるワークフローサーバ、クライアント装置、開発装置のハードウェア構成の一例を示すブロック図である。
図2に示すように、ワークフローサーバ102、クライアント装置101は、システムバス204を介してCPU(Central Processing Unit)201、RAM(Random Access Memory)202、ROM(Read Only Memory)203、入力コントローラ205、ビデオコントローラ206、メモリコントローラ207、通信I/Fコントローラ208等が接続された構成を採る。 CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、各サーバあるいは各PCが実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。また、本発明を実施するために必要な情報が記憶されている。なお外部メモリはデータベースであってもよい。
RAM202は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM203あるいは外部メモリ211からRAM202にロードし、ロードしたプログラムを実行することで各種動作を実現する。
また、入力コントローラ205は、キーボード(KB)209や不図示のマウス等のポインティングデバイス等からの入力を制御する。
ビデオコントローラ206は、ディスプレイ210等の表示器への表示を制御する。尚、表示器は液晶ディスプレイ等の表示器でもよい。これらは、必要に応じて管理者が使用する。
メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部記憶装置(ハードディスク(HD))や、フレキシブルディスク(FD)、あるいは、PCMCIA(Personal Computer Memory Card International Association)カードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。
通信I/Fコントローラ208は、ネットワーク104を介して外部機器と接続・通信し、ネットワークでの通信制御処理を実行する。例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)を用いた通信等が可能である。
尚、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上に表示することが可能である。また、CPU201は、ディスプレイ210上のマウスカーソル(図示しない)等によるユーザ指示を可能とする。
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイルおよび各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明についても後述する。
図3は、本発明の実施形態に係わるワークフローシステムにおけるソフトウェア構成の一例を示すブロック図である。
ワークフローシステムのユーザが、クライアント装置101においてワークフローシステムのクライアント画面を起動した後、ユーザの指示により処理待ち案件一覧要求送信部301により、処理待ち案件の一覧をワークフローサーバ102に要求する。処理待ち案件の一覧とは、承認者が、申請者から何らかの申請がされているか確認する場合や、あるいは申請者が、何らかの申請に対して承認者により否認されているか確認する場合の、案件がリストアップされているものである。
処理待ち案件一覧要求受信部312は、処理待ち案件一覧要求送信部301から送信された処理待ち案件一覧の要求を受信し、処理待ち案件一覧画面データ生成部313に画面データの生成を指示する。
処理待ち案件一覧画面データ生成部313は、アクティビティ情報記憶部322とワークフロー実行記憶部323から、前記ユーザが処理すべき処理待ちのアクティビティ情報とワークフローの実行中の情報を取得し、これらの情報に基づき処理待ち案件一覧の画面データを生成する。また、生成された画面データの各処理待ち案件には、その処理待ち案件がユーザにより選択された場合に、いずれの画面データを表示すべきかを示す画面IDまたはそれらを導出するためのデータが含まれている。
生成された処理待ち案件一覧画面データは、処理待ち案件一覧画面データ送信部314により、ワークフローサーバ102から、クライアント装置101送信される。
処理待ち案件一覧画面データ受信部302は、ワークフローサーバ102から送信された処理待ち案件一覧画面データを受信し、処理待ち案件一覧画面データ表示制御部303に渡し、クライアント装置101に表示させる。
ここで、ユーザが新たに電子帳票の起票を使用とする場合には、複数ある申請内容からいずれの申請(交通費申請、出張申請など)をするか選択するための申請内容の一覧が表示される。表示画面に一覧として表示されてもよいし、メニューなどに列挙されてもよい。
処理対象選択部304は、処理待ち案件一覧からユーザが選択した処理対象、または前記申請内容の一覧(メニューでもよい)からユーザが選択した申請内容を受け付け、処理対象送信部305に渡される。
処理対象送信部305は、前記選択された処理対象をワークフローサーバ102に送信し、処理対象受信部315が受信する。受信した処理対象は、画面データ生成部316に渡される。
画面データ生成部316は、処理対象が、申請内容の一覧(またはメニュー)から選択された申請内容である場合には、各申請内容に画面IDまたそれらを導出するためのデータ(画面ID等情報)が含まれており、その画面ID等情報に対応するレイアウトに基づき、必要な情報を設定するなどして画面データを生成する。
また、処理対象が、処理待ち案件である場合には、前述の通り、処理待ち案件一覧の処理待ち案件毎に、対応する画面IDまたそれらを導出するためのデータ(画面ID等情報)が含まれている。その画面ID等情報に対応するレイアウトに基づき、処理待ち案件(案件IDなどで特定されている)に対応する必要な情報を設定するなどして画面データを生成する。
画面を生成するに当たり、アクティビティ情報記憶部322やワークフロー実行記憶部323、更に業務データベースを参照することは可能であるが、それは各画面IDに対応する画面生成ロジックとして処理が定義されている。
画面データ受信部306は、ワークフローサーバ102から送信された画面データを受信し、表示制御部307に渡し、クライアント装置101に表示させる。
クライアント装置101において、経路編集受付部308は、ユーザが経路編集をする操作を受け付ける。ユーザが指定した操作が、アクティビティの追加、削除、または更新かに応じて処理し、フローウィジェット上のアクティビティのデータを変更する。変更結果は、表示制御部307に渡され、表示画面に反映される。
また電子帳票に対してユーザの入力などが完了し、申請、承認などの処理が行われると(例えば申請ボタン、承認ボタンが押下されると)、帳票情報送信部309が、入力結果等を帳票情報としてワークフローサーバ102に送信する。ワークフローサーバ102においては、帳票情報受信部318が、帳票情報を受信する。受信した帳票情報から、処理されたアクティビティでの入力情報などの情報を取得し、ユーザが行った処理に応じて各アクティビティのステータスを変更し、アクティビティ情報登録部319によりアクティビティ情報記憶部322及びワークフロー実行記憶部323に登録する。
クライアント装置101において、保存指示部310は、ユーザが利用しているワークフロー定義に対して、経路編集をした結果を後に再利用するため、ワークフローサーバ102に格納する指示を受け付け、ワークフロー定義送信部311に渡す。
ワークフロー定義送信部311は、経路編集されたワークフロー定義を、ワークフローサーバ102に送信する。ワークフローサーバ102においては、ワークフロー定義受信部320が、ワークフロー定義を受信する。受信したワークフロー定義は、ワークフロー定義登録部321により、ワークフロー定義記憶部324に登録される。
なお、301〜321のそれぞれの機能部が、図3の通り、クライアント装置101とワークフローサーバ102において構成されるのは一例であり、その他の構成であってもよい。例えば経路編集受付部308で受け付けた編集内容は、ワークフローサーバ102に送信され、ワークフローサーバ102において画面データが再生成され、その結果をクライアント装置101に送り返し、表示制御部307で表示を編集してもよい。本構成は、あくまで一例である。
また、図3には示していないが、処理済み(あるいはこれから処理待ちになる予定)の案件に対して、案件の処理状況を追跡できるために、ユーザが自己に関連している案件の一覧を表示する画面、その案件の内容を確認できる画面の画面データ取得要求、表示制御があってもよい。
次に、図4から図7を用いて、ワークフローシステムが開発者に開発装置103を操作させ、ワークフローの各種定義体を作成する処理(以降、簡単に「開発者に定義させる」という場合がある)を説明する。
図4は、開発者がワークフローを開発する処理の一例を示すフローチャートである。図4のフローチャートの各ステップは、開発装置103上のCPU201で実行される。各ステップは、開発者による操作を受け付けて必要な定義体を構成していく。図4のフローチャートでは、ワークフローの定義結果は最後にまとめてワークフローサーバ102に格納するものとしている。実際には、フローチャートの処理においては、必要に応じてワークフローサーバ102と通信を行い、定義したワークフローの定義体をワークフローサーバ102の記憶部に随時格納するように実装してもよい。
ステップS401からS412においては、作成しようとするワークフローの定義に現れる1つのアクティビティに対応する各種定義体の定義を行う。すなわち、ワークフローの定義に現れるアクティビティの数だけ、ステップS401からS412が繰り返される。ただし、実際には複数のアクティビティで再利用可能なアクティビティもあり、必ずしも全てのステップでの定義体を開発者に作成させる必要はない。
ステップS401においては、アクティビティにおいてユーザが使用する画面のレイアウトを開発者に作成させる。具体的には、画面のベースとなるコンテナを新規に生成し、例えばアクティビティの名称を表示するためのテキストオブジェクト、ユーザに必要な情報を入力させるためのテキストボックスオブジェクト、申請や承認、確認を行い、次のアクティビティに進むときに押下するボタンオブジェクトなどを開発者に配置させる。これらの画面が、ユーザがワークフローを利用する際の帳票画面となる。1つのレイアウトの例を図5により簡単に説明する。
なお、以降「押下」とは、マウスによって対象となるオブジェクトをクリックすること、キーボード操作で対象となるオブジェクトにフォーカスさせエンターキーを押すなど、何らかの操作で対象となるオブジェクトを選択することを含む。
図5は、ワークフローを開発する際に定義する定義体の関連図の一例である。図5では、1つのアクティビティで必要な定義体の例を示すものであるが、前述の通り下記で説明する各定義体は、他のアクティビティを定義する際に再利用可能なものもあるため、必ずしも全てを定義する必要はない。あくまで一例である。
図5の501は開発画面のベースとなるコンテナ、502はワークフロー「回覧板」を定義する際の最初の「回覧板(申請)」の画面を定義する例である。レイアウト上には、このアクティビティ名と、申請ボタン505、その他の入力項目レイアウトを開発者に定義させる。なお、アクティビティ名には、「回覧板(申請)」と定義されているが、この文字列は固定で定義してもよいし、後述するアクションで画面表示をする際に動的に定義するようにしてもよい。
ステップS402においては、前述の画面レイアウト上にワークフローにおける経路(アクティビティの並び)を配置するための経路情報オブジェクトを、開発者に配置させる。図5においては、経路情報オブジェクト504が開発者によって配置された例を示している。
ステップS403においては、前述において作成したアクティビティに対応する画面が表示される際に実行されるアクションを、開発者に定義される。図5においては、503において例が示されている。503において、「回覧板(申請)」画面に対応するアクションとして、「ログインユーザ名を取得しアクティビティの画面内に表示する」、「経路情報をワークフロー定義B(後述)からアクティビティ情報を読み込み、経路情報オブジェクト504に設定する」などの処理を記載する。また、外部データベース(業務関係DB、人事関係DB)などと連携した処理を記載してもよい。例えば、経路情報オブジェクト504における申請者以外の承認者などを、人事データベースにおける上司を設定する処理を定義してもよい。本例(「回覧板」)では、申請者の上司である「課長」「部長」を自動的に設定するようアクションを定義したとする。
ステップS404においては、申請/確認/承認など、ワークフローを次のアクティビティに進めるために押下するボタンに対応するアクションを、開発者に定義させる。図5においては、申請ボタン505に対応するアクション(507)を定義させる。例えば、「クライアント装置101の帳票画面でユーザが入力した内容のエラーチェックを行う」、「ワークフローが初期に申請されたものであればフローIDを付与する」、「入力結果などをアクティビティ情報記憶部(後述)などに登録する」などの処理である。
ステップS405においては、経路情報オブジェクト504が押下された場合のアクションを開発者に定義させる。図5の508が対応するアクションの例である。まず、アクティビティが1つ(例えば「申請」)だけであれば、「申請」アクティビティの後に他のアクティビティを追加するための「追加確認ダイアログ」を表示させる処理を定義させる。また、それ以外の場合であれば「追加/削除/更新確認ダイアログ」を表示させる処理を定義させる。
ステップS406においては、「追加確認ダイアログ」(図5の509)のレイアウトを開発者に定義させる。このダイアログでは、経路情報オブジェクト504上で選択されたアクティビティ(実行中のアクティビティとは異なってもよい)の後ろに新たなアクティビティを追加することをユーザに確認させるための画面である。
ステップS407においては、「追加/削除/更新確認ダイアログ」(図5の510)のレイアウトを開発者に定義させる。このダイアログでは、経路情報オブジェクト504上で選択されたアクティビティ(実行中のアクティビティとは異なってもよい)の後ろに新たなアクティビティを追加する、または選択されたアクティビティを削除/更新することをユーザに確認させるための画面である。
ステップS408においては、ステップS406、S407において定義したダイアログ(図5の509、510)の追加ボタン511、削除ボタン513、更新ボタン514が押下された際のアクション(図5の515)を、開発者に定義させる。本例では1つのアクションとしているが、追加、削除、更新のそれぞれに分かれていてもよい。このアクションには、追加ボタン511が押下された場合には追加ダイアログ516を表示、削除ボタン513が押下された場合には経路情報オブジェクト504から選択されたオブジェクトを削除、更新ボタン514が押下された場合には更新ダイアログ522を表示するための処理を開発者に定義させる。
ステップS409においては、アクティビティの追加処理をユーザにさせるための追加ダイアログ(516)のレイアウトを開発者に定義させる。
ステップS410においては、追加ダイアログ(516)のOKボタン(520)押下時に、ユーザが設定した値を、経路情報オブジェクト504に反映させるための処理などをアクションとして開発者に定義させる。例えば、「経路情報オブジェクトにアクティビティを追加する」、「アクティビティ名を追加したアクティビティに設定する」、「処理するユーザのユーザ名を設定する」などである。また、図5の追加ダイアログ(516)では、追加するアクティビティに対応する画面を指定する方法はないが、複数の画面をリストボックスなどで指定できるようにし、ステップS410においては、ユーザが指定した画面との対応付けをアクティビティに設定するようにしてもよい。
ステップS411においては、アクティビティの更新処理をユーザにさせるための更新ダイアログ(522)のレイアウトを開発者に定義させる。
ステップS412においては、更新ダイアログ(522)のOKボタン(524)押下時に、ユーザが設定した値を、経路情報オブジェクト504に反映させるための処理などをアクションとして開発者に定義させる。例えば、「選択したアクティビティの名称を更新する」、「処理するユーザのユーザ名を更新する」などである。
ステップS413においては、開発者にアクティビティ及び関連する定義体を更に定義するか確認する。更に定義する場合(YESの場合)、ステップS401に進む。定義を完了する場合(NOの場合)、ステップS414に進む。
なお、後述するワークフローとしては、「回覧板」ワークフローとして、「回覧申請」、「課長確認」、「部長確認」の3つのアクティビティを標準で定義されたものを例として利用する。ただし、「課長確認」と「部長確認」については、アクティビティ名とユーザ名が異なる(表示する際にアクションにより異なる表示をする)だけであり、定義体は同一のものを呼び出すものとする。また、追加ダイアログ(516)により追加されるアクティビティも「課長確認」、「部長確認」と同一の定義体に関連付けられるものとする。
すなわち、例として「回覧板」ワークフローの実体は、最初のアクティビティに「回覧申請」、それ以降のアクティビティ(追加するアクティビティも含め)として「確認」の2種類の定義体で構成されるワークフローとなる。
また、ステップS405〜ステップS412で定義される画面レイアウトの509、510、516、522、及びアクションの508、515、517、523の全て、または一部は、経路情報オブジェクト504に関連する定義体として、あらかじめ標準で定義されていてもよい。
以上のステップでワークフローの定義体の定義に関する処理の説明を完了する。続くステップにより、これらの定義体が呼び出される処理を、開発者に定義させる。
ステップS414においては、開発者に初期画面の呼出を定義させる。すなわち上記のフローチャートの例では、経路情報として最初の定義体である「回覧板(申請)」に対応する画面をメニュー(図5の506)に登録させる。より詳細には図6を用いて説明する。
図6は、ワークフローの起票示のメニューと、処理待ち案件一覧を開発する際に定義する定義体の関連図の一連である。図5のメニュー506と図6のメニュー506は同一のものである。メニュー506には、例えば既に3つの項目(「交通費申請」など)が登録されている。ステップS414では、開発者に、前述のステップまでにおいて定義した「回覧板」ワークフローをユーザが実行できるようにメニュー506に「回覧板」を登録させる(実際には601のように文字列として「回覧板」を対応付ける)。
ステップS415においては、601から登録した項目が選択された場合の処理を、開発者にアクションとして定義させる。前述の「回覧板」の例では、「回覧板(申請)」の画面を表示させるアクションを定義させる(602)。
ステップS416において、処理待ち案件一覧画面(603)を表示する際のアクション(604)を開発者に定義させる。具体的には、例として、ログインユーザを取得し、後述するアクティビティ情報記憶部322から、当該ログインユーザが処理すべき処理待ちアクティビティ情報を処理待ち案件一覧の画面レイアウトに埋め込む処理を定義させる。詳細な情報としては、前記処理待ち案件であるワークフロー名(例えば「回覧板」など)、アクティビティ名(「課長確認」など)を起動時に表示させる処理を定義させる。その他、次のステップで定義させるアクションで使用する情報は、処理待ち案件一覧画面(603)にあらかじめ埋め込むよう定義させる。さらに各表示項目とその表示項目が選択された場合のアクション(605)を定義させる。すなわち、処理待ち案件として表示された情報や、そのステータス(申請が初めてか、却下された後の再申請か、など)などにより、表示する画面が異なる可能性があるため、選択された処理待ち案件に応じて、画面(画面ID)を特定し、当該画面の呼出表示処理をアクションとして定義させる。
また、処理待ち一覧画面自体が定義されていない場合(最初のワークフローを定義する際)には、処理待ち案件一覧の画面レイアウト自体を開発者に定義させるステップも必要である(不図示)。
以上のように、処理待ち案件一覧画面(603)から、ユーザが処理待ち案件を選択したときに、ワークフローシステムにおいて実行される処理は、604、605に記載されている。特に、604には、開発者により、次に遷移する画面条件と、その画面(画面ID)が対応付けられて実装されている。あるいは、画面IDが直接埋め込まれていなくとも、ワークフロー定義の種類とアクティビティの種類の2次元データ構成のテーブルに画面IDを登録しておき、例外的な画面遷移以外は、そのテーブルを参照するなど、様々な方式が考えられる。いずれにしても、604のアクションに従って処理待ち案件一覧画面が生成される。
すなわち、後述するユーザの利用時において、経路情報オブジェクト504にアクティビティを追加、更新、削除しても、604のアクションで次の画面IDがされ、画面自体は、画面ID(例えば501)と画面データを生成するためのアクション(例えば503)で処理が定義されている。
この構成により、ユーザは、経路情報の前後関係におけるアクティビティの整合性を意識することなく、容易にアクティビティの追加、更新、削除を行うことができるという効果が得られる。
ステップS417においては、前述のステップで作成したワークフローの定義体、メニューや処理待ち案件一覧に関連する定義の内容を、開発装置103からワークフローサーバ102に送信し、格納するよう要求する。
ワークフローサーバ102においては、この要求に従って、各種定義をワークフロー定義記憶部324および関連する画面レイアウト記憶部(不図示)、アクション記憶部(不図示)に記憶する。
次に、ステップS417でワークフローサーバ102に格納要求した定義体のうち、ワークフローサーバ102のワークフロー定義記憶部324に記憶するワークフロー定義について図7を用いて説明する。
図7は、ワークフロー定義を格納するデータベース構成の一例である。例として、前述のワークフローとして「回覧板」、その経路情報には3つのアクティビティ「回覧申請」、「課長確認」、「部長確認」が定義されている。
ワークフロー定義A700は、ワークフローの案件自体の情報(ワークフローの情報)を格納するテーブルの一例である。ワークフローが起票される際に、後述するワークフロー実行記憶部を構成するための定義であり、定義時点ではヘッダ(データ項目)のみ定義されており、中にデータが格納されていなくともよい。また、説明する画面の例として後述の図8、図10が対応する。
isse_id701は、ワークフローの起票時にユーザが、またはシステムが自動的に付与する発行IDに対応する項目である。本例では、検索キーとして任意に付与する。
title702は、起票したワークフローの件名をユーザが入力するテキストボックスに対応する項目である。
body703は、「回覧申請」に係る内容をユーザが入力する本文のテキストボックスに対応する項目である。
comment704は、「回覧」の内容の確認者が、確認事項などを自由に記載するコメントに対応する項目である。図8では表示されないが、図10で表示されている。図8と図10の違いは、異なるアクティビティにおいて、異なる画面レイアウトを定義するか、または同一の画面レイアウトではあるが、画面を表示する際のアクションにより、コメントの項目を表示するか否かを制御することにより実現する。
flow_id705は、ワークフローを特定するためのキーとなるIDであり、一意的に付与される。ワークフロー定義記憶部のテーブル構成が、ワークフロー定義毎に分かれている場合には、同一のテーブル構成の中で一意的であればよい。ワークフロー実行結果のデータとして、後述するワークフロー定義B710(アクティビティの定義を格納)と対応付けるために用いる(図11参照)。
ワークフロー定義B710は、アクティビティの定義を格納するデータ構成の一例であり、前述の通りflow_id(705、711)によりワークフロー定義A700のデータ構成と対応付けられている。
act_id712は、アクティビティを特定するための一意的なIDである。本例では、定義した順に1から番号を付与している。
act_name713は、アクティビティ名である。例えば図8〜図10の経路情報オブジェクト504(a〜g)に表示される。
act_no714は、アクティビティの実行順序である。従って、実行時にアクティビティが追加、削除された場合には、定義順にかかわらず、実際に実行されるべき順に1から番号を付与する。例えば図8〜図10の経路情報オブジェクト504に表示されるアクティビティの順番に一致する。
user_id715は、実行予定または実行結果としてのユーザIDである。
user_name716は、実行予定または実行結果としてのユーザ名である。
state717は、アクティビティの状態である。例えば、「todo」は、対応するuser_id715(またはuser_name716)のユーザにとって、該当するアクティビティが処理待ち状態であることを示す。ただし、最初のアクティビティのみは、起票前には「todo」とする。「done」は、該当するアクティビティが既に処理済みであることを示す。「wait」は、未処理であり、対応するユーザにとってまだ処理待ちにもなっていない状態である。
execution_date718は、該当するアクティビティの処理が完了した日時である。
flow_state719は、ワークフローの実行状態である。ワークフロー定義体においては、「initial」が格納される。またワークフローの実行中は、「active」、全てのアクティビティが処理され完了状態となった場合には「complete」が格納される。
これにより図4〜図7の説明を完了する。すなわち、図4のフローチャートによるワークフローシステムが開発者に開発装置103を操作させ、ワークフローの各種定義体を作成する処理の説明を完了する。
次に図8から図11を用いて、ユーザがクライアント装置101において、ワークフロー(例として「回覧板」)を申請、確認する操作と、実行時のデータを管理する記憶部のデータの状態を説明する。
図8は、ユーザがワークフローの申請時に利用する画面の一例である。ユーザとして「鈴木一郎」がログインして操作している(803)。申請はメニュー506を押下し、さらに601のワークフローの一覧からいずれかを選択することで開始する。例では「回覧板」(802)を選択したとして説明する。
「回覧板」を選択すると804の画面が表示される(ただし各テキストボックスは未入力の状態である)。起票時における画面表示のアクション(図5の503)定義により、最初のアクティビティ名「回覧申請」が表示される(805)。また、同アクションによりワークフロー定義B710(図7)から3つのアクティビティ名を読み込んで、act_no714で指定された順番に経路情報オブジェクト504aに表示する。「回覧申請」のユーザ名はログインユーザ名、「課長確認」、「部長確認」のユーザ名は、前述の通り人事データベースなどから組織情報を取得して、「鈴木一郎」の上司の氏名を当てはめた結果である。現在処理しているアクティビティは協調などにより分かりやすく表示することが可能である。
さらに表示後に、ユーザが、発行ID806に「101−003」、件名807に「資料回覧」、本文808に「ご覧ください。」と入力した結果であるが804の状態である。入力が終わった後、ユーザによる申請ボタン505の押下により、申請処理は終了し、ワークフローは次のアクティビティに進む。この時点で、処理結果がワークフローサーバ102に登録されるので、図11を用いて説明する。
図11は、ワークフロー実行記憶部とアクティビティ情報記憶部のデータベース構成の一例である。各期億部の構成については、ワークフロー実行記憶部323はワークフロー定義A700(図7)と同一、またアクティビティ情報記憶部322はワークフロー定義B710と同一であるため、詳細のデータ項目の説明は省略する。
ワークフロー実行記憶部323aには、アクティビティ「回覧申請」において入力した、発行ID806の「101−003」はissue_idに、件名807の「資料回覧」はtitleに、本文808の「ご覧ください。」はbodyに登録される。commentは、アクティビティ「回覧申請」では入力用のテキストボックスが表示されないため、何も格納されない。またflow_idには自動的に「186」が付与され、格納される。
また、アクティビティ情報記憶部322aに登録されるアクティビティの情報について説明する。アクティビティ「回覧申請」において、経路情報オブジェクト504上のアクティビティが編集されていないため、アクティビティの構成は同一である。そこで図7のワークフロー定義B710と違いがあるデータ項目のみ説明する。
flow_idには、ワークフロー実行記憶部323aのflow_idと同一の値が格納される。
user_id、user_nameについては、アクティビティ「回覧申請」の画面が表示された時点でアクションにより決定されているので、その値が各アクティビティに格納される。
stateについては、アクティビティ「回覧申請」の処理が完了しているため、「回覧申請」に対しては「done」へ変更された上で格納される。一方、アクティビティ「課長申請」が処理待ちの状態に変わるので「todo」へ変更された上で格納される。
execution_dateについては、処理が完了したアクティビティ「回覧申請」についてのみ、実際に処理した日時が格納される。
flow_stateについては、ワークフロー処理が実行中であるため、3つのアクティビティに対して全て「active」が格納される。
以上で、アクティビティ「回覧申請」の処理の結果を完了した時点のデータベースの状態について説明を完了する。
次にアクティビティ「課長確認」について、図9を用いて説明する。アクティビティ「回覧申請」の処理が完了した段階で、ユーザ「山田二郎」に対して、発行ID「101−003」のワークフローのアクティビティ「課長確認」が処理待ち案件となる。
図9は、ユーザがワークフローの確認時に利用し、アクティビティの追加/更新の操作をする画面の一例である。まず、「山田二郎」がワークフローの「処理待ち案件一覧」を確認するための画面(901)を表示する。
処理待ち案件一覧の画面(901)には、「鈴木一郎」が申請した「資料回覧」の処理待ち案件が1つ表示されている。この画面は、処理待ち案件一覧のレイアウト(603)上に、アクション(604)に基づいて例えばアクティビティ情報記憶部322(図11の322a)、ワークフロー実行記憶部323(図11の323a)からログインユーザである「山田二郎」が処理すべき情報を検索して生成する。前記処理すべき情報とは、具体的には、user_id715、state717などにより検索される。
処理待ち案件一覧の画面(901)の発行ID「101−003」の行(処理待ち案件)を押下すると、対応付けられた、回覧板のアクティビティ「課長確認」の画面を表示する(903)。この画面は、不図示の「課長確認」画面のレイアウトと、当該画面の表示時に呼び出されるアクションにより生成される。
経路情報オブジェクト504bでは、現在処理中のアクティビティ「課長確認」が強調表示されている。また、ユーザ「山田二郎」は、コメント905「読みました。」を入力したとする。
ここで、経路情報オブジェクト504bにアクティビティを追加する例を説明する。2つめのアクティビティ「課長確認」の直後に、他の課長に回覧したいとする。この時、アクティビティ「課長確認」をフォーカスして押下すると、追加/削除/更新確認のダイアログ(510)が表示される。ここで追加ボタン(511)を押下すると、追加内容を入力するダイアログ(516)が表示される。追加ダイアログ(516)で、アクティビティ名(518)に「課長確認2」、ユーザ名((519)に「清水四郎」を入力し、OKボタン(520)を押下すると、経路情報オブジェクト504cの通りになる。すなわち、フォーカスしていたアクティビティ「課長確認」の次に、新しいアクティビティ「課長確認2」が追加された。
同様にアクティビティ「課長確認2」をフォーカスして、アクティビティ名「課長確認3」、ユーザ名「斉藤五郎」のアクティビティを追加する。またアクティビティ「部長確認」(908)をフォーカスして、アクティビティ名「営業確認」、ユーザ名「営業太郎」のアクティビティを追加する。結果は、経路情報オブジェクト504dの通りになる。
以上の説明の通り、ユーザは、例えばワークフロー「回覧板」を使用しているときに、設計者(開発者)の定義の意図や、上司/部下などの経路の定義にとらわれることがない。すなわち資料の回覧をすべきと判断した他部門の管理職、あるいは図示していないが、他部門の一般社員であってもワークフローの経路情報に動的で柔軟な追加が可能であるという効果を得ることができる。
また図6でも述べたように、ユーザは、経路情報の前後関係におけるアクティビティの整合性を意識することなく、容易にアクティビティの追加を行うことができるという効果が得られる。
次に直前に追加したアクティビティを更新する例について説明する。アクティビティ「営業確認」をフォーカスして、追加/削除/更新確認のダイアログ(510)を表示させ、更新ボタン(514)を押下すると、図5の更新ダイアログ522が表示される。ここで、アクティビティ名「部長確認2」、ユーザ名「田中六郎」としてOKボタン(524)を押下すると、経路情報オブジェクト504eの通りになる(最後のアクティビティが909の通りになる)。
以上の説明の通り、ユーザは、例えば設計者(開発者)の定義の意図や、上司/部下などの経路の定義、あるいは他のユーザの経路情報の編集にとらわれることがなく、誤って作成、または異動などによりアクティビティは必要だが、ユーザ名を変更したいようなアクティビティについて、動的で柔軟な更新が可能であるという効果を得ることができる。
また図6でも述べたように、ユーザは、経路情報の前後関係におけるアクティビティの整合性を意識することなく、容易にアクティビティの更新を行うことができるという効果が得られる。
ユーザ(「山田二郎」課長)が、課長確認アクティビティの画面(903)で、「確認」ボタン(906)を押下すると確認処理は終了し、ワークフローは次のアクティビティに進む。この時点で、処理結果がワークフローサーバ102に登録されるので、再度図11を用いて説明する。
アクティビティ「回覧申請」と「課長確認」の結果として登録された内容については説明済みなので、アクティビティ「回覧申請」と「課長確認」の結果として登録される内容の違いについて述べる。
ワークフロー実行記憶部323bには、図9の905で「山田二郎」が入力した「読みました。」が新たに登録されている。
アクティビティ情報記憶部322aにおいては、もともと3つのみ登録されていたアクティビティが6つになっている。これは図9の経路情報オブジェクト504eに対応する順番に並んでいる。ただし、act_idは定義された順(または登録された順)になるため、「課長確認2」が“4”、「課長確認3」が“5”、「部長確認2」が“6”となっている。
act_nameには、新たに追加されたアクティビティも含め、そのアクティビティの名称が図9で定義されたとおりに登録されている。
act_noは、アクティビティを実行する順番であるため、定義順であるact_idとは異なり、図9の経路情報オブジェクト504eに並んでいる順に番号付けられており、そのため、アクティビティ情報記憶部322aとは番号が変わっているアクティビティもある。
user_idおよびuser_nameには、新たに追加されたアクティビティも含め、ユーザIDとユーザ名が、図9の経路情報オブジェクト504eに並んでいる通りに登録される。
stateは、「山田二郎」(アクティビティ名「課長確認」)においては、処理が完了したため「done」となっている。一方、次のアクティビティ(新たに追加されたアクティビティ)である「清水四郎」(アクティビティ名「課長確認2」)が「todo」となり、処理待ち案件であることを示す。
また、「山田二郎」(アクティビティ名「課長確認」)のexecution_dateに処理時刻が登録される。
以上により、図9のアクティビティを完了した時点でのデータベース内の状態について説明を完了する。
次にアクティビティ「部長確認」について、図10を用いて説明する(「課長確認2」、「課長確認3」は完了したものと見なす)。アクティビティ「課長確認3」の処理が完了した段階で、ユーザ「佐藤三郎」に対して、発行ID「101−003」のワークフローのアクティビティ「部長確認」が処理待ち案件となる。この時点で、アクティビティの情報については、アクティビティ情報記憶部322cの通りになっているとする。
図10は、ユーザがワークフローの確認時に利用し、アクティビティの削除の操作をする画面の一例である。まず、「佐藤三郎」がワークフローの「処理待ち案件一覧」を確認するための画面(1001)を表示する。
処理待ち案件一覧の画面(1001)には、「鈴木一郎」が申請した「資料回覧」の処理待ち案件が1つ表示されている。この画面は、処理待ち案件一覧のレイアウト(603)上に、アクション(604)に基づいて例えばアクティビティ情報記憶部322(図11の322b)、ワークフロー実行記憶部323(図11の323b)からログインユーザである「佐藤三郎」が処理すべき情報を検索して生成する。
処理待ち案件一覧の画面(1001)の発行ID「101−003」の行(処理待ち案件)を押下すると、対応付けられた、回覧板のアクティビティ「部長確認」の画面を表示する(1003)。この画面は、不図示の「部長確認」画面のレイアウトと、当該画面の表示時に呼び出されるアクションにより生成される。
経路情報オブジェクト504fでは、現在処理中のアクティビティ「部長確認」が強調表示されている。
ここで、経路情報オブジェクト504f上のアクティビティを削除する例を説明する。最後のアクティビティ「部長確認2」(909)を削除したいとする。この時、アクティビティ「部長確認2」をフォーカスして押下すると、追加/削除/更新確認のダイアログ(510)が表示される。ここで削除ボタン(513)を押下すると、アクティビティ名「部長確認2」が削除された経路情報オブジェクト504gが表示される。
ユーザ(「佐藤三郎」部長)が、部長確認アクティビティの画面(1003)で、「確認」ボタン(906)を押下すると確認処理は終了し、ワークフローは次のアクティビティに進む。この時点で、処理結果がワークフローサーバ102に登録されるので、再度図11を用いて説明する。
アクティビティ情報記憶部322dにおいては、アクティビティ情報記憶部322cで6つ登録されていたアクティビティが5つになっている。これは図10の経路情報オブジェクト504gに対応する(「田中六郎」(アクティビティ名「部長確認2」)が削除されている)。
以上の説明の通り、ユーザは、例えば設計者(開発者)の定義の意図や、上司/部下などの経路の定義、あるいは他のユーザの経路情報の編集にとらわれることがなく、(例えば「回覧」することが)不適切であると判断されたアクティビティについての動的で柔軟な削除が可能であるという効果を得ることができる。
また図6でも述べたように、ユーザは、経路情報の前後関係におけるアクティビティの整合性を意識することなく、容易にアクティビティの削除を行うことができるという効果が得られる。
全てのアクティビティの処理が完了したため、全てのstateは「done」、flow_stateが「complete」となっている。
また「佐藤三郎」(アクティビティ名「部長確認」)のexecution_dateに処理時刻が登録される。
以上により、図10のアクティビティを完了した時点でのデータベース内の状態について説明を完了する。
これにより図8から図11の説明を完了する。すなわち、ユーザがクライアント装置101において、ワークフロー(例として「回覧板」)を申請、確認する操作と、実行時のデータを管理する記憶部のデータの状態の説明を完了する。
次に図12から図13により、ワークフローシステムの動作について説明する。
図12は、ワークフローの実行処理の一例を示すフローチャートである。図12のフローチャートのステップS1201からS1210は、クライアント装置101上のCPU201で実行される。またステップS1211からS1220は、ワークフローサーバ102上のCPU201で実行される。
ステップS1201においては、ユーザからワークフローの処理対象の選択を受け付ける。ここで処理対象とは、申請時にメニューから選ばれる場合と、承認者/確認者などが処理待ち案件一覧から実行中且つログインユーザが処理すべき処理待ち案件を選択する場合がある。前者の場合、例えば図8のメニュー506からワークフローの一覧(601)が表示された場合には、ユーザが申請したい項目(例えば「回覧板」802)が選択され、ワークフロー「回覧板」の最初のアクティビティ「回覧申請」)を処理対象として受け付ける。一方、後者の場合、例えば図9の処理待ち案件一覧(901)から処理待ち案件(ワークフロー「回覧板」)のアクティビティ「課長確認」を処理対象として受け付ける。
ステップS1202においては、前記処理対象をユーザに操作させるために、ワークフローサーバ102に前述の処理対象を処理要求として送信する。
ステップS1211においては、クライアント装置101から送信された処理要求を受信する。
ステップS1212においては、処理要求に基づいて、画面データを生成する。具体的には、処理要求として、生成すべき画面の指定(画面レイアウトのID)が特定されており、当該画面レイアウトに対応するアクションにより、ワークフロー実行記憶部323、アクティビティ情報記憶部322の情報を利用して画面データを生成する。
ステップS1213においては、生成した画面データをクライアント装置101に送信する。
ステップS1203においては、ワークフローサーバ102から送信された画面データを受信する。
ステップS1204においては、画面データをクライアント装置101に接続された表示装置に表示し、ユーザからの電子帳票に対する入力処理、経路情報の編集処理、申請/承認/確認などのボタン押下による次のアクティビティへの進むための操作を受け付ける。電子帳票に対する入力処理についてはステップS1204の中で行われているものとして、以降の説明では省略する。
ステップS1205においては、操作内容による条件分岐を行う。具体的には、ユーザから受け付けた操作が、経路情報オブジェクト504において、アクティビティの編集を指示されたものである場合には、ステップS1206に進む。また、次のアクティビティへの進むための操作である場合には、ステップS1210に進む。
ステップS1206においては、経路情報オブジェクト504におけるユーザの操作内容による条件分岐を行う。具体的には、ユーザから受け付けた操作が、アクティビティの追加または更新の指示である場合には、ステップS1207に進む。アクティビティの削除の指示である場合には、ステップS1208に進む。
ステップS1207においては、アクティビティの追加/更新をするためのユーザ操作を受け付け、操作の結果を経路情報オブジェクト504に反映する。詳細については図13において説明する。アクティビティの追加/更新の処理が完了したら、ステップS1204に進む。
ステップS1208においては、ユーザにより指定されたアクティビティを削除する。
ステップS1209においては、アクティビティが削除された結果を経路情報オブジェクト504に反映する。
ステップS1210においては、ユーザにより電子帳票に入力された内容、経路情報オブジェクト504などを、帳票情報としてワークフローサーバ102に送信する。
ステップS1214においては、クライアント装置101から送信された帳票情報を受信する。
ステップS1215においては、帳票情報に含まれる経路情報オブジェクト504の現アクティビティに対するstateを「done」に変更する。
ステップS1216においては、次アクティビティに対するstateを「todo」とし、次アクティビティに対応するユーザにとっての「処理待ち案件」として指定する。
ステップS1217においては、処理中のワークフローにフローIDが付与されているか否かを判定する。ワークフローが起票された新しいものであれば、前述の帳票情報はクライアント装置101から初めて送信されてきたものであり、ワークフローサーバ102においてフローIDはまだ付与されていない場合があるからである。フローIDが付与されていなければ(“NO”の場合)には、ステップS1218に進む。フローIDが付与されていれば(“YES”の場合)には、ステップS1220に進む。
ステップS1218においては、帳票情報にフローIDを付与する。
ステップS1219においては、帳票情報を、ワークフロー実行記憶部323、アクティビティ情報記憶部322に新規に格納する。
ステップS1220においては、フローIDに基づき、ワークフロー実行記憶部323、アクティビティ情報記憶部322に既に格納されている情報と、前述の帳票情報を比較して、必要があれば書き換える。本願における「書き換える」とは、比較の結果としてアクティビティが編集されている場合(増減、更新、およびこれらの組み合わせ)の差分を反映すること、および既存の情報のうち、変更がある部分を書き換えることを含む。また、実際には差分のみ書き換えてもよいし、一度全て削除した上で、帳票情報を新たに格納し直す方法、その他いずれの方法であってもよい。これらいずれの方法であっても、本願における「書き換える」ものである。
以上で、図12におけるフローチャートの処理の説明を完了する。次に、図12のステップS1207に対応する処理の詳細を、図13を用いて説明する。
図13は、ワークフローの実行処理においてアクティビティの追加/更新をする処理の一例を示すフローチャートである。図13のフローチャートのステップS1301からS1309は、クライアント装置101上のCPU201で実行される。またステップS1310からS1313は、ワークフローサーバ102上のCPU201で実行される。
ステップS1301においては、経路情報オブジェクト504におけるユーザの操作内容による条件分岐を行う。具体的には、ユーザから受け付けた操作が、アクティビティの追加である場合には、ステップS1302に進む。アクティビティの更新の指示である場合には、ステップS1303に進む。
ステップS1302においては、アクティビティを追加するための情報をユーザに入力させるため(図5の516)、画面データをワークフローサーバ102に要求する。
ステップS1303においては、アクティビティを更新するための情報をユーザに入力させるため(図5の522)、画面データをワークフローサーバ102に要求する。
ステップS1311においては、クライアント装置101から画面データの要求を受け付ける。
ステップS1312においては、要求がアクティビティの「追加」か「更新」かに応じて、画面データの生成を行う。
ステップS1313においては、生成した画面データをクライアント装置101に送信する。要求が「追加」であった場合(追加画面データを生成した場合)には、ステップS1304に進む。要求が「更新」であった場合(更新画面データを生成した場合)には、ステップS1307に進む。
ステップS1304においては、アクティビティを追加するための画面データを受信する。
ステップS1305においては、アクティビティを追加するための画面をクライアント装置101の表示装置に表示し、ユーザに必要な情報を入力させる。例として、図9のダイアログ(追加画面データに基づき生成した画面)516のアクティビティ名(518)、ユーザ名(519)に入力をさせて、受け付ける。
ステップS1306においては、前述のユーザ入力として受け付けた結果に基づき、経路情報オブジェクト504上に、アクティビティを追加する。以上により、追加処理の説明は完了する。
ステップS1307においては、アクティビティを更新するための画面データを受信する。
ステップS1308においては、アクティビティを更新するための画面に変更前のアクティビティ情報を設定して、クライアント装置101の表示装置に表示し、ユーザに必要な情報を入力させる。
ステップS1309においては、前述のユーザ入力として受け付けた結果に基づき、経路情報オブジェクト504上においてユーザに選択されているアクティビティの情報を更新する。以上により、更新処理の説明は完了する。
以上で、図13におけるフローチャートの処理の説明を完了する。すなわち、図12から図13により、ワークフローシステムの動作についての説明を完了する。
以上の説明により、図6でも述べたように、ユーザは、経路情報の前後関係におけるアクティビティの整合性を意識することなく、容易にアクティビティの追加、更新、削除を行うことができるという効果が得られる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、図4、図12、図13に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図4、図12、図13の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図4、図12、図13の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク、ソリッドステートドライブ等を用いることができる。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
101 クライアント装置
102 ワークフローサーバ
103 開発装置
104 ネットワーク
301 処理待ち案件一覧要求送信部
302 処理待ち案件一覧画面データ受信部
303 処理待ち案件一覧画面データ表示制御部
304 処理対象選択部
305 処理対象送信部
306 画面データ受信部
307 表示制御部
308 経路編集受付部
309 帳票情報送信部
310 保存指示部
311 ワークフロー定義送信部
312 処理待ち案件一覧要求受信部
313 処理待ち案件一覧画面データ生成部
314 処理待ち案件一覧画面データ送信部
315 処理対象受信部
316 画面データ生成部
317 処理対象画面データ送信部
318 帳票情報受信部
319 アクティビティ情報登録部
320 ワークフロー定義受信部
321 ワークフロー定義登録部
322 アクティビティ情報記憶部
323 ワークフロー実行記憶部
324 ワークフロー定義記憶部

Claims (9)

  1. クライアント装置と、電子帳票の処理を制御するワークフローサーバがネットワークを介して接続可能なワークフローシステムであって、
    前記クライアント装置は、
    ワークフローサーバから受信した画面データに基づき、ワークフローの経路情報を定義する経路情報オブジェクトを含む前記電子帳票を表示させる表示制御手段と、
    前記表示制御手段により表示された前記経路情報オブジェクトにおけるアクティビティの情報の編集操作を受け付ける経路編集受付手段と、
    前記経路編集受付手段により受け付けたアクティビティの情報の編集結果を、前記経路情報オブジェクトに反映させる経路定義反映手段と、
    前記電子帳票におけるユーザ処理の操作に基づき、前記電子帳票における帳票情報を前記ワークフローサーバに送信する帳票情報送信手段と、を備え、
    前記ワークフローサーバは、
    前記クライアント装置の前記帳票情報送信手段から送信された前記帳票情報を受信する帳票情報受信手段と、
    前記帳票情報受信手段により受信した前記帳票情報の前記経路情報オブジェクトに含まれるアクティビティ毎に、該アクティビティに関連付けられた情報をアクティビティ情報としてアクティビティ情報記憶手段に登録させるアクティビティ情報登録手段と、
    を備えることを特徴とするワークフローシステム。
  2. 前記ワークフローサーバは、更に、
    前記帳票情報に対応する前記アクティビティ情報が、前記アクティビティ情報記憶手段に登録されているか否かを判定する登録判定手段と、を備え、
    前記アクティビティ情報登録手段は、
    前記登録判定手段により、前記アクティビティ情報記憶手段に前記帳票情報に対応する該アクティビティ情報が登録されていないと判定した場合には、前記帳票情報受信手段により受信した前記帳票情報の前記経路情報オブジェクトに含まれるアクティビティ毎に、該アクティビティ情報を該アクティビティ情報記憶手段に登録させ、一方、該帳票情報に対応する該アクティビティ情報が登録されていると判定した場合であって、且つ該帳票情報に含まれる該アクティビティ情報と該アクティビティ情報記憶手段に登録されている該アクティビティ情報が同一でない場合には、該帳票情報に含まれる該アクティビティ情報により該アクティビティ情報記憶手段に登録されている該アクティビティ情報を書き換えることを特徴とする請求項1に記載のワークフローシステム。
  3. 前記経路編集受付手段における編集操作は、
    前記経路情報オブジェクトにおいてユーザが指定した位置にアクティビティを追加する操作であることを特徴とする請求項1または請求項2に記載のワークフローシステム。
  4. 前記経路編集受付手段における編集操作は、更に、
    前記経路情報オブジェクトにおいてユーザが指定した位置のアクティビティを削除するものであることを特徴とする請求項1乃至請求項3のいずれか1項に記載のワークフローシステム。
  5. 前記経路編集受付手段における編集操作は、更に、
    前記経路情報オブジェクトにおいてユーザが指定した位置のアクティビティを更新するものであって、該更新においては、少なくとも該アクティビティの対応する名称およびユーザを変更することが可能であることを特徴とする請求項1乃至請求項4に記載のワークフローシステム。
  6. 前記クライアント装置は、更に、
    前記経路編集受付手段によりユーザが編集した前記経路情報オブジェクトに基づき、新たなワークフロー定義を保存する指示をユーザから受け付ける保存指示受付手段と、
    前記新たなワークフロー定義を、前記ワークフローサーバに送信するワークフロー定義送信手段と、を備え、
    前記ワークフローサーバは、
    前記クライアント装置から送信された前記新たなワークフロー定義を受信するワークフロー定義受信手段と、
    前記ワークフロー定義受信手段により受信した前記新たなワークフロー定義を、ワークフロー定義記憶手段に登録するワークフロー定義登録手段と、
    を備えることを特徴とする請求項1乃至請求項5のいずれか1項に記載されたワークフローシステム。
  7. クライアント装置と、電子帳票の処理を制御するワークフローサーバがネットワークを介して接続可能なワークフローシステムの制御方法であって、
    前記クライアント装置は、
    表示制御手段が、ワークフローサーバから受信した画面データに基づき、ワークフローの経路情報を定義する経路情報オブジェクトを含む前記電子帳票を表示させる表示制御工程と、
    経路編集受付手段が、前記表示制御工程により表示された前記経路情報オブジェクトにおけるアクティビティの情報の編集操作を受け付ける経路編集受付工程と、
    経路定義反映手段が、前記経路編集受付工程により受け付けたアクティビティの情報の編集結果を、前記経路情報オブジェクトに反映させる経路定義反映工程と、
    帳票情報送信手段が、前記電子帳票におけるユーザ処理の操作に基づき、前記電子帳票における帳票情報を前記ワークフローサーバに送信する帳票情報送信工程と、を備え、
    前記ワークフローサーバは、
    帳票情報受信手段が、前記クライアント装置の前記帳票情報送信工程から送信された前記帳票情報を受信する帳票情報受信工程と、
    アクティビティ情報登録手段が、前記帳票情報受信工程により受信した前記帳票情報の前記経路情報オブジェクトに含まれるアクティビティ毎に、該アクティビティに関連付けられた情報をアクティビティ情報としてアクティビティ情報記憶手段に登録させるアクティビティ情報登録工程と、
    を備えることを特徴とするワークフローシステムの制御方法。
  8. クライアント装置と、電子帳票の処理を制御するワークフローサーバがネットワークを介して接続可能なワークフローシステムにおいて実行可能なプログラムであって、
    前記クライアント装置を、
    ワークフローサーバから受信した画面データに基づき、ワークフローの経路情報を定義する経路情報オブジェクトを含む前記電子帳票を表示させる表示制御手段、
    前記表示制御手段により表示された前記経路情報オブジェクトにおけるアクティビティの情報の編集操作を受け付ける経路編集受付手段、
    前記経路編集受付手段により受け付けたアクティビティの情報の編集結果を、前記経路情報オブジェクトに反映させる経路定義反映手段、
    前記電子帳票におけるユーザ処理の操作に基づき、前記電子帳票における帳票情報を前記ワークフローサーバに送信する帳票情報送信手段として機能させ、
    前記ワークフローサーバを、
    前記クライアント装置の前記帳票情報送信手段から送信された前記帳票情報を受信する帳票情報受信手段、
    前記帳票情報受信手段により受信した前記帳票情報の前記経路情報オブジェクトに含まれるアクティビティ毎に、該アクティビティに関連付けられた情報をアクティビティ情報としてアクティビティ情報記憶手段に登録させるアクティビティ情報登録手段として機能させるためのプログラム。
  9. 請求項8に記載されたプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2012101789A 2012-04-26 2012-04-26 ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体 Pending JP2013228958A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012101789A JP2013228958A (ja) 2012-04-26 2012-04-26 ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012101789A JP2013228958A (ja) 2012-04-26 2012-04-26 ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体

Publications (1)

Publication Number Publication Date
JP2013228958A true JP2013228958A (ja) 2013-11-07

Family

ID=49676500

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012101789A Pending JP2013228958A (ja) 2012-04-26 2012-04-26 ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP2013228958A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015197713A (ja) * 2014-03-31 2015-11-09 株式会社日立メディコ 画面処理システム
JP7037675B1 (ja) 2021-01-06 2022-03-16 Ajs株式会社 情報管理装置、情報管理方法、及び情報管理プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015197713A (ja) * 2014-03-31 2015-11-09 株式会社日立メディコ 画面処理システム
JP7037675B1 (ja) 2021-01-06 2022-03-16 Ajs株式会社 情報管理装置、情報管理方法、及び情報管理プログラム
JP2022106219A (ja) * 2021-01-06 2022-07-19 Ajs株式会社 情報管理装置、情報管理方法、及び情報管理プログラム

Similar Documents

Publication Publication Date Title
WO2009116163A1 (ja) アプリケーション開発支援装置、プログラム及び記録媒体
JP2007129580A (ja) 情報処理方法及び装置
JP2009181329A (ja) アプリケーション開発支援装置及びプログラム
JP5334192B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
US10200455B2 (en) Information processing system and method
JP5708715B2 (ja) ワークフロー管理サーバおよびワークフロー管理サーバの制御方法およびプログラムおよび記録媒体
JP6558358B2 (ja) サーバ、情報処理装置、処理方法およびプログラム
JP4714199B2 (ja) アプリケーション開発支援装置及びプログラム
JP6997387B2 (ja) サーバ、情報処理装置、処理方法およびプログラム
JP2013228958A (ja) ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体
JP5961978B2 (ja) プロジェクト管理装置、プロジェクト管理方法、プログラム及び記憶媒体
JP5311136B2 (ja) ワークフロー管理サーバおよびワークフロー管理サーバの制御方法およびプログラムおよび記録媒体
JP5949278B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラムおよび記録媒体
JP4386243B2 (ja) プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体
JP5150820B2 (ja) 文書管理装置及びその制御方法、文書管理システム、及びプログラム
JP4999567B2 (ja) 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体
JP2005092544A (ja) ワークフロー世代管理処理方法,ワークフロー処理システムおよびワークフロー制御プログラム
JP5381547B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP2015079517A (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP2016173773A (ja) ワークフローシステム、ワークフローシステムの処理方法、およびプログラム
JP2019128867A (ja) 設計情報管理システム、設計情報管理方法およびプログラム
JP5594409B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP2016162141A (ja) ワークフローサーバ、ワークフローサーバの制御方法およびプログラム
JP4850618B2 (ja) 文書管理装置及びその制御方法、プログラム、記憶媒体
JP2013105443A (ja) ワークフローシステム、ワークフローサーバ、ワークフローシステムの制御方法、プログラムおよび記録媒体

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150410