rksoftware

Visual Studio とか C# とかが好きです

Power Automate の作成の参照のルール

Power Automate で作成の出力を別の作成の入力に使いたい。それも後方に出てくる作成の出力を! そう考えたことはありませんか? ありますよね? 私は考えました。

結論としてはダメでした。無念。

■ なぜそんなことを考えるのか

Power Automate では変数はトップレベルに宣言しなければなりません。これが非常に扱いづらい。なるべく変数のスコープは絞るようにしなければ激しいツラミとの闘いを避けられません。

そんなツラミに「作成」アクションが使える場合があります。 rksoftware.hatenablog.com

で、この「作成」アクションを活用してどうにかループカウンター的なものをどうにかループの中に閉じ込められないか。そう考えるのは当然の結果です。普通に使ってはできないのでしょうが、後方で宣言したものを参照できれば頑張って知恵を絞って抜け穴のような仕様を突けばできるかも、そう思ったのは自然な流れだと思います。

まあ、できなかったのですけれど。

■ GUI で設定を試みる

まずは GUI で設定を試みるとどうなるか。
一度こんな感じで順番に組んでみて、ドラッグで 作成 2 を上に移動してみます。

怒られました。

■ 式で設定を試みる

GUI などという甘えた操作に頼っているからダメなのかもしれません。
やはり式で設定! 式で設定はすべてを解決してくれるはず!

コードではこうなります。

だめでした。

The template validation failed: 'The inputs of template action '作成_2' at line '1 and column '1006' cannot reference action '作成'. Action '作成' must either be in 'runAfter' path or within a scope action on the 'runAfter' path of action '作成_2', or be a Trigger.'.

結論。ダメです。

■ なぜ可能性を感じたか?

普通に考えて、ダメだというのは当然の結果です。それでも可能性を感じてしまったことには理由があります。

変数の仕様です。

変数は順序の逆転自在です。こんなフローが 保存 できます。

後方の変数 aaa を前方の bbb の初期化で参照できています。
これができるなら作成でも、そう考えるのは当然の結果です。

まあ、この変数の場合もダメなのですけれども。

実行

実行してみます。

エラーになってしまいました。無念。

■ 難しいですね

難しいですね。