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 16/02/2011, 16h57   #1
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
Par défaut Masque de fichier avec tfileinput

Bonjour,

J'aurai voulu savoir si il était possible d'utiliser un masque de fichier pour ne sélectionner que certains fichier en entrée du composant tFileInputDelimited.

En effet mon job utilise le masque avec le composant tFileList pour séléctioner le bon fichier et tFileCopy pour le copier au bon endroit mais impossible de dire au tFileInputDelimited d'utiliser ce fichier.
Le nom doit forcément être en absolu.

Comment faire pour ne traiter que le bon fichier ?

Merci pour votre aide.
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 17h55   #2
Membre extrêmement actif
 
Avatar de jojodu31
 
Inscription : mars 2008
Messages : 870
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2008
Messages : 870
Points : 733
Points : 733
Bonjour,
as tu essayé en utilisant
Code :
((String)globalMap.get("tFileList_1_CURRENT_FILEPATH"))
?
__________________
Heureux soient les fêlés, car ils laisseront passer la lumière.

Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
jojodu31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 09h44   #3
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
oui super ça fonctionne

merci beaucoup
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 09h48   #4
Membre extrêmement actif
 
Avatar de jojodu31
 
Inscription : mars 2008
Messages : 870
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2008
Messages : 870
Points : 733
Points : 733
de rien
Prends l habitude de faire des CTRL+Espace dans les éditeur java, ainsi il te propose toutes les variables accessibles comme celle que je t ai donné. C'est très pratique, et surtout ça te permet de savoir ce que tu peux connaitre comme info

et n oublie pas le

__________________
Heureux soient les fêlés, car ils laisseront passer la lumière.

Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
jojodu31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 16h28   #5
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
merci pour le conseil

par contre j'ai encore un souci pour que tout fonctionne correctement

je définit mes shémas dans le composant tFileInputMSDelimited pour distinguer mes 2 types de lignes et quand je fais l'essai avec le fichier "en dur" ça fonctionne, des lignes sont insérées

par contre quand je remplace le nom du fichier par l'expression ((String)globalMap.get("tFileList_1_CURRENT_FILEPATH")
pour récupérer le fichier renvoyé par le composant tFileList, plus rien ne se passe, aucune ligne n'est insérée

de plus quand j'essaye à nouveau avec le fichier "en dur" dans le nom du fichier cela ne fonctionne plus
comme si les schémas avaient été modifiés...
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 16h49   #6
Membre extrêmement actif
 
Avatar de jojodu31
 
Inscription : mars 2008
Messages : 870
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2008
Messages : 870
Points : 733
Points : 733
tu as mis un masque pour filtrer les fichiers dans ton tFileList ? Ou tu veux traiter tous les fichiers ?
__________________
Heureux soient les fêlés, car ils laisseront passer la lumière.

Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
jojodu31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2011, 10h34   #7
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
J'ai mis un masque pour traiter seulement un fichier par jour parmi la liste.

Il y a la date dans le nom du fichier donc je l'utilise pour mon filtre.
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2011, 10h48   #8
Membre extrêmement actif
 
Avatar de jojodu31
 
Inscription : mars 2008
Messages : 870
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2008
Messages : 870
Points : 733
Points : 733
Hum bizarre... tu bien mis les quote " pour ton le filtre du tFileList ? Tu dois bien mettre "*.extension" dans la case.

Sinon à quoi ressemble ton chemin en dur ?
__________________
Heureux soient les fêlés, car ils laisseront passer la lumière.

Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.
jojodu31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2011, 16h49   #9
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
le filtre du tlist est de la forme :

Code :
"nom_"+TalendDate.formatDate("yyyyMMdd",TalendDate.getCurrentDate())+"*"
je ne mets pas "*.extension" car la fin du fichier est variable (heure)

le tlist est connecté à un tFileInputMSDelimited dans lequel j'aimerais utiliser le fichier trouvé en sortie du tlist avec une expression de la forme

Code :
((String)globalMap.get("tFileList_1_CURRENT_FILEPATH"))
le tfileinputmsdelimited fonctionne avec le chemin en dur (de la forme "C:/Users/nom_20110217071001.log") mais pas avec l'expression ci-dessus...
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2011, 17h33   #10
atb
Membre chevronné
 
Homme
Inscription : novembre 2004
Messages : 569
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Autre

Informations forums :
Inscription : novembre 2004
Messages : 569
Points : 696
Points : 696
As-tu mis un flux iterate entre ton tList et tfileinputmsdelimited.

Sinon Tu mets juste ton tFileList --> iterate--> tlog pour voir combien de fichiers il trouve.
atb est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 18/02/2011, 18h17   #11
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
Oui il y a bien un lien Iterate entre le tList et le tfileinputmsdelimited.

Je ne peut pas faire tFileList --> iterate--> tlog, l'extrémité du lien ne se connecte pas au tLogRow...
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2011, 18h55   #12
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
j'ai fait un

Code :
System.out.println( ((String)globalMap.get("tFileList_1_CURRENT_FILEPATH")) );
dans un composant tJava et le chemin du fichier trouvé est le bon

au final ça fonctionne mais il lit 4 fois le fichier alors qu'il n'y a qu'un seul fichier qui correspond au filtre...

il y a encore quelque chose qui m'échappe...
tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2011, 19h15   #13
Candidat au titre de Membre du Club
 
Homme
Inscription : octobre 2006
Messages : 62
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 62
Points : 11
Points : 11
en fait j'ai un tFTPFileList en amont qui parcourt un répertoire et qui passe sur les 4 fichiers du répertoire et j'avais un lien iterate entre les 2

du coup, tout le cycle se répétait 4 fois...

en changeant le lien par un OnSubjobOK tout fonctionne

tomasi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h56.


 
 
 
 
Partenaires

Hébergement Web