# Date funkcja skryptu i funkcja wykresu

Funkcja Date() formatuje wyrażenie jako datę przy użyciu formatu skonfigurowanego w zmiennych systemowych w skrypcie ładowania danych, systemie operacyjnym lub ewentualnie w formacie ciągu znaków.

Składnia:

Date(number[, format])

Typ zwracanych danych: wartość podwójna

Argumenty

| Argument | Opis |
| --- | --- |
| number | Liczba do sformatowania. |
| format | Ciąg znaków opisujący format otrzymywanego ciągu. Jeśli ciąg znaków formatu nie zostanie podany, 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) |

Przykład: wyrażenia wykresu

| Przykład | Wynik |
| --- | --- |
| `Date( 35648 )` | Zwraca `97-08-06`, gdy ustawienie `DateFormat` to `YY-MM-DD`. |
| `Date( 35648, 'YY.MM.DD' )` | Zwraca `97.08.06`, gdy ustawienie `DateFormat` to `YY-MM-DD`. |
| `Date( '8/6/97', 'YY.MM.DD' )` | Zwraca `NULL`, gdy ustawienie `DateFormat` to `YY-MM-DD`. |

## Przykład — podstawy dat

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

#### Wyrażenie wykresu

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:

  * `RowNo`
  * `InputDate`

* Zmienna `DateFormat`, która używa formatu `YY-MM-DD`.

Skrypt ładowania

```
SET DateFormat='YY-MM-DD';
Example:
Load * inline [
RowNo, InputDate
1, 35648
2, 35648.375
3, 8/6/97
];
```

Wyniki

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

* ` RowNo
                                       `

* `InputDate`

Utwórz następujące miary:

* `=Date(InputDate)`, aby wyświetlić wartość jako datę sformatowaną przy użyciu ustawień zmiennej `DateFormat`.

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

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

* `=Num(InputDate)`, aby zwrócić wartość liczbową daty.

Results table

| RowNo | InputDate | Date(InputDate) | Date(InputDate, 'DD.MM.YYYY') | Date(InputDate, 'YY.MM.DD') | Num(InputDate) |
| --- | --- | --- | --- | --- | --- |
| 1 | 35648 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648 |
| 2 | 35648.375 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648.375 |
| 3 | 8/6/97 | - | - | - | - |

Wyniki pokazują, w jaki sposób funkcja `Date` może być używana do wyświetlania i formatowania dat. W tym przykładzie `DateFormat` jest ustawiona jako `YY-MM-DD` w skrypcie ładowania. System oczekuje, że wyrażenie daty będzie używać tego formatu. Można zauważyć, że wartość dla `InputDate` w wierszu 3 (`8/6/97`) nie jest w tym formacie, dlatego system nie rozpoznaje jej jako daty i zwraca `NULL`.

Zmień ustawienie `DateFormat` w skrypcie ładowania na `SET DateFormat='M/D/YY';` i ponownie załaduj dane. Wartość w wierszu 3 będzie teraz zgodna z oczekiwanym formatem. System rozpozna ją jako prawidłową datę i odpowiednio sformatuje. Poniższa tabela przedstawia wyniki z nowym ustawieniem `DateFormat`.

Results table with variable statement `Set DateFormat='M/D/YY'`Set DateFormat='M/D/YY'

| RowNo | InputDate | Date(InputDate) | Date(InputDate, 'DD.MM.YYYY') | Date(InputDate, 'YY.MM.DD') | Num(InputDate) |
| --- | --- | --- | --- | --- | --- |
| 1 | 35648 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648 |
| 2 | 35648.375 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648.375 |
| 3 | 35648 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648.375 |

## Przykład — scenariusz daty

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

#### Wyrażenie wykresu

Przegląd

Kontener danych zawiera dane sprzedaży, które używają formatu daty `MM-DD-YYYY`. Należy użyć formatu daty `DD/MM/YYYY`.

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`
  * `SalesDate`
  * `Amount`

* Zmienna `DateFormat`, która używa formatu `MM/DD/YYYY`.

Skrypt ładowania

```
SET DateFormat='MM/DD/YYYY';
Example:
Load * inline [
Customer, SalesDate, Amount
Customer A, 2/15/2024, 100008
Customer B, 9/30/2024, 12500
Customer C, 12/28/2024, 15000
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj to pole jako wymiar:

* ` Customer
                                       `

Utwórz następujące miary:

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

* `=Sum(Amount)`, aby obliczyć całkowitą wartość kosztu własnego sprzedaży.

Results table

| Customer | Date(SalesDate ,'DD/MM/YYYY') | Sum(Amount) |
| --- | --- | --- |
| Customer A | 15/02/2024 | 100008 |
| Customer B | 30/09/2024 | 12500 |
| Customer C | 28/12/2024 | 15000 |

Patrząc na wyniki, można zauważyć, że chociaż daty w zbiorze danych używały jednego formatu, funkcja `Date` umożliwia przedstawienie tych dat w innym formacie.