# month Skript- und Diagrammfunktion

Diese Funktion gibt einen dualen Wert zurück: ein Monatsname gemäß Definition in der Umgebungvariable MonthNames sowie eine Ganzzahl zwischen 1-12. Der Monat berechnet sich durch die Datumsinterpretation der Formel entsprechend dem Standardformat.

Die Funktion gibt den Namen des Monats im Format der Systemvariablen `MonthName` für ein bestimmtes Datum zurück. Sie wird gewöhnlich verwendet, um ein Tagesfeld als Dimension in einem Master-Kalender zu erstellen.

Syntax:

month(expression)

Rückgabe Datentyp: ganze Zahl

Funktionsbeispiele

| Beispiel | Ergebnis |
| --- | --- |
| `month(<br>2012-10-12 )` | liefert Oct |
| `month(<br>35648 )` | liefert Aug, da 35648 = 1997-08-06 |

## Beispiel 1 – DateFormat-Datensatz (Skript)

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

#### Ladeskript und Ergebnisse

Übersicht

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

Das Ladeskript umfasst:

* Einen Datensatz mit Datumsangaben mit dem Namen `Master_Calendar`. Die Systemvariable `DateFormat` wird auf TT/MM/JJJJ festgelegt.

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

* Ein weiteres Feld mit dem Namen `long_date`, das die Funktion `date()` verwendet, um das vollständige Datum auszudrücken.

Ladeskript

```

SET DateFormat='DD/MM/YYYY';

Master_Calendar:
Load
        date,
        date(date,'dd-MMMM-YYYY') as long_date,
        month(date) as month_name
Inline 
[
date
03/01/2022
03/02/2022
03/03/2022
03/04/2022
03/05/2022
03/06/2022
03/07/2022
03/08/2022
03/09/2022
03/10/2022
03/11/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`

* `long_date`

* `month_name`

Ergebnistabelle

| Datum | long\_date | month\_name |
| --- | --- | --- |
| 03/01/2022 | 3. Januar 2022 | Jan |
| 03/02/2022 | 3. Februar 2022 | Feb |
| 03/03/2022 | 3. März 2022 | Mär |
| 03/04/2022 | 3. April 2022 | Apr |
| 03/05/2022 | 3. Mai 2022 | Mai |
| 03/06/2022 | 3. Juni 2022 | Jun |
| 03/07/2022 | 3. Juli 2022 | Jul |
| 03/08/2022 | 3. August 2022 | Aug |
| 03/09/2022 | 3. September 2022 | Sep |
| 03/10/2022 | 3. Oktober 2022 | Okt |
| 03/11/2022 | 3. November 2022 | Nov |

Der Name des Monats wird korrekt von der Funktion `month()` im Skript ausgewertet.

## Beispiel 2 – ANSI-Datum (Skript)

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

#### Ladeskript und Ergebnisse

Übersicht

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

Das Ladeskript umfasst:

* Einen Datensatz mit Datumsangaben mit dem Namen `Master_Calendar`. Die DateFormat-Systemvariable TT/MM/JJJJ wird verwendet. Die im Datensatz enthaltenen Datumsangaben weisen aber das ANSI-Standarddatumsformat auf.

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

* Ein weiteres Feld mit dem Namen `long_date`, das die Funktion date() verwendet, um das vollständige Datum auszudrücken.

Ladeskript

