# weekyear Skript- und Diagrammfunktion

Diese Funktion liefert das Jahr, zu dem die Wochennummer gemäß den Umgebungsvariablen zählt. Die Kalenderwochen bewegen sich zwischen 1 und circa 52.

weekyear(timestamp [, first\_week\_day [, broken\_weeks [, reference\_day]]])

Rückgabe Datentyp: Ganze Zahl

Argumente

| Argument | Beschreibung |
| --- | --- |
| timestamp | Datum oder Zeitstempel für die Evaluierung. |
| first\_week\_day | Legt den Tag fest, an dem die Woche beginnt. Ist nichts definiert, wird der Wert der Variable FirstWeekDay verwendet.<br><br>Die möglichen Werte für first\_week\_day sind 0 für Montag, 1 für Dienstag, 2 für Mittwoch, 3 für Donnerstag, 4 für Freitag, 5 für Samstag und 6 für Sonntag.<br><br><br>Weitere Informationen über die Systemvariable finden Sie unter [FirstWeekDay](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm). |
| broken\_weeks | Wenn Sie broken\_weeks nicht angeben, wird der Wert der Variablen BrokenWeeks verwendet, um festzulegen, ob die Wochen gestückelt sind oder nicht.<br><br><br>Weitere Informationen über die Systemvariable finden Sie unter [BrokenWeeks](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/BrokenWeeks.htm) |
| reference\_day | Wenn Sie reference\_day nicht angeben, wird der Wert der Variablen ReferenceDay verwendet, um festzulegen, welcher Tag im Januar als Referenztag für die Definition von Woche 1 konfiguriert wird. Standardmäßig nutzen Qlik Sense-Funktionen 4 als Referenztag. Das heißt, dass die Woche 1 den 4. Januar enthalten muss, oder anders ausgedrückt: Woche 1 muss immer mindestens 4 Tage im Januar enthalten.<br><br><br>Weitere Informationen über die Systemvariable finden Sie unter [ReferenceDay](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/ReferenceDay.htm) |

Die Funktion `weekyear()` bestimmt, in welche Woche eines Jahres das Datum fällt. Dann gibt sie das Jahr zurück, das dieser Wochennummer entspricht.

Wenn `BrokenWeeks` auf `0` (false) festgelegt ist, gibt `weekyear()` den gleichen Wert wie `year()` zurück.

Diagramm des Bereichs der Funktion `weekyear()`

Diagramm des Bereichs der Funktion `weekyear()`

Diagramm des Bereichs der Funktion `weekyear()`weekyear() ![Diagram that shows the range of time that the weekyear() function evaluates. The weekyear() identifies the year that a week number took place in.](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekyear-diagram1.png)

Wenn jedoch die Systemvariable `BrokenWeeks` auf nicht gestückelte Wochen festgelegt ist, darf Woche 1 nur eine bestimmte Anzahl Tage im Januar umfassen, basierend auf dem Wert, der in der Systemvariablen `ReferenceDay` angegeben ist.

Wenn beispielsweise ein Wert für `ReferenceDay` von `4` verwendet wird, muss Woche 1 mindestens vier Tage im Januar enthalten. Woche 1 kann Datumswerte im Dezember des Vorjahres enthalten, oder die letzte Wochennummer eines Jahres kann Datumswerte im Januar des Folgejahres enthalten. In diesen Situationen gibt die Funktion `weekyear()` einen anderen Wert als die Funktion `year()` zurück.

Diagramm des Bereichs der Funktion `weekyear()`, wenn nicht gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`, wenn nicht gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`weekyear(), wenn nicht gestückelte Wochen verwendet werden ![Diagram that shows how the weekyear() function works with unbroken weeks. If unbroken weeks are used, the weekyear() function will return a different value than the year() function.](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekyear-diagram2.png)

Verwendung

Die Funktion `weekyear()` ist nützlich, wenn Sie Aggregierungen nach Jahren vergleichen möchten. Das ist beispielsweise der Fall, wenn Sie den Gesamtumsatz von Produkten nach Jahr anzeigen möchten. Die Funktion `weekyear()` wird anstelle von `year()` gewählt, wenn der Benutzer die Einheitlichkeit mit der Systemvariablen `BrokenWeeks` in der Anwendung beibehalten möchte.

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

