- はじめに
- 基本情報
- BPMN を使用したプロセス モデリング
- ケース管理を使用したプロセス モデリング
- フローを使用したプロセス モデリング
- プロセスの実装
- プロセスの操作
- プロセスの監視
- プロセスの最適化
- 参考情報
BPMN の開始、中間、終了の各イベントの種類 (キャッチとスローの動作や、Maestro でのプロセス実行フローの制御方法など)
イベントは、プロセスの実行中に発生した事象をキャプチャします。BPMN では、イベントは開始イベント、中間イベント、終了イベントの 3 つの主要な種類にグループ化されます。これらは、キャッチ イベント (トリガーに反応) または スロー イベント (トリガーを送信) として動作できます。
開始イベント
開始イベントは、プロセスの開始方法を定義します。開始イベントは常にイベントをキャッチし、手動、メッセージ、またはスケジュールに従ってトリガーできます。
-
なし — 手動でトリガーされたとき、または Orchestrator を介して開始されたときにプロセスを開始します。
-
メッセージ イベント — Integration Service からのイベントによってトリガーされます。
-
タイマー イベント — スケジュールに従って、または待機時間後にプロセスを開始します。 タイマー開始イベントは、ユーザーやシステムの入力ではなく、定義されたスケジュールに基づいてプロセスを開始します。タイマー開始イベントは [タイマー] セクションを使用して設定します。このセクションでは、[日付]、[期間]、または [サイクル] の種類がサポートされています。 繰り返し実行する場合は、[サイクル] を使用し、[繰り返し] の頻度 (毎時間、毎日など) を指定します。[時刻] フィールドと [繰り返し] フィールドで、タイミングと制限をさらに制御できます。 [実装] セクションで、[アクション] を、受信イベントが不要な場合は [なし] に設定し、プロセスが外部トリガーをリッスンしてから続行する必要がある場合は [コネクタ イベントを待機] に設定します。タイマー開始イベントは、1 時間ごとの同期や日次レポートなど、スケジュールされたオートメーションに最適です。Integration Service のコネクタについては、こちらをご覧ください。
-
Queue events — start the process when a new item is added to an Orchestrator queue. The Action field must be set to New item added to queue, with the Queue name and Folder path also required. For batches added to the queue in quick succession, Maestro rechecks the queue and starts a process instance for each item once resources are available.
A queue item starts exactly one process instance — an instance can't consume multiple items in a loop. To enforce this one-to-one relationship, Orchestrator locks the trigger's batch-size fields (the minimum number of items required to trigger the first job, and the setting that triggers another job after each item) to a read-only value of
1for Maestro queue triggers.For the queue item states a triggered process moves through, and for the task activities that update a queue item's state, refer to Queue task activities.
中間イベント
中間イベントは、プロセスの開始から終了までの間に発生する事象をモデリングします。フローを遅延させたり、入力を待機したり、エラーを処理したり、他のアクティビティに情報を通知したりすることができます。
中間キャッチ イベントは、実行中に、メッセージ トリガー、タイマー トリガー、または API トリガーを待機します。トリガーが発生するまで、プロセスは一時停止します。
境界イベントは、タスクにアタッチされた特殊な種類の中間キャッチ イベントです。このイベントは次のように設定できます。
-
中断境界イベント — トリガーされると、アタッチされたタスクをキャンセルします (例: タイマーやメッセージなどによる)。
タイマー境界イベント: タスクの実行時間が長すぎる場合にそのタスクを中断します。期間、特定の日付、または繰り返しのサイクルを設定します。[値] フィールドは、ISO 8601 形式の期間を受け入れます (例: 1 時間の場合は
PT1H)。タイマーの期限が切れると、プロセスは境界イベントのパスに従って続行されます。[実装] セクションには、ログ記録やリトライなどのアクションを含めることができますが、通常は [なし] のままにします。
メッセージ境界イベント: タスクの実行中に特定のメッセージをリッスンします。メッセージを受信すると、タスクを中断し、フローを新しいパスに迂回させます。
[実装] セクションでメッセージ処理ロジックを定義します (例: [コネクタ イベントを待機] や外部入力)。[入力] セクションと [出力] セクションを使用して、データを渡したり抽出したりします。また、[変数を更新] セクションを使用してプロセス データを動的に変更します。
-
非中断境界イベント — 並列パスをトリガーする一方で、タスクの実行を続行できます。タイマー ベースまたはメッセージ ベースにすることができます。
-
エラー境界イベント — アタッチされたアクティビティによってスローされるエラーを処理します。既定では、例外は [すべてキャッチ] に設定されています。つまり、未処理のエラーがキャプチャされます。このパスは通常、フォールバック ルートまたは回復ルートとして機能します。
中間スロー イベントでは、トリガーがアクティブに送信されます。たとえば、メッセージ中間スロー イベントは、送信タスクのように動作し、Integration Service の API 実行を呼び出します。
終了イベント
終了イベントはプロセス パスの完了をマークし、スロー イベントとして動作します。ワークフローを正常に終了するか、データを外部に送信するか、アクティブなパスをすべて終了できます。
-
エラー終了イベント — プロセス インスタンスを完了し、オーケストレーション ランタイム (OR) ジョブをエラーにします。
-
メッセージ終了イベント — プロセスが完了するとメッセージを送信します。[実装] の [コネクタ アクティビティを実行] を使用して、コネクタ アクティビティ (Slack、Salesforce、ServiceNow など) を実行するように設定できます。
ターゲット コネクタを選択し、コネクションを定義して、実行するアクティビティを選択します。入力を使用してコネクタにデータを渡し、出力を使用して、応答をキャプチャして保存し、後のステップで使用できます。
-
強制終了終了イベント — 特に並列フローの場合に、他のすべての実行パスをキャンセルします。このイベントはプロセスの完全な完了をマークします。
必要に応じて、実装アクションを定義して、コネクタ操作を実行したり、データを返したり、フォローアップ システムをトリガーしたりできます。アクションが必要ない場合は、[なし] に設定します。
[引数] セクションは、親プロセスに渡したりレポートで使用したりできる出力値を定義するために使用します。