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 :

Créer des fichiers à la sortie en fonction d'un champ


Sujet :

Développement de jobs

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2013
    Messages : 45
    Points : 32
    Points
    32
    Par défaut Créer des fichiers à la sortie en fonction d'un champ
    Bonjour,
    j'ai à l'entrée des fichiers qui contient des lignes avec un champ date de transaction,
    je veux obtenir à la sortie un fichier par chaque date
    c'est a dire le fichier N contient les lignes issues de l'ensemble des fichiers à l'entrée mais pour lesquelles la date de transaction est N et j'ai besoin d'ajouter à chaque ligne un champ qui contient le nom de fichier source ,

    comment procèder pour realiser cela
    j'espère que vous m'aidiez et je vous remercie d'avance

  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 faire cela il faut commencer par utiliser un tFileList qui va itérer sur tous tes fichiers. Après tu le lies à un composant de lecture de fichier. Le chemin du fichier à lire sera une variable issu du globalMap, normalement de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (String)globalMap.get("tFileList_1_CURRENT_FILE")
    ou quelque chose de ce genre. Après tu lies le fichier à un tMap qui aura comme sortie tes colonnes désiré dont le colonne "fichier_source" qui contiendra la variable décrite en haut.

    To tMap se liera en sortie à un compsant tFileOutput par exemple et il aura comme nom de fichier un truc de ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "nom_fichier_" + colonneDateTransaction
    Comme ça toutes les lignes de tous les fichiers qui ont la même date de transaction iront dans un même et unique fichier. Puisque le nom du fichier dépend de cette date de transaction. Surtout n'oublie pas de cocher dans le composant de sortie l'option "écrire après" , comme ça le fichier ne s'écrasera pas à chaque itération du tFileList.

    Bonne chance.
    "Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant." Mohammed le Messager d’Allah (que la paix et le salut d'Allah soient sur lui)

    Tutoriels Talend
    Mes articles publiés
    Mon CV en-ligne

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2013
    Messages : 45
    Points : 32
    Points
    32
    Par défaut
    Merci beaucoup Mr mustapha pour votre réponse ,
    je suis arriver à créer un job grace à l'aide d'un membre du forum , mais
    j'ai encore un problème ,
    des erreurs qui s'affichent
    C:\Users\NEZZA\ntuser.dat (Le processus ne peut pas accéder au fichier car ce fichier est utilisé par un autre processus)
    C:\Users\NEZZA\ntuser.dat.LOG1 (Le processus ne peut pas accéder au fichier car ce fichier est utilisé par un autre processus)
    C:\Users\NEZZA\ntuser.dat.LOG2 (Le processus ne peut pas accéder au fichier car ce fichier est utilisé par un autre processus)
    Exception in component tFileOutputDelimited_1
    java.io.FileNotFoundException: C:\reception<?xml version="1.0" encoding="UTF-8"?><ganttproject-options>.csv (La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte)
    at java.io.FileOutputStream.open(Native Method)
    at java.io.FileOutputStream.<init>(Unknown Source)
    at java.io.FileOutputStream.<init>(Unknown Source)
    at ref.testdeforeach_0_1.testdeforeach.tBufferInput_1Process(testdeforeach.java:1997)
    at ref.testdeforeach_0_1.testdeforeach.tFileList_1Process(testdeforeach.java:1142)
    at ref.testdeforeach_0_1.testdeforeach.runJobInTOS(testdeforeach.java:2611)
    at ref.testdeforeach_0_1.testdeforeach.main(testdeforeach.java:2478)
    avez vous s'il vous plait une idée d'où cela vient et comment je peut le résoudre ?
    en pj une capture de mon job j’espère que vous allez m'aider je vous remercie d'avance
    Images attachées Images attachées  

  4. #4
    Membre actif Avatar de kayim
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2011
    Messages : 134
    Points : 283
    Points
    283
    Par défaut
    il me semble que tu récupère ça
    "<?xml version="1.0" encoding="UTF-8"?><ganttproject-options>" de ton tBufferInput_1 à la place de ta date... T'as bien le même schéma entre les 2 composants buffer ?
    sinon utilise un masque exemple "*.csv" dans le tFileList pour ne pas traiter d'autres types de fichiers éventuels dans ton repertoire
    Etre un homme c'est regarder le diable droit dans les yeux et lui dire d'aller se faire foutre...

  5. #5
    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
    Essai d'exporter ton job et de nous l'envoyer pour voire ça de plus prêt.
    Envoi aussi quelques exemples de fichiers à traiter.

    Et n'oublie pas de dire quelle est la version de ton Talend ?
    "Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant." Mohammed le Messager d’Allah (que la paix et le salut d'Allah soient sur lui)

    Tutoriels Talend
    Mes articles publiés
    Mon CV en-ligne

Discussions similaires

  1. créer des fichier de sortie pdf en boucle
    Par papekiki dans le forum Langage
    Réponses: 3
    Dernier message: 24/08/2009, 13h43
  2. Créer des fichiers cachés
    Par arasium dans le forum Langage
    Réponses: 10
    Dernier message: 03/08/2006, 09h05
  3. Réponses: 4
    Dernier message: 22/11/2004, 19h29
  4. [CR] Version nécessaire pour créer des fichiers DSR ?
    Par aysse dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 17/11/2003, 09h01

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