20250222_Power Automateクラウドフロー開発におけるエラーとの向き合い方

6.5K Views

February 22, 25

スライド概要

Global Power Platform Bootcamp 2025 in Japan 登壇資料です
https://connpass.com/event/342780/

profile-image

Microsoft 365、Power Platrform、PowerShellについて調べたことや検証したこと

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

GLOBAL POWER PLATFORM BOOTCAMP 2025 Japan Power Automateクラウドフロー開発に おけるエラーとの向き合い方 わたるふ #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

2.

• 名前: 活動場所 • わたるふ ブログ (主な活動場所) ルドルフもわたるふもいろいろあってな https://wataruf.hatenablog.com • マシュマロ (フローについて質問を受け付けています) https://marshmallow- • • こんなひとです qa.com/wataruf01?utm_medium=url_text&utm_source=promotion • SharePoint Server 2007 からお仕事でMicrosoft 製品に関わる • PowerShell が好き • Microsoft Teams が好き • Power Automate が特に好き • 過去の登壇資料 https://www.docswell.com/user/wataruf01 • 活動内容 https://twitter.com/wataruf01 • • 調査・検証したことなどをブログで解説しています • 開発したもの (Power Automate のフロー、PowerShellのソースコード) をGitHubで公開しています X(旧 Twitter) GitHub https://github.com/wataruf01 • Microsoft MVP プロフィールページ https://mvp.microsoft.com/jajp/PublicProfile/5005227?fullName=Wataru%20Fukai Microsoft MVP for Business Applications (2023/4~) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

3.

注意事項 • 本資料の内容は、私個人の見解を含んでおります。 • 内容に誤りや不明点がございましたら、ご指摘いただけますと幸いです。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

4.

はじめに 本セッション終了後に登壇資料を公開する予定です。 そのため、聞き逃したところや詳しく見直したい部分がでてきましたら 後ほど登壇資料でご覧ください。 Global Power Platform Bootcamp 2025 in Japan よろしくお願いいたします 【資料一覧】ページ https://connpass.com/event/342780/presentation/ #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

5.

今回のお話 Power Automate クラウドフロー開発における エラーとの向き合い方 Power Automate クラウドフロー開発 におけるエラーの対応方法を (主に私の経験則をもとに)まとめたものです #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

6.

テーマは2つ • 【テーマ1】 クラウドフロー開発時におけるエラー原因の切り分けかた • 【テーマ2】 クラウドフロー実行時におけるエラーメッセージの読み解きかた #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

7.

【テーマ1】 クラウドフロー開発時におけるエラー原因の 切り分けかた #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

8.

【テーマ1】の概要 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

9.

【テーマ1】の概要 • Power Automateのクラウドフローにおけるエラー発生原因の切り分け方法について解説します • 本資料においては「エラー」とは「システムが期待通りでない動作をした」こと全般を指しています。 システム上は処理成功していても動作が期待通りでないケースもエラーとしています。 • 【注意】 本資料における定義です。一般的な共通認識であるという意図ではないです。 • 今回の資料は題材となるケースを提示したうえで原因の切り分けを行う紙芝居的な内容にしています エラー発生 → 原因切り分け → 別のエラーが発生 → 原因切り分け → 成功! #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

10.

今回の題材 (= 解説のためのサンプル事例) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

11.

今回の題材 Microsoft Forms を使ったアンケートの回答を Power Automate を使ってSharePointリストに書き込む • 入力項目の種類は「選択肢(複数選択が可能)」 Forms で回答があったら SharePointリストのアイテムを 投稿する 補足です。 「SharePointリスト」 と「Microsoft Lists」は厳密には違う機能ですが 今回は便宜上、「SharePointリスト」と呼びます。 (`・ω・´) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

12.

アイテムを登録するフローはこんな感じ ① 「アンケートの回答内容を取得するアクション」の動的コンテンツを、 ② 「SharePointリストにアイテムを登録するアクションの入力項目」に配置します。 ① 左図の設定では今回やりたいことは成功しません。 (次スライド以降で説明します) 左図を見て、 どこの設定が誤っているか予想をたててから ② 次スライド以降に進んでください。 (`・ω・´) この図の設定は何かがおかしい。。。(゜-゜) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

