クラシック Microsoft Dataverse ワークフローをフローに置き換える
このトピックでは、Power Automate の機能をクラシック ワークフローと比較します。
Power Automate には、クラシック バックグラウンド ワークフロー モデルよりも大きな利点があります。クラシック ワークフローではなく、プロセスを自動化するための Power Automate の使用を検討してください。
新しい自動化プロセスを構築するために、クラシック Microsoft Dataverse ワークフローではなくフローを作成します。 また、既存のクラシック バックグラウンド ワークフロー プロセスを確認し、それらをフローに置き換えることを検討する必要があります。
機能の性能比較
このテーブルは、Power Automate とクラシック ワークフローの機能の比較についてまとめたものです。
Power Automate に新しい機能を継続的に追加しています。 この表の情報は、Power Automate の機能が追加されるたびに更新されるため、随時確認してください。 従来のバックグラウンド ワークフローをフローに置き換えるのに役立つ今後の機能については、Power Automate の新機能および予定されている機能を参照してください。
機能 | Power Automate | クラシック ワークフロー | |
---|---|---|---|
モデリング | 条件分岐 | 有効 | はい |
ループ | はい | いいえ | |
列の待機状態 | いいえ | はい | |
並列分岐 | はい | いいえ | |
外部システムへの既定のコネクタ (外部サービスでのアクションのトリガーと実行) | はい | いいえ | |
コンポジション | 動的コンテンツ | はい | はい |
イベント データのプレイメージへのアクセス | いいえ | はい | |
子ワークフローの実行 | はい | はい | |
Microsoft Dataverse アクション (カスタムを含む) の実行 | はい | はい | |
カスタム バックグラウンド ワークフロー活動の実行 | いいえ | はい | |
トランザクションで実行するステップのグループ化 | はい (変更セット) | いいえ | |
承認ワークフロー | はい | いいえ | |
実行 | 列変更でのトリガー | はい | はい |
列値 (日付列の特定の日付など) での条件付きトリガー | いいえ | いいえ | |
複数の Dataverse テーブル イベントでのトリガー | はい | はい | |
オンデマンドでの実行 | はい | はい | |
実行スコープ (組織、部署、ユーザーなど) |
はい | はい | |
スケジュールに従って実行 | はい | いいえ | |
同期実行 (リアルタイム) | いいえ | はい | |
履歴 | 監査 | はい | はい |
分析の実行 | はい | いいえ | |
作成と移植性 | ソリューションのサポート | はい | はい |
モダン デザイナー | はい | いいえ | |
AI 支援による作成 | 有効 | 無効 |
シナリオの例: バックグラウンド ワークフローをクラウド フローに置き換える
顧客の見積もりをまとめる営業シナリオを想定すると、見積もりを顧客に送信する前に管理チームに承認を依頼する必要があります。 これは従来のワークフローでは簡単ではありません。これに対するほとんどのソリューションで、開発者が見積もりの明細行項目を取得するカスタム バックグラウンド ワークフロー活動を作成する必要があります。
フローでは、このシナリオ構築はより簡単になります。このシナリオをサポートするためのいくつかの Power Automate 機能については、チュートリアルの後半で説明します。 たとえば、次のような機能があります。
- オンデマンドで実行するクラウド フローを作成します。
- Dataverse テーブルに関連する行のリストを取得します。
- 行のリストでのループ。
- 承認要求の送信。
販売員がオンデマンドで承認要求をトリガーできるようにするには、次のようにします。
Power Automate にサインインし、ソリューションにフローを作成します。
トリガーのリストから、Microsoft Dataverse を選択します – ある行が選択されたとき、次にテーブルとして 引用 を選択します。
このトリガーを使用すると、行または一連の行に対してオンデマンドでクラウド フローを実行できます。
トリガーが構成されたら、フローで実行するアクションを追加します。 これにより、見積品目と値を識別するために必要な集計の詳細が承認者に提供されます。 Microsoft Dataverse – 行を一覧表示する アクションを追加することから始めます。 目標は見積もりから個々のアイテムを取得することなので、テーブル名 を 引用行 に設定します。 フローをトリガーした見積もりに属する見積依頼明細行項目のみをリストに含むように、OData スタイル フィルター条件を指定します。 フィルター クエリ ボックスに ‑quoteid_value eq と入力し、表示される動的な値のリストから見積もりを選択します。
承認のために見積品目をまとめる必要があるため、変数を初期化する アクションを追加します。 名前に見積品目の集計、そして種類に文字列(ドロップダウン リストから) を設定し、値は空のままにします。
文字列変数に追加 アクションを追加し、先ほど作成した 見積品目の集計 を選択します。 値ボックスで、動的な値のリストから数量、名前、単位あたりの価格、拡張価格および手動割引を選択します。 Power Automate デザイナーにより、これらの値が見積品目リストからのものであることが識別され、各品目に適用 ループにこのアクションが追加され、各品目の情報がこの集計に確実に追加されるようになります。
作成した見積もりの集計に対する承認を要求するには、承認 – 承認の開始と待機 アクションを追加します。 承認の種類 (たとえば、承認/拒否 – 最初に応答) を選択し、承認要求にタイトル (たとえば、動的な値のリストから選択された、承認が要求されている見積もりの名前) を付け、割り当て先ボックスで見積もりを確認し、承認する必要がある人のメール アドレスを入力します。 詳細ボックスで、見積品目の集計変数を、動的な値のピッカーを使用して関連する可能性のあるその他の情報 (合計金額など) と共に追加します。
承認が受理または拒否された場合の動作を決定するには、条件 アクションを追加します。 条件の最初のフィールドの動的な値リストから 結果 を選択し、2 番目のフィールドのドロップダウン リストから が次の値を含む を選んで、条件の 3 番目のフィールドに 承認 と入力します。 最後に、承認の結果に基づいてアクション (通知メールの送信など) を追加します。
これで承認の構造が作成されたので、承認者は次の手順で決定をおこなうために必要なすべての情報を得られました。 こちらに完全な例を示します:
このフローを見積もりに対して実行すると、その見積もりの見積品目が集計され、Power Automate から承認者が応答できる承認要求、または受信されるアクション可能なメールが送信されます。 この表示の例を次に示します。
推奨されるパターン
複雑な "else-if" の条件付きロジックを使用するワークフロー
条件を使用するのではなく、代わりにスイッチ アクションを使用することをお勧めします。
プラグイン/コードから実行するワークフロー
トリガーから開始するようにフローを再設計することをお勧めします:
Microsoft Dataverse トリガーを使用して、その中のイベントに基づいてフローを実行します。
外部サービスのイベントに基づいてフローを実行するには、260 を超える既定のコネクタを利用します。
必要なコネクタがすぐに利用できないシナリオの場合は、独自のカスタム コネクタを簡単に作成します。 詳細: カスタム コネクタを最初から作成する
最後に、事前に構築されたコネクタ (既定のコネクタの 1 つ) を使用してフローをトリガーできない、あるいはカスタム コネクタを作成できないシナリオがある場合は、HTTP 要求の受信時トリガー を利用してフローを呼び出すようにします。
再帰的に実行されるワークフロー
行のリストを必要とするワークフロー
行を一覧にするアクションを使用します。 このアクションを使用する場合は、取得する行の数を最小限に抑えてアクションを最適化するために、OData 構文を使用して行のフィルター条件を定義します。
スケジュールに基づいて実行されるようにスリープするワークフロー
定期的にビジネス ロジックを実行するには、繰り返し トリガーを使用します。
1 つのトランザクションでアクティビティが実行されたことを確認するために実行が管理されたワークフロー
変更セット アクションを使用して、その中のすべてのアクションが 1 つのアトミック単位として実行されるようにします。その場合、すべて成功するか、グループとして失敗のいずれかになります。 変更セット内のいずれかのアクションが失敗した場合、完了した操作によって行われた変更がロールバックされます。
失敗したバックグラウンド ワークフローの実行を監視する
Power Automate で、アクションに対して run-after 設定 を使用し、前のアクションが失敗したときに実行するように構成します。 たとえば、行の更新アクションが失敗したとき、またはタイムアウトになったときに、Power Automate モバイルに通知を送信します。
FAQ
Dynamics 365 ライセンスがあります。 Power Automate は使用できますか?
すべての Dynamics 365 ユーザーに、Power Automate を使用する権利があります。 ライセンス情報の確認。
フローはどのくらいの頻度でトリガーできますか?
Dynamics 365 (または Microsoft Dataverse) のフローは、Webhook を使用する (ポーリングは必要ありません) ため、トリガー後にほぼリアルタイムで実行されます
- API への直接アクセスと同様に、システムにはスロットル/制限があります。 詳細: Power Automate での制限と構成
- 具体的には、フローごとに 5 分あたり 100,000 アクションの制限があります。 クラウド フロー内の 1 つのループで、一度に 100,000 を超えるアイテムを処理することはできません。
- 5 分あたり最大 6 GB のスループット。
フロー 1 件の実行時間はどのくらいですか?
1 つのフローの実行は 30 日後にタイムアウトになります。
環境間でフローを移動するにはどうすればよいですか?
クラシック ワークフローと同じように、ソリューションにフローを作成し、プロセスの完全なアプリケーション ライフサイクルをサポートすることができます。
Power Automate の依存関係は Microsoft Dataverse で追跡されますか?
ソリューション内の他のコンポーネントと同様に、ソリューション内のフローのすべての依存関係は Microsoft Dataverse で追跡されます。
同期ワークフローについてはどうですか?
同期ワークフローがエンド ユーザーのパフォーマンスの問題に大きく貢献するというフィードバックがあります。 目的やバックグラウンド ワークフローの一部を、クラウド フローを使用して構築可能かどうか評価することを推奨します。 非同期にアクションを分割できる場合、Power Automate がアクションを完了する間にユーザーが活動を継続できます。
Power Automate を使用すると、データはリージョン (つまり、Dynamics 365 または Microsoft Dataverse 環境と同じリージョン) 内にとどまりますか?
はい、Power Automate は常に Microsoft Dataverse と同じリージョンを使用します。
プロキシ/ファイアウォールの変更を行う必要がありますか?
プロキシ/ファイアウォールの変更を行う必要があるかどうかを判断する場合は、IP アドレス構成のリファレンス を参照してください。