Standardmäßige regionale Einstellungen in Anwendungen basieren auf den regionalen Systemeinstellungen des Computers oder Servers, auf dem 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-, Zeit- und Währungsangaben. Diese regionalen Formateinstellungen hängen nicht mit der Sprache zusammen, die in der Qlik Sense Benutzeroberfläche angezeigt wird. Qlik Sense wird in derselben Sprache angezeigt wie der von Ihnen verwendete Browser.

Funktionsbeispiele

| Beispiel | Ergebnis |
| --- | --- |
| `weekyear('12/30/1996',0,0,4)` | Gibt 1997 zurück, weil Woche 1 von 1997 am 12/30/1996 beginnt |
| `weekyear('01/02/1997',0,0,4)` | Liefert 1997 |
| `weekyear('12/28/1997',0,0,4)` | Liefert 1997 |
| `weekyear('12/30/1997',0,0,4)` | Gibt 1998 zurück, weil die Woche 1 von 1998 am 12/29/1997 beginnt |
| `weekyear('01/02/1999',0,0,4)` | Gibt 1998, weil die Woche 53 von 1998 am 01/03/1999 endet |

Verwandte Themen

| Thema | Interaktion |
| --- | --- |
| [week Skript- und Diagrammfunktion](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/week.htm) | Gibt eine Ganzzahl für die Wochennummer gemäß ISO 8601 zurück. |
| [year Skript- und Diagrammfunktion](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/year.htm) | Gibt das Jahr als Ganzzahl zurück, wenn die Formel entsprechend der Standardzahleninterpretation als Datum interpretiert wird. |

## Beispiel 1 – Gestückelte Wochen

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

#### Ladeskript und Ergebnisse

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Ein Datensatz mit einer Reihe von Transaktionen für die letzte Woche in 2020 und die erste Woche in 2021, der in eine Tabelle namens „`Transactions`“ geladen wird.

* Variable `BrokenWeeks`, die auf 1 festgelegt ist

* Eine vorangehende load-Anweisung, die Folgendes enthält:

  * Die `weekyear()` Funktion, die als das Feld „`week_year`“ festgelegt ist, das das Jahr zurückgibt, in dem die Transaktionen stattfanden.

  * Die Funktion `week()`, die als das Feld „`week`“ festgelegt ist, das die Wochennummer für jedes Transaktionsdatum zeigt.

Ladeskript

```
SET BrokenWeeks=1; 
						
Transactions: 
	Load 
       *, 
       week(date) as week, 
       weekyear(date) as week_year 
       ; 
Load 
* 
Inline  
[ 
id,date,amount 
8176,12/28/2020,19.42 
8177,12/29/2020,23.80 
8178,12/30/2020,82.06 
8179,12/31/2020,40.56 
8180,01/01/2021,37.23 
8181,01/02/2021,17.17 
8182,01/03/2021,88.27 
8183,01/04/2021,57.42
8184,01/05/2021,67.42 
8185,01/06/2021,23.80 
8186,01/07/2021,82.06 
]; 
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* `id`
* `date`
* `week`
* `week_year`

Ergebnistabelle

| ID | Datum | Woche | week\_year |
| --- | --- | --- | --- |
| 8176 | 12/28/2020 | 53 | 2020 |
| 8177 | 12/29/2020 | 53 | 2020 |
| 8178 | 12/30/2020 | 53 | 2020 |
| 8179 | 12/31/2020 | 53 | 2020 |
| 8180 | 01/01/2021 | 1 | 2021 |
| 8181 | 01/02/2021 | 1 | 2021 |
| 8182 | 01/03/2021 | 2 | 2021 |
| 8183 | 01/04/2021 | 2 | 2021 |
| 8184 | 01/05/2021 | 2 | 2021 |
| 8185 | 01/06/2021 | 2 | 2021 |
| 8186 | 01/07/2021 | 2 | 2021 |

Das Feld ‘`week_year`’ wird im vorangehenden load-Befehl erstellt, indem die Funktion `weekyear()` verwendet und das Datumsfeld als Argument der Funktion übergeben wird.

Die Systemvariable `BrokenWeeks` ist auf `1` festgelegt, was bedeutet, dass die Anwendung gestückelte Wochen verwendet. Woche 1 beginnt am 1. Januar.

Diagramm des Bereichs der Funktion `weekyear()`, wenn gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`, wenn gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`weekyear(), wenn gestückelte Wochen verwendet werden ![Diagram that shows the weekyear() function identifies that transaction 8181 took place in week 1 and returns the year of that week, 2021.](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekyear-examples1_and3-diagram.png)

Transaktion 8181 findet am 2. Januar statt, der in Woche 1 liegt. Daher wird ein Wert von 2021 für das Feld „`week_year`“ zurückgegeben.

## Beispiel 2 – Ungestückelte Wochen

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

#### Ladeskript und Ergebnisse

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz mit einer Reihe von Transaktionen für die letzte Woche in 2020 und die erste Woche in 2021, der in eine Tabelle namens „`Transactions`“ geladen wird

* Variable `BrokenWeeks`, die auf `0` festgelegt ist

* Ein vorangehender load-Befehl, der Folgendes enthält:

  * Die Funktion `weekyear()`, die als das Feld „`week_year`“ festgelegt ist, das das Jahr zurückgibt, in dem die Transaktion stattfand.

  * Die Funktion `week()`, die als das Feld „`week`“ festgelegt ist, das die Wochennummer für jedes Transaktionsdatum zeigt.

In diesem Beispiel legt die Unternehmensrichtlinie aber die Verwendung von nicht gestückelten Wochen fest.

Ladeskript

```
SET BrokenWeeks=0; 
						
