Ta funkcja zwraca bieżącą datę. Funkcja zwraca wartości w formacie zmiennej systemowej DateFormat.
Składnia:
today([
timer_mode])
Typ zwracanych danych: dual
Funkcji today() można użyć w skrypcie ładowania lub w obiektach wykresów.
Wartością domyślną timer_mode jest 1.
Argumenty
Argument
Opis
timer_mode
Może przyjmować następujące wartości:
0 (dzień ostatnio zakończonego ładowania danych) 1 (dzień w momencie wywołania funkcji) 2 (dzień w momencie otwarcia aplikacji)
InformacjaW przypadku użycia funkcji w skrypcie ładowania timer_mode=0 da wynik będący dniem ostatnio zakończonego ładowania danych, z kolei timer_mode=1 zwróci dzień wywołania funkcji w bieżącym ładowaniu danych.
Przykłady funkcji
timer_mode value
Wynik w przypadku użycia w skrypcie ładowania
Wynik w przypadku użycia w obiekcie wykresu
0
Zwraca datę, w formacie zmiennej systemowej DateFormat, ostatniego udanego przeładowania danych przed ostatnim załadowaniem danych.
Zwraca datę, w formacie zmiennej systemowej DateFormat, ostatniego przeładowania danych.
1
Zwraca datę, w formacie zmiennej systemowej DateFormat, ostatniego przeładowania danych.
Zwraca datę, w formacie zmiennej systemowej DateFormat, wywołania funkcji.
2
Zwraca datę, w formacie zmiennej systemowej DateFormat, początku sesji użytkownika w aplikacji. Zostanie on zaktualizowany dopiero po ponownym załadowaniu skryptu przez użytkownika.
Zwraca datę, w formacie zmiennej systemowej DateFormat, początku sesji użytkownika w aplikacji. Będzie on odświeżany na początku sesji lub po ponownym załadowaniu danych do aplikacji.
Kiedy używać
Funkcja today() jest używana jako element wyrażenia. Przy jej użyciu można na przykład obliczyć odsetki narosłe w ciągu miesiąca do bieżącej daty.
Poniższa tabela zawiera objaśnienie wyniku zwracanego przez funkcję today() dla różnych wartości argumentu timer_mode:
Ustawienia regionalne
Jeżeli nie podano inaczej, w przykładach w tym temacie stosowany jest następujący format daty: MM/DD/RRRR. Format daty jest określony w instrukcji SET DateFormat w skrypcie ładowania danych. Domyślny format daty w Twoim systemie może być inny ze względu na ustawienia regionalne i inne czynniki. Formaty zastosowane w przykładach można zmienić, aby dostosować je do własnych wymagań. Zamiast tego można też zmienić formaty w skrypcie ładowania, aby pasowały do tych przykładów. Więcej informacji można znaleźć w temacie Modyfikowanie ustawień regionalnych na potrzeby aplikacji i skryptów.
Domyślne ustawienia regionalne w aplikacjach są oparte na profilu użytkownika. Te ustawienia regionalne nie są związane z językiem wyświetlanym w interfejsie użytkownika Qlik Cloud. Interfejs Qlik Cloud będzie wyświetlany w tym samym języku co używana przeglądarka.
Przykład 1 – generowanie obiektów przy użyciu skryptu ładowania
Przegląd
Poniższy przykład tworzy trzy zmienne za pomocą funkcji today(). Każda zmienna używa jednej z opcji timer_mode w celu zademonstrowania tego efektu.
Aby zademonstrować przeznaczenie zmiennych, przeładuj skrypt, a następnie, po 24 godzinach, przeładuj go po raz drugi. Spowoduje to, że zmienne today(0) i today(1) będą miały różne wartości, co będzie stanowiło właściwą demonstrację ich przeznaczenia.
Skrypt ładowania
LET vPreviousDataLoad = today(0);
LET vCurrentDataLoad = today(1);
LET vApplicationOpened = today(2);
Wyniki
Gdy dane zostaną załadowane po raz drugi, utwórz trzy pola tekstowe, korzystając z poniższych wskazówek.
Najpierw utwórz pole tekstowe dla danych, które zostały wcześniej załadowane.
Wykonaj następujące czynności:
Używając obiektu wykresu Tekst i grafika, utwórz pole tekstowe.
Dodaj następującą miarę do obiektu:
=vPreviousDataLoad
W sekcji Wygląd wybierz Show titles i dodaj do obiektu tytuł „Previous Reload Time”.
Następnie utwórz pole tekstowe dla danych, które są aktualnie ładowane.
Wykonaj następujące czynności:
Używając obiektu wykresu Tekst i grafika, utwórz pole tekstowe.
Dodaj następującą miarę do obiektu:
=vCurrentDataLoad
W sekcji Wygląd wybierz Show titles i dodaj do obiektu tytuł „Current Reload Time”.
Utwórz ostatnie pole tekstowe, aby pokazać, kiedy sesja użytkownika w aplikacji została rozpoczęta.
Wykonaj następujące czynności:
Używając obiektu wykresu Tekst i grafika, utwórz pole tekstowe.
Dodaj następującą miarę do obiektu:
=vApplicationOpened
W sekcji Wygląd wybierz Show titles i dodaj do obiektu tytuł „User Session Started”.
Powyższy obraz pokazuje przykładowe wartości dla każdej z utworzonych zmiennych. Na przykład, te wartości mogą być następujące:
Czas poprzedniego przeładowania: 22.06.2022 r.
Czas bieżącego przeładowania: 23.06.2022 r.
Początek sesji użytkownika: 23.06.2022 r.
Przykład 2 – generowanie obiektów bez skryptu ładowania
Przegląd
Poniższy przykład tworzy trzy obiekty wykresu za pomocą funkcji today(). Każdy obiekt wykresu używa jednej z opcji timer_mode w celu zademonstrowania tego efektu.
W tym przykładzie nie ma skryptu ładowania.
Wyniki
Po załadowaniu danych drugi raz utwórz trzy pola tekstowe.
Najpierw utwórz pole tekstowe dla ostatniego przeładowania danych.
Wykonaj następujące czynności:
Używając obiektu wykresu Tekst i grafika, utwórz pole tekstowe.
Dodaj następującą miarę:
=today(0)
W sekcji Wygląd wybierz Pokaż tytuły i dodaj do obiektu tytuł „Latest Data Reload”.
Następnie utwórz pole tekstowe, aby pokazać bieżący czas.
Wykonaj następujące czynności:
Używając obiektu wykresu Tekst i grafika, utwórz pole tekstowe.
Dodaj następującą miarę:
=today(1)
W sekcji Wygląd wybierz Pokaż tytuły i dodaj do obiektu tytuł „Current Time”.
Utwórz ostatnie pole tekstowe, aby pokazać, kiedy sesja użytkownika w aplikacji została rozpoczęta.
Wykonaj następujące czynności:
Używając obiektu wykresu Tekst i grafika, utwórz pole tekstowe.
Dodaj następującą miarę:
=today(2)
W sekcji Wygląd wybierz Pokaż tytuły i dodaj do obiektu tytuł „User Session Began”.
Powyższy obraz pokazuje przykładowe wartości dla każdego z utworzonych obiektów. Na przykład, te wartości mogą być następujące:
Ostatnie przeładowanie danych: 23.06.2022 r.
Bieżący czas: 23.06.2022 r.
Początek sesji użytkownika: 23.06.2022 r.
Obiekt wykresu „Ostatnie przeładowanie danych” używa argumentu timer_mode o wartości 0. Powoduje to zwrócenie znacznika czasu ostatniego udanego przeładowania danych.
Obiekt wykresu „Bieżący czas” używa argumentu timer_mode o wartości 1. Powoduje to zwrócenie bieżącego czasu według zegara systemowego. Jeśli arkusz lub obiekt zostanie odświeżony, ta wartość zostanie zaktualizowana.
Obiekt wykresu „Początek sesji użytkownika” używa argumentu timer_mode o wartości 2. Powoduje to zwrócenie znacznika czasu otwarcia aplikacji i rozpoczęcia sesji użytkownika.
Przykład 3 — Scenariusz
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw sald kredytów, który jest ładowany do tabeli o nazwie Loans.
Tabela danych z polami identyfikatora kredytu, salda na początku miesiąca i prostej stopy procentowej naliczanej od każdego kredytu rocznie.
Użytkownik końcowy chciałby, aby obiekt wykresu wyświetlał według identyfikatora pożyczki bieżące odsetki naliczone od każdej pożyczki w bieżącym miesiącu. Mimo że aplikacja jest przeładowywana tylko raz na tydzień, użytkownik chciałby, aby wyniki były odświeżane przy każdym odświeżeniu obiektu lub aplikacji.
Funkcja monthstart() zwraca datę początkową bieżącego miesiąca, używając funkcji today() zwracającej bieżącą datę jako jedynego argumentu. Odejmując ten wynik od bieżącej daty, uzyskanej za pomocą funkcji today(), wyrażenie to zwraca liczbę dni, które upłynęły do tej pory w tym miesiącu.
Wartość ta jest następnie mnożona przez stopę procentową i dzielona przez 365, aby uzyskać wysokość odsetek nagromadzonych do tego momentu tygodnia. Wynik jest następnie mnożony przez saldo początkowe pożyczki, aby zwrócić odsetki naliczone do tej pory w tym miesiącu.
Ponieważ w wyrażeniu funkcjom today() jako argument timer_mode przekazano wartość 1, przy każdym odświeżeniu obiektu wykresu (przez otwarcie aplikacji, odświeżenie strony, przejście między arkuszami itd.) będzie zwracana bieżąca data, a wyniki będą odpowiednio odświeżane.
Czy ta strona była pomocna?
Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!