Konwencje formatów liczb i godzin
W wielu funkcjach interpretacji i formatowania można ustawiać format liczb i dat przy użyciu kodu formatu. W tym temacie opisano konwencje formatowania dla liczby, daty, godziny i znacznika czasu. Konwencje te mają zastosowanie zarówno do funkcji skryptowych, jak i funkcji wykresu.
Formaty liczb
-
Aby wskazać określoną liczbę cyfr, należy użyć symbolu "0" dla każdej cyfry.
-
Aby wskazać możliwą cyfrę, należy użyć symbolu "#". Jeśli format zawiera tylko symbole # z lewej strony separatora dziesiętnego, liczby mniejsze od 1 zaczynają się separatorem dziesiętnym, a poprzedzające go zero jest pomijane. Jeśli format zawiera symbole # z prawej strony separatora dziesiętnego, wyświetlane są wszystkie wartości.
-
Aby oznaczyć pozycję separatora tysięcy lub separatora dziesiętnego, należy użyć odpowiedniego separatora tysięcy i separatora dziesiętnego.
Kod formatu jest używany do określania pozycji separatorów. Nie można ustawić separatora w kodzie formatu. W skrypcie należy do tego celu używać zmiennych DecimalSep i ThousandSep.
Separator tysięcy służy do grupowania cyfr według dowolnej liczby pozycji, np. można zastosować format ciągu znaków "0000-0000-0000" (separator tysięcy=„-”), aby wyświetlić dwunastocyfrowy numer części jako "0012-4567-8912".
DecimalSep oraz ThousandSep
Przykłady:
- # ##0: opisuje liczbę jako liczbę całkowitą z separatorem tysięcy.
- ###0: opisuje liczbę jako liczbę całkowitą bez separatora tysięcy.
- 0000: opisuje liczbę jako liczbę całkowitą z co najmniej czterema cyframi. Na przykład liczba 123 będzie wyświetlana jako 0123.
- 0.000: opisuje liczbę z trzema cyframi po przecinku.
- 0.0##: opisuje liczbę z trzema cyframi po przecinku. Niektóre mogą być wyświetlane jako zera.
Specjalne formaty liczb
W programie QlikView można interpretować i formatować liczby w systemie o dowolnej podstawie od 2 do 36, w tym w systemie dwójkowym, ósemkowym i szesnastkowym. Obsługuje on także liczby rzymskie.
Format | Opis |
---|---|
Format dwójkowy |
Aby wskazać format dwójkowy, kod formatu powinien zaczynać się od (bin) lub (BIN). |
Format ósemkowy |
Aby wskazać format ósemkowy, kod formatu powinien zaczynać się od (oct) lub (OCT). |
Format szesnastkowy |
Aby wskazać format szesnastkowy, kod formatu powinien zaczynać się od (hex) lub (HEX). W przypadku korzystania z wersji pisanej wielkimi literami do formatowania użyte zostaną znaki A-F (np. 14FA). Zastosowanie wersji pisanej małymi literami będzie skutkować formatowaniem przy użyciu znaków a-f (np. 14fa). Interpretacja będzie działać dla obu wariantów bez względu na wielkie litery w kodzie formatu. |
Format dziesiętny |
Użycie (dec) lub (DEC) w celu oznaczenia formatu dziesiętnego jest dozwolone, ale niekonieczne. |
Format z podstawą niestandardową |
Aby oznaczyć format o dowolnej podstawie od 2 do 36, kod formatu powinien zaczynać się od (rxx) lub (Rxx), gdzie xx to dwucyfrowy numer oznaczający stosowaną podstawę. Jeśli zostanie podana wielka litera R, wówczas przy formatowaniu w programie QlikView podstaw powyżej 10 będą używane wielkie litery (np. 14FA). Podanie małej litery r spowoduje formatowanie przy użyciu małych liter (np. 14fa). Interpretacja będzie działać dla obu wariantów bez względu na wielkie litery w kodzie formatu. Należy zauważyć, że (r02) to odpowiednik (bin), (R16) to odpowiednik (HEX) itd. |
Liczby rzymskie |
Aby wskazać format liczb rzymskich, kod formatu powinien zaczynać się od (rom) lub (ROM). W przypadku korzystania z wersji pisanej wielkimi literami do formatowania użyte zostaną wielkie litery (np. MMXVI). Zastosowanie wersji pisanej małymi literami będzie skutkować formatowaniem przy użyciu małych liter (mmxvi). Interpretacja będzie działać dla obu wariantów bez względu na wielkie litery w kodzie formatu. Liczby rzymskie są uogólniane za pomocą znaku minusa dla liczb ujemnych i 0 dla zera. W przypadku liczb rzymskich cyfry po przecinku są ignorowane. |
Przykłady:
- num(199, '(bin)') zwraca 11000111
- num(199, '(oct)') zwraca 307
- num(199, '(hex)') zwraca c7
- num(199, '(HEX)' ) zwraca C7
- num(199, '(r02)' ) zwraca 11000111
- num(199, '(r16)') zwraca c7
- num(199, '(R16)' ) zwraca C7
- num(199, '(R36)') zwraca 5J
- num(199, '(rom)') zwraca cxcix
- num(199, '(ROM)' ) zwraca CXCIX
Daty
Do formatowania daty można używać następujących symboli. Można użyć dowolnych separatorów.
Symbol | Opis |
---|---|
D |
Aby opisać dzień, należy użyć symbolu "D" dla każdej cyfry. |
M |
Aby opisać numer miesiąca, należy użyć symbolu "M".
MonthNames oraz LongMonthNames |
Y |
Aby opisać rok, należy użyć symbolu "Y" dla każdej cyfry. |
W |
Aby opisać dzień tygodnia, należy użyć symbolu "W".
DayNames oraz LongDayNames |
Przykłady: (na przykładzie daty 31 marca 2013 r.)
- YY-MM-DD opisuje datę jako 13-03-31.
- YYYY-MM-DD opisuje datę jako 3/31/13.
- YYYY-MMM-DD opisuje datę jako 2013-mar-31.
- DD MMMM YYYY opisuje datę jako 31 marca 2013.
- M/D/YY opisuje datę jako 3/31/13.
- W YY-MM-DD opisuje datę jako 6 13-03-31.
- WWW YY-MM-DD opisuje datę jako sob 13-03-31.
- WWWW YY-MM-DD opisuje datę jako sobota 13-03-31.
Godziny
Do formatowania godziny można używać następujących symboli. Można użyć dowolnych separatorów.
Symbol | Opis |
---|---|
h |
Aby opisać godziny, należy użyć symbolu "h" dla każdej cyfry. |
m |
Aby opisać minuty, należy użyć symbolu "m" dla każdej cyfry. |
s |
Aby opisać sekundy, należy użyć symbolu "s" dla każdej cyfry. |
f | Aby opisać ułamki sekund, należy użyć symbolu "f" dla każdej cyfry. |
tt |
Aby opisać godzinę w formacie AM/PM, należy po oznaczeniu godziny użyć symbolu "tt". |
Przykłady: (na przykładzie godziny 18:30):
- hh:mm: opisuje godzinę jako 18:30
- hh.mm.ss.ff: opisuje godzinę jako 18.30.00.00
- hh:mm:tt: opisuje godzinę jako 06:30:pm
Znaczniki czasu
W znacznikach czasu używany jest taki sam zapis jak w przypadku daty i godziny, zgodnie z powyższym opisem.
Przykłady: (na przykładzie znacznika czasu 31 marca 2013 18:30):
- YY-MM-DD hh:mm: opisuje znacznik czasu jako 13-03-31 18:30
- M/D/Y hh.mm.ss.ffff: opisuje znacznik czasu jako 3/31/13 18.30.00.0000