# yeartodate Fonction de script et de graphique

Cette fonction permet de déterminer si l'horodatage d'entrée tombe dans l'année de la date à laquelle le script a été chargé pour la dernière fois et renvoie True si c'est le cas ou False si ce n'est pas le cas. L'année de la date à laquelle le script a été chargé pour la dernière fois est évaluée selon l'heure UTC.

Syntaxe :

YearToDate(timestamp[ , yearoffset [ , firstmonth [ , todaydate] ] ])

Type de données renvoyé : Booléen

Note Informations

Dans Qlik Sense, la valeur booléenne true est représentée par -1 et la valeur false par 0.

Exemple de diagramme de la fonction `yeartodate()`

Exemple de diagramme de la fonction `yeartodate()`

Exemple de diagramme de la fonction `yeartodate()`yeartodate() ![Diagramme affichant les valeurs date pour lesquelles la fonction yeartodate renverra une valeur True ou False.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-overview.png)

Si aucun des paramètres facultatifs n'est utilisé, l'année en cours correspond à toute date comprise dans une année calendaire, qui s'étend du 1er janvier à la date de la dernière exécution du script comprise.

En d'autres termes, la fonction `yeartodate()`, lorsqu'elle est déclenchée sans aucun paramètre supplémentaire, est utilisée pour évaluer un horodatage et renvoyer un résultat booléen selon que la date est tombée pendant l'année civile jusqu'à la date d'actualisation incluse.

Cependant, il est également possible de remplacer la date de début de l'année via l'argument `firstmonth`, ainsi que d'effectuer des comparaisons avec des années précédentes ou suivantes via l'argument `yearoffset`.

Pour finir, dans les cas de jeux de données historiques, la fonction `yeartodate()` fournit un paramètre pour définir `todaydate`, qui, à la place, comparera l'horodatage à l'année civile jusqu'à la date incluse fournie dans l'argument `todaydate`.

Arguments

| Argument | Description |
| --- | --- |
| timestamp | Horodatage à évaluer, par exemple '10/12/2012'. |
| yearoffset | En spécifiant une valeur pour yearoffset, yeartodate renvoie True pour la même période d'une autre année. Un décalage yearoffset négatif indique une année antérieure tandis qu'un décalage positif indique une année ultérieure. La valeur year-to-date la plus récente est obtenue en spécifiant yearoffset = -1. Si cette valeur est omise, 0 est défini par défaut. |
| firstmonth | Si on spécifie un argument firstmonth compris entre 1 et 12 (1 si l'argument est omis), il est possible de déplacer le début de l'année au premier jour de n'importe quel mois. Par exemple, si vous souhaitez travailler avec un exercice financier commençant le 1er mai, spécifiez firstmonth = 5. Une valeur 1 indiquerait un exercice financier commençant le 1er janvier et une valeur 12 un exercice financier commençant le 1er décembre. |
| todaydate | Vous pouvez déplacer le jour utilisé comme limite supérieure de la période en indiquant une date todaydate (horodatage de la dernière exécution du script si l'argument est omis). |

## Cas d'utilisation de yeartodate

La fonction `yeartodate()` renvoie un résultat booléen. Ce type de fonction sera généralement utilisé comme condition dans une expression if. Cela renverrait une agrégation ou un calcul suivant que la date évaluée s'est produite ou non au cours de l'année jusqu'à la date, incluse, du dernier chargement de l'application.

Par exemple, la fonction YearToDate() peut être utilisée pour identifier l'ensemble des équipements fabriqués jusqu'à présent au cours de l'année en cours.

Dans les exemples suivants, nous supposons que la date du dernier chargement = 11/18/2011.

Exemples de fonction

| Exemple | Résultat |
| --- | --- |
| `yeartodate( '11/18/2010')` | renvoie False |
| `yeartodate( '02/01/2011')` | renvoie True |
| `yeartodate( '11/18/2011')` | renvoie True |
| `yeartodate( '11/19/2011')` | renvoie False |
| `yeartodate( '11/19/2011', 0, 1, '12/31/2011')` | renvoie True |
| `yeartodate( '11/18/2010', -1)` | renvoie True |
| `yeartodate( '11/18/2011', -1)` | renvoie False |
| `yeartodate( '04/30/2011', 0, 5)` | renvoie False |
| `yeartodate( '05/01/2011', 0, 5)` | renvoie True |

## 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 – exemple de base

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

#### Script de chargement et résultats

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 transactions entre 2020 et 2022, chargé dans une table appelée `Transactions`.

* Champ de date fourni dans la variable système `DateFormat` au format (MM/DD/YYYY).

* Création d'un champ, `year_to_date`, qui détermine les transactions qui ont eu lieu au cours de l'année civile jusqu'à la date du dernier chargement.

La date du jour est le 26 avril 2022.

Script de chargement

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        yeartodate(date) as year_to_date
        ;
Load
*
Inline 
[
id,date,amount
8188,01/10/2020,37.23
8189,02/28/2020,17.17
8190,04/09/2020,88.27
8191,04/16/2020,57.42
8192,05/21/2020,53.80
8193,08/14/2020,82.06
8194,10/07/2020,40.39
8195,12/05/2020,87.21
8196,01/22/2021,95.93
8197,02/03/2021,45.89
8198,03/17/2021,36.23
8199,04/23/2021,25.66
8200,05/04/2021,82.77
8201,06/30/2021,69.98
8202,07/26/2021,76.11
8203,12/27/2021,25.12
8204,02/02/2022,46.23
8205,02/26/2022,84.21
8206,03/07/2022,96.24
8207,03/11/2022,67.67
];
```

Résultats

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

* `date`

* `year_to_date`

Tableau de résultats

| date | year\_to\_date |
| --- | --- |
| 01/10/2020 | 0 |
| 02/28/2020 | 0 |
| 04/09/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | 0 |
| 12/27/2021 | 0 |
| 02/02/2022 | -1 |
| 02/26/2022 | -1 |
| 03/07/2022 | -1 |
| 03/11/2022 | -1 |

Diagramme de la fonction `yeartodate()`, exemple de base

Diagramme de la fonction `yeartodate()`, exemple de base

Diagramme de la fonction `yeartodate()`yeartodate(), exemple de base ![Diagramme affichant les valeurs date pour lesquelles la fonction yeartodate renverra une valeur True ou False.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-examples-basic.png)

Le champ `year_to_date` est créé dans l'instruction preceding load via la fonction `yeartodate()` et en transmettant le champ `date` comme argument de la fonction.

Étant donné qu'aucun autre paramètre n'est transmis à la fonction, la fonction `yeartodate()` commence par identifier la date de chargement et par conséquent les limites de l'année civile en cours (commençant le 1er janvier) qui renverront un résultat booléen `TRUE`.

Par conséquent, toute transaction effectuée entre le 1er janvier et le 26 avril, la date d'actualisation renverra un résultat booléen `TRUE`. Toute transaction qui a lieu avant le début de l'année 2022 renverra un résultat booléen `FALSE`.

## Exemple 2 – yearoffset

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

#### Script de chargement et résultats

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 :

* Même jeu de données et même scénario que ceux du premier exemple.

* Création d'un champ, `two_years_prior`, qui détermine les transactions qui ont eu lieu deux années complètes avant l'année civile jusqu'à ce jour.

Script de chargement

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        yeartodate(date,-2) as two_years_prior
        ;
Load
*
Inline 
[
id,date,amount
8188,01/10/2020,37.23
8189,02/28/2020,17.17
8190,04/09/2020,88.27
8191,04/16/2020,57.42
8192,05/21/2020,53.80
8193,08/14/2020,82.06
8194,10/07/2020,40.39
8195,12/05/2020,87.21
8196,01/22/2021,95.93
8197,02/03/2021,45.89
8198,03/17/2021,36.23
8199,04/23/2021,25.66
8200,05/04/2021,82.77
8201,06/30/2021,69.98
8202,07/26/2021,76.11
8203,12/27/2021,25.12
8204,02/02/2022,46.23
8205,02/26/2022,84.21
8206,03/07/2022,96.24
8207,03/11/2022,67.67
];
```

Résultats

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

* `date`

* `two_years_prior`

Tableau de résultats

| date | two\_years\_prior |
| --- | --- |
| 01/10/2020 | -1 |
| 02/28/2020 | -1 |
| 04/09/2020 | -1 |
| 04/16/2020 | -1 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | 0 |
| 12/27/2021 | 0 |
| 02/02/2022 | 0 |
| 02/26/2022 | 0 |
| 03/07/2022 | 0 |
| 03/11/2022 | 0 |

Avec l'utilisation de la valeur -2 comme argument `yearoffset` dans la fonction `yeartodate()`, la fonction décale les limites du segment d'année civile de comparaison de deux années complètes. Initialement, le segment d'année est compris entre le 1er janvier et le 26 avril 2022. L'argument `yearoffset` décale ensuite ce segment de deux années en arrière. Les limites de date deviennent alors du 1er janvier au 26 avril 2020.

Diagramme de la fonction `yeartodate()`, exemple yearoffset

Diagramme de la fonction `yeartodate()`, exemple yearoffset

Diagramme de la fonction `yeartodate()`yeartodate(), exemple yearoffset ![Diagramme affichant les valeurs date pour lesquelles la fonction yeartodate renverra une valeur True ou False.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-examples-yearoffset.png)

Par conséquent, toute transaction effectuée entre le 1er janvier et le 26 avril 2020 renverra un résultat booléen `TRUE`. Toute transaction qui apparaît avant ou après ce segment renverra `FALSE`.

## Exemple 3 – firstmonth

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

#### Script de chargement et résultats

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 :

* Même jeu de données et même scénario que ceux du premier exemple.

* Création d'un champ, `year_to_date`, qui détermine les transactions qui ont eu lieu au cours de l'année civile jusqu'à la date du dernier chargement.

Dans cet exemple, nous déterminons le début de l'exercice fiscal au 1er juillet.

Script de chargement

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        yeartodate(date,0,7) as year_to_date
        ;
Load
*
Inline 
[
id,date,amount
8188,01/10/2020,37.23
8189,02/28/2020,17.17
8190,04/09/2020,88.27
8191,04/16/2020,57.42
8192,05/21/2020,53.80
8193,08/14/2020,82.06
8194,10/07/2020,40.39
8195,12/05/2020,87.21
8196,01/22/2021,95.93
8197,02/03/2021,45.89
8198,03/17/2021,36.23
8199,04/23/2021,25.66
8200,05/04/2021,82.77
8201,06/30/2021,69.98
8202,07/26/2021,76.11
8203,12/27/2021,25.12
8204,02/02/2022,46.23
8205,02/26/2022,84.21
8206,03/07/2022,96.24
8207,03/11/2022,67.67
];
```

Résultats

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

* `date`

* `year_to_date`

Tableau de résultats

| date | year\_to\_date |
| --- | --- |
| 01/10/2020 | 0 |
| 02/28/2020 | 0 |
| 04/09/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | -1 |
| 12/27/2021 | -1 |
| 02/02/2022 | -1 |
| 02/26/2022 | -1 |
| 03/07/2022 | -1 |
| 03/11/2022 | -1 |

Dans ce cas, étant donné que l'argument `firstmonth` égal à 7 est utilisé dans la fonction `yeartodate()`, le premier jour de l'année est défini sur le 1er juillet et le dernier jour de l'année sur le 30 juin.

Diagramme de la fonction `yeartodate()`, exemple firstmonth

Diagramme de la fonction `yeartodate()`, exemple firstmonth

Diagramme de la fonction `yeartodate()`yeartodate(), exemple firstmonth ![Diagramme affichant les valeurs date pour lesquelles la fonction yeartodate renverra une valeur True ou False.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-examples-firstmonth.png)

Par conséquent, toute transaction effectuée entre le 1er juillet 2021 et le 26 avril 2022, la date d'actualisation, renverra un résultat booléen `TRUE`. Toute transaction qui a lieu avant le 1er juillet 2021 renverra un résultat booléen `FALSE`.

## Exemple 4 – todaydate

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

#### Script de chargement et résultats

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 :

* Même jeu de données et même scénario que ceux du premier exemple.

* Création d'un champ, year\_to\_date, qui détermine les transactions qui ont eu lieu au cours de l'année civile jusqu'à la date du dernier chargement.

Cependant, dans cet exemple, nous devons identifier toutes les transactions qui ont eu lieu au cours de l'année civile jusqu'à la date incluse du 1er mars 2022.

Script de chargement

```
SET DateFormat='MM/DD/YYYY';

Transactions:
    Load
        *,
        yeartodate(date, 0, 1, '03/01/2022') as year_to_date
;
Load
*
Inline 
[
id,date,amount
8188,01/10/2020,37.23
8189,02/28/2020,17.17
8190,04/09/2020,88.27
8191,04/16/2020,57.42
8192,05/21/2020,53.80
8193,08/14/2020,82.06
8194,10/07/2020,40.39
8195,12/05/2020,87.21
8196,01/22/2021,95.93
8197,02/03/2021,45.89
8198,03/17/2021,36.23
8199,04/23/2021,25.66
8200,05/04/2021,82.77
8201,06/30/2021,69.98
8202,07/26/2021,76.11
8203,12/27/2021,25.12
8204,02/02/2022,46.23
8205,02/26/2022,84.21
8206,03/07/2022,96.24
8207,03/11/2022,67.67
];
```

Résultats

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

* date

* year\_to\_date

Tableau de résultats

| date | year\_to\_date |
| --- | --- |
| 01/10/2020 | 0 |
| 02/28/2020 | 0 |
| 04/09/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | 0 |
| 12/27/2021 | 0 |
| 02/02/2022 | -1 |
| 02/26/2022 | -1 |
| 03/07/2022 | 0 |
| 03/11/2022 | 0 |

Dans ce cas, étant donné que l'argument todaydate de 03/01/2022 est utilisé dans la fonction yeartodate(), il détermine la limite de fin du segment d'année civile de comparaison au 1er mars 2022. Il est essentiel de fournir le paramètre firstmonth (compris entre 1 et 12) ; sinon, la fonction renverra des résultats nuls.

Diagramme de la fonction yeartodate(), exemple avec l'argument todaydate

Diagramme de la fonction yeartodate(), exemple avec l'argument todaydate

Diagramme de la fonction yeartodate()yeartodate(), exemple avec l'argument todaydate ![Diagramme affichant les valeurs date pour lesquelles la fonction yeartodate renverra une valeur True ou False.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-examples-todaydate.png)

Par conséquent, toute transaction effectuée entre le 1er janvier 2022 et le 1er mars 2022, le paramètre todaydate, renverra un résultat booléen TRUE. Toute transaction qui a lieu avant le 1er janvier 2022 ou après le 1er mars 2022 renverra un résultat booléen FALSE.

## Exemple 5 – exemple objet graphique

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yeartodate.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 à un nouvel onglet.

Le script de chargement contient le même jeu de données et le même scénario que ceux du premier exemple.

Cependant, dans cet exemple, le même jeu de données est chargé dans l'application. Le calcul qui détermine les transactions qui ont eu lieu au cours de l'année civile jusqu'à la date du dernier chargement est créé sous forme de mesure dans un objet graphique de l'application.

Script de chargement

```
Transactions:
Load
*
Inline 
[
id,date,amount
8188,01/10/2020,37.23
8189,02/28/2020,17.17
8190,04/09/2020,88.27
8191,04/16/2020,57.42
8192,05/21/2020,53.80
8193,08/14/2020,82.06
8194,10/07/2020,40.39
8195,12/05/2020,87.21
8196,01/22/2021,95.93
8197,02/03/2021,45.89
8198,03/17/2021,36.23
8199,04/23/2021,25.66
8200,05/04/2021,82.77
8201,06/30/2021,69.98
8202,07/26/2021,76.11
8203,12/27/2021,25.12
8204,02/02/2022,46.23
8205,02/26/2022,84.21
8206,03/07/2022,96.24
8207,03/11/2022,67.67
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension : date.

Ajoutez la mesure suivante :

=yeartodate(date)

Tableau de résultats

| date | =yeartodate(date) |
| --- | --- |
| 01/10/2020 | 0 |
| 02/28/2020 | 0 |
| 04/09/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | 0 |
| 12/27/2021 | 0 |
| 02/02/2022 | -1 |
| 02/26/2022 | -1 |
| 03/07/2022 | -1 |
| 03/11/2022 | -1 |

La mesure year\_to\_date est créée dans l'objet graphique via la fonction yeartodate() et en transmettant le champ date comme argument de la fonction.

Étant donné qu'aucun autre paramètre n'est transmis à la fonction, la fonction yeartodate() commence par identifier la date de chargement et par conséquent les limites de l'année civile en cours (commençant le 1er janvier) qui renverront un résultat booléen TRUE.

Diagramme de la fonction yeartodate(), exemple avec un objet graphique

Diagramme de la fonction yeartodate(), exemple avec un objet graphique

Diagramme de la fonction yeartodate()yeartodate(), exemple avec un objet graphique ![Diagramme affichant les valeurs date pour lesquelles la fonction yeartodate renverra une valeur True ou False.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-examples-chart-object.png)

Toute transaction effectuée entre le 1er janvier et le 26 avril, la date d'actualisation, renverra un résultat booléen TRUE. Toute transaction qui a lieu avant le début de l'année 2022 renverra un résultat booléen FALSE.

## Exemple 6 – scénario

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yeartodate.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 transactions entre 2020 et 2022, chargé dans une table appelée Transactions.

* Champ de date fourni dans la variable système DateFormat au format (MM/DD/YYYY).

L'utilisateur final souhaite un objet Indicateur ICP présentant les ventes totales, pour la période équivalente en 2021, sous la forme d'une analyse Même période d'une année à l'autre, à la date du dernier chargement.

La date du jour est le 16 juin 2022.

Script de chargement

```
SET DateFormat='MM/DD/YYYY';

Transactions:
Load
*
Inline 
[
id,date,amount
8188,01/10/2020,37.23
8189,02/28/2020,17.17
8190,04/09/2020,88.27
8191,04/16/2020,57.42
8192,05/21/2020,53.80
8193,08/14/2020,82.06
8194,10/07/2020,40.39
8195,12/05/2020,87.21
8196,01/22/2021,95.93
8197,02/03/2021,45.89
8198,03/17/2021,36.23
8199,04/23/2021,25.66
8200,05/04/2021,82.77
8201,06/30/2021,69.98
8202,07/26/2021,76.11
8203,12/27/2021,25.12
8204,02/02/2022,46.23
8205,02/26/2022,84.21
8206,03/07/2022,96.24
8207,03/11/2022,67.67
];
```

Résultats

Procédez comme suit :

1. Créez un objet ICP.

2. Pour calculer les ventes totales, créez la mesure d'agrégation suivante :

   =sum(if(yeartodate(date,-1),amount,0))

3. Définissez le Formatage des nombres de la mesure sur Money (Devise).

Graphique Indicateur ICP yeartodate() pour 2021

Graphique Indicateur ICP yeartodate() pour 2021

Graphique Indicateur ICP yeartodate()yeartodate() pour 2021 ![Visualisation d'indicateur ICP représentant les données de vente pour 2021, générées via la fonction yeartodate.](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-function-yeartodate-scenario-kpi.png)

La fonction yeartodate() renvoie une valeur booléenne lors de l'évaluation des dates de chaque ID de transaction. Étant donné que le chargement a eu lieu le 16 juin 2022, la fonction yeartodate segmente la période year du 01/01/2022 au 06/16/2022. Cependant, étant donné qu'une valeur period\_no égale à -1 a été utilisée dans la fonction, ces limites sont décalées à l'année précédente. Par conséquent, pour toute transaction qui se produit entre le 01/01/2021 et le 06/16/2021, la fonction yeartodate() renvoie une valeur booléenne TRUE et additionne le montant.