13.

では実行してみましょう アンケートに回答を入力して「送信」ボタンを押下します。 「送信」が押されることで トリガーが実行されて フローによるSharePointリストへの投稿が 行われます (`・ω・´) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

14.

うまくいきませんでした(予定調和) 投稿は行われましたが、下図の通り選択肢の項目が正しく登録されませんでした • フォームで選択した値が、配列のようなテキストの形式で登録されたことが分かります 期待した結果と異なる。。 期待した結果は下図の通り さて、原因を突き止めて修正するために どう手をつけましょうか? (`・ω・´)シャキーン #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

15.

エラー原因の切り分けのポイント #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

16.

そもそもの話 フローの基本パターンは下図の通り。 引用元: 20230520_Power Automateによる配列操作でハマったこと・解決した方法 | ドクセル #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

17.

前述の基本パターンを、今回エラーが発生している箇所に当てはめると • 「先に実行された処理の出力」 とは 「応答の詳細を取得する」アクションにある入力項目「今日の夕飯は何がいい?」にて 回答者によって選択された値のことである • 「後続のアクションの入力」 とは 「項目の作成」アクションにある選択肢項目「今日の夕飯は何がいい?」のことである #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

18.

確認するポイント 確認するポイントは3つあります 1. 「先に実行された処理の出力」 が提示するデータの型・形式・値は何か? 2. 「後続のアクションの入力」が求めるデータの型・形式・値は何か? 3. 「1.」と「2.」のギャップを埋めるために何が必要か? #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

19.

【確認ポイント その1】 「先に実行された処理の出力」 が提示するデータの 型・形式・値は何か? #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

20.

「先に実行された処理の出力」を確認 「アンケートの回答内容を取得するアクション」の下に「作成」アクションを配置します。 「作成」アクションに「後続のアクションの入力」で使いたい動的コンテンツを配置して、フローを実行します。 これで情報元の値が下記の形式であることがわかりました。 形式: [“(回答で選択された値)”,” (回答で選択された値)”,,,] フローを実行 (`・ω・´) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

21.

【確認ポイント その2】 「後続のアクションの入力」 が求めるデータの 型・形式・値は何か? #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

22.

アイテムの登録先であるSharePointリストに手動でアイテムを登録 登録できました。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

23.

フローを使ってアイテムを取得 フローをひとつ新しく作成してSharePointリストのアイテムを取得します。 今回のケースでは クリックして 取得結果を確認します。 「複数の項目の取得」アクションを使い ます。 フローを実行 (`・ω・´) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

24.

「登録が成功しているアイテム」と「登録が失敗しているアイテム」を比較する 「該当の選択肢項目にあるデータの形式が異なることがわかります。 ▼登録が成功しているアイテム 形式が”配列”であることが分かります。 配列に3つの要素({ }で囲まれている箇所)があり、 それぞれの要素にあるValueという名前のプロパティに 選択肢項目のテキストが存在することが見てわかります。 (`・ω・´) ▼登録が失敗しているアイテム それに対して、こちらは要素がひとつだけの配列であり そのValueプロパティに、選択肢項目がはいってます。 データの形式が正しくないことが分かります。 (= これが現象の発生原因であると推測できる) (´・ω・`) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

25.

【確認ポイント その3】 「確認ポイントその1.」と「その2.」の ギャップを埋めるために何が必要か? #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

26.

確認ポイント その1 と その2 で得た情報を整理 ここまでの章で得た情報を整理すると下記の通りになります。 確認ポイントその2で得た情報 「後続のアクションの入力」が求めるデータの形式はこれ! 確認ポイントその1で得た情報 「先に実行された処理の出力」 が提示するデータはこれ! 形式 形式 [ { “Value”: “(回答で選択された値)”, “Value”: “(回答で選択された値)”, ,,, [“(回答で選択された値)”,” (回答で選択された値)”,,,] 変換! } ] #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

