Как ни странно, но в первые рабочие дни наступившего, 2021 года, многие столкнулись с вопросом, а какая сейчас идет неделя? С какой даты идет отсчет первой недели?
Обратимся к первоисточнику — стандарту ISO 8601.
Первая календарная неделя года — это та, которая включает в себя первый четверг этого года, а последняя календарная неделя календарного года-это неделя, непосредственно предшествующая первой календарной неделе следующего календарного года.
Другими словами, первая неделя календарного года — это самая ранняя неделя, содержащая по крайней мере четыре дня января. Аналогично, последняя неделя календарного года — это последняя неделя, содержащая хотя бы четыре дня декабря.
В Qlik Sense за это отвечают две переменные: BrokenWeeks (разбивать недели или всегда целые) и ReferenceDay (день определения 1 недели).
Все просто, но, фактические установки по умолчанию для переменных в Qlik Sense не учитывают положения ISO 8601. Здесь следует обратить внимание на то, что в описании переменных BrokenWeeks и ReferenceDay все грамотно, и утверждается что «По умолчанию в функциях Qlik Sense используются целые недели.» и «По умолчанию в функциях Qlik Sense используется 4 как день ссылки.» Но, после создания чистого приложения Qlik Sense мы имеем:
SET BrokenWeeks=1; // использовать разбитые недели
SET ReferenceDay=0; // значение не установлено
Что в итоге дает неверный результат, разбитые недели и нумерация недель всегда с 1 января:
Итак, запоминаем, корректные настройки переменных для нумерации календарных недель «по ГОСТу»
Вот такой вот, небольшой нюанс.