Förutsättningar för tal- och tidsformat
I många funktioner för tolkning och formatering kan man ställa in formatet för tal och datum med hjälp av en formatkod. Detta avsnitt handlar om hur tal, datum, tider eller tidsangivelser ska formateras. Förutsättningarna gäller både för skript- och diagramfunktioner.
Talformat
-
För att ange ett visst antal siffror, använd symbolen "0" för varje siffra.
-
För att ange en möjlig siffra, använd symbolen "#". Om formatet bara innehåller #-symboler till vänster om decimalkommat och talet är mindre än 1 tas nollorna bort och det börjar med ett decimalkomma. Om formatet innehåller #-symboler till höger om decimalkommat visas alla värden.
-
För att markera tusentalsavgränsarens eller decimalavgränsarens position, använd rätt tusentalsavgränsare respektive decimalavgränsare.
Formatkoden används för att definiera avgränsarnas positioner. Det är alltså inte möjligt att ställa in avgränsartecknet i formatkoden. Använd variablerna DecimalSep och ThousandSep för detta i skriptet.
Tusentalsavgränsaren kan användas för att gruppera siffror efter antal placeringar. Exempelvis kan formatsträngen "0000-0000-0000" (tusentalsavgränsare="-") användas för att visa ett tolvsiffrigt tal som "0012-4567-8912".
Exempel:
- # ##0: beskriver talet som ett heltal med tusentalsavgränsare.
- ###0: beskriver talet som ett heltal utan tusentalsavgränsare.
- 0000: beskriver talet som ett heltal med minst fyra siffror. Med andra ord visas talet 123 som 0123.
- 0.000: beskriver talet med tre decimaler.
- 0.0##: beskriver talet med tre decimaler. Vissa visas kanske som nollor.
Speciella talformat
QlikView kan tolka och formatera tal i alla talbaser mellan 2 och 36, såväl binära och oktala som hexadecimala. Programmet kan även tolka romerska format.
Format | Beskrivning |
---|---|
Binärt format |
För att ange ett binärt format ska formatkoden börja med (bin) eller (BIN). |
Oktalt format |
För att ange ett oktalt format ska formatkoden börja med (oct) eller (OCT). |
Hexadecimalt format |
För att ange ett hexadecimalt format ska formatkoden börja med (hex) eller (HEX). När man skriver HEX med versaler används A-F vid formateringen (t.ex. 14FA). När man skriver hex med gemener används a-f vid formateringen (t.ex. 14fa). Vid tolkning fungerar båda varianterna oavsett om formatkoden skrivs med versal eller ej. |
Decimalformat |
Det är fullt möjligt men onödigt att ange decimalformat med (dec) eller (DEC). |
Eget talbasformat |
För att ange ett format inom en talbas mellan 2 och 36 ska formatkoden inledas med (rxx) eller (Rxx) där xx är det tvåsiffriga tal som betecknar den talbas som ska användas. Om det inledande versala R används kommer bokstäver i talbaser som överstiger 10 att skrivas med versaler när QlikView formaterar (t.ex. 14FA). Ett inledande, gement r resulterar följaktligen i formatering med gemener (t.ex. 14fa). Vid tolkning fungerar båda varianterna oavsett om formatkoden skrivs med versal eller ej. Observera att (r02) motsvarar (bin), (R16) motsvarar (HEX) och så vidare. |
Romerskt format |
För att ange romerska siffror ska formatkoden börja med (rom) eller (ROM). När man skriver med versaler används stora bokstäver vid formateringen (t.ex. MMXVI). När man skriver med gemener används gemener vid formateringen (mmxvi). Vid tolkning fungerar båda varianterna oavsett om formatkoden skrivs med versal eller ej. När man skriver med romerska siffror markeras negativa tal med minustecken och noll med 0. Decimaler ignoreras när man skriver med romerska siffror. |
Exempel:
- num(199, '(bin)') returnerar 11000111
- num(199, '(oct)') returnerar 307
- num(199, '(hex)') returnerar c7
- num(199, '(HEX)' ) returnerar C7
- num(199, '(r02)' ) returnerar 11000111
- num(199, '(r16)') returnerar c7
- num(199, '(R16)' ) returnerar C7
- num(199, '(R36)') returnerar 5J
- num(199, '(rom)') returnerar cxcix
- num(199, '(ROM)' ) returnerar CXCIX
Datum
Följande symboler kan användas för att formatera ett datum. Valfri avgränsare kan användas.
Symbol | Beskrivning |
---|---|
D |
För att beskriva dagen, använd symbolen "D" för varje siffra. |
M |
För att ange månadens nummer, använd symbolen "M".
|
Y |
För att beskriva året, använd symbolen "Y" för varje siffra. |
W |
För att beskriva veckodagen, använd symbolen "W".
DayNames och LongDayNames |
Exempel: (i exemplet visas den 31 mars 2013)
- YY-MM-DD anger datumet som 13-03-31.
- YYYY-MM-DD anger datumet som 2013-03-31.
- YYYY-MMM-DD anger datumet som 2013-Mar-31.
- DD MMMM YYYY anger datumet som 31 March 2013.
- M/D/YY anger datumet som 3/31/13.
- W YY-MM-DD anger datumet som 6 13-03-31.
- WWW YY-MM-DD anger datumet som Sat 13-03-31.
- WWWW YY-MM-DD anger datumet som Saturday 13-03-31.
Tider
Följande symboler kan användas för att formatera en tid. Valfri avgränsare kan användas.
Symbol | Beskrivning |
---|---|
h |
För att beskriva timmarna, använd symbolen "h" för varje siffra. |
m |
För att beskriva minuterna , använd symbolen "m" för varje siffra. |
s |
För att beskriva sekunderna, använd symbolen "s" för varje siffra. |
f | För att beskriva bråkdelar av sekunder, använd symbolen "f" för varje siffra. |
tt |
För att beskriva tid i AM/PM-format, använd symbolen "tt" efter tiden. |
Exempel: (i exemplet visas 18.30):
- hh:mm: anger tiden som 18:30
- hh.mm.ss.ff: anger tiden som 18.30.00.00
- hh:mm:tt: anger tiden som 06:30:pm.
Tidsangivelser
Samma notation som för datum och tider används i tidsangivelser.
Exempel: (exempeltidsmarkör är den 31 mars 2013, 18:30)
- YY-MM-DD hh:mm: anger tidsmarkören som 13-03-31 18:30
- M/D/Y hh.mm.ss.ffff: anger tidsmarkören som 3/31/13 18.30.00.0000