W Qlik Sense wartość logiczna Prawda jest reprezentowana przez -1, a wartość Fałsz jest reprezentowana przez 0.
Innymi słowy, funkcja inquarter() dzieli rok na cztery równe kwartały między 1 stycznia a 31 grudnia. Za pomocą argumentu first_month_of_year można zmienić pierwszy miesiąc w aplikacji i wówczas kwartały zostaną odpowiednio dostosowane. Argument base_date – funkcja określa, który kwartał powinien zostać użyty jako komparator dla funkcji. Na koniec funkcja zwraca wynik logiczny porównywania wartości dat z tym segmentem kwartału.
Kiedy używać
Funkcja inquarter() zwraca wynik logiczny. Zazwyczaj ten typ funkcji będzie używany jako warunek w if expression. W wyniku zwraca agregację lub obliczenia zależne od tego, czy data wypada w określonym kwartale.
Na przykład za pomocą funkcji inquarter() można zidentyfikować cały sprzęt wyprodukowany w segmencie kwartału na podstawie dat produkcji tego sprzętu.
Argumenty
Argument
Opis
timestamp
Data, która ma być porównana z wartością base_date.
base_date
Data używana do oceny kwartału.
period_no
Kwartał może zostać przesunięty o wartość period_no. period_no jest liczbą całkowitą, gdzie 0 oznacza kwartał zawierający wartość base_date. Wartości ujemne parametru period_no oznaczają kwartały poprzednie, a wartości dodatnie — kwartały następne.
first_month_of_year
Jeśli użytkownik zamierza korzystać z lat (obrotowych), które nie zaczynają się w styczniu, powinien wskazać wartość od 2 do 12 jako parametr first_month_of_year.
Aby ustawić pierwszy miesiąc roku w argumencie first_month_of_year, możesz użyć następujących wartości:
first_month_of_year values
Miesiąc
Wartość
Luty
2
Marzec
3
Kwiecień
4
May
5
Czerwiec
6
Lipiec
7
Sierpień
8
Wrzesień
9
Październik
10
Listopad
11
Grudzień
12
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.
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie Transactions.
Ładowanie poprzedzające zawiera funkcję inquarter() ustawioną jako polein_quarter i określa, które transakcje zostały zawarte w tym samym kwartale, do którego należy data 15 maja 2022 roku.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
date
in_quarter
Tabela wynikowa
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Pole in_quarter jest tworzone w instrukcji ładowania poprzedzającego przy użyciu funkcji inquarter(). Pierwszy argument określa, które pole jest oceniane. Drugi argument to wpisana bezpośrednio w kod data 15 maja określająca, który kwartał ma zostać wybrany jako porównawczy. Na końcu przekazano wartość 0 jako argument period_no, aby funkcja inquarter() nie porównywała kwartałów poprzedzających segmentowany kwartał lub następujących po nim.
Każda transakcja zawarta w okresie od 1 kwietnia do końca 30 czerwca powoduje zwrot logicznej prawdy w wyniku.
Przykład 2 – period_no
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie Transactions.
Ładowanie poprzedzające zawiera funkcję inquarter() ustawioną jako pole previous_quarter i określa, które transakcje zostały zawarte w kwartale poprzedzającym kwartał obejmujący datę 15 maja 2022 roku.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
date
previous_qtr
Tabela wynikowa
date
previous_qtr
1/7/2022
-1
1/19/2022
-1
2/5/2022
-1
2/28/2022
-1
3/16/2022
-1
4/1/2022
0
5/7/2022
0
5/16/2022
0
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Przekazanie funkcji inquarter() wartości -1 jako argumentu period_no powoduje przesunięcie granic kwartału porównawczego wstecz o pełny kwartał. 15 maja wypada w drugim kwartale roku, a więc początkowo segment obejmuje daty od 1 kwietnia do 30 czerwca. Argument period_no przesuwa ten segment o trzy miesiące wstecz, powodując zmianę dat granicznych na 1 stycznia i 30 marca.
W związku z tym każda transakcja zawarta między 1 stycznia a 30 marca spowoduje zwrócenie w wyniku logicznej prawdy.
Przykład 3 — first_month_of_year
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie Transactions.
Ładowanie poprzedzające zawiera funkcję inquarter() ustawioną jako pole in_quarter i określa, które transakcje zostały zawarte w tym samym kwartale, do którego należy data 15 maja 2022 roku.
W tym przykładzie przyjęto jednak, że marzec ma być pierwszym miesiącem roku podatkowego.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:
date
previous_qtr
Tabela wynikowa
date
previous_qtr
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
-1
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Przekazanie wartości 3 jako argumentu first_month_of_year funkcji inquarter() powoduje ustawienie 1 marca jako początku roku, a następnie jego podzielenie na cztery kwartały. W efekcie kwartały obejmują następujące okresy: marzec–maj, czerwiec–sierpień, wrzesień–listopad, grudzień–luty. Wartość 15 maja argumentu base_date ustawia kwartał marzec–maj jako kwartał porównawczy dla funkcji.
W związku z tym każda transakcja zawarta między 1 marca a 31 maja spowoduje zwrócenie w wyniku logicznej prawdy.
Przykład 4 — przykład z obiektem wykresu
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych zawierający zestaw transakcji za rok 2022, który jest ładowany do tabeli o nazwie Transactions.
Ładowanie poprzedzające zawiera funkcję inquarter() ustawioną jako pole in_quarter i określa, które transakcje zostały zawarte w tym samym kwartale, do którego należy data 15 maja 2022 roku.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj to pole jako wymiar:
date
Aby obliczyć, czy transakcje zostały zawarte w tym samym kwartale, w którym wypada 15 maja, utwórz następującą miarę:
=inquarter(date,'05/15/2022', 0)
Tabela wynikowa
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Miara in_quarter jest tworzona na wykresie przy użyciu funkcji inquarter(). Pierwszy argument określa, które pole jest oceniane. Drugi argument to wpisana bezpośrednio w kod data 15 maja określająca, który kwartał ma zostać wybrany jako porównawczy. Na końcu przekazano wartość 0 jako argument period_no, aby funkcja inquarter() nie porównywała kwartałów poprzedzających segmentowany kwartał lub następujących po nim.
Każda transakcja zawarta w okresie od 1 kwietnia do końca 30 czerwca powoduje zwrot logicznej prawdy w wyniku.
Przykład 5 — scenariusz
Przegląd
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej karty.
Skrypt ładowania zawiera:
Zestaw danych załadowany do tabeli o nazwie Products.
Tabela zawiera następujące pola:
identyfikator produktu,
typ produktu,
data produkcji,
cena.
Stwierdzono, że z powodu błędu sprzętowego produkty wytworzone w kwartale obejmującym datę 15 maja 2022 r. są wadliwe. Użytkownik końcowy chciałby, aby wykres wyświetlał według nazwy kwartału informację na temat tego, które z wyprodukowanych produktów były wadliwe, a które bez wad, oraz koszt produktów wytworzonych w danym kwartale.
Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj to pole jako wymiar:
=quartername(manufacture_date)
Utwórz następujące miary:
=if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless') – określa, które produkty są wadliwe, a które bez wad, za pomocą funkcji inquarter().
=sum(cost_price) – pokazuje sumę kosztów wszystkich produktów.
Funkcja inquarter() zwraca wartość logiczną podczas oceny dat wytworzenia każdego z produktów. Dla każdego produktu wyprodukowanego w kwartale obejmującym 15 maja funkcja inquarter() zwraca wartość logiczną TRUE i oznacza go jako wadliwy. Dla każdego produktu zwracającego wartość FALSE, a zatem niewyprodukowanego w danym kwartale, oznacza go jako pozbawiony wad (Faultless).
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ć!