1K Views
February 16, 23
スライド概要
RPACommunity でLTをさせていただいたときの登壇資料です。
https://kimamani.connpass.com/event/271638/
Microsoft 365、Power Platrform、PowerShellについて調べたことや検証したこと
LT#3 【Power Automate】 分岐アクションの 組みかたに関する 私の 経験則 【自動化やIT活用ネタ】ライトニングトーク大会~初参加者大歓迎~ 2023/2/16 1
自己紹介 • 名前: わたるふ • Twitter: @wataruf01 (凍結解除の申請中) • ブログ: ルドルフもわたるふもいろいろあってな ・マシュマロ: wataruf01 • GitHub: wataruf01 • SharePoint Server 2007 からMicrosoft 製品に関わる • PowerShell が好き • Microsoft Teams が好き • 今はPower Automate に熱中 • 個人的に調べたことや検証したことなどをブログで公開しています 2
お知らせ Twitterのアカウント(@wataruf01)が凍結されました。 ただいま凍結解除の申請中です。 ブログを投稿した際のツイートもできない状態ですが ブログの投稿は続けています ルドルフもわたるふもいろいろあってな https://wataruf.hatenablog.com/ 3
よろしくおねがいします。 4
威嚇
今回のお話 • Power Automate でフローを作るときに私が大事にしているこ とのひとつを紹介します 6
今回の解説内容はブログで公開済みです 今回の解説を聞いていピンとこないところがありましたら、もと のブログも参照してください。 • 【Power Automate】【基本編】分岐アクションの組みかたに関する経験則 https://wataruf.hatenablog.com/entry/2023/01/08/000000 • 【Power Automate】【基本編】分岐アクションの組みかたに関する経験則 https://wataruf.hatenablog.com/entry/2023/01/09/195933 7
主旨 • フローを作成するうえで大切なこと • 保守性 (改修しやすさ) • 可読性 (理解しやすさ) 8
例題 1 (基本編) Power Automate で下記のフローを作成してください。 • トリガーは手動実行とする • 下記の2項目をトリガーの入力とする • 分岐A(種類:はい/いいえ) • 分岐B(種類:はい/いいえ) • 「分岐Aが‘はい’」 かつ 「分岐Bが ‘はい’ 」のときに「特定のアクション」を実行する • それぞれの分岐は「条件」アクションを使って実現すること (= if関数は使わないこと) 9
よくある(と思われる)条件アクションの組みかた 条件A このフローのどこに デメリットが 条件B あるでしょうか? 条件を満たしたときに 実行したいアクション 10
よくある条件アクションの組みかた のデメリット(その1) デメリット(その1) • 本来は依存関係が無い分岐アクションを入れ子にしてしまうと フローを改修する際の難易度を高くしてしまう ひとつめの デメリットは 「保守性の低さ」 11
よくある条件アクションの組みかた のデメリット(その2) 条件A 条件B 分岐のアクションを 閉じます 条件を満たしたときに 実行したいアクション すると … 12
よくある条件アクションの組みかた のデメリット(その2) デメリット (その2) • 分岐Aと依存関係が無い分岐Bが隠れてしまう • 「条件満たしたときに実行したいアクション」 が隠れてしまう ふたつめの デメリットは 「可読性の低さ」 13
改善例 内容 条件A • 分岐Aのアクション内から分岐Bを外に出した • 「実行したいアクション」を分岐アクションの 外に出した 条件B • それにともなって「実行したいアクション」を 実行したくない分岐である2箇所に「終了」アク ションを配置した • 分岐Aの「いいえ」分岐 • 分岐Bの「いいえ」分岐 依存関係がない アクションを 独立して配置することで 改修しやすく 条件を満たしたときに 実行したいアクション なりました 14
改善例 条件A 分岐アクションを 閉じた時に 条件B 主要なアクションが 隠れません 条件を満たしたときに 実行したいアクション 15
例題 2 (応用編) Power Automate で下記のフローを作成してください • トリガーは手動実行とする • 下記の3項目をトリガーの入力とする • 分岐A(種類:はい/いいえ) • 分岐B(種類:はい/いいえ) • 分岐C(種類:はい/いいえ) • 下記のいずれかの条件を満たすときに「特定のアクション」を実行する • 分岐Aが‘はい’、かつ、分岐Bが‘いいえ’ • 分岐A、分岐B、分岐Cがすべて‘はい’ • それぞれの分岐は「条件」アクションを使って実現すること (= if関数は使わないこと) 2022/9/7 16
よくある(と思われる)条件アクションの組みかた 条件A 条件B 基本編と同じやりかたで 条件C このフローも なおしてみましょう 条件を満たしたときに 実行したいアクション 17
改善例その1 内容 • 分岐Aのアクション内から分岐Bを外に出した • 「実行したいのアクション」も分岐アクショ ンの外に出した • それにともなって「実行したいアクション」 を実行したくない分岐である3箇所に「終 了」アクションを配置した • 分岐Aの「いいえ」分岐 • 分岐Cの「いいえ」分岐 条件Bのなかに 条件Cをはいれたまま にするのはなぜか、、? 条件を満たしたときに 実行したいアクション 次のスライドへ 18
改善例その1 ※注意 分岐BとCは依存関係があります。 そのため、分岐BとCの入れ子関係は保持して います。 条件を満たしたときに 実行したいアクション 19
改善例その1 条件A 条件B 条件を満たしたときに 実行したいアクション 条件Bに依存する 条件Cは分岐アクションを 閉じると隠れてしまいます 20
改善例その2 内容 • フローの最初に変数「処理実行フラグ」の宣言を配置 • 初期値は True • 分岐Aのアクション内から分岐Bを外に出した • 「実行したいアクション」を実行したくない分岐である 2箇所に「処理実行フラグをFalseに設定」アクションを 配置 • 分岐Aの「いいえ」分岐 • 分岐Cの「いいえ」分岐 • フローの最後で「処理実行フラグがTrueであるか判定す る」分岐を配置 • Trueであれば「実行したいアクション」を実行させ る これは フラグを使う方法 条件を満たしたときに 実行したいアクション です 21
改善例その2 条件アクションを 条件A 閉じても 主要なアクションが 条件B 隠れません 条件-処理実行フラ グ 22
主旨(再掲) • フローを作成するうえで大切なこと • 保守性 (改修しやすさ) • 可読性 (理解しやすさ) 23
フローに関するTIPSをブログで公開しています • 興味があるかたはブログの「TIPS」タグから参照ください https://wataruf.hatenablog.com/archive/category/TIPS 24
25