# inquarter — funkcja skryptu i funkcja wykresu

Ta funkcja zwraca wartość True, jeśli wartość timestamp należy do kwartału zawierającego wartość base\_date.

Składnia:

InQuarter (timestamp, base\_date, period\_no[, first\_month\_of\_year])

Typ zwracanych danych: Logiczna

W Qlik Sense wartość logiczna Prawda jest reprezentowana przez -1, a wartość Fałsz jest reprezentowana przez 0.

Diagram zakresu funkcji `inquarter()`

Diagram zakresu funkcji `inquarter()`

Diagram zakresu funkcji `inquarter()`inquarter() ![Diagram pokazujący zakres czasu uwzględniany przez funkcję inquarter().](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inquarter-diagram1.png)

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

| Month | Wartość |
| --- | --- |
| Luty | 2 |
| Marzec | 3 |
| Kwiecień | 4 |
| Maj | 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.

Domyślne ustawienia regionalne w aplikacjach są oparte na regionalnych ustawieniach systemu komputera lub serwera, na którym zainstalowano Qlik Sense. Jeśli serwer Qlik Sense, do którego uzyskujesz dostęp, jest ustawiony na Szwecję, Edytor ładowania danych użyje szwedzkich ustawień regionalnych dla dat, godziny i waluty. Te ustawienia regionalne nie są związane z językiem wyświetlanym w interfejsie użytkownika Qlik Sense. Interfejs Qlik Sense będzie wyświetlany w tym samym języku co używana przeglądarka.

Przykłady funkcji

| Przykład | Wynik |
| --- | --- |
| inquarter ('01/25/2013', '01/01/2013', 0) | Zwraca TRUE |
| inquarter ('01/25/2013', '04/01/2013', 0) | Zwraca FALSE |
| inquarter ('01/25/2013', '01/01/2013', -1) | Zwraca FALSE |
| inquarter ('12/25/2012', '01/01/2013', -1) | Zwraca TRUE |
| inquarter ('01/25/2013', '03/01/2013', 0, 3) | Zwraca FALSE |
| inquarter ('03/25/2013', '03/01/2013', 0, 3) | Zwraca TRUE |

## Przykład 1 — bez dodatkowych argumentów

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inquarter.htm)

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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.

Skrypt ładowania

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
    Load 
       *, 
       inquarter (date,'05/15/2022', 0) as in_quarter 
       ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Wyniki

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 poprzedniej instrukcji ładowania 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.

Diagram funkcji `inquarter()` z datą 15 maja jako datą bazową

Diagram funkcji `inquarter()` z datą 15 maja jako datą bazową

Diagram funkcji `inquarter()`inquarter() z datą 15 maja jako datą bazową![Diagram pokazujący zakres czasu ewaluowany przez funkcję inquarter()  z datą 15 maja jako datą bazową i rokiem podzielonym na kwartały.](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inquarter-example1-diagram.png)

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

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inquarter.htm)

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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.

Skrypt ładowania

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
    Load 
       *, 
       inquarter (date,'05/15/2022', -1) as previous_qtr 
       ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Wyniki

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.

Diagram funkcji `inquarter()` z datą 15 maja jako datą bazową

Diagram funkcji `inquarter()` z datą 15 maja jako datą bazową

Diagram funkcji `inquarter()`inquarter() z datą 15 maja jako datą bazową![Diagram pokazujący zakres czasu ewaluowany przez funkcję inquarter() z datą 15 maja jako datą bazową i argumentem period_no ustawionym na -1, aby przesunąć granice dat o jeden kwartał wstecz.](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inquarter-example2-diagram.png)

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

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inquarter.htm)

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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.

Skrypt ładowania

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
    Load 
       *, 
       inquarter (date,'05/15/2022', 0, 3) as in_quarter 
       ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Wyniki

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.

Diagram funkcji `inquarter()` z marcem jako pierwszym miesiącem roku

Diagram funkcji `inquarter()` z marcem jako pierwszym miesiącem roku

Diagram funkcji `inquarter()`inquarter() z marcem jako pierwszym miesiącem roku![Diagram pokazujący zakres czasu ewaluowany przez funkcję inmonths() z datą 15 maja jako datą bazową i marcem ustawionym jako pierwszy miesiąc roku.](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inquarter-example3-diagram.png)

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

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inquarter.htm)

#### Skrypt ładowania i wyrażenie wykresu

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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.

Skrypt ładowania

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Wyniki

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.

Diagram funkcji `inquarter()` z datą 15 maja jako datą bazową

Diagram funkcji `inquarter()` z datą 15 maja jako datą bazową

Diagram funkcji `inquarter()`inquarter() z datą 15 maja jako datą bazową![Diagram pokazujący zakres czasu ewaluowany przez funkcję inquarter()  z datą 15 maja jako datą bazową i rokiem podzielonym na kwartały.](https://help.qlik.com/pl-PL/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inquarter-example1-diagram.png)

Każda transakcja zawarta w okresie od 1 kwietnia do końca 30 czerwca powoduje zwrot logicznej prawdy w wyniku.

## Przykład 5 — zastosowanie

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inquarter.htm)

#### Skrypt ładowania i wyniki

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

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.

Skrypt ładowania

```
Products: 
Load 
* 
Inline  
[ 
product_id,manufacture_date,cost_price 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Wyniki

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.

Wykonaj następujące czynności:

1. Ustaw Formatowanie liczb miary na Waluta.

2. W sekcji Wygląd wyłącz Sumy.

Tabela wynikowa

| quartername(manufacture\_date) | =if(only(InQuarter(manufacture\_date,makedate(2022,05,15),0)),'Defective','Faultless') | Sum(cost\_price) |
| --- | --- | --- |
| Jan-Mar 2022 | Faultless | 253.89 |
| Apr-Jun 2022 | Defective | 351.48 |
| Jul-Sep 2022 | Faultless | 446.31 |
| Oct-Dec 2022 | Faultless | 163.91 |

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