27.

確認ポイント その3 でやること このギャップを埋めるために関数またはアクションを使って変換を行います 確認ポイントその2で得た情報 「後続のアクションの入力」が求めるデータの形式はこれ! 確認ポイントその1で得た情報 「先に実行された処理の出力」 が提示するデータはこれ! 形式 形式 [ { “Value”: “(回答で選択された値)”, “Value”: “(回答で選択された値)”, ,,, [“(回答で選択された値)”,” (回答で選択された値)”,,,] 変換! } ] #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

28.

配列をつくるといったら「選択」アクション 「選択」アクションを使って アンケートの回答をValueプロパティ付きの配列に変換しましょう。 参考: Selectアクションで配列を変換する MoreBeerMorePower #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

29.

選択アクションの出力を「項目の作成」アクションに配置 選択アクションを使った配列の作成が成功したので、 この配列を「項目の作成」アクションに配置します。 • 配置できたらフローを実行しましょう フローの実行が成功! #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

30.

でもダメ!! フロー側は実行成功しましたが SharePointリスト側は期待通りアイテム登録がされません なんでだよぉぉぉおおおお ヽ(`Д´#)ノ ムキー!! #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

31.

再度アイテム取得を実行 再度、SharePointリストに登録されているアイテムを取得してみましょう。 登録に失敗しているアイテムを見ると、どのように正しくないのかが分かります。 アイテムの取得を実 行 登録に失敗しているアイテムの内容を確認 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

32.

仮説をたてる 取得したデータをもとに現象発生の原因について仮説を立てます。 期待する結果 • 配列が持つ要素の個数は、フォームで選択した選択肢の個数と同じ(つまり今回は3つ) ここでのポイントは 実際の結果 • 配列の要素はひとつ • その要素のValueプロパティに、フローが渡したデータが格納されてしまっている 「先に実行された処理の出力」 が 正しいことは確認が済んでいるため、 疑わしいのがアイテム登録アクション側である ⇒ つまり、アイテム登録に関わる何らかの仕様・設定によって 下記の2つが指定されている状況だと推測できます。 と原因の絞り込みができていることです。 (`・ω・´) ・「アクションが登録するアイテム数がひとつである」 ・「フローが渡したデータをその要素のValueに格納する」 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

33.

「項目の作成」アクションの設定を確認する 前スライドの通り、アイテムの登録に関わる何らかの仕様・設定が の中身 今回の失敗の理由であると推測できます。 [ { • 「項目の作成」アクションの設定を見ると "Value": "和食" }, { "Value": "洋食" }, { "Value": "中華" } 入力データの指定方法にモードの切り替えがあることが分かります。 ] クリックして モードを切り替える Valueプロパティが既定でセットされている どうやらこれが怪しい (‘ω’) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

34.

