ワークフロー ビジネス イベント
ワークフロー ビジネス イベントは、ワークフローの処理のさまざまなポイントで生成されます。
ワークフローの構築
ワークフローを構築するため、開発者は Visual Studio ツール内のメタデータ及びコードでワークフロー コンポーネントを定義することができます。
管理者は Web クライアントでワークフローを作成してから、ワークフロー デザイナーでそれらをデザインすることができます。 詳細については、ワークフローの作成を参照してください。
ワークフローのコンポーネント
ワークフロー コンポーネントはメタデータで以下のように定義されます。
- ワークフロー タイプ - テンプレートとしても知られるワークフロー タイプは、ワークフローで許容される要素を定義します。 管理者はワークフローのデザインを作成するときに実際に使用される要素を決定します。
- アプリケーション エクスプローラーで、AOT > ビジネス プロセスおよびワークフロー > ワークフロー タイプ の順に移動します。
- ワークフロー要素 - ワークフロー要素はワークフローを構成する実行可能要素です。 詳細については、ワークフロー要素を参照してください。
- タスク (または手動タスク) - AOT > ビジネス プロセスおよびワークフロー > ワークフロー タスク の順に移動します。
- 承認 - AOT > ビジネス プロセスおよびワークフロー > ワークフローの承認 の順に移動します。
- 自動化タスク - AOT > ビジネス プロセスおよびワークフロー > ワークフロー自動化タスク の順に移動します。
ワークフロー ランタイム
ユーザーがワークフローを送信すると、ワークフローはキューに追加され、ワークフロー メッセージ処理 バッチ ジョブを使用して実行されます。 ワークフローの実行時、終了に達するまですべての 接続されたワークフロー要素を経て進行します。 ワークフロー ランタイムが手動タスク要素に遭遇すると、タスクに割り当てわれたユーザーに対して作業項目が作成されます。 ワークフロー ランタイムが承認要素に遭遇すると、各承認ステップに割り当てわれたユーザーごとに作業項目が作成されます。
ワークフロー ビジネス イベントのカテゴリ
ワークフロー ビジネス イベントには 5 つの異なるカテゴリがあります。 カテゴリが Microsoft Power Automate に表示され、イベントを選択できます。
- カテゴリ: ワークフロー タイプ
- これらのイベントは、開始および完了などのワークフロー イベントで発生します。 すべてのワークフロー インスタンスはこのカテゴリに相当します。
- 例: 購買要求承認ワークフローの開始
- ID の形式 - "Workflow_" + ワークフロー名 + ワークフロー インスタンス ID、たとえば、"Workflow_BudgetPlanReview_000002"
- カテゴリ: 開始されたワークフロー要素
- これらのイベントはワークフロー要素が開始されたときに発生します。 ワークフロー インスタンス内のすべての有効なワークフロー要素はこのカテゴリに相当します。
- 例: 購買要求の自動承認の開始
- ID の形式 - "Workflow_" + ワークフロー名 + ワークフロー インスタンス ID + "_" + ワークフロー要素名 + "_Started"、たとえば、"Workflow_BudgetPlanReview_000002_BudgetActivateBudgetPlanChild_Started"
- カテゴリ: ワークフロー要素
- これらのイベントは、完了などの、開始以外のワークフロー要素イベントで発生します。 ワークフロー インスタンス内のすべての有効なワークフロー要素はこのカテゴリに相当します。
- 例: 購買要求の自動承認の完了
- ID の形式 - "Workflow_" + ワークフロー名 + ワークフロー インスタンス ID + "_" + ワークフロー要素名、たとえば、"Workflow_BudgetPlanReview_000002_BudgetActivateBudgetPlanChild"
- カテゴリ: ワークフローの外部タスク
- これらのイベントはワークフロー自動化タスク要素が開始されたときに発生します。 ワークフロー インスタンス内のすべての有効なワークフロー自動化タスク要素はこのカテゴリに相当します。
- 例: 購買要求の自動承認の開始
- ID の形式 - "Workflow_" + ワークフロー名 + ワークフロー インスタンス ID + "_" + ワークフロー要素名 + "_ExternalTask"、たとえば、"Workflow_BudgetPlanReview_000002_BudgetActivateBudgetPlanChild_ExternalTask"
- カテゴリ: ワークフロー作業項目
- これらのイベントはユーザーに対してワークフロー作業項目が作成されるときに発生します。 ワークフロー インスタンス内のすべての有効なワークフロータスクおよびワークフロー承認はこのカテゴリに相当します。
- 例: Bob に対して作成された購買要求の手動承認作業項目
- ID の形式 - "Workflow_" + ワークフロー名 + ワークフロー インスタンス ID + "_" + ワークフロー要素名 + "_WorkItem"、たとえば、"Workflow_BudgetPlanReview_000002_BudgetActivateBudgetPlanChild_WorkItem"
Power Automate で作業項目を完了する
ワークフロー ビジネス イベント は承認フローのトリガーに優れたターゲットです。 ワークフロー作業項目イベントは、OData アクションの検証と完了と組み合わせて使用することで、Power Automate の作業項目完了を容易にすることができます。
承認やタスク作業項目は、次の手順を使用して Power Automate で完了することができます:
- 適切なワークフロー作業項目イベントを対象にしたビジネス イベントが発生した場合のトリガーを使用して、Power Automate をトリガーします。
- ワークフロー作業項目に有効な一連の情報が含まれていることを検証し、WorkflowWorkItems エンティティで検証メソッドを呼び出して完了できるようにします。
- 作業項目に完了する準備ができていない場合は、割り当てられたユーザーに通知を送信して、注意が必要な作業項目があることを知らせます。
- 作業項目を完了する準備ができたら、使用可能な回答オプションをユーザーに送信して、割り当てられたユーザーに回答を要求します。
- 回答が提供されたら、WorkflowWorkItems エンティティの完了メソッドを呼び出して、その回答で作業項目を完了します。
作業項目の外部完了を可能にするには、作業項目のアクション マネージャー クラスは、IValidateWorkflowWorkItemAction インターフェイスを実装する必要があります。 標準の WorkflowWorkItemActionManager クラスはこのインターフェイスを実装しています。 プラットフォーム更新 32 では、IValidateWorkflowWorkItemAction インターフェイスの実装をおこなうために TrvWorkflowWorkItemActionManager クラスが更新されます。 例として、既存の IValidateWorkflowWorkItemAction 実装を使用して、その他の WorkflowWorkItemActionManager クラスについての更新を通知します。
Microsoft Power Automate で作業項目完了を設定する詳細なガイドは ワークフロー承認ビジネス イベントを消費する を参照してください。
Power Automate での作業項目完了のテンプレート
Power Automate での作業項目完了に関する次のテンプレートが使用できます。
プラットフォーム更新プログラム 29 バージョンは、ビジネス イベント ペイロードから完了オプションを取得します。 これらのオプションはプラットフォーム更新プログラム 29 で追加され、承認アクションによりユーザーに表示されます。
ワークフロー ビジネスイベントのトラブルシューティング
ワークフローの問題に関するトラブルシューティング
ワークフローが正常に稼働し、期待通りに作業項目を作成できることを確認します。 ワークフローがアプリケーション内で動作せず、状態の変化が発生した場合、イベントは発生しません。 必要に応じてワークフローの設定を調整します。 この調整を行うには、 ワークフローの履歴 フォームの詳細を確認してください。
Power Automate の問題に関するトラブルシューティング
Power Automate サブスクリプションが、アクティブ イベント タブの システム管理 > 設定 > ビジネス イベント > ビジネス イベント カタログ で利用可能なことを確認します。Power Automateサブスクリプションがそこにない場合は、Power Automate をチェックして、必要に応じて再作成します。
ビジネス イベントの問題に関するトラブルシューティング
Power Automate を作成することでその他のビジネス イベントが正常に発生し、他のビジネスイベントがトリガーから外されることを確認します。 たとえば、フリー テキストのインボイス転記済イベントは、単一行のフリー テキスト インボイスを作成して転記することでトリガーできます。 詳細については ビジネス イベントのトラブルシューティング を参照してください。
Power Automate を介して作業項目承認のトラブルシューティング
フローが作業項目の承認を対処しようとしているが、起動しない場合は、次のステップを検証します。
- 作業項目が作成され、それにより適用されるユーザーは Web クライアントで承認を待機していることを見ることができますか?
- フローからのイベント サブスクリプションは、ビジネス イベント フォームで見ることができますか?
- ワークフロー構成とフローからのイベント サブスクリプションは、正しい法的エンティティ (企業) 向けになっていますか?