はじめに
Power Automate を活用してフローが増えてくると、特定の通知をどのフローが行っているのか、あるいは特定の処理がどのフローに含まれているのかを把握するのが難しくなってくるかと思います。
「この通知はどのフローから来た?」「この条件を変更したいけど、どのフローだっけ?」
といったシーンでタイトルや記憶を頼りにひとつひとつフローを開けて確認をする、、、といった作業をされている方も多いのではないでしょうか。
せっかくのPower Automate。検索作業も自動化しませんか?
本記事では、Power Automate の処理をPower Automate を使って検索する方法についてご紹介します。
Azure Logic Apps を使用されている方はぜひこちらの記事もご覧ください↓
フローの作り方
フローの全体像
フロー自体は比較的シンプルで、そんなに難しいアクションはありません。
ざっくりした流れは、 フローの一覧を取得 → フローの詳細を取得 → 検索したい文字列が含まれるか分岐 となります。
前半の詳細
- トリガーは
手動でフローをトリガーします
を選択します。
入力の追加
から、テキストを選択してください。これはトリガーする際に検索値を入力するために使用します。 -
管理者としてのフローの一覧を取得(V2)
アクションを追加し、検索したい環境を選択します。 -
変数を初期化する
アクションを追加し、適当な名前を付けてアレイを選択します。この変数は、検索結果のフロー名を格納するために使用します。
後半の詳細
-
フローの取得
アクションを追加し、フローを検索したい環境を選択しFlow欄には管理者としてのフローの一覧を取得(V2)のフロー名
を選択します。 -
条件
を追加し、「string(outputs('フローの取得'))
次の値を含む トリガーの入力
」を指定します。 - True に
配列変数に追加
を追加し、変数の初期化で設定した名前と、フローの表示名
を選択します。 - 最後に、変数の中身を可視化するために
作成
アクションに作成した変数を指定します。
「フローの取得」で取得したフローの内容はJSON形式となっているため、そのままでは検索が上手く機能しません。そのため、条件分岐のところではフローの取得結果を文字列に変換して比較しています。
実行&結果
トリガーの際に、検索したいテキストを入力してフローを実行します。今回は特定のメールアドレスを指定しました。
実行結果を確認し、フローの末尾にある「作成」を見ると、ヒットしたフローのタイトルが確認できます。今回は2件のフローが結果として出ました。
実際にそれぞれのフローを確認してみると、メールの宛先に指定していたり、メンショントークンを取得したりといったアクションに使用していることが分かりました。
○○を検索したい!
Teams チーム・チャネルを検索したい!
Teams チャネルやチームを検索する場合は、テキストではなくIDでの検索が必要となります。
実際のフローに行き、コードのプレビューを選択するとGroupIDやchannelIDが確認できますので、このIDを検索の際に入力してください。
接続を検索したい!
何かしらのアクションやテキストだけでなく、接続を検索したいという場合もあるかと思います。
このフローでは接続名での検索が出来ない為、接続を確認したい場合はUIから行くことをおすすめします。
Power Automateのページから「接続」→「この接続を使用するフロー」で、接続が使用されているフローを閲覧することが可能です。
おわりに
本記事では、Power Automateを使用し、自動的にフローの検索を行う方法をご紹介しました。
シンプルなフローで複数のフローの中から特定の条件にマッチするフローを見つけ出すことができます。日々多くのフローを管理し、悩まれている方にお役に立てば幸いです。