Перейти к основному содержимому Перейти к дополнительному содержимому

weekname — функция скриптa и диаграммы

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

Синтаксис:  

WeekName(date[, period_no [, first_week_day [, broken_weeks [, reference_day]]]])

Функция weekname() определяет, на какую неделю приходится дата, и возвращает номер недели и год этой недели. Первый день недели определяется системной переменной FirstWeekDay. Однако также можно изменить первый день недели, используя аргумент first_week_day в функции weekname().

 В Qlik Sense региональные настройки извлекаются при создании приложения, и соответствующие параметры хранятся в скрипте как переменные среды.

Североамериканские разработчики приложений часто получают Set BrokenWeeks=1; в скрипте, что соответствует неполным неделям. Европейские разработчики приложений часто получают Set BrokenWeeks=0; в скрипте, что соответствует полным неделям.

Если приложение использует неполные недели, отсчет номера недели начинается с 1 января и заканчивается за день до системной переменной FirstWeekDay независимо от того, сколько дней прошло.

Однако если в приложении используются непрерывные недели, неделя 1 может начинаться в предыдущем году или в первые несколько дней января. Это зависит от того, как используются системные переменные ReferenceDay и FirstWeekDay.

Пример функции Weekname
Date Имя недели ISO Имя недели US
Sat 2020 Dec 26 2020/52 2020/52
Sun 2020 Dec 27 2020/52 2020/53
Mon 2020 Dec 28 2020/53 2020/53
Tue 2020 Dec 29 2020/53 2020/53
Wed 2020 Dec 30 2020/53 2020/53
Thu 2020 Dec 31 2020/53 2020/53
Fri 2021 Jan 1 2020/53 2021/01
Sat 2021 Jan 2 2020/53 2021/01
Sun 2021 Jan 3 2020/53 2021/02
Mon 2021 Jan 4 2021/01 2021/02
Tue 2021 Jan 5 2021/01 2021/02

Функция weekname() полезна, когда требуется сравнить агрегации по неделям.

Например, если требуется увидеть общий объем продаж продуктов по неделям. Чтобы не допустить противоречия с перемененной среды BrokenWeeks в приложении, используйте weekname() вместо lunarweekname(). Если приложение использует полные недели, неделя 1 может содержать даты декабря предыдущего года или исключать даты января текущего года. Если приложение использует неполные недели, неделя 1 может содержать менее семи дней.

Возвращаемые типы данных: двойное значение

Аргументы
Аргумент Описание
timestamp Дата или метка времени для вычисления.
period_no shift — целое число, где 0 обозначает неделю, включающую значение, указанное в поле date. Отрицательные значения, заданные в поле shift, означают предшествующие недели, положительные — последующие.
first_week_day

Указывает день начала недели. Если не указано, используется значение переменной FirstWeekDay.

Возможные значения first_week_day: 0 — понедельник, 1 — вторник, 2 — среда, 3 — четверг, 4 — пятница, 5 — суббота и 6 — воскресенье.

Для получения дополнительной информации о системной переменной см. FirstWeekDay.

broken_weeks

Если параметр broken_weeks не указан, значение переменной BrokenWeeks будет использовано для определения, какими должны быть недели: целыми или разбитыми.

Для получения дополнительной информации о системной переменной см. BrokenWeeks

reference_day

Если параметр reference_day не указан, значение переменной ReferenceDay будет использовано для определения, какой день в январе должен быть задан в качестве дня ссылки, чтобы определить неделю 1. По умолчанию в функциях Qlik Sense используется 4 как день ссылки. Это значит, что неделя 1 должна содержать значение «январь 4» , или, другими словами, в неделе 1 всегда должно быть не меньше 4 дней в январе.

Для получения дополнительной информации о системной переменной см. ReferenceDay

Региональные настройки

Если не указано иное, в примерах, приведенных в данном разделе, используется следующий формат даты: ММ/ДД/ГГГГ. Формат даты указан в операторе SET DateFormat скрипта загрузки данных. В вашей системе может быть установлен другой формат даты по умолчанию в зависимости от региональных настроек и других факторов. Можно изменить формат в примерах в соответствии с потребностями. Или можно изменить форматы в скрипте загрузки в соответствии с этими примерами.

Региональные настройки по умолчанию в приложениях основаны на системных региональных настройках компьютера или сервера, где установлено ПО Qlik Sense. Если на сервере Qlik Sense, к которому обращается пользователь, выбран шведский язык, то редактор загрузки данных будет использовать шведские региональные настройки для даты, времени и валюты. Эти параметры регионального формата не связаны с языком, отображаемым в интерфейсе пользователя Qlik Sense. Qlik Sense будет отображаться на языке, который используется в браузере.

В приведенных ниже примерах используется:

Set FirstWeekDay=0; Set BrokenWeeks=0; Set ReferenceDay=4;
Примеры функции
Пример Результат
weekname('01/12/2013') Возвращает 2013/02.
weekname('01/12/2013', -1) Возвращает 2013/01.
weekname('01/12/2013', 0, 1) Возвращает 2013/02.

Пример 1. Дата без дополнительных аргументов

Пример 2. Скрипт period_no

Пример 3. Аргумент first_week_day

Пример 4. Пример объекта диаграммы

Пример 5. Сценарий

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!