Эта функция возвращает текущую дату. Эта функция возвращает значения в формате системной переменной DateFormat.
Синтаксис:
today([
timer_mode])
Возвращаемые типы данных: двойное значение
Функцию today() можно использовать в сценарии загрузки или в объектах диаграммы.
Значение timer_mode по умолчанию — 1.
Аргументы
Аргумент
Описание
timer_mode
Может иметь следующие значения:
0 (день последней завершенной загрузки данных) 1 (день вызова функции) 2 (день открытия приложения)
Примечание к информацииЕсли функция используется в скрипте загрузки данных, функция timer_mode=0 выдает день последней завершенной загрузки данных, а timer_mode=1 выдает день текущей загрузки данных.
Примеры функции
Значение timer_mode
Результат при использовании в скрипте загрузки
Результат при использовании в объекте диаграммы
0
Возвращает дату в формате системной переменной DateFormat для даты последней успешной перезагрузки, предшествующей самой последней перезагрузке данных.
Возвращает дату в формате системной переменной DateFormat для даты самой последней перезагрузки данных.
1
Возвращает дату в формате системной переменной DateFormat для самой последней перезагрузки данных.
Возвращает дату вызова функции в формате системной переменной DateFormat.
2
Возвращает дату в формате системной переменной DateFormat для начала сеанса пользователя в приложении. Это значение не будет обновляться, если пользователь не перезагрузит скрипт.
Возвращает дату в формате системной переменной DateFormat для начала сеанса пользователя в приложении. Это значение будет обновляться в случае начала нового сеанса или перезагрузки данных в приложение.
Когда это следует использовать
Функция today() часто используется как компонент внутри выражения. Например, можно ее использовать, если требуется рассчитать проценты, накопленные в течение месяца до текущей даты.
В следующей таблице приводится объяснение результата, возвращаемого функцией today(), в зависимости от различных значений аргумента timer_mode:
Региональные настройки
Если не указано иное, в примерах, приведенных в данном разделе, используется следующий формат даты: ММ/ДД/ГГГГ. Формат даты указан в операторе SET DateFormat скрипта загрузки данных. В вашей системе может быть установлен другой формат даты по умолчанию в зависимости от региональных настроек и других факторов. Можно изменить формат в примерах в соответствии с потребностями. Или можно изменить форматы в скрипте загрузки в соответствии с этими примерами.
Региональные настройки по умолчанию в приложениях основаны на системных региональных настройках компьютера или сервера, где установлено ПО Qlik Sense. Если на сервере Qlik Sense, к которому обращается пользователь, выбран шведский язык, то редактор загрузки данных будет использовать шведские региональные настройки для даты, времени и валюты. Эти параметры регионального формата не связаны с языком, отображаемым в интерфейсе пользователя Qlik Sense. Qlik Sense будет отображаться на языке, который используется в браузере.
Пример 1. Создание объектов с использованием скрипта загрузки
Обзор
Следующий пример создает три переменные с использованием функции today(). Каждая переменная использует один из параметров timer_mode для демонстрации эффекта.
Чтобы продемонстрировать назначение переменных, перезагрузите скрипт, а затем через 24 часа выполните вторую перезагрузку. Это приведет к тому, что переменные today(0) и today(1) будут показывать разные значения, тем самым правильно демонстрируя свое назначение.
Скрипт загрузки
LET vPreviousDataLoad = today(0);
LET vCurrentDataLoad = today(1);
LET vApplicationOpened = today(2);
Результаты
После загрузки данных во второй раз создайте три текстовых поля, следуя приведенным ниже инструкциям.
Сначала создайте текстовое поле для данных, загруженных ранее.
Выполните следующие действия.
Создайте текстовое поле, используя объект диаграммы Текст и изображение.
Добавьте в объект следующую меру:
=vPreviousDataLoad
В области Вид выберите Show titles и добавьте в объект заголовок «Время предыдущей загрузки».
Затем создайте текстовое поле для данных, которые загружены в данный момент.
Выполните следующие действия.
Создайте текстовое поле, используя объект диаграммы Текст и изображение.
Добавьте в объект следующую меру:
=vCurrentDataLoad
В области Вид выберите Show titles и добавьте в объект заголовок «Время текущей загрузки».
Создайте последнее текстовое поле, в котором будет отображаться время начала сеанса пользователя в приложении.
Выполните следующие действия.
Создайте текстовое поле, используя объект диаграммы Текст и изображение.
Добавьте в объект следующую меру:
=vApplicationOpened
В области Вид выберите Show titles и добавьте в объект заголовок «Начало сеанса пользователя».
В приведенной выше диаграмме показаны примерные значения для каждой из созданных переменных. Например, это могут быть следующие значения:
Время предыдущей перезагрузки: 6/22/2022
Время текущей перезагрузки: 06/23/2022
Начало сеанса пользователя: 06/23/2022
Пример 2. Создание объектов без использования скрипта загрузки
Обзор
Следующий пример создает три объекта диаграммы с использованием функции today(). Каждый объект диаграммы использует один из параметров timer_mode для демонстрации своего эффекта.
Для этого примера не предусмотрен скрипт загрузки.
Результаты
После загрузки данных во второй раз создайте три текстовых поля.
Сначала создайте текстовое поле для последней перезагрузки данных.
Выполните следующие действия.
Создайте текстовое поле, используя объект диаграммы Текст и изображение.
Добавьте следующую меру:
=today(0)
В области Вид выберите Show titles и добавьте в объект заголовок «Последняя перезагрузка данных».
Затем создайте текстовое поле для отображения текущего времени.
Выполните следующие действия.
Создайте текстовое поле, используя объект диаграммы Текст и изображение.
Добавьте следующую меру:
=today(1)
В области Вид выберите Show titles и добавьте в объект заголовок «Текущее время».
Создайте последнее текстовое поле, в котором будет отображаться время начала сеанса пользователя в приложении.
Выполните следующие действия.
Создайте текстовое поле, используя объект диаграммы Текст и изображение.
Добавьте следующую меру:
=today(2)
В области Вид выберите Show titles и добавьте в объект заголовок «Начало сеанса пользователя».
В приведенной выше диаграмме показаны примерные значения для каждого из созданных объектов. Например, это могут быть следующие значения:
Последняя перезагрузка данных: 06/23/2022
Текущее время: 06/23/2022
Начало сеанса пользователя: 06/23/2022
Объект диаграммы «Последняя перезагрузка данных» использует значение timer_mode = 0. В результате этого возвращается метка времени для последней успешной перезагрузки данных.
Объект диаграммы «Текущее время» использует значение timer_mode = 1. В результате этого возвращается текущее время по системным часам. В случае обновления листа или объекта это значение обновляется.
Объект диаграммы «Начало сеанса пользователя» использует timer_mode = 2. В результате этого возвращается метка времени, когда пользователь открыл приложение и начал сеанс.
Пример 3. Сценарий
Обзор
Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
Набор данных, содержащий набор остатков по кредитам, загруженный в таблицу под именем Loans.
Данные таблицы с полями для идентификаторов кредитов, остатка на начало месяца и простой процентной ставки, взимаемой по каждому кредиту за год.
Конечному пользователю требуется объект диаграммы, который будет отображать по идентификатору кредита текущий процент, начисленный по каждому кредиту за год до текущей даты. Хотя приложение перезагружается только раз в неделю, пользователю требуется обновлять результаты при каждом обновлении объекта или приложения.
Функция monthstart(), используя функцию today() для получения текущей даты в качестве единственного аргумента, возвращает дату начала текущего месяца. Вычитая этот результат из текущей даты, опять же с использованием функции today(), выражение возвращает количество дней, прошедших до сих пор в течение этого месяца.
Затем это значение умножается на процентную ставку и делится на 365, чтобы получить эффективную процентную ставку начисленную за этот период. После этого результат умножается на начальный остаток кредита, чтобы вернуть проценты, начисленные до сих пор в течение этого месяца.
Так как используется значение 1 для аргумента timer_mode в функциях today() внутри выражения, каждый раз при обновлении объекта диаграммы (при открытии приложения, обновлении страницы, переходе между листами и т. д.) будет возвращаться текущая дата, и результаты будут обновляться соответствующим образом.
Помогла ли вам эта страница?
Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!