In Qlik Sense wird der boolesche Wert „wahr“ durch -1 dargestellt, der Wert „falsch“ durch 0.
In anderen Worten teilt die Funktion inquarter() das Jahr in vier gleiche Quartale zwischen dem 1. Januar und dem 31. Dezember auf. Sie können das Argument first_month_of_year verwenden, um zu ändern, welcher Monat in Ihrer App als der erste gilt. Die Quartale werden entsprechend diesem Argument geändert. Mit base_date identifiziert die Funktion, welches Quartal als Vergleichselement für die Funktion verwendet werden soll. Abschließend gibt die Funktion ein boolesches Ergebnis zurück, wenn die Datumswerte mit diesem Quartalssegment verglichen werden.
Verwendung
Die Funktion inquarter() gibt einen booleschen Wert zurück. In der Regel wird dieser Funktionstyp als Bedingung in einer if expression verwendet. Dies gibt eine Aggregierung oder Berechnung zurück, abhängig davon, ob ein Datum in das ausgewählte Quartal fällt.
Beispielsweise kann die Funktion inquarter() verwendet werden, um alle Geräte zu identifizieren, die in einem Quartalssegment hergestellt wurden, gestützt auf das Datum, an dem das jeweilige Gerät hergestellt wurde.
Argumente
Argument
Beschreibung
timestamp
Das Datum, das mit base_date verglichen werden soll.
base_date
Datum, das für die Interpretation des Quartals verwendet wird.
period_no
Mit period_no kann der Beginn für das Quartal festgelegt werden. period_no ist eine ganze Zahl, wobei 0 für das Quartal steht, das base_date enthält. Negative Werte von period_no stehen für vorangehende, positive Werte für nachfolgende Quartale.
first_month_of_year
Wenn Sie mit abweichenden Geschäftsjahren arbeiten möchten, definieren Sie mit einer Zahl zwischen 2 und 12 für first_month_of_year einen anderen Startmonat.
Sie können die folgenden Werte verwenden, um den ersten Monat des Jahres im Argument first_month_of_year festzulegen.
Werte für first_month_of_year
Monat
Wert
Februar
2
März
3
April
4
Mai
5
Juni
6
Juli
7
August
8
September
9
Oktober
10
November
11
Dezember
12
Regionaleinstellungen
Sofern nicht anders angegeben, verwenden die Beispiele in diesem Thema das folgende Datumsformat: MM/TT/JJJJ. Das Datumsformat wird in der Anweisung SET DateFormat in Ihrem Datenladeskript angegeben. Das Standarddatumsformat in Ihrem System kann aufgrund Ihrer regionalen Einstellungen und anderer Faktoren abweichen. Sie können die Formate in den Beispielen unten Ihren Anforderungen entsprechend ändern. Sie können auch die Formate in Ihrem Ladeskript entsprechend den Beispielen ändern.
Die standardmäßigen regionalen Einstellungen in Apps basieren auf den regionalen Systemeinstellungen der Computer oder Server, auf denen Qlik Sense installiert ist. Wenn der Qlik Sense-Server, auf den Sie zugreifen, auf Schweden festgelegt ist, verwendet der Dateneditor die schwedischen regionalen Einstellungen für Datums-, Uhrzeit- und Währungsangaben. Diese Einstellungen im regionalen Format hängen nicht mit der Sprache zusammen, die in der Benutzeroberfläche von Qlik Sense angezeigt wird. Qlik Sense wird in der gleichen Sprache wie der von Ihnen verwendete Browser angezeigt.
Funktionsbeispiele
Beispiel
Ergebnis
inquarter ('01/25/2013', '01/01/2013', 0)
Gibt TRUE zurück
inquarter ('01/25/2013', '04/01/2013', 0)
Gibt FALSE zurück
inquarter ('01/25/2013', '01/01/2013', -1)
Gibt FALSE zurück
inquarter ('12/25/2012', '01/01/2013', -1)
Gibt TRUE zurück
inquarter ('01/25/2013', '03/01/2013', 0, 3)
Gibt FALSE zurück
inquarter ('03/25/2013', '03/01/2013', 0, 3)
Gibt TRUE zurück
Beispiel 1 – keine zusätzlichen Argumente
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein Datensatz enthält eine Reihe von Transaktionen für 2022 und wird in eine Tabelle namens „Transactions“ geladen.
Eine vorangehende load-Anweisung enthält die Funktion inquarter(), die als das Feld „in_quarter“ festgelegt wird und bestimmt, welche Transaktionen im gleichen Quartal wie der 15. Mai 2022 stattfanden.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
date
in_quarter
Ergebnistabelle
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
Das Feld „in_quarter“ wird in der vorangehenden load-Anweisung mithilfe der Funktion inquarter() erstellt. Das erste Argument identifiziert, welches Feld ausgewertet wird. Das zweite Argument ist ein hartcodiertes Datum, der 15. Mai, das identifiziert, welches Quartal als Vergleichselement definiert wird. Eine period_no von 0 ist das abschließende Argument, das dafür sorgt, dass die Funktion inquarter() keine Quartale vor oder nach dem segmentierten Quartal vergleicht.
Jede Transaktion, die zwischen dem 1. April und dem Ende des 30. Junis stattfindet, gibt ein boolesches Ergebnis von TRUE zurück.
Beispiel 2 – period_no
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein Datensatz enthält eine Reihe von Transaktionen für 2022 und wird in eine Tabelle namens „Transactions“ geladen.
Eine vorangehende load-Anweisung enthält die Funktion inquarter(), die als das Feld „previous_quarter“ festgelegt wird und bestimmt, welche Transaktionen im Quartal vor dem Quartal des 15. Mai 2022 stattfanden.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
date
previous_qtr
Ergebnistabelle
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
Da -1 als Argument period_no in der Funktion inquarter() verwendet wird, werden die Grenzen des Vergleichsquartals um ein ganzes Quartal zurück verschoben. Der 15. Mai fällt in das zweite Quartal des Jahres, sodass das Segment anfänglich dem Zeitraum vom 1. April bis zum 30. Juni entspricht. Die period_no verschiebt dann dieses Segment um negative drei Monate, sodass die Datumsgrenzen der 1. Januar bis zum 30. März werden.
Daher gibt jede Transaktion, die zwischen dem 1. Januar und dem 30. März stattfindet, ein boolesches Ergebnis von TRUE zurück.
Beispiel 3 – first_month_of_year
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein Datensatz enthält eine Reihe von Transaktionen für 2022 und wird in eine Tabelle namens „Transactions“ geladen.
Eine vorangehende load-Anweisung enthält die Funktion inquarter(), die als das Feld „in_quarter“ festgelegt wird und bestimmt, welche Transaktionen im gleichen Quartal wie der 15. Mai 2022 stattfanden.
In diesem Beispiel legt aber die Organisationsrichtlinie den März als ersten Monat des Geschäftsjahres fest.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
date
previous_qtr
Ergebnistabelle
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
Da 3 als Argument first_month_of_year in der Funktion inquarter() verwendet wird, wird der 1. März als Jahresbeginn festgelegt und dann das Jahr in Quartale unterteilt. Daher lauten die Quartalssegmente Mär-Mai, Jun-Aug, Sep-Nov und Dez-Feb. Das base_date vom 15. Mai legt das Quartal Mär-Mai als Vergleichsquartal für die Funktion fest.
Daher gibt jede Transaktion, die zwischen dem 1. März und dem 31. Mai stattfindet, ein boolesches Ergebnis von TRUE zurück.
Beispiel 4 – Diagrammobjektbeispiel
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein Datensatz enthält eine Reihe von Transaktionen für 2022 und wird in eine Tabelle namens „Transactions“ geladen.
Eine vorangehende load-Anweisung enthält die Funktion inquarter(), die als das Feld „in_quarter“ festgelegt wird und bestimmt, welche Transaktionen im gleichen Quartal wie der 15. Mai 2022 stattfanden.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu:
date
Erstellen Sie die folgende Kennzahl, um zu berechnen, ob Transaktionen im selben Quartal wie der 15. Mai stattfanden:
=inquarter(date,'05/15/2022', 0)
Ergebnistabelle
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
Die Kennzahl „in_quarter“ wird im Diagramm anhand der Funktion inquarter() erstellt. Das erste Argument identifiziert, welches Feld ausgewertet wird. Das zweite Argument ist ein hartcodiertes Datum, der 15. Mai, das identifiziert, welches Quartal als Vergleichselement definiert wird. Eine period_no von 0 ist das abschließende Argument, das dafür sorgt, dass die Funktion inquarter() keine Quartale vor oder nach dem segmentierten Quartal vergleicht.
Jede Transaktion, die zwischen dem 1. April und dem Ende des 30. Junis stattfindet, gibt ein boolesches Ergebnis von TRUE zurück.
Beispiel 5 – Szenario
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Datensatz, der in eine Tabelle namens „Products“ geladen wird
Die Tabelle enthält die folgenden Felder:
product ID
product type
manufacture date
cost price
Es wurde festgestellt, dass aufgrund eines Ausrüstungsfehlers die in der Woche vom 15. Mai 2022 hergestellten Produkte mangelhaft waren. Der Endbenutzer möchte ein Diagramm, das nach Namen des Quartals den Status der hergestellten Produkte angibt und zeigt, welche „mangelhaft“ und welche „einwandfrei“ waren und was die in diesem Quartal gefertigten Produkte gekostet haben.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu:
=quartername(manufacture_date)
Erstellen Sie die folgenden Kennzahlen:
=if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless'), um zu identifizieren, welche Produkte mangelhaft und welche einwandfrei sind. Verwenden Sie dafür die Funktion inquarter().
=sum(cost_price), um die Summe der Kosten für jedes Produkt zu zeigen.
Gehen Sie folgendermaßen vor:
Legen Sie das Zahlenformat der Kennzahl auf Währung fest.
Deaktivieren Sie unter Darstellung die Option Gesamtwerte.
Die Funktion inquarter() gibt einen booleschen Wert zurück, wenn sie das Herstellungsdatum der einzelnen Produkte auswertet. Für alle im Quartal, in dem der 15. Mai liegt, hergestellten Produkte gibt die Funktion inquarter() einen booleschen Wert von TRUE zurück und markiert die Produkte als „mangelhaft“. Alle Produkte, die einen Wert von FALSE zurückgeben und daher nicht in diesem Quartal hergestellt wurden, werden als „einwandfrei“ markiert.
Hat diese Seite Ihnen geholfen?
Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!