Het gedefinieerde scheidingsteken voor decimalen vervangt het decimaalteken voor valuta dat is ingesteld door uw landinstellingen.
Tip
Standaard toont Qlik Sense getallen en tekst anders in tabeldiagrammen. Getallen worden rechts uitgelijnd en tekst wordt links uitgelijnd. Dit maakt het eenvoudiger om problemen bij de omzetting van tekst-naar-getallen te vinden. Tabellen op deze pagina die resultaten van Qlik Sense weergeven, gebruiken deze opmaak.
Syntaxis:
MoneyDecimalSep
Qlik Sense-applicaties zullen tekstvelden die voldoen aan deze indeling interpreteren als geldwaarden. Het tekstveld moet het valutasymbool bevatten dat is gedefinieerd in de systeemvariabele MoneyFormat. MoneyDecimalSep is vooral nuttig wanneer gegevensbronnen worden verwerkt die zijn ontvangen met verschillende regionale instellingen.
Het volgende voorbeeld geeft een mogelijk gebruik van de systeemvariabele MoneyDecimalSep weer:
Set MoneyDecimalSep='.';
Deze functie wordt vaak gebruikt in combinatie met de volgende functies:
Gerelateerde functies
Functie
Interactie
MoneyFormat
Bij de interpretatie van een tekstveld, wordt het symbool MoneyFormat gebruikt als onderdeel van de interpretatie. Voor getalnotatie wordt de notatie MoneyFormat door Qlik Sense gebruikt in diagramobjecten.
MoneyThousandSep
Bij interpretatie van een tekstveld, moet ook aan de functie MoneyThousandSep worden voldaan.
Landinstellingen
Tenzij anders aangegeven, wordt in de voorbeelden in dit onderwerp de volgende datumindeling gebruikt: MM/DD/JJJJ. De datumopmaak wordt opgegeven in de opdracht SET DateFormat in uw script voor het laden van gegevens. De standaard datumindeling is mogelijk anders op uw systeem vanwege landinstellingen en andere factoren. U kunt de indelingen in de voorbeelden wijzigen zodat deze aansluiten op uw behoeften. Of u kunt de indelingen in uw load-script wijzigen zodat ze overeenkomen met deze voorbeelden.
Standaard landinstellingen in apps zijn gebaseerd op de regionale systeeminstellingen van de computer of server waarop Qlik Sense is geïnstalleerd. Als de Qlik Sense-server die u gebruikt is ingesteld op Zweden, gebruikt de editor voor laden van gegevens de Zweedse landinstellingen voor datums, tijd en valuta. Deze landinstellingen voor indelingen zijn niet gerelateerd aan de taal die wordt weergegeven in de gebruikersinterface van Qlik Sense. Qlik Sense wordt weergegeven in dezelfde taal als de browser die u gebruikt.
Voorbeeld 1 - MoneyDecimalSep puntnotatie (.)
Overzicht
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een gegevensverzameling met datums die wordt geladen in een tabel genaamd Transactions.
Verstrekte gegevens waarbij het geldveld de tekstnotatie met een punt '.' heeft die als scheidingsteken voor decimalen wordt gebruikt. Elk record wordt bovendien voorafgegaan door het symbool $, met uitzondering van het laatste record, dat vooraf wordt gegaan door het symbool £.
Vergeet niet dat de systeemvariabele MoneyFormat de dollar ($) definieert als standaardvaluta.
Load-script
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'
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie:amount.
Voeg de volgende metingen toe:
isNum(amount)
sum(amount)
Controleer de onderstaande resultaten die de juiste interpretatie van alleen alle dollar-waarden ($) laat zien.
Resultatentabel
amount
=isNum(amount)
=Sum(amount)
Totalen
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
De bovenstaande resultatentabel laat zien hoe het veld amount correct is geïnterpreteerd voor alle waarden met het dollar-prefix ($) en dat het amount met het pond-prefix (£) niet is omgezet in een geldelijke waarde.
Voorbeeld 2 - MoneyDecimalSep komma-notatie (,)
Overzicht
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een gegevensset die wordt geladen in de tabel Transactions.
Verstrekte gegevens waarbij het geldveld de tekstnotatie met een komma ',' heeft die als scheidingsteken voor decimalen wordt gebruikt. Elk record heeft ook het dollar-prefix ($) met uitzondering van het laatste record, dat het onjuiste scheidingsteken voor decimalen gebruikt, de punt '.'.
Vergeet niet dat de systeemvariabele MoneyFormat de dollar ($) definieert als standaardvaluta.
Load-script
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'
];
Resultaten
Alineatekst voor Resultaten.
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie:amount.
Voeg de volgende metingen toe:
isNum(amount)
sum(amount)
Controleer de onderstaande resultaten voor een demonstratie van de juiste interpretatie van alle waarden met uitzondering van het bedrag waarbij de punt '.' als scheidingsteken voor decimalen wordt gebruikt. In dat geval had een punt moeten zijn gebruikt in plaats van een komma.
Resultatentabel
amount
=isNum(amount)
=Sum(amount)
Totalen
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
Was deze pagina nuttig?
Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!