# Date#Fonction de script et de graphique

Date# évalue une expression comme une date dans le format spécifié dans le deuxième argument (si précisé).

Syntaxe :

Date#(text[, format])

Type de données renvoyé : double

Arguments

| Argument | Description |
| --- | --- |
| text | Chaîne de texte à évaluer. |
| format | Chaîne décrivant le format à utiliser pour interpréter la chaîne de texte. En cas d'omission, le format de date défini dans les variables système du script de chargement de données ou du système d'exploitation est utilisé.<br><br>La fonction `Date#` supporte de nombreuses options de format pour différentes structures de date, par exemple :<br><br>​`DD/MM/YYYY`: ​jour/mois/année (par exemple, 15/02/2022)<br><br>​`MM-DD-YYYY`: ​mois-jour-année avec des traits d'union (par exemple, 02-15-2022)<br><br>​`YYYY-MM-DD` : ​année-mois-jour au format ISO (par exemple, 2022-02-15)<br><br>​`D-MMM-YYYY` : ​jour, nom de mois court, année avec des traits d'union (par exemple, 15-Feb-2022)<br><br>`​MMMM YYYY` : ​nom de mois long et année (par exemple, February 2022)<br><br>​`MM/YYYY` : ​mois et année (par exemple, 02/2022)<br><br>​`DD MMMM YYYY` : ​jour, nom de mois long et année (par exemple, 15 February 2022)<br><br>[Description des formats de nombre et d'heure](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm) |

Exemple : Expressions de graphique

| Exemple | Résultat |
| --- | --- |
| ` Date#('8/7/97')  ` | Renvoie une date valide `8/7/97` lorsque le paramètre `DateFormat` est `M/D/YY.`. |
| `Date#('21.10.2023', 'DD.MM.YYYY' )` | Renvoie une date valide `21.10.2023` lorsque le paramètre de date est `DD.MM.YYYY`. |
| `Date#('21.10.2023')` | Renvoie `NULL` lorsque le paramètre `DateFormat` est `M/D/YY`. |

## Exemple - Les bases de Date\#

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

#### Script de chargement

Vue d'ensemble

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.

Le script de chargement contient :

* Jeu de données chargé dans une table de données appelée `Example`.

* Champ suivant dans une table de données :

  * `StringDate`

* Variable `DateFormat`, qui utilise le format `M/D/YY`.

* Instruction Load antérieure qui crée un nouveau champ appelé `Date`. Les fonctions `Date#` et `Num` sont utilisées pour convertir la chaîne en date, puis pour renvoyer la valeur sous forme de nombre.

Script de chargement

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

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* ` StringDate
                                       `

* `Date`

Créez les mesures suivantes :

* `=Date(Date)`, pour afficher la valeur sous forme de date formatée selon la variable de format de date fournie dans le script de chargement.

* `=IsNum(StringDate)`, pour vérifier que la valeur est une chaîne et qu'elle n'est pas évaluée comme une date, car le format de date des valeurs de champ ne correspond pas au paramètre système.

Results table

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

Les résultats montrent que le champ `Date` de la colonne 2, créé par l'instruction Load antérieure, a converti les valeurs `StringDate` en une date exprimée sous forme de nombre. La fonction de formatage `Date` de la colonne 3 reconnaît les valeurs `Date` comme des dates et les formate en fonction de la variable `DateFormat` du script de chargement.

## Exemple - Scénario Date\#

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

#### Script de chargement

Vue d'ensemble

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.

Le script de chargement contient :

* Jeu de données chargé dans une table de données appelée `Example`.

* Champs suivants dans la table de données :

  * `Customer`
  * `BirthDate`

* Instruction Load antérieure qui crée un nouveau champ appelé `ParsedBirthDate`.

Script de chargement

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

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* ` Customer
                                       `

* `BirthDate`

* `ParsedBirthDate`

Créez la mesure suivante :

* `=Date(ParsedBirthDate,'DD/MM/YYYY')`, pour afficher la valeur sous forme de date formatée.

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 |

Dans cet exemple, nous pouvons voir que, dans la colonne 2, le champ `BirthDate` est traité comme un texte par le système. La fonction `Date#` utilisée dans l'instruction Load antérieure convertit `BirthDate` en une date reconnaissable dans la colonne 3, `ParsedBirthDate`. La fonction de formatage `Date` de la colonne 4 peut alors afficher les valeurs `ParsedBirthDate` au format `DD/MM/YYYY`.