【Activiti入門】変数
概要
Activitiのプロセスでは、変数を利用してプロセスに関する入力データを扱う。
変数はデータベース(テーブル ACT_RU_VARIABLE)にて管理される。
ただし、変数の値にJava beanなどが格納された場合は、バイナリデータとしてACT_GE_BYTEARRAYテーブルに格納される。
変数には、スコープが存在する。
参考
Process Variables
プロセス全体で有効となる変数。
レコードとしては、テーブル ACT_RU_VARIABLEのカラムproc_inst_idとカラムexecution_idが一致するもの。
Execution
アクティブなExecution内でのみ有効な変数。
説明が難しいが、Activitiでは、プロセスインスタンス上で現在アクティブな箇所をExecutionと定義している。 例えば、以下のような並行ルートの場合は、並行ルートの処理中に3つのアクティブなExecutionが存在する。 1つ目はプロセスインスタンス全体のExecution、2,3つ目はそれぞれの並行ルートのExecutionである。
Executionスコープの変数とは、プロセスインスタンスのExecutionではない、個々のExecution内で有効となる変数である。
レコードとしては、テーブル ACT_RU_VARIABLEのカラムproc_inst_idとカラムexecution_idが一致しないもの。
UserTask Variables
ユーザタスク内でのみ有効な変数。
レコードとしては、テーブル ACT_RU_VARIABLEのカラムtask_id_が空でないもの。
履歴
- 変数の履歴は、テーブル ACT_HI_VARINSTに格納される。