アプリ開発の調査にかかる
時間を削減したい
内製化支援サービス
アプリを自分たちで
作成できるようになりたい
DX人材育成プログラム
プロに開発を依頼したい
アプリ開発導入支援サービス
SharePoint デザイン拡張サービス
X-SP Style
モダン化から運用管理までサポート
移行・モダン化コンサルティング
こんにちは。アーティサン株式会社の小刀稱(ことね)です。
Power Automateは、コーディングの知識がなくともお手軽に業務の自動化を行うことができる非常に有用なツールです。
しかし、誰でも簡単に始めることができるといえど、そこにはお作法が存在します。
お作法を守らずに作成すると、「他の人がメンテナンスできない」や「修正時のコストが大きい」といった問題が発生します。
そこで、Power Automateに関する案件を数多く対応してきた弊社が、現在までに蓄積した「Power Automate設計時のノウハウ」について紹介します。
本記事を読んでいただくことで、Power Automateを扱う際の「やるべきこと・やってはいけないこと」を知り、よりメンテナンス性の高いフローを作るコツを掴めるかと思います。
内容としては、既にPower Automateでフローを作成したことがある方に向けた記事です。 また、これからPower Automateを作成したい方も、事前に一読していただくことをお勧めします。
Power Automate初心者の方は、以下の記事も参考にしてください。 Power AutomateでExcelデータをSharePointにインポートするために考えること(第1回)
第3回目の今回は「トリガーの後には、データを取得するアクションを追加する」という内容についてお伝えしていきます。
アンチ・パターン(トリガーで得た動的コンテンツをそのまま後続アクションで使用)
最初にNG例について紹介します。
下記のPower Automateは「SharePointリストに項目が作成されたら、その情報をメールにて通知する」フローです。
トリガー(「アイテムが作成または変更されたとき」)で得た動的コンテンツ(toAddress Email・mailTitle・mailBody)を、後続アクション(「メールの送信(V2)」)でそのまま使用しています。
一見、問題のないフローに見えますが、トリガーで得た動的コンテンツを後続アクションで使用している場合、
トリガーを削除すると後続アクションの動的コンテンツも全て削除されてしまいます。
以下は、先程のフローからトリガーを削除した際の画像です。
「アイテムが作成または変更されたとき」アクションの削除に伴い、「メールの送信(V2)」アクションで使用されていたtoAddress EmailmailTitlemailBodyも削除されていることがわかると思います。
フローを作成していくと、トリガーを変更することは多々あります。
このままでは、トリガーを変更するたびに後続アクションの動的コンテンツを再設定する必要があります。
これでは修正コストがかかるだけでなく、設定ミスにも繋がるため、おすすめできません。
では、どのようにすれば修正コストを抑え、設定ミスの危険を減らせるでしょうか。
以下では、その対応策についてお伝えてします。
ベスト・プラクティス(トリガーの後に、データを取得するアクションを追加)
修正コストを小さくするためには、トリガーの後に別途「データを取得するアクション」を追加します。 そして、後続アクションは、データを取得するアクションの値を参照するように修正します。
※データを取得するアクションとは「項目の取得」アクションや「ファイルのプロパティの取得」アクションなどを指します。
修正したフローを以下に示します。
こちらのフローは、トリガーの後に「項目の取得」アクションを追加し、トリガーで得たID値から、対象のレコード情報を取得しています。
「メールの送信」アクションでは、「項目の取得」アクションで取得した動的コンテンツを設定しています。
このように修正することで、トリガーを変更した場合、「項目の修正」アクションのID値のみを更新するだけで修正が完了し、「メールの送信」アクションへの影響はありません。
よって、トリガーの変更に関わる修正コストを下げることができます。
さいごに
Power Automateを作成していく際は、事前に詳細な設計をしてから構築していくのではなく、トライ&エラーを繰り返していきながら、よりよいフローへ修正するという流れが多いです。
その際修正コストが大きいと、修正にかかる時間が長くなることや、設定ミスも多く発生してしまいます。
このような問題を避けるためにも、修正コストが小さいフローを作成することは重要です。
今回ご紹介した内容も、とても有用な内容ですので、是非覚えていただきたいです!
【このシリーズの過去回一覧】
-
Power Automateのベストプラクティス・アンチパターン(1)
【アクション名は変更すべき?】 -
Power Automateのベストプラクティス・アンチパターン(2)
【変数を用いて類似アクションを共通化!】 -
Power Automateのベストプラクティス・アンチパターン(3)
【トリガーで得た動的コンテンツをそのまま使用するのはNG!】 -
Power Automateのベストプラクティス・アンチパターン(4)
【アクションの入れ子を回避】 -
Power Automateのベストプラクティス・アンチパターン(5)
【Apply to each×コンカレンシー×変数の設定はNG】 -
Power Automateのベストプラクティス・アンチパターン(6)
【Power Automate上でExcelファイルを編集する際の注意点】 -
Power Automateのベストプラクティス・アンチパターン(7)【エラー発生時、管理者へ通知する方法】
【こちらも合わせて読みたい】
小刀稱知哉
大分県出身(温泉大好き)、現在は東京都在住
1990年生まれ
30才でメーカーの技術営業からIT業界にジョブチェンジ!!!
趣味は読書
主にMicrosoftのローコード(SharePoint・Power Platform)に関するに関する営業活動や設計、開発などを担当しております!
(最近はCopilot Studioについても勉強中)
持ってる資格はPL-200/PL-300/PL-400/PL-600/MS-700/AZ-104/AZ-305/SC-200