Power Automate で動的なコンテンツにほしい値が出ないワケ
ごきげんよう、百合宮桜(Miyu)です♪
Power Automate で動的なコンテンツに指定したい値が出てこない!?という事が結構あります。これには様々な理由があるので、解説してみます。
入力したい場所とデータ型が異なる
Power Automate の動的なコンテンツは入力したい場所で扱えるデータ型のものだけが出てくる仕様です。
例えば SharePoint コネクタの「項目の作成」アクションで列の種類が数値の列にカーソルを当てて、動的なコンテンツを表示した場合は数値型の値だけが表示されます。
よって int 関数を利用してテキスト型で持っている数字を数字型したい!というムーブを取ると動的なコンテンツの候補にテキスト型の動的なコンテンツが候補に出てきます。
出力形式が不明である
注文票や有給申請など指定のフォーマットの Excel ファイルをアップロードした時にその内容を担当者に通知するというシチュエーションはよくあると思います。この時にファイルやテーブルを動的なコンテンツを利用して指定すると、通知に含めたいテーブルの各項目の値が動的なコンテンツに出てきません。なぜなら開発時点では出力形式が不明だからです。
ファイルとテーブルを固定値で指定している場合、Power Automate の編集画面を開いている時でも Excel の内容を読み込んで、出力するテーブルの形式を把握できます。
そしてそれらを解析して動的なコンテンツに表示することができます。
しかしファイルとテーブルが動的なコンテンツで指定されている場合は、フローを実行して動的なコンテンツで指定した値が何かを確定しないと出力するテーブルの形式が分かりません。
その為、動的なコンテンツに表示することができないということになります。
動的なコンテンツに表示したい場合
JSON の解析アクションを使って、出力値を解析すれば動的なコンテンツに表示されます。この場合はJSON の解析での入出力値をスキーマで定義します。
その為、入力値のフォーマットは予め統一する必要があります。
式で値を指定したい場合
JSON の解析アクションを使うのが面倒……という場合は以下のような式で直接指定することもできます。
items('アクション名')?['列名']
まとめ
いかかでしたか?
Power Automate の仕様を理解すると効率的な開発が可能です。疑問に思ったことは深堀してみてくださいね(*'▽')
Discussion