モードを切り替えて、動的コンテンツをいれなおして、フローを実行 設定を直して改めてフローを実行します。 既定でセットされていたValueプロパティと括弧を消して、 選択アクションの出力を配置します。 さあ、これで今度はうまくいくか? (´・ω・` ;) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

35.

できた!! 今度は期待通りアイテムが登録されました。 できた!! (‘ω’) うおぉぉぉおおおお #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

36.

【テーマ1】のまとめ エラー発生原因の切り分けをするときに大事なこと #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

37.

【テーマ1】のまとめ エラー発生原因の切り分けをするときに大事なこと • 期待通りの動作にならなかったときに、闇雲に設定変更と動作確認を繰り返さないこと • エラーメッセージを必ず読むこと • エラーの発生原因だけでなく解決方法が記載されていることが多いです • 入力と出力の中身を確認すること • アクションが渡しているデータ、受け取っているデータが何であるかを見ること ※ 指差し確認をするイメージです。 m9( ゚Д゚) • 仮説を立てて検証すること • かならず仮説を立てる • 仮説が正しいかどうかを確認する • 仮説が正しくなかったら、先に実施した仮説検証の結果をもとにして仮説をたてなおす #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

38.

【テーマ2】 クラウドフロー実行時におけるエラーメッセー ジの読み解きかた #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

39.

【テーマ2】の概要 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

40.

【テーマ2】の概要 • Power Automateのクラウドフローで「あるある」のエラーと その対処方法を解説します • 特に、エラーメッセージの「読み解きかた」について丁寧めに解説をし ます #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

41.

関数における引数の個数が正しくない #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

42.

関数における引数の個数が正しくない 1/8 • 関数に渡す引数の個数を誤るとエラーになります • 引数とは「インプット情報として関数に渡すデータ」です。 • 例 • add関数は「2つの引数(数値)を合算した数値を出力する関数」です。 この関数に必要な引数の個数は2つです。引数の個数を2つ以外にするとエラーになります。 • 下図はadd関数の引数の個数が誤っていることにより、エラーが発生していることを表しています。 • 次スライド以降で、エラーメッセージの読み解きかたを示します。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

43.

関数における引数の個数が正しくない 2/8 エラーメッセージを箇条書きにしたものが下記の通りです。(文章の中身や順番は元のままです) • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

44.

関数における引数の個数が正しくない 3/8 「:」の後に続く文はその前の文の具体的な説明や詳細を表している場合が多いです。 そのため、「:」直後の文はインデントを下げることで情報を見やすく整理することがコツです。 • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

45.

関数における引数の個数が正しくない 4/8 エラーメッセージの構造はこうなっています。 エラーの種類によって若干異なる場合がありますが、基本的にはこの構造で示されることが多いです。 • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • エラーの種類 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. エラーの発生箇所 エラー発生の理由 参考情報 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

46.

関数における引数の個数が正しくない 5/8 エラーの種類はエラーが発生した原因の大まかな種類を表しています。 エラーの種類によってはこの記載だけで原因を特定することができます。 ※ですが、「InvalidTemplate」は汎用的なメッセージでありこれだけは情報が不足しています • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • エラーの種類 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. エラーの発生箇所 エラー発生の理由 参考情報 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

47.

関数における引数の個数が正しくない 6/8 エラーの発生箇所はどのアクションでエラーが発生したかを示します。 例として下記のメッセージからは「作成」という名前のアクションに対する入力情報でエラーが発生したことがわかります。 ※ 「inputs at line ‘0’ and column ‘0’」はエラーの発生位置を表していますが、参考情報としては使いづらいので無視してよいです。(‘ω’) • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • エラーの種類 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. エラーの発生箇所 エラー発生の理由 参考情報 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

48.

関数における引数の個数が正しくない 7/8 エラーの発生理由はエラーがなぜ発生したのかという理由と本来どうあるべきか(= どうすれば正常に処理が進むか)を表しています。 下記の例では「add関数は2つの数値の引数が必要である」と「今回の実行では引数が1つだった」ことを表しています。 • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • エラーの種類 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. エラーの発生箇所 エラー発生の理由 参考情報 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

49.

関数における引数の個数が正しくない 8/8 参考情報はエラーの原因切り分けや解決の参考として使えそうな情報を表しています。 下記の例ではadd関数の解説ページのURLが示されています。 • InvalidTemplate. • Unable to process template language expressions in action '作成' inputs at line '0' and column '0’: • • エラーの種類 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#add for usage details.'. エラーの発生箇所 エラー発生の理由 参考情報 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

50.

ちなみに:エラーメッセージでよく出てくる「template」という言葉について • Power Automate にはエラーメッセージで「template」という言葉がよくでてきます • InvalidTemplate • Unable to process template language expressions ~ • 'The template language function 'add' expects two numeric parameters: • Power Automate のアクションやフロー全体は、テンプレート言語(template language)を基に構築されて います。このテンプレート言語はJSON 構造と式(Expression)を組み合わせたものです。 • Power Automate はフローを実行する際に「テンプレート言語エンジン」を使用してアクションや条件式を解 析・評価します。このエンジンがエラーを検出すると「InvalidTemplate」というエラーを示します。 設計不備・実装不備によるエラーの多くは「InvalidTemplate」に分類されます。 そのため、「InvalidTemplate」であるという情報だけでは何のエラーかを特定することはできません。 (´・ω・`) #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