```

SET DateFormat='DD/MM/YYYY'; 
Master_Calendar: 
Load 
       date, 
       date(date,'dd-MMMM-YYYY') as long_date, 
       month(date) as month_name 

Inline  
[ 
date 
2022-01-11 
2022-02-12 
2022-03-13 
2022-04-14 
2022-05-15 
2022-06-16 
2022-07-17 
2022-08-18 
2022-09-19
2022-10-20 
2022-11-21 
]; 
```

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`

* `long_date`

* `month_name`

Ergebnistabelle

| Datum | long\_date | month\_name |
| --- | --- | --- |
| 03/11/2022 | 11. März 2022 | 11 |
| 03/12/2022 | 12. März 2022 | 12 |
| 03/13/2022 | 13. März 2022 | 13 |
| 03/14/2022 | 14. März 2022 | 14 |
| 03/15/2022 | 15. März 2022 | 15 |
| 03/16/2022 | 16. März 2022 | 16 |
| 03/17/2022 | 17. März 2022 | 17 |
| 03/18/2022 | 18. März 2022 | 18 |
| 03/19/2022 | 19. März 2022 | 19 |
| 03/20/2022 | 20. März 2022 | 20 |
| 03/21/2022 | 21. März 2022 | 21 |

Der Name des Monats wird korrekt von der Funktion `month()` im Skript ausgewertet.

## Beispiel 3 – Unformatiertes Datum (Skript)

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

#### Ladeskript und Ergebnisse

Übersicht

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

Das Ladeskript umfasst:

* Einen Datensatz mit Datumsangaben mit dem Namen `Master_Calendar`. Die `  DateFormat `-Systemvariable TT/MM/JJJJ wird verwendet.

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

* Das ursprüngliche unformatierte Datum mit dem Namen `unformatted_date`.

* Ein weiteres Feld mit dem Namen `long_date`, das die Funktion `  date() ` verwendet, um das vollständige Datum auszudrücken.

Ladeskript

```

SET DateFormat='DD/MM/YYYY'; 

Master_Calendar: 
Load 
      unformatted_date, 
      date(unformatted_date,'dd-MMMM-YYYY') as long_date, 
      month(unformatted_date) as month_name 

Inline
[ 
unformatted_date 
44868 
44898 
44928 
44958 
44988 
45018 
45048 
45078 
45008 
45038 
45068 
]; 
```

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:

* `unformatted_date`

* `long_date`

* `month_name`

Ergebnistabelle

| unformatted\_date | long\_date | month\_name |
| --- | --- | --- |
| 44868 | 3. Januar 2022 | Jan |
| 44898 | 3. Februar 2022 | Feb |
| 44928 | 3. März 2022 | Mär |
| 44958 | 3. April 2022 | Apr |
| 44988 | 3. Mai 2022 | Mai |
| 45018 | 3. Juni 2022 | Jun |
| 45048 | 3. Juli 2022 | Jul |
| 45078 | 3. August 2022 | Aug |
| 45008 | 3. September 2022 | Sep |
| 45038 | 3. Oktober 2022 | Okt |
| 45068 | 3. November 2022 | Nov |

Der Name des Monats wird korrekt von der Funktion `month()` im Skript ausgewertet.

## Beispiel 4 – Berechnen des Ablaufmonats

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

#### Ladeskript und Diagrammformel

Übersicht

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

Das Ladeskript umfasst:

* Ein Datensatz der im März aufgegebenen Bestellungen mit dem Namen `Subscriptions`. Die Tabelle enthält drei Felder:

  * ID

  * order\_date

  * Betrag

Ladeskript

```

Subscriptions: 
Load 
	 id, 
	 order_date, 
	 amount 
Inline  
[ 
id,order_date,amount 
1,03/01/2022,231.24 
2,03/02/2022,567.28 
3,03/03/2022,364.28 
4,03/04/2022,575.76 
5,03/05/2022,638.68 
6,03/06/2022,785.38 
7,03/07/2022,967.46 
8,03/08/2022,287.67 
9,03/09/2022,764.45 
10,03/10/2022,875.43 
11,03/11/2022,957.35 
]; 

```

Ergebnisse

Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu: `order_date`.

Zum Berechnen des Monats, in dem ein Auftrag abläuft, erstellen Sie die folgende Kennzahl: `=month(order_date+180)`.

Ergebnistabelle

| order\_date | =month(order\_date+180) |
| --- | --- |
| 03/01/2022 | Jul |
| 03/02/2022 | Aug |
| 03/03/2022 | Aug |
| 03/04/2022 | Sep |
| 03/05/2022 | Okt |
| 03/06/2022 | Nov |
| 03/07/2022 | Dez |
| 03/08/2022 | Jan |
| 03/09/2022 | Mär |
| 03/10/2022 | Apr |
| 03/11/2022 | Mai |

Die Funktion `month()` berechnet korrekt, dass eine am 11. März aufgegebene Bestellung im Juli abläuft.

## Weitere Informationen

* [Laden von Daten aus bereits geladenen Tabellen](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/load-data-from-previously-loaded-table.htm)