Transactions: 
	Load 
       *, 
       week(date) as week, 
       weekyear(date) as week_year 
       ; 
Load 
* 
Inline  
[ 
id,date,amount 
8176,12/28/2020,19.42 
8177,12/29/2020,23.80 
8178,12/30/2020,82.06 
8179,12/31/2020,40.56 
8180,01/01/2021,37.23 
8181,01/02/2021,17.17 
8182,01/03/2021,88.27 
8183,01/04/2021,57.42
8184,01/05/2021,67.42 
8185,01/06/2021,23.80 
8186,01/07/2021,82.06 
]; 
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* `id`
* `date`
* `week`
* `week_year`

Ergebnistabelle

| ID | Datum | Woche | week\_year |
| --- | --- | --- | --- |
| 8176 | 12/28/2020 | 53 | 2020 |
| 8177 | 12/29/2020 | 53 | 2020 |
| 8178 | 12/30/2020 | 53 | 2020 |
| 8179 | 12/31/2020 | 53 | 2020 |
| 8180 | 01/01/2021 | 53 | 2020 |
| 8181 | 01/02/2021 | 53 | 2020 |
| 8182 | 01/03/2021 | 1 | 2021 |
| 8183 | 01/04/2021 | 1 | 2021 |
| 8184 | 01/05/2021 | 1 | 2021 |
| 8185 | 01/06/2021 | 1 | 2021 |
| 8186 | 01/07/2021 | 1 | 2021 |

Die Systemvariable `BrokenWeeks` ist auf `0` festgelegt, was bedeutet, dass die Anwendung nicht gestückelte Wochen verwendet. Daher ist es nicht erforderlich, dass Woche 1 am 1. Januar beginnt.

Woche 53 des Jahres 2020 dauert bis zum Ende des 2. Januars 2021, und Woche 1 von 2021 beginnt am Sonntag, den 3. Januar 2021.

Diagramm des Bereichs der Funktion `weekyear()`, wenn nicht gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`, wenn nicht gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`weekyear(), wenn nicht gestückelte Wochen verwendet werden ![Diagram that shows how the weekyear() function works with unbroken weeks and that week 53 has days in 2020 and 2021. Transaction 8181 takes place on January 2 but the weekyear() function identifies its year as 2020 because of the unbroken weeks.](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekyear-example2-diagram.png)

Transaktion 8181 findet am 2. Januar statt, der in Woche 1 liegt. Daher wird ein Wert von 2021 für das Feld „`week_year`“ zurückgegeben.

## Beispiel 3 – Diagrammobjektbeispiel

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

#### Ladeskript und Diagrammformel

Übersicht

Es werden derselbe Datenatz und dasselbe Szenario wie im ersten Beispiel verwendet.

In diesem Beispiel wird der Datensatz jedoch unverändert in die Anwendung geladen. Die Berechnung, die die Wochennummer des Jahres zurückgibt, in dem die Transaktionen stattfanden, wird als Kennzahl in einem Diagramm der Anwendung erstellt.

Ladeskript

