子フローを呼び出す
重要
このコンテンツはアーカイブされており、更新されていません。 最新のドキュメントについては、Microsoft Power Platform 製品のドキュメントを参照してください。 最新のリリース計画については、Dynamics 365 および Microsoft Power Platform のリリース計画を参照してください。
有効対象 | パブリック プレビュー | 早期アクセス | 一般提供 |
---|---|---|---|
管理者、作成者、またはアナリスト、自動的 | - | - | 2019 年 10 月 23 日 |
機能の詳細
最近では、数十または数百のステップを必要とするようなフローが Power Automate で構築されていますが、これらのアクションのすべてを _1 つの_フローに詰め込むと、フロー内を移動したりフローを維持したりするのが困難になる場合があります。 代わりに、いくつかのステップを別の小さなフローに分割し、これらのフローを必要に応じて呼び出すことをお勧めします。 個々の小さいフローでは、1 つのあまり大きくないタスクを実行できます。これにより、フローが読みやすくなり、何か問題が発生した場合に特定しやすくなります。 そのタスクをフロー内の複数の場所で、または複数のフローで再利用したい場合、このアプローチは特に重要です。
以前、HTTP トリガーとアクションを使用して、あるフローで別のフローを呼び出す方法を紹介しました。 この方法は、フローの HTTP URL をコピーして貼り付ける必要があるため、やや面倒です。 さらに問題なのは、フローに対してソリューションを導入すると、異なる環境間でフローをコピーしたときに、古い環境のフローの HTTP URL が参照されているため、HTTP アプローチはエクスポートとインポートを行うと機能しなくなります。
10 月に、これらの問題を自動的に処理する子フローの実行という名前の新しい組み込みアクションが導入されました。 このアクションを開始するには、左側のナビゲーションでソリューションを選択した後、既存のソリューションを選択するか、ソリューションを作成します。 次に、2 つのフローを作成 (または編集) します。
- 親フロー: このフローは任意の種類のトリガーを含むことができ、他のフローを呼び出します。
- 子フロー: これは他のフロー内に入れ子にされるフローであり、実行する小さなタスクが含まれています。
連絡先の名前に基づいて Common Data Service で連絡先を作成または更新する子フローの例を見てみます。
子フローの構築
最初に子フローを作成する必要があります。 現在、子フローに使用できる 3 つの異なるトリガーがあります。
- 手動でフローをトリガーする (モバイルの [フロー] ボタン)。
- Power Apps。
- HTTP 要求を受信したとき (Premium HTTP 要求/応答コネクタでのみ使用可能)。
最初のトリガーを選択すると、子フローが親フローから受け取る_入力_を定義できます。 たとえば、子フローで連絡先を作成する場合、連絡先の名前と連絡先のメール アドレスが必要になります。 入力の追加を選択し、詳細を指定します。
次に、子フローで実行するロジックを作成します。 このロジックには、必要な数のステップを含めることができます。 手順の後で、親フローにデータを返す必要があります。 この場合、次の 2 つのアクションのいずれかを使用できます。
- Power App またはフローに応答する (Power Apps コネクタで)。
- 応答 (Premium HTTP 要求/応答コネクタで)。
トリガーと同様に、子フローから返したい出力をいくつでも定義できます。 この例では、連絡先の ID で応答できます。
フローにわかりやすい名前を付けて保存します。 その後、子フローをテストする必要があります。 このフローは手動でトリガーできるため、デザイナー内で簡単にテストできます。 いくつかの異なる入力で試してみて、出力が期待どおりであることを確認します。
最後に、組み込みアクションまたは Common Data Service (現在の環境) コネクタ以外のものをフローで使用している場合は、フローに埋め込まれた接続を使用するようにフローを更新する必要があります。 これを行うには、戻るボタンを選択して子フローのプロパティ ページに移動し、実行のみのユーザーで編集を選択します。
表示されるペインで、フローで使用される接続ごとに、実行専用ユーザーが提供するの代わりにこの接続 (<接続名>) を使用するを選択する必要があります。
次に、保存を選択します。 この時点では、親フローから子フローに接続を渡すことはできません。 これを行わないと、子ワークフローでは埋め込み接続のみがサポートされているため、名前は子ワークフローとして使用できないことを示すエラーが表示されます。
親フローの構築
これで、子フローを作成したのと同じソリューションで親フローを構築できます。 新しいフローを作成するだけです。 または、既存のフローをそのソリューションに取り込むのでもかまいません。 この親フローには、任意の種類のトリガーを含めることができます。
フロー内で子フローを呼び出したい場所を見つけて、ビルトイン タブのフロー コネクタの下にある子フローの実行アクションを追加します。
次に、前に作成した子フローを選択する必要があります。 念のため、ソリューション内にあり、前述の 3 つのトリガーのいずれかが含まれていて、アクセスすることができるフローのみが表示されます。
子フローを選択すると、定義した_入力_が表示されます。 子フローのアクションの後で、その子フローからの_出力_をどれでも使用できるようになります。
親フローを実行すると、フローの有効期間の間、子フローの完了が待機されます (組み込み接続と Common Data Service を使用するフローの場合は 1 年、他のすべてのフローの場合は 30 日間)。
最後に、このフローを保存してテストできます。 これら 2 つのフローを含むソリューションをエクスポートして別の環境にインポートすると、新しい親フローと子フローが自動的にリンクされるため、URL を更新する必要はありません。