# Date# - Skript- und Diagrammfunktion

Date# evaluiert eine Formel als Datum und verwendet dafür das Format, das im zweiten Argument angegeben ist, wenn dies zur Verfügung steht.

Syntax:

Date#(text[, format])

Rückgabe Datentyp: dual

Argumente

| Argument | Beschreibung |
| --- | --- |
| text | Der zu evaluierende Textstring. |
| format | String, der das Format beschreibt, das zur Interpretation des Textzeichenstrings verwendet werden soll. Ist kein String angegeben, wird das in den Systemvariablen des Datenladeskripts festgelegte oder vom Betriebssystem vorgegebene Zahlenformat verwendet.<br><br>Die Funktion `Date#` unterstützt viele Formatoptionen für verschiedene Datumsstrukturen, zum Beispiel:<br><br>​`DD/MM/YYYY`:​Tag/Monat/Jahr (zum Beispiel 15/02/2022)<br><br>​`MM-DD-YYYY`: ​Monat-Tag-Jahr mit Bindestrichen (zum Beispiel 02-15-2022)<br><br>​`YYYY-MM-DD`: ​Jahr-Monat-Tag, ISO-Format (zum Beispiel 2022-02-15)<br><br>​`D-MMM-YYYY`: ​Tag, kurzer Monatsname, Jahr, mit Bindestrichen (zum Beispiel 15-Feb-2022)<br><br>`​MMMM YYYY`: ​Langer Monatsname und Jahr (zum Beispiel February 2022)<br><br>​`MM/YYYY`: ​Monat und Jahr (zum Beispiel 02/2022)<br><br>​`DD MMMM YYYY`: ​Tag, langer Monatsname und Jahr (zum Beispiel 15 February 2022)<br><br>[Beschreibungen für Zahlen- und Uhrzeitformate](https://help.qlik.com/de-DE/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm) |

Beispiel: Diagrammformeln

| Beispiel | Ergebnis |
| --- | --- |
| ` Date#('8/7/97')  ` | Gibt ein gültiges Datum von `8/7/97` zurück, wenn die `DateFormat`-Einstellung `M/D/YY.` ist. |
| `Date#('21.10.2023', 'DD.MM.YYYY' )` | Gibt ein gültiges Datum von `21.10.2023` zurück, wenn die Datumseinstellung `DD.MM.YYYY` ist. |
| `Date#('21.10.2023')` | Gibt `NULL` zurück, wenn die Einstellung `DateFormat` `M/D/YY` ist. |

## Beispiel – Grundlegendes zu „Date#“

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

#### Ladeskript

Übersicht

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

Das Ladeskript umfasst:

* Datensatz, der in eine Datentabelle namens `Example` geladen wird

* Die folgenden Felder in einer Datentabelle:

  * `StringDate`

* Die Variable `DateFormat`, die das Format `M/D/YY` verwendet.

* Ein vorangehender Load-Befehl, der ein neues Feld namens `Date` erstellt. Die Funktionen `Date#` und `Num` werden verwendet, um den String in ein Datum zu konvertieren und dann den Wert als Zahl zurückzugeben.

Ladeskript

```
SET DateFormat='M/D/YY';
Example:
Load *,
Num(Date#(StringDate, 'D/M/YYYY')) as Date
;
LOAD * INLINE [
StringDate
13/12/2024
31/1/23
];
```

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:

* ` StringDate
                                       `

* `Date`

Erstellen Sie die folgenden Kennzahlen:

* `=Date(Date)`, um den Wert als Datum anzuzeigen, das mit der im Ladeskript angegebenen Datumsformatvariablen formatiert ist.

* `=IsNum(StringDate)`um zu überprüfen, ob der Wert ein String ist und nicht als Datum ausgewertet wird, da das Datumsformat der Feldwerte nicht mit der Systemeinstellung übereinstimmt.

Results table

| StringDate | Date | Date(Date) | IsNum(StringDate) |
| --- | --- | --- | --- |
| 13/12/2024 | 45639 | 12/13/24 | 0 |
| 31/1/23 | 44957 | 1/31/23 | 0 |

Die Ergebnisse zeigen, dass das Feld `Date` in Spalte 2, das durch den vorangehenden Load-Befehl erstellt wurde, die Werte von `StringDate` in ein Datum konvertiert hat, das als Zahl ausgedrückt ist. Die Formatfunktion `Date` in Spalte 3 erkennt die Werte von `Date` als Datumsangaben und formatiert sie entsprechend der Variablen `DateFormat` im Ladeskript.

## Beispiel – Szenario für „Date#“

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

#### Ladeskript

Übersicht

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

Das Ladeskript umfasst:

* Datensatz, der in eine Datentabelle namens `Example` geladen wird

* Die folgenden Felder in der Datentabelle:

  * `Customer`
  * `BirthDate`

* Ein vorangehender Load-Befehl, der ein neues Feld namens `ParsedBirthDate` erstellt.

Ladeskript

```
Example:
Load *,
Date#(BirthDate, 'MM.DD.YYYY') as ParsedBirthDate;
Load * inline [
Customer, BirthDate
Customer A, 08.25.2022
Customer B, 08.25.2022
Customer C, 08.25.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:

* ` Customer
                                       `

* `BirthDate`

* `ParsedBirthDate`

Erstellen Sie die folgende Kennzahl:

* `=Date(ParsedBirthDate,'DD/MM/YYYY')`, um den Wert als formatiertes Datum anzuzeigen.

Results table

| Customer | BirthDate | ParsedBirthDate | Date(ParsedBirthDate, 'DD/MM/YYYY') |
| --- | --- | --- | --- |
| Customer A | 08.25.2022 | 08.25.2022 | 25/08/2022 |
| Customer B | 06.29.2022 | 06.29.2022 | 29/06/2022 |
| Customer C | 05.31.2022 | 05.31.2022 | 31/05/2022 |

In diesem Beispiel können wir sehen, dass das Feld `BirthDate` in Spalte 2 vom System als Text behandelt wird. Die Funktion `Date#`, die im vorangehenden Load-Befehl verwendet wurde, konvertiert `BirthDate` in ein erkennbares Datum in Spalte 3, `ParsedBirthDate`. Die Formatfunktion `Date` in Spalte 4 kann dann die Werte von `ParsedBirthDate` im Format `DD/MM/YYYY` anzeigen.