# today Fonction de script et de graphique

Cette fonction renvoie la date actuelle, évaluée en fonction à l'heure UTC. La fonction renvoie des valeurs au format de variable système `DateFormat`.

Syntaxe :

today([ timer\_mode])

Type de données renvoyé : double

La fonction `today()` peut être utilisée dans le script de chargement ou dans des objets graphiques.

La valeur `timer_mode` par défaut est 1.

Arguments

| Argument | Description |
| --- | --- |
| timer\_mode | Admet les valeurs suivantes :<br><br>0 (jour du dernier chargement de données terminé)<br>1 (jour de l'appel de la fonction)<br>2 (jour d'ouverture de l'application)<br><br>Note InformationsSi vous utilisez la fonction dans un script de chargement, timer\_mode=0 calcule le jour du dernier chargement de données terminé, tandis que timer\_mode=1 génère le jour du chargement de données actif. |

Exemples de fonction

| Valeur de timer\_mode | Résultat en cas d'utilisation dans un script de chargement | Résultat en cas d'utilisation dans un objet graphique |
| --- | --- | --- |
| 0 | Renvoie une date, au format de la variable système `DateFormat`, du dernier chargement de données réussi précédant le dernier chargement de données. | Renvoie une date, au format de la variable système `DateFormat`, du dernier chargement de données. |
| 1 | Renvoie une date, au format de la variable système `DateFormat`, du dernier chargement de données. | Renvoie une date, au format de la variable système `DateFormat`, de l'appel de la fonction. |
| 2 | Renvoie une date, au format de la variable système `DateFormat`, correspondant au début de la session de l'utilisateur dans l'application. Cette valeur ne sera pas mise à jour, sauf si l'utilisateur charge de nouveau le script. | Renvoie la date, au format de la variable système `DateFormat`, correspondant au début de la session de l'utilisateur dans l'application. Cette valeur sera actualisée une fois qu'une nouvelle session commencera ou lorsque les données de l'application seront de nouveau chargées. |

## Cas d'utilisation de today

La fonction `today()` est couramment utilisée comme composant d'une expression. Par exemple, elle peut être utilisée pour calculer les intérêts cumulés au cours d'un mois jusqu'à la date du jour.

Le tableau suivant explique le résultat renvoyé par la fonction `today()` suivant différentes valeurs pour l'argument `timer_mode` :

## Paramètres régionaux

Sauf indication contraire, les exemples de cette rubrique utilisent le format de date suivant : MM/DD/YYYY. Le format de date est indiqué dans l'instruction `SET DateFormat` de votre script de chargement de données. Le format de date par défaut peut être différent dans votre système en raison de vos paramètres régionaux et d'autres facteurs. Vous pouvez modifier les formats utilisés dans les exemples ci-dessous en fonction de vos besoins. Ou vous pouvez modifier les formats utilisés dans votre script de chargement pour qu'ils correspondent à ceux de ces exemples. Pour plus d'informations, consultez [Modification des paramètres régionaux des applications et des scripts](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Les paramètres régionaux par défaut des applications sont basés sur le profil utilisateur. Ces paramètres de format régionaux ne sont pas liés à la langue affichée dans l'interface utilisateur Qlik Cloud. Qlik Cloud sera affiché dans la même langue que celle du navigateur que vous utilisez.

Si vous êtes un créateur d'applications, vous pouvez définir la région par défaut des applications que vous créez. Pour plus d'informations, consultez [Sélection des paramètres régionaux de votre choix pour la création d'applications et de scripts dans Qlik Cloud Analytics](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

## Exemple 1 – génération d'objets via un script de chargement

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

#### Script de chargement et résultats

Vue d'ensemble

L'exemple suivant crée trois variables avec la fonction `today()`. Chaque variable utilise l'une des options `timer_mode` pour démontrer leur effet.

Pour que les variables démontrent leur objectif, chargez le script, puis, au bout de 24 heures, chargez-le une deuxième fois. Cela a pour résultat d'afficher des valeurs différentes dans les variables `today(0)` et `today(1)`, ce qui permet de démontrer correctement leur objectif.

Script de chargement

```
LET vPreviousDataLoad = today(0);
LET vCurrentDataLoad = today(1);
LET vApplicationOpened = today(2);
```

Résultats

Une fois les données chargées pour la deuxième fois, créez trois zones de texte en suivant les instructions ci-dessous.

Commencez par créer une zone de texte pour les données précédemment chargées.

Procédez comme suit :

1. À l'aide de l'objet graphique Text et image, créez une zone de texte.

2. Ajoutez la mesure suivante à l'objet :

   `=vPreviousDataLoad`

3. Sous Aspect, sélectionnez Show titles et ajoutez le titre 'Previous Reload Time' à l'objet.

Créez ensuite une zone de texte pour les données en cours de chargement.

Procédez comme suit :

1. À l'aide de l'objet graphique Text et image, créez une zone de texte.

2. Ajoutez la mesure suivante à l'objet :

   `=vCurrentDataLoad`

3. Sous Aspect, sélectionnez Show titles et ajoutez le titre 'Current Reload Time' à l'objet.

Créez une dernière zone de texte à afficher lors du démarrage de la session de l'utilisateur dans l'application.

Procédez comme suit :

1. À l'aide de l'objet graphique Text et image, créez une zone de texte.

2. Ajoutez la mesure suivante à l'objet :

   `=vApplicationOpened`

3. Sous Aspect, sélectionnez Show titles et ajoutez le titre 'User Session Started' à l'objet.

Diagramme de variables créées via la fonction `today()` dans le script de chargement

Diagramme de variables créées via la fonction `today()` dans le script de chargement

Diagramme de variables créées via la fonction `today()`today() dans le script de chargement ![Diagramme montrant ce à quoi pourrait ressembler chacune des trois zones de texte générées après l'utilisation de la fonction today() pour charger les variables via le script de chargement.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-today-example-variables-script.png)

L'image ci-dessus montre des exemples de valeur pour chacune des variables créées. Par exemple, les valeurs pourraient être comme suit :

* Date du chargement précédent : 06/22/2022

* Date du chargement actuel : 06/23/2022

* Date de début de la session utilisateur : 06/23/2022

## Exemple 2 – génération d'objets sans script de chargement

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

#### Script de chargement et expression de graphique

Vue d'ensemble

L'exemple suivant crée trois objets graphiques avec la fonction `today()`. Chaque objet graphique utilise l'une des options `timer_mode` pour démontrer leur effet.

Pour cet exemple, il n'existe aucun script de chargement.

Résultats

Une fois les données chargées pour la deuxième fois, créez trois zones de texte.

Commencez par créer une zone de texte pour le dernier chargement de données.

Procédez comme suit :

1. À l'aide de l'objet graphique Text et image, créez une zone de texte.

2. Ajoutez la mesure suivante.

   `=today(0)`

3. Sous Aspect, sélectionnez Afficher les titres et ajoutez le titre 'Dernier chargement de données' à l'objet.

Créez ensuite une zone de texte affichant l'heure actuelle.

Procédez comme suit :

1. À l'aide de l'objet graphique Text et image, créez une zone de texte.

2. Ajoutez la mesure suivante :

   `=today(1)`

3. Sous Aspect, sélectionnez Afficher les titres et ajoutez le titre 'Heure actuelle' à l'objet.

Créez une dernière zone de texte à afficher lors du démarrage de la session de l'utilisateur dans l'application.

Procédez comme suit :

1. À l'aide de l'objet graphique Text et image, créez une zone de texte.

2. Ajoutez la mesure suivante :

   `=today(2)`

3. Sous Aspect, sélectionnez Afficher les titres et ajoutez le titre 'Début de la session utilisateur' à l'objet.

Diagramme d'objets créés via la fonction `today()` sans script de chargement

Diagramme d'objets créés via la fonction `today()` sans script de chargement

Diagramme d'objets créés via la fonction `today()`today() sans script de chargement ![Diagramme montrant ce à quoi pourrait ressembler chacune des trois zones de texte générées après l'utilisation de la fonction today() pour créer uniquement des objets graphiques, sans chargement de données dans l'application.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-today-example-variables-chart.png)

L'image ci-dessus montre des exemples de valeur pour chacun des objets créés. Par exemple, les valeurs pourraient être comme suit :

* Dernier chargement de données : 06/23/2022

* Date actuelle : 06/23/2022

* Date de début de la session utilisateur : 06/23/2022

L'objet graphique 'Dernier chargement de données' utilise une valeur `timer_mode` égale à 0. Cela renvoie l'horodatage du dernier chargement de données réussi.

L'objet graphique 'Date actuelle' utilise une valeur `timer_mode` égale à 1. Cela renvoie la date actuelle conformément à l'horloge système. Si la feuille ou l'objet est actualisé, cette valeur sera mise à jour.

L'objet graphique 'Début de la session utilisateur' utilise une valeur `timer_mode` égale à 2. Cela renvoie l'horodatage de l'ouverture de l'application et du début de la session utilisateur.

## Exemple 3 – scénario

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

#### Script de chargement et expression de graphique

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 contenant un ensemble de soldes de prêts, chargé dans une table appelée `Loans`.

* Données de la table avec des champs pour l'ID de prêt, le solde au début du mois et le taux d'intérêt simple facturé pour chaque prêt par an.

L'utilisateur final souhaite un objet graphique qui affiche, par ID de prêt, les intérêts actuels qui ont été accumulés pour chaque prêt au cours du mois jusqu'à la date du jour. Même si l'application est actualisée une seule fois par semaine, l'utilisateur souhaite que les résultats soient actualisés chaque fois que l'objet ou l'application est actualisé(e).

Script de chargement

```
Loans:
Load
*
Inline 
[
loan_id,start_balance,rate
8188,$10000.00,0.024
8189,$15000.00,0.057
8190,$17500.00,0.024
8191,$21000.00,0.034
8192,$90000.00,0.084
];
```

Résultats

Procédez comme suit :

1. Chargez les données et ouvrez une feuille. Créez un tableau.

2. Ajoutez les champs suivants comme dimensions.

   * `loan_id`

   * `start_balance`

3. Ensuite, pour calculer les intérêts accumulés, créez une mesure :

   `=start_balance*(rate*(today(1)-monthstart(today(1)))/365)`

4. Définissez le Formatage des nombres des mesures sur Money (Devise).

Tableau de résultats

| loan\_id | start\_balance | =start\_balance\*(rate\*(today(1)-monthstart(today(1)))/365) |
| --- | --- | --- |
| 8188 | $10000.00 | $16.44 |
| 8189 | $15000.00 | $58.56 |
| 8190 | $17500.00 | $28.77 |
| 8191 | $21000.00 | $48.90 |
| 8192 | $90000.00 | $517.81 |

La fonction `monthstart()`, avec la fonction `today()` utilisée pour renvoyer la date d'aujourd'hui comme seul argument, renvoie la date de début du mois en cours. Si on soustraie ce résultat de la date actuelle, de nouveau avec la fonction `today()`, l'expression renvoie le nombre de jours qui se sont écoulés jusqu'à présent ce mois.

Cette valeur est ensuite multipliée par le taux d'intérêt et divisée par 365 pour obtenir le taux d'intérêt effectif encouru pour cette période. Le résultat est ensuite multiplié par le solde initial du prêt pour renvoyer les intérêts cumulés jusqu'à présent ce mois.

Étant donné que la valeur 1 est utilisée comme argument `timer_mode` dans les fonctions `today()` au sein de l'expression, chaque fois que l'objet graphique est actualisé (via l'ouverture de l'application, l'actualisation de la page, la navigation entre les feuilles, etc.), la date renvoyée est la date actuelle et les résultats sont actualisés en conséquence.