j'ai fait une notation ternaire dans mon tmap mais ca marche pas Var.var1 = 1 ? Var.var6= 0.05 : Var.var6 =0.005 Pièce jointe 305739
ma var1 est de type Long et ma variable var6 est de type double
Pièce jointe 305744Pièce jointe 305744
Version imprimable
j'ai fait une notation ternaire dans mon tmap mais ca marche pas Var.var1 = 1 ? Var.var6= 0.05 : Var.var6 =0.005 Pièce jointe 305739
ma var1 est de type Long et ma variable var6 est de type double
Pièce jointe 305744Pièce jointe 305744
Une opération ternaire en java ressemble plus à ça :
Var.var6 = Var.var1 = 1 ? 0.05 : 0.005 ;Ce qu'il faut mettre dans Talend est :
Var.var1 = 1 ? 0.05 : 0.005Par contre quand il va comparer un long à 1, qui par défaut est un integer, il devrait ne jamais réussir à retourner true.
Bonjour,
1/ Juste pour rectifier, pour une opération ternaire on fait : Var.var1 == 1 ? 0.05 : 0.005 et pas Var.var1 = 1 ? 0.05 : 0.005
2/ en fonction de la valeur de ton var1 (long) tu détermine la valeur de ton var6 (double) l'expression peut être donc :
Var.var1 == Long.parseLong("1") ?0.05:0.005
merci infinimment c'est resolu