# MoneyDecimalSep

Il separatore dei decimali specificato sostituisce il simbolo decimale per la valuta impostato nelle impostazioni locali.

Nota di suggerimento

Per impostazione predefinita, in Qlik Sense i numeri e il testo vengono visualizzati in modo diverso nei grafici a tabella. I numeri sono allineati a destra e il testo è allineato a sinistra. In questo modo è facile individuare i problemi di conversione da testo a numero. Tutte le tabelle di questa pagina che mostrano i risultati Qlik Sense utilizzeranno questa formattazione.

Sintassi:

MoneyDecimalSep

Le applicazioni Qlik Sense interpretano i campi di testo conformi a questa formattazione come valori monetari. Il campo di testo deve contenere il simbolo di valuta definito nella variabile di sistema `MoneyFormat`. Il valore `MoneyDecimalSep` è particolarmente utile quando si gestiscono sorgenti dati ricevute da più impostazioni regionali diverse.

Il seguente esempio mostra un possibile utilizzo della variabile di sistema `MoneyDecimalSep`:

`Set MoneyDecimalSep='.';`

Questa funzione viene spesso utilizzata insieme alle funzioni seguenti:

Funzioni correlate

| Funzione | Interazione |
| --- | --- |
| `MoneyFormat` | Nei casi di interpretazione di campi di testo, il simbolo `MoneyFormat` verrà utilizzato come parte dell'interpretazione. Per la Formattazione dei numeri, la formattazione `MoneyFormat` verrà utilizzata da Qlik Sense negli Oggetti grafico. |
| `MoneyThousandSep` | Nei casi di interpretazione di campi di testo, è necessario rispettare anche la funzione `MoneyThousandSep`. |

## Impostazioni locali

Se non diversamente specificato, gli esempi di questo argomento utilizzano il seguente formato di data: MM/GG/AAAA. Il formato della data viene specificato nell'istruzione `SET DateFormat` nello script di caricamento dei dati. La formattazione predefinita della data potrebbe essere diversa nel proprio sistema, a causa delle impostazioni regionali e di altri fattori. È possibile modificare i formati degli esempi seguenti in base alle proprie esigenze. In alternativa, è possibile modificare i formati nel proprio script di caricamento per adattarli a questi esempi.

Le impostazioni regionali predefinite delle app si basano sulle impostazioni regionali del sistema del computer o del server in cui risulta installato Qlik Sense. Se il server Qlik Sense a cui si accede è impostato in Svezia, l'editor caricamento dati utilizzerà le impostazioni regionali svedesi per date, ora e valuta. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Sense. Qlik Sense verrà visualizzato nella stessa lingua del browser utilizzato.

## Esempio 1 - Notazione MoneyDecimalSep punto (.)

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

#### Script di caricamento e risultati

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati caricato in una tabella denominata `Transactions`.

* Dati forniti che hanno il loro campo monetario in formato testo con un punto '.' usato come separatore decimale. Ogni record è inoltre preceduto dal simbolo "$", tranne l'ultimo record, che è preceduto dal simbolo "£".

Tenere presente che la variabile di sistema `MoneyFormat` definisce il dollaro '$' come valuta predefinita.

Script di caricamento

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

Transactions:
Load
date,
id,
amount
Inline 
[
date,id,amount
01/01/2022,1,'$14.41'
01/02/2022,2,'$2,814.32'
01/03/2022,3,'$249.36'
01/04/2022,4,'$24.37'
01/05/2022,5,'$7.54'
01/06/2022,6,'$243.63'
01/07/2022,7,'$545.36'
01/08/2022,8,'$3.55'
01/09/2022,9,'$3.436'
01/10/2022,10,'£345.66'
];					
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:`amount`.

Aggiungere le seguenti misure:

* `isNum(amount)`

* `sum(amount)`

Esaminare i risultati qui sotto, dimostrando la corretta interpretazione di tutti i valori del dollaro "$".

Tabella dei risultati

| importo | =isNum(amount) | =Sum(amount) |
| --- | --- | --- |
| Totali | 0 | $3905.98 |
| £345.66 | 0 | $0.00 |
| $3.436 | -1 | $3.44 |
| $3.55 | -1 | $3.55 |
| $7.54 | -1 | $7.54 |
| $14.41 | -1 | $14.41 |
| $24.37 | -1 | $24.37 |
| 243.63 | -1 | $243.63 |
| $249.36 | -1 | $249.36 |
| $545.36 | -1 | $545.36 |
| $2,814.32 | -1 | $2814.32 |

La tabella dei risultati sopra mostra come il campo `amount` sia stato interpretato correttamente per tutti i valori con prefisso dollaro ($), mentre il prefisso sterlina (£) `amount` non è stato convertito in un valore monetario.

## Esempio 2 - Notazione MoneyDecimalSep virgola (,)

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

#### Script di caricamento e risultati

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati caricato in una tabella denominata `Transactions`.

* Dati forniti che hanno il loro campo monetario in formato testo con una virgola '.' usato come separatore decimale. Ogni record è inoltre preceduto dal simbolo '$', ad eccezione dell'ultimo record, che utilizza erroneamente il separatore decimale a punti '.'.

Tenere presente che la variabile di sistema `MoneyFormat` definisce il dollaro '$' come valuta predefinita.

Script di caricamento

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

Transactions:
Load
date,
id,
amount
Inline 
[
date,id,amount
01/01/2022,1,'$14,41'
01/02/2022,2,'$2.814,32'
01/03/2022,3,'$249,36'
01/04/2022,4,'$24,37'
01/05/2022,5,'$7,54'
01/06/2022,6,'$243,63'
01/07/2022,7,'$545,36'
01/08/2022,8,'$3,55'
01/09/2022,9,'$3,436'
01/10/2022,10,'$345.66'
];
```

Risultati

Testo del paragrafo per i Risultati.

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:`amount`.

Aggiungere le seguenti misure:

* `isNum(amount)`

* `sum(amount)`

Esaminare i risultati qui sotto, dimostrando la corretta interpretazione di tutti i valori, ad eccezione dell'importo in cui il separatore decimale utilizza la notazione del punto '. In questo caso si sarebbe dovuta usare una virgola.

Tabella dei risultati

| importo | =isNum(amount) | =Sum(amount) |
| --- | --- | --- |
| Totali | 0 | $3905.98 |
| $345.66 | 0 | $0.00 |
| $3,436 | -1 | $3.44 |
| $3,55 | -1 | $3.55 |
| $7,54 | -1 | $7.54 |
| $14,41 | -1 | $14.41 |
| $24,37 | -1 | $24.37 |
| $243,63 | -1 | $243.63 |
| $249,36 | -1 | $249.36 |
| $545,36 | -1 | $545.36 |
| $2.814,32 | -1 | $2814.32 |