4.3.2. イベント¶
本項ではIM-BPM DesignerのPaletteにある「Event」で設定可能なコンポーネントの説明と定義方法について説明します。
イベントは、一連のフローの起点や終点を表現するために用いられます。
4.3.2.1. 開始イベント¶
開始イベントはプロセス定義の実行開始箇所と条件を表します。プロセス定義には、開始イベントと後述する終了イベントが存在するように設定する必要があります。開始イベントは、開始条件によって、4つに分類されます。
4.3.2.1.1. StartEvent(開始イベント)¶
開始する条件を持たないプロセスフローの起点を表します。
4.3.2.1.1.1. 開始イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるStartEventをクリックします。
![]()
- エディタ上のプロセス定義の実行を開始したい場所をクリックします。
![]()
- これで開始イベントが定義されました。
![]()
4.3.2.1.1.2. プロパティの設定¶
開始イベントのメインコンフィグの設定について解説します。![]()
項目名 | 説明 |
---|---|
Initiator(イニシエータ) | プロセス定義を実行する権限を持つユーザのユーザIDを設定します。
|
Form key(フォームキー) | 呼び出すアプリケーションと画面IDを設定します。
例1: formaのアプリケーション「application_id」を呼び出す場合 → forma:application_id
例2: スクラッチ開発した画面「http://screen/url」を呼び出す場合 → forward:http://screen/url
|
4.3.2.1.2. TimerStartEvent(タイマー開始イベント)¶
特定の日時や繰り返しなどのスケジュールによって開始されるプロセスフローの起点を表します。
4.3.2.1.2.1. タイマー開始イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるTimerStartEventをクリックします。
![]()
- エディタ上のプロセス定義の実行を開始したい場所をクリックします。
![]()
- これでタイマー開始イベントが定義されました。
![]()
4.3.2.1.2.2. プロパティの設定¶
タイマー開始イベントのメインコンフィグの設定について解説します。入力方式は日付と時刻の表記に関する国際規格であるISO 8601の形式に則って記述する必要があります。具体的な記述方法については説明欄を参照してください。![]()
項目名 | 説明 |
---|---|
Time duration(期間) | 開始するまでの期間を指定します。
デプロイしたときから指定した期間が経過したとき1回のみ開始されます。
例:10日後開始→P10D
|
Time date(日付) | 開始する日付を指定します。
指定日に1回のみ開始されます。
例:2016年1月1日12時開始→ 2016-01-01T12:00:00
|
Time cycle(周期) | 開始する周期を指定します。
例:10時間毎に3回開始→R3/PT10H
|
4.3.2.1.3. SignalStartEvent(シグナル開始イベント)¶
シグナルを受信する事で開始されるプロセスフローの起点を表します。
4.3.2.1.3.1. シグナル開始イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるSignalStartEventをクリックします。
![]()
- エディタ上のプロセス定義の実行を開始したい場所をクリックします。
![]()
- これでシグナル開始イベントが定義されました。
![]()
4.3.2.1.3.2. プロパティの設定¶
シグナル開始イベントのメインコンフィグの設定について解説します。![]()
項目名 | 説明 |
---|---|
Signal ref(参照シグナル) | 受信するシグナルを文字列で定義します。
ここで定義したシグナルを受信すると、参照シグナルを起点としたプロセスフローが実行されます。
|
4.3.2.1.4. MessageStartEvent(メッセージ開始イベント)¶
メッセージを受信する事で開始されるプロセスフローの起点を表します。
4.3.2.1.4.1. メッセージ開始イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるMessageStartEventをクリックします。
![]()
- エディタ上のプロセス定義の実行を開始したい場所をクリックします。
![]()
- これでメッセージ開始イベントが定義されました。
![]()
4.3.2.1.4.2. プロパティの設定¶
メッセージ開始イベントのメインコンフィグの設定について解説します。![]()
項目名 | 説明 |
---|---|
Message ref(参照メッセージ) | 受信するメッセージを文字列で定義します。
ここで定義したメッセージを受信すると、メッセージ開始イベントを起点としたプロセスフローが実行されます。
|
4.3.2.1.5. ErrorStartEvent(エラー開始イベント)¶
イベントサブプロセスでのみ使用できるイベントで、親のプロセス定義からのエラーを受信して開始されるプロセスフローの起点を表します。
4.3.2.1.5.2. プロパティの設定¶
エラー開始イベントのメインコンフィグの設定について解説します。
項目名 | 説明 |
---|---|
Error code(エラーコード) | 受信するエラーコードを文字列で定義します。
このエラーコードのエラーが発生するとエラー開始イベントを起点としたプロセスフローが実行されます。
|
4.3.2.2. 終了イベント¶
終了イベントはプロセス定義の終了箇所や実行結果を表します。開始イベント1つに対して終了イベントが複数存在する場合もあります。複数に分岐したプロセスフローにおいて、どれか1つでも終了イベントに到達した場合でも、並行で動作しているタスク等に関しては継続して処理が進みます。終了イベントは、終了した結果として何を行うかで、3つに分類されます。
4.3.2.2.1. EndEvent(終了イベント)¶
プロセス定義の完了を表します。サブプロセスで使用された場合は、親のプロセス定義に処理が戻る事を表します。
4.3.2.2.1.1. 終了イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるEndEventをクリックします。
![]()
- エディタ上でプロセス定義の終了を定義したい場所をクリックします。
![]()
- これで終了イベントが定義されました。
![]()
4.3.2.2.2. ErrorEndEvent(エラー終了イベント)¶
エラーコードを送信する事を表します。このエラーコードはエラー開始イベント、またはエラー境界イベントで受信する事ができます。エラー終了イベントを配置した場合には必ずそのエラーコードを受信するエラー開始イベントを配置する必要があります。コールアクティビティを利用している場合には呼び出し元の親プロセス定義側で受信する事もできます。
4.3.2.2.2.1. エラー終了イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるErrorEndEventをクリックします。
![]()
- エディタ上のプロセス定義を終了したい場所でクリックします。
![]()
- これでエラー終了イベントが定義されました。
![]()
4.3.2.2.2.2. プロパティの設定¶
エラー終了イベントのメインコンフィグの設定について解説します。![]()
項目名 | 説明 |
---|---|
Error code(エラーコード) | 送信するエラーコードを文字列で定義します。
エラー終了イベントに到達すると、設定したエラーコードが設定されているエラー開始イベント,またはエラー境界イベントが開始します。
エラーコードを受信するエラー開始イベント、またはエラー境界イベントがない場合、Runtime側でエラーが発生します。
|
4.3.2.2.3. TerminateEndEvent(強制終了イベント)¶
特殊なイベントで、該当のプロセス定義フローを直ちに停止して終了する事を表します。サブプロセス内に配置した場合も、サブプロセス内のプロセスフローが並行しているものも含めて完了とみなして、親プロセスの次のタスクやイベントへと続きます。
4.3.2.2.3.1. 強制終了イベントの配置¶
- IM-BPM Designerの画面右側PaletteのEventにあるTerminateEndEventをクリックします。
![]()
- エディタ上のプロセス定義を終了したい場所でクリックします。
![]()
- これで強制終了イベントが定義されました。
![]()
4.3.2.2.3.2. プロパティの設定¶
強制終了イベントのメインコンフィグの設定について解説します。![]()
項目名 | 説明 |
---|---|
Terminate all(親プロセスを強制終了する) | 強制終了イベントに到達した場合、関連するプロセスのインスタンスも強制終了させるかどうかを選択します。
trueの場合、強制終了イベント到達時に関連したプロセスのインスタンスも自動的に終了させます。
falseの場合、強制終了イベントが所属しているプロセスインスタンスのみを終了します。
|