# MoneyThousandSep

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

Примечание к подсказке

По умолчанию Qlik Sense по-разному отображает числа и текст в диаграммах таблицы. Числа выравниваются по правому краю, а текст по левому. Это позволяет легко выявлять проблемы преобразования текста в числа. Все таблицы на этой странице, в которых отображаются результаты Qlik Sense, будут использовать это форматирование.

Синтаксис:

MoneyThousandSep

Приложения Qlik Sense будут интерпретировать текстовые поля, соответствующие этому формату, как денежные значения. Текстовое поле должно содержать символ валюты, определенный в системной переменной `MoneyFormat`. `MoneyThousandSep` особенно полезно при работе с источниками данных, полученными из систем с разными региональными настройками.

Следующий пример демонстрирует возможное использование системной переменной `MoneyThousandSep`:

`Set MoneyDecimalSep=',';`

Эта функция часто используется вместе со следующими функциями:

Связанные функции

| Функция | Взаимодействие |
| --- | --- |
| `MoneyFormat` | В случаях интерпретации текстового поля символ `MoneyFormat` будет использоваться как часть такой интерпретации. В качестве формата чисел будет использоваться `MoneyFormat` для Qlik Sense в объектах диаграммы. |
| `MoneyDecimalSep` | В случаях интерпретации текстового поля также необходимо использовать функцию `MoneyDecimalSep`. |

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

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

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

## Пример 1. Использование запятой (,) в MoneyThousandSep

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

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

Обзор

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

Скрипт загрузки содержит следующее:

* Набор данных, который загружается в таблицу под именем `Transactions`.

* Предоставленные данные, содержащие денежное поле в текстовом формате с использованием запятой (,) в качестве разделителя тысяч. Кроме того, каждая запись имеет префикс «$».

Помните, что системная переменная `MoneyFormat` определяет доллар ($) в качестве валюты по умолчанию.

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

```
SET MoneyThousandSep=',';
SET MoneyDecimalSep='.';
SET MoneyFormat='$###0.00;-$###0.00';

Transactions:
Load
date,
id,
amount
Inline 
[
date,id,amount
01/01/2022,1,'$10,000,000,441'
01/02/2022,2,'$21,237,492,432'
01/03/2022,3,'$249,475,336'
01/04/2022,4,'$24,313,369,837'
01/05/2022,5,'$7,873,578,754'
01/06/2022,6,'$24,313,884,663'
01/07/2022,7,'$545,883,436'
01/08/2022,8,'$35,545,828,255'
01/09/2022,9,'$37,565,817,436'
01/10/2022,10,'$3.454.343.566'
];
```

Результаты

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

Добавьте следующие меры:

* `isNum(amount)`

* `sum(amount)`

Результаты приводятся ниже. Таблица демонстрирует правильную интерпретацию всех значений с использованием запятой (,) в качестве разделителей тысяч.

Поле `amount` правильно интерпретировано для всех значений, за исключением одного, где в качестве разделителя тысяч используется точка (.).

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

| amount | =isNum(amount) | =Sum(amount) |
| --- | --- | --- |
| Итоги | 0 | $161645330590.00 |
| $3.454.343.566 | 0 | $0.00 |
| $249,475,336 | -1 | $249475336.00 |
| $545,883,436 | -1 | $545883436.00 |
| $7,873,578,754 | -1 | $7873578754.00 |
| $10,000,000,441 | -1 | $10000000441.00 |
| $21,237,492,432 | -1 | $21237492432.00 |
| $24,313,369,837 | -1 | $24313369837.00 |
| $24,33,884,663 | -1 | $24313884663.00 |
| $35,545,828,255 | -1 | $35545828255.00 |
| $37,565,817,436 | -1 | $37565817436.00 |

## Пример 2. Использование точки (.) в MoneyThousandSep

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

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

Обзор

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

Скрипт загрузки содержит следующее:

* Набор данных, который загружается в таблицу под именем `Transactions`.

* Предоставленные данные, содержащие денежное поле в текстовом формате с использованием точки (.) в качестве разделителя тысяч. Кроме того, каждая запись имеет префикс «$».

Помните, что системная переменная `MoneyFormat` определяет доллар ($) в качестве валюты по умолчанию.

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

```
SET MoneyThousandSep='.';
SET MoneyDecimalSep=',';
SET MoneyFormat='$###0.00;-$###0.00';

Transactions:
Load
date,
id,
amount
Inline 
[
date,id,amount
01/01/2022,1,'$10.000.000.441'
01/02/2022,2,'$21.237.492.432'
01/03/2022,3,'$249.475.336'
01/04/2022,4,'$24.313.369.837'
01/05/2022,5,'$7.873.578.754'
01/06/2022,6,'$24.313.884.663'
01/07/2022,7,'$545.883.436'
01/08/2022,8,'$35.545.828.255'
01/09/2022,9,'$37.565.817.436'
01/10/2022,10,'$3,454,343,566'
];
```

Результаты

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

Добавьте следующие меры:

* `isNum(amount)`

* `sum(amount)`

Ниже приводится таблица результатов, которая демонстрирует правильную интерпретацию всех значений с использованием точки (.) в качестве разделителей тысяч.

Поле `amount` правильно интерпретировано для всех значений, за исключением одного, где в качестве разделителя тысяч используется запятая (,).

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

| amount | =isNum(amount) | =Sum(amount) |
| --- | --- | --- |
| Итоги | 0 | $161645330590.00 |
| $3,545,343,566 | 0 | $0.00 |
| $249.475.336 | -1 | $249475336.00 |
| $545.883.436 | -1 | 545883436.00 |
| $7.873.578.754 | -1 | $7873578754.00 |
| $10.000.000.441 | -1 | $10000000441.00 |
| $21.237.492.432 | -1 | $21237492432.00 |
| $24.313.884.663 | -1 | $24313884663.00 |
| $24.313.884.663 | -1 | $24313884663.00 |
| $35.545.828.255 | -1 | $35545828255.00 |
| $37.565.817.436 | -1 | $37565817436.00 |