JP4307122B2 - Workflow processing method and program - Google Patents
Workflow processing method and program Download PDFInfo
- Publication number
- JP4307122B2 JP4307122B2 JP2003087501A JP2003087501A JP4307122B2 JP 4307122 B2 JP4307122 B2 JP 4307122B2 JP 2003087501 A JP2003087501 A JP 2003087501A JP 2003087501 A JP2003087501 A JP 2003087501A JP 4307122 B2 JP4307122 B2 JP 4307122B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- workflow
- slip
- state
- definition
- 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.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims description 14
- 238000000034 method Methods 0.000 claims description 130
- 230000008569 process Effects 0.000 claims description 121
- 230000007704 transition Effects 0.000 claims description 100
- 238000012545 processing Methods 0.000 description 99
- 230000000694 effects Effects 0.000 description 75
- 230000009471 action Effects 0.000 description 60
- 230000006870 function Effects 0.000 description 47
- 238000010586 diagram Methods 0.000 description 21
- 238000011161 development Methods 0.000 description 18
- 238000012423 maintenance Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 235000006719 Cassia obtusifolia Nutrition 0.000 description 1
- 235000014552 Cassia tora Nutrition 0.000 description 1
- 244000201986 Cassia tora Species 0.000 description 1
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
【0001】
【発明が属する技術分野】
本発明は、ワークフローの処理技術に関する。
【0002】
【従来の技術】
ワークフロー処理システムの開発には従来多大な労力が必要とされてきた。ワークフロー上取り扱われる伝票を表示する伝票画面の各フィールドは、伝票自体のワークフローの進行状況(現在地)に応じて、同一伝票内の同一フィールドであっても、入力フィールドや表示フィールドまたは非表示フィールドに変化し、更に入力フィールドのチェック・ロジック(フォーマット・チェック、マスタ・チェック、固有なビジネス・ロジックなど)や表示フィールドの表示ロジック(マスタ参照、計算ロジック、フォーマット変換ロジックなど)も変化する。
【0003】
また、伝票画面でのワークフローのプログラミングも、同じくワークフローの進行状況及び定義されたワークフローに応じて、申請や可決/否決、差戻、取戻し他、ワークフローの進行状況(現在地)に応じてどのワークフロー機能(申請、可決などの、伝票画面に設けられたボタンなど)が有効であるのかを判定し、ユーザの操作により選ばれたワークフロー機能を実行してワークフローを進めてゆかなければならない。
【0004】
このように、ワークフローの進行状況(現在地)に応じた伝票画面は、各ワークフロー定義におけるワークフローの進行状況(現在地)のバリエーションに対し、各伝票様式とのコンビネーションからなる相当数のバリエーションを有することになる。
【0005】
このような状況において、伝票様式(伝票種類)毎に伝票フィールドのプログラミングと伝票画面でのワークフローのプログラミングとの整合を適切に行うため、開発分担は伝票様式(伝票種類)毎のワークフロー付き伝票画面となる。プログラム開発者は、ワークフロー付き伝票画面の開発においては、以下の事項を全て理解する必要があった。(1)画面デザイン、(2)ワークフロー制御、(3)伝票フィールドのロジック、(4)(1)乃至(3)の連携(ある伝票様式とそれが用いられるワークフロー定義におけるワークフローの進行状況(現在地)に応じたプログラミング。)従って、例えば、起票時点における(1a)伝票画面のデザイン、(2a)利用できるワークフロー機能(申請など)の判定とワークフロー実行、(3a)伝票の各入出力フィールドについてのロジック、及び(4a)(1a)乃至(3a)を連携させる為のプログラミングをプログラム開発者一人一人が行わなければならない。これでは、N人で開発しても開発期間の短縮ができないという問題があった。
【0006】
また例えば特開2001−134681号公報には、以下のような技術が開示されている。すなわち、電子帳票を処理するワークフロー上の作業者毎、実行できるアクションを定義する。各作業者が電子帳票を操作するに際し、操作画面上の帳票イメージに、その作業者に指定されたアクションに対応したボタンなどのオブジェクトが表示される。そのオブジェクトを操作することにより、そのアクションが実行される。現在処理しようとしているのがワークフロー上のどのノードか、また、そのノードに有効なものとして定義されているのはどのアクションか、処理の結果遷移した帳票の状態は、どのようになるかといった情報は、サーバー・プログラムにより、電子帳票がノードを移動する度に現在の帳票情報としてセットされる。クライアント・サービス・プログラムはこれに従って適切な表示を行う。この技術では、ボタンの生成方法については述べられているが、電子帳票との関連で、開発効率を向上させるための工夫については開示されていない。
【0007】
【特許文献1】
特開2001−134681号公報
【0008】
【発明が解決しようとする課題】
以上のように、従来のワークフロー処理システムにおいては、伝票様式数分のワークフロー付き伝票画面を開発しなければならないため開発負担が大きく、プログラム開発者にとってはシステム理解に時間を要し、プログラム開発者の一人一人による逐次開発なので開発期間及び保守時間の短縮ができず、システムの一部変更時も全体の見直しが必要となるなど問題が多かった。これは、ワークフローの伝票回送制御と伝票画面のプログラミングとを混在させた開発方式を取らざるを得なかったことが、以上のような問題を生み出した大きな原因である。
【0009】
従って、本発明の目的は、ワークフロー処理システムの開発・保守効率の向上を可能とするための技術を提供することである。
【0010】
【課題を解決するための手段】
本発明に係るワークフロー処理方法は、ユーザの端末から受信したデータに基づき、特定の伝票についてのワークフロープロセスにおける、状態と当該状態間の状態遷移とのいずれかであるポジションを特定するポジション特定ステップと、ポジションに関連する伝票のフォーム・データを取得し、記憶装置に格納する伝票フォーム・データ取得ステップと、ワークフローの定義に基づき、特定されたポジションに関連してユーザにより指示させることの可能な状態遷移のデータを取得し、記憶装置に格納する状態遷移データ取得ステップと、少なくとも伝票のフォーム・データから電子フォーム表示用のデータを、状態遷移のデータからボタン表示用のデータを生成し、出力する表示用データ生成ステップとを含む。さらに、保守時においても修正を最小限度にすることが可能となる。
【0011】
このように、特定されたポジションに関連する伝票のフォーム・データから電子フォーム表示用のデータを、ワークフローの定義に基づき且つユーザにより指示させることの可能な状態遷移のデータからボタン表示用のデータを生成するようにしているため、伝票のフォーム・データに関する開発作業とワークフローに関する開発作業とを分離することができるようになった。従って、開発の並列性が向上し、プログラム開発者一人一人の負担も減らすことができるようになる。
【0012】
また、本発明において、特定されたポジションが状態遷移である場合、少なくとも当該状態遷移と当該状態遷移に関連する伝票とにより特定されるプログラムを起動するプログラム起動ステップをさらに含み、上で述べた表示用データ生成ステップにおいて、プログラムからのデータをさらに用いて電子フォーム表示用のデータを生成するようにすることも可能である。このように伝票及び状態遷移に関連して実行されるべきプログラムについても状態遷移に応じて起動されるようにしたため、電子フォーム表示用のデータからは分離して開発できるようになる。従って、開発の効率が向上している。
【0013】
さらに、本発明において、上で述べたポジション特定ステップにおいて所定の状態遷移を特定した場合、当該特定の状態遷移の遷移前の状態に関連する電子フォームに入力されたデータ及び特定の状態遷移の遷移先の状態に関するデータを、ワークフロー実行制御情報として登録するステップとをさらに含むようにしてもよい。さらに、上で起動されたプログラムからの戻り値を登録するようにしても良い。ワークフローの定義情報とワークフロー実行制御情報にてワークフローの回送制御を行うようになっており、伝票のフォーム・データとは独立して処理される。
【0014】
さらに、上で述べたポジション特定ステップが、ユーザの端末から特定のワークフロープロセスの識別データを受信した場合、特定のワークフロープロセスの識別データに基づき、対応するワークフロー実行制御情報を特定するステップと、対応するワークフロー実行制御情報により現在の状態を特定するステップとを含むようにしても良い。例えば、特定の権限を有するユーザが申請に対して承認を行う場合の処理である。
【0015】
なお、上述の方法はプログラム及びコンピュータにて実施することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークなどを介してデジタル信号として配信される場合もある。尚、中間的な処理結果はメモリに一時保管される。
【0016】
【発明の実施の形態】
本発明の一実施の形態に係るシステム概要図を図1に示す。例えばLAN(Local Area Network)であるネットワーク1には、例えばパーソナルコンピュータでウェブ(Web)ブラウザ機能を有する1又は複数のユーザ端末3と、周知のWebサーバ機能51を有し且つ本実施の形態における主要な処理を実施するワークフロー処理システム5とが接続されている。なお、ネットワーク1には、開発者又は保守担当者が操作し且つ例えばパーソナルコンピュータである開発者端末7が接続されている場合もある。
【0017】
ワークフロー処理システム5は、ユーザ端末3からの要求に応じてWebページ・データ(HTML(Hyper Text Markup Language)ファイルと埋め込まれる画像ファイルなど)を生成しユーザ端末3に送信すると共にユーザ端末3からの入力データ等を受信して伝票コンテナ53に出力するWebサーバ機能51と、Webサーバ機能51とデータのやり取りを行い且つ本実施の形態における主要な処理を実施する伝票コンテナ53と、伝票コンテナ53から参照される定義情報を格納した定義情報DB55と、伝票コンテナ53により起動され且つ所定の処理を実施するプログラムである複数のアクション部品57と、従来から利用されている各種マスタファイルを管理し且つアクション部品57とのデータのやり取りを行うバックグランドシステム59と、個々のワークフロープロセス実行における制御情報であるワークフロー実行制御情報を格納するワークフロー実行制御情報格納部58とを含む。
【0018】
伝票コンテナ53は、電子フォーム制御部531と、ワークフロー制御部532と、イベント制御部533と、ワークフローデータ処理部534とを含む。伝票コンテナ53の詳細な処理については以下で説明する。また、バックグランドシステム59は、所属マスタファイル591、社員マスタファイル593、各種業務マスタファイル595などを有している。なお、バックグランドシステム59については従来のシステムと変わりないので、これ以上詳しく説明しない。
【0019】
アクション部品57は、プログラムであって、例えばEJB(Enterprise Java Beans:JavaはSun Microsystems社の商標)で構成されている。
【0020】
図2に示すように、開発者端末7には、電子フォームデザイナ71及び関連するプロパティ設定部73とが含まれている。開発者は、開発者端末7を操作して、電子フォームデザイナ71により電子伝票の画面デザインを、提供されるGUI(Graphical User Interface)に従って行う。電子伝票のフィールド名及び型などの属性情報については、プロパティ設定部73により、各フィールドについて設定を行う。また、電子伝票全体についての属性情報についても、プロパティ設定部73により設定する。電子フォームデザイナ71により生成された画面デザインのデータ(フォーム・データ)と共に、各フィールド及び電子伝票全体についてプロパティ設定部73により設定された電子フォーム定義551は、定義情報DB55に登録され、伝票コンテナ53により参照される。電子フォーム定義551の一例を図3に示す。図3に示したテーブルでは、伝票名の列301と、フィールド名の列302と、型の列303とを含み、電子伝票に設けられるフィールド毎に型等の属性情報を登録するようになっている。
【0021】
また、プロパティ設定部73により、当該電子伝票についてどのようなイベント(状態遷移)の際にどのようなアクション部品57を起動してバックグランドシステム59に対する処理を行うかということも規定する。図2では、イベント/アクションのタブを選択して、特定のフィールド(例えば残日数)について起動すべきアクション部品57を規定するようになっている。但し、伝票全体についても起動すべきアクション部品57を規定する。図2の例では、イベント入力部731においてイベントを特定し、アクション部品入力部732においてアクション部品を特定し、パラメタ項目名特定部733においてパラメタ項目名を特定し、パラメタ入力部734においてパラメタを特定する。なお、イベント入力部731は、イベント定義601から選択肢をコンボボックス形式で示すようになっている。イベント定義601の一例を図4に示す。図4に示したテーブルは、イベント名の列311と、説明の列312とを含み、本ワークフロー処理システム5において出現するイベントの一覧となっている。本実施の形態では、予め図4のようなイベント定義601を用意しておき、開発作業において参照するようになっている。イベント入力部731では、図4のイベント名の列311のデータにより、コンボボックスが構成される。
【0022】
また、アクション部品入力部732は、業務ロジック部品定義602から選択肢をコンボボックス形式で示すようになっている。業務ロジック部品定義602の一例を図5に示す。図5に示したテーブルは、アクション部品名の列321と、パラメタ数の列323と当該パラメタ数に対応する数のパラメタ項目名の列324とを含む部品への入力情報の列322とを有しており、アクション部品毎にパラメタ数とデータを入力すべきパラメタ項目名とが規定されている。本実施の形態では、予め図5のような業務ロジック部品定義602を用意しておき、開発作業において参照するようになっている。また、アクション部品57は、業務ロジック部品定義602に従って作成されており、アクション部品名に記されているような機能を実現するものである。アクション部品入力部732では、図5のアクション部品名321のデータにより、コンボボックスが構成される。なお、アクション部品入力部732において特定のアクション部品57が選択されると、図5のパラメタ数の列323の値から当該特定のアクション部品57についての列数が決定され、プロパティ設定部73におけるパラメタ項目名特定部733(図2)の表示が列方向に展開されるようになっている。「年次休暇残日数取得」についてはパラメタ数が1であるが、「年次休暇申請期間・日数チェック」についてはパラメタ数が2であるから、プロパティ設定部73におけるパラメタ項目名特定部733の表示が2列に自動的に展開される。
【0023】
さらにパラメタ項目名特定部733については、アクション部品入力部732において選択されたアクション部品名に基づき業務ロジック部品定義602から自動的に指定される。例えば、「年次休暇残日数取得」についてはパラメタが1つであるから「対象年度」が自動的に指定される。「年次休暇申請期間・日数チェック」についてはパラメタ数が2であるから、プロパティ設定部73における表示が2列に渡って「対象年度」と「申請期間」が指定される。
【0024】
パラメタ入力部734については、図3において特定されている電子フォーム定義551に含まれるフィールド名のデータ及びシステム変数(%当年度など)を選択肢として、コンボボックス形式で提示するようになっている。
【0025】
このようにプロパティ設定部73により表示される画面に従って、イベント、アクション部品、パラメタ項目及びパラメタを特定して、項目ロジック指示定義552として登録する。項目ロジック指示定義552の一例を図6に示す。図6に示したテーブルは、伝票名の列331と、イベント名の列332と、フィールド名の列333と、アクション部品の列334と、パラメタ項目名とパラメータを含むパラメータ情報の列335とを含み、伝票及びイベントの組み合わせ毎にアクション部品が特定される。なお、フィールド名333の列には値が登録されない場合もあり、その場合には伝票全体としてアクション部品が規定される場合である。
【0026】
このようにワークフローに関連するイベント定義601と業務ロジック部品定義602とがあれば、ワークフローのデータなしに電子伝票の開発を進めることができる。従って、開発効率を向上させることができる。また、保守においてもワークフローに影響を与えずに画面デザインを変更することも可能となる。
【0027】
また、図7に示すように、開発者端末7には、ワークフロープロセス設定部75も含まれており、開発者は、開発者端末7を操作して、ワークフロープロセス設定部75によりワークフローの設計を、提供されるGUIに従って行う。例えば、開始及び終了についての端子401と、ワークフロー内の状態を表すアクティビティ403と、端子401とアクティビティ403の間又はアクティビティ間の状態遷移を表すイベント402とを用いて、端子401とアクティビティ403とをイベント402で接続することにより、ワークフローは定義される。なお、イベント402については、イベント定義601(図4)において定義されているため、イベント名(例えば「起票」)を指定する際には、例えば右クリックすることによりイベント定義601に従った選択肢が提示され、選択できるようになっている。開発者は、ワークフロープロセス設定部75により、ワークフロー処理システム5において取り扱う全てのワークフローについて定義を行って、ワークフロープロセス定義553として定義情報DB55に登録する。図8にワークフロープロセス定義553のデータの一例を示す。図8に示したテーブルは、ワークフロープロセス名の列341と、アクティビティ名の列342と、イベント名の列343と、遷移先アクティビティ名の列344とを含み、各ワークフロープロセスについて、移動元のアクティビティからどのようなイベントでどの遷移先アクティビティに移行するかを特定している。一つのアクティビティから多数のアクティビティに遷移する場合もあるため、1つのワークフロープロセスであっても同一アクティビティについてのレコードが複数登録されている場合もある。
【0028】
このようにワークフローを定義する際には、イベント定義601については参照するが、それ以外のデータを用いなくともよくなっている。従って、開発効率を向上させることができる。また、保守においても小規模なワークフローの変更は電子フォーム定義551に影響しない。
【0029】
定義情報DB55には、さらに伝票定義554が登録されている。伝票定義554の一例を図9に示す。図9に示したテーブルは、業務カテゴリ名の列351と、伝票名の列352と、フォーム名の列353と、ワークフロープロセス名の列354と、アクティビティ名の列355と、イベントの列356とを含む。例えば、特定のワークフロープロセスにおけるアクティビティ名が識別された場合や特定のワークフロープロセスにおけるイベント名が特定された場合、使用する電子伝票のフォーム・データを特定することができるようになる。
【0030】
このように定義情報DB55には、電子フォーム定義551と、項目ロジック指示定義552と、ワークフロープロセス定義553と、伝票定義554とが登録されており、伝票コンテナ53は、これらの定義情報とアクション部品57とワークフロー実行制御情報格納部58に格納されたワークフロー実行制御情報を用いて処理を行うようになっている。
【0031】
以下図10乃至図18を用いてワークフロー処理システム5の処理フローを説明する。なお、図10の処理の前に、ユーザはワークフロー処理システム5に自らのユーザIDにてログインしているか又は他の方法にてユーザIDが特定されているものとする。まず、申請処理の処理フローについて説明する。ユーザは、ユーザ端末3を操作して、ワークフロー処理についてのメニューページにアクセスさせる(ステップS1)。ワークフロー処理システム5のWebサーバ機能51は、ユーザ端末3からのアクセスに応じて、メニューページのデータをユーザ端末3に送信する(ステップS3)。ユーザ端末3は、ワークフロー処理システム5からメニューページ・データを受信し、表示装置に表示する(ステップS5)。ユーザは、メニューページに含まれる各種業務の各種伝票の中から、例えば「就業」カテゴリの「年次休暇申請」を選択し、クリックしたものとする。ユーザ端末3は、ユーザによる「年次休暇申請」の選択入力を受け付け(ステップS7)、当該「年次休暇申請」の選択データをワークフロー処理システム5に送信する(ステップS9)。ワークフロー処理システム5のWebサーバ機能51は、ユーザ端末3から「年次休暇申請」の選択データを受信して一旦記憶装置に格納し(ステップS11)、起票イベント処理を実施する(ステップS13)。起票イベント処理については、図11を用いて説明する。
【0032】
ワークフロー処理システム5のWebサーバ機能51は、上で述べたように「年次休暇申請」の選択データを受信すると、「年次休暇申請」の起票イベントとしてイベント制御部533に通知する(図11:ステップS31)。イベント制御部533は、Webサーバ機能51から「年次休暇申請」の起票イベントを受信して一旦記憶装置に格納すると共に、電子フォーム制御部531とワークフロー制御部532に通知する(ステップS33)。
【0033】
電子フォーム制御部531は、イベント制御部533から「年次休暇申請」の起票イベントを受信し、一旦記憶装置に格納する(ステップS35)。そして、伝票定義554(図9)を参照して、「年次休暇申請」に対応するフォーム名を特定し、当該フォーム名により電子フォーム定義551から対応するフォーム・データを抽出する(ステップS37)。また、「年次休暇申請」の起票イベントに従って項目ロジック指示定義552を参照して、当該起票イベントに関係するアクション部品57を特定し、当該アクション部品57を起動する(ステップS39)。なお、項目ロジック指示定義552にパラメータが規定されている場合には、当該パラメータのデータをアクション部品57に出力する。そして、各アクション部品57は、規定された処理を例えばバックグランドシステム59に対して行う。例えば社員マスタファイル593に登録されている休暇残日数のデータを読み出すなどの処理を行う。
【0034】
そして、電子フォーム制御部531は、アクション部品57から戻り値を受信し(ステップS41)、当該アクション部品57からの戻り値と電子フォーム定義551から読み出したフォーム・データとを用いて、電子フォーム部のデータを生成し、一旦記憶装置に格納する(ステップS43)。例えば図12(a)に示すような画面のためのデータを生成する。図12(a)の例では、年次休暇の取得期間の始期入力欄361と、年次休暇の取得期間の終期入力欄362と、アクション部品57からの戻り値が埋め込まれている残日数表示欄363と、休暇理由選択コンボボックス364とが設けられている。このような電子フォーム部のデータが生成される。電子フォーム制御部531は、当該電子フォーム部のデータをWebサーバ機能51に出力する(ステップS45)。
【0035】
ワークフロー制御部532は、イベント制御部533から「年次休暇申請」の起票イベントを受信し、一旦記憶装置に格納する(ステップS47)。そして、ワークフロープロセス定義553(図8)を参照し、「年次休暇申請」の起票イベントの遷移先アクティビティを特定すると共に、当該遷移先アクティビティを遷移元とする次イベントのデータを抽出する(ステップS49)。図8の例では「申請」イベントが抽出される。そして、当該次イベントのデータに基づきワークフロー部のデータを生成し、一旦記憶装置に格納する(ステップS51)。例えば図12(b)に示すような画面のためのデータを生成する。図12(b)の例では、「申請」イベントが抽出されたので、申請ボタン365が設けられている。申請ボタン365は、「年次休暇申請」の申請イベントを発生させるためのボタンである。このようなワークフロー部のデータが生成される。ワークフロー制御部532は、当該ワークフロー部のデータをWebサーバ機能51に出力する(ステップS53)。
【0036】
Webサーバ機能51は、電子フォーム制御部531から電子フォーム部のデータを受信し、ワークフロー制御部532からワークフロー部のデータを受信し、一旦記憶装置に格納する(ステップS55)。そして、図10の処理に戻る。Webサーバ機能51は、電子フォーム部のデータ及びワークフロー部のデータを用いて、申請フォーム・データを生成し、ユーザ端末3に送信する(ステップS15)。ユーザ端末3は、ワークフロー処理システム5から申請フォーム・データを受信し、表示装置に表示する(ステップS17)。例えば図12(c)のような画面が表示される。すなわち、上段には電子フォーム部366が、下段にはワークフロー部367が設けられている。上段と下段のレイアウトを逆転することも可能である。また、ワークフロー部367のボタンはボタンではなく、リンク等のクリック可能な他のものであってもよい。
【0037】
ユーザは、図12のような画面の場合には電子フォーム部366に休暇始期と休暇終期とを入力し、休暇理由を選択して、申請ボタンをクリックする。ユーザ端末3は、ユーザによる「年次休暇申請」の入力データ及び申請指示を受け付け(ステップS19)、当該入力データ及び申請指示を表すデータをワークフロー処理システム5に送信する(ステップS21)。ワークフロー処理システム5のWebサーバ機能51は、ユーザ端末3から「年次休暇申請」の入力データ及び申請指示を表すデータを受信し、一旦記憶装置に格納する(ステップS23)。そして、申請イベント処理を実施する(ステップS25)。
【0038】
申請イベント処理については図13を用いて説明する。ワークフロー処理システム5のWebサーバ機能51は、「年次休暇申請」の入力データ及び申請指示を表すデータを、当該入力データ及び申請イベント発生としてイベント制御部533に通知する(図13:ステップS61)。イベント制御部533は、Webサーバ機能51から「年次休暇申請」の入力データ及び申請イベント発生の通知を受信し、電子フォーム制御部531とワークフロー制御部532とに通知する(ステップS63)。
【0039】
電子フォーム制御部531は、イベント制御部533から「年次休暇申請」の入力データ及び申請イベント発生の通知を受信すると(ステップS65)、項目ロジック指示定義552を参照し、当該申請イベントに関連するアクション部品57を起動する(ステップS67)。アクション部品57には、「年次休暇申請」の入力データの少なくとも一部がパラメータとして渡される。起動されたアクション部品57は、例えば取得始期及び取得終期に問題がないか確認するなど予め決められた処理を実施する。なお、図では示していないが、回送先の上司(承認者)のユーザIDについては申請者が申請時点で指定し、例えば「年次休暇申請」の入力データとして取り扱われるものとする。さらに、上司のメールアドレスを抽出し、承認の処理を行うため申請が上げられたことを通知するようにしても良い。そして、アクション部品57は、処理結果に基づき戻り値を電子フォーム制御部531に出力する。電子フォーム制御部531は、アクション部品57から戻り値を受信する(ステップS69)。例えば「年次休暇申請」の入力データについて問題がない場合には、当該入力データ及びアクション部品57からの戻り値などを、ワークフロー制御部532に出力する(ステップS71)。なお、「年次休暇申請」の入力データについて所定の処理を実施する場合もある。
【0040】
ワークフロー制御部532は、イベント制御部533から申請イベント発生の通知を受信すると(ステップS77)、申請イベントに従ってワークフロープロセス定義553を参照し、遷移元アクティビティ名と遷移先アクティビティ名を特定する(ステップS79)。そして、電子フォーム制御部531から「年次休暇申請」の入力データ等を受信し(ステップS81)、ワークフロープロセス定義553から特定されたデータと共に登録用データとしてワークフローデータ処理部534に出力する(ステップS83)。ワークフローデータ処理部534は、ワークフロー制御部532から登録用データを受信し(ステップS85)、ワークフロー実行制御情報格納部58に登録する。
【0041】
ワークフロー実行制御情報の一例を図14に示す。図14(a)に示したテーブルは、1つの特定の伝票を処理するワークフロープロセスを特定するためのワークフロープロセスIDの列371と、アクティビティ名の列とイベント名の列とを含むワークフロー履歴の列372と、各ワークフロープロセスにつき現在の状態を示すための現在地アクティビティの列373と、伝票名の列374と、伝票内容の列375と、関連するユーザのユーザIDの列376とを含む。図14(a)の例にも示すように、本実施の形態ではワークフロー実行制御情報としては、同一ワークフロープロセスIDにつき複数のレコードが登録され、現在地アクティビティの列373におけるフラグにて、最新状態を表すレコードを特定するようになっている。すなわち、最新のレコード以外のレコードの現在地アクティビティの列373のフラグはOFFとなっている。
【0042】
申請イベントの際には、起票イベントにおいてワークフロープロセス定義553に登録を行わないため、ワークフロープロセスIDを発行し、ワークフロープロセスIDの列371に登録する。そして、ワークフロー履歴の列372に、遷移元のアクティビティ名として「申請」及び発生イベント名として「申請」を登録する。また、伝票名の列374に「年次休暇申請」を登録し、伝票内容の列375に「年次休暇申請」の伝票データを登録する。さらに、申請者のユーザIDをユーザIDの列376に登録する。上でも述べたが、起票イベントの際にワークフロープロセス定義553に登録を行わないので、さらにもう1つのレコードを登録する。そのレコードには、遷移先のアクティビティ(承認1)と、現在地アクティビティのONフラグ(図14(a)では丸印)と、伝票名(年次休暇申請)と、ユーザID(上司のユーザID)とが含まれる。それ以外のデータについては次のイベントが発生した際に登録する。ここまで処理を実行するとワークフロー実行制御情報は図14(a)の状態になる。
【0043】
ワークフローデータ処理部534は、処理が終了すると、処理終了通知をワークフロー制御部532に通知する(ステップS87)。ワークフロー制御部532は、ワークフローデータ処理部534から処理終了通知を受信すると、さらにWebサーバ機能51に通知する(ステップS89)。なお、申請イベント発生時には、申請者に対して続けて何らかのイベントを発生させるためのボタンを提示することはないので、ワークフロー部のデータを生成することはない。但し、ボタンを含まないワークフロー部のデータを生成し、Webサーバ機能51に出力するようにしてもよい。
【0044】
一方、電子フォーム制御部531は、アクション部品57による戻り値において問題がなければ、例えば「申請は終了しました」という内容や「****という内容で申請は終了しました」といった電子フォーム部のデータを生成する。なお、申請イベント発生時に用いる電子フォーム定義551を規定しておき、伝票定義554を参照して、当該電子フォーム定義551を特定するようにしても良い。そして、電子フォーム制御部531は、生成した電子フォーム部のデータを、Webサーバ機能51に出力する(ステップS75)。そして、Webサーバ機能51は、電子フォーム制御部531から電子フォーム部のデータを受信する(ステップS91)。また、Webサーバ機能51は、ワークフロー制御部532から処理終了通知も受信する。
【0045】
なお、アクション部品57からの戻り値が適切でない申請であることを表す値である場合には、電子フォーム制御部531の処理は中断され、処理はステップS15(図10)に移行する。また、アクション部品57からの戻り値が適切でない申請であることを表す値である場合には、電子フォーム制御部531はステップS71で、ワークフロー制御部532に対してステップS15(図10)に移行する旨のデータを出力する。そうするとワークフロー制御部532の処理は中断され、処理はステップS15(図10)に移行する。そして、Webサーバ機能51は、保持している申請フォーム・データをユーザ端末3に送信する。
【0046】
図10の処理に戻って、Webサーバ機能51は、受信した電子フォーム部のデータ(場合によってはボタンのないワークフロー部のデータ)を用いて申請受け付け通知ページのデータを生成し、ユーザ端末3に送信する(ステップS27)。ユーザ端末3は、ワークフロー処理システム5から申請受け付け通知ページ・データを受信し、表示装置に表示する(ステップS29)。
【0047】
このようにしてユーザは「年次休暇申請」を行うことができる。但し、年次休暇申請だけではなく、他の申請処理についても同様の処理にて行われる。上で述べたように、電子フォーム定義551及び項目ロジック指示定義552と、アクション部品57と、ワークフロープロセス定義553とは別々に開発されるが、伝票コンテナ53がこれらを有機的に結びつけて処理を実施するため、ユーザは何らの問題を感じることなく申請などの処理を行うことができるようになる。なお、伝票コンテナ53においても、ワークフロープロセス定義553に関連する処理と、電子フォーム定義551及び項目ロジック指示定義552に関連する処理とはほぼ分離されているが、全体としてはユーザ所望の伝票についてのワークフロープロセス定義553に従った処理がなされるようになっている。
【0048】
次に、図15乃至図17を用いて承認処理の処理フローについて説明する。なお、ここでもログインなどによりワークフロー処理システム5はユーザIDを既に把握済みであるものとする。例えば、承認権限のあるユーザがユーザ端末3を操作し、承認処理を行うための承認ページへアクセスさせる(ステップS101)。ワークフロー処理システム5のWebサーバ機能51は、ユーザ端末3から承認ページへのアクセスを受信すると(ステップS103)、伝票コンテナ53のワークフロー制御部532に対してログインIDを含む、承認についての照会要求を出力する。
【0049】
ワークフロー制御部532は、ログインIDを含む、承認についての照会要求を受信すると、ワークフローデータ処理部534に出力する。ワークフローデータ処理部534は、ログインIDを検索キーとしてワークフロー実行制御情報格納部58を検索し、現在地アクティビティの列373にONのフラグがセットされているレコードであってログインIDがユーザIDとして登録されており且つ現在のアクティビティが「承認」となっているレコードを特定する。そして、当該特定されたレコードについてのワークフロープロセスのデータを読み出す(ステップS105)。読み出されるワークフロープロセスのデータは、例えばワークフロープロセスID、伝票名、申請を行ったユーザのユーザIDなどである。場合によっては、他のデータベースからユーザIDに対応するユーザ名などを抽出する場合もある。このワークフロープロセスのデータは、ワークフロー制御部532に出力される。ワークフロー制御部532は、Webサーバ機能51に、ワークフロープロセスのデータを出力する。そして、Webサーバ機能51は、ワークフロープロセスのデータをワークフロー制御部532から受信すると、ワークフロープロセスIDや伝票名などのデータを含む承認対象選択メニューページのデータを生成し、ユーザ端末3に送信する(ステップS107)。ユーザ端末3は、ワークフロー処理システム5から承認対象選択メニューページのデータを受信し、表示装置に表示する(ステップS109)。
【0050】
ユーザは、当該承認対象選択メニューの内容を見て、いずれの伝票(ワークフロープロセス)を処理するのか判断する。そして、いずれか1つの伝票(ワークフロープロセス)を選択し、当該伝票に対応するボタンなどをクリックする。ユーザ端末3は、ユーザからの承認対象選択入力を受け付け(ステップS111)、承認対象選択データ(ワークフロープロセスID)をワークフロー処理システム5に送信する(ステップS113)。ワークフロー処理システム5のWebサーバ機能51は、承認対象選択データ(ワークフロープロセスID)をユーザ端末3から受信し、一旦記憶装置に格納する(ステップS115)。そして、承認アクティビティ開始処理を実施する(ステップS117)。
【0051】
承認アクティビティ開始処理については図16を用いて説明する。Webサーバ機能51は、受信した承認対象ワークフロープロセスIDをイベント制御部533に出力する(ステップS141)。イベント制御部533は、Webサーバ機能51から承認対象ワークフロープロセスIDを受信すると、電子フォーム制御部531とワークフロー制御部532とに当該承認対象ワークフロープロセスIDを通知する(ステップS143)。電子フォーム制御部531は、イベント制御部533から承認対象ワークフロープロセスIDを受信する(ステップS145)。ワークフロー制御部532は、イベント制御部533から承認対象ワークフロープロセスIDを受信し(ステップS147)、ワークフローデータ処理部534に出力する(ステップS148)。ワークフローデータ処理部534は、ワークフロー制御部532から承認対象ワークフロープロセスIDを受信すると(ステップS149)、ワークフロー実行制御情報格納部58を当該承認対象ワークフロープロセスIDで検索し、関連データを抽出し、ワークフロー制御部532に出力する(ステップS151)。関連データは、例えば現在のアクティビティ名、ワークフロープロセス名、以前のイベントにより登録された伝票の内容などである。
【0052】
ワークフロー制御部532は、ワークフローデータ処理部534から承認対象ワークフロープロセスIDに対応するワークフロー実行制御情報の関連データを受信すると、さらに電子フォーム制御部531に出力する(ステップS153)。電子フォーム制御部531は、承認対象ワークフロープロセスIDに対応するワークフロー実行制御情報の関連データを受信する(ステップS155)。そして、当該受信したデータに含まれるワークフロープロセス名及び現在アクティビティ名に基づき伝票定義554を参照し、対応する電子フォーム定義551を特定する(ステップS157)。当該電子フォーム定義551及びワークフロー制御部532から受信したデータ(例えば以前の伝票の内容など)を用いて、電子フォーム部のデータを生成し、一旦記憶装置に格納する(ステップS159)。最後に、電子フォーム制御部531は電子フォーム部のデータをWebサーバ機能51に出力する(ステップS161)。
【0053】
ワークフロー制御部532は、承認対象ワークフロープロセスIDに対応するワークフロー実行制御情報の関連データに含まれるワークフロー名及び現在アクティビティ名に基づきワークフロープロセス定義553を参照し、現在アクティビティから発生し得るイベント(次イベント)の情報を特定する(ステップS163)。そして、当該次イベントの情報を用いてワークフロー部のデータを生成し、一旦記憶装置に格納する(ステップS165)。そして、生成したワークフロー部のデータをWebサーバ機能51に出力する(ステップS167)。
【0054】
Webサーバ機能51は、電子フォーム制御部531から電子フォーム部のデータを、ワークフロー制御部532からワークフロー部のデータを受信する(ステップS169)。例えば、「可決」のボタンと「否決」のボタンとを表示するためのデータが生成される。
【0055】
図15の処理に戻って、Webサーバ機能51は、受信した電子フォーム部のデータ及びワークフロー部のデータを用いて、承認指示ページ・データを生成し、ユーザ端末3に送信する(ステップS119)。ユーザ端末3は、ワークフロー処理システム5から承認指示ページ・データを受信し、表示装置に表示する(ステップS121)。
【0056】
ユーザは、当該承認指示ページを参照して、承認すべきか判断する。承認すべきと判断した場合には承認すべき理由などを入力の後「可決」ボタンをクリックし、承認すべきではないと判断した場合には否決理由などを入力して「否決」ボタンをクリックする。理由の入力については行わない場合もある。また、別のデータを入力しなければならない場合もある。ユーザ端末3は、ユーザによる入力データ及び指示入力を受け付け(ステップS123)、当該入力データ及び指示入力をワークフロー処理システム5に送信する(ステップS125)。
【0057】
ワークフロー処理システム5のWebサーバ機能51は、ユーザ端末3から承認指示ページにおける入力データ及び指示入力のデータを受信し、一旦記憶装置に格納する(ステップS127)。そして、指示入力イベント処理を実施する(ステップS129)。この指示入力イベント処理については図17を用いて説明する。
【0058】
ワークフロー処理システム5のWebサーバ機能51は、承認指示ページにおける入力データ及び指示入力のデータを、当該入力データ及び指示入力イベント発生(例えば「可決」イベント又は「否決」イベント(場合によっては「差戻」イベント))としてイベント制御部533に通知する(図17:ステップS171)。イベント制御部533は、Webサーバ機能51から承認指示ページの入力データ及び指示入力イベント発生の通知を受信し、電子フォーム制御部531とワークフロー制御部532とに通知する(ステップS173)。
【0059】
電子フォーム制御部531は、イベント制御部533から承認指示ページにおける入力データ及び指示入力イベント発生の通知を受信すると(ステップS175)、項目ロジック指示定義552を参照し、当該指示入力イベントに関連するアクション部品57を起動する(ステップS177)。アクション部品57には、承認指示ページにおける入力データの少なくとも一部がパラメータとして渡される場合もある。起動されたアクション部品57は、例えば再度承認権限を確認するなど予め決められた処理を実施する。また、さらに上位の承認者のユーザIDをバックグランドシステム59の所属マスタファイル591から読み出すといった処理が含まれる場合もある。さらに、更に上位の承認者のメールアドレスを抽出し、通知を行うようにしても良い。そして、アクション部品57は、処理結果に基づき戻り値を電子フォーム制御部531に出力する。電子フォーム制御部531は、アクション部品57から戻り値を受信する(ステップS179)。例えば指示入力イベントに問題がない場合には、当該承認指示ページにおける入力データ及びアクション部品57からの戻り値などを、ワークフロー制御部532に出力する(ステップS181)。なお、承認指示ページにおける入力データについて所定の処理を実施する場合もある。
【0060】
ワークフロー制御部532は、イベント制御部533から指示入力イベント発生の通知を受信すると(ステップS185)、指示入力イベントに従ってワークフロープロセス定義553を参照し、遷移元アクティビティ名と遷移先アクティビティ名を特定する(ステップS187)。そして、電子フォーム制御部531から承認指示ページにおける入力データ等を受信し(ステップS189)、ワークフロープロセス定義553から特定されたデータと共に登録用データとしてワークフローデータ処理部534に出力する(ステップS191)。ワークフローデータ処理部534は、ワークフロー制御部532から登録用データを受信し(ステップS193)、ワークフロー実行制御情報格納部58に登録する。
【0061】
ワークフロー実行制御情報格納部58への登録を、図14(a)及び図14(b)を用いて説明する。現在地アクティビティの列373(図14(a))においてONフラグがセットされているのは、ワークフロープロセスIDが00001で、アクティビティ名が「承認1」の行である。遷移元アクティビティ名「承認」を確認の上、「可決」イベントであれば、イベント名の列に「可決」を登録し、伝票内容の列375に承認指示ページにおける入力データを承認1伝票データとして登録する。「否決」イベントでも同じである。さらに、遷移先アクティビティを登録するため、新たな行を生成して、ワークフロープロセスIDの列371に「00001」を、ワークフロー履歴の列372のアクティビティ名の列に「承認2」を、現在地アクティビティの列373にONフラグを、伝票名の列374に「年次休暇申請」を、そしてユーザIDの列376に上位の承認者のユーザIDを登録する。この際アクティビティ名「承認1」でイベント名「可決」の行における現在地アクティビティのONフラグをリセットする。ここまで処理を実行するとワークフロー実行制御情報は図14(b)の状態になる。「否決」イベントの場合には、遷移先アクティビティは「申請」であり、ユーザIDの列376に申請者のユーザIDを登録する。なお、例えば「承認2」で「否決」とされた場合の状態を図14(c)に示す。図14(c)では、アクティビティ名「承認2」の行において、イベント名の列に「否決」が登録され、伝票内容の列375に承認指示頁における入力データを承認2伝票データとして登録する。例えば否決の理由などのデータが含まれる。そして、当該アクティビティ名「承認2」の行における現在地アクティビティのONフラグをリセットし、アクティビティ名「申請」の行を新たに追加する。このアクティビティ名「申請」の行には、伝票名の列374に「年次休暇申請」が、そしてユーザIDの列376に申請者のユーザIDが登録される。そして、当該行の現在地アクティビティの列に、ONフラグがセットされる。
【0062】
ワークフローデータ処理部534は、処理が終了すると、処理終了通知をワークフロー制御部532に通知する(ステップS195)。ワークフロー制御部532は、ワークフローデータ処理部534から処理終了通知を受信すると、Webサーバ機能51に通知する(ステップS197)。なお、「可決」イベント発生時には、今回の承認者に対して続けて何らかのイベントを発生させるためのボタンを提示することはないので、ワークフロー部のデータを生成することはない。但し、ボタンを含まないワークフロー部のデータを生成し、Webサーバ機能51に出力するようにしてもよい。
【0063】
一方、電子フォーム制御部531は、アクション部品57による戻り値において問題がなければ、例えば「「可決」は登録されました」という内容や「****という理由で「可決」されました」といった電子フォーム部のデータを生成する。なお、可決イベント発生時に用いる電子フォーム定義551を規定しておき、伝票定義554を参照して、当該電子フォーム定義551を特定するようにしても良い。そして、電子フォーム制御部531は、生成した電子フォーム部のデータを、Webサーバ機能51に出力する(ステップS183)。そして、Webサーバ機能51は、電子フォーム制御部531から電子フォーム部のデータを受信する(ステップS199)。Webサーバ機能51は、ワークフロー制御部532から処理終了通知を受信する。
【0064】
なお、アクション部品57からの戻り値が問題が発生したこと又は問題を検出したことを表す値である場合には、電子フォーム制御部531の処理を中断し、処理はステップS119(図15)に移行する。また、アクション部品57からの戻り値が適切でないことを表す値である場合には、電子フォーム制御部531はステップS181において、ステップS119(図15)に移行する旨のデータをワークフロー制御部532に出力する。そうするとワークフロー制御部532の処理は中断され、処理はステップS119に移行する。
【0065】
図15の処理に戻って、Webサーバ機能51は、受信した電子フォーム部のデータ(場合によってはボタンのないワークフロー部のデータ)を用いて指示完了通知ページのデータを生成し、ユーザ端末3に送信する(ステップS131)。ユーザ端末3は、ワークフロー処理システム5から指示完了通知ページ・データを受信し、表示装置に表示する(ステップS133)。
【0066】
このようにして承認者たるユーザは承認処理を行うことができる。但し、年次休暇申請だけではなく、他の申請処理についても同様の処理にて行われる。さらに、「可決」「否決」のほかに「差戻」という判断を行うことができる場合には、ワークフロー部において「差戻」ボタンが設けられる。その場合にも、基本的には図17の処理が行われる。但し、差し戻しであることを前の承認者(及び/又は申請者)に通知するアクション部品57が起動されたり、ワークフロー実行制御情報において、差し戻しが登録され、現在地アクティビティも「承認*(*は1つ前の承認アクティビティの番号を表す)」と登録される。この際においてもさらにレコードの追加を行うことで履歴を登録する。差し戻し後においては、「承認*」アクティビティから開始する点において同じである。
【0067】
図18にワークフローの典型例及び画面遷移について概説しておく。図18上段に示すように、開始から起票イベントにより申請アクティビティに遷移し、申請アクティビティから申請イベントにより承認1アクティビティに遷移し、承認1アクティビティから可決イベントにより承認2アクティビティに遷移し、承認2アクティビティから可決イベントにより最終承認アクティビティに遷移し、最終承認アクティビティから可決イベントにより終了する。また、承認1アクティビティ、承認2アクティビティ又は最終承認アクティビティから否決イベントにより申請アクティビティに遷移する。承認2アクティビティから差戻イベントにより承認1アクティビティに遷移し、最終承認アクティビティから差戻イベントにより承認2アクティビティに遷移する。このようなワークフローにおいて申請アクティビティでは図18下段に示すように、電子フォーム部には申請の電子フォームが、ワークフロー部には発生しうるイベントである「申請」ボタンが含まれるWebページが構成される。また承認1アクティビティでは、電子フォーム部には承認1の電子フォームが、ワークフロー部には発生しうるイベントである「可決」及び「否決」ボタンが含まれるWebページが構成される。承認2アクティビティでは、電子フォーム部には承認2の電子フォームが、ワークフロー部には発生しうるイベントである「可決」「否決」及び「差戻」ボタンが含まれるWebページが構成される。最終承認アクティビティでは、電子フォーム部には最終承認の電子フォームが、ワークフロー部には発生しうるイベントである「可決」「否決」及び「差戻」ボタンが含まれるWebページが構成される。上で述べたように、電子フォーム部は電子フォーム制御部531が、ワークフロー部はワークフロー制御部532がそれぞれ生成するようになっており、電子フォーム制御部531とワークフロー制御部532とはデータのやり取りを行うことはあるが、基本的には別々に開発された電子フォーム定義551及び項目ロジック指示定義552とワークフロープロセス定義553とを別々に用いて、ワークフロープロセス定義553に従って適切な画面表示を行うことができる。
【0068】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、定義情報DB55に登録されている定義データのフォーマットについては上で述べたものだけではなく、同様のデータ又は付加データを含む他のフォーマットにて登録される場合もある。また、ワークフロー処理システム5内の機能ブロック分けについても一例であって、図示したとおりにプログラム・モジュールが作成されない場合もある。特に、ワークフロー制御部532とワークフローデータ処理部534については1つのモジュールとして作成される場合もある。
【0069】
また、アクション部品57からの戻り値については、電子フォーム制御部531からワークフロー制御部532に通知する構成を示したが、直接アクション部品57からワークフロー制御部532に通知しても良い。その場合には、入力データ等についてはイベント制御部533から通知すれば、ワークフロー制御部532と電子フォーム制御部531との通信を減らすことができる。
【0070】
さらに、ワークフロー実行制御情報格納部58の参照については、ワークフロー制御部532及びワークフローデータ処理部534を介して行うような構成を示したが、電子フォーム制御部531が直接ワークフローデータ処理部534に要求するような構成とすることも可能である。
【0071】
(付記1)
ユーザの端末から受信したデータに基づき、特定の伝票についてのワークフロープロセスにおける、状態と当該状態間の状態遷移とのいずれかであるポジションを特定するポジション特定ステップと、
前記ポジションに関連する伝票のフォーム・データを取得し、記憶装置に格納する伝票フォーム・データ取得ステップと、
ワークフローの定義に基づき、特定された前記ポジションに関連して前記ユーザにより指示させることの可能な状態遷移のデータを取得し、記憶装置に格納する状態遷移データ取得ステップと、
少なくとも前記伝票のフォーム・データから電子フォーム表示用のデータを、前記状態遷移のデータからボタン表示用のデータを生成し、出力する表示用データ生成ステップと、
を含み、コンピュータにより実行されるワークフロー処理方法。
【0072】
(付記2)
特定されたポジションが状態遷移である場合、少なくとも当該状態遷移と当該状態遷移に関連する伝票とにより特定されるプログラムを起動するプログラム起動ステップ
をさらに含み、
前記表示用データ生成ステップにおいて、前記プログラムからのデータをさらに用いて前記電子フォーム表示用のデータを生成する
ことを特徴とする付記1記載のワークフロー処理方法。
【0073】
(付記3)
前記プログラムからのデータに基づいて前記状態遷移データ取得ステップの実施を判断するステップ
をさらに含む付記2記載のワークフロー処理方法。
【0074】
(付記4)
前記伝票フォーム・データ取得ステップが、
特定されたポジションに基づき伝票定義情報格納部に格納された伝票定義情報を検索し、対応する伝票を特定するステップと、
特定された伝票に基づき電子フォーム定義情報格納部に格納された電子フォーム定義情報を検索し、対応するフォーム・データを特定するステップと、
を含む付記1乃至3のいずれか1つ記載のワークフロー処理方法。
【0075】
(付記5)
前記プログラム起動ステップが、
項目ロジック指示定義情報格納部に格納された項目ロジック指示定義情報を前記ポジションである状態遷移と当該状態遷移に関連する伝票とに基づき検索し、起動すべきプログラム及び当該プログラムに出力すべきパラメータのデータを抽出するステップ
を含む付記2記載のワークフロー処理方法。
【0076】
(付記6)
前記ポジション特定ステップにおいて所定の状態遷移を特定した場合、当該特定の状態遷移の遷移前の状態に関連する前記電子フォームに入力されたデータ及び前記特定の状態遷移の遷移先の状態に関するデータを、ワークフロー実行制御情報として登録するステップと、
をさらに含む付記1乃至5のいずれか1つ記載のワークフロー処理方法。
【0077】
(付記7)
前記ポジション特定ステップが、
前記ユーザの端末から特定のワークフロープロセスの識別データを受信した場合、前記特定のワークフロープロセスの識別データに基づき、対応するワークフロー実行制御情報を特定するステップと、
前記対応するワークフロー実行制御情報により現在の状態を特定するステップと、
を含む付記6記載のワークフロー処理方法。
【0078】
(付記8)
前記項目ロジック指示定義情報には、前記状態遷移に関連する伝票のフィールドに対応して起動すべきプログラム及び当該プログラムに出力すべきパラメータのデータとが規定されていることを特徴とする付記5記載のワークフロー処理方法。
【0079】
(付記9)
ユーザの端末から受信したデータに基づき、特定の伝票についてのワークフロープロセスにおける、状態と当該状態間の状態遷移とのいずれかであるポジションを特定するポジション特定ステップと、
前記ポジションに関連する伝票のフォーム・データを取得し、記憶装置に格納する伝票フォーム・データ取得ステップと、
ワークフローの定義に基づき、特定された前記ポジションに関連して前記ユーザにより指示させることの可能な状態遷移のデータを取得し、記憶装置に格納する状態遷移データ取得ステップと、
少なくとも前記伝票のフォーム・データから電子フォーム表示用のデータを、前記状態遷移のデータからボタン表示用のデータを生成し、出力する表示用データ生成ステップと、
をコンピュータに実行させる、プログラム。
【0080】
(付記10)
ユーザの端末から受信したデータに基づき、特定の伝票についてのワークフロープロセスにおける、状態と当該状態間の状態遷移とのいずれかであるポジションを特定するポジション特定手段と、
前記ポジションに関連する伝票のフォーム・データを取得し、記憶装置に格納する伝票フォーム・データ取得手段と、
ワークフローの定義に基づき、特定された前記ポジションに関連して前記ユーザにより指示させることの可能な状態遷移のデータを取得し、記憶装置に格納する状態遷移データ取得手段と、
少なくとも前記伝票のフォーム・データから電子フォーム表示用のデータを、前記状態遷移のデータからボタン表示用のデータを生成し、出力する表示用データ生成手段と、
を有するワークフロー処理装置。
【0081】
【発明の効果】
以上述べたように、ワークフロー処理システムの開発・保守効率の向上を可能とすることができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態における機能ブロックを示す図である。
【図2】電子フォームデザイナ及びプロパティ設定部における処理を説明するための図である。
【図3】電子フォーム定義の一例を示す図である。
【図4】イベント定義の一例を示す図である。
【図5】業務ロジック部品定義の一例を示す図である。
【図6】項目ロジック指示定義の一例を示す図である。
【図7】ワークフロープロセス設定部における処理を説明するための図である。
【図8】ワークフロープロセス定義の一例を示す図である。
【図9】伝票定義の一例を示す図である。
【図10】申請時の処理フローを示す図である。
【図11】起票イベント処理の処理フローを示す図である。
【図12】(a)は電子フォーム部の一例を、(b)はワークフロー部の一例を、(c)は画面表示の一例を示す図である。
【図13】申請イベント処理の処理フローを示す図である。
【図14】ワークフロー実行制御情報の一例を示す図である。
【図15】承認時の処理フローを示す図である。
【図16】承認アクティビティ開始処理の処理フローを示す図である。
【図17】指示入力イベント処理の処理フローを示す図である。
【図18】ワークフローと画面遷移の関係を示す図である。
【符号の説明】
1 LAN 3 ユーザ端末 5 ワークフロー処理システム
7 開発者端末
51 Webサーバ機能 53 伝票コンテナ
55 定義情報DB 57 アクション部品
58 ワークフロー実行制御情報格納部
59 バックグランドシステム
531 電子フォーム制御部
532 ワークフロー制御部
533 イベント制御部
534 ワークフローデータ処理部
591 所属マスタファイル
593 社員マスタファイル
595 各種業務マスタファイル[0001]
[Technical field to which the invention belongs]
The present invention relates to a workflow processing technique.
[0002]
[Prior art]
In the past, much effort has been required to develop a workflow processing system. The fields on the slip screen that displays the slips handled in the workflow are input fields, display fields, or non-display fields, even if they are the same fields in the same slip, depending on the workflow progress status (current location) of the slip itself. In addition, the input field check logic (format check, master check, unique business logic, etc.) and display field display logic (master reference, calculation logic, format conversion logic, etc.) also change.
[0003]
In addition, workflow programming on the slip screen also applies to the workflow progress and defined workflow, depending on the workflow progress status (current location), such as application, approval / disapproval, remand, recovery, etc. It is necessary to determine whether the button (such as a button provided on the slip screen such as application or approval) is valid, and to proceed with the workflow by executing the workflow function selected by the user's operation.
[0004]
In this way, the slip screen corresponding to the workflow progress status (current location) has a considerable number of variations consisting of combinations with the respective slip forms with respect to variations of the workflow progress status (current location) in each workflow definition. Become.
[0005]
In this situation, in order to appropriately coordinate the programming of the slip field and the workflow programming on the slip screen for each slip style (slip type), the development sharing is the slip screen with workflow for each slip style (slip type). It becomes. The program developer had to understand all of the following matters when developing the slip screen with workflow. (1) Screen design, (2) Workflow control, (3) Slip field logic, (4) Coordination of (1) to (3) (Workflow status (current location) in a certain slip style and workflow definition in which it is used Therefore, for example, (1a) design of slip screen at the time of drafting, (2a) determination of available workflow function (application, etc.) and workflow execution, (3a) each input / output field of the slip Each program developer must perform programming to link the logic of (4a), (1a) to (3a). In this case, there is a problem that even if N people develop, the development period cannot be shortened.
[0006]
Further, for example, Japanese Patent Laid-Open No. 2001-134681 discloses the following technique. That is, an action that can be executed is defined for each worker on the workflow for processing the electronic form. When each worker operates the electronic form, an object such as a button corresponding to the action designated by the worker is displayed on the form image on the operation screen. By manipulating the object, the action is executed. Information about which node on the workflow is currently being processed, what action is defined as valid for that node, and what the status of the transitioned form will be Is set as current form information every time an electronic form moves between nodes by the server program. The client service program will display accordingly accordingly. In this technique, a method for generating a button is described, but a device for improving development efficiency is not disclosed in relation to an electronic form.
[0007]
[Patent Document 1]
JP 2001-134681 A
[0008]
[Problems to be solved by the invention]
As described above, in the conventional workflow processing system, it is necessary to develop as many voucher screens with workflows as the number of voucher formats, so the development burden is large, and it takes time for the program developer to understand the system. The development period and maintenance time could not be shortened due to the sequential development by each person, and there were many problems such as the need for a complete review even when part of the system was changed. This is a major cause of the above-mentioned problems because it has been necessary to adopt a development method in which workflow slip forwarding control and slip screen programming are mixed.
[0009]
Accordingly, an object of the present invention is to provide a technique for enabling the development and maintenance efficiency of a workflow processing system to be improved.
[0010]
[Means for Solving the Problems]
A workflow processing method according to the present invention includes, based on data received from a user terminal, a position specifying step for specifying a position that is either a state or a state transition between the states in a workflow process for a specific slip; , Slip form data acquisition step that acquires the form data related to the position and stores it in the storage device, and the state that can be instructed by the user in relation to the specified position based on the workflow definition A transition data acquisition step for acquiring transition data and storing it in the storage device, and generating at least electronic form display data from the slip form data, and generating button display data from the state transition data, and outputting them Display data generation step. Furthermore, it is possible to minimize correction even during maintenance.
[0011]
In this way, the electronic form display data from the form data of the slip related to the specified position, the button display data from the state transition data that can be instructed by the user based on the workflow definition. Since it is generated, the development work related to the form data of the slip can be separated from the development work related to the workflow. Therefore, the parallelism of development is improved and the burden on each program developer can be reduced.
[0012]
Further, in the present invention, when the specified position is a state transition, the display further includes a program start step for starting a program specified by at least the state transition and a slip related to the state transition. In the data generation step, electronic form display data can be generated by further using data from the program. As described above, since the slip and the program to be executed in relation to the state transition are also started in accordance with the state transition, it can be developed separately from the electronic form display data. Therefore, the development efficiency is improved.
[0013]
Further, in the present invention, when a predetermined state transition is specified in the position specifying step described above, the data input to the electronic form related to the state before the transition of the specific state transition and the transition of the specific state transition The method may further include a step of registering data relating to the previous state as workflow execution control information. Furthermore, a return value from the program started above may be registered. The workflow forwarding control is performed by the workflow definition information and the workflow execution control information, and is processed independently from the form data of the slip.
[0014]
Further, when the position specifying step described above receives the identification data of a specific workflow process from the user's terminal, the step of specifying the corresponding workflow execution control information based on the identification data of the specific workflow process The step of specifying the current state by the workflow execution control information to be performed may be included. For example, this is processing when a user having specific authority approves an application.
[0015]
The above-described method can be implemented by a program and a computer, and the program is stored in a storage medium or storage device such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, or a hard disk. Moreover, it may be distributed as a digital signal via a network or the like. The intermediate processing result is temporarily stored in the memory.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows a system outline diagram according to an embodiment of the present invention. For example, the
[0017]
In response to a request from the user terminal 3, the
[0018]
The
[0019]
The
[0020]
As shown in FIG. 2, the developer terminal 7 includes an
[0021]
In addition, the
[0022]
In addition, the action
[0023]
Further, the parameter item
[0024]
The
[0025]
Thus, according to the screen displayed by the
[0026]
As described above, if there is an
[0027]
Further, as shown in FIG. 7, the developer terminal 7 also includes a workflow
[0028]
When defining a workflow in this way, the
[0029]
A
[0030]
In this way, in the
[0031]
Hereinafter, the processing flow of the
[0032]
When the
[0033]
The electronic
[0034]
Then, the electronic
[0035]
The
[0036]
The
[0037]
In the case of the screen as shown in FIG. 12, the user inputs a vacation start time and a vacation end time in the electronic form section 366, selects a vacation reason, and clicks an application button. The user terminal 3 receives input data and an application instruction for “annual leave application” by the user (step S19), and transmits the input data and data representing the application instruction to the workflow processing system 5 (step S21). The
[0038]
The application event process will be described with reference to FIG. The
[0039]
When the electronic
[0040]
When the
[0041]
An example of the workflow execution control information is shown in FIG. The table shown in FIG. 14A is a workflow history column including a workflow
[0042]
At the application event, since registration is not performed in the
[0043]
When the process ends, the workflow
[0044]
On the other hand, if there is no problem in the return value of the
[0045]
If the return value from the
[0046]
Returning to the processing of FIG. 10, the
[0047]
In this way, the user can make an “annual leave application”. However, not only the annual leave application but also other application processes are performed in the same process. As described above, the
[0048]
Next, the processing flow of the approval process will be described with reference to FIGS. In this case as well, it is assumed that the
[0049]
When the
[0050]
The user looks at the contents of the approval target selection menu and determines which slip (workflow process) is to be processed. Then, any one slip (workflow process) is selected, and a button corresponding to the slip is clicked. The user terminal 3 receives an approval target selection input from the user (step S111), and transmits approval target selection data (workflow process ID) to the workflow processing system 5 (step S113). The
[0051]
The approval activity start process will be described with reference to FIG. The
[0052]
Upon receiving the related data of the workflow execution control information corresponding to the approval target workflow process ID from the workflow
[0053]
The
[0054]
The
[0055]
Returning to the processing of FIG. 15, the
[0056]
The user refers to the approval instruction page and determines whether to approve. If you decide to approve, enter the reason for approval and then click the “Approve” button. If you decide not to approve, enter the reason for rejection and click the “Decline” button. To do. In some cases, the reason is not entered. In some cases, another data must be input. The user terminal 3 receives input data and instruction input by the user (step S123), and transmits the input data and instruction input to the workflow processing system 5 (step S125).
[0057]
The
[0058]
The
[0059]
When the electronic
[0060]
When the
[0061]
Registration in the workflow execution control
[0062]
When the process is completed, the workflow
[0063]
On the other hand, if there is no problem in the return value by the
[0064]
If the return value from the
[0065]
Returning to the processing of FIG. 15, the
[0066]
In this way, a user who is an approver can perform an approval process. However, not only the annual leave application but also other application processes are performed in the same process. Furthermore, in addition to “Approve” and “Negative”, a “Return” button is provided in the workflow section when the determination “Return” can be made. Also in that case, the processing of FIG. 17 is basically performed. However, the
[0067]
FIG. 18 outlines typical workflow examples and screen transitions. As shown in the upper part of FIG. 18, a transition is made from the start to the application activity by the draft event, a transition from the application activity to the
[0068]
Although the embodiment of the present invention has been described above, the present invention is not limited to this. For example, the definition data format registered in the
[0069]
In addition, although the configuration in which the return value from the
[0070]
Furthermore, although the configuration in which the workflow execution control
[0071]
(Appendix 1)
A position identifying step for identifying a position that is either a state or a state transition between the states in a workflow process for a specific slip based on data received from a user terminal;
Obtaining slip form data related to the position, and storing the slip form data in a storage device;
A state transition data acquisition step of acquiring state transition data that can be instructed by the user in relation to the specified position based on a workflow definition, and storing the data in a storage device;
A display data generation step for generating and outputting data for electronic form display from at least the form data of the slip, and data for button display from the state transition data; and
And a workflow processing method executed by a computer.
[0072]
(Appendix 2)
A program start step for starting a program specified by at least the state transition and a slip related to the state transition when the specified position is a state transition
Further including
In the display data generation step, the electronic form display data is generated by further using data from the program.
The workflow processing method according to
[0073]
(Appendix 3)
A step of determining execution of the state transition data acquisition step based on data from the program;
The workflow processing method according to appendix 2, further comprising:
[0074]
(Appendix 4)
The slip form data acquisition step includes:
Searching the slip definition information stored in the slip definition information storage unit based on the identified position and identifying the corresponding slip;
Searching the electronic form definition information stored in the electronic form definition information storage unit based on the specified slip and identifying the corresponding form data;
The workflow processing method according to any one of
[0075]
(Appendix 5)
The program starting step includes
The item logic instruction definition information stored in the item logic instruction definition information storage unit is searched based on the state transition as the position and the slip related to the state transition, and the program to be started and the parameters to be output to the program Step to extract data
The workflow processing method according to appendix 2, including:
[0076]
(Appendix 6)
When the predetermined state transition is specified in the position specifying step, the data input to the electronic form related to the state before the transition of the specific state transition and the data related to the transition destination state of the specific state transition, Registering as workflow execution control information;
The workflow processing method according to any one of
[0077]
(Appendix 7)
The position specifying step includes
When receiving identification data of a specific workflow process from the user terminal, identifying corresponding workflow execution control information based on the identification data of the specific workflow process;
Identifying the current state from the corresponding workflow execution control information;
The workflow processing method according to appendix 6, including:
[0078]
(Appendix 8)
[0079]
(Appendix 9)
A position identifying step for identifying a position that is either a state or a state transition between the states in a workflow process for a specific slip based on data received from a user terminal;
Obtaining slip form data related to the position, and storing the slip form data in a storage device;
A state transition data acquisition step of acquiring state transition data that can be instructed by the user in relation to the specified position based on a workflow definition, and storing the data in a storage device;
A display data generation step for generating and outputting data for electronic form display from at least the form data of the slip, and data for button display from the state transition data; and
A program that causes a computer to execute.
[0080]
(Appendix 10)
Based on data received from the user's terminal, a position specifying means for specifying a position that is either a state or a state transition between the states in a workflow process for a specific slip;
Slip form data acquisition means for acquiring slip form data related to the position and storing it in a storage device;
State transition data acquisition means for acquiring state transition data that can be instructed by the user in relation to the specified position based on a workflow definition, and storing the data in a storage device;
Display data generation means for generating and outputting data for electronic form display from at least form data of the slip, and data for button display from the data of the state transition;
A workflow processing apparatus.
[0081]
【The invention's effect】
As described above, the development and maintenance efficiency of the workflow processing system can be improved.
[Brief description of the drawings]
FIG. 1 is a diagram showing functional blocks in an embodiment of the present invention.
FIG. 2 is a diagram for explaining processing in an electronic form designer and a property setting unit.
FIG. 3 is a diagram illustrating an example of an electronic form definition.
FIG. 4 is a diagram illustrating an example of an event definition.
FIG. 5 is a diagram illustrating an example of a business logic component definition.
FIG. 6 is a diagram illustrating an example of an item logic instruction definition.
FIG. 7 is a diagram for explaining processing in a workflow process setting unit.
FIG. 8 is a diagram illustrating an example of a workflow process definition.
FIG. 9 is a diagram illustrating an example of a slip definition.
FIG. 10 is a diagram showing a processing flow at the time of application.
FIG. 11 is a diagram showing a processing flow of draft event processing.
12A is a diagram illustrating an example of an electronic form unit, FIG. 12B is a diagram illustrating an example of a workflow unit, and FIG. 12C is a diagram illustrating an example of a screen display;
FIG. 13 is a diagram showing a processing flow of application event processing;
FIG. 14 is a diagram illustrating an example of workflow execution control information.
FIG. 15 is a diagram showing a processing flow at the time of approval.
FIG. 16 is a diagram showing a process flow of an approval activity start process.
FIG. 17 is a diagram illustrating a processing flow of instruction input event processing;
FIG. 18 is a diagram illustrating a relationship between a workflow and screen transition.
[Explanation of symbols]
1 LAN 3
7 Developer terminal
51
55
58 Workflow execution control information storage
59 Background system
531 Electronic Form Control Unit
532 Workflow control unit
533 event control unit
534 Workflow data processing unit
591 Affiliation master file
593 Employee Master File
595 Various business master files
Claims (4)
ユーザの端末から特定のワークフロープロセスの識別データを受信した場合には、当該特定のワークフロープロセスの識別データを基に前記ワークフロー実行制御情報格納部を検索し、前記特定のワークフロープロセスに対応する前記ワークフロー実行制御情報に含まれる前記現在の状態をポジションとして特定し、又は、前記ユーザの端末から特定の伝票に関する所定の指示を受信した場合には、当該所定の指示に応じた状態遷移を前記ポジションとして特定するポジション特定ステップと、
受信した前記特定のワークフロープロセスの識別データ又は受信した前記所定の指示に係る前記特定の伝票の伝票名と、前記ポジション特定ステップにおいて特定された前記ポジションとを基に前記伝票定義を検索し、当該ポジションに関連する伝票を特定し、特定した伝票のフォーム・データを前記電子フォーム定義から取得し、前記記憶装置に格納する伝票フォーム・データ取得ステップと、
前記ポジション特定ステップにおいて特定された前記ポジションが状態を示している場合には、当該状態において発生し得る状態遷移のデータを前記ワークフロープロセス定義から取得して前記記憶装置に格納し、又は、前記ポジション特定ステップにおいて特定された前記ポジションが状態遷移を示している場合には、前記ワークフロープロセス定義から当該状態遷移に対応する前記遷移先の状態を特定し、特定した前記遷移先の状態において発生し得る状態遷移のデータを前記ワークフロープロセス定義から取得して前記記憶装置に格納する状態遷移データ取得ステップと、
少なくとも前記記憶装置に格納された、前記伝票のフォーム・データから電子フォーム表示用のデータを生成し、前記記憶装置に格納された、前記状態遷移のデータからボタン表示用のデータを生成し、出力する表示用データ生成ステップと、
を含むワークフロー処理方法。 Electronic form definition including form data of each slip, slip definition including slip name and state related to the slip, state transition and workflow process identification data, and state transition that can occur in the state and the state A definition information database that stores a workflow process definition including a transition destination state by a transition, a workflow execution control information storage unit that stores workflow execution control information including data indicating a current state in the workflow process, and a storage device A workflow processing method executed by an accessible computer,
When the identification data of a specific workflow process is received from a user terminal, the workflow execution control information storage unit is searched based on the identification data of the specific workflow process, and the workflow corresponding to the specific workflow process When the current state included in the execution control information is specified as a position, or when a predetermined instruction related to a specific slip is received from the user terminal, a state transition corresponding to the predetermined instruction is set as the position. A position identification step to identify;
The slip definition is searched based on the received identification data of the specific workflow process or the slip name of the specific slip related to the received predetermined instruction and the position specified in the position specifying step. identify the documents associated with the position, and acquires the form data of the specified document from the electronic form definition, a slip form data obtaining step of storing in the storage device,
When the position specified in the position specifying step indicates a state, state transition data that can occur in the state is acquired from the workflow process definition and stored in the storage device, or the position When the position specified in the specifying step indicates a state transition, the transition destination state corresponding to the state transition is specified from the workflow process definition, and can occur in the specified transition destination state A state transition data acquisition step of acquiring state transition data from the workflow process definition and storing it in the storage device;
Stored in at least said storage device generates data for electronic form displayed from the form data of the document, stored in said storage device, generates data for button display from the state transition data output Display data generation step to be performed;
Including workflow processing methods.
前記ポジション特定ステップにおいて特定されたポジションが状態遷移を示している場合、少なくとも当該状態遷移と当該状態遷移に関連する伝票の伝票名とを基に前記項目ロジック指示定義を検索し、前記状態遷移と当該状態遷移に関連する伝票の伝票名とに対応する前記プログラムを特定し、当該プログラムを起動するプログラム起動ステップ
をさらに含み、
前記表示用データ生成ステップにおいて、前記プログラムからのデータをさらに用いて前記電子フォーム表示用のデータを生成する
ことを特徴とする請求項1記載のワークフロー処理方法。 The definition information database further stores an item logic instruction definition including a slip name, state transition, and identification data of a program to be activated;
When the position specified in the position specifying step indicates a state transition, the item logic instruction definition is searched based on at least the state transition and a slip name of a slip related to the state transition, and the state transition A program starting step of specifying the program corresponding to the slip name of the slip related to the state transition and starting the program;
The workflow processing method according to claim 1, wherein, in the display data generation step, the data for displaying the electronic form is generated by further using data from the program.
をさらに含む請求項1又は2記載のワークフロー処理方法。 If the position identified in said position identifying step indicates a state transition, the data relating to the destination state of the electronic form to the input data and the state transitions associated with the state before transition of the state transition , the step of registering the workflow execution control information storage unit as the workflow execution control information
The workflow processing method according to claim 1 or 2 , further comprising:
ユーザの端末から特定のワークフロープロセスの識別データを受信した場合には、当該特定のワークフロープロセスの識別データを基に前記ワークフロー実行制御情報格納部を検索し、前記特定のワークフロープロセスに対応する前記ワークフロー実行制御情報に含まれる前記現在の状態をポジションとして特定し、又は、前記ユーザの端末から特定の伝票に関する所定の指示を受信した場合には、当該所定の指示に応じた状態遷移を前記ポジションとして特定するポジション特定ステップと、
受信した前記特定のワークフロープロセスの識別データ又は受信した前記所定の指示に係る前記特定の伝票の伝票名と、前記ポジション特定ステップにおいて特定された前記ポジションとを基に前記伝票定義を検索し、当該ポジションに関連する伝票を特定し、特定した伝票のフォーム・データを前記電子フォーム定義から取得し、前記記憶装置に格納する伝票フォーム・データ取得ステップと、
前記ポジション特定ステップにおいて特定された前記ポジションが状態を示している場合には、当該状態において発生し得る状態遷移のデータを前記ワークフロープロセス定義から取得して前記記憶装置に格納し、又は、前記ポジション特定ステップにおいて特定された前記ポジションが状態遷移を示している場合には、前記ワークフロープロセス定義から当該状態遷移に対応する前記遷移先の状態を特定し、特定した前記遷移先の状態において発生し得る状態遷移のデータを前記ワークフロープロセス定義から取得して前記記憶装置に格納する状態遷移データ取得ステップと、
少なくとも前記記憶装置に格納された、前記伝票のフォーム・データから電子フォーム表示用のデータを生成し、前記記憶装置に格納された、前記状態遷移のデータからボタン表示用のデータを生成し、出力する表示用データ生成ステップと、
を実行させる、プログラム。 Electronic form definition including form data of each slip, slip definition including slip name and state related to the slip, state transition and workflow process identification data, and state transition that can occur in the state and the state A definition information database that stores a workflow process definition including a transition destination state by a transition, a workflow execution control information storage unit that stores workflow execution control information including data indicating a current state in the workflow process, and a storage device On an accessible computer,
When the identification data of a specific workflow process is received from a user terminal, the workflow execution control information storage unit is searched based on the identification data of the specific workflow process, and the workflow corresponding to the specific workflow process When the current state included in the execution control information is specified as a position, or when a predetermined instruction related to a specific slip is received from the user terminal, a state transition corresponding to the predetermined instruction is set as the position. A position identification step to identify;
The slip definition is searched based on the received identification data of the specific workflow process or the slip name of the specific slip related to the received predetermined instruction and the position specified in the position specifying step. identify the documents associated with the position, and acquires the form data of the specified document from the electronic form definition, a slip form data obtaining step of storing in the storage device,
When the position specified in the position specifying step indicates a state, state transition data that can occur in the state is acquired from the workflow process definition and stored in the storage device, or the position When the position specified in the specifying step indicates a state transition, the transition destination state corresponding to the state transition is specified from the workflow process definition, and can occur in the specified transition destination state A state transition data acquisition step of acquiring state transition data from the workflow process definition and storing it in the storage device;
Stored in at least said storage device generates data for electronic form displayed from the form data of the document, stored in said storage device, generates data for button display from the state transition data output Display data generation step to be performed;
It is allowed to run the program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003087501A JP4307122B2 (en) | 2003-03-27 | 2003-03-27 | Workflow processing method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003087501A JP4307122B2 (en) | 2003-03-27 | 2003-03-27 | Workflow processing method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004295516A JP2004295516A (en) | 2004-10-21 |
JP4307122B2 true JP4307122B2 (en) | 2009-08-05 |
Family
ID=33401873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003087501A Expired - Fee Related JP4307122B2 (en) | 2003-03-27 | 2003-03-27 | Workflow processing method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4307122B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7610584B2 (en) * | 2004-01-02 | 2009-10-27 | International Business Machines Corporation | Method, system, and product for defining and managing provisioning states for resources in provisioning data processing systems |
US7853607B2 (en) * | 2006-08-25 | 2010-12-14 | Sap Ag | Related actions server |
-
2003
- 2003-03-27 JP JP2003087501A patent/JP4307122B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004295516A (en) | 2004-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6279006B1 (en) | Structured data management system and computer-readable recording medium storing structured data management program | |
US7600182B2 (en) | Electronic data capture and verification | |
JP4972254B2 (en) | Integrated method for creating refreshable web queries | |
US7089268B2 (en) | Document management method and document management system | |
US20080104523A1 (en) | Apparatus and method for extracting and sharing information | |
US20070261035A1 (en) | System and method for software prototype-development and validation and for automatic software simulation re-grabbing | |
US7467122B2 (en) | System for aiding the design of product configuration | |
Abb et al. | A reference data model for process-related user interaction logs | |
JPH11167584A (en) | Page shift method and its execution device and medium recording page shift processing program and data | |
CN114201615B (en) | Scientific research data change review method and server based on data snapshot | |
JP2010015458A (en) | Program correction support system, program correction support method, and program correction support program | |
JPH0895767A (en) | Program generating method using program component | |
JP4307122B2 (en) | Workflow processing method and program | |
JP2004038759A (en) | System and method for cooperating application and program for performing the method | |
JP6231260B2 (en) | Screen control system, screen control program, screen creation support program, and screen control method | |
US20030154263A1 (en) | Server program | |
JP6925590B1 (en) | Servers that generate integrated usage log data and how they operate | |
JP2003044526A (en) | Method and program for design analysis | |
JP2001100999A (en) | Rule base system | |
JP2003256633A (en) | Verification method, verification program and verification system for business flow data | |
JP3646376B2 (en) | Information management apparatus and information management method | |
JP2005174256A (en) | File search device and program | |
JP2007034807A (en) | Information processor and program | |
JP2017182661A (en) | Program creation support system | |
JP2006146677A (en) | Application development support system, data format generation method using the same, and data processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060301 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090107 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090428 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090428 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4307122 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |