Advent of Code is back! Unwrap daily challenges to sharpen your Alteryx skills and earn badges along the way! Learn more now.

Paris, FR - Français

Problème bloquant pour convertir une date

JAMAI
5 - Atom

Bonjour à tous, j'ai ajouté récemment une colonne contenant des dates au format 'Février 2022' dans mon flux Alteryx. Cependant, je souhaite maintenant les convertir en format date pour pouvoir les utiliser dans mes analyses ultérieures. Est-ce que quelqu'un 'un pourrait me conseiller sur la façon de procéder pour effectuer cette conversion dans Alteryx ? Je vous remercie d'avance pour votre aide !

JAMAI_0-1680602691163.png

 

7 REPLIES 7
cpauline96
5 - Atom

Hello,

 

Tu peux utiliser la fonction DateTimeParse() avec le 3ème paramètre pour définir la langue sur 'Français'.

Pour le choix du format de ta date en entrée, je t'invite à chercher dans ce tableau Fonctions Date/Heure | Alteryx Help

 

J'espère que c'est clair, sinon n'hésite pas

JAMAI
5 - Atom

Merci pour votre réponse. Mon problème est que j'ai une colonne contenant des dates sous forme de chaînes de caractères (v_string) dans mon flux Alteryx. Je souhaite les convertir en format date, j'ai que "Février 2022"

AuReL
5 - Atom

Il faut d'abord transformer la date en string 2 position via un outil formula grâce à la fonction if 

ex : if Contains([Dates], 'Février') then '02' elseif Contains([Dates], 'Mars') then '03'...

ensuite il sera beaucoup plus simple de le passe en date

StephaneP
Alteryx Alumni (Retired)

Hello,

 

Voici un exemple de conversion SI la source est bien une chaine de caractère.

StephaneP_0-1680609998006.png

La source de donnée:

StephaneP_1-1680610019952.png

La conversion.

J'explique à Alteryx que je veux transformer une chaine en date (et pas l'inverse qui est l'autre option)

Je lui explique le format de ce qu'il ca trouver dans la colonne.

Ce sera un "Mois en toute lettre".

Et j'ai expliqué aussi que le mois en toute lettre était en langue française (Si j'avais mis anglais il aurait cherché February et non Février).
Je lui dit de sttocker le résultat dans une nouvelle colonne "Pure Date"

StephaneP_2-1680610038383.png

On obtiens bien:

StephaneP_3-1680610203360.png

avec un format de stockage différent:

StephaneP_4-1680610593681.png

 

 

ATTENTION souvent au début on est troublé car on ne veut pas forcément un affichage au format 2022-02-01.

Ce qu'on voit dans la colonne "Pure Date" est simplement le format d'affichage par défaut d'une date.
Si dans le reporting final tu souhaites l'afficher dans un format particulier Ex: "2022-Fev" il faut réutiliser l'outil DateHeure dans l'autre sens. de Date => Chaine en lui précisant le format attendu.

Il ne faut pas se braquer sur le format de "Pure Date" c'est le format standard et comprendre que pour le format final il faut une 3ème colonne.

Toujours 3 étapes:

Format initial chaine => Format Date => Format date restitution final.

Passer directement de Format Initial à => Format date restitution final est possible mais c'est moins souple, moins dynamique et il faut coder en dur tous les cas particuliers comme expliqué par @AuReL . Moins maintenable donc.
Le fait d'avoir un vra format date permet d'utiliser les formules associés aux dates (je rajoute un an, un mois, je veux le 1er samedi du mois, le dernier jour du mois...).

 

A noter aussi cette très bonne vidéo interactive de 13mn sur le sujet: Fonctions date Heure 


A dispo pour détailler si besoin 

 

Stéphane Portier
Sales Engineer
Alteryx
cpauline96
5 - Atom

La fonction DataTimeParse() permet justement de convertir du String vers du format Date.

Ceci devrait fonctionner : DateTimeParse('Février 2022', '%B %Y', 'Français')

JAMAI
5 - Atom

Merci pour votre retour. En effet, j'ai voulu exporter les données via Power BI, mais j'ai rencontré une erreur à cause du type 'Date

 

 

"Sortie Power BI (5) Bad request syntax or unsupported method. Error parsing request for dataset sobe_wowvirtualserver|b9e67369-0df7-4dd5-bcf5-840b4d2cdb82: Error encountered by JSON parser when reading input data for column '<pi>Pure Date</pi>': <pi>Unexpected character encountered while parsing value: 1. Path 'rows[0]['Pure Date']', line 1, position 61.</pi>"

JAMAI_1-1680617810760.png

 

StephaneP
Alteryx Alumni (Retired)

Ne connaissant pas la structure de la table cible j'ai du mal à répondre...

Si tu l'as il faut regarder le format et utiliser celui ci comme sortie d'Alteryx.

Sinon, tu peux tenter différents formats que tu créé toi même à la main pour voir lequel sera accepté?

Stéphane Portier
Sales Engineer
Alteryx