IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement de jobs Discussion :

Récupérer une donnée comme nom de fichier


Sujet :

Développement de jobs

  1. #1
    Membre du Club
    Profil pro
    autre
    Inscrit en
    Octobre 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Octobre 2005
    Messages : 135
    Points : 62
    Points
    62
    Par défaut Récupérer une donnée comme nom de fichier
    Bonjour,

    Mon projet Talend consiste à charger des données depuis un fichier source Excel pour élaborer un XML. Cette partie est opérationnelle. Pour le traitement du fichier XML, j'ai besoin que le nom du fichier soit formalisé en fait, le nom du fichier est le contenu d'un champ de mon fichier Excel.

    Comment puis-je récupérer cette donnée pour nommer mon fichier ?

    Je pensais affecter la valeur de ma donnée à une variable puis rappeler cette variable dans le nom du fichier. J'ai créé pour ça une variable de contexte.

    J'arrive à appeler la variable pour nommer le fichier mais je ne sais pas comment faire pour charger la valeur de la variable avec ma donnée

    Merci de votre aide

  2. #2
    Membre émérite
    Avatar de haskouse
    Homme Profil pro
    Salesforce
    Inscrit en
    Août 2009
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : Salesforce
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2009
    Messages : 923
    Points : 2 684
    Points
    2 684
    Par défaut
    Pour charger la variable tu utilises une simple affectation dans un tJavaRow ou bien un tJava.

    Tu peux créer dexu sous job diffèrents :

    • Le premier lis le champs contenant le nom du fichier et tu le lies à un composant java, puis tu fais l'affectation. taVariable = row1.toto
    • Le deuxième fait le traitement

    Tu lies des deux sous-jobs avec un lien "OnSubJobOk"


    Bonne chance.

  3. #3
    Membre du Club
    Profil pro
    autre
    Inscrit en
    Octobre 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Octobre 2005
    Messages : 135
    Points : 62
    Points
    62
    Par défaut
    Merci pour ton aide ... mais je n'y connais rien en Java.

    Peux-tu me dire comment je dois écrire mon instruction dans le tJava ?

    Ma variable s'appelle CdPerimetre.

    Je récupère la donnée depuis un tMap vers un champ CdPerimetreEpandage d'une table de sortie (du tMap) qui s'appelle CodePerimetreVar. J'ai donc un flux de données principal (CodePerimetre) qui sort du tMap vers le tAdvencedFileOutputXML pour alimenter mon fichier XML et un deuxième flux (CodePerimetreVar) qui part du tMap vers le tJava.

    J'espère avoir fait correctement, mais je ne sais pas écrire le code du tJava ...

  4. #4
    Membre émérite
    Avatar de haskouse
    Homme Profil pro
    Salesforce
    Inscrit en
    Août 2009
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : Salesforce
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2009
    Messages : 923
    Points : 2 684
    Points
    2 684
    Par défaut
    Est ce que tu peux exporter le job et me l'envoyer pour comprendre ce que tu as fait. Sinon si tu ne peux pas envoi des screenshots.

  5. #5
    Membre du Club
    Profil pro
    autre
    Inscrit en
    Octobre 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Octobre 2005
    Messages : 135
    Points : 62
    Points
    62
    Par défaut
    Voici quelques copies d'écran: le Job (une partie) on y voie le chargement des données depuis les différentes feuilles du classeur Excel, les tMap et l'alimentation du XML partie par partie + la gestion des messages d'erreur, l'archivage des fichiers et une manip de "replace" qui permet de corriger un problème de NameSpace.

    Il y a aussi le tJava avec le code que j'ai écrit mais qui ne fonctionne pas car les fichiers générés s'appellent "null.xml" !!!

    Enfin le tFileOutputDelimited où j'utilise la variable pour nommer le fichier.
    Images attachées Images attachées    

  6. #6
    Membre du Club
    Profil pro
    autre
    Inscrit en
    Octobre 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Octobre 2005
    Messages : 135
    Points : 62
    Points
    62
    Par défaut
    La nuit portant conseil, j'ai trouvé une parade ce matin.

    J'ai utilisé un tSetGlobalVar où j'ai défini une variable globale "CdPerim" qui prend la valeur du CdPerimetre sortant duTMap par le flux CdPerimetreVar.

    Ensuite dans le champ du nom du fichier du tFileOutputDelimited je rappelle la variable CdPerim ... et ça marche !

    Merci de votre aide !
    Images attachées Images attachées   

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer une donnée d'un fichier CSV
    Par bremer dans le forum Débuter
    Réponses: 4
    Dernier message: 28/01/2014, 15h37
  2. Réponses: 2
    Dernier message: 12/04/2011, 09h21
  3. [PHP 5.2] Récupérer une variable POST avec une variable comme nom
    Par bailamos dans le forum Langage
    Réponses: 2
    Dernier message: 28/12/2008, 14h59
  4. Réponses: 4
    Dernier message: 27/09/2007, 15h05
  5. Utiliser une variable comme nom de fichier
    Par lo00_ dans le forum MATLAB
    Réponses: 1
    Dernier message: 28/06/2006, 13h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo