Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Kettle-Pentaho
Kettle-Pentaho Forum d'entraide Kettle et Pentaho (Kettle, Pentaho Data Integrator)
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 18/01/2012, 17h53   #1
Membre habitué
 
Homme
Consultant informatique
Inscription : mars 2002
Messages : 211
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : mars 2002
Messages : 211
Points : 133
Points : 133
Par défaut définir dynamiquement la ligne de départ pour lire un fichier Excel

Bonjour,

J'ai un fichier excel qui est mal structuré.
Dans les première lignes j'ai un couple clé:valeur

Ensuite j'ai les infos que je voudrais extraire.
Ces infos sont sous forme de Header / Row (Chaque colonne est donc un champ)

Voici un aperçu du fichier que je met en pièce jointe.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/*1ères lignes*/
Date: 02/02/2012
Marques:
           Marque1
           Marque2
           ...
/*ici une ligne vide*/

/*mes données à traiter*/
Champ1 |  Champ2 |  Champ3
val1      |  val2      |  val3
val1      |  val2      |  val3
.....
Le problème est que les marques peuvent varier.
Je peux donc démarrer mes donnés à la ligne 7 ou à la ligne 9 un autre jour.

Comment puis-je renseigner dynamiquement le start row dans l'étape Excel Input?

Pour l'instant, j'ai 1 Excel input qui lit la 1ère colonne et le numéro de la ligne lue.
Je passe les valeurs de cette première colonne dans un Modified Javascript.
Là, dès que je vois que la valeur de la première colonne est égal à 'Champ1', je trouve le numéro de la ligne ou je voudrais commencer.
Code :
1
2
if (Header.getString()=='Champ1') var row_to_start = rownum.getInteger();
/*row num est récupéré via l'Excel Input.  Il s'agit du numéro de la ligne lue*/
Par contre je ne sais pas comment faire pour réutiliser la valeur de cette variable row_to_start dans un Excel input.

Il y a peut-être un autre moyen de faire ce dont j'ai besoin.

Merci pour votre aide,

PS: renommer le fichier joint en changeant l'extension ZIP en XLSX.
Fichiers attachés
Type de fichier : zip sample.zip (19,5 Ko, 2 affichages)
L0007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h49.


 
 
 
 
Partenaires

Hébergement Web