# FirstWeekDay

Целое число, которое определяет, какой день использовать в качестве первого дня недели.

Синтаксис:

FirstWeekDay

Понедельник является первым днем недели в соответствии с ISO 8601 (международный стандарт представления дат и времени). Понедельник также используется в качестве первого дня недели в ряде стран, например в Соединенном Королевстве, Франции, Германии и Швеции.

Но в других странах, таких как США и Канада, началом недели считается воскресенье.

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

Североамериканский разработчик приложений часто получает `Set FirstWeekDay=6;` в скрипте, что соответствует воскресенью. Европейский разработчик приложений часто получает `Set FirstWeekDay=0;` в скрипте, что соответствует понедельнику.

Значения, которые могут быть заданы в качестве FirstWeekDay

| Величина | День |
| --- | --- |
| 0 | Понедельник |
| 1 | Вторник |
| 2 | Среда |
| 3 | Четверг |
| 4 | Пятница |
| 5 | Суббота |
| 6 | Воскресенье |

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

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

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

Примеры:

Если требуется использовать параметры ISO для недель и номеров недель, убедитесь, что в скрипте содержится следующее:

```
Set FirstWeekDay=0;  // Monday as first week day
Set BrokenWeeks=0;
Set ReferenceDay=4;
```

Если требуется использовать параметры US, убедитесь, что в скрипте содержится следующее:

```
Set FirstWeekDay=6;  // Sunday as first week day
Set BrokenWeeks=1;
Set ReferenceDay=1;
```

## Пример 1. Использование значения по умолчанию (скрипт)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm)

#### Скрипт загрузки и результаты

Обзор

Откройте Редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.

В этом примере скрипт загрузки использует значение системной переменной Qlik Sense по умолчанию, `FirstWeekDay=6`. Этот набор данных содержит данные для первых 14 дней в 2020 году.

Скрипт загрузки

```
// Example 1: Load Script using the default value of FirstWeekDay=6, i.e. Sunday

SET FirstWeekDay = 6;

Sales:
LOAD
	 date,
	 sales,
	 week(date) as week,
	 weekday(date) as weekday 
Inline [
date,sales
01/01/2021,6000
01/02/2021,3000
01/03/2021,6000
01/04/2021,8000
01/05/2021,5000
01/06/2020,7000
01/07/2020,3000
01/08/2020,5000
01/09/2020,9000
01/10/2020,5000
01/11/2020,7000
01/12/2020,7000
01/13/2020,7000
01/14/2020,7000
];
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:

* `date`

* `week`

* `weekday`

Результирующая таблица

| Дата | неделя | будний день |
| --- | --- | --- |
| 01/01/2021 | 1 | Wed |
| 02.01.2021 | 1 | Thu |
| 03.01.2021 | 1 | Fri |
| 04.01.2021 | 1 | Sat |
| 01/05/2021 | 2 | Sun |
| 01/06/2020 | 2 | Mon |
| 01/07/2020 | 2 | Tue |
| 01/08/2020 | 2 | Wed |
| 01/09/2020 | 2 | Thu |
| 01/10/2020 | 2 | Fri |
| 01/11/2020 | 2 | Sat |
| 01/12/2020 | 3 | Sun |
| 01/13/2020 | 3 | Mon |
| 01/14/2020 | 3 | Tue |

Так как используются настройки по умолчанию, системной переменной `FirstWeekDay` задается значение 6. В таблице results видно, что каждая новая неделя начинается с воскресенья (5-е и 12-е января).

## Пример 2. Изменение переменной FirstWeekDay (скрипт)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm)

#### Скрипт загрузки и результаты

Обзор

Откройте Редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.

В этом примере набор данных содержит первые 14 дней в 2020 году. В начале скрипта мы задали переменной `FirstWeekDay` значение 3.

Скрипт загрузки

```
// Example 2: Load Script setting the value of FirstWeekDay=3, i.e. Thursday

SET FirstWeekDay = 3;

Sales:
LOAD
	date,
	sales,
	week(date) as week,
	weekday(date) as weekday 
Inline [
date,sales
01/01/2021,6000
01/02/2021,3000
01/03/2021,6000
01/04/2021,8000
01/05/2021,5000
01/06/2020,7000
01/07/2020,3000
01/08/2020,5000
01/09/2020,9000
01/10/2020,5000
01/11/2020,7000
01/12/2020,7000
01/13/2020,7000
01/14/2020,7000
];
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:

* `date`

* `week`

* `weekday`

Результирующая таблица

| Дата | неделя | будний день |
| --- | --- | --- |
| 01/01/2021 | 52 | Wed |
| 02.01.2021 | 1 | Thu |
| 03.01.2021 | 1 | Fri |
| 04.01.2021 | 1 | Sat |
| 01/05/2021 | 1 | Sun |
| 01/06/2020 | 1 | Mon |
| 01/07/2020 | 1 | Tue |
| 01/08/2020 | 1 | Wed |
| 01/09/2020 | 2 | Thu |
| 01/10/2020 | 2 | Fri |
| 01/11/2020 | 2 | Sat |
| 01/12/2020 | 2 | Sun |
| 01/13/2020 | 2 | Mon |
| 01/14/2020 | 2 | Tue |

Так как системной переменной ` FirstWeekDay  ` задано значение 3, первым днем каждой недели будет четверг. В таблице results видно, что каждая новая неделя начинается в четверг (2-е и 9-е января).