# daynumberofyear - Skript- und Diagrammfunktion

Diese Funktion berechnet die Nummer des Tages des Jahres, in dem der Zeitstempel liegt. Die Berechnung erfolgt ab der ersten Millisekunde des ersten Tags des Jahres, aber der Beginn des ersten Monats kann festgelegt werden.

Syntax:

DayNumberOfYear(timestamp[,start\_month])

Rückgabe Datentyp: ganze Zahl

Argumente

| Argument | Beschreibung |
| --- | --- |
| timestamp | Datum oder Zeitstempel für die Evaluierung. |
| start\_month | Durch Angabe von start\_month zwischen 2 und 12 (bei fehlender Angabe wird 1 ausgewählt) können Sie den Beginn des Jahres variieren. Beginnt Ihr Geschäftsjahr beispielsweise am 1. März, geben Sie für den Parameter start\_month = 3 ein. |

In diesen Beispielen wird das Datumsformat DD/MM/YYYY verwendet. Das Datumsformat wird im Befehl SET DateFormat oben in Ihrem Datenladeskript angegeben. Ändern Sie das Format in den Beispielen nach Bedarf.

Funktionsbeispiele

| Beispiel | Ergebnis |
| --- | --- |
| `DayNumberOfYear( '12/09/2014' )` | Liefert 256, die Nummer des Tages vom ersten Tag des Jahres an gezählt. |
| `DayNumberOfYear( '12/09/2014',3 )` | Liefert 196, die Nummer des Tages vom 1. März an gezählt. |

## Beispiel 1 – Jahresanfang im Januar (Skript)

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

#### Ladeskript und Ergebnisse

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Ein einfacher Datensatz enthält eine Liste der Datumsangaben, die in eine Tabelle mit dem Namen `Calendar` geladen werden. Die `DateFormat`-Standardsystemvariable MM/TT/JJJJ wird verwendet.

* Einen vorangehenden load-Befehl, mit dem ein zusätzliches Feld mit dem Namen `daynryear` erstellt wird, unter Verwendung der Funktion `DayNumberOfYear()`.

Abgesehen vom Datum werden der Funktion keine weiteren Parameter bereitgestellt.

Ladeskript

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

Calendar: 
Load 
	date, 
	DayNumberOfYear(date) as daynryear
	;
Load
date
Inline
[ 
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
];				
```

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:

* `date`

* `daynryear`

Ergebnistabelle

| date | daynryear |
| --- | --- |
| 01/01/2022 | 1 |
| 01/10/2022 | 10 |
| 01/31/2022 | 31 |
| 02/01/2022 | 32 |
| 02/10/2022 | 41 |
| 06/30/2022 | 182 |
| 07/26/2022 | 208 |
| 10/31/2022 | 305 |
| 11/01/2022 | 306 |
| 12/31/2022 | 366 |

Der erste Tag des Jahres ist der 1. Januar, weil kein zweites Argument an die Funktion `DayNumberOfYear()` übergeben wurde.

Der 1. Januar ist der 1. Tag des Quartals, während der 1. Februar der 32. Tag des Jahres ist. Der 30. Juni ist der 182. Tag, während der 31. Dezember der 366. und letzte Tag des Jahres ist.

## Beispiel 2 – Jahresanfang im November (Skript)

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

#### Ladeskript und Ergebnisse

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Den gleichen Datensatz wie im ersten Beispiel.

* Die `DateFormat`-Standardsystemvariable MM/TT/JJJJ wird verwendet.

* Ein Argument `start_month`, das am 1. November beginnt. Damit wird der Beginn des Geschäftsjahres auf den 1. November festgelegt.

Ladeskript

```

SET DateFormat='MM/DD/YYYY'; 

Calendar: 
Load 
	date, 
	DayNumberOfYear(date,11) as daynryear
	;
