PowerAutomate | アクションを検証 | スケジュール実行(曜日判定)

PowerAutomate | アクションを検証 | スケジュール実行(曜日判定)

前回同様、技術検証を行います。今回は「スケジュール実行」を検証しました。

やりたいこと

① 朝8時にメールで「今日は「〇〇」です」というメッセージを送ろうと思います。

② 「〇〇」ですが、「月~金」は「平日」とし、土日は「土日」とします。

手順

①左側タブ「作成」>「スケジュール済クラウドフロー」を選択します。

②フロー名を設定し、開始日、時刻、繰り返し間隔を設定します。

時刻は「08:00AM」とします。

繰り返し間隔は「1」「日」とします。

③トリガーが生成されるので、「新しいステップ」を追加します。

タスクスケジューラのように曜日指定をする機能が見当たらず。

コントロール「条件」を用いて、曜日判定を行うことにします。

④条件の「値の選択」をクリックし、「式」を追加します。

ここが一番のポイントのようです。

・曜日の取得

・世界標準時 :utcNow()

・日本時間: addHours(utcNow(), 9)

・日本時間を元に、曜日を取得: dayofWeek(addHours(utcNow(), 9))

→戻り値は以下の通り

曜日戻り値
0
1
2
3
4
5
6

・曜日の判定

・日曜日と土曜日を判定するためには、以下の様な分岐ができると良い。

dayofWeek(addHours(utcNow(), 9)) の戻り値が 0 or 6 → 「今日は休日です」と送信する

それ以外 → 「今日は平日です」と送信する

・複数の条件を記載するには「or」を用いる

MSDOCに記載されているとおり「or」を用いる事が可能とのこと。

・or(A,B) → AもしくはBの条件式がtrueならばtrue

・equals(A,B) → A=Bならばtrue

上記を組み合わせて、下記の式がtrueの場合は「メールを送らない」、Falseの場合は「メールを送る」

or(equals(dayofWeek(addHours(utcNow(), 9)),0),equals(dayofWeek(addHours(utcNow(), 9)),6))

⑤テストを実行し、条件通りにメールが届けば完了

テストを実行し、結果を確認します。

以上です。