Logic Appsで使う日付や時刻のアクションについて纏めてみた
Azure Logic Appsのワークフローで使う日付や時刻のアクションについて纏めてみました。
現在時刻の取得から、タイムゾーンの変更、時間の加算や減算、フォーマット変更などについて確認しています。
Logic Appsワークフローで日時や曜日を取得
設定から実行結果を確認してみます。
実行結果は2022年8月20日18時36分(日本時間)に実施した内容です。
取得方法は2種類
Logic Appsのワークフローで日付や時刻などを取得する方法は2種類あります。
-
- 日付と時刻のコネクタを使う
- 式関数を使う
式関数についてはこちらを参考に進めています。
Azure Logic Apps および Power Automate のワークフロー式関数のリファレンス ガイド(日付と時刻関数)
今回はそれぞれの方法で設定、取得出来る値を確認してみます。
現在時刻を取得
”日付と時刻”のコネクタを使って現在の時間を取得します。
現在時刻を取得 | |
検索欄で日付と入力します。 日付と時刻のアクションのリストが表示されます。 現在の時刻を選択します。 |
![]() |
特に設定はありません。アクションとして配置するだけで現在の時刻が取得出来ます。 | ![]() |
実行結果を確認します。 UTCで現在時刻が取得出来ています。 |
![]() |
同じく現在時刻を関数のコネクタを使って取得します。
”変数の初期化”のアクションを利用して確認します。
utcNow | |
”変数の初期化”で名前と種類を設定します。 | ![]() |
現在時刻を取得する場合には式関数utcNow()を使います。 |
![]() |
実行結果を確認します。 UTCで現在時刻が取得出来ています。 |
![]() |
取得した現在時刻をワークフローで使う
取得した現在の時刻をワークフローで利用する場合は動的なコンテンツで指定します。
現在時刻を設定する例 | |
”変数の初期化”で設定した例です。 |
![]() |
現在の時刻を指定します。 これで変数に現在時刻の値を設定出来ます。 |
![]() |
タイムゾーン(Time Zone)の変換
”日付と時刻”のコネクタにはタイムゾーンの変換についても準備されています。
タイムゾーンの変更は式関数でも出来ます。
現在の曜日を取得
式関数を利用すると曜日を取得する事が出来ます。
”日付と時刻”のコネクタには曜日取得はありません。
Logic Appsワークフローで日時の計算
日時の計算について設定から実行結果を確認してみます。
実行結果は2022年8月20日18時36分(日本時間)に実施した内容です。
現在時刻から加算、減算
現在時刻から日付や時間を加算、減算した値を取得する事が出来ます。
変数を使っても現在時刻から日付や時間を加算減算した値を取得する事が出来ます。
加算の場合です。
現在時刻から加算 | |
加算の場合にはgetFutureTimeを使います。 | ![]() |
getFutureTime(間隔,加算する時間単位)の指定になります。
現在時刻に1日追加する場合は”getFutureTime(1, 'day’)”となります。 |
![]() |
実行結果を確認します。
値を確認すると1日後の日付が取得されている事が分かります。 |
![]() |
減算の場合です。
現在時刻から減算 | |
減算の場合にはgetPastTimeを使います。 | ![]() |
getPastTime(間隔,減算する時間単位)の指定になります。
現在時刻から1時間減算する場合は”getPastTime(1,’Hour’)”となります。 |
![]() |
実行結果を確認します。 値を確認すると1時間前の時間が取得されている事が分かります。 |
![]() |
指定した時間からの加算、減算
指定した時刻からの加算、減算も出来ます。
今回は現在時刻を使っていますが、指定した時刻は現在時刻である必要はありません。
式関数を利用しても同じ事が出来ます。加算する時間単位を追加します。
-
- addDays:指定した時間に日数を加算します
- addHours:指定した時間に時間を加算します
- addMinutes:指定した時間に分を加算します
- addSeconds:指定した時間に秒を加算します
またaddToTimeを使っても同じ事が出来ます。
時間からの減算も同様にaddHoursを使って出来ます。
subtractFromTimeを使っても出来ます。
開始時間や開始日付のみを取得する(分や時間を0にする)
式関数を使うと時間や分の単位を0にする事が出来ます。
-
- startOfDay:指定した日時の開始日時を出力します
- startOfHour:指定した日時の開始時間を出力します
- startOfMonth:指定した日時の開始月日付を出力します
開始時刻を取得する | |
現在時刻の開始時刻を取得します。 | ![]() |
startOfHour(指定時刻)の指定になります。 |
![]() |
実行結果を確認します。 ワークフロー実行時に指定した時刻は現在時刻の9:36(UTC)になります。 この場合にstartOfHourを使って取得された値は開始時刻である9:00になります。 |
![]() |
同様に日付でも同じ事が出来ます。
開始日付を取得 | |
現在時刻の開始日付を取得します。 | ![]() |
startOfDay(指定時刻)の指定になります。 |
![]() |
実行結果を確認します。 ワークフロー実行時に指定した時刻は現在時刻の8月20日の9:36(UTC)になります。 この場合にstartOfDayを使って取得された値は開始日付である8月20日の00:00になります。 |
![]() |
startOfDayとaddDaysを組み合わせて使うと前日の開始日付を取得する事も出来ます。
前日の開始日付を取得 | |
startOfDayを使って前日の開始日付を取得してみます。 | ![]() |
startOfDay(addDays(utcNow(), -1))と指定します。
addDays(utcNow(), -1)で指定時刻を現在時刻から1日減算しています。 |
![]() |
実行結果を確認します。 前日の開始日付である8月19日00:00が値として取得されている事が確認出来ます。 |
![]() |
日付のフォーマット変更
タイムゾーンの変更を使うと日付のフォーマット変更も出来ます。
日付のフォーマット変更 | |
フォーマット変更は書式設定文字列の指定を使います。 書式設定文字列に短い形式の日付パターンを指定してみます。 |
![]() |
実行結果を確認します。 |
![]() |
式関数の場合はフォーマットを指定して出力する形になります。
日付のフォーマット変更 | |
日付のフォーマット変更の場合にはformatDateTimeを使います。 | ![]() |
formatDateTime(指定時刻,出力フォーマット)の指定になります。 utcNowを使って現在時刻を指定時刻として設定してみます。 |
![]() |
実行結果を確認します。 出力結果を見ると"2022/08/22″となっており、指定したフォーマット通りの値が得られている事が分かります。 |
![]() |
最後に
今回はLogic Appsのワークフローで使う日時のアクションについて纏めてみました。
”日付と時刻”のコネクタ内にあるアクションや式関数を使う事で様々な値が取得出来る事が分かりました。
引き続き今後も色々試してみたいと思います。