Load
date
Inline
[ 
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
];				
```

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:

* `date`

* `daynryear`

Ergebnistabelle

| date | daynryear |
| --- | --- |
| 01/01/2022 | 62 |
| 01/10/2022 | 71 |
| 01/31/2022 | 92 |
| 02/01/2022 | 93 |
| 02/10/2022 | 102 |
| 06/30/2022 | 243 |
| 07/26/2022 | 269 |
| 10/31/2022 | 366 |
| 11/01/2022 | 1 |
| 12/31/2022 | 61 |

Der erste Tag des Jahres ist der 1. November, weil das zweite Argument, das an die Funktion `DayNumberOfYear()` übergeben wurde, 11 war.

Der 1. Januar ist der 1. Tag des Quartals, während der 1. Februar der 32. Tag des Jahres ist. Der 30. Juni ist der 182. Tag, während der 31. Dezember der 366. und letzte Tag des Jahres ist.

## Beispiel 3 – Jahresanfang im Januar (Diagramm)

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

#### Ladeskript und Diagrammformel

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Den gleichen Datensatz wie im ersten Beispiel.

* Die `DateFormat`-Standardsystemvariable MM/TT/JJJJ wird verwendet.

In diesem Beispiel wird jedoch der unveränderte Datensatz in die Anwendung geladen. Der Wert des Tages des Quartals wird anhand einer Kennzahl in einem Diagrammobjekt berechnet.

Ladeskript

```
SET DateFormat='MM/DD/YYYY';
						
Calendar:
Load
date
Inline
[
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
]; 
```

Ergebnisse

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:

`=daynumberofyear(date)`

Ergebnistabelle

| date | =daynumberofyear(date) |
| --- | --- |
| 01/01/2022 | 1 |
| 01/10/2022 | 10 |
| 01/31/2022 | 31 |
| 02/01/2022 | 32 |
| 02/10/2022 | 41 |
| 06/30/2022 | 182 |
| 07/26/2022 | 208 |
| 10/31/2022 | 305 |
| 11/01/2022 | 306 |
| 12/31/2022 | 366 |

Der erste Tag des Jahres ist der 1. Januar, weil kein zweites Argument an die Funktion `DayNumberOfYear()` übergeben wurde.

Der 1. Januar ist der 1. Tag des Jahres , während der 1. Februar der 32. Tag des Jahres ist. Der 30. Juni ist der 182. Tag, während der 31. Dezember der 366. und letzte Tag des Jahres ist.

## Beispiel 4 – Jahresanfang im November (Diagramm)

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

#### Ladeskript und Diagrammformel

Überblick

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.

Das Ladeskript umfasst:

* Den gleichen Datensatz wie im ersten Beispiel.

* Die DateFormat-Standardsystemvariable MM/TT/JJJJ wird verwendet.

* Das Geschäftsjahr läuft vom 1. November bis zum 31. Oktober.

In diesem Beispiel wird jedoch der unveränderte Datensatz in die Anwendung geladen. Der Wert des Tages des Jahres wird anhand einer Kennzahl in einem Diagrammobjekt berechnet.

Ladeskript

```

SET DateFormat='MM/DD/YYYY';
Calendar:
Load
date
Inline
[
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
]; 
```

Ergebnisse

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:

=daynumberofyear(date)

Ergebnistabelle

| date | =daynumberofyear(date,11) |
| --- | --- |
| 01/01/2022 | 62 |
| 01/10/2022 | 71 |
| 01/31/2022 | 92 |
| 02/01/2022 | 93 |
| 02/10/2022 | 102 |
| 06/30/2022 | 243 |
| 07/26/2022 | 269 |
| 10/31/2022 | 366 |
| 11/01/2022 | 1 |
| 12/31/2022 | 61 |

Der erste Tag des Jahres ist der 1. November, weil das zweite Argument, das an die Funktion DayNumberOfYear() übergeben wurde, 11 war.

Das Geschäftsjahr läuft von November bis Oktober. Dies wird in der Ergebnistabelle gezeigt, wo der 1. November der 1. Tag des Jahres ist, während der 31. Oktober der 366. und letzte Tag des Jahres ist.