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

Examples:  

# ##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 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.

Examples:  

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.

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".

  • "M" i "MM" oznaczają odpowiednio jedną lub dwie cyfry.
  • "MMM" oznacza krótką nazwę miesiąca zapisaną literami, określoną w systemie operacyjnym lub poprzez nadpisanie w skrypcie zmiennej systemowej MonthNames.
  • "MMMM" oznacza długą nazwę miesiąca zapisaną literami, określoną w systemie operacyjnym lub poprzez nadpisanie w skrypcie zmiennej systemowej LongMonthNames.

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".

  • "W" spowoduje zwrócenie numeru dnia w postaci jednej cyfry, np. 0 dla poniedziałku.
  • "WW" spowoduje zwrócenie numeru dwucyfrowego, np. 02 dla środy.
  • "WWW" spowoduje wyświetlenie krótkiej wersji nazwy dnia tygodnia (np. Pon), określonej w systemie operacyjnym lub poprzez nadpisanie w skrypcie zmiennej systemowej DayNames.
  • "WWWW" spowoduje wyświetlenie długiej wersji nazwy dnia tygodnia (np. Poniedziałek), określonej w systemie operacyjnym lub poprzez nadpisanie w skrypcie zmiennej systemowej LongDayNames.

DayNames oraz LongDayNames

Examples: (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.

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".

Examples: (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.

Examples: (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