サポート > リポジトリ > ワークフロー

モデルにワークフロー定義を行うことができます。起案の決裁や回覧といった業務に利用できます。

ワークフローを設定したモデルは、登録したデータについて「申請」「承認」「決裁」といったイベントを管理することができるようになります。Wagbyのワークフローの概念を図1に示します。

図1 Wagby ワークフローの全体イメージ
フローパターン
ワークフローの流れを指します。例えば「順次, 順次」の 2 ノードの場合、二人が承認すれば良い、という流れを意味します。 標準のフローパターン以外にも、自由に定義することができます。[詳細...]
フロー参加者
ワークフローの各ノードにおける承認者を指定します。[詳細...]
代理者
承認者は、任意のタイミングで自分の代理者を設定することができます。[詳細...]
フローイベント
ワークフローのイベントは、定義したモデルとは別に管理されています。ワークフローの進行とともに、イベントが記録されていきます。[詳細...]

ワークフローは次の手順で設定します。

図2 Wagby ワークフローの設定イメージ

Wagby のモデル定義で「(このモデルの)ワークフローを有効にする」に「○」をつけてビルドします。
これ以降、ワークフローの動作に関する設定は、すべてビルドされた Web アプリケーションで行います。

(1) モデルにワークフロー定義を行う
Wagby 定義ファイルにワークフローを設定する方法を説明します。サンプルとして「年休申請」モデルを用意してみます。
(2) フローパターンの設定を行う
Wagby では標準的なフローパターンが用意されています。「順次」処理と「合議」処理を組み合わせた独自のフローを設計することもできます。
(3) フローの参加者を設定する
フロー定義に参加者を設定します。参加者は Wagby のログオンアカウント(juser)またはグループ(jgroup)を指定します。
(4) モデルにワークフロー定義を設定する
ワークフローを利用するモデルと、ワークフロー定義を結びつけます。
(5) ワークフローを開始する
Wagby の通常の操作に従ってモデルの新規作成を行います。すると画面の下部にワークフローの動作を示すナビゲーション情報が表示されます。
(6) 処理者に電子印影を用いる
ワークフローの処理者欄に電子印影を用いる方法を紹介します。
(7) メールを送信する [1] 設定
ワークフローイベント時にメールを送信することができます。ここではメール送信先を自動設定できるよう、モデルにいくつかの項目を加える方法を説明します。
(8) メールを送信する [2] 実行
「申請」「承認」「差し戻し」などのイベント発生時にメールを送信する例を確認します。
(9) メールを送信する [3] 自動通知
未決裁のフローについて、フローを止めている担当者へ督促メールを送ることができます。
(10) 条件によってフローを制御する
条件によって「次はどのフローを処理するか」を指定することができます。
(11) 条件によって申請フローを絞込む
ワークフロー開始時、条件に合致した申請フローを絞込むことができます。
(12) 任意のノードに決裁ボタンを用意する
条件に応じて決裁ボタンを表示します。ノードの途中でもフローを決裁させることができます。
(13) スクリプトによって承認者・決裁者を動的に決定する
スクリプトを用いてワークフローの承認者・決裁者を動的に変更することができます。
(14) フローイベントスクリプトを用意する
ワークフローの動作(ノードとイベントの組み合わせ)に応じたスクリプトを実行することができます。
(15) 代理承認
代理承認機能を使うと、ワークフローの承認者を実行時に変更することができます。
(16) 申請したワークフローの状態を確認する
「開始フロー状態」を検索することで、自分が申請したワークフローが現在、誰の承認待ちになっているかを知ることができます。
(17) 承認すべきワークフローを確認する
「保留フロー状態」を検索することで、自分が承認すべきワークフローを調べることができます。一括承認を行うこともできます。
(18) モデルのワークフロー状態で検索する
ワークフローの状態でモデルのデータを検索することができます。
(19) [運用] ワークフローを手動で取り消す
ワークフローのイベント情報を削除し、フローを取り消す方法を説明します。
  • ワークフロー開始後は、そのモデルのワークロー設定(フローパターン、フロー参加者設定)を変更することはできません。
  • ワークフローと一覧更新を同時に使用することはできません。フローを開始したモデルは更新ができないように制御しているためです。
  • ワークフローを有効にしたモデルをメインモデルに指定し、サブモデルでワークフローの処理を行うことはできません。サブモデルではフロー状態での検索、データの更新・削除が行えるのみ、となります。
  • ワークフローを有効にしたモデルは「データベースのキャッシュを完全に無効にする」をチェックしないようにしてください。(ワークフローエンジンで、キャッシュされた情報を使う箇所があります。)
  • ワークフローを有効にしたモデルの一覧表示画面で、更新ボタンを用意しないようにしてください。ワークフロー利用時、詳細画面に用意される更新ボタンは承認者のみが押せるような制御が働きますが、一覧表示画面には未対応です。