1. #1
    Membre actif Avatar de spaiku
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    septembre 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : septembre 2007
    Messages : 209
    Points : 293
    Points
    293

    Par défaut [TOS] Filtre complexe sur les données d'un tFileInputDelimited

    Bonjour à tous,

    je suis débutant sur Talend (TOS) et je rencontre la première difficulté que je n'arrive pas à résoudre par la doc et les autres posts du forum.

    J'ai un job relativement simple, avec des fichiers csv traités via des tmap, et dont le résultat arrive dans des fichiers Excel. Pour les besoins de l'explication, je traite des abonnements liés à des points de livraison (PdL). A un PdL unique peuvent être associés plusieurs abonnements successifs.

    J'aimerais filtrer mes enregistrements de la manière suivante : garder tous les abonnements en service (sans date de résiliation), et tous les abonnements résiliés si aucun autre abonnement n'a été pris pour ce PdL. Dit autrement : je veux tous les derniers abonnements en date pour chaque PdL.

    Je ne vois pas comment créer ce filtre avec un tFilterRow. Je saurais facilement le faire en SQL, mais les données provenant de fichiers csv, je ne trouve pas de composant me permettant de le faire. Y a-t-il donc un moyen d'appliquer un filtre SQL sur des données csv, et si non, comment pourrais-je parvenir à mes fins ? J'aimerais autant que faire se peut éviter de devoir importer mes données dans une base qui servirait d'entrée à mes jobs.

  2. #2
    Membre éprouvé Avatar de supergeoffrey
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    octobre 2010
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : octobre 2010
    Messages : 599
    Points : 1 235
    Points
    1 235

    Par défaut

    J'utiliserai un tSortRow et un tUniqRow au lieu du tFilterRow.
    En espérant que le cache du tSortRow ne te crée pas de OutOfMemeryError.
    Pensez à marquer vos tickets comme résolus.
    Pensez aussi aux pour les réponses pertinantes

    Quand une discutions est résolue depuis un moment pour revenir dessus, il est mieux d'en crée une nouvelle avec un lien vers l'autre car :
    • Elle sera en haut du forum, elle sera donc plus visible
    • Une discussion résolue, on ne passe pas dessus pour aider, on passe dessus si on a le même problème
    • Tu demandes surement à tes clients de faire le même

  3. #3
    Membre actif
    Homme Profil pro
    Chef de projet IT
    Inscrit en
    mars 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Pologne

    Informations professionnelles :
    Activité : Chef de projet IT
    Secteur : Distribution

    Informations forums :
    Inscription : mars 2009
    Messages : 206
    Points : 231
    Points
    231

    Par défaut

    Bonjour.

    Dans le tmap, dans la partie droite represantant le fichier excel a alimenter, cliquer sur la fleche blanche associee a une croix verte (activer/desactiver le filtre).


    Pour
    garder tous les abonnements en service (sans date de résiliation)
    il suffit, selon moi, de saisir, si champ date de resiliation s'appelle "date_resiliation" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    date_resiliation==null
    -- ou alors, a la place de null, la valeur du champ "date_resiliation" lorsque l'abonnement est encore en cours

    Par contre, pour

    tous les abonnements résiliés si aucun autre abonnement n'a été pris pour ce PdL

    Je ne sais ce qu'il faudrait ecrire. Est-ce possible dans la mesure ou la condition est un peu plus compliquee ?

Discussions similaires

  1. [WebI Xi3] Pourcentage seulement sur les données filtrées
    Par lovebo dans le forum Débuter
    Réponses: 1
    Dernier message: 30/09/2015, 16h02
  2. MAX et Jointure sur les données correspondantes
    Par lepeule dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/04/2006, 16h18
  3. [debutant] Question sur les données.
    Par Norabfr dans le forum Débuter
    Réponses: 4
    Dernier message: 03/01/2006, 13h47
  4. Filtre sur les données des 3 derniers mois?
    Par Arkalys dans le forum Access
    Réponses: 2
    Dernier message: 21/10/2005, 09h02

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