ADVERTISEMENT

【Power Automate】子フローが想定どおり進まない時の接続と所有者の確認

【Power Automate】子フローが想定どおり進まない時の接続と所有者の確認
🛡️ 超解決

Power Automateの子フローは、複数のフローで共通処理を再利用するための便利な機能です。しかし、想定どおりに動作せず、思わぬ時間を浪費してしまうことがあります。多くの場合、その原因は「接続」または「所有者」の設定に潜んでいます。本記事では、子フローが正常に動作しないときに、接続と所有者の観点からどのように切り分けて対処すべきかを具体的に解説します。

【要点】この記事で確認すること

  • 最初に見る場所: 子フローの詳細画面で「接続参照」が正しく設定されているか、および子フローの所有者が親フローを実行するアカウントからアクセス可能かを確認します。
  • 切り分けの軸: 問題がすべての子フローで発生するか、特定の子フローだけか。また、動作しないのは親フローからの呼び出し時のみか、子フロー単体のテストでも失敗するかを確認します。
  • 注意点: 会社PCでは、接続の所有者を変更する際に他ユーザーの権限に影響を与える可能性があるため、管理者の承認を得てから変更してください。また、勝手に接続を削除すると他のフローに影響が出る場合があります。

ADVERTISEMENT

1. 子フローが動作しない原因の全体像

子フローが想定どおりに進まない原因は、大きく分けて「接続の問題」「所有者の問題」「フロー定義の問題」の3つに分類できます。特に接続と所有者は、Power Automateのアクセス権限や認証に関わる部分であり、トラブルの約7割はこの2つに起因すると言われています。まずは、子フロー単体でテスト実行してみてください。もし子フロー単体でも失敗するなら、接続やフロー定義の問題です。逆に子フロー単体では成功するのに、親フローから呼び出すと失敗する場合は、所有者の権限や呼び出し方に問題がある可能性が高いです。

1.1 接続の問題

子フロー内で使用しているコネクタ(SharePoint、Outlook、SQL Serverなど)の接続が、有効でない、または期限切れになっているケースです。また、接続参照を利用している場合、その参照先の接続が正しく設定されていないと動作しません。接続の所有者が変わっている、またはパスワードが変更されたことも原因になり得ます。

1.2 所有者の問題

子フローには「所有者」という概念があり、コネクタの接続を管理するユーザーが設定されています。親フローを実行するアカウントが、子フローの所有者として登録されていない場合、親フローからの呼び出し時にアクセス権限エラーが発生します。特に、子フローを別のユーザーが作成した場合、そのユーザーが会社を退職すると接続が無効になり、他のユーザーが呼び出せなくなることがあります。

項目 正常な状態 問題がある状態
接続参照 有効な接続を参照している。所有者は実行ユーザーと一致している。 参照先の接続が削除されている、または所有者が別のユーザーで権限がない。
子フローの所有者 親フロー実行ユーザーが所有者として含まれている。 所有者が存在しない(削除されたユーザー)か、実行ユーザーが含まれていない。
コネクタの種類 標準コネクタまたはプレミアムコネクタのライセンスが適切に割り当てられている。 ライセンス不足、またはコネクタが使用不可になっている。

2. 接続周りの問題と確認手順

接続の問題を切り分けるには、まず子フローを単体でテスト実行します。その結果に応じて以下の手順で確認を進めてください。

  1. Power Automate ポータル(make.powerautomate.com)にサインインします。
  2. 左メニューの「フロー」から、該当の子フローを開きます。
  3. 画面上部の「テスト」ボタンをクリックし、「手動」または「自動」を選択してテストを実行します。
  4. テストが失敗した場合、詳細なエラーメッセージを確認します。例:「接続が無効です」「権限が不足しています」などのメッセージが表示されます。
  5. フローの編集画面で、各アクションに設定されたコネクタの接続を確認します。黄色い警告アイコンが出ている場合は、接続に問題があります。
  6. 該当する接続を開き、「新しい接続を追加」または「接続を更新」を選択して、現在のアカウントで再認証します。
  7. 接続参照を使用している場合は、「ソリューション」内の接続参照を開き、適切な接続が選択されているか確認します。必要に応じて参照を変更します。

注意点として、接続を更新する際に、他のユーザーがその接続を使用している場合は影響が出ることがあります。特に会社全体で共有している接続参照は、管理者が一元管理しているケースが多いため、勝手に変更せずにIT部門に問い合わせてください。

3. 所有者設定の問題と確認手順

