# Date#funkcja skryptu i funkcja wykresu

Date# ocenia wyrażenie jako datę w formacie określonym w ewentualnym drugim argumencie.

Składnia:

Date#(text[, format])

Typ zwracanych danych: wartość podwójna

Argumenty

| Argument | Opis |
| --- | --- |
| text | Tekstowy ciąg znaków do oceny. |
| format | Ciąg znaków opisujący format, którego należy użyć do interpretacji ciągu tekstowego. Jeśli zostanie pominięty, wówczas będzie używany format daty ustawiony w zmiennych systemowych w skrypcie ładowania danych lub w systemie operacyjnym.<br><br>Funkcja `Date#` obsługuje wiele opcji formatu dla różnych struktur daty, na przykład:<br><br>​`DD/MM/YYYY`: ​Dzień/Miesiąc/Rok (na przykład 15/02/2022)<br><br>​`MM-DD-YYYY`: ​Miesiąc-Dzień-Rok z łącznikami (na przykład 02-15-2022)<br><br>​`YYYY-MM-DD`: ​Rok-Miesiąc-Dzień, format ISO (na przykład 2022-02-15)<br><br>​`D-MMM-YYYY`: ​Dzień, krótka nazwa miesiąca, rok, z łącznikami (na przykład 15-Feb-2022)<br><br>`​MMMM YYYY`: ​Długa nazwa miesiąca i rok (na przykład February 2022)<br><br>​`MM/YYYY`: ​Miesiąc i rok (na przykład 02/2022)<br><br>​`DD MMMM YYYY`: ​Dzień, długa nazwa miesiąca i rok (na przykład 15 February 2022)<br><br>[Opisy formatów liczb i godzin](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm) |

Przykład: wyrażenia wykresu

| Przykład | Wynik |
| --- | --- |
| ` Date#('8/7/97')  ` | Zwraca prawidłową datę `8/7/97`, gdy ustawienie `DateFormat` to `M/D/YY.` |
| `Date#('21.10.2023', 'DD.MM.YYYY' )` | Zwraca prawidłową datę `21.10.2023`, gdy ustawienie daty to `DD.MM.YYYY`. |
| `Date#('21.10.2023')` | Zwraca `NULL`, gdy ustawienie `DateFormat` to `M/D/YY`. |

## Przykład — podstawy dat

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

#### Skrypt ładowania

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Następujące pole w tabeli danych:

  * `StringDate`

* Zmienna `DateFormat`, która używa formatu `M/D/YY`.

* Poprzedzające obciążenie, które tworzy nowe pole o nazwie `Date`. Funkcje `Date#` i `Num` służą do konwersji ciągu znaków na datę, a następnie zwracają wartość jako liczbę.

Skrypt ładowania

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

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* ` StringDate
                                       `

* `Date`

Utwórz następujące miary:

* `=Date(Date)`, aby wyświetlić wartość jako datę sformatowaną przy użyciu formatu podanego w funkcji.

* `=IsNum(StringDate)`, aby sprawdzić, czy wartość jest ciągiem znaków i nie jest ewaluowana jako data, ponieważ format daty wartości pola nie jest zgodny z ustawieniem systemowym.

Results table

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

Wyniki pokazują, że pole `Date` w kolumnie 2, utworzone przez poprzednie obciążenie, przekonwertowało wartości `StringDate` na datę wyrażoną jako liczba. Funkcja formatu `Date` w kolumnie 3 rozpoznaje wartości `Date` jako daty i formatuje je zgodnie ze zmienną `DateFormat` w skrypcie ładowania.

## Przykład — scenariusz daty

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

#### Skrypt ładowania

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Tabela zawiera następujące pola:

  * `Customer`
  * `BirthDate`

* Poprzedzające obciążenie, które tworzy nowe pole o nazwie `ParsedBirthDate`.

Skrypt ładowania

```
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
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* ` Customer
                                       `

* `BirthDate`

* `ParsedBirthDate`

Utwórz następującą miarę:

* `=Date(ParsedBirthDate,'DD/MM/YYYY')`, aby wyświetlić wartość jako sformatowaną datę.

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 |

W tym przykładzie widzimy, że w kolumnie 2 pole `BirthDate` jest traktowane przez system jako tekst. Funkcja `Date#` użyta w poprzednim ładowaniu konwertuje `BirthDate` na rozpoznawalną datę w kolumnie 3, `ParsedBirthDate`. Funkcja formatu `Date` w kolumnie 4 może następnie wyświetlić wartości `ParsedBirthDate` w formacie `DD/MM/YYYY`.