4.3.6. 境界イベント¶
境界イベントは、接続しているアクティビティの処理中にイベントを受信した場合に起動します。
境界イベントを設定したアクティビティでイベントを受信した際、アクティビティを中断させて境界イベントから引かれたシーケンスフローにフローを進行させます。
境界イベントは、発生するイベントの種類によって4つに分類されます
4.3.6.1. TimerBoundaryEvent(タイマー境界イベント)¶
タイマー境界イベントは設定した時間情報を元にイベントを受信する境界イベントです。指定時間が経過するか、または特定の日時になった場合にタイマー境界イベントから引かれたシーケンスフローへとフローを進行させます。また、タイマー境界イベントがイベントを受信した際、通常のプロセスフローの継続か中止を設定できます。
4.3.6.1.1. タイマー境界イベントの配置¶
タイマー境界イベントを配置するためには、事前にタイマー境界イベントが接続可能なアクティビティを配置しておく必要があります。接続可能なアクティビティは以下の通りです。
アクティビティ名 | Palette |
---|---|
UserTask | Task |
ReciveTask | Task |
CallActivity | Task |
SubProcess | Container |
ApplyTask | intra-mart |
DraftTask | intra-mart |
- IM-BPM Designerの画面右側PaletteのBoundary eventにあるTimerBoundaryEventをクリックします。
![]()
- エディタ上のタイマー境界イベントを定義したいアクティビティをクリックします。
- ここではユーザタスクに対してタイマー境界イベントを定義しています。
![]()
- これでタイマー境界イベントが定義されました。
![]()
4.3.6.1.2. プロパティの設定¶
タイマー境界イベントのメインコンフィグの設定について解説します。入力方式は日付と時刻の表記に関する国際規格であるISO 8601の形式に則って記述する必要があります。具体的な記述方法については説明欄を参照してください。![]()
項目名 | 説明 |
---|---|
Cancel activity(アクティビティの取消) | タイマー境界イベントが開始したときに接続しているアクティビティを終了するか継続するかを設定します。 |
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.6.2. ErrorBoundaryEvent(エラー境界イベント)¶
エラー境界イベントは接続されたアクティビティ内でのエラーを受信する境界イベントです。エラー境界イベントで設定したアクティビティ内で発生したエラーコードを比較して合致した場合、エラー境界イベントから引かれたシーケンスフローへとフローを進行させます。エラー境界イベントがイベントを受信した際、エラー境界イベントを接続したアクティビティ内のサブプロセスを含む全てのプロセスは中断されます。エラー境界イベントにエラーコードを指定しなかった場合は、アクティビティ内で発生した全てのエラーコードを受信するようになります。
4.3.6.2.1. エラー境界イベントの配置¶
エラー境界イベントを配置するためには、事前にエラー境界イベントが接続可能なアクティビティを配置しておく必要があります。接続可能なアクティビティは以下の通りです。
アクティビティ名 | Palette |
---|---|
ServiceTask | Task |
CallActivity | Task |
SubProcess | Container |
IMLogicDesignerTask | intra-mart |
- IM-BPM Designerの画面右側PaletteのBoundary eventにあるErrorBoundaryEventをクリックします。
![]()
- エディタ上のエラー境界イベントを定義したいアクティビティをクリックします。
- ここではサービスタスクに対してエラー境界イベントを定義しています。
![]()
- これでエラー境界イベントが定義されました。
![]()
4.3.6.2.2. プロパティの設定¶
エラー境界イベントのメインコンフィグの設定について解説します。
項目名 | 説明 |
---|---|
Error code(エラーコード) | 設定したアクティビティで受信するエラーコードを文字列で定義します。
ここで設定したエラーコードを受信した場合、エラー境界イベントから引かれたシーケンスフローへとフローを進行させます。
エラーコードを指定しなかった場合、設定したアクティビティで発生したすべてのエラーイベントを受信します。
|
4.3.6.3. MessageBoundaryEvent(メッセージ境界イベント)¶
メッセージ境界イベントは接続されたアクティビティ内から送信されたメッセージを受信する境界イベントです。メッセージ境界イベントで設定したメッセージと同じ名前のメッセージを受信した場合、メッセージ境界イベントから引かれたシーケンスフローへとフローを進行させます。また、メッセージ境界イベントがメッセージを受信した際、通常のプロセスフローの継続か中止を設定できます。
4.3.6.3.1. メッセージ境界イベントの配置¶
メッセージ境界イベントを配置するためには、事前にメッセージ境界イベントが接続可能なアクティビティを配置しておく必要があります。接続可能なアクティビティは以下の通りです。
アクティビティ名 | Palette |
---|---|
UserTask | Task |
ServiceTask | Task |
ReciveTask | Task |
CallActivity | Task |
SubProcess | Container |
ApplyTask | intra-mart |
DraftTask | intra-mart |
- IM-BPM Designerの画面右側PaletteのBoundary eventにあるMessageBoundaryEventをクリックします。
![]()
- エディタ上のメッセージ境界イベントを定義したいアクティビティをクリックします。
- ここではユーザタスクに対してメッセージ境界イベントを定義しています。
![]()
- これでメッセージ境界イベントが定義されました。
![]()
4.3.6.3.2. プロパティの設定¶
メッセージ境界イベントのメインコンフィグの設定について解説します。
項目名 | 説明 |
---|---|
Cancel activity(アクティビティの取消) | メッセージ境界イベントが開始したときに接続しているアクティビティを終了するか継続するかを設定します。 |
Message ref(参照メッセージ) | 受信するメッセージを文字列で定義します。
ここで定義したメッセージを受信すると、メッセージ境界イベントから引かれたシーケンスフローへとフローを進行させます。
|
4.3.6.4. SignalBoundaryEvent(シグナル境界イベント)¶
シグナル境界イベントは接続されたアクティビティ内から送信されたシグナルを受信する境界イベントです。シグナル境界イベントで設定したシグナルを受信した場合、シグナル境界イベントから引かれたシーケンスフローへとフローを進行させます。また、シグナル境界イベントがシグナルを受信した際、通常のプロセスフローの継続か中止を設定できます。
4.3.6.4.1. シグナル境界イベントの配置¶
シグナル境界イベントを配置するためには、事前にシグナル境界イベントが接続可能なアクティビティを配置しておく必要があります。接続可能なアクティビティは以下の通りです。
アクティビティ名 | Palette |
---|---|
UserTask | Task |
ServiceTask | Task |
ReciveTask | Task |
CallActivity | Task |
SubProcess | Container |
ApplyTask | intra-mart |
DraftTask | intra-mart |
- IM-BPM Designerの画面右側PaletteのBoundary eventにあるSignalBoundaryEventをクリックします。
![]()
- エディタ上のシグナル境界イベントを定義したいアクティビティをクリックします。
- ここではユーザタスクに対してシグナル境界イベントを定義しています。
![]()
- これでシグナル境界イベントが定義されました。
![]()
4.3.6.4.2. プロパティの設定¶
シグナル境界イベントのメインコンフィグの設定について解説します。
項目名 | 説明 |
---|---|
Cancel activity(アクティビティの取消) | シグナル境界イベントが開始したときに接続しているアクティビティを終了するか継続するかを設定します。 |
Signal ref(参照シグナル) | 受信するシグナルを文字列で定義します。
ここで定義したメッセージを受信すると、シグナル境界イベントから引かれたシーケンスフローへとフローを進行させます。
|