51.

さらにちなみに:エラーメッセージで使われる「動詞」につい て • エラーメッセージで使われる「動詞」はパターンが決まっています。 覚えておくとエラーメッセージを読み解きやすいです。 • 下記のエラーメッセージの場合は「expect(要求する)」と「invoke with(~を使って呼び出す・実行する)」が該当します。 • 'The template language function 'add' expects two numeric parameters: • the first summand as the first parameter and the seccond summand as the second parameter. • The function was invoked with '1' parameter(s). • expect(要求する) はアクション・関数がパラメータを”要求する”ことを表します。 • つまり、expect が含まれる文章では「ただしく動作するために必要なパラメータが何か」という エラーの解決方法が示されることが多いです。 • invoke with(~を使って呼び出す・実行する)は “アクション・関数が呼び出されるときにどんな引数が使われたか”を表します。 • つまり、invoke withが含まれる文章ではエラーが起きた理由が示されることが多いです。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

52.

データ型やデータ形式が正しくない #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

53.

データ型やデータ形式が正しくない 1/6 • アクション・関数に渡す引数のデータ型やデータ形式が正しくないとエラーになります • データ型 … データの性質や種類の定義(例:整数、文字列、日付) • データ形式 … データの表現方法や構造の定義(例:XML、JSON) この図はアクションに渡される日付の形式が誤っていることにより、エラーが発生していることを表しています。 次スライド以降で読み解いていきます。 (`・ω・´)シャキーン #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

54.

データ型やデータ形式が正しくない 2/6 エラーメッセージを箇条書きにしたものが下記の通りです。(文章の中身や順番は元のままです) • InvalidTemplate. • Unable to process template language expressions for action '時間への追加' at line '0' and column '0’: • 'In function 'addtotime', the value provided for date time string ''2024/11/20'' was not valid. • The datetime string must match ISO 8601 format.'. #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

55.

データ型やデータ形式が正しくない 3/6 エラーメッセージの構造はこうなっています。先ほどの「関数における引数の個数が正しくない」のケースと比較すると ”参考情報”がこちらには無いだけで他の部分は同じです。 • InvalidTemplate. エラーの種 類 • Unable to process template language expressions for action '時間への追加' at line '0' and column '0’: エラーの発生箇所 • 'In function 'addtotime', the value provided for date time string ''2024/11/20'' was not valid. • The datetime string must match ISO 8601 format.'. エラー発生の理由 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

56.

データ型やデータ形式が正しくない 4/6 エラーの種類は「InvalidTemplate」です。前述の通り、これは汎用的なメッセージです。 エラー原因の切り分けにはあまり役に立たないです。 • InvalidTemplate. エラーの種 類 • Unable to process template language expressions for action '時間への追加' at line '0' and column '0’: エラーの発生箇所 • 'In function 'addtotime', the value provided for date time string ''2024/11/20'' was not valid. • The datetime string must match ISO 8601 format.'. エラー発生の理由 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

57.

データ型やデータ形式が正しくない 5/6 エラーの発生箇所では「時間への追加」という名前のアクションでエラーが発生したことが示されています。 • InvalidTemplate. エラーの種 類 • Unable to process template language expressions for action '時間への追加' at line '0' and column '0’: エラーの発生箇所 • 'In function 'addtotime', the value provided for date time string ''2024/11/20'' was not valid. • The datetime string must match ISO 8601 format.'. エラー発生の理由 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

58.

データ型やデータ形式が正しくない 6/6 エラー発生の理由でエラーが起きた具体的な理由と本来必要なデータ形式が示されています。 • アクションに対して渡された“2024/11/20”という文字列(string)が正しくない • 日時を示す文字列(string)はISO 8601形式であることが必要である • InvalidTemplate. エラーの種 類 • Unable to process template language expressions for action '時間への追加' at line '0' and column '0’: エラーの発生箇所 • 'In function 'addtotime', the value provided for date time string ''2024/11/20'' was not valid. • The datetime string must match ISO 8601 format.'. エラー発生の理由 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

59.

解決 エラーメッセージで示された内容をもとに入力情報を修正すると エラーを回避することができます #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

60.

コネクタの使用で発生するエラー #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

61.

コネクタの使用で発生するエラー 1/3 • コネクタとはさまざまなサービスやアプリケーションとの間でデータをやり取 りするためのアクションです。 • 例: SharePoint、Outlook、Microsoft Teams、BOX • コネクタに渡された入力情報が正しくない場合は 通常、コネクタの接続先であるアプリケーションがエラーを返します • アプリケーションから渡されたエラー内容がアクションから出力されます #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

62.

コネクタの使用で発生するエラー 2/3 下図では「メールの送信」アクションを、宛先を空白にした状態で実行 した際の動作を表しています。 アプリケーションから渡されたエラー内容が アクションから出力されます (`・ω・´)シャキーン #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

