LoginSignup
18
11

More than 3 years have passed since last update.

Power Automateの裏側をみてみよう (2/2)

Posted at

前回

前回はPower AutomateのメニューにあるPeak codeの紹介と、トリガー・アクションの入力・出力をどうやって取り出すかを紹介しました。
前回:Power Automateの裏側をみてみよう! (1/2)

今回はもうひとつの「Settings」について、トリガー・アクションでそれぞれ代表的と思われるものを紹介します。
念のため、Settingsには↓ここからアクセスします。
image.png

Split-On (トリガーのみ)

トリガーにしかない設定です。
Split-Onはトリガーしたときのアイテムsを分割してFlow実行してくれる機能です。
例えばSharePoint listのクイック編集でアイテム作成した場合、Split-On:OFFだと、トリガーは作成されたアイテムsで発生するので、配列を対象に処理することになります。
image.png
Split-Onを有効にすると、トリガーしたときの配列をバラバラにして、個別にFlowを実行してくれます。このため、トリガー以降の処理を簡単にすることができます。

もともとPower Automateの旧ライセンス形態では、Flowの実行回数に上限があったため、この設定をOffにすることで実行回数が節約できたんだろうと予想されます。
image.png

Concurrency control

Apply to eachなど並列実行できるアクションに関する、並列化の多重度の設定です。
最低は1、最大は50。1の場合には直列に実行されます。
この並列化の多重度、万能なように思えますが、並列化の多重度を上げると、処理順がバラバラになったり、ループの中で依存関係のあるようなアクション(たとえばUpdate variableやAppend to array variableなど)がある場合には十分に恩恵が得られない場合があるので、利用には注意が必要です。
ただし、単純なループ処理では劇的に実行速度が改善されるため、処理の内容に応じて設定してみてください。

※並列実行の多重度の恩恵を最大限活用するための方法として、Pieterの方法が有効です。

image.png

Secure Inputs/Outputs

アクション/トリガーのInput/Outputを実行履歴に表示しないというものです。
有効にすると、入力をセキュアにする (設定をONにする)と、ほかのアクションでその入力を参照場合でも、履歴上で非表示になります。
もちろん、セキュアな入力値を加工したとしても、履歴上では隠蔽されます。

image.png
Flowの編集権限は持っていても、履歴に表示されないので、用途としては個人の位置情報を特定できるような入力の隠蔽、あるいはAPI実行時のAPIKeyを含む入力の隠蔽かなと思います。
image.png

Tracked Properties

アクションに追加できる追加のプロパティです。
ほかのアクションから参照可能 actions('action name')?['trackedProperties'] の書式でデータを取り出します。

Tracked Propertiesはjson形式のデータとして扱われるので、指定する際にはKey : Valueのペアを設定します。
また、Valueは、""ダブルクォーテーションでくくり、関数を使う場合には@(アットマーク)から始める必要があります。
image.png

さらに自分自身の入力も、Tracked Propertiesに含めることができます。この場合には前回のブログで紹介した action()?['inputs'] を利用します。
自分自身をTracked Propertiesに含めることができるので、これで自分自身のコピーを生成し、通常エラーになるような自己参照した処理も可能になります。
image.png

その他の利用例は以下をご覧ください。1アクションで、すべてのフォーマットで時間を定義しています。

Trigger Conditions

Trigger Conditionsは別途まとめているので、こちらをどうぞ
https://qiita.com/h-nagao/items/46d5d95cfacb3c70841b

裏側まとめ

普段あまり除かない、Power Automateの裏側を見てきました。基本的には、ここらへんはディープなのであまり触らなくてもよいと思いますが、パフォーマンス改善の一つの切り口だったり、個人に紐づく情報の隠蔽だったり、あるいは通常の方法だと1つ変数を増やさないといけないようなケースのワークアラウンドとして、これらを知っておくと幅が広がるかなと思います。

18
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
11