Deze omgevingsvariabele definieert de datumnotatie die als standaard wordt gebruikt in de app en op datumretourfuncties zoals date() en date#(). De notatie wordt gebruikt om datums te interpreteren en op te maken. Als de variabele niet is gedefinieerd, wordt de datumnotatie die is ingesteld door uw regionale instellingen opgehaald wanneer het script wordt uitgevoerd.
Syntaxis:
DateFormat
Voorbeelden functie DateFormat
Voorbeeld
Resultaat
Set DateFormat='M/D/YY'; //(US format)
Dit gebruik van de functie DateFormat definieert de datum als de Amerikaanse notatie, maand/dag/jaar.
Set DateFormat='DD/MM/YY'; //(UK date format)
Dit gebruik van de functie DateFormat definieert de datum als de Britse notatie, dag/maand/jaar.
Set DateFormat='YYYY/MM/DD'; //(ISO date format)
Dit gebruik van de functie DateFormat definieert de datum als de ISO-notatie, jaar/maand/dag.
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 – Standaardsysteemvariabelen
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 van datums.
De functie DateFormat die de Amerikaanse datumnotatie gebruikt.
In dit voorbeeld wordt een gegevensset geladen in de tabel ‘Transactions’. Deze bevat een veld date. De Amerikaanse DateFormat-definitie wordt gebruikt. Dit patroon wordt gebruikt voor de omzetting van impliciete tekst naar een datum wanneer de tekstdatums worden geladen.
Load-script
Set DateFormat='MM/DD/YYYY';
Transactions:
LOAD
date,
month(date) as month,
id,
amount
INLINE
[
date,id,amount
01/01/2022,1,1000
02/01/2022,2,2123
03/01/2022,3,4124
04/01/2022,4,2431
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
date
month
Maak deze meting:
=sum(amount)
Resultatentabel
date
month
=sum(amount)
01/01/2022
Jan
1000
02/01/2022
Feb
2123
03/01/2022
Mar
4124
04/01/2022
Apr
2431
De definitie DateFormat MM/DD/YYYY wordt gebruikt voor de impliciete omzetting van tekst in datums en dit is waarom het veld date als een datum wordt geïnterpreteerd. Dezelfde notatie wordt gebruikt voor het weergeven van de datum, zoals in de resultatentabel wordt getoond.
Voorbeeld 2 – Systeemvariabele wijzigen
Overzicht
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Dezelfde gegevensverzameling uit het vorige voorbeeld.
De DateFormat functie die de notatie 'DD/MM/JJJJ' gebruikt.
Load-script
SET DateFormat='DD/MM/YYYY';
Transactions:
LOAD
date,
month(date) as month,
id,
amount
INLINE
[
date,id,amount
01/01/2022,1,1000
02/01/2022,2,2123
03/01/2022,3,4124
04/01/2022,4,2431
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
date
month
Maak deze meting:
=sum(amount)
Resultatentabel
date
month
=sum(amount)
01/01/2022
Jan
1000
02/01/2022
Jan
2123
03/01/2022
Jan
4124
04/01/2022
Jan
2431
Omdat de definitie DateFormat is ingesteld op 'DD/MM/JJJJ' ziet u dat de twee getallen achter het eerste '/'-symbool zijn geïnterpreteerd als maand, waardoor alle records afkomstig zijn uit de maand januari.
Voorbeeld 3 – Interpretatie van datum
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 in numerieke indeling.
De DateFormat variabele die de notatie 'DD/MM/JJJJ' gebruikt.
De date() variabele.
Load-script
SET DateFormat='MM/DD/YYYY';
Transactions:
Load
date(numerical_date),
month(date(numerical_date)) as month,
id,
amount
Inline
[
numerical_date,id,amount
43254,1,1000
43255,2,2123
43256,3,4124
43258,4,2431
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
date
month
Maak deze meting:
=sum(amount)
Resultatentabel
date
month
=sum(amount)
06/03/2022
Jun
1000
06/04/2022
Jun
2123
06/05/2022
Jun
4124
06/07/2022
Jun
2431
In het load-script gebruikt u de date() functie om de numerieke datum om te zetten in een datumnotatie. Omdat u in de functie geen specifieke notatie als tweede argument opgeeft, wordt de DateFormat gebruikt. Dit resulteert in een datumveld met de notatie 'MM/DD/JJJJ'.
Voorbeeld 4 – Notatie buitenlandse datum
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 van datums.
De variabele DateFormat, die de notatie 'DD/MM/JJJJ' gebruikt maar niet wordt omsloten door slashes.
Load-script
// SET DateFormat='DD/MM/YYYY';
Transactions:
Load
date,
month(date) as month,
id,
amount
Inline
[
date,id,amount
22-05-2022,1,1000
23-05-2022,2,2123
24-05-2022,3,4124
25-05-2022,4,2431
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
date
month
Maak deze meting:
=sum(amount)
Resultatentabel
date
month
=sum(amount)
22-05-2022
-
1000
23-05-2022
-
2123
24-05-2022
-
4124
25-05-2022
-
2431
In het initiële load-script wordt DateFormat gebruikt als de standaard 'MM/DD/JJJJ'. Omdat het veld date in de gegevensverzameling Transacties deze notatie niet heeft, wordt het veld niet als datum geïnterpreteerd. Dit is te zien in de resultatentabel waarin de veldwaarden month null zijn.
U kunt de geïnterpreteerde gegevenstypen verifiëren in de gegevensmodelviewer door de eigenschappen van 'Labels' van het veld date te controleren:
Dit kan worden opgelost door de systeemvariabele DateFormat in te schakelen:
// SET DateFormat='DD/MM/YYYY';
Verwijder de dubbele slashes en laad de gegevens opnieuw.
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!