Free Trial

Forum

Trouvez des réponses, posez des questions, et partagez votre expertise d’Alteryx.
TIPS de la semaine

Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !

Voir l'index
RÉSOLU

Erreur "FixeDecimal non valide"

ls_ITM
Météore

Bonjour,

 

j'extrais des données d'un environnement Teradata via l'outil "Entrée de données" et une reuqte SQL.

Tout allait bien jusqu'à cette semaine où mes données numériques extraites renvoient l'erreur "FixeDecimal non valide". J’ai essayé de caster le format de ma variable dans la requete SQL sans succès.

ce qui me perturbe, c’est qu'Alteryx reçoit bien le résultats dans la log :

ls_ITM_0-1580900520870.png

mais ne l'affiche pas dans l'explorateur :

ls_ITM_1-1580900559538.png

 

Merci de votre aide,

LS

13 RÉPONSES 13
carlosteixeira
15 - Aurora
15 - Aurora

bonjour mo ami @ls_ITM 

 

Selon la base de données à laquelle vous vous connectez, avez-vous essayé d'utiliser une fonction CAST qui ressemblerait à CAST (Field_Name) en tant que DECIMAL (20,5) pour changer le type de champ. Cela peut conserver les données sous forme décimale fixe via la sortie au lieu de int64.

 

 

Carlos A Teixeira
ls_ITM
Météore

Merci pour cette proposition, je reste avec le même problème...

carlosteixeira
15 - Aurora
15 - Aurora

Essayez de le transformer en chaîne dans la requête et traitez-le dans l'alteryx.

Carlos A Teixeira
DevCo
Météore

Bonjour,

 

J'ai le même souci. J'ai la version 10.5 d'Alteryx donc je suis obligé de changer les , en . mais à partir d'une requête sql comme source cela ne fonctionne pas

 

Avez vous des idées svp?

 

Merci beaucoup

DevCo
Météore

Je ne sais pas quelle version d'Alteryx vous avez mais avec la 10.5 par exemple, alteryx ne prend pas les virgules comme séparateur de nombre décimaux. Il faut les remplacer par des points.

J'ai fait un oreplace(cast(sum(H.VAL) as VARCHAR(20)) , ',' , '.') et je n'ai plus l'erreur. Je mets un select après pour remettre le format en décimal et c'est OK

StephaneP
Alteryx
Alteryx

Bonjour LS,

 

j'aborderai l'anomalie de 2 manières.

 

1. identifier pourquoi le type de donnée à changé dans votre source Teradata il y a une semaine. Ce n'est tout de même pas anodin et j'imagine que quelqu'un a provoqué cela volontairement ou involontairement. Il faut l'investiguer car cela peut résoudre votre problème et cela évitera aussi que cela se reproduise potentiellemet sur d'autres champs.

A noter que cela ne vient pas forcément de teradata, mais peut être de la config de votre poste ou du mode de transfert des données. Il faut traquer les changements, les mises à jours manuelles ou automatiques, les livraisons...

 

2.  Comme proposé dans certaines des réponses, basculer sur un type de champs neutre absorbable sans erreur par Alteryx

J'ai joint un workflow exemple avec un numérique en format string avec une virgule. Il génère votre erreur si on essaye de le transformer en FixedDecimal

 

StephaneP_0-1581593285118.png

 

L'idée ici est de charger dans Alteryx avec un format qu'il accepte (en String par exemple) puis d'utiliser l'objet RegEx (ou formule si vous préférez) pour remplacer les "," (virgule) par des "." (point). Puis de transformer en FixedDecimal.

 

J'espère que cela pourra vous aider.

 

Ps: Si ce post vous aide, merci de le considérer comme solution acceptée afin que d'autres utilisateurs puissent le retrouver plus facilement.

 

Stéphane Portier
Sales Engineer
Alteryx
StephV
Alteryx Alumni (Retired)

Merci pour ta question @ls_ITM . C'est génial si les solutions proposées peuvent toi aussi t'aider @DevCo.

 

Si ces réponses vous ont aidé, n'hésitez pas à "l'Accepter comme solution", elle aidera d'autres utilisateurs.

 

Merci à vous !

 

Merci à @StephaneP et @carlosteixeira pour votre réactivité !

Steph Vitale-Havreng
carlosteixeira
15 - Aurora
15 - Aurora

@StephV De rien, toujours disponible pour aider les utilisateurs.

 

Carlos A Teixeira
StephV
Alteryx Alumni (Retired)

Merci à toi @carlosteixeira ! C'est exactement l'esprit de la Communauté Alteryx ! Good Job ! 

Steph Vitale-Havreng
Étiquettes