Je suis face au problème suivant:Comment fusionner 2 fichiers csv par colonnes en cuillère, pentaho, tout en gérant la conversion des données?
J'ai deux entrées:
1) J'ai un fichier de base csv avec 35 colonnes et leurs en-têtes appropriés.
2) J'ai une variété de fichiers donnés, non contrôlés par moi, qui peuvent ou non contenir les 35 colonnes et, pire encore, ils peuvent être hors service.
Je dois faire correspondre les colonnes du deuxième fichier csv aux colonnes du premier fichier csv. Si le second fichier csv ne contient pas toutes les 35 colonnes, je devrais les créer dans le bon ordre. Une fois que j'ai un bon fichier csv (dont l'en-tête ressemble au premier en-tête csv), je le passe à un script qui gère les données en les référençant par les en-têtes des colonnes. Une solution possible serait d'obtenir les entrées de champ existantes à l'intérieur du script, cependant, je ne suis pas capable de le faire parce que les champs semblent être fixes en référence aux en-têtes de colonne existants du deuxième fichier csv. Par conséquent, quand j'essaie d'accéder à une colonne qui n'existe pas, je me retrouve avec une exception ...
Toute aide serait grandement appréciée!
Juste pour suivre le problème. J'ai abandonné ça. J'ai résolu le problème avec bouilloire en utilisant une base de données locale. Mais ce qui a vraiment résolu mon problème était un petit pot que j'ai développé juste pour traiter les fichiers csv en dehors de la bouilloire. Mon ami est toujours à la recherche d'une solution sur ce point car il doit utiliser uniquement la bouilloire =/ – wleao
Ceci est très difficile dans PDI. Vous devriez jeter un coup d'œil à l'étape d'injection de métadonnées - cela fera probablement ce que vous voulez. Effectivement vous devriez lire le fichier, travailler sur la structure, puis l'injecter dans la transformation pour ensuite lire le fichier lui-même. – Codek