Créer le Job enfant pour passer une valeur au Job parent - 7.0

Buffer

EnrichVersion
7.0
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
EnrichPlatform
Studio Talend
task
Création et développement > Systèmes tiers > Composants Buffer
Gouvernance de données > Systèmes tiers > Composants Buffer
Qualité et préparation de données > Systèmes tiers > Composants Buffer

Le Job enfant va lire des données d'un fichier texte, alimenter le nombre total de lignes et passer les lignes au Job parent.

Le fichier d'entrée, nommé in.txt, se présente comme suit :

id;name
1;Shong
2;Elise
3;Sabrina

Ce Job va contenir les composants suivants :

  • un tFileInputDelimited pour lire les données d'un fichier texte et un tLogRow pour les afficher dans la console,
  • un tFixedFlowInput pour obtenir le nombre total de lignes lues par le tFileInputDelimited et un tBufferOutput pour mettre la valeur en mémoire tampon.

Procédure

  1. Créez un Job et nommez-le childJob.
  2. Ajoutez un tFileInputDelimited et un tLogRow dans l'espace de modélisation graphique et reliez-les à l'aide d'un lien Row > Main.
  3. Ajoutez un tFixedFlowInput et un tBufferOutput dans l'espace de modélisation graphique et reliez-les à l'aide d'un lien Row > Main.
  4. Reliez le premier sous-Job au second à l'aide d'un lien Trigger > On Subjob Ok.
  5. Cliquez sur le composant tFileInputDelimited pour ouvrir sa vue Basic settings. Renseignez le champ File name/Stream avec le chemin d'accès in.txt et le champ Header avec 1.
  6. Cliquez sur le bouton [...] près de Edit schema pour ouvrir l'éditeur du schéma. Définissez-le en ajoutant deux colonnes, id de type Integer et name de type String.
  7. Double-cliquez sur le composant tFixedFlowInput et créez une colonne nommée nb_line de type Integer.
  8. Dans la zone Mode, sélectionnez Use Single Table et renseignez la cellule Value avec ((Integer)globalMap.get("tFileInputDelimited_1_NB_LINE")).