-
Créer un calendrier
Bonjour, je suis débutante sur Talend.
Je me demandais s'il était possible de créer une nouvelle variable qui affiche toutes les dates du mois en cours.
Je m'explique. Je souhaiterais, à partir de rien, créer une nouvelle variable sur talend qui prend en compte le jour qu'on est au moment de son exécution.
Et qui affiche tous les jours du mois. (Qui prend bien en compte les mois de 30 ou 31 jours ainsi que le mois de février).
J'ai réussie en utilisant l'outil tjava a créer un ArrayList qui contient bien les valeurs que je souhaite obtenir. Mais cependant, je ne vois pas comment je peux l'utiliser après. Car je souhaiterais avoir une variable que je peux après utiliser dans un tmap ou chaque ligne correspond à un jour différent.
Je ne sais pas si je suis très clair. N'hésitez pas à poser des questions si ce n'est pas le cas.
En vous remerciant pour vos réponses.
-
Hello,
tu as plusieurs solutions + ou - propres qui se présentent à toi, mais je vais te donner une idée comme ça rapidement.
Tu peux obtenir la date du premier jour du mois grâce à la fonction TalendDate.getFirstDayMonth(Date) et tu peux obtenir le dernier jour du mois grâce à la fonction TalendDate.getLastDayMonth(Date) , la variable Date dans la fonction correspond à la date dans le mois que tu veux obtenir.
Donc l'idée ça serait d'avoir une variable globale qui stocke une date temporaire qui serait initialisée au premier jour du mois.
Ensuite, tu fais une boucle qui va de 1 à la différence de jour entre le premier jour du mois et le dernier jour du mois + 1 (Car du premier au 31 du mois, il va te retourner 30 alors qu'il y a 31 jours). grâce à la fonction TalendDate.diffDate(Date1(), Date2(), "format de données à comparer - ex yyyy")
Tu stockes à chaque boucle la valeur correspondant à la premiere date du jour + l'iteration actuelle de la boucle.
Donc tu auras un fichier, ou un table ou que sais qui contiendra tous tes jours du premier jour jusqu'au dernier jour.