この記事は、Power Automate Advent Calendar 2022 12月1日担当分の記事です。
勉強がてらPower Automateの「データ操作」関連アクションをいくつか使ってみたいと思います。
準備
フロー作成
トリガー:手動トリガー
データ操作アクション:作成
先ほど用意した2日分のカレンダー情報を取得しようと思います。
まず終了日時を作成します。
「作成」アクションを追加し、以下の関数を式へ入力します。
addDays(triggerOutputs()['headers']['x-ms-user-timestamp'],2)
実行日時に対しとりあえず2日加えています。
※ この辺は実行タイミングと取得したい期間に合わせて上手く調整してください。
※ 後で使いやすいようにアクション名を「終了日」へ変更します
アクション:イベントのカレンダービューの取得(V3)
Outlook カレンダー情報を取得します。
開始時刻をトリガーの動的コンテンツ「タイムスタンプ」、終了時刻を先ほどの作成アクションの出力を選択します。
一旦フローをテストしてみます。
上手く動いて、ワールドカップ観戦の予定まで取得できています。
※ ここで、value の内容をすべてコピーします。後のアクションで使用します。
データ操作アクション:JSONの解析
取得したカレンダー情報から必要な情報のみ抜き出せるようにします。
JSONの解析アクションから、「サンプルから生成」を選択します。
サンプルJSONペイロードの挿入 へ先ほどコピーしたvalueの内容をペーストします。
ー ペースト前
ー ペースト後
完了を選択します。
JSONの解析アクションのコンテンツ項目へ動的コンテンツの「value」を選択します。
データアクション:選択
JSONの解析で出力した内容から、必要な項目を抽出します。
開始項目へJSONの解析アクションの動的コンテンツ「本文」を選択します。
マップ項目へは以下の通り指定します。
一旦フローをテストしてみます。
選択アクションで必要な値のみ抽出できています。
データ操作アクション:CSVテーブルの作成
取得できた値をCSVテーブルにしてみます。
開始項目に"選択"アクションの出力を選択します。
フローをテストしてみます。
上手くCSVテーブル化できています。
必要な値が上手く抽出できていれば、後はもうやりたい放題です。
データ操作アクション:HTMLテーブルの作成
今度はデータをHTMLテーブルに変換してみます。
開始項目に"選択"アクションの出力を選択します。
フローをテストしてみます。
上手くHTMLテーブル化できています。
後はこの出力結果をExcelやSPOリストに転記できたらいいですね。
今回はここまでとします。
出力結果を見るとUTC時間になっているので、フローのどこかのタイミングで日本時間へ変換するアクションか関数を利用する必要がありそうですね。
<参考>
・参考にしたMS公式のDocsです
タイトル:データ操作を使用する
https://learn.microsoft.com/ja-jp/power-automate/data-operations