```
SET BrokenWeeks=1; 
						
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8176,12/28/2020,19.42 
8177,12/29/2020,23.80 
8178,12/30/2020,82.06 
8179,12/31/2020,40.56 
8180,01/01/2021,37.23 
8181,01/02/2021,17.17 
8182,01/03/2021,88.27 
8183,01/04/2021,57.42
8184,01/05/2021,67.42 
8185,01/06/2021,23.80 
8186,01/07/2021,82.06 
]; 
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:

* `id`
* `date`

Um die Woche zu berechnen, in der eine Transaktion stattfindet, erstellen Sie die folgende Kennzahl:

* `=week(date)`

Um das Jahr, in dem eine Transaktion stattfindet, basierend auf der Wochennummer zu berechnen, erstellen Sie die folgende Kennzahl:

* `=weekyear(date)`

Ergebnistabelle

| ID | Datum | Woche | week\_year |
| --- | --- | --- | --- |
| 8176 | 12/28/2020 | 53 | 2020 |
| 8177 | 12/29/2020 | 53 | 2020 |
| 8178 | 12/30/2020 | 53 | 2020 |
| 8179 | 12/31/2020 | 53 | 2020 |
| 8180 | 01/01/2021 | 1 | 2021 |
| 8181 | 01/02/2021 | 1 | 2021 |
| 8182 | 01/03/2021 | 2 | 2021 |
| 8183 | 01/04/2021 | 2 | 2021 |
| 8184 | 01/05/2021 | 2 | 2021 |
| 8185 | 01/06/2021 | 2 | 2021 |
| 8186 | 01/07/2021 | 2 | 2021 |

Das Feld ‘`week_year`’ wird im vorangehenden load-Befehl erstellt, indem die Funktion `weekyear()` verwendet und das Datumsfeld als Argument der Funktion übergeben wird.

Die Systemvariable `BrokenWeeks` ist auf `1` festgelegt, was bedeutet, dass die Anwendung gestückelte Wochen verwendet. Woche 1 beginnt am 1. Januar.

Diagramm des Bereichs der Funktion `weekyear()`, wenn gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`, wenn gestückelte Wochen verwendet werden

Diagramm des Bereichs der Funktion `weekyear()`weekyear(), wenn gestückelte Wochen verwendet werden ![Diagram that shows the weekyear() function identifies that transaction 8181 took place in week 1 and returns the year of that week, 2021.](https://help.qlik.com/de-DE/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekyear-examples1_and3-diagram.png)

Transaktion 8181 findet am 2. Januar statt, der in Woche 1 liegt. Daher wird ein Wert von 2021 für das Feld „`week_year`“ zurückgegeben.

## Beispiel 4 – Szenario

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

#### Ladeskript und Ergebnisse

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt ein.

Das Ladeskript umfasst:

* Datensatz mit einer Reihe von Transaktionen für die letzte Woche in 2020 und die erste Woche in 2021, der in eine Tabelle namens „`Transactions`“ geladen wird

* Variable `BrokenWeeks`, die auf `0` festgelegt ist Das bedeutet, das die Anwendung nicht gestückelte Wochen verwendet.

* Variable `ReferenceDay`, die auf `2` festgelegt ist Das bedeutet, dass das Jahr am 2. Januar beginnt und mindestens zwei Tage im Januar umfasst.

* Variable `FirstWeekDay`, die auf `1` festgelegt ist Damit wird der erste Tag der Woche auf einen Dienstag festgelegt.

Gemäß der Unternehmensrichtlinie werden nicht gestückelte Wochen verwendet. Der Endbenutzer möchte ein Diagramm, das den Gesamtumsatz nach Jahr darstellt. Die Anwendung verwendet nicht gestückelte Wochen, wobei Woche 1 mindestens zwei Tage im Januar enthält.

Ladeskript

```
SET BrokenWeeks=0; 
SET ReferenceDay=2; 
SET FirstWeekDay=1; 
 
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8176,12/28/2020,19.42 
8177,12/29/2020,23.80 
8178,12/30/2020,82.06 
8179,12/31/2020,40.56 
8180,01/01/2021,37.23 
8181,01/02/2021,17.17 
8182,01/03/2021,88.27 
8183,01/04/2021,57.42 
8184,01/05/2021,67.42 
8185,01/06/2021,23.80 
8186,01/07/2021,82.06 
]; 
```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle.

Um das Jahr, in dem eine Transaktion stattfindet, basierend auf der Wochennummer zu berechnen, erstellen Sie die folgende Kennzahl:

* `=weekyear(date)`

Erstellen Sie die folgende Kennzahl, um den Gesamtumsatz zu berechnen:

* `sum(amount)`

Legen Sie die Zahlenformatierung der Kennzahl auf Währung fest.

Ergebnistabelle

| weekyear(date) | =sum(amount) |
| --- | --- |
| 2020 | 19.42 |
| 2021 | 373.37 |