子フローの所有者設定は、親フローからの呼び出し権限に直結します。次の手順で所有者を確認し、必要に応じて修正します。

  1. 子フローの詳細画面で、右上の「編集」アイコン(鉛筆マーク)をクリックします。
  2. 「所有者」タブを選択します。ここに現在の所有者一覧が表示されます。
  3. 親フローを実行するユーザー(多くの場合、自分自身)が一覧に含まれているか確認します。
  4. 含まれていない場合は、「所有者を追加」をクリックして、該当ユーザーを追加します。追加できるのはテナント内のユーザーに限ります。
  5. 追加後、再度テストを実行して問題が解決したか確認します。

注意点:所有者を追加するには、自分がその子フローの編集権限を持っている必要があります。編集権限がない場合は、管理者に依頼してください。また、所有者を削除すると、そのユーザーは子フローを編集できなくなるだけでなく、既存の実行履歴にも影響する可能性があるため注意が必要です。

4. 親フローと子フロー連携のトラブル

子フロー単体では動作するのに、親フローから呼び出すと失敗するケースがあります。この場合、親フローの「子フローの実行」アクションの設定を確認してください。

4.1 実行モードの確認

親フローの「子フローの実行」アクションには、実行モードとして「同期的」と「非同期的」があります。同期的に実行する場合、子フローが完了するまで親フローが待機しますが、非同期的な場合は待機しません。想定した順序で処理が進まない場合、モードが間違っていないか確認してください。設定はアクションのプロパティから変更できます。

4.2 入力パラメータの不一致

親フローから子フローに渡す入力パラメータの型や値が誤っていると、子フローがエラーになります。特に、必須パラメータが空の場合や、データ型が異なる(文字列を数値に渡そうとしているなど)場合に問題が発生します。子フローの定義を再度確認し、正しいパラメータを渡しているかチェックしてください。

5. 具体的な失敗パターンと対処法

実際に現場でよく遭遇する失敗パターンを3つ紹介します。

  • パターン1:子フローのテストは成功するが、親フローから呼び出せない
    原因:子フローの所有者に親フロー実行ユーザーが含まれていない。対処:上記の所有者追加手順を実施。
  • パターン2:接続が「期限切れ」または「無効」と表示される
    原因:パスワード変更やアカウントの利用停止により接続が切れている。対処:接続を更新するか、新しい接続を作成し直す。古い接続は削除しないよう注意。
  • パターン3:子フロー編集画面で「接続参照が見つかりません」とエラーが出る
    原因:接続参照が削除されたか、環境が変わった。対処:ソリューション内で接続参照が存在するか確認し、存在すれば再リンク。なければ作成する。

6. 管理者に確認すべき情報

上記の手順で解決しない場合、Power Platform管理者に以下の情報を伝えてください。

  • 子フローの名前とID(フローの詳細画面のURLから確認できます)
  • エラーメッセージのスクリーンショット、または実行履歴の詳細
  • 親フローと子フローの所有者一覧
  • 使用しているコネクタの種類と、接続参照の設定状況
  • フローが含まれているソリューション名(該当する場合)

管理者はこれらの情報をもとに、テナントレベルのポリシーやライセンス設定を確認できます。特に、コネクタの使用制限(データ損失防止ポリシー)が原因でブロックされているケースもあるため、そちらの確認も依頼してください。

7. よくある質問

Q1: 子フローの所有者を追加しようとしたら「アクセス権限がありません」と出ます。
A: 自分に編集権限がない可能性があります。フローの作成者または管理者に権限を付与してもらってください。

Q2: 子フローは動作するのに、親フローで「子フローが見つかりません」とエラーが出ます。
A: 親フローと子フローが異なる環境(Dev/Prod)に存在していませんか?同じ環境内にあることを確認してください。また、子フローが無効化されていないかもチェックしてください。

Q3: 接続を更新したら、他のフローが影響を受けました。
A: 接続は複数のフローで共有されている場合があります。影響範囲を事前に把握し、可能であれば専用の接続を作成することを検討してください。

8. まとめ

子フローが想定どおり進まない原因の多くは、接続の有効性と所有者の権限設定にあります。まずは子フロー単体のテストで切り分け、問題が接続側か所有者側かを特定してください。接続は定期的に更新され、所有者は適切なユーザーを含めることが重要です。管理者と連携しながら、再発防止策として接続参照の一元管理やフローのバックアップを検討することをお勧めします。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

ADVERTISEMENT