Tolkning av datum och tid
QlikView lagrar varje datum, tid eller tidsangivelse som ett serienummer för datum. Serienumret för datum används för datum, tider och tidsangivelser samt för aritmetiska beräkningar som baseras på datum- och tidsenheter. Datum och tider kan således adderas och subtraheras, intervall kan jämföras m.m.
Serienumret för datum är det antal dagar (äkta värde) som passerat sedan dec 30, 1899, dvs. att QlikView-formatet är identiskt med datumsystemet 1900 som används av Microsoft Excel och andra program, inom intervallet 1 mars 1900 och 28 februari 2100. Till exempel motsvarar 33857 den 10 september 1992. Utanför detta intervall använder QlikView samma datumsystem som finns i den gregorianska kalendern.
Serienumret 0,00000 motsvarar 00:00:00, medan 0,99999 motsvarar 23:59:59. Blandade tal anger datum och tid: serienumret 2.5 motsvarar den 1 januari, 1900, 12.00.
Data visas enligt textsträngens format. Som standard används de inställningar som gjorts i Kontrollpanelen. Man kan även ange dataformat med hjälp av skriptets variabler för taltolkning, eller med hjälp av en formateringsfunktion. Man kan dessutom omformatera data i arkobjektens egenskapsdialoger.
Exempel 1:
Datumsträng | Serienummer för datum |
---|---|
1997-08-06 | 35648 |
09:00 | 0.375 |
1997-08-06 09:00 | 35648.375 |
och omvänt.
Serienummer för datum | Specificerat talformat | Datumsträng |
---|---|---|
35648 | 'D/M/YY' | 6/8/97 |
0.375 | 'hh.mm' | 09.00 |
QlikView följer ett visst schema för tolkning av datum, tider och andra typer av data. Slutresultatet kommer emellertid att påverkas av ett antal faktorer som beskrivs här.
Exempel 2:
Nedanstående exempel förutsätter följande standardinställningar:
- Decimalavgränsare för tal:
- Kort datumformat: YY-MM-DD
- Tidsformat: hh:mm
Följande tabell visar olika representationer när data har lästs in i QlikView utan den speciella tolkningsfunktionen i skriptet:
Källdata | QlikView standardtolkning | datumformatet 'YYYY-MM-DD' | datumformatet 'MM/DD/YYYY' | tidsformatet 'hh:mm' | talformatet '# ##0.00' |
---|---|---|---|---|---|
0.375 | 0.375 | 1899-12-30 | 12/30/1899 | 09:00 | 0.38 |
33857 | 33857 | 1992-09-10 | 09/10/1992 | 00:00 | 33 857.00 |
97-08-06 | 97-08-06 | 1997-08-06 | 08/06/1997 | 00:00 | 35 648.00 |
970806 | 970806 | 4557-12-21 | 12/21/4557 | 00:00 | 970 806.00 |
8/6/97 | 8/6/97 | 8/6/97 | 8/6/97 | 8/6/97 | 8/6/97 |
I följande tabell visas olika återgivningar när data har lästs in i QlikView med hjälp av date#( A, 'M/D/YY')-tolkningsfunktionen i skriptet:
Källdata | QlikView standardtolkning | datumformatet 'YYYY-MM-DD' | datumformatet 'MM/DD/YYYY' | tidsformatet 'hh:mm' | talformatet '# ##0.00' |
---|---|---|---|---|---|
0.375 | 0.375 | 0.375 | 0.375 | 0.375 | 0.375 |
33857 | 33857 | 33857 | 33857 | 33857 | 33857 |
97-08-06 | 97-08-06 | 97-08-06 | 97-08-06 | 97-08-06 | 97-08-06 |
970806 | 970806 | 970806 | 970806 | 970806 | 970806 |
8/6/97 | 8/6/97 | 1997-08-06 | 08/06/1997 | 00:00 | 35 648.00 |