Hitachi

uCosminexus Service Coordinator Interactive Workflow AP開発ガイド


付録C.2 業務ステップの状態遷移

〈この項の構成〉

(1) 業務ステップの状態遷移

業務ステップの状態遷移を次の図に示します。

図C‒2 業務ステップの状態遷移

[図データ]

(2) 業務ステップの状態

業務ステップの状態について次の表に示します。

表C‒4 業務ステップの状態一覧

上段:状態

中段:列挙型定数(コード値)

下段:状態の短縮表記形式

状態の完全表記形式

説明

初期

INITIAL(i)

initial

open.notRunning.notStarted.initial

業務ステップが生成されたときの初期の状態を示します。

実行開始可能

READY(j)

ready

open.notRunning.notStarted.ready

業務ステップとして実行できる状態ですが,まだ実行開始されていない一時的な状態を示します。

実行中

RUNNING(d)

running

open.running

業務ステップが実行されている状態を示します。

「実行中」状態の場合だけ,業務ステップに含まれる作業を「実行中」状態にできます。

また,「実行中」状態の場合だけ,業務ステップの評価が行われます。

実行開始不可

DISABLED(l)

disabled

open.notRunning.suspended.disabled

案件が「実行停止」状態のため,業務ステップを実行できない状態を示します。

案件が「実行停止」状態から再開されたときに,業務ステップも「実行開始可能」状態になります。

実行停止

INTERMITTED(m)

intermitted

open.notRunning.suspended.intermitted

業務ステップの実行が中断された一時停止の状態を示します。

「実行停止」状態の場合,業務ステップは完了できません。

また,「実行停止」状態の業務ステップに含まれる作業は開始できません。ただし,すでに実行されている作業はそのまま実行されます。

なお,「実行停止」状態の場合,業務ステップの評価は行われません。

遷移可

READY_FOR_TRANSITION(s)

readyForTransition

closed.completed.executed.readyForTransition

業務ステップが完了し,次の業務ステップへ遷移できる状態を示します。

業務ステップが「遷移可」状態へ遷移した場合は,対象となる業務ステップに含まれているすべての作業は「終了」状態です。

遷移済

TRANSITION_COMPLETED(t)

transitionCompleted

closed.completed.executed.transitionCompleted

業務ステップが次の業務ステップへフロー遷移した状態を示します。

実行省略

NOT_EXECUTED(p)

notExecuted

closed.completed.notExecuted

業務ステップが何も実行されないで完了した状態を示します。

案件が遷移していく過程で,業務ステップを通らないで案件が完了した場合に,この業務ステップは「実行省略」状態になります。

強制終了

TERMINATED(u)

terminated

closed.terminated

業務ステップが強制的に終了された状態を示します。

業務ステップが「強制終了」状態へ遷移した場合は,対象となる業務ステップに含まれているすべての作業は「完了」状態または「強制終了」状態です。

なお,強制終了された業務ステップは,次の業務ステップへ遷移されません。

このとき,ほかに「実行中」状態の業務ステップが存在しない場合は,案件を強制終了する以外の操作ができなくなるため,注意してください。

また,実行中の業務ステップが存在している場合でも,待合ノードに続く業務ステップを強制終了すると,案件は待合ノードから遷移されなくなるため,注意してください。

(3) 業務ステップの遷移

業務ステップの遷移について次の表に示します。

表C‒5 業務ステップの遷移一覧

遷移種別

要因

および

動作

説明

生成

要因

  • フロー制御(未生成業務ステップへのフロー遷移)

  • 事前生成が設定された業務ステップの場合,案件の「実行中」状態への遷移時

  • API呼び出しによる生成要求

動作

業務ステップを「初期」状態で生成します。

活性化

(activate)

要因

  • API呼び出しによる活性化要求

  • フロー制御(業務ステップへのフロー遷移)

動作

業務ステップを「実行開始可能」状態へ遷移させます。そのあと,続けて次に示す状態遷移を行います。

  • 案件が「実行中」状態の場合は,「実行中」状態へ遷移。

  • 案件が「実行中」状態以外の場合は,「実行開始不可」状態へ遷移。

開始

(start)

要因

業務ステップが「実行開始可能」状態へ遷移したときに,案件が「実行中」状態の場合

