Поделиться через


Now, Today, IsTodayUTCTodayUTCNowIsUTCToday функции

Functions Применимо к
Now Приложения На основе холста Copilot Studio Desktop потоки формул dataverse, управляемые моделью приложений Power Platform CLI, функции Power Pages
Today
IsToday
Приложения На основе холста Copilot Studio Desktop поддерживают функции Power Platform CLI Dataverse, управляемые моделью
UTCNow
UTCToday
Столбцы формул dataverse

Возвращают текущие дату и время, а также проверяют, относится ли значение даты и времени к сегодняшнему дню.

Заметка

Команды PAC CLI pac power-fx не поддерживают UTCNowUTCTodayфункции и IsUTCToday функции.

Description

Функция Now возвращает текущую дату и время в качестве значения даты и времени.

Функция Today возвращает текущую дату в виде значения даты и времени. В качестве времени в этом значении указывается полночь. Today имеет то же значение в течение дня, от полуночи сегодня до полуночи завтра.

Функция IsToday проверяет, является ли значение даты и времени между полуночи сегодня и полуночи завтра. Она возвращает логическое значение (true или false).

Now, Todayи IsToday функции работают с локальным временем текущего пользователя.

UTCNow, UTCTodayи IsUTCToday функции совпадают со своими коллегами в формате UTC, но работают с независимыми значениями часового пояса и используют согласованное универсальное время (UTC).

Заметка

  • UTCNow, UTCTodayи IsUTCToday доступны только в столбцах формул Microsoft Dataverse для Teams и только для не зависящих от времени полей и значений.
  • Now, Todayи IsToday недоступны в столбцах формул Dataverse для Teams, так как оценки выполняются без знания локального часового пояса текущего пользователя.
    Дополнительная информация: Работа со столбцами таблицы формул в Dataverse for Teams

Дополнительные сведения см. в Дата, время и дата/время в документации по типам данных и работа с датами и временем.

Переменные функции

Now, , TodayUTCNowи UTCToday являются переменными функциями. Эти функции возвращают разные значения для каждой оценки.

При использовании в формуле потока данных, переменная функция возвращает другое значение только при повторном вычислении формулы, в которой она указывается. Если в формуле нет никаких других изменений, она будет иметь одно и то же значение во время выполнения приложения.

Например, элемент управления метками с label1.Text = Now() не изменится во время активности приложения. Новое значение возвращается только после закрытия и повторного открытия приложения.

Если функция является частью формулы в которой изменилось что-то еще, она будет вычислена повторно. Например, если мы изменим наш пример, чтобы включить ползунок с Label1.Text = DateAdd( Now(), Slider1.Value, Minutes ), то текущее время извлекается при каждом изменении значения элемента управления Ползунка, а текстовое свойство метки повторно вычисляется.

При использовании в формуле поведения переменные функции вычисляются каждый раз при вычислении этой формулы. Пример см. ниже.

Синтаксис

Использование местного времени пользователя

Now()

Today()

IsToday( DateTime )

  • Дата и время - Обязательно. Значение даты и времени, которое нужно проверить.

Время в формате UTC

UTCNow()

UTCToday()

IsUTCToday( TimeZoneIndependentTime )

  • TimeZoneIndependentDateTime - Обязательно. Независимое от часового пояса значение даты/времени для проверки.

Примеры

Для примеров в этом разделе текущее время — 8:58 PM11 июля 2021, тихоокеанский часовой пояс (UTC-8) и язык en-us.

Формула Description Результат
Text( Now(), "mm/dd/yy hh:mm:ss" ) Получает текущее значение даты и времени в часовом поясе пользователя и отображает его в виде строки. "07/11/2021 20:58:00"
Text( Today(), "mm/dd/yy hh:mm:ss" ) Получает только текущую дату, оставляя части времени как полночь, и отображает его в виде строки. "07/12/2021 00:00:00"
IsToday( ( Now) ) Проверяет, попадает ли текущее значение даты и времени в промежуток между полночью сегодняшнего и полночью завтрашнего дня. истинный
IsToday( ( Today) ) Проверяет, попадает ли текущая дата в промежуток между полночью сегодняшнего и завтрашнего дня. истинный
Text( DateAdd( Now(), 12 ), "mm/dd/y hh:mm:ss" ) Получает текущее значение даты и времени, прибавляет к результату 12 дней и выводит его в виде строки. "07/23/2021 20:58:00"
Text( DateAdd( Today(), 12 ), "mm/dd/y hh:mm:ss" ) Получает текущую дату, прибавляет к результату 12 дней и выводит его в виде строки. "07/23/2021 00:00:00"
IsToday( DateAdd( Now(), 12 ) ) Проверяет, попадает ли текущее значение даты и времени плюс 12 дней в промежуток между полночью сегодняшнего и полночью завтрашнего дня. ЛОЖЬ
IsToday( DateAdd( Today(), 12 ) ) Проверяет, попадает ли текущее значение даты плюс 12 дней в промежуток между полночью сегодняшнего и полночью завтрашнего дня. ЛОЖЬ
Hour( UTCNow() ) Извлекает текущую дату и время в формате UTC и извлекает только час, который опережает местное время на 8 часов. 4
Day( UTCToday() Извлекает только текущую дату в формате UTC и извлекает день, который опережает местное время на 1 день. 12
IsUTCToday( ( UTCNow) ) Проверяет, попадает ли текущее значение даты и времени в промежуток между полночью сегодняшнего и полночью завтрашнего дня, всё в UTC. истинный
IsUTCToday( ( UTCToday) ) Проверяет, попадает ли текущее значение даты в промежуток между полночью сегодняшнего и полночью завтрашнего дня, всё в UTC. истинный

Отображение часов, обновляющихся в режиме реального времени

  1. Добавьте элемент управления Timer, задайте его свойству Duration значение 1000, а свойству Repeat — значение true.

    Таймер будет работать в течение одной секунды, автоматически перезапустится и будет работать по этой схеме.

  2. Задайте для свойства OnTimerEnd элемента управления следующую формулу в качестве значения.

    Set( CurrentTime, Now()

    При каждом запуске таймера (после каждой секунды) эта формула задает глобальную переменную CurrentTime в текущее значение Now функции.

    Экран, содержащий элемент управления таймером с формулой OnTimerEnd = Set(CurrentTime, Now()).

  3. Добавьте элемент управления Label и задайте в качестве значения свойства Text следующую формулу:

    Текст(ТекущееВремя, ДолгоеВремя24)

    С помощью функции Text отформатируйте дату и время, как вам нужно, или задайте этому свойству значение CurrentTime для отображения часов и минут, но не секунд.

    Экран с отображением элемента управления Label со свойством

  4. Просмотрите приложение, нажав клавишу F5, а затем запустите таймер, щелкнув или коснувшись его.

    Элемент управления Labelпостоянно показывает текущее время вплоть до секунды.

    Четыре экрана, отображающие четыре значения времени (13:50:22, 13:50:45, 13:51:03 и 13:51:25).

  5. Задайте свойству AutoStart таймера значение true, а свойству Visible — значение false.

    Таймер становится невидимым и запускается автоматически.

  6. Задайте свойство OnStart экрана таким образом, чтобы переменная CurrentTime имела допустимое значение, как показано в этом примере:

    Set(CurrentTime, Now())

    Метка отображается сразу после запуска приложения (до того, как таймер проработает целую секунду).