Power Automateで親フローから子フローを呼び出す設計は、ロジックの再利用や管理の効率化に役立ちます。しかし、会社のテナントやセキュリティポリシーが絡む環境では、予期せぬエラーでフローが止まってしまうことがあります。特に「子フローが見つからない」「アクセスが拒否された」といった問題は、原因が端末設定、アカウント権限、管理者側の制限のいずれにあるのか切り分けにくいものです。この記事では、会社のPCで安全に子フローを再設定する方法を、具体的な手順と失敗パターンを交えて解説します。管理者に依頼すべき内容や、自分で変更してはいけない設定についても触れますので、トラブル解決の道筋を明確にしてください。
【要点】この記事で確認すること
- 最初に見る場所: フロー実行履歴のエラーメッセージ、子フローのトリガー設定、共有設定の確認
- 切り分けの軸: 端末側(ブラウザキャッシュ・拡張機能)、アカウント側(ライセンス・アクセス権限)、管理設定側(DLPポリシー・テナント間アクセス)
- 注意点: 会社PCで環境設定やコネクタの承認を勝手に変更しない。管理者へ連絡すべき項目を明確にする。
ADVERTISEMENT
目次
子フローで発生しやすいエラーとその原因
Power Automateの子フローは、親フローから「子フローの実行」アクションで呼び出します。ここでよく遭遇するエラーは次の3つです。
- 「フローが見つかりません」エラー: 子フローのIDが親フロー内で正しく指定されていないか、子フローが削除・非公開になっている可能性があります。会社の環境では、ソリューション内に配置されていないと参照できない場合もあります。
- 「アクセスが拒否されました」エラー: 親フローを実行するアカウントに子フローへのアクセス権限が不足しています。子フローが共有されていない、または所有者のみ実行可能な設定になっていることが原因です。
- 「子フローの応答を解析できません」エラー: 子フローの出力スキーマが親フローと一致していない、または子フローがタイムアウト(2分)になった場合に発生します。データ型の不一致や子フロー内の処理遅延が原因です。
これらのエラーのうち、会社環境に特有なのは「アクセス拒否」です。多くの企業では、フローの共有範囲が制限されており、個人用マイフローとチームフローで権限管理が異なります。また、データ損失防止(DLP)ポリシーにより、特定のコネクタが制限されている場合もエラーの原因になります。
エラーメッセージから原因を特定する方法
フローの実行履歴からエラーメッセージを確認してください。Power Automateポータルで該当の親フローを開き、「実行」タブから失敗した実行を選択します。「詳細」セクションに表示されるエラーコードとメッセージが手がかりになります。例えば「フロー‘xxxx’へのアクセス権限がありません」と表示されれば、共有設定の問題です。「子フロー‘yyyy’のトリガーが見つかりません」なら、子フロー自体の公開状態やIDの誤りを疑います。
安全に子フローを再設定する手順
ここからは、会社のPCで安全に子フローを再設定する具体的な手順を説明します。注意点として、自分に管理者権限がない限り、環境設定やコネクタの追加は行わず、必ず管理者に依頼してください。
- 子フローの公開状態とIDを確認する
Power Automateポータルで子フローを開き、右上の「編集」→「トリガー」→「手動でフローをトリガーします」がオフになっている場合は、保存して公開します。フローIDはURL末尾の文字列です。親フローの「子フローの実行」アクションにそのIDが正しく設定されているか確認してください。 - 子フローを共有する(必要に応じて管理者に依頼)
子フローの「共有」ボタンから、親フローを実行するユーザーまたはグループを追加します。会社のポリシーで共有が制限されている場合は、IT管理者にテナント間のアクセス許可やセキュリティグループの追加を依頼してください。自分で共有を変更できるかどうかは、フローの所有者であるか、共同所有者として追加されているかに依存します。 - 親フロー内の「子フローの実行」アクションを再設定する
親フローを編集し、「子フローの実行」アクションを削除して再度追加します。このとき、子フローがドロップダウンリストに表示されなければ、アクセス権限の問題です。表示されたら選択し、入力パラメータを適切にマッピングします。出力を使用する場合は、後続のアクションで「出力」を参照するよう動的コンテンツを設定してください。 - 入力パラメータとデータ型を一致させる
子フローのトリガーで定義された入力パラメータのデータ型(文字列、整数、オブジェクトなど)と、親フローから渡す値の型が一致しているか確認します。特にJSONオブジェクトを渡す場合は、Parse JSONアクションで型変換が必要なことがあります。 - テスト実行と実行履歴の確認
親フローを保存し、テストデータを使って実行します。実行履歴で成功を確認したら、本番環境に適用します。このとき、同じエラーが再発する場合は、DLPポリシーやコネクタ制限の可能性を考慮し、管理者に連絡します。
状況別の原因と対応を比較する
子フローのトラブルは、エラーメッセージや発生状況によって原因が異なります。以下の表に、代表的なパターンと対応をまとめました。
| 症状 | 考えられる原因 | 自分で試せる対処 | 管理者へ依頼する内容 |
|---|---|---|---|
| 子フローが見つからない | 子フローIDの誤り、非公開、削除 | 子フローの公開状態とIDを再確認し、親フローに正しいIDを指定 | 子フローがソリューション外にある場合は、ソリューションへの追加を依頼 |
| アクセス拒否 | 共有設定不足、DLPポリシーによる制限 | 子フローの共有設定に自身のアカウントが含まれているか確認 | DLPポリシーの緩和、または共有グループへの追加を依頼 |
| 子フローの応答解析エラー | 出力スキーマ不一致、タイムアウト | 子フローの出力をシンプルにし、タイムアウトの回避策として非同期パターンを検討 | (通常は不要) |
| フロー実行が途中で停止 | コネクタの制限、APIのレート制限 | コネクタの接続を再承認、またはリトライポリシーを設定 | API利用制限の引き上げや、Privileged Access Managementの設定変更を依頼 |
失敗パターンとその回避方法
会社環境で陥りやすい失敗例を3つ紹介します。これらは実際に問い合わせが多い事例です。
失敗1:子フローを個人用マイフローに作成してしまった
個人用マイフロー(自分だけがアクセス可能)に子フローを作成し、それをチームで共有しようとすると、アクセス拒否が発生します。回避策として、最初からソリューション内に子フローを作成し、適切な共有範囲を設定してください。既に個人用マイフローで作成してしまった場合は、ソリューションに移動させるか、別のフローとしてコピーします。この作業はフロー所有者のみ可能です。
失敗2:入力パラメータに複合型を渡した際に型変換を忘れる
親フローから子フローにJSONオブジェクトを渡す場合、子フローのトリガーで適切なデータ型が定義されていないとエラーになります。例えば、子フローの入力パラメータが「文字列」型なのに、親フローから「オブジェクト」を渡すと「無効なテンプレート」エラーが出ます。この場合は、親フローで「Compose」アクションなどを使って文字列に変換してから渡すか、子フローの入力を「オブジェクト」型に変更します。
失敗3:子フローの出力を複数アクションで再利用する際にスコープがずれる
子フローの出力は「body(‘子フロー名’)」で参照できますが、親フロー内でループや条件分岐の中に入れると参照できなくなることがあります。この問題は、子フローの出力を変数に格納するか、「Apply to each」の中で直接参照しないように設計します。また、子フローから複数の値を返す場合は、JSONオブジェクトとして一括で返すと扱いやすくなります。
管理者に確認すべきポイント
自分で解決できない場合、IT管理者に以下の情報を伝えると迅速な対応が期待できます。
- エラーの完全なメッセージとスクリーンショット: フロー実行履歴のエラー詳細を共有します。特にエラーコードやフローIDが重要です。
- 子フローと親フローのID、および環境名: どの環境で発生しているかを特定できるようにします。
- 使用しているコネクタの一覧: DLPポリシーで制限されているコネクタがないか確認を依頼します。
- 自分が所有するフローと共有されたフローの区別: 子フローが自分の所有か、他者から共有されたものかを伝えます。
管理者側では、Power Platform管理センターからDLPポリシーの確認、テナント間のアクセス設定、またはフローの監査ログを調査できます。「Privileged Access Management」が有効な環境では、追加の承認が必要な場合もあります。
よくある質問(FAQ)
Q1. 子フローを呼び出すときに「このフローはご利用いただけません」と表示されます。原因は何ですか?
A. 子フローが無効化されているか、公開されていない可能性があります。子フローの設定画面で「有効」になっているか確認してください。また、フローがソリューションに属していない場合、テナント全体で共有されていないこともあります。
Q2. 子フローのトリガーに「手動でフローをトリガーします」しか選択肢がありません。これで正しいですか?
A. その通りです。子フローは親フローから呼び出されるために、トリガーは「手動でフローをトリガーします」を選びます。それ以外のトリガー(メールの受信時など)にすると、親フローからの呼び出しができません。
Q3. 子フローを変更したら、親フローに自動的に反映されますか?
A. いいえ、子フローを編集して保存・公開しても、親フロー内の「子フローの実行」アクションは自動更新されません。親フローを編集して、該当アクションを削除し再度追加することで最新のスキーマに更新できます。ただし、コンテンツ(値)は動的に渡されるため、子フローのロジック変更は即座に反映されます。
Q4. 会社のポリシーでフローの共有が制限されています。どうすれば良いですか?
A. IT管理者に連絡し、子フローを「環境全体」または特定のセキュリティグループと共有できるように設定を依頼してください。また、ソリューションを使用することで、管理者が一元的に管理できるようになります。
まとめ
子フローでつまずいたときは、まずエラーメッセージの内容と実行履歴を確認し、原因を特定することが大切です。会社環境では共有設定やDLPポリシーが障壁になることが多いため、無理に自分で変更しようとせず、管理者に適切な情報を伝えて依頼しましょう。本記事で紹介した手順を参考に、フローの再設定を安全に行ってください。また、トラブルを未然に防ぐために、子フローはソリューションで管理し、データ型の一致を意識した設計を心がけることをおすすめします。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【Teams】画面共有時に「音声」も共有する方法!音が流れない時の設定手順