動作

業務ステップを「実行中」状態へ遷移させ,そのあと業務ステップの評価処理を行います。

中断

(suspend)

要因

API呼び出しによる遷移要求

動作

業務ステップを「実行停止」状態へ遷移させます。

業務ステップを「実行停止」状態へ遷移させると同時に,対象となる業務ステップに含まれるすべての「未実行」状態の作業を「実行開始不可」状態へ遷移させます。

再開

(resume)

要因

API呼び出しによる遷移要求

動作

業務ステップを「実行中」状態へ遷移させ,そのあと業務ステップの評価処理を行います。

業務ステップを「実行中」状態へ遷移させると同時に,対象となる業務ステップに含まれるすべての「実行開始不可」状態の作業を「未実行」状態へ遷移させます。

業務ステップ完了

(activity completed)

要因

  • API呼び出しによる「実行済」状態への遷移要求

  • 業務ステップの評価処理で,完了要件が満たされた場合

    例えば,業務ステップに含まれるすべての作業が「完了」状態へ遷移した場合や業務ステップの完了条件が存在する場合に条件が満たされたときなどです。

動作

業務ステップを「遷移可」状態へ遷移させます。

業務ステップを「遷移可」状態へ遷移させると同時に,対象となる業務ステップに含まれる作業に対して次に示す処理を行います。

  • すべての「未実行」状態の作業を「実行省略」状態へ遷移。

  • すべての「実行中」状態の作業を「実行取消」状態へ遷移。

  • すべての「実行停止」状態の作業を「強制終了」状態へ遷移。

実行開始可

(enable)

要因

案件の「再開」状態への遷移

動作

業務ステップを「実行開始可能」状態へ遷移させ,そのあと続けて「実行中」状態へ遷移させます。

実行開始不可

(disable)

要因

業務ステップが「実行開始可能」状態へ遷移したときに,案件が「実行停止」状態の場合

動作

業務ステップを「実行開始不可」状態へ遷移させます。

フロー遷移

(transit)

要因

次の業務ステップへのフロー遷移処理時。

ただし,次のどちらかの場合はフロー遷移しません。

  • 遷移先がない

  • 遷移先に「未終了」状態,かつ「初期」状態でない業務ステップが存在する(遷移先の業務ステップ間に制御ノードがある場合を除く)

動作

業務ステップを「遷移済」状態へ遷移させます。

実行省略

(skip)

要因

案件の「完了」状態への遷移時(「案件完了」),および案件の完了時(シンクノードへの到達など)に,業務ステップが「初期」状態の場合

動作

業務ステップを「実行省略」状態へ遷移させます。

強制終了

(terminate)

要因

  • API呼び出しによる遷移要求

  • 案件の状態遷移に伴う制約

    案件の状態遷移に伴う制約については,「表C-2 案件の遷移一覧」の「案件完了」状態遷移および「強制終了」状態遷移を参照してください。

動作

業務ステップを「強制終了」状態に遷移させます。

業務ステップを「強制終了」状態に遷移させると同時に,対象となる業務ステップに含まれる「終了」状態以外のすべての作業を強制終了させます。

業務ステップの遷移時に設定する属性について次の表に示します。

表C‒6 業務ステップの遷移時に設定する属性一覧

属性名

生成

活性化

開始

中断

再開

業務ステップ完了

実行開始可

実行開始不可

フロー遷移

実行省略

強制終了

ID

Name※1

ActivityDefinitionName

ProcessInstanceID

ActivityDefinitionID

ProcessDefinitionID

ActivityTypeCode

StateCode※2

StartDate※3

N

ClosedDate※3

N

Deadline※4

N

ProcessInstanceName

Priority※5

(凡例)

○:設定します。

−:設定しません。

N:nullを設定します。

注※1

子業務ステップの場合は,生成ルールが返した値を設定します。

子業務ステップ以外の場合は,nullを設定します。

注※2

遷移先の状態を設定します。

注※3

遷移が行われた時刻を設定します。

注※4

開始(start)時は次の条件で設定します。

処理期限ルールが定義されていない場合

値を設定しません。生成時の値のままです。

処理期限ルールが定義されている場合

処理期限ルールの評価結果を設定します。

注※5

Priorityには案件のPriorityの値を設定します。