63.

コネクタの使用で発生するエラー 3/3 出力されたメッセージからエラーの原因を特定することができます • ステータスコード • ステータスコードとは、サーバーがクライアントのリクエストに対して結果を通知する3桁の番号です。 • この番号が何番かで、エラーの原因をおおまかに把握することができます • 例: • 200 は成功 • 400番台 はクライアント側が原因 (= Power Automate でいうとアクションの設定になにか誤りがある可能性がある) • 500番台 はサーバー側が原因 (= 原因がクライアント側ではなくサーバー側にある。Power Automate 側の設定はせいではない可能性あり) • 出力されたメッセージ • 上図の例では “Parameter ‘To’ cannot be null or empty.“ が該当。 → 日本語訳: To (宛先)をnullまたは空白にすることはできません #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

64.

自己参照の禁止によるエラー #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

65.

自己参照の禁止によるエラー 1/3 これは「同じ変数を同じアクションの入力と出力に同時に使うことはできない」 という制約によるエラーです。 ↑ 「変数の設定」アクションの 入力と出力に同じ変数(名前:sum)を 使おうとしている。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

66.

自己参照の禁止によるエラー 2/3 • 自己参照( Self reference )が発生しているフローを保存しようとすると エラーが表示され保存を行うことができません • エラー内容 • The inputs of workflow run action '変数の設定' of type 'SetVariable' are not valid. Self reference is not supported when updating the value of variable 'sum’ #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

67.

自己参照の禁止によるエラー 3/3 • 解決方法 • 同じアクションで同じ変数を使うので はなく、ひとつ別のアクションを挟ん 計算結果 であげれば自己参照を回避できます • 左図では「作成」アクションを 途中の計算結果を一時的に保持する 目的で使用しています。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

68.

【テーマ2】のまとめ エラーメッセージを読み解くときに大事なこと #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

69.

【テーマ2】のまとめ エラーメッセージを読み解くときに大事なこと • エラーメッセージを読むこと • そもそも読むことが大事です。 • (【テーマ2】のまとめの繰り返しになりますが) エラーの発生原因だけでなく解決方法が記載されていることが多いです #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP

70.

Power AutomateのフローやTIPSをブログで公開しています • 興味をもっていただけたかたは下記のURLからいらしてください https://wataruf.hatenablog.com #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP 70

71.

フローに関する質問を受け付けています • 匿名でのご質問も可です。 • X(旧:Twitter)にマシュマロのリンクを公開しています。 • 回答内容はブログで投稿します。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP 71

72.

最後に 今回はPower Automate クラウドフロー開発における エラーの対応方法を主に私の経験則をもとにまとめてみました。 これがどなたかのお役に立てれば幸いです。 フィードバック・ご意見をいただけると とても嬉しいです。 #GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP 72

73.

#GlobalPowerPlatformBootcamp #GPPB2025 #GPPB2025JP 73