Cette fonction renvoie la valeur True si l'argument timestamp se trouve dans la partie de l'année comprenant l'argument base_date jusqu'à la dernière milliseconde spécifiée dans base_date.
Dans Qlik Sense, la valeur booléenne true est représentée par -1 et la valeur false par 0.
Diagramme de la fonction inyeartodate
La fonction inyeartodate() segmentera une portion donnée de l'année avec base_date, identifiant la date maximale autorisée pour ce segment d'année. La fonction évalue ensuite si un champ ou une valeur de date tombe dans ce segment et renvoie un résultat booléen.
Arguments
Argument
Description
timestamp
Date à comparer à base_date.
base_date
Date utilisée pour évaluer l'année.
period_no
Il est possible de décaler l'année à l'aide de l'argument period_no. period_no est un entier, où la valeur 0 indique l'année comprenant l'argument base_date. Les valeurs négatives de l'argument period_no indiquent les années passés tandis que les valeurs positives désignent les années à venir.
first_month_of_year
Si vous voulez utiliser des exercices (financiers) qui ne commencent pas en janvier, indiquez une valeur comprise entre 2 et 12 dans l'argument first_month_of_year.
Cas d'utilisation de inyeartodate
La fonction inyeartodate() 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 qu'une date évaluée s'est produite ou non au cours de l'année jusqu'à la date en question incluse.
Par exemple, la fonction inyeartodate() peut être utilisée pour identifier l'ensemble des équipements fabriqués au cours d'une année jusqu'à une date spécifique.
Ces exemples utilisent le format de date MM/DD/YYYY. Le format de date est indiqué dans l'instruction SET DateFormat située en haut de votre script de chargement de données. Modifiez le format utilisé dans les exemples en fonction de vos exigences.
Exemples de fonction
Exemple
Résultat
inyeartodate ('01/25/2013', '02/01/2013', 0)
Renvoie TRUE.
inyeartodate ('01/25/2012', '01/01/2013', 0)
Renvoie FALSE.
inyeartodate ('01/25/2012', '02/01/2013', -1)
Renvoie TRUE.
inyeartodate ('11/25/2012', '01/31/2013', 0, 4)
Renvoie TRUE. La valeur de timestamp tombe pendant l'exercice fiscal débutant au quatrième mois et avant la valeur définie par base_date.
inyeartodate ('3/31/2013', '01/31/2013', 0, 4 )
Renvoie FALSE. Par comparaison avec l'exemple précédent, la valeur de timestamp est toujours comprise dans l'exercice fiscal, mais elle se trouve après la valeur de base_date. Elle tombe donc en dehors de la partie de l'année spécifiée.
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.
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.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
date
in_year_to_date
Tableau de résultats
date
in_year_to_date
01/13/2020
0
02/26/2020
0
03/27/2020
0
04/16/2020
0
05/21/2020
0
06/14/2020
0
08/07/2020
0
09/05/2020
0
01/22/2021
-1
02/03/2021
-1
03/17/2021
-1
04/23/2021
-1
05/04/2021
-1
06/30/2021
-1
07/26/2021
-1
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
Le champ in_year_to_date est créé dans l'instruction preceding load à l'aide de la fonction inyeartodate(). Le premier argument fourni identifie le champ en cours d'évaluation.
Le deuxième argument est une date codée en dur du 26 juillet 2021, qui est la valeur base_date qui identifie la limite de fin du segment d'année. Une valeur period_no égale à 0 constitue l'argument final, ce qui signifie que la fonction ne compare pas les années précédant ou suivant l'année segmentée.
Diagramme de la fonction inyeartodate, sans argument supplémentaire
Toute transaction qui se produit entre le 1er janvier et le 26 juillet renvoie un résultat booléen TRUE. Les dates de transactions avant 2021 et au-delà du 26 juillet 2021 renvoient FALSE.
Exemple 2 – period_no
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, previous_year_to_date, qui détermine les transactions qui ont eu lieu une année complète avant la fin du segment d'année le 26 juillet 2021.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
date
previous_year_to_date
Tableau de résultats
date
previous_year_to_date
01/13/2020
-1
02/26/2020
-1
03/27/2020
-1
04/16/2020
-1
05/21/2020
-1
06/14/2020
-1
08/07/2020
0
09/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
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
Une valeur period_no égale à -1 indique que la fonction inyeartodate () compare le segment de trimestre d'entrée à l'année précédente. Avec une date d'entrée du 26 juillet 2021, le segment du 1er janvier 2021 au 26 juillet 2021 a été initialement identifié comme le résultat de l'année jusqu'à la date en cours. La valeur period_no décale ensuite ce segment d'une année complète plus tôt, faisant passer les limites de date à la période du 1er janvier au 26 juillet 2020.
Diagramme de la fonction inyeartodate, exemple period_no
Par conséquent, toute transaction effectuée entre le 1er janvier et le 26 juillet 2020 renverra un résultat booléen TRUE.
Exemple 3 – first_month_of_year
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, in_year_to_date, qui détermine les transactions qui ont eu lieu au cours de la même année jusqu'au 26 juillet 2021.
Dans cet exemple, nous définissons mars comme le premier mois de l'exercice financier.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
date
in_year_to_date
Tableau de résultats
date
in_year_to_date
01/13/2020
0
02/26/2020
0
03/27/2020
0
04/16/2020
0
05/21/2020
0
06/14/2020
0
08/07/2020
0
09/05/2020
0
01/22/2021
0
02/03/2021
0
03/17/2021
-1
04/23/2021
-1
05/04/2021
-1
06/30/2021
-1
07/26/2021
-1
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
Si on utilise 3 comme argument first_month_of_year dans la fonction inyeartodate(), la fonction commence l'année le 1er mars. La valeur base_date du 26 juillet 2021 définit ensuite la date de fin de ce segment d'année-là.
Diagramme de la fonction inyeartodate, exemple first_month_of_year
Par conséquent, toute transaction qui se produit entre le 1er mars et le 26 juillet 2021 renverra un résultat booléen TRUE, tandis que les transactions avec des dates en dehors de ces limites renverront une valeur FALSE.
Exemple 4 – Exemple d'objet 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 la même année jusqu'au 26 juillet 2021 est créé sous forme de mesure dans un objet graphique de l'application.
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :date.
Créez la mesure suivante :
=inyeartodate(date,'07/26/2021', 0)
Tableau de résultats
date
=inyeartodate(date,'07/26/2021', 0)
01/13/2020
0
02/26/2020
0
03/27/2020
0
04/16/2020
0
05/21/2020
0
06/14/2020
0
08/07/2020
0
09/05/2020
0
01/22/2021
-1
02/03/2021
-1
03/17/2021
-1
04/23/2021
-1
05/04/2021
-1
06/30/2021
-1
07/26/2021
-1
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
La mesure in_year_to_date est créée dans l'objet graphique à l'aide de la fonction inyeartodate(). Le premier argument fourni identifie le champ en cours d'évaluation. Le deuxième argument est une date codée en dur du 26 juillet 2021, qui est la valeur base_date qui identifie la limite de fin du segment d'année du comparateur. Une valeur period_no égale à 0 constitue l'argument final, ce qui signifie que la fonction ne compare pas les années précédant ou suivant l'année segmentée.
Diagramme de la fonction inyeartodate, exemple objet graphique
Toute transaction qui se produit entre le 1er janvier et le 26 juillet 2021 renvoie un résultat booléen TRUE. Les dates de transactions avant 2021 et après le 26 juillet 2021 renvoient FALSE.
Exemple 5 – Scénario
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 appelée Products.
Informations concernant l'ID du produit, le type de produit, la date de fabrication et le prix de revient.
L'utilisateur final souhaite un objet graphique qui affiche, par type de produit, le coût des produits fabriqués en 2021 jusqu'au 26 juillet.
La fonction inyeartodate() renvoie une valeur booléenne lors de l'évaluation des dates de fabrication de chacun des produits. Pour tout produit fabriqué en 2021 avant le 27 juillet, la fonction inyeartodate() renvoie une valeur booléenne TRUE et additionne la valeur cost_price.
Product D est le seul produit également fabriqué après le 26 juillet 2021. L'entrée product_ID 8203 a été fabriquée le 27 décembre et a coûté $25.12. Par conséquent, ce coût n'a pas été inclus dans le total de Product D dans l'objet graphique.
Cette page vous a-t-elle aidé ?
Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.