2023年5月20日土曜日

【PowerAutomate】outputs(出力結果)から欲しい値を取得する書き方

event_note5月 20, 2023

 いつも書き方をわすれてしまうので出力結果から特定の項目を取得する方法をメモしておく。

 

やりたいこと 

この出力結果から「従業員コード」の値をゲットしたい。


方法

outputs('操作名')['body/value'][何行目]?['取得したい項目名'] と書けば取得できる。

 

outputs('表内に存在する行を一覧表示')['body/value'][0]['従業員コード'] と書けば取得できる。
outputs('表内に存在する行を一覧表示')['body']['value'][0]['従業員コード']のように/で分かれているところは別々のカッコに分けてもOK

 

補足

 フローの実行結果の画面から「未加工出力の表示」をクリックすると、出力結果の全体が表示されます。


これが出力結果全体の表示

従業員コードにたどり着くまでに、

body→value→従業員コード と入れ子になっています。 

青枠のような [] が出てきたときは、同じ形式のデータがいくつか続くため、何番目の物を使うかの指定が必要。何番目かを0から指定する。(1からではない。)

今回の場合は、最初のデータなので0番目となるため、['value'][0] と指定します。

で、outputs(~)というのは、~という操作をした時の出力結果ということです。

なので、

outputs('表内に存在する行を一覧表示')['body']['value'][0]['従業員コード']

とかけば、OKです。

['従業員コード']の先がさらに入れ子になっているときも[]が出てきた場合は、番号で指定、[]がなければ、項目名を書いていくを繰り返していけばOKです。