Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/03/2011, 17h16   #1
Membre à l'essai
 
Inscription : septembre 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 61
Points : 22
Points : 22
Par défaut tMap et Format de date

Bonjour,

Dans ma tMap, je test si la valeur est null, si oui je veux lui donner une Date par defaut. sinon je donne la date du jour

Je mets ceci
Code :
row1.ma_valeur==NULL?TalendDate.parseDate("dd-MM-yy","01-01-01"):TalendDate.getDate("DD-MM-YY")
En lancant l'execution, j'ai une erreur.

Citation:
Non concordance de type : impossible de convertir un Object&Serializable&Comparable<?> en String
Je ne sait plus comment faire, j'ai tout essayé ce que je connaissais
flash22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2011, 17h32   #2
Membre émérite
 
Homme Nicolas Saumande
Architecte Décisionnel
Inscription : février 2008
Messages : 693
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Saumande
Âge : 36
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Architecte Décisionnel

Informations forums :
Inscription : février 2008
Messages : 693
Points : 879
Points : 879
Bonjour,

Est-ce que c'est une erreur que tu as à la compilation ?
Si c'est le cas tu peux voir précisément quelle est la ligne qui pose problème en cliquant sur l'onglet code de ta fenêtre de visualisation du job.

Nicolas
DevNico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2011, 17h41   #3
Membre à l'essai
 
Inscription : septembre 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 61
Points : 22
Points : 22
Citation:
Envoyé par DevNico Voir le message
Bonjour,

Est-ce que c'est une erreur que tu as à la compilation ?
Si c'est le cas tu peux voir précisément quelle est la ligne qui pose problème en cliquant sur l'onglet code de ta fenêtre de visualisation du job.

Nicolas
Compilation ? Tu veux surement dire au moment ou je clique sur executer le Job.

la ligne qui pose probleme c'est celle ci.

Code :
1
2
3
4
5
out = NULL;
 
						// # Output table : 'out'
out_tmp.l_wins = row1.wins == NULL ? "2001-01-01": Work.stringToDate(row1.l_wins);
out = out_tmp;
flash22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2011, 17h58   #4
Membre émérite
 
Homme Nicolas Saumande
Architecte Décisionnel
Inscription : février 2008
Messages : 693
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Saumande
Âge : 36
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Architecte Décisionnel

Informations forums :
Inscription : février 2008
Messages : 693
Points : 879
Points : 879
En fait quand tu cliques sur Exécuter, il génère le code java dans un premier temps puis exécute ton job.

Si tu cliques sur l'onglet Code, il ne fait que générer le code java. Et ça te permet donc de voir précisément quelles sont les lignes posant problème.

Parce que si ta donnée en sortie est bien déclarée en date, je ne voir pas trop d'où peut venir l'erreur...
DevNico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 11h18   #5
Membre à l'essai
 
Inscription : septembre 2007
Messages : 61
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 61
Points : 22
Points : 22
Est ce qu'il faut comprendre que le fait d'appuyer sur le bouton code, sans l'executer avant, met le curseur sur les premier probleme ?
flash22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2011, 12h11   #6
Membre émérite
 
Homme Nicolas Saumande
Architecte Décisionnel
Inscription : février 2008
Messages : 693
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Saumande
Âge : 36
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Architecte Décisionnel

Informations forums :
Inscription : février 2008
Messages : 693
Points : 879
Points : 879
Heu non, pas du tout

Si tu appuies sur le bouton code, ça t'ouvre une fenêtre avec le code généré.
Les erreurs apparaissent en rouge (sur la droite).
DevNico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2011, 11h12   #7
Invité de passage
 
Inscription : août 2009
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2009
Messages : 3
Points : 2
Points : 2
Par défaut Pb de format

Le soucis dans ton expression est que tes deux expressions ne sont pas du même type, le getDate() renvoie un string alors que le pareseDate un champ date, tu devrais plustôt utiliser un getCurrentDate() dans ton sinon, si le champ cible est bien typé Date.

Exemple: Relational.ISNULL(row1.id)?TalendDate.parseDate("dd-MM-yy","01-01-01"):TalendDate.getCurrentDate()
emmanuel_59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h02.


 
 
 
 
Partenaires

Hébergement Web