# MoneyFormat

Ta zmienna systemowa definiuje wzorzec formatu używany przez Qlik do automatycznej translacji tekstu na liczbę, gdy liczba ta jest poprzedzona symbolem waluty. Ponadto definiuje sposób prezentacji w obiektach wykresów miar, których właściwości formatowania liczbowego są ustawione na „Money”.

Symbol zdefiniowany jako część wzorca formatu w zmiennej systemowej `MoneyFormat` zastępuje symbol waluty wybrany w ustawieniach regionalnych.

Wskazówka

Qlik Sense domyślnie wyświetla inaczej liczby i tekst na wykresach tabel. Liczby są wyrównane do prawej, a tekst do lewej. Ułatwia to znalezienie problemów z konwersją tekstu na liczbę. Wszystkie tabele na tej stronie, które pokazują wyniki Qlik Sense, będą używać tego formatowania.

Składnia:

MoneyFormat

` Set MoneyFormat='$ #,##0.00; ($ #,##0.00)';  `

To formatowanie będzie stosowane w obiektach wykresów, gdy właściwość pola `Number Formatting`liczbowego będzie ustawiona na `Money`. Ponadto, kiedy numeryczne pola tekstowe są interpretowane przez Qlik Sense, jeśli symbol waluty pola tekstowego zgadza się z symbolem waluty zdefiniowanym w zmiennej `MoneyFormat`, Qlik Sense zinterpretuje to pole jako wartość walutową.

Ta funkcja jest częśto używana w połączeniu z następującymi funkcjami:

Powiązane funkcje

| Funkcja | Interakcja |
| --- | --- |
| [MoneyDecimalSep](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/MoneyDecimalSep.htm) | W przypadku formatowania liczb do formatowania pól obiektów używana jest zmienna `MoneyDecimalSep`. |
| [MoneyThousandSep](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/MoneyThousandSep.htm) | W przypadku formatowania liczb do formatowania pól obiektów używana jest zmienna `MoneyThousandSep`. |

## Ustawienia regionalne

Jeżeli nie podano inaczej, w przykładach w tym temacie stosowany jest następujący format daty: MM/DD/RRRR. Format daty jest określony w instrukcji `SET DateFormat` w skrypcie ładowania danych. Domyślny format daty w Twoim systemie może być inny ze względu na ustawienia regionalne i inne czynniki. Formaty zastosowane w przykładach można zmienić, aby dostosować je do własnych wymagań. Zamiast tego można też zmienić formaty w skrypcie ładowania, aby pasowały do tych przykładów.

Domyślne ustawienia regionalne w aplikacjach są oparte na regionalnych ustawieniach systemu komputera lub serwera, na którym zainstalowano Qlik Sense. Jeśli serwer Qlik Sense, do którego uzyskujesz dostęp, jest ustawiony na Szwecję, Edytor ładowania danych użyje szwedzkich ustawień regionalnych dla dat, godziny i waluty. Te ustawienia regionalne nie są związane z językiem wyświetlanym w interfejsie użytkownika Qlik Sense. Interfejs Qlik Sense będzie wyświetlany w tym samym języku co używana przeglądarka.

## Przykład 1 – MoneyFormat

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

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.

Skrypt ładowania zawiera zestaw danych, który jest ładowany do tabeli o nazwie `Transactions`. Używana jest domyślna definicja zmiennej `MoneyFormat`.

Skrypt ładowania

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

Transactions:
Load
date,
id,
amount
Inline
[
date,id,amount
01/01/2022,1,$10000000441
01/02/2022,2,$21237492432
01/03/2022,3,$249475336
01/04/2022,4,$24313369837
01/05/2022,5,$7873578754
01/06/2022,6,$24313884663
01/07/2022,7,$545883436
01/08/2022,8,$35545828255
01/09/2022,9,$37565817436
01/10/2022,10,$3454343566
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* `date`

* `amount`

Dodaj tę miarę:

`=Sum(amount)`

W obszarze Formatowanie liczb wybierz pozycję Pieniądze, aby ustawić `Sum(amount)` jako wartość walutową.

Tabela wynikowa

| date | Amount | =Sum(amount) |
| --- | --- | --- |
| Sumy |  | $165099674156.00 |
| 01/01/2022 | $10000000441 | $10000000441.00 |
| 01/02/2022 | $21237492432 | $21237492432.00 |
| 01/03/2022 | $249475336 | $249475336.00 |
| 01/04/2022 | $24313369837 | $24313369837.00 |
| 01/05/2022 | $7873578754 | $7873578754.00 |
| 01/06/2022 | $24313884663 | $24313884663.00 |
| 01/07/2022 | $545883436 | $545883436.00 |
| 01/08/2022 | $35545828255 | $35545828255.00 |
| 01/09/2022 | $37565817436 | $37565817436.00 |
| 01/10/2022 | $3454343566 | $3454343566.00 |

Używana jest domyślna definicja `MoneyFormat`. Wygląda ona następująco: `$###0.00;-$###0.00`. W tabeli wyników format pola `amount` obejmuje symbol waluty i separator dziesiętny oraz miejsca dziesiętne.

## Przykład 2 – MoneyFormat z separatorem tysięcy i mieszanymi formatami wejściowymi

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

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych zawierający mieszankę formatów wejściowych, który został załadowany do tabeli o nazwie `Transactions`, z separatorami tysięcy i dziesiętnym.

* Zmodyfikowana wersja definicji `MoneyFormat` zawiera przecinek jako separator tysięcy.

* Jeden z wierszy ma pomyłkowo wstawione separatory tysięcy (przecinki) w niewłaściwych miejscach. Zwróć uwagę, że ta kwota została zinterpretowana jako tekst, nie jako liczba.

Skrypt ładowania

```
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.45'
01/02/2022,2,'$212,3749,24,32.23'
01/03/2022,3,$249475336.45
01/04/2022,4,$24,313,369,837
01/05/2022,5,$7873578754
01/06/2022,6,$24313884663
01/07/2022,7,$545883436
01/08/2022,8,$35545828255
01/09/2022,9,$37565817436
01/10/2022,10,$3454343566
];		
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* `date`

* `amount`

Dodaj tę miarę:

`=Sum(amount)`

W obszarze Formatowanie liczb wybierz pozycję Pieniądze, aby ustawić `Sum(amount)` jako wartość walutową.

Tabela wynikowa

| date | Amount | =Sum(amount) |
| --- | --- | --- |
| Sumy |  | $119,548,811,911.90 |
| 01/01/2022 | $10,000,000,441.45 | $10,000,000,441.45 |
| 01/02/2022 | $212,3749,24,32.23 | $0.00 |
| 01/03/2022 | $249475336.45 | $249,475,336.45 |
| 01/04/2022 | $24 | $24.00 |
| 01/05/2022 | $7873578754 | $7,873,578,754.00 |
| 01/06/2022 | $24313884663 | $24,313,884,663.00 |
| 01/07/2022 | $545883436 | $545,883,436.00 |
| 01/08/2022 | $35545828255 | $35,545,828,255.00 |
| 01/09/2022 | $37565817436 | $37,565,817,436.00 |
| 01/10/2022 | $3454343566 | $3,454,343,566.00 |

Na początku skryptu zmienna systemowa `MoneyFormat` została zmodyfikowana, aby definiowała przecinek jako separator tysięcy. W tabeli Qlik Sense widać, że ten separator jest używany do formatowania liczb. Jednak wiersz zawierający błędny separator nie został poprawnie zinterpretowany i ma postać zwykłego tekstu. Dlatego też nie został uwzględniony w kwocie łącznej.