Contrôle conformité DATE
- S'abonner au fil RSS
- Marquer le sujet comme nouveau
- Marquer le sujet comme lu
- Placer ce Sujet en tête de liste pour l'utilisateur actuel
- Marquer
- S'abonner
- Sourdine
- Page imprimable
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Bonjour,
Comment je peux vérifier qu'une date est appartient bien au calandrer (en utilisant l'outil formule)
Par exemple :
j'ai une liste des dates parmi ces dates 35/12/2022 et 29/02/2023 n'appartiens pas au calendrier.
Merci d'avance.
Résolu ! Accéder à la solution.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Bonjour @Abdesslem_19 ,
En convertissant ces date au format "Date" d'Alteryx, les dates qui n'existent pas deviendront des valeurs nulles. Vous pourrez ainsi les traiter comme vous le souhaitez (filtre, etc.).
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Bonjour @Jean-Balteryx ,
Merci de votre réponse.
Je veux pas changer la format au DATE, je veux la garder tel quel et faire ce contrôle via l'outil formule , c'est possible !
Cordialement,
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Bonjour @Abdesslem_19
Le résultat que tu obtiens est normal.
Dans ton premier test tu compares les valeurs de la colonne ED000512.C.1 à 0. Dans la capture d'écran, toutes tes valeurs sont à 0 donc ta première condition n'est pas vérifiée.
Le test passe donc à la deuxième condition qui dit que si le parsing de tes dates est null (ce qui signifie que tes dates ne sont pas dans le calendrier car le parsing ne fonctionne pas) alors 1 sinon 0. Le souci ici c'est que toutes les dates de ta capture d'écran sont correctes (juste qu'elles sont des années 1900) contrairement à celles de ta question initiale; mais elles sont bonnes donc ton parsing va fonctionner. Ce qui signifie que le résultat sera 1 pour toutes ces dates et non 0. Ce qui explique le résultat que tu as.
Enfin si tu veux convertir les données de la colonne "Date de naissance" de ta capture d'écran en un format "Date" reconnaissable par Alteryx avec DateTimeParse, la syntaxe à adopter doit être DateTimeParse([Date de naissance],"%Y-%m-%d"). En fait dans le deuxième argument de DateTimeParse, tu dois avoir le même format que tes dates en entrée sinon ça ne marche pas.
Fais nous savoir si cela répond à ton besoin. Sinon n'hésite pas à fournir un dataset random avec des données d'entrée (même avec quelques lignes) et la sortie que tu veux. 🙂
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Bonjour @Emmanuel_G ,
Merci pour cette réponse détaillé, mais sincèrement je me suis perdu dans ta réponse.
Ce que je veux exactement c'est de vérifier qu'une date est appartient bien au calendrier
1- sans changer la format au DATE
2- en utilisant l'outil formule
Par exemple :
J'ai appliqué ce test
Je comprend pas pourquoi cette donné n'as pas été détecté comme anomalie malgré qu'elle n'est pas conforme au formata date y/m/j
Merci d'avance.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
"En fait dans le deuxième argument de DateTimeParse, tu dois avoir le même format que tes dates en entrée sinon ça ne marche pas."
En effet le problème a été dans le format .....
Merci beaucoup @Emmanuel_G
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Je pense avoir mieux compris ton problème. Dis moi si ce n'est pas le cas.
Tu voudrais flaguer en anomalie toutes les dates n'ayant pas le format Y/m/d (Ce qui est le cas par exemple pour la première ligne) et les dates dans le bon format mais hors calendrier(Ce qui est le cas par exemple pour la dernière ligne).
Le souci c'est que avec DateTimeParse tu n'obtiendras pas une valeur nulle de ta première ligne. Regarde ma capture d'écran ci-dessous où je fais le test de conversion.
Dans ma capture, tu vois que pour la première ligne, la conversion se fait mais elle donne le 20 janvier 2001 alors qu'on a le 1er janvier 2023.
Voici la solution que je propose si tu veux flaguer cette ligne et les autres qui sont identiques comme anomalies. Elle est en PJ également.
Fais moi savoir si ce n'est toujours pas clair.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler au modérateur
Heureux d'avoir pu aidé. 🙂
Je te joins également un article détaillé sur ces fonctions de date où c'est bien mieux expliqué : https://community.alteryx.com/t5/Base-de-Connaissance-Francais/ACE-s-Insights-Les-fonctions-de-dates...
