子フローの作成

今日では、人々は何十、何百ものステップを必要とするフローを構築していますが、これらのアクションをすべて 1つの フローに入れようとすると、そのフローのナビゲートと維持が難しくなります。

子フローを使用することで、フローの管理が簡単になり、フローに数百のステップを持たせることを回避できます。 この方法は、クラウド フロー内の複数の場所でタスクを再利用する場合や、複数のフローにわたってタスクを再利用する場合に特に便利です。

連絡先の名前に基づいて Dataverse で連絡先を作成、または更新する子フローが存在する場合の例を見てみましょう。

2つのフローを持つソリューションが必要になります :

  • フロー。 これは、 フローの中に入れ子になっているフローで、実行の対象とする小さなタスクが含まれています。
  • フロー。 このフローは任意のタイプのトリガーを持つことができ、子フローを呼び出します。

ソリューションに子フローを作成する

  1. Power Automate にログインし、ソリューション を選択します。続いて既存のソリューションを選択します。

    または、ソリューションを作成することができます。

  2. 新規 > フロー > ボタン フロー > フローを手動でトリガーする を選択します。

    Tip

    子フローのトリガーには、Power Apps、または HTTP リクエストを受信したとき を使用できます。

  3. 入力の追加 を選択します。 ここで定義する入力は、親フローから子フローに渡されます。

    親フローに由来する入力値。

  4. このチュートリアルでは、子フローが連絡先を作成するため、連絡先連絡先メールアドレス が必要となります。

    子フローの入力。

  5. 子フローを実行するロジックを構築します。 このロジックには、必要なだけの数のステップを含めることができます。

    ステップの完了後は、データを親フローに返す必要があります。 この場合、次の2つのアクションのいずれかを使用できます :

    i. Power Apps またはフローに応答する (Power Apps コネクタ配下)。

    ii. 応答 (プレミアム HTTP 要求/応答コネクタ上)。

  6. トリガーと同様に、子フローから返される出力を必要なだけ定義できます。 次の画像では、連絡先の ID を使用して応答できます。

    子フローの応答。

  7. フローに説明的な名前を付けた後、フローを保存します。

    続いて、子フローをテストする必要があります。 このフローは手動でトリガーできるため、デザイナー内ですぐにテストすることができます。 いくつかの異なる入力で試して、出力が期待どおりとなることを確認してください。

  8. 最後に、フローが組み込みアクションまたは Microsoft Dataverse コネクタ、接続を使用するには、フローに 埋め込まれた 接続を使用するにはフローを更新する必要があります。 これを行うには、[戻る]ボタンを選択して子フローのプロパティ ページに移動し、続いて ユーザーのみを実行 タイル内で 編集 を選択します。

  9. 表示されたペインで、フローで使用される各接続について、次を選択する必要があります: 実行専用ユーザーが提供する の代わりに この接続 (<接続名>)を使用する

  10. 保存 を選択します。 現時点では、親フローから子フローに接続を渡すことはできません。 これを行わないと、子ワークフローは埋め込み接続のみに対応しているため、名前を子ワークフローとして使用できないことを示すエラーが表示されます。

ソリューションに親フローを作成する

  1. 子フローを作成したのと同じソリューションで親フローを構築します。

    または、既存のフローをそのソリューションに組み込むこともできます。 親フローは、任意のタイプのトリガーを持つことができます。

  2. ご利用の 親フロー の中で子フローを呼び出したい場所を探し、組み込み タブの フロー コネクタの配下にある 子フローを実行する アクションを追加します。

  3. 先ほど作成した子フローを選択します。

    Note

    アクセス権があり、ソリューション内にあるフローのみが表示されます。 子フローには、前述の3つのトリガーのいずれかが必要となります。

    実行する子フローを選択します。

  4. 子のフローを選択すると、定義した 入力 値が表示されます。 子フローのアクションの後は、当該子フローに由来する任意の 出力 を使用できます。

    入力。

    子フローがフローの存続期間まで完了するまで待機します (組み込み接続と Dataverse を使用するフローの場合は1年、それ以外のフローの場合は30日)。

  5. このフローを保存して、テストします。

    Tip

    これら2つのフローを含むソリューションをエクスポートして別の環境にインポートすると、新しい親フローと子フローが自動的にリンクされるため、URLを更新する必要がありません。

既知の問題

当社では次の既知の問題と制限の解決に取り組んでいます。

  1. データ損失防止 (DLP) を介して HTTP 要求コネクタをブロックすると、子フローは HTTP コネクタを使用して実装されるため、子フローもブロックされます。 子フローの DLP エンフォースメントを分離して、他のクラウド フローと同様に扱われるようにする作業が進行中です。

  2. 親フローとすべての子フローを同じソリューションで 直接 作成する必要があります。 フローをソリューションにインポートすると、予期しない結果が発生します。