#やりたいこと
Azure Logic Apps上で決まった時間のみ特定の処理を行いたい
#前提条件
- 起動トリガーは外部から一定間隔で呼ばれます
- また、外部から一定間隔で呼ばれる起動トリガーは容易に変更できないものとします
#全体概要
以下のような流れになります。
- 現在の時刻を取得
- タイムゾーンを変換+出力フォーマットを指定
- 指定されたフォーマットで分岐処理
- (今回は、特定の時間にメールを送ります)
#詳細な処理
-
タイムゾーンを変換+出力フォーマットを指定
タイムゾーンを日本に変換します。あとは、出力フォーマットで、「HH:mm」を指定します。こうすることで、変換後のフォーマットは、例えば「"12:01"」のようになります。
-
指定されたフォーマットで分岐処理
条件を設定します。今回は、「12:00~12:02」の間に起動される処理のみ特定の処理を行います。注意点としては、比較する値は「"12:00"」のように文字列として明示的に指定しましょう。一度保存すると、表記が自動的に「12:00」のように変換されますが、自分で設定するときは明示的に文字列として入力する必要がありました。
-
(今回は、特定の時間にメールを送ります)
ここは実現したい処理に依存しますが、上記の条件でTrue/Falseで処理を切り替えることが可能です。
#まとめ
外部から呼ばれる起動トリガーを容易に変更できない場合や、ローコードで実装している処理部で処理を完結する必要がある場合などで、時間ごとに処理を切り分ける場合などにも使用できます。