Sunteți pe pagina 1din 198

Talend Open Studio

Guide Utilisateur

Version 0.7

Convient pour l’utilisation de Talend Open Studio v1.1 et ultérieure.


Copyright

Une copie de la licence GNU Free Documentation License est fournie avec les fichiers source de cette
documentation.

ii Talend Open Studio Copyright © 2007


Talend Open Studio
Guide Utilisateur................................................................................. i

A propos de ce manuel... ....................................................................................1


Historique des versions .......................................................................................................1
Remarques et Support .......................................................................................................1

Présentation de Talend Open Studio ................................................................3


Accès à Talend Open Studio ..............................................................................................3
Création d’un projet ...........................................................................................................5
Importation d’un projet .....................................................................................................6
Configuration de Talend Open Studio ..............................................................................8
Description de l’interface utilisateur ...............................................................................11
Repository .....................................................................................................................11
Business Models ...........................................................................................................12
Job Designs ...................................................................................................................12
Code ..............................................................................................................................12
Routines .....................................................................................................................12
Snippets ......................................................................................................................13
Documentation .............................................................................................................13
Metadata .......................................................................................................................13
Recycle bin ...................................................................................................................13
Espace de modélisation .................................................................................................14
Vues Properties, Run Job et Logs ..................................................................................14
Properties ......................................................................................................................15
Logs ..............................................................................................................................15
Run Job .........................................................................................................................15
Vues Modules et Scheduler ..............................................................................................15
Modules ........................................................................................................................15
Open Scheduler ............................................................................................................17
Vues Outline et Code .....................................................................................................17
Outline ..........................................................................................................................18
Code viewer ..................................................................................................................18

Conception d’un Business Model ...................................................................19


Objectifs .............................................................................................................................19
Création ou ouverture d’un business model ...................................................................19
Ouverture d’un business model ........................................................................................20
Création d’un business model ..........................................................................................20
Modélisation d’un business model ...................................................................................21
Cliquer & déposer des objets ...........................................................................................22
Connexions .......................................................................................................................23

Copyright © 2007 Talend Open Studio iii


Commentaires et réarrangement d’un Business Model ....................................................25
Ajoût d’une note ou de texte libre ................................................................................25
Réarrangement d’une vue métier ..................................................................................25
Propriétés ..........................................................................................................................26
Vue Rulers & Grid ........................................................................................................26
Vue Appearance ...........................................................................................................27
Vue Assignment ...........................................................................................................28
Affectation d’éléments à un Business Model ..................................................................29
Modification d’un Business model ...................................................................................30
Renommer un business model ..........................................................................................30
Copier et coller un business model ..................................................................................30
Déplacer un business model .............................................................................................30
Supprimer un business model ..........................................................................................30

Conception d’un Job Design ............................................................................31


Objectifs .............................................................................................................................31
Création ou Ouverture d’un job .....................................................................................31
Ouverture d’un job ...........................................................................................................32
Création d’un job ..............................................................................................................32
Conception d’un Job Design ............................................................................................33
Cliquer & Déposer des composants .................................................................................33
Afficher/Cacher la palette ................................................................................................34
Réorganiser les onglets d’un job ......................................................................................34
Avertissements et erreurs sur un composant ....................................................................35
Connexion des composants ...............................................................................................36
Types de connexion ..........................................................................................................36
Connexions de type Row ..............................................................................................36
Main row ....................................................................................................................36
Lookup row ................................................................................................................37
Output row .................................................................................................................38
Connexion de type Iterate .............................................................................................38
Connexions de type Trigger .........................................................................................39
Job à entrées/sorties multiples ..........................................................................................39
Définition des propriétés d’un Job ..................................................................................39
Onglet Main ......................................................................................................................40
Onglet View .....................................................................................................................40
Onglet Documentation .....................................................................................................41
Onglet Properties ..............................................................................................................42
Paramétrage d’un schéma built-in ................................................................................43
Paramétrage d’un schéma repository ............................................................................43
Définition du composant Start .........................................................................................44
Définition des schémas de métadonnées ..........................................................................45
Configurer une connexion DB .........................................................................................46
Etape 1: propriétés générales ........................................................................................46
Etape 2: Connexion ......................................................................................................47

iv Talend Open Studio Copyright © 2007


Etape 3: Chargement de la table ...................................................................................49
Etape 4: Définition du schéma .....................................................................................49
Configurer un schéma File Delimited ..............................................................................49
Etape 1: Propriétés générales ........................................................................................50
Etape 2: Chargement du fichier ....................................................................................50
Etape 3: Définition du schéma .....................................................................................51
Etape 4: Schéma final ...................................................................................................54
Configurer un schéma File Positional ..............................................................................55
Etape 1 : Propriétés générales .......................................................................................56
Etape 2 : Connexion et chargement du fichier .............................................................56
Etape 3 : Affinage du schéma .......................................................................................58
Etape 4 : Schéma final ..................................................................................................58
Configurer un schéma File Regex ....................................................................................58
Etape 1: Propriétés générales ........................................................................................59
Etape 2 : Chargement du fichier ...................................................................................59
Etape 3 : Définition du schéma ....................................................................................60
Etape 4: Schéma final ...................................................................................................61
Configurer un schéma LDIF ............................................................................................61
Etape 1 : Propriétés générales .......................................................................................62
Etape 2 : Chargement du fichier ...................................................................................62
Etape 3: Définition de schéma ......................................................................................62
Etape 4: Schéma final ...................................................................................................63
Configurer un schéma File XML .....................................................................................63
Etape 1 : Propriétés générales .......................................................................................64
Etape 2 : Chargement du fichier ...................................................................................64
Etape 3: Définition du schéma .....................................................................................64
Etape 4 : Schéma final ..................................................................................................67
Création de requêtes à l’aide de SQLBuilder .................................................................67
Comparaison des structures de base de données ..............................................................69
Construction d’une requête ..............................................................................................69
Mapping de données .........................................................................................................70
Présentation du fonctionnement tMap ..............................................................................71
Mapper .............................................................................................................................72
Paramètres Input ..........................................................................................................74
Renseigner les tables ..................................................................................................74
Lier des tables input ...................................................................................................75
Joins Inner ..................................................................................................................76
Retirer des entrées de la table Input ...........................................................................77
Mapping de variables .................................................................................................77
Accéder aux variables globales et contextuelles .......................................................79
Supprimer des variables .............................................................................................79
Paramètres Output .......................................................................................................79
Filtres .........................................................................................................................80
Rejets .........................................................................................................................81
Rejets Inner Join ........................................................................................................81

Copyright © 2007 Talend Open Studio v


Retirer des entrées de la table Output ........................................................................82
Expression editor ..........................................................................................................82
Schema Editor ..............................................................................................................82
Activation/Désactivation d’un job ou sous-job ...............................................................84
Désactiver un composant Start .........................................................................................84
Désactiver un composant non-Start ..................................................................................84
Définition d’un contexte et de variables de job ..............................................................85
Ajouter ou renommer un contexte ....................................................................................85
Définir les paramètres de contexte ...................................................................................86
Variables et alias ............................................................................................................87
Création rapide de variables de contexte ......................................................................87
Requêtes StoreSQL ......................................................................................................89
Exécuter un job dans un contexte défini ..........................................................................89
Exécution d’un job ............................................................................................................90
Exécuter en mode normal .................................................................................................90
Afficher les statistiques ................................................................................................90
Afficher les traces .........................................................................................................91
Exécuter en mode debug .................................................................................................92
Enregistrement ou Exportation de jobs ..........................................................................92
Enregistrement d’un Job ...................................................................................................92
Exportation de job scripts .................................................................................................93
Raccourcis clavier .............................................................................................................93

Composants .......................................................................................................95
tMsgBox ............................................................................................................................96
Propriétés de tMsgBox .....................................................................................................96
Scénario test de type ‘Hello World’ .................................................................................96
tFileInputDelimited ..........................................................................................................98
Propriétés de tFileInputDelimited ....................................................................................98
Scénario: Affichage du contenu d’un fichier délimité .....................................................99
tFileInputPositional .........................................................................................................101
Propriétés de tFileInputPositional ..................................................................................101
Scénario: Transformation d’un fichier positionnel en XML ..........................................102
tFileOutputXML .............................................................................................................106
Propriétés de tFileOutputXML .......................................................................................106
Scénario: Utilisation d’un format de sortie XML .........................................................107
tLogRow ...........................................................................................................................108
Propriétés de tLogRow ...................................................................................................108
Scénario: Affichage dans la console ..............................................................................108
tFileList ............................................................................................................................109
Propriétés de tFileList ....................................................................................................109
Scénario: Itération sur un répertoire ...............................................................................109
tFTP ..................................................................................................................................112
Propriétés de tFTP ..........................................................................................................112
tFTP put ..........................................................................................................................112

vi Talend Open Studio Copyright © 2007


tFTP get ..........................................................................................................................113
tFTP rename ...................................................................................................................113
tFTP delete .....................................................................................................................113
Scénario: Charger des fichiers sur un serveur distant ....................................................113
tSendMail .........................................................................................................................115
Propriétés de tSendMail .................................................................................................115
Scénario: Envoi de notification d’erreur par email ........................................................115
tPerl ..................................................................................................................................118
Propriétés de tPerl ..........................................................................................................118
Scénario: Affichage du nombre de lignes traitées ..........................................................118
tSystem .............................................................................................................................121
Propriétés de tSystem .....................................................................................................121
Scénario: Affichage message dans sortie système .........................................................121
tFileInputRegex ...............................................................................................................123
Propriétés de tFileInputRegex ........................................................................................123
Scénario: Transformation de fichier Regex en XML .....................................................124
tDBInput ..........................................................................................................................127
Propriétés de tDBInput ...................................................................................................127
Scénario 1: Transformation de données de Bdd en XML ..............................................128
Scénario 2: Utilisation de StoreSQLQuery ....................................................................129
tMap .................................................................................................................................131
Propriétés de tMap .........................................................................................................131
Jeux de Scénarios ...........................................................................................................131
Scénario 1 : Mapping simple ......................................................................................131
Scénario 2 : Mapping avancé .....................................................................................137
Scénario 3 : Mapping de join en cascade ...................................................................143
tRowGenerator ................................................................................................................144
Propriétés de tRowGenerator .........................................................................................144
Scénario: Génération aléatoire de fichiers de test ..........................................................145
tAggregateRow ................................................................................................................147
Propriétés de tAggregateRow .........................................................................................147
Scénario: Aggrégation de valeurs et tri des données .....................................................148
tSortRow ..........................................................................................................................152
Propriétés de tSortRow ...................................................................................................152
Scénario: Tri de données ................................................................................................153
tUniqRow .........................................................................................................................155
Propriétés de tUniqRow .................................................................................................155
Scénario: Dédoublonnage d’entrées ...............................................................................155
tFileInputXML ................................................................................................................157
Propriétés de tFileInputXML .........................................................................................157
Scénario: Extraction d’adresses XML ............................................................................158
tCatcher, tWarn & tDie ..................................................................................................160
Propriétés de tCatcher ....................................................................................................161
Propriétés de tWarn ........................................................................................................161
Propriétés de tDie ...........................................................................................................162

Copyright © 2007 Talend Open Studio vii


Scénario1: warning & log sur un flux entrant ................................................................162
Scénario 2: log & kill un job ..........................................................................................164
tDBOutput .......................................................................................................................167
Propriétés de tDBOutput ................................................................................................167
Scénario: Affichage d’une sortie DB ............................................................................168
tFileInputMail .................................................................................................................171
Propriétés de tFileInputMail ...........................................................................................171
Scénario: Extraction des champs clé d’un email ............................................................171
tFileOutputLDIF .............................................................................................................174
Propriétés de tFileOutputLDIF .......................................................................................174
Scénario: Ecriture de données dans un fichier LDIF .....................................................175
tStatCatcher .....................................................................................................................177
Propriétés de tStatCatcher ..............................................................................................177
Scénario: Affichage des informations de log d’un job ..................................................177
tRunJob ............................................................................................................................180
Propriétés de RunJob ......................................................................................................180
Scénario: Exécution d’un job distant .............................................................................180

viii Talend Open Studio Copyright © 2007


A propos de ce manuel...
Historique des versions

A propos de ce manuel...

Ce manuel s’adresse aux utilisateurs et administrateurs de Talend Open Studio.

Historique des versions

Le tableau ci-dessous liste les modifications apportées au Guide Utilisateur.

Version Date Historique


v 0.5.1 10/25/06 Distribution de la version française de Talend Open Studio Guide
Utilisateur
v 0.5.5 1/21/07 Suite à la distribution de Talend Open Studio version 1.1.0, mise à
niveau des informations générale du guide utilisateur FR avec celles
du guide Eng.
Ajoût de composants et mise à jour de composants.
v 0.7 3/5/07 Mise à niveau des composants. Version 0.7 du Guide Utilisateur
anglais.

Remarques et Support

N’hésitez pas à nous faire part de vos remarques, suggestions ou requêtes concernant la documentation
ou le produit, et obtenez le support de notre équipe Talend, sur le forum Talend (en anglais):
http://talendforge.org/forum

Copyright © 2007 Talend Open Studio 1


A propos de ce manuel...
Remarques et Support

2 Talend Open Studio Copyright © 2007


—Chapter 1—

Présentation de Talend Open Studio

Accès à Talend Open Studio

Accédez à l’application Talend Open Studio dans son répertoire d’installation. Double-cliquez sur
l’exécutable Talend Open Studio pour lancer l’application.

Pour commencer, lisez et acceptez les termes de la licence GPL v2 pour continuer.

Copyright © 2007 Talend Open Studio 3


Présentation de Talend Open Studio
Accès à Talend Open Studio

Le formulaire d’enregistrement Talend Open Studio s’affiche. Remplissez votre adresse électronique
et votre lieu de résidence pour recevoir des informations sur Talend Open Studio. Cette étape est
facultative, cliquez sur Cancel si vous ne souhaitez pas la renseigner.

Cochez Enable HTTP Proxy parameters si votre situation le requiert et renseignez les informations
de proxy appropriée. Veillez à fournir votre adresse email si vous remplissez des informations de proxy.
Vous pouvez renseigner ou modifier ces informations d’enregistrement à tout moment, en cliquant sur
Window > Preference > Talend > Install/Update.
WARNING—Soyez assuré que toutes les informations personnelles que vous fournissez à Talend, ne
sont pas transmises à des tiers et ne sont pas utilisées à d’autres fins que celles de vous informer sur
Talend et les produits Talend.
Dans cette version, votre reférentiel est conservé sur une seule machine, par conséquent sur votre
système local, appelé Local Repository.
Aucun mot de passe (Password) n’est requis puisque Talend Open Studio n’est accessible que d’une
seule machine.

4 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Création d’un projet

Cliquez sur l’icone Refresh pour mettre à jour la liste des projets existants. Puis sélectionnez le nom
de votre projet et cliquez sur OK pour l’ouvrir.
Si vous avez déjà créé des projets avec une version précédente de Talend Open Studio, vous pouvez
les importer dans votre workspace à l’aide du bouton Import projects.
Voir également: Importation d’un projet, page 6
Si vous créez un projet pour la première fois, cliquez sur New project pour lancer l’assistant de création
de projet.
Voir également: Création d’un projet, page 5
Pour faciliter votre prise en main de Talend Open Studio, des exemples de job sont à votre disposition
via Import Demos. Le dossier de projets Demos est automatiquement installé dans votre workspace. Et
ce projet est accessible directement dans la fenêtre de connexion, dans le champ Projects.
La création d’un projet met automatiquement en place une arborescence de fichiers sur le serveur de
votre référentiel. Celle-ci correspond en tout point à l’arborescence de répertoires qui sera affiché dans
le Repository de votre projet Talend Open Studio.

Création d’un projet

Commencez par donner un Nom à votre nouveau projet. Ce champ est obligatoire pour poursuivre le
processus de création.

Copyright © 2007 Talend Open Studio 5


Présentation de Talend Open Studio
Importation d’un projet

Selon les caractères que vous saisissez et l’endroit où vous placez le curseur, un message contextuel
s’affiche en haut de l’assistant. Il vous informe de la nature des données attendues ou, le cas échéant,
des caractères interdits.
Note: Les chiffres ne sont pas autorisés en début de nom de projet. Le nom de projet n’est pas
sensible à la casse, par conséquent MonProjet et MONPROJET sont identiques.
Le nom technique, Technical name, est utilisé par l’application pour créer le nom du fichier projet. Il
correspond généralement au nom de projet saisi, mis en majuscule et concaténé à l’aide de tirets
soulignés si nécessaire.
Le seul langage de génération de code, Generation language, disponible actuellement est Perl. Java
est fourni à titre indicatif, pour l’instant, car il devrait faire partie d’une prochaine distribution de Talend.

Importation d’un projet

Sur la fenêtre de connexion, cliquez sur Import projects pour lancer l’assistant d’importation.

6 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Importation d’un projet

Cliquez sur Browse... pour sélectionner le répertoire Workspace contenant les projets à importer. Par
défaut, le workspace sélectionné est le workspace courant. Remontez l’arborescence vers le répertoire
Workspace de la version précédente et sélectionnez le.
Remarquez que la case Copy projects into workspace est cochée. Si vous souhaitez déplacer les projets
de leur emplacement initial vers le nouveau workspace, décochez la case. Mais nous vous
recommandons de conserver une version de sauvegarde.
Sélectionnez les projets à importer et cliquez sur Finish pour valider.
Sur la fenêtre de connexion, les projets importés apparaissent désormais dans la liste Projects proposée.

Copyright © 2007 Talend Open Studio 7


Présentation de Talend Open Studio
Configuration de Talend Open Studio

Sélectionnez le projet que vous souhaitez ouvrir, et cliquez OK pour lancer Talend Open Studio.

Configuration de Talend Open Studio

Talend Open Studio s’ouvre sur une fenêtre à zones multiples. Le reférentiel, Repository est une boîte
à outils rassemblant tous les éléments que vous créez et utilisez pour la modélisation et la conception

8 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Configuration de Talend Open Studio

de vos projets. Vous pouvez définir vos préférences de propriétés d’affichage pour les adapter à vos
besoins.
• Dans le menu Window de la fenêtre principale de Talend Open Studio, cliquez sur Preferences.
• Puis dans l’arborescence Preferences, cliquez sur Talend. Si le répertoire d’installation Perl ne
s’affiche pas par défaut, saisissez le chemin vers Perl.

• Vous pouvez également modifier le chemin d’accès vers les fichiers temporaires si vous le
souhaitez. Par défaut, le chemin est défini sur le répertoire d’installation TOS.
• Développez le noeud Talend, et cliquez sur Status pour définir les propriétés principales des
éléments du Repository.
• Le panneau Main des propriétés d’un élément du référentiel regroupe toutes les données
générales telles que: Nom, Purpose, Description, Author, Version et Status de l’élément
sélectionné. La plupart de ces champs sont en saisie libre, à l’exception du champ Status qui est
une liste déroulante.
• Alimentez la liste Status avec les valeurs appropriées à vos besoins d’entreprise. Notez que le
Code ne peut dépasser trois caractères et le Libellé est obligatoire.

Copyright © 2007 Talend Open Studio 9


Présentation de Talend Open Studio
Configuration de Talend Open Studio

Talend fait une différence entre deux types de statuts: Technical status et Documentation status
La liste de statuts techniques affiche les codes de classification des éléments qui sont utilisés lors de
l’excéution de jobs, de définition de métadonnées ou de routines.

La liste de statuts Documentation permet de classer les éléments du référentiel qui sont utilisés pour
documenter les models/jobs. Cette liste de statuts n’est disponible que pour les Business Models et la
Documentation.
Une fois la définition des Status terminée, cliquez sur OK pour enregistrer les paramètres.
Désormais la liste Status vous permet d’appliquer vos paramètres de classfication personnalisés à vos
éléments du référentiel.

10 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Description de l’interface utilisateur

Description de l’interface utilisateur

Talend Open Studio s’ouvre sur une fenêtre à zones multiples.

Talend Open Studio est composé des vues suivantes:


• Reférentiel (Repository)
• Espace de modélisation et conception des business models et job designs (Workspace)
• Propriétés (Properties), Execution (Run Job) et Logs
• Aperçu Schema (Outline) et Aperçu du code (Code Viewer)
Les différentes vues et leurs fonctionnalités associées sont décrites dans la suite de ce manuel.

Repository

Le référentiel, Repository, regroupe les éléments techniques disponibles pour la description des
Business models et la conception des Job designs. Le Repository vous donne accès à ces Business

Copyright © 2007 Talend Open Studio 11


Présentation de Talend Open Studio
Description de l’interface utilisateur

models et Job designs ainsi qu’à toutes les routines et documentations réutilisables pour leur
conception.
Ce référentiel centralise et conserve localement tous les éléments contenus dans un projet.

Le bouton de rafraîchissement vous permet de mettre à jour


l’arborescence avec les dernières modifications

Cliquez pour importer des projets créés avec des versions


précédentes de TOS.

Sauvegardez toutes vos données dans les divers dossiers


projets (Business Models et Job Designs) et de métadonnées
(Routines, snippets, DB/File connections, toute
Documentation significative...)

L’arborescence du Repository rassemble les éléments suivants :

Business Models
Tous les schémas des processus métier d’un projet sont regroupés sous le noeud Business
Models. Double-cliquez sur le nom du schéma pour l’ouvrir dans l’espace de modélisation
graphique, appelé workspace.
Voir également : Conception d’un Business Model, page 19

Job Designs
Le dossier Job designs rassemble tous les jobs du projet courant. Double-cliquez sur le nom
d’un graphique pour l’ouvrir dans l’espace de modélisation.
Voir également : Conception d’un Job Design, page 31

Code
La bibliothèque de Code rassemble les routines ainsi que les snippets (fonctionnalité à venir)
disponibles pour ce projet. Vous pouvez ainsi mutualiser ce code et le réutiliser dans divers
composant ou jobs.
Cliquez sur une entrée de l’arborescence pour ouvrir le fichier de code correspondant.
Voir également : Conception d’un Job Design, page 31

Routines
Une Routine est un morceau de code plus ou moins complexe généralement utilisé de
façon itérative dans un ou plusieurs jobs techniques.

12 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Description de l’interface utilisateur

Sous Routines dans le référentiel, un dossier System regroupe toutes les routines Talend
prédéfinies. Développez ce noeud, les fichiers de routine comprennent notamment Dates,
Misc et String.
Double-cliquez sur l’un des fichier, l’Editeur de routines s’ouvre dans un nouvel onglet.
Vous pouvez déplacer cet onglet dans le workspace en le glissant simplement à l’aide de la
souris vers l’emplacement souhaité.
Utilisez ces modèles de routines comme références pour en construire de nouvelles ou
copiez la routine qui vous convient vers le champ propriété de votre job pour l’utiliser.
Pour créer une nouvelle routine, cliquez-droit sur un entrée du répertoire Routines du
référentiel. Puis sélectionnez Create a routine dans le menu contextuel. L’éditeur de
routines s’ouvre sur un fichier Template contenant par défaut des morceaux de code tels
que:
sub printTalend {
print "Talend\n"
Remplacez ce modèle par votre propre morceau de code et refermez le fichier pour
enregistrer. La nouvelle routine apparaît dans le Repository sous la forme d’un nouveau
noeud sous Routines.
Vous avez également la possibilité d’organiser vos routines dans des dossiers.
Note: Le dossier System, ainsi que son contenu est en lecture seule.

Snippets
Les snippets sont des petits morceaux de code réutilisables (par duplication) dans les
composants et les jobs pour automatiser les transformations par exemple. Cette
fonctionnalité sera bientôt disponible.

Documentation
Le répertoire Documentation regroupe tout type de documents de tout format, tels que des
spécifications ou la description d’un format technique particulier d’un fichier. Double-cliquez
pour ouvrir le document dans l’application appropriée.
Voir également : Conception d’un Job Design, page 31

Metadata
Le répertoire Metadata centralise les fichiers que vous souhaitez réutiliser tels que les schémas
et les propriétés d’un ou plusieurs jobs.
Voir également : Définition des schémas de métadonnées, page 45

Recycle bin
Glissez déposez le ou les éléments inutiles ou obsolètes du Repository vers la corbeille ou
appuyez sur la touche del de votre clavier pour les supprimer.

Copyright © 2007 Talend Open Studio 13


Présentation de Talend Open Studio
Description de l’interface utilisateur

Note : les éléments supprimés sont conservés sur votre système, dans la corbeille, tant que vous
la videz pas. Cliquez-droit sur la corbeille et sélectionnez Empty Recycle bin pour supprimer
définitivement son contenu.

Espace de modélisation

Le Graphical workspace ou espace graphique de modélisation est l’éditeur de schéma des jobs de
Talend Open Studio qui vous permet de concevoir graphiquement les business models (processus
métier) mais également les jobs designs (processus techniques).

Les jobs design et business models ouverts dans l’éditeur graphique sont organisés dans un système
d’onglets.
Une Palette est rattachée à l’éditeur graphique pour vous permettre d’accéder rapidement à tous les
éléments graphiques (formes ou composants techniques) répondant à vos besoins.
A partir de la Palette, selon que vous travaillez sur un business model ou un job design, cliquez et
déposez les formes, branches, notes ou composants techniques dans l’éditeur graphique. Puis
définissez et formattez les éléments graphiques à l’aide des paramètres de propriétés de la vue
Properties en bas de la fenêtre.
Voir également:
• Conception d’un Business Model, page 19
• Conception d’un Job Design, page 31

Vues Properties, Run Job et Logs

Les onglets Properties, Run Job et Logs regroupent toutes les informations relatives aux éléments
graphiques sélectionnés dans l’espace de modélisation ou à l’exécution elle-même du job complet.

14 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Description de l’interface utilisateur

Voir également: Vues Modules et Scheduler, page 15

Properties
Ces paramètres de propriétés peuvent être de tout type. Le contenu de l’onglet Properties varie
selon l’élément graphique sélectionné.
Par exemple, lorsque vous ajoutez une forme à un schéma de business model, l’onglet
Properties met à votre disposition toute une gamme d’outils de formattage, vous permettant de
personnaliser et ainsi améliorer la lisibilité de votre business model.
Dans le cas où vous travaillez à la conception d’un job, l’onglet Properties vous permet de
configurer les paramètres de fonctionnement des composants et par conséquent de contrôler
chaque étape de votre implémentation technique.

Logs
Les Logs sont généralement utiles lors de l’éxécution des jobs techniques, car ils affichent les
éventuelles erreurs d’exécution.
Note: Mais, l’onglet Log a également une fonction informative, notamment pour
indiquer qu’un module Perl est en cours de fonctionnement par exemple.

Run Job
L’onglet Run Job, comme son nom le suggère, affiche l’exécution du job technique courant.
Cet onglet prend le role d’une console de log pour afficher le résultat d’une exécution.
Pour plus d’informations sur l’exécution d’un job, voir Exécution d’un job, page 90

Vues Modules et Scheduler

Les onglets Modules et Scheduler font partie du même groupe de vues que Properties, Logs et
Run Job. Les vues Modules et Scheduler n’ont pas d’impact ni ne sont influencés par les jobs
ouverts dans le workspace, que ces derniers soient actifs ou non.

Modules
L’utilisation de certains composants requiert l’installation de modules spécifiques Perl.
Consultez la vue Modules pour vérifier les modules présents ou manquants pour l’exécution
de vos jobs.
Si l’onglet Modules ne s’affiche pas dans votre workspace, cliquez sur le menu Window >
Show View... > Talend, puis sélectionnez Modules sous le noeud Talend.

Copyright © 2007 Talend Open Studio 15


Présentation de Talend Open Studio
Description de l’interface utilisateur

Cette vue indique quel module est nécessaire et/ou requis pour l’utilisation du composant
correspondant.
La colonne Status indique si les modules répertoriés sont ou non installés sur votre système. Le
triangle d’avertissement montre que le module est recommandé mais pas requis pour
l’utilisation de ce composant.
Par exemple, le module DBD::Oracle n’est requis que si vous utilisez tDBSQLRow avec une
base Oracle. De la même façon, DBD::Pg n’est requis que pour une utilisation de PostgreSQL.
Mais tous peuvent devenir nécessaires dans leur contexte d’utilisation respectif.
Le cercle rouge à croix blanche signifie que le module est indispensable à l’utilisation du
composant en regard.
Si la colonne Component n’est pas renseigné pour un module particulier, ce module est alors
requis pour l’utilisation générale de TOS.
Lors de la construction de votre job, if un composant requiert un module non installé, un
message d’erreur est généré et s’affiche dans l’onglet Problems.

Pour installer les modules Perl indiqués manquants, consultez le guide d’installation (en
anglais) sur http://talendforge.org/wiki/

16 Talend Open Studio Copyright © 2007


Présentation de Talend Open Studio
Description de l’interface utilisateur

Open Scheduler
Open Scheduler est un outil de planification d’exécution basé sur la commande crontab,
couramment utilisée sous Unix et systèmes d’exploitation similaires. Cette commande cron
peut également être installée sur Windows.
Open Scheduler génère des entrées compatibles cron vous permettant d’exécuter une tâche, par
exemple : lancer un job, à un échéance définie via le crontab.
Si l’onglet Scheduler n’apparaît pas dans votre workspace, cliquez sur le menu Window >
Show View... > Talend, puis sélectionnez Scheduler sous le noeud Talend.

Paramétrez l’heure et la date complète d’exécution de cette tâche.


Open Scheduler génère automatiquement la commande correspondante qui sera fournie au
programme crontab.

Vues Outline et Code

La zone Information se compose de deux onglets: Outline et Code Viewer, qui fournissent des
aperçus du diagramme affiché dans l’éditeur graphique (qu’il s’agisse d’un job design ou d’un
business model).

Copyright © 2007 Talend Open Studio 17


Présentation de Talend Open Studio
Description de l’interface utilisateur

Outline
L’onglet Outline offre un aperçu rapide du diagramme du business model ou du job design
ouvert dans l’éditeur. En cliquant sur l’icone d’arborescence, vous pouvez accéder aux variables
disponibles pour les composants sélectionnés. Tout comme l’éditeur ou toute autre zone, il est
très facile de changer la position de l’aperçu Outline et de la redimensionner selon vos besoins.
Cet aperçu sert à reperer les parties d’un diagramme affichées ou invisibles dans l’éditeur. Il
donne une vue globale de la représentation graphique du job.

La représentation graphique visible dans l’éditeur


est mise en évidence dans un rectangle bleu.
Cliquez sur la zone bleue du visionnage et
déplacez-la pour sélectionner une autre partie du
processus.
Remarquez que la vue dans l’éditeur se déplace de
la même manière.
L’aperçu Outline peut également afficher les
variables disponibles pour les composants utilisés
dans le diagramme. Développez le noeud d’un
composant pour afficher les variables appropriées
disponibles.
Pour passer d’un aperçu à l’autre, cliquez sur l’une
des icones situées en haut à droite de l’onglet.

Code viewer
L’onglet de l’aperçu de code Code viewer fournit
les lignes de code générées pour le composant
sélectionné dans l’éditeur. Ce code est généré en
arrière plan du job et comprend les éléments Start,
Body et End correspondant aux phases d’execution
de ce composant.
Note: cette vue ne concerne que le code produit dans un job design. En effet aucun code n’est
généré à partir des business models.
A l’aide de l’aperçu de code en couleur, vous pouvez distinguez les diverses parties du code d’un
composant sélectionné dans l’éditeur. Cet aperçu est une vue partielle de l’onglet principal
Code, situé en bas de l’éditeur graphique, qui lui, affiche le code généré pour l’ensemble du job.

18 Talend Open Studio Copyright © 2007


—Conception d’un Business Model—

Conception d’un Business Model

Talend Open Studio est l’outil optimal pour mettre en place une approche Top/down vous permettant
de garder le contrôle sur le processus métier de son niveau d’abstraction le plus élevé à l’étape
décisionnelle et même technique la plus pragmatique.
Ce chapître s’adresse aux reponsables métier, décisionnaires BI ou développeurs qui souhaitent
modéliser leurs besoins de gestion de flux de données à un niveau macro.

Objectifs

Un Business model est une vue non technique d’un besoin métier de gestion de flux de données.
Généralement, un business model intègre en premier lieu les systèmes stratégiques déjà mis en place et
opérationnels de votre entreprise. Puis vous ajoutez brique par brique vos besoins supplémentaires et
vous les reliez entre eux. Ces systèmes, connexions et autres besoins sont symbolisés dans Talend
Open Studio par de multiples formes et liens disponibles dans la Palette.
Toutes les formes et liens peuvent être décrits dans leur propriétés à l’aide des paramètres de
documentation et de formats que vous définissez dans le référentiel de metadonnées, ou ponctuellement
directement dans votre business model.
A partir de Talend Open Studio, vous disposez de nombreux outils vous permettant de:
• modéliser vos besoins métier
• créer des éléments dans le référentiel de metadonnées et les assigner à vos objets de Business
Model.
• définir les propriétés d’apparence de vos objets de Business Model.

Création ou ouverture d’un business model

Lancez Talend Open Studio suivant la procédure détaillée dans la section Accès à Talend Open Studio,
page 3.
Dans la fenêtre Talend Open Studio, cliquez sur Business Models dans l’onglet Repository pour
développer l’arborescence.

Copyright © 2007 Talend Open Studio 19


Conception d’un Business Model
Création ou ouverture d’un business model

Cliquez droit sur Business Models et sélectionnez l’option


Expand/Collapse, pour afficher tous les modèles existants,
s’il en existe déjà.

Ouverture d’un business model

Double-cliquez sur le nom du business model que vous


souhaitez ouvrir.
Le business model sélectionné s’ouvre dans l’éditeur de
modélisation, généralement placé à droite du référentiel.

Création d’un business model

Cliquez droit sur Business Models et sélectionnez Create


Business Model.
L’assistant de création vous guide dans les étapes de creation
d’un Business Model.
Sélectionnez le répertoire de destination où vous souhaitez conserver votre nouveau model.
Puis donnez un Nom a ce Business Model dans le champ Name. Le nom que vous associez au fichier
apparaît au niveau de l’onglet du Business Model, dans l’espace de modélisation.
Le Modeler, ou espace graphique de modélisation, s’ouvre sur un espace de conception vide.
Vous pouvez créer autant de business models que vous le souhaitez. Un système d’onglets en haut
de l’éditeur vous permet de naviguer facilement entre tous les processus ouverts.

20 Talend Open Studio Copyright © 2007


Conception d’un Business Model
Modélisation d’un business model

Le Modeler est composé des vues suivantes :


• L’éditeur graphique de Talend Open Studio
• Une Palette de formes et de connexions spécifiques à la modélisation métier
• Un onglet de propriétés présentant toutes les informations spécifiques sur tout ou partie du
diagramme.

Modélisation d’un business model

Si plusieurs onglets sont ouverts dans votre éditeur de modélisation, assurez-vous que la représentation
graphique affichée est correcte, en cliquant sur l’onglet approprié.

Copyright © 2007 Talend Open Studio 21


Conception d’un Business Model
Modélisation d’un business model

Note: En effet, la fenêtre Properties ainsi que les éléments des Menus affichent des
informations relative au modèle actif seulement.
Cliquez et déposez les éléments de la Palette et connectez-les à l’aide de liens. Améliorez l’aspect
visuel du diagramme à l’aide de l’outil Zoom in et out.
Cette Palette offre des représentations graphiques des objets constituant un business model.
Le terme objets couvre tous les systèmes stratégiques, les éléments intermédiaires de transformation, de
routage, les étapes décisionnelles, jusqu’au type de terminaux du flux de données en sortie. Chacun
tenant un rôle spécifique dans votre business model selon la description, la définition et les affectations
(assignment) que vous lui attribuez.

Tous les objets sont représentés par des formes dans la Palette et toutes ces formes
peuvent être incluses dans une représentation graphique du processus.
Note: Si les formes ne s’affichent pas dans la Palette, cliquez sur l’icone du
répertoire business pour dérouler la librairie de formes.

Cliquer & déposer des objets

Sélectionnez la forme correspondant à l’objet que vous souhaitez inclure dans votre
business model.
Double-cliquez dessus ou cliquez sur la forme dans la Palette et déposez la dans
l’espace de modélisation.
Alternativement, la barre d’accès rapide aux formes apparaît lorsque vous
conservez votre curseur immobile quelques instants sur l’espace de modélisation.

Par exemple, si votre business model inclut une étape de décision, sélectionnez la forme losange
dans la Palette.
Note: Passez le pointeur de votre souris au dessus de la barre d’accès rapide, pour faire
apparaître les bulles contextuels de chacune des formes.
Puis cliquez une fois dans l’espace de modélisation pour la faire apparaître graphiquement.

La forme déposée est entourée d’un cadre noir dont les points d’angle vous
permettent de la redimensionner selon vos besoins.
En outre, une zone de saisie bleue vous permet d’apposer un libellé sur la forme
en sélection. Donnez un nom parlant qui vous permettra ensuite d’identifier
rapidement le rôle de cette forme dans le processus.
Deux flèches opposées apparaissent sur cette forme, quis vous permettent de créer des connexions
vers d’autres formes. Vous pouvez ainsi rapidement définir une séquence et des dépendances entre
les éléments formant votre processus. Voir également: Connexions, page 23.

22 Talend Open Studio Copyright © 2007


Conception d’un Business Model
Modélisation d’un business model

Les formes disponibles comprennent :

Libellé Description
Decision Représente une condition if dans le flux de données.
Permet de prendre des mesures contextuelles.
Action L’action peut être de toute nature, notamment,
transformation, traduction ou format par exemple.
Terminal Tout type de terminal de sortie
Data Tout type de donnée, numérique ou alphanumérique.
Document Ajoute un objet document qui peut servir en entrée ou en
sortie pour fournir les données à traiter.
Input Ajoute un objet entrée permettant à l’utilisateur de saisir
ou de fournir manuellement les données à traiter.
List Répertorie les données extraites sous la forme d’une
liste. Cette liste peut être paramétrée pour ne contenir qe
les données d’une certaine nature.
Database Ajoute un objet base de données qui peut servir en entrée
ou en sortie du traitement des données.

Connexions

Une des phases essentielle de la conception d’un business model consiste à mettre en place les
relations entre les formes, source et cible.
Plusieurs solutions s’offrent à vous :

• Sélectionnez l’outil Relationship de la Palette. Puis dans l’éditeur


de modélisation, tirez un lien d’une forme vers l’autre pour dessiner la
connexion.
• Ou si vous n’avez pas encore placé la forme cible de la connexion, vous pouvez créer la
relation et la cible en une fois.
Simplement placez votre souris au dessus de la forme source pour faire apparaître les double flèches.
Faites glisser l’une des flèches vers une zone vide de l’espace de modélisation, et relachez la souris
pour afficher le menu contextuel.
Sélectionnez Create Relationship puis la forme appropriée pour constituer l’élément cible ainsi
que la relation :

Copyright © 2007 Talend Open Studio 23


Conception d’un Business Model
Modélisation d’un business model

Note: La direction de la flèche n’a pas beaucoup d’importance à ce stade, car aucun code
n’est généré et cette connexion représente donc essentiellement une relation simple
entre deux formes.

Vous pouvez aussi créer une connexion vers un


élément déjà placé dans le processus. Sélectionnez
Existing Element dans le menu contextuel, puis
sélectionnez dans la liste l’élément cible.
La relation s’établit automatiquement entre les
deux formes sélectionnées.
La nature de cette connexion peut être décrite à
l’aide d’élements du référentiel de metadonnées et
sa mise en format peut être définie dans l’onglet
Properties.
Lors de la création d’une connexion, une zone de
saisie vous permet d’ajouter un libellé à la
connexion que vous venez de créer. Choisissez un nom significatif afin de vous aider à identifier
rapidement le type de relation créée.
Note: Vous pouvez également ajouter des notes et des commentaires à votre processus pour
permettre une reprise du modèle par la suite.
Voir également: Commentaires et réarrangement d’un Business Model, page 25.

24 Talend Open Studio Copyright © 2007


Conception d’un Business Model
Modélisation d’un business model

Commentaires et réarrangement d’un Business Model

Les outils suivants de la Palette vous permettent de personnaliser votre business model:

Libellé Description
Select Sélectionnez et déplacez les formes et relations dans
l’espace de modélisation du Modeler.
Zoom Zoomer sur une partie de la représentation graphique
pour en voir le détail. Pour zoomer arrière, appuyez sur
la touche Maj et cliquez sur l’espace de modélisation.
Note/Text/Note Permet d’ajouter des commentaires, des notes afin de
attachment conserver toute information utile concernant tout ou
partie du processus.

Ajoût d’une note ou de texte libre


Pour ajouter une note, sélectionnez l’outil Note dans la Palette.
Alternativement cliquez droit sur la représentation graphique ou sur la forme que vous souhaitez
annoter et sélectionnez Add Note. Ou sélectionnez l’outil Note dans la barre d’accès rapide :
Une note de type Post-it apparaît sur l’espace de modélisation. Si la note est liée à un élément
particulier, un lien est automatiquement créé.
Saisissez votre commentaire dans la zone de saisie ou, si cette dernière ne s’affiche pas, saisissez
directement sur la note.

Si vous souhaitez relier votre note à une forme particulière de votre


processus, sélectionnez Note attachment dans la Palette puis glissez la
flèche noire vers une zone vide de l’éditeur. Relachez pour afficher le menu
contextuel du lien.
Vous pouvez également sélectionner la fonction Add Text pour saisir
librement du texte directement dans l’espace de modélisation. Vous pouvez
accéder à cette fonctionnalité dans le menu déroulant Note de la Palette ou
via le raccourci situé à côté de la fonction Add Note dans la barre d’accès rapide.

Réarrangement d’une vue métier


Vous pouvez adapter le look and feel de votre business model via le menu contextuel.

Copyright © 2007 Talend Open Studio 25


Conception d’un Business Model
Modélisation d’un business model

Placez votre curseur dans l’espace de modélisation,


cliquez droit pour afficher le menu, et sélectionnez
Arrange all. Les formes se déplacent
automatiquement pour une lisibilité optimale du
business model.
Vous pouvez également sélectionner manuellement
tout ou partie du processus.
Pour ce faire, cliquez droit n’importe où dans
l’éditeur, et choisissez Select dans le menu
contextuel.
Vous pouvez sélectionner :
• All : toutes les formes et connexions du
processus,
• All shapes : toutes les formes présentes dans
l’éditeur de modélisation,
• All connectors : toutes les connexions reliant les
formes.
A partir de ce menu, vous pouvez également zoomer avant et arrière sur une partie du modèle
et ainsi changer la vue affichée.

Propriétés

Les informations de propriétés sont affichées dans la vue Properties et correspondent à la sélection
en cours dans l’éditeur, le cas échéant. Les propriétés peuvent concerner l’ensemble du processus
ou seulement une partie du processus selon la sélection. Si rien n’est sélectionné dans l’éditeur, les
propriétés fournissent des informations générales concernant l’espace de modélisation lui-même.
L’onglet Properties comporte différents types d’informations concernant:
• Rulers and Grid (Règles et grille)
• Appearance (Format)
• Assignment (Affectation)

Vue Rulers & Grid


Pour afficher l’onglet Rulers & Grid dans l’éditeur graphique, sélectionnez l’objet Select dans
la Palette, puis cliquez sur une zone vide de l’espace de modélisation pour désélectionner toute
sélection courante.
Cliquez sur l’onglet Rulers & Grid pour accéder aux paramètre de configuration des règles et
de la grille.

26 Talend Open Studio Copyright © 2007


Conception d’un Business Model
Modélisation d’un business model

Cochez les cases pour afficher la Règle (Ruler), ou la grille (Grid) ou les deux.
Grid in front place la grille devant toutes les formes du processus. Définissez l’unité de la règle
en Centimeters (centimètres), inches (pouces) ou pixels. Vous pouvez également sélectionner
la couleur ainsi que le style des lignes de la grille ou restaurer les valeurs par défaut.

Vue Appearance
A partir de l’onglet Appearance (Formats), vous pouvez appliquer des couleurs de remplissage
et de bordures, changer l’apparence des formes et des liens afin de personnaliser votre business
model et le rendre plus lisible.
L’onglet Properties inclut les paramètres suivants :
• remplir la forme avec la couleur sélectionnée.

Copyright © 2007 Talend Open Studio 27


Conception d’un Business Model
Modélisation d’un business model

• colorer les bordures


• ajouter du texte
• ajouter un effet dégradé
• ajouter un effet ombré
Vous pouvez également déplacer et gérer les différentes formes utilisées dans la vue de votre
business model à l’aide des outils d’édition. Cliquez droit sur une des formes, pour faire
apparaître les onglets appropriés.

Vue Assignment
Le tableau des affectations affiche des informations détaillées sur les attributs du Répository
(référentiel) affectés à la forme ou à la connexion sélectionnée.
Pour afficher les informations d’affectation, sélectionnez une forme ou une connexion dans la
vue active.
Vous pouvez modifier certaines informations ou lier un commentaire. En outre, si vous mettez
à jour des données dans le référentiel, les informations d’affectation sont automatiquement mis
à jour.

Pour plus d’informations sur comment mettre en place des affectations, voir Affectation
d’éléments à un Business Model, page 29

28 Talend Open Studio Copyright © 2007


Conception d’un Business Model
Affectation d’éléments à un Business Model

Affectation d’éléments à un Business Model

La vue Assignment répertorie les éléments sélectionnés dans le Repository et qui ont été affectés à un
élément du Business Model.

Une simple affectation (assignment) vous permet de définir et


décrire, en d’autres termes, d’ajouter des métadonnées à votre
business model, en lui associant différents types d’informations.
Vous pouvez mentionner la nature des métadonnées affectées ou
traitées, facilitant ainsi la phase de développement technique qui
interviendra ensuite.
Pour affecter un élément, glissez et déposez l’élément du
Repository vers une des formes composant votre business model
courant.
Vous pouvez également utiliser le bouton Un/Assign button pour
effectuer cette opération d’affectation.
Le tableau d’affectation, Assignment, situé sous l’espace de
modélisation est automatiquement mis à jour à l’aide les données
d’affectation de l’objet en sélection.
Vous pouvez retirer une affectation à l’aide du bouton Un/Assign.
Les types d’éléments du référentiel que vous pouvez affecter sont
les suivants:

Eléments Description
Job designs Si la représentation graphique d’un job est
disponible, elle peut être réutilisée comme
métadonnée du business model actif.
Metadata Toute donnée descriptive conservée dans le
référentiel peut être affectée à un objet de la vue. Il
peut s’agir par exemple, des coordonnées de
connexion à une base de données.
Business Model Vous pouvez réutiliser comme métadonnées tout
business model conservé dans le référentiel de ce
projet.
Documentation Tout type et format de document. Il peut s’agir de
documentation technique, de spécifications en
format texte ou d’une simple description de vos
bases de données.
Routines Si vous avez développé des routines,
d’automatisation de tâches, par exemple, vous
pouvez les affecter à votre business model.

Pour plus d’informations concernant les éléments du Repository, voir également: Conception d’un Job
Design, page 31

Copyright © 2007 Talend Open Studio 29


Conception d’un Business Model
Modification d’un Business model

Modification d’un Business model

Suivez la procédure qui convient au type de modification que vous souhaitez effectuer :

Renommer un business model

Cliquez sur le libellé du business model courant dans le Repository pour afficher les Propriétés
principale correspondantes, dans l’onglet Main.
Apportez vos modifications dans le champ Name. Le libellé est automatiquement changé dans le
référentiel et apparaîtra dans l’onglet du processus au niveau de l’espace de modélisation la
prochaine fois que vous l’ouvrez.

Copier et coller un business model

Dans Repository > Business model, cliquez droit sur le libellé du business model que vous
souhaitez copier, et sélectionnez Copy dans le menu contextuel, ou utilisez le raccourci clavier
Ctrl+c.
Puis cliquez droit à l’endroit où coller le business model et sélectionnez Paste.

Déplacer un business model

Pour déplacer un business model d’un emplacement à un autre dans votre répertoire Business
models sélectionnez un business model dans l’arborescence Repository > Business Models.
Puis glissez-déposez le à son nouvel emplacement. Alternativement, cliquez droit sur le libellé du
business model et sélectionnez Move dans le menu contextuel.

Supprimer un business model

Cliquez droit sur le libellé du business model à supprimer, et sélectionnez Delete dans le menu
contextuel.
Alternativement, sélectionnez le business model dans l’arborescence du référentiel et simplement
glissez et déposez le dans la corbeille ( Recycle bin) du Repository .

Enregistrement d’un business model

Pour sauvegarder un business model, cliquez sur File > Save ou utilisez le raccourci clavier Ctrl+s. Le
modèle est sauvegardé sous le nom que vous lui avez donné au moment de sa création.
Un astérisque apparaît au niveau de l’onglet du nom de la vue métier dans l’éditeur graphique pour
indiquer que des modifications ont été apportées à la vue courante mais elles ne sont pas encore
enregistrées.

30 Talend Open Studio Copyright © 2007


—Conception d’un Job Design—

Conception d’un Job Design

Ce chapître s’adresse aux programmeurs et responsables Informatique qui souhaitent mettre en place les
aspects techniques d’un job basé (ou non) sur un business model.
Talend Open Studio vous aide à développer et mettre en application votre job d’extraction, de
transformation et de chargement de flux de données.

Objectifs

Un job est la couche d’exécution ou l’implémentation technique d’un business model. Il traduit les
besoins métier en code et se charge d’exécuter ce dernier. En d’autres termes, le job met en place votre
flux de données.
Le Job Design est la représentation graphique fonctionnelle de ce processus technique.
A partir de Talend Open Studio, vous pouvez:
• mettre en place les actions de votre job à l’aide d’une bibliothèque de composants techniques.
• changer les paramètres par défaut des composants ou créer de nouveaux composants ou famille
de composants qui correspondent au mieux à vos besoins.
• paramétrer les connexions et relations entre composants afin de définir la séquence et la nature
des actions.
• accéder au code généré du programme ou des composants pour le modifier ou le documenter.
• créer et ajouter des éléments au Repository (référentiel) à des fins de réutilisation et de partage
(avec d’autre projets ou d’autre processus ou à moyen terme avec d’autres utilisateurs).

Création ou Ouverture d’un job

Lancez Talend Open Studio suivant la procédure décrite dans la section Accès à Talend Open Studio,
page 3.
Dans la fenêtre Talend Open Studio, cliquez sur Job Designs pour développer l’arborescence des jobs.
Vous pouvez créer des répertoires via le menu contextuel afin de faciliter la gestion de vos jobs. Cliquez
droit sur le noeud Job Designs de l’arborescence du référentiel, et sélectionnez Create folder.
Renseignez le champ Nom et cliquez OK.

Copyright © 2007 Talend Open Studio 31


Conception d’un Job Design
Création ou Ouverture d’un job

Si vous avez déjà créé des jobs que vous souhaitez déplacer dans ce nouveau répertoire, simplement
glissez et déposez les dans le répertoire.

Ouverture d’un job

Double-cliquez sur le libéllé du job que vous souhaitez ouvrir.


Le Designer s’ouvre sur la dernière vue enregistrée du job.
Note: Vous pouvez ouvrir autant de jobs que vous souhaitez. Un
système d’onglets en haut de l’éditeur vous permet de naviguer
très facilement entre tous les processus ouverts.

Création d’un job

Cliquez droit sur Job Designs dans le référentiel et sélectionnez


Create job dans le menu contextuel. L’assistant de création vous
guide dans les étapes de définition des propriétés de votre nouveau
job.

32 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Conception d’un Job Design

Champs Description
Name Saisissez un nom pour le nouveau job. Un message d’erreur s’affiche si vous
saisissez des caractères interdits.
Purpose Saisissez toute information que vous jugerez utile concernant l’utilisation du
job.
Description Saisissez une description si nécessaire.
Author Ce champ est en lecture seule car il reprend par défaut le login utilisateur
courant.
Version La version indiquée est en lecture seule. Vous pouvez cependant incrémenter
manuellement la version à l’aide des boutons M et m.
Status Vous pouvez définir le statut du processus dans vos préférences TOS. Par
défaut aucun statut n’est défini. Pour les définir, cliquez sur le menu Window
> Preferences > Talend >Status.

Le Designer s’ouvre sur un onglet de modélisation vide, indiquant simplement le nom du nouveau
job.
Note: Vous pouvez créer autant de jobs que vous le souhaitez. Un système d’onglets en haut
de l’éditeur vous permet de naviguer facilement entre tous les jobs ouverts.
Le Designer est composé des vues suivantes:
• L’éditeur graphique Talend Open Studio
• Une Palette de composants et de connexions spécifique à la conception de job designs.
• Un onglet Properties présente toutes les informations spécifiques sur tout ou partie de la
représentation graphique du job.

Conception d’un Job Design

Si vous concevez un job pour la première fois dans Talend Open Studio, l’espace de modélisation
s’ouvre sur un éditeur vide.
Si vous ouvrez un job existant, l’éditeur graphique s’ouvre sur la dernière vue sauvegardée du job.

Cliquer & Déposer des composants

Pour commencer, cliquez sur un Component de la Palette. Puis cliquez à nouveau pour le déposer
dans l’espace de modélisation et ainsi l’ajouter à votre job design.
Si la Palette n’est pas visible, voir Afficher/Cacher la palette, page 34.

Copyright © 2007 Talend Open Studio 33


Conception d’un Job Design
Conception d’un Job Design

Plusieurs types d’icones d’information et d’avertissement peuvent s’afficher à côté du composant.


Placez le pointeur sur l’icone pour faire apparaître la bulle d’information. Ces icones s’affichent tant
que vous n’avez pas terminé de configurer correctement les propriétés de chacun des composants.
Voir également:
• Connexion des composants, page 36
• Avertissements et erreurs sur un composant, page 35
• Définition des propriétés d’un Job, page 39

Afficher/Cacher la palette

La Palette contient les éléments plus ou moins complexes fournis par défaut et rassemblés en
famille. Par défaut, la palette est cachée sur le côté droit de l’espace de modélisation (Designer).

Si vous souhaitez que la Palette soit visible en permanence, cliquez sur la flèche de gauche
dans le coin supérieur droit du designer.
Dans une utilisation avancée de Talend Open Studio, vous serez capable d’ajouter ou de
dupliquer et modifier les composants de cette palette.
Pour connaître les propriétés spécifiques de chacun des composants, voir Composants,
page 95.

Réorganiser les onglets d’un job

Vous pouvez déplacer tous les onglets de Talend Open Studio selon vos besoins.

34 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Conception d’un Job Design

Cliquez sur la bordure ou sur l’onglet, maintenez le bouton de la souris enfoncé pendant que vous
déplacez la fenêtre vers l’emplacement cible, puis relachez.
Cliquez sur la croix pour faire disparaître une fenêtre de la vue.
Pour restaurer une fenêtre fermée, cliquez sur Window > Show View > Talend. Puis cliquez sur le
nom de la fenêtre que vous souhaitez restaurer dans la vue courante de votre job ou consultez
Raccourcis clavier, page 93.

Avertissements et erreurs sur un composant

Lorsqu’un composant n’est pas correctement configuré ou si une connexion vers un autre
composant manque, une croix blanche sur fond rouge ou un signe attention apparaît.
Placez le pointeur de la souris sur le composant pour faire apparaitre les messages d’erreurs et
d’avertissement. Cette aide contextuelle vous informe sur les données manquantes ou le statut du
composant.

Copyright © 2007 Talend Open Studio 35


Conception d’un Job Design
Connexion des composants

Connexion des composants

Il existe divers types de connexions qui définissent soit la donnée à traiter soit l’enchainement logique
du job. Cliquez droit pour choisir le type de connexion qui convient au composant sélectionné. Une fois
que vous avez sélectionner un type de connexion, le pointeur de la souris change dans l’éditeur
graphique.

Lorsque vous glissez le pointeur du composant source vers le composant cible, une prise
électrique symbolise le branchement en cours et un signe interdit indique que le composant cible
n’est pas valide. Le cercle barré ne disparait qu’une fois le composant valide atteint.

Types de connexion

Seule les connexions autorisées pour le composant sélectionné dans l’éditeur graphique sont
proposées dans la liste du menu contextuel.

Les types de connexions diffèrent selon la nature du


composant et son rôle dans le job.
Les types de connexions disponibles varient également
si les données proviennent d’un ou plusieurs fichiers
d’entrée et si elles sont transmises vers un ou plusieurs
fichiers de sortie.
Sélectionnez un composant dans l’éditeur graphique et
cliquez droit pour afficher le menu contextuel. Tous les liens disponibles pour ce composant
particuliers apparaissent à l’écran.

Connexions de type Row


La connexion de type Row manipule les données elles-mêmes et leur transfert. Les liens de type
Row sont main, lookup ou output selon la nature du flux de données traité.

Main row
La connexion Row de type Main est la connexion la plus courante. Elle transmet les flux
de données d’un composant à l’autre, bouclant sur chacune des lignes pour lire ou extraire
les données selon la définition des propriétés du composant.

36 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Connexion des composants

Les données transférées à travers les connexions de type Row sont caractérisées par une
définition de schéma qui décrit la structure des données dans le fichier d’entrée.
Note: Vous ne pouvez pas connecter deux composants d’entrée à l’aide d’une
connexion de type main Row.
Note: Une seule connexion entrante de type Row est possible par composant. Dans
certains cas, la seconde connexion Row se transforme en connexion Lookup
automatiquement. Mais de manière générale, vous ne pourrez pas relier deux
fois le même composant cible avec une connexion main Row.

Pour en savoir plus sur les cas spécifiques de connexions Row multiples, voir Job à
entrées/sorties multiples, page 39.

Lookup row
La connexion de type Lookup est une connexion Row reliant un composant d’un flux
secondaire à un composant d’un flux principal. Cette connexion est uniquement disponible
dans le cas d’utilisation de flux multiples.

Copyright © 2007 Talend Open Studio 37


Conception d’un Job Design
Connexion des composants

Vous pouvez transformer une connexion de type Lookup en connexion de type main Row,
et inversement vous pouvez changer une connexion Lookup en Main Row. Pour ce faire,
cliquez droit et sélectionnez Set this connection as.
Voir également : Job à entrées/sorties multiples, page 39.

Output row
La connexion de type Output est une connexion Row, traitant donc de la donnée, et qui
relie un composant (généralement de transformation) à un composant de sortie. Les sorties
d’un job pouvant être multiples, une boîte de dialogue s’affiche pour vous demander de
nommer chacune des connexions.
Note: Le système se souvient également du nom des connexions de sortie
supprimées (ainsi que des propriétés définies). Dans la liste des connexions
outputs suggérées, vous retrouvez ainsi les connexions supprimées. Cette
fonctionnalité vous permet de ne pas avoir à resaisir toutes les informations
de propriétés.
Voir également : Job à entrées/sorties multiples, page 39.

Connexion de type Iterate


La connexion de type Iterate sert à boucler sur plusieurs fichiers d’un répertoire donné, sur les
lignes d’un fichier ou sur les entrées d’une base de données.
Un composant ne peut être la cible que d’un seul lien d’itération, Iterate. La connexion Iterate
est généralement utilisé sur le composant de début (Start) d’un flux principal ou secondaire.
Certains composants ne peuvent fonctionner avec d’autres composants qu’à l’aide d’un lien
d’itération, c’est le cas du composant tFilelist.
Note: A la différence des autres types de connexions, le nom du lien Iterate est en
lecture seule.

38 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des propriétés d’un Job

Connexions de type Trigger


Les connexions de déclenchement, trigger, aident à définir l’ordre de traitement.
La connexion utilisée met en place une relation de dépendance entre un processus principal et
ses sous-jobs. De cette manière, l’un ou l’autre des processus est déclenché en fonction de la
nature de cette connexion de déclenchement.
Il existe deux sortes de déclenchements: déclenchements chronologiques et déclenchements
contextuels.
Run Before et Run After sont des déclencheurs chronologiques, dans ce sens, où le composant
cible s’exécute avant ou après la fin de l’exécution du composant source. Ces deux connexions
déclencheurs ne peuvent être utilisées qu’avec des composants de début (Start).
Voir également : Définition du composant Start, page 44.
Run if, Run if OK et Run if Error sont trois déclencheurs contextuels. Ils peuvent être utilisés
avec n’importe quel composant source mais doivent avoir pour cible un composant Start de flux
principal ou secondaire.
• Run if OK ne déclenche l’exécution du composant cible qu’une fois, l’exécution du
composant source est terminée correctement. Il peut servir à déclencher un sous-job de
notification par exemple.
• Run if Error déclenche le sous-job ou composant cible lorsqu’une erreur a été
rencontrée dans le processus initial.
• Run if déclenche un sous-job ou composant si les conditions définies sont réunies.

Job à entrées/sorties multiples

Si vous avez besoin de manipuler des données de sources multiples et/ou vers des sorties multiples,
et que vous souhaitez tout integrer en un seul processus de transformation, il est préférable d’utiliser
le composant de mapping, tMap qui est conçu pour ce type de besoin.
Pour plus d’informations concernant le mapping et la transformation de donnée, voir Mapping de
données page 70.
Pour plus d’informations concernant le composant tMap et son utilisation, voir tMap page 131..

Définition des propriétés d’un Job

Les informations de l’onglet Properties fournissent des données détaillées sur le processus en sélection.
L’onglet Main rappelle notamment des informations relatives à l’auteur ainsi qu’au nom de processus
que vous avez défini lors de la création. Les autres onglets permettent de paramétrer plus précisément
le processus ou le composant sélectionné.

Copyright © 2007 Talend Open Studio 39


Conception d’un Job Design
Définition des propriétés d’un Job

Onglet Main

Cet onglet fournit des informations générales sur le composant sélectionné. Les valeurs de champs
sont fournies par le composant lui-même et seront utilisées dans le code généré du processus.Par
conséquent, tous ces champs sont en lecture seule, à l’exception de la case d’activation, Activate.

Champs Description
Unique Name Identifiant unique. affecté automatiquement par le
système afin d’être réutilisé dans le code du processus.
Version Version du composant, indépendante de la version du
produit dans son ensemble.
Family Famille des composants dont la fonction est proche. Ce
champ peut être modifié et de nouvelles familles de
composants peuvent ainsi être créées.
Activate Cochez cette case pour activer et désactiver le
composant sélectionné ainsi que ses processus liés.
tStatCatcher Cochez cette case pour autoriser le composant
tStatCatcher à aggréger les données de traitement tel
que défini dans les propriétés du composant
tStatCatcher, page 177

La case Activate active la fonction du composant ainsi que le sous-job auquel il appartient, afin que
du code soit généré lors de son exécution.
Si la case Activate n’est pas cochée, aucun code ne peut être généré pour ce composant mais
également pour toutes les branches liées directement à lui dans le processus.
Pour plus d’informations concernant l’activation et la désactivation, voir Activation/Désactivation
d’un job ou sous-job, page 84.

Onglet View

L’onglet View de la fenêtre Properties vous permet de changer le format d’affichage par défaut
d’un composant dans l’éditeur graphique.

40 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des propriétés d’un Job

Champ Description
Label format Libellé librequi s’affiche au niveau de l’éditeur graphique. Des variables
peuvent être utlisées pour retrouver et afficher des valeurs d’autres champs.
L’aide contextuelle de ce champ fournit généralement la variable
correspondante où la valeur du champ est stockée.
Hint format Bulle contextuelle apparaissant lors que vous passez la souris au dessus du
composant.
Show hint Cochez cette case, pour activer la fonctionnalité d’indication contextuelle.

Vous pouvez personnaliser les textes des Label et Hint à l’aide des balises HTML suivantes :
• Gras: <b> LibelléOuBulle </b>
• Italique: <i> LibelléOuBulle </i>
• Retour chariot: LibelléOuBulle <br> ContinueLigneSuiv
• Couleur: <Font color= ‘#RGBcolor’> LibelléOuBulle </Font>
Pour changer vos préférences de cet onglet View, cliquez sur
Window>Preferences>Talend>Designer.

Onglet Documentation

N’hésitez pas à ajouter tout commentaire ou morceau de texte que vous jugerez utile dans Comment.

Copyright © 2007 Talend Open Studio 41


Conception d’un Job Design
Définition des propriétés d’un Job

Le contenu de ce champ Comment sera formaté à l’aide du markup Pod et sera intégré au code
généré sous forme de commentaires.
Vous pouvez visualiser votre commentaire sous l’onglet Code de l’éditeur graphique.
Vous pouvez également ajouter le contenu de votre commentaire, ou documentation, dans l’aide
contextuelle d’un composant en utilisant la variable associée (_COMMENT_).
Pour une utilisation avancée de la fonction Documentations, il est préférable d’utiliser la partie
Documentation du référentiel, qui vous permet de conserver et réutiliser tout type de documentaiton.

Onglet Properties

Chaque composant possède des propriétés spécifiques qui rassemblées sous l’onglet Properties de
la fenêtre Properties.
Voir la section Composants, page 95 pour plus d’informations sur les champs à renseigner.
Pour tous les composants, vous pouvez centraliser les informations de propriétés dans des fichiers
de metadonnées, placés dans le répertoire Metadata du Repository. Sélectionnez Repository dans
le champ Property type et désignez le fichier de métadonnées comportant les paramètres
appropriés. Voir également : Définition des schémas de métadonnées, page 45.

42 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des propriétés d’un Job

Pour tous les composants en entrée, de type Input, vous pouvez définir le schéma décrivant les
données à traiter. Tout comme, les informations de propriétés, ce schéma peut être ponctuel ou local
(built-in) ou centralisé dans le Repository.

Paramétrage d’un schéma built-in


Un schéma est dit ponctuel, et donc défini comme built in dans ses paramètres de propriétés,
lorsqu’il ne sert généralement qu’une fois dans un job.
Sélectionnez Built-in dans la liste, puis cliquez sur Edit Schema Puis créez votre schéma en y
ajoutant des colonnes, et en décrivant leur contenu selon la structure du fichier d’entrée.

Vous pouvez récupérer le schéma ponctuel d’un fichier d’entrée pour alimenter le schéma de
sortie. Pour ce faire, cliquez sur le bouton Sync columns dans les propriétés du composant
Output.

Paramétrage d’un schéma repository


Vous pouvez éviter d’avoir à recréer les mêmes schémas et leur métadonnées en créant des
fichiers de métadonnées que vous pouvez centraliser dans le répertoire Metadata du référentiel
(Repository).
Pour rappeler un fichier de métadonnées dans votre processus courant, sélectionnez Repository
dans le champ Schema type et sélectionnez le fichier approprié dans la liste. Puis cliquez sur
Edit Schema pour vérifier que les données sont appropriées.

Copyright © 2007 Talend Open Studio 43


Conception d’un Job Design
Définition du composant Start

Vous pouvez apporter des modifications au schéma répository que vous utilisez pour votre
processus. Cependant, notez que le schéma devient alors ponctuel, et ses propriétés changent
automatiquement en built-in, et il sera rattaché au job courant.
Note: Vous ne pouvez pas modifier le schema distant à partir de cette fenêtre. Pour
apporter une modification, accédez au fichier de métadonnées à partir du
référentiel
Voir également : Définition des schémas de métadonnées, page 45

Définition du composant Start

Le composant Start est le composant de début de processus qui a pour rôle de déclencher ce dernier. Il
peut y avoir plusieurs composants Start dans un job design si plusieurs traitements de flux s’exécutent
en parallèle. Mais pour un même flux ainsi que les flux secondaires connectés, un seul composant peut
être Start.
Cliquez et déposez un composant dans l’éditeur graphique. Tous les composants susceptibles d’être un
composant Start, prennent une couleur d’arriere plan distinctive (vert). Vous pouvez remarquer que la
plupart des composants peuvent être des composants Start et débuter un processus.
Seuls certains composants ne peuvent être start, notamment le composant tMap, par exemple.

44 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Pour identifier quel composant d’un processus débutera le processus, distinguez d’abord le flux
principal des flux secondaires de votre job.
• Le flux principal doit connecter un composant à un autre, à l’aide d’une connexion de type Row
main. Le composant Start est alors automatiquement défini sur le premier composant du flux
principal (icone dont l’arrière plan est vert).
• Les flux secondaires sont connectés à l’aide de connexion de type Row lookup et non plus main.
Cette connexion Lookup tient lieu de référence, qui enrichit le flux principale de nouvelles
données.
Vous pouvez changer le statut du composant Start et par conséquent le flux principal et secondaire, en
modifiant une connexion Row Main en connexion Lookup, simplement via un simple clic droit sur la
connexion.
Voir également :
• Connexion des composants, page 36
• Activation/Désactivation d’un job ou sous-job, page 84

Définition des schémas de métadonnées

Talend Open Studio est une solution orientée métadonnées, et de ce fait, peut vous aider à garantir
l’homogéneité et la qualité des données traitées par votre job design.
Deux étapes principales vous permettent de mettre en place des schémas de métadonnées à partir de
fichiers ou de bases de données.
Dans un premier temps, configurez la connexion vers un fichier ou une base de données. Puis définissez
le schéma basé sur une ou plusieurs tables de la base de données ou sur les métadonnées du fichier.

Copyright © 2007 Talend Open Studio 45


Conception d’un Job Design
Définition des schémas de métadonnées

Cette procédure diffère légèrement selon le type de


connexion choisie. Retrouvez ci-dessous les procédures
respectives pour configurer et définir plusieurs schémas.
Notez que dans tous les cas, la connexion au fichier ou à la
base de données ne sert qu’à copier les métadonnées sur
lesquelles sera basé le schéma stocké dans votre référentiel
(par extension, votre système de fichiers).
Cliquez sur Metadata dans le Repository pour développer
l’arborescence.
Chacun des quatre noeuds regroupe différents types de
connexions à configurer.

Configurer une connexion DB

Pour créer un fichier de schémas basés sur une base de données, suivez la procédure en deux phases,
décrite ci-dessous.
Cliquez droit sur Db Connections puis sélectionnez Create connection dans le menu contextuel.

Etape 1: propriétés générales


Un assistant de connexion s’ouvre. Renseignez les propriétés générales du schéma, notamment
les champs Name et Description. Le champ Status est un champ personnalisé que vous pouvez
définir dans les Préférences (Window > Preferences > Talend).

46 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Cliquez Next une fois terminé, l’étape suivante vous permet de renseigner les données de
connexion à la BDD.

Etape 2: Connexion
Sélectionnez le type de Base de données, champ DB type, à laquelle vous souhaitez vous
connecter. Certains champs sont activés et d’autres grisés selon la nature de la connexion.

Copyright © 2007 Talend Open Studio 47


Conception d’un Job Design
Définition des schémas de métadonnées

Renseignez les informations requises pour la connexion et vérifiez votre connexion à l’aide de
la fonction Check.
Si nécessaire, remplissez les Propriétés de base données, dans la zone Database Properties.
C’est tout pour la première phase de configuration d’une connexion Base de données. Cliquez
sur Finish pour valider.
A présent, cliquez droit sur la connexion nouvellement créée, et sélectionnez Create schema
dans le menu contextuel.

48 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Etape 3: Chargement de la table


Un nouvel assistant s’ouvre sur la première étape. La liste des tables proposent toutes les tables
présentes sur la connexion définie précédemment. Il peut s’agir de n’importe quel type de BDD.
Sélectionnez une ou plusieurs tables dans la liste, pour les charger sur votre système de fichier
Référentiel. Vos schémas de Repository seront basés sur ces tables.
Si aucun schéma n’est visible dans la liste, cliquez sur Check connection, pour vérifier le statut
de la connexion à la base de données.
Cliquez Next une fois la sélection terminée. Sur la fenêtre suivante, quatre panneaux de
configuration vous permettent de définir les schémas à créer.

Etape 4: Définition du schéma


Par défaut, le schéma affiché dans le panneau Schema est basé sur la première tbale sélectionnée
dans la liste des schémas chargés (à gauche). Vous pouvez modifier le nom du schéma et selon
vos besoins, vous pouvez également personnaliser la structure du schéma.
En effet, la barre d’outils vous permet d’ajouter, d’enlever ou déplacer les colonnes de votre
schéma. Vous avez également la possibilité de charger un schéma xml ou exporter le schéma
courant en xml.
Pour restaurer un schéma basé sur l’une des tables chargées, sélectionnez le schéma de la table
dans la liste déroulante et cliquez sur Retrieve schema. Notez que le schéma ainsi chargé écrase
le schéma courant et ne retient aucune des modifications ponctuelles.
Cliquez sur Finish pour terminer la création des schémas de base de données. Tous les schémas
ainsi créés apparaissent sous le noeud de connexion de base de données.

Configurer un schéma File Delimited

Les métadonnées de type File Delimited peuvent être utilisées à la fois pour définir les propriétés
des composants InputFileDelimited mais également InputFileCSV car tous deux sont basés sur la
même structure.
WARNING—La création de schémas de fichier est similaire pour tous les types de fichiers: Delimited
(délimités), Positional (positionnels), Regex (Expr. Régulières), XML ou Ldif.
Dans le référentiel (Repository), cliquez droit sur File Delimited dans l’arborescence, et
sélectionnez Create file delimited dans le menu contextuel.

Copyright © 2007 Talend Open Studio 49


Conception d’un Job Design
Définition des schémas de métadonnées

A la différence de l’assistant de connexion DB, l’assistant de connexion Delimited File regroupe,


en une seule procédure à quatre étapes, les deux phases: connexion au fichier et la définition de
schéma.

Etape 1: Propriétés générales


Pour la première étape, renseignez les informations générales du schéma, notamment les
champs Name et Description.
Les champs génériques étant identiques pour tous les schémas, pour plus d’informations,
voir Configurer une connexion DB page 46.

Etape 2: Chargement du fichier


Renseignez l’adresse IP du serveur, où le fichier est conservé. Et cliquez sur Browse... pour
définir le chemin d’accès au fichier, dans le champ File path.

50 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Sélectionnez le Format du système d’exploitation dans lequel le fichier a été créé. Cette
information est utilisée pour pré-remplir les champs des étapes suivantes. Si la liste ne propose
pas le format approprié, ignorez ce champ.
Le File viewer donne un instantané du fichier chargé. Il vous permet de vérifier la cohérence
du fichier, la présence d’un en-tête et plus généralement la structure du fichier.
Cliquez sur Next pour passer à l’étape 3.

Etape 3: Définition du schéma


Dans cette vue, vous pouvez affiner la description de vos données et les paramètres de fichier.
Cliquez sur les rectangles verts pour des informations spécifiques.

Copyright © 2007 Talend Open Studio 51


Conception d’un Job Design
Définition des schémas de métadonnées

Paramétrez l’Encoding, ainsi que les séparateurs de champs et de lignes (Field separator et
Row separator) dans les paramètres Delimited File.

52 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

En fonction de votre type de fichier (csv ou delimited), vous pouvez également paramétrer des
caractères d’inclusion et d’exclusion (respectivement Text Enclosure et Escape character).
Si l’aperçu du fichier indique un message d’entête, vous pouvez exclure cet entête de l’analyse.
Indique le nombre de lignes d’entête à ignorer. En outre, si le fichier contient des information
de pied de page, indiquez que le nombre de lignes à ignorer.

Le champ Limit of rows vous permet de restreindre l’étendue du fichier qui fait l’analyse.
Dans le panneau File Preview, vous pouvez visualiser l’impact de votre paramétrage.
Cochez la case Set heading row as column names pour transformer la première ligne analysée
en libellés des colonnes du schéma. Notez que le nombre de lignes d’entête à ignorer (champ
Rows to skip) est incrémenté de 1.

Copyright © 2007 Talend Open Studio 53


Conception d’un Job Design
Définition des schémas de métadonnées

Cliquez sur Refresh dans le panneau d’aperçu, afin de les modifications de paramétrage
prennent effet.

Etape 4: Schéma final


La dernière étape affiche le schéma de fichier délimité généré. Vous pouvez personnaliser le
tableau.

54 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Si le fichier délimité sur lequel est basé le schéma est modifié, utilisez le bouton Guess pour
re-générer le schéma. Notez que si vous personnalisez le schéma, la fonctionnalité Guess ne
retiendra pas ces modifications.
Cliquez Finish pour valider. Le nouveau schéma apparaît dans l’arborescence du Repository,
sous le noeud de la connexion File Delimited appropriée.

Configurer un schéma File Positional

Dans le Repository, cliquez droit sur File Delimited dans l’arborescence, puis sélectionnez Create
file positional dans le menu contextuel.

Copyright © 2007 Talend Open Studio 55


Conception d’un Job Design
Définition des schémas de métadonnées

Procédez de la même manière que pour une connexion au fichier délimité. Cliquez droit sous
Metadata dans le Repository, puis sélectionnez Create file positional.

Etape 1 : Propriétés générales


Renseignez les informations générales du schéma tel que décrit dans la section Configurer une
connexion DB, page 46.

Etape 2 : Connexion et chargement du fichier


Puis définissez les paramètres de connexion au fichier positionnel, en renseignant les champs
Server IP address et File path.
Comme pour la création d’un schéma Delimited File, le format est demandé pour pré-remplir
des champs dans des étapes suivantes. Si le système d’exploitation de création du fichier n’est
pas proposé dans la liste, ignorez ce champ.

56 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

L’aperçu du fichier donne un instantané du fichier et vous permet de placer les marqueurs de
position.

Cliquez sur l’aperçu du fichier et définissez la position des marqueurs sur la règle. Une flèche
de couleur orange vous aide à affiner la position du marqueur.
Le séparateur de champ (Field Separator) répertorie une série de chiffres séparés par des
virgules. Ces chiffres correspondent aux nombres de caractères entre les marqueurs.
L’astérisque symbolise tous les caractères restants jusqu’a la fin de la ligne, à partir du marqueur
précédant.
La position de champ (Field Position) indique la position exacte du marqueur sur la règle. Vous
pouvez affiner la position du marqueur en saisissant la valeur exacte de position.

Copyright © 2007 Talend Open Studio 57


Conception d’un Job Design
Définition des schémas de métadonnées

Vous pouvez placer autant de marqueurs que nécessaire. Pour retirer un marqueur, faites le
glisser vers la règle.
Cliquez sur Next pour continuer.

Etape 3 : Affinage du schéma


L’étape suivante ouvre la fenêtre de paramétrage du schéma. De la même manière que pour le
schéma de fichier délimité, vous pouvez affiner la définition du schéma en précisant les
séparateurs de champs et de lignes (Field separator et Row separator), le nombre de ligne du
message d’entête, si besoin est.
A ce stade, l’aperçu affiche le fichier delimité par la position des marqueurs. Si la fichier
contient des libellés de colonn, cochez la case Set heading row as column names.

Etape 4 : Schéma final


L’étape 4 affiche le schéma généré final. Remarquez sur tout caractère du fichier pouvant être
mal interprété par la suite, par le programme, est remplacé par un caractère neutre. Par exemple,
les tirets soulignés remplacent les asterisques.
Vous pouvez ajouter un nom personnalisé (par défaut, metadata) et apporter des modifications
à l’aide de la barre d’outils.
Vous pouvez également restaurer ou mettre à jour le schéma du fichier positionnel en cliquant
sur Guess. Notez cependant que toute modification ou personnalisation du schéma n’est pas
conservée lorsque vous cliquez sur Guess.

Configurer un schéma File Regex

Les schémas de fichier Regex servent pour manipuler les fichiers dont les information sont
redondantes, tels que les fichiers log.

58 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Procédez de la même façon que pour les connexion de fichier délimité ou positionnel. Cliquez droit
sur Metadata dans le Repository et sélectionnez Create file regex.

Etape 1: Propriétés générales


Renseignez les informations générales du schéma tel que décrit dans la première étape de la
section Configurer une connexion DB, page 46.

Etape 2 : Chargement du fichier


Puis définissez les paramètres de connexion au fichier Regex, en renseignant les champs Server
IP address et File path.

Copyright © 2007 Talend Open Studio 59


Conception d’un Job Design
Définition des schémas de métadonnées

Comme pour la création d’un schéma Delimited File, le format est demandé pour pré-remplir
des champs des étapes suivantes. Si le système d’exploitation de création du fichier n’est pas
proposé dans la liste, ignorez ce champ.
L’aperçu de fichier fournit un instantané du fichier chargé Next pour définir la structure du
schéma.

Etape 3 : Définition du schéma


Cette étape ouvre la fenêtre de paramétrage du schéma. en précisant les séparateurs de champs
et de lignes (Field separator et Row separator), le nombre de ligne du message d’entête, ou
autre...
Dans le panneau de paramétrage des expressions régulières, Regular Expression settings,
saisissez l’expression régulière utilisée pour délimiter le fichier.

Puis cliquez sur Refresh preview pour que les modifications soient prises en compte. Le bouton
change d’apparence en Wait jusqu’a ce que l’aperçu soit rafraichi.

60 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Cliquez sur Next une fois le paramétrage terminé. La dernière étape génère un schéma de fichier
Regex.

Etape 4: Schéma final


Vous pouvez ajouter un nom personnalisé (par défaut, metadata) et apporter des modifications
à l’aide de la barre d’outils.
Vous pouvez également restaurer ou mettre à jour le schéma du fichier Regex en cliquant sur
Guess. Notez cependant que toute modification ou personnalisation du schéma n’est pas
conservée lorsque vous cliquez sur Guess.
Cliquez sur Finish pour valider. Le nouveau schéma apparaît dans le référentiel, sous le noeud
correspondant à la connexion Regex appropriée.

Configurer un schéma LDIF

Les fichiers LDIF sont des fichiers annuaires distincts par leurs attributs. Les métadonnées FileLDIF
centralisent ces fichiers de type Ldif ainsi que leur description d’attributs.

Procédez de la même façon que pour les connexions de fichier délimité ou positionnel. Cliquez droit
sur Metadata dans le Repository et sélectionnez Create file ldif.
Note: Assurez-vous que les modules Perl requis pour l’utilisation de cette fonctionnalité
sont bien installés. Pour plus d’infos, visitez http://talendforge.org/wiki/doku.php.

Copyright © 2007 Talend Open Studio 61


Conception d’un Job Design
Définition des schémas de métadonnées

Etape 1 : Propriétés générales


Pour commencer, renseignez les informations génériques telles que Schema Name et
Description.

Etape 2 : Chargement du fichier


Puis définissez les paramètres de connexion au fichier Ldif, en renseignant le champ File path.

Note: La fonctionnalité de connexion à un serveur distant n’est pas opérationnel pour


l’instant pour la récupération de fichier Ldif.
L’aperçu de fichier affiche les 50 premières lignes du fichier.

Etape 3: Définition de schéma


La liste des attributs du fichier de description s’affiche en haut de la fenêtre. Cochez les cases
correspondant aux attributs que vous souhaitez extraire du fichier de description Ldif.

62 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

Cliquez sur Refresh Preview pour prendre en compte dans l’aperçu du fichier, les attributs
sélectionnés.
Note: DN est volontairement omis de la liste des attributs proposés car cet attribut clé
est automatiquement inclus dans l’aperçu de fichier, par conséquent dans le
schéma généré.

Etape 4: Schéma final


Le schéma généré affiche les colonnes du fichier de description. Vous pouvez le personnaliser
selon vos besoins ou recharger le schéma oroginal à l’aide du bouton Guess.
Cliquez sur Finish. Le nouveau schéma s’affiche comme une nouvelle entrée de l’arborescence
du Repository sous le noeud de connexion Ldif approprié.

Configurer un schéma File XML

Centralisez vos requêtes XPath de fichier XML défini et regroupez les valeurs récupérées.

Copyright © 2007 Talend Open Studio 63


Conception d’un Job Design
Définition des schémas de métadonnées

Procédez de la même façon que pour les connexions de fichier délimité ou positionnel. Cliquez droit
sur Metadata dans le Repository et sélectionnez Create file XML.

Etape 1 : Propriétés générales


Pour commencer, renseignez les informations génériques telles que Schema Name et
Description.

Etape 2 : Chargement du fichier


Renseignez le chemin d’accès au fichier XML à charger, puis renseignez le champ Encoding
si le système l’a pas détecté automatiquement.
L’aperçu de fichier affiche la structure XML.

Cliquez sur Next pour continuer.

Etape 3: Définition du schéma


Renseignez les paramètres à prendre en compte pour la définition du schéma.

64 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition des schémas de métadonnées

La fenêtre de définition de schéma se compose de quatre vues:


• Source Schema: arborescence du fichier XML
• Target Schema: Information d’extraction et d’itération
• Preview: aperçu du schéma cible
• File viewer: fenêtre d’aperçu des données brutes

Copyright © 2007 Talend Open Studio 65


Conception d’un Job Design
Définition des schémas de métadonnées

Dans le champ XPath loop expression, saisissez l’expression de Xpath absolu du noeud qui fait
l’objet de l’itération. Vous pouvez saisir l’expression entière ou appuyez sur Ctrl+Space pour
utiliser la liste d’autocomplétion.

Alternativement, glissez et déposez le noeud sélectionné dans la structure source vers le champ
XPath du schéma cible.
Note: Le champ Xpath loop expression est obligatoire.
Vous pouvez également définir une limite de boucle dans le champ Loop limit, pour restreindre
le nombre de noeuds à itérer. Un lien de couleur verte est ainsi créé.
Définissez les champs à extraire en glissant et déposant les noeuds sélectionnés vers le champ
Relative or absolute XPath expression.

A l’aide du signe Plus, ajoutez des lignes à la table et sélectionnez autant de champs à extraire
que vous souhaitez. Appuyez sur Ctrl ou Maj pour la sélection multiple des noeuds qu’ils soient
groupés ou non. Puis glissez et déposez les sur la table.

66 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Création de requêtes à l’aide de SQLBuilder

Dans le champ Tag name, nommez les libellés de colonnes quis’afficheront dans la vue d’aperçu
du schéma (Schema preview).
Le lien de la sélection s’affiche de couleur bleue, tous les autres liens sont gris. Vous pouvez
imposer un ordre dans les champs à extraire à l’aide des flèches haut et bas.
Cliquez sur Refresh preview pour afficher l’aperçu du schéma. Les champs apparaissent ainsi
dans l’aperçu du schéma dans l’ordre imposé.

Etape 4 : Schéma final


Le schéma généré affiche les colonnes sélectionnées dans le fichier XML. Vous pouvez
personnaliser ce schéma selon vos besoins ou recharger le schéma d’origine à l’aide du bouton
Guess.
Cliquez sur Finish. le nouveau schéma s’affiche dans le Repository sous le noeud File XML
approprié.

Création de requêtes à l’aide de SQLBuilder

SQLBuilder vous permet de construire des requêtes SQL et de contrôler les modifications et écarts entre
tables de base de données et tables de métadonnées (stockées dans le référentiel ou intégrées en

Copyright © 2007 Talend Open Studio 67


Conception d’un Job Design
Création de requêtes à l’aide de SQLBuilder

“built-in” directement dans les propriétés du composant). Cet éditeur est disponible pour tDBInput et
tDBOutput.
Renseignez les informations de connexion DB et sélectonnez l’entrée de référentiel approprié si vous
l’avez défini.
Supprimez la déclaration de requête présentée par défaut dans le champ Query des propriétés du
composant. Puis ouvrez l’éditeur de requête SQL.

L’éditeur de requêtes SQL est composée de quatre vues :


• Database structure : arborescence de la base de données
• Query editor :Editeur de requêtes SQL
• Query results view : Résultats des requêtes de l’éditeur
• Schema view : Vue du schéma
La structure de la base de données indique les tables pour lesquelles un schéma a été défini, soit dans
une entrée du Repository, soit directement dans votre connexion des propriétés built-in de votre
composant.
La vue Schema view (bas droite de la fenêtre) fournit une description des colonnes.

68 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Création de requêtes à l’aide de SQLBuilder

Comparaison des structures de base de données

Dans la vue Database structure, s’affichent toutes les tables stockées dans l’entrée de métadonnées
DB Connection du Repository ou, dans le cas d’un schéma de type built-in, les tables de la base de
données elle-même.
Note: la connexion à la base de données, dans l’usage d’un schéma en built-in ou dans le cas
d’une opération de rafraichissement du schéma de repository, peut prendre du temps.
Cliquez sur l’icone de rafraîchissement pour afficher les différences entre les tables de métadonnées
d’une DB connection, et les tables de la base de données elle-même.

Les icones de la colonne Diff indique la présence de différence ou d’écarts entre les tables.
Développez l’arborescence d’une table pour identifier la colonne exacte présentant des différences.
Le surlignage rouge indique que le contenu de la colonne comporte des différences ou que cette
colonne n’est pas présente dans la table équivalente de la base de données elle-même.
Le surlignage bleu indique que la colonne est présente dans la base de données elle-même mais
qu’elle n’est pas présente dans la table de la métadonnée.

Construction d’une requête

L’éditeur de requête est un système multi-onglets vous permettant de construire autant de requêtes
que vous le souhaitez.
Pour construire une nouvelle requête, vous pouvez cliquer-droit sur la table ou sur une colonne de
la table et sélectionnez Generate Select Statement dans le menu contextuel. Ou cliquez sur l’onglet
vide présenté par défaut et saisissez votre requête.

Copyright © 2007 Talend Open Studio 69


Conception d’un Job Design
Mapping de données

Accédez à la liste d’auto-complétion par Ctrl+Espace.


L’outil d’aide à la complétion vous propose une liste de déclarations SQL courantes (Select, From,
And, Groupby...) ainsi les colonnes de la table qui peuvent faire l’objet d’une requête.

La bulle informative affiche le détail de l’objet sélectionné, par exemple, le chemin d’accès complet
à la table ou section de table. Une fois que votre requête est terminée, exécutez la à l’aide du bouton
Execute symbolisé par un homme qui court.
La barre d’outils de l’éditeur de requête vous permet d’accéder rapidement aux commandes usuelles
telles que : exécuter (execute), ouvrir (open), enregistrer (save) et supprimer (clear).
Dans la vue de résultats de la requête, s’affichent les résultats de la requête courante.
La barre d’état en bas de la fenêtre de l’éditeur fournit des informations concernant les temps
d’exécution et le nombre de lignes récupérées.

Mapping de données

Pour gérer des flux multiples en entrée et/ou en sortie, ainsi que les transformations et redirection de
données, il est recommandé d’utiliser le composant tMap. La section suivante présente les principes
d’usage de ce composant, pour d’autres informations ou use cases, voir tMap page 131.

70 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

Présentation du fonctionnement tMap

tMap permet de réaliser les opérations suivantes :


• multiplexage et démultiplexage des données
• transformation des données sur tout type de champs
• concaténation et inversion de champs
• filtrage de champs à l’aide de filtres
• gestion des rejets de données
Etant donné que toutes ces opérations de transformation et/ou routage sont réalisées par le tMap, ce
composant ne peut être ni un composant Start ni un composant End dans un Job Design.

tMap utilise les connexions entrantes pour préremplir les schéma d’entrée dans le Mapper. Par
conséquent, vous ne pouvez pas créer directement dans le Mapper, de nouveaux schémas d’entrée.
Par contre, il vous faut mettre en place autant de connexion de type Row entrantes que nécessaire,
pour que leur schéma s’affiche dans le Mapper.
De la même façon, créez autant de connexions de sortie que nécessaire dans l’éditeur graphique. LE
Mapper vous permet de définir le type de donnée par sortie via un outil graphique de mapping.
Note: Il ne peut y avoir une seule connexion entrante de type Main row. Toute connexion
entrante supplémentaire devient automatiquement une connexion Lookup. Voir
également: Connexions de type Row, page 36
Les connexions Lookup sont des connexions entrantes secondaires (ou de référence). Ces données
de référence peuvent dépendre directement ou indirectement du flux principal. Cette relation de
dépendance se traduit graphiquement par un Join et la création de clés d’expression.
Bien que le mapper requiert que les connexions soient mises en place pour définir les flux d’entrée
et de sortie (respectivement Input et Output), vous devez également implémenter un mapping pour

Copyright © 2007 Talend Open Studio 71


Conception d’un Job Design
Mapping de données

que la fonction d’aperçu de l’éditeur de mapping soit disponible dans le panneau Properties de
l’espace de modélisation.

Double-cliquez sur l’icone tMap dans l’éditeur graphique ou cliquez sur le bouton en regard du
champ Map editor dans l’onglet Properties. L’éditeur de mapping s’ouvre dans une nouvelle fenêtre.

Mapper

tMap est un composant dit avancé qui requiert plus d’informations de propriétés que les autres
composant. Par conséquent le Mapper est l’outil le mieux adapté pour définir tous les paramètres
nécessaires au mapping, à la transformation et l’aiguillage des données dans votre processus, par
l’intermédiaire de son interface graphique conviviale.

72 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

Vous pouvez réduire et restaurer la fenêtre de toutes les tables contenues dans l’éditeur de mapping,
à l’aide des boutons dans coin supérieur gauche de chacune des fenêtres.

Copyright © 2007 Talend Open Studio 73


Conception d’un Job Design
Mapping de données

Le Mapper est composé des panneaux suivants :


• La zone Input sur le coté gauche de l’éditeur. Les tableaux Input offrent une représentation
structurée (schémas) de tous les flux entrants (main et lookup). Les données sont regroupées
dans plusieurs colonnes des schémas Input. Notez que le nom de la table reflète le nom du
lien Main ou Lookup dans l’espace de modélisation graphique du job.
• La zone Variable est au centre de l’éditeur. Ce tableau de variable permet de centraliser des
informations redondantes et de réaliser les transformations.
• La zone Output est située à droite de la fenêtre. Les tableaux Output permettent d’aiguiller
les données et les champs provenant des schémas Input et des variables vers les schémas de
sortie Output.
• Les deux panneaux situés en bas de la fenêtre sont les descriptions des schémas d’entrée et
de sortie. L’onglet Schema editor détaille les schémas des tables Input et Output
sélectionnés.
• L’onglet Expression editor est l’outil de rédaction des clés d’expression des schémas
Input/Output, des variables ou des conditions de filtre.
Le nom des schémas Input/Output dans l’éditeur de mapping reflète le nom des connexions
entrantes et sortantes du composant tMap.

Paramètres Input
L’ordre des tables (ou schémas) Input est essentiel.
La première table reflète la connexion du flux principal (Main
Row) et pour cette raison est traitée en priorité dans le
composant tmap.
Par conséquent vous ne pouvez pas déplacer ce schéma vers
un niveau inférieur, sans risquer de perdre les éventuelles
relations de dépendance (Join) que vous avez créées.
Vous pouvez utiliser les flèches haut et bas pour intervertir des
tables secondaires (provenant d’une connexion Lookup),
mais vérifiez qu’elles ne sont pas liées par un lien Join. Si elle
le sont, veillez à ce que le lien Join ne soit pas perdu.
Voir également: Lier des tables input, page 75.

Renseigner les tables


Pour renseigner les tables Input définissez d’abord les
schémas de tous les composants d’entrée connectés au
composant tMap.
Le contenu de la connexion main Row entrante, est reproduit
dans la première table de la zone Input du Mapper.

74 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

Le contenu des connexions secondaires (Lookup) est reproduit dans les autres tables. Si
vous n’avez pas encore défini de schéma pour un composant d’entrée, la table
correspondante du Mapper est vide.
Le champ Clé (Key) est également repris du schéma défini dans les propriétés du composant
Input.
Vous pouvez réutiliser les données stockées dans la zone Variables ou utiliser les variables
globales ou contextuelles. Appuyez sur Ctrl+Space pour accéder à la liste complète des
variables combinant variables de contexte et variables globales. La liste de variables
proposée varie selon le contexte et s’accroit au fur et à mesure des nouvelles créations.
Seules les variables valides pour le mapping en cours, sont affichées dans la liste
d’auto-complétion.

Une fenêtre de métadonnées est annexée à la liste de semi-complétion des variables. Elle
fournit des informations concernant la colonne sélectionnée.
Voir également: Mapping de variables, page 77

Lier des tables input


Etant donné que des données Main et Lookup (provenant respectivement d’un flux principal
et d’un flux secondaire) peuvent être liés à l’aide des clés d’expression (expression keys),
l’ordre des tables a de l’importance.
En effet, un lien Join vous permet de sélectionner des données d’une table input via une
autre table input.
Glissez et déposez le nom de colonne d’une table vers sa table subordonnée, afin de créer
un Join entre les deux tables. Vous pouvez ainsi appeler des données à partir d’entrées
multiples.
Vous pouvez créer des Joins directs entre la table principale et les tables secondaires. Mais
vous pouvez également créer des Joins indirects à partir d’une table principale vers une
table secondaire, elle-même reliée à une autre table secondaire, afin d’accéder aux données
de cette seconde table.

Copyright © 2007 Talend Open Studio 75


Conception d’un Job Design
Mapping de données

La relation Join se traduit graphiquement par un lien violet.


Note: Vous ne pouvez pas créer un Join à partir d’une table subordonnée vers une
table de niveau supérieur.
Le champ Expression key est renseigné par glisser-déposer des données en Join. Ce champ
est modifiable dans la table de la zone Input, ou à partir de la vue Schema.
Le nom des colonnes n’est par contre modifiable qu’à partir du panneau Schema,
correspondant à la table Input sélectionnée.
Lors de votre glisser-déposer vers la colonne Expr.key, vous avez la possibilité soit d’insérer
les données sélectionnées dans une nouvelle entrée ou de remplacer une entrée existante, le
cas échéant, ou encore de concaténer une selection multiple dans une seule cellule.

Pour plus d’informations concernant les types de


glisser-déposer possibles, voir Paramètres Output, page 79.
Les icones dans le coin supérieur droit des tables Input vous
permettent de réduire ou restaurer la taille des tables dans la
zone Input.
Notez que même si vous reduisez la taille d’une table dans
la zone Input, les Joins éventuels restent visibles.
La création d’un Join assigne automatiquement une clé au
niveau du nom de champ de la table reliée.
Lorsque vous supprimez un lien Join entre deux tables, une boite de dialogue vous demande
de confirmer la suppression de la clé du champ cible du lien Join.
WARNING—Si vous décidez de conserver la clé sur le champ cible, sans que le champ Expr. Key soit
renseigné, sachez que l’exécution du code peut provoquer des erreurs.
La clé (Key) est indiquée sur le schéma Input au niveau de la table ou au niveau du panneau
Schema, qui vous permet également de décocher la case Key pour la désactiver.

Voir également: Schema Editor, page 82

Joins Inner
Le join Inner es un Join standard sur une table définie comme table d’Inner Join. Ce Join
se distingue des autres Joins par la façon dont le rejet est effectué. Si les données de la table

76 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

définie en tant que table d’Inner Join ne peuvent être reprises, en d’autres termes, le Join
Inner ne peut être établi, quelle qu’en soit la raison, dans ce cas, les données demandées sont
rejetées vers la table de sortie définie comme table de rejet du Join (Join Reject).
En pratique, créez un Join entre la table d’entrée du flux principal (Main) et une table
secondaire (Lookup) puis cochez la case Inner Join, pour définir cette table lookup comme
table d’Inner Join.

Note: Assurez-vous que la table d’Inner Joint (comme toute autre table Join)
contient un champ Key défini. Dans le cas contraire, des erreurs d’exécution
peuvent se produire.
Dans la zone Output, cliquez sur le bouton Inner Join Reject, pour définir la sortie de rejet
d’Inner Join.
Note: Une table de Join Inner doit toujours être couplée à une table Inner Join
Reject.

Voir également : Rejets Inner Join, page 81

Retirer des entrées de la table Input


Pour enlever des entrées Input, cliquez sur la croix de couleur rouge dans l’éditeur Schema
de la table sélectionnée. Appuyez sur Ctrl ou Maj pour réaliser une sélection multiple de
champs/colonnes à retirer de la table.
Note: Vous pouvez enlever des entrées Input d’un schéma d’entrée dans le Mapper,
cependant cette suppression est également effectuée dans la définition du
schéma au niveau des propriétés du composant en entrée.

Mapping de variables
La table Variables regroupe toutes les variables de mapping, qui peuvent être utilisées à
différents endroits du mapper.

Copyright © 2007 Talend Open Studio 77


Conception d’un Job Design
Mapping de données

Vous pouvez également utiliser le champ Expression de la table Var pour réaliser les
transformations, en y saisissant des commandes Perl.
Les variables vous permettent de gagner du temps et vous évitent d’avoir à ressaisir plusieurs
fois les mêmes données.

Il existe plusieurs possibilités pour créer des variables :


• Saisissez librement vos variables en Perl. Saisissez les chaines de caractères entre
guillemets simples ou concaténez plusieurs fonctions à l’aide de l’opérateur Perl
approprié.
• Ajoutez de nouvelles lignes à la table à l’aide du bouton plus et retirez des lignes à l’aide
du bouton moins; Puis appuyez sur Ctrl+Space to retrieve existing global and context
variables.
• Glissez et déposez une ou plusieurs entrées Input dans la table Var.

Sélectionnez une entrée dans la zone Input ou appuyez sur la touche Maj, pour effectuer une
sélection multiple.
Appuyez sur la touche Ctrl pour sélectionner des entrées dispersées dans une table ou pour
sélectionner des entrées de diverses tables. Lorsque vous sélectionnez plusieurs entrées, la
première sélection peut prendre une couleur grisée.
Maintenez la touche Ctrl enfoncée pour glisser-déposer toutes les entrées en une fois. Une bulle
d’aide contextuelle vous indique le nombre d’entrées sélectionnées.
Puis déposez la sélection vers la table Var. Plusieurs types de glisser-déposer sont possibles,
notamment:

78 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

Comment faire pour... Actions associées


Insérer toutes les entrées sélectionnées Faites simplement un glisser-déposer vers la table Var.
comme variables séparées. Des flèches latérales vous indiquent où la nouvelle
entrée Var peut être insérée. Chacune des Input est
insérée dans une cellule séparée.
Concaténer toutes les entrées Glissez-déposez vers l’entrée Var à concaténer, elle se
sélectionnées avec une entrée Var met alors en surbrillance. Toutes les entrées sont
existante. concaténées dans une seule cellule. Ajoutez les
opérateurs requis à l’aide des signes opérateurs Perl
approprié. Le point permet la concaténation.
Ecraser une entrée Var par les entrées Glissez-déposez vers l’entrée Var appropriée qui se
Input sélectionnées, et les concaténer. met alors en surbrillance. Puis appuyez sur Ctrl et
relâchez. Toutes les entrées sélectionnées sont
concaténées et écrasent la variable sélectionnée.
Concaténer les entrées Input Glissez-déposez vers des Var existantes puis appuyez
sélectionnées, avec plusieurs entrées Var sur Maj. Les premières entrées sont concaténées avec
mises en surbrillance. Créer de nouvelles les entrées Var en surbrillance, et si nécessaire, de
lignes en cas de besoin. nouvelles lignes sont créées pour contenir les entrées
restantes.

Accéder aux variables globales et contextuelles


Appuyez sur Ctrl+Space pour accéder à la liste de semi-complétion des variables globales
et de contexte.
Une fenêtre de métadonnées est annexée à la liste de semi-complétion des variables. Elle
fournit des informations concernant la colonne sélectionnée.

Supprimer des variables


Pour retirer une entrée Var sélectionnée, cliquez sur la croix rouge. La ligne entière est
supprimée ainsi que tous les liens avec des tables Input ou Output.
Utilisez les touches Ctrl ou Maj pour effectuer une selection multiple, puis cliquez sur la
croix rouge pour supprimer l’ensemble des lignes sélectionnées.

Paramètres Output
Dans l’espace de modélisation de Talend Open Studio, la création d’une connexion Row à
partir du composant tMap vers des composants en sortie, a pour effet d’ajouter les schémas
Output correspondants dans la zone Output du Mapper.
Vous pouvez également ajouter un schéma Output, dans votre Mapper, à l’aide du signe plus de
la barre d’outils de la zone Output.
A la différence de la zone Input, l’ordre des tables de schémas Output n’a pas une grande
importance, car il n’existe aucune relation de subordination (Join) entre les sorties.
Une fois que vous avez créé toutes les connexions de sortie, et de ce fait, toutes les tables Output,
vous pouvez sélectionner et organiser les données de ces sorties.

Copyright © 2007 Talend Open Studio 79


Conception d’un Job Design
Mapping de données

Glissez-déposez une ou plusieurs entrées à partir de la zone Input directement vers la table
Output appropriée.
Appuyez sur Ctrl ou Maj pour une sélection multiple.
Ou vous pouvez utiliser des expressions de la zone Var par glisser-déposer dans la table Output
avec les données réutilisables appropriées.
Notez que si vous apportez des modifications à la colonne Input de l’éditeur Schema, une boîte
de dialogue vous demande de confirmer la propagation des modifications sur toutes les entrées
Input/Variables/Ouput concernées.

Action Résultat
Glisser-déposer vers des expressions Concatène l’expression sélectionnée, vers des
existantes expressions existantes.
Glisser-déposer vers une ligne Insère une ou plusieurs nouvelle entrée en début ou en
d’insertion fin de table ou entre deux lignes existantes.
Glisser-déposer + Ctrl Replaces highlighted expression with selected
expression.
Glisser-déposer + Maj Ajoute les champs sélectionnés à toutes les
expressions en surbrillance. Insère de nouvelles lignes
si nécessaire.
Glisser-déposer + Ctrl + Maj Remplace toutes les expressions en surbrillance par les
champs sélectionnés. Insère de nouvelles lignes si
nécessaire.

Vous pouvez ajouter des filtres et un rejet pour personnaliser vos sorties.

Filtres
Les conditions de filtre vous permettent de sélectionner les champs et les envoyer vers les
sorties appropriées.
Cliquez sur le bouton plus pour ajouter une ligne de filtre.

Vous pouvez saisir librement vos conditions de filtre à l’aide d’opérateurs et de fonctions
Perl.
Glissez-déposez des expressions d’une zone Input ou d’une zone Var vers l’entrée de Filtre
de la table Output appropriée.

80 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

Un lien graphique de couleur orange apparaît. Ajoutez l’opérateur Perl nécessaire pour
finaliser votre formule de filtre.
Vous pouvez créer plusieurs filtres sur différentes lignes. L’opérateur AND est la
conjonction logique de toutes les filtres formulées.

Rejets
L’option Reject définit la nature d’une table Output particulière.
Cette table de rejet rassemble toutes les données qui ne satisfont pas un ou plusieurs des
filtres définis dans les tables Output régulières. Notez que par table régulière sont désignées
toutes les tables qui ne sont pas des tables de rejet.
Ainsi les données rejetées des tables de sortie régulières sont regroupées dans une ou
plusieurs tables dédiées, vous permettant par conséquent d’identifier les erreurs ou les cas
imprévus.
Le principe de rejet (Reject) concatène tous les filtres des tables non-rejet et les définit
comme formulation ELSE.
Créez une table dédiée et cochez la case Reject pour la définir comme contrepartie Else des
tables régulières.

Vous pouvez définir plusieurs tables Reject, afin d’affiner les sorties multiples. Pour
différencier les variantes de rejets ajouter des lignes de filtre en cliquant sur le point
d’interrogation. Le signe plus ajoute un noveau filtre, le signe moins en retire.
Une fois qu’une table est définie comme table de rejet, le processus de vérification des
données, commencera par les tables régulières avant de prendre en considération les filtres
possibles des tables de rejet.
Les données ne sont pas exclusivement traitées vers une seule sortie. Même si une donnée
satisfait le filtre d’une sortie et qu’elle est donc routée vers elle, elle est également vérifiée
contre les autres filtres et peut également être routée vers d’autres sorties.

Rejets Inner Join


L’Inner Join est un Join Lookup (de table secondaire). La table de rejet Inner Join un type
particulier de table de rejet de sortie. Elle regroupe les données rejetées d’une table de flux
principal après qu’un Inner Join n’a pas pu être établi.

Copyright © 2007 Talend Open Studio 81


Conception d’un Job Design
Mapping de données

Pour configurer un flux de sortie (Output) en conteneur des données de rejet d’un Inner Join,
cliquez déposez un nouveau composant Output dans votre job design. Connectez le tMap à
ce nouveau composant. Dans le Mapper, ce nouveau flux de sortie apparaît dans la zone
Output. Cliquez sur le bouton Join Reject pour définir cette table comme table de rejet Inner
Join.

Retirer des entrées de la table Output


Pour retirer des entrées d’une table Output, cliquez sur le signe moins dans l’éditeur de
Schema de la table sélectionnée.

Expression editor
Toutes les formulations d’expressions (Input, Var ou Output) et de filtres peuvent être
visualisées et modifiées à partir de l’éditeur d’expression. Cet éditeur fournit le confort d’une
fenêtre dédiée pour écrire des fonctions ou des commandes de transformation.
Sélectionnez l’expression à modifier. Cliquez sur l’onglet Expression editor.

Saisissez le code Perl approprié pour l’opération à effectuer. La colonne Expression de la table
correspondante est automatiquement mise à jour.
Note: Les fonctions et opérateurs Perl sont décrits en détail dans la documentation Perl
installée en même temps que les fichiers ActivPerl.

Schema Editor
L’éditeur de schémas fournit les informations concernant les champs d’une table sélectionnée.

82 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Mapping de données

Utilisez la barre d’outils placée sous la table de schéma pour ajouter, déplacer et supprimer des
colonnes du schéma.
Vous pouvez également charger un schéma à partir du référentiel ou exporter le schéma courant
vers un fichier.

Métadonnées Description
Column Nom de colonne tel que défini dans le schéma du Mapper et dans le
schémas du composant Input ou Output correspondant.
Key La clé indique si la valeur de la clé d’expression devrait être utilisée
pour retrouver les données d’une autre table à travers un lien Join. Si
cette case est décochée, la relation Join est désactivée.
Type Type de données: chaine de caractères ou entier
Length -1 indique qu’aucune valeur de longueur a été définie dans le schéma.
Precision Précise la valeur de longueur de chaine, si spécifiée.
Nullable Décochez cette case si vous ne souhaitez pas autoriser les valeurs de
champs nulles.
Default Indique les valeurs par défaut, si elles sont définies.
Comment Champ texte libre. Saisissez tout commentaire que vous jugerez utile.

Note: Les schémas Input et les schémas Output sont indépendants les uns des autres.
Vous pouvez par exemple changer le libellé d’une colonne Output dans que le
libellé du schéma Input ne change.
Cependant toutes modifications apportées au schéma sont immédiatement reportées sur le
schéma correspondant de la zone Input ou Output appropriée, mais également au niveau des
propriétés elles-mêmes du composant Input ou Output concerné.
Un arrière-plan rouge s’affiche lorsqu’un caractère non valide a été saisi. La plupart des
caractères spéciaux sont interdits pour réduire les risques de mauvaises interprétation dans le
code. Les caractères autorisés sont : les minuscules et majuscules, les chiffres (à l’exception du
caractère de début de chaine).
Passez la souris sur le champ de couleur rouge, un bulle info affiche un message d’erreur.

Copyright © 2007 Talend Open Studio 83


Conception d’un Job Design
Activation/Désactivation d’un job ou sous-job

Passez la souris au-dessus du champ invalide pour faire apparaitre le message d’erreur
correspondant.

Activation/Désactivation d’un job ou sous-job

Vous pouvez activer ou désactiver un composant et par ce biais, un processus entier ou un processus
secondaire (subprocess) directement connecté au composant sélectionné. Par défaut le composant est
activé.
Dans la fenêtre de propriétés Main du composant sélectionné, cochez ou décochez la case Activate.

Alternativement, cliquez droit sur le composant et sélectionnez la commande Activate/Deactivate qui


s’affiche en fonction du statut courant du composant.
Si vous désactivez un composant, aucun code ne sera généré et vous ne pourrez ni ajouter ni modifier
de liens à partir de ce composant vers des composants actifs ou nouveaux.
Voir également: Définition du composant Start, page 44.

Désactiver un composant Start

Dans le cas où un composant Start est désactivé, les composants de tout type ainsi que les
connexions de toute nature, reliés directement et indirectement à lui, seront désactivés également.

Désactiver un composant non-Start

Lorsque vous décochez la case Activate d’un composant standard (non Start), seuls le composant
en question et ses connexions directes sont désactivés.

84 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition d’un contexte et de variables de job

Si un lien direct vers un composant désactivé est une connexion Row main (principale) vers un
processus secondaire, tous les composants de ce sous-job seront également désactivés.

Définition d’un contexte et de variables de job

Les contextes vous donnent la possibilité de gérer différemment vos jobs selon les conditions
d’utilisation.
Par exemple, vous pouvez intégrer dans votre cycle de validation plusieurs phases de test avant que vous
job design soit mis en production. Talend Open Studio vous offre la possibilité de mettre en place
plusieurs environnements similaires afin d’éviter de renseigner plusieurs fois les propriétés de tous les
composants.
Vous pouvez donc dédier un contexte au développement et un autre à la production. La seule différence
entre les deux contextes étant certaines valeurs de champs sensibles et l’échelle d’utilisation. Le
contexte de production serait par conséquent une simple reproduction du contexte de développement à
quelques différences près.
Cliquez dans l’éditeur graphique sans cliquer sur un composant, pour afficher le panneau de
configuration des contextes. Le panneau Context apparaît en bas de la fenêtre, au niveau de
l’emplacement des Properties généralement.

Ajouter ou renommer un contexte

Pour modifier le nom d’un contexte, cliquez sur Rename et saisissez le nouveau nom de contexte
dans la boîte de dialogue qui s’affiche.
Pour ajouter un nouvel onglet, cliquez sur Copy. Le contexte par défaut est ainsi dupliqué dans un
nouvel onglet. Saisissez un nom pour le contexte qui vient d’être créé.

Lorsque vous copiez un contexte, la totalité des informations de contexte est copiée vers le nouveau
contexte. Il vous suffit donc d’apporter les modifications nécessaires à la nouvelle utilisation.

Copyright © 2007 Talend Open Studio 85


Conception d’un Job Design
Définition d’un contexte et de variables de job

La liste déroulante Default Context propose tous les


contextes créés pour ce job design.
Vous avez la possibilité de changer de contexte par
défaut en sélectionnant un nouveau contexte dans la
liste.
Notez qu’il est impossible de supprimer un contexte
par défaut car l’exécution d’un processus requiert un
contexte. Ce contexte peut s’appeler Default mais
peut également porter un autre nom de votre choix.

Définir les paramètres de contexte

Un contexte est caractérisé par des paramètres. Ces paramètres sont des variables basées sur le
contexte qui seront ajoutées à la liste des variables disponibles pour réutilisation dans les propriétés
spécifique d’un composant, via la combinaison des touches Ctrl+Espace.
Ajoutez une ligne de paramètre à la table en cliquant sur Add puis renseignez les données générales
du job. Vous pouvez ajouter autant de paramètres que vous souhaitez. Le champ Script code indique
la variable correpondante qui sera créée. Sa valeur suit un script standard tel que
$_context{YourParameterName}.
Cochez la case Ask for confirmation?, si vous souhaitez avoir la possibilité de confirmer
l’utilisation de ce paramètre lors de l’exécution du processus. Cette option peut se revéler utile au
moment de la mise en production, lorsque le processus est prêt a passer d’un contexte de
développement au contexte de production, par exemple.
Si vous cochez la case Prompt, à côté de l’entrée de la variable, vous pourrez modifier la variable
lors de l’exécution d’un processus utilisant une variable de ce contexte.

86 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition d’un contexte et de variables de job

Fields Description
Prompt Cochez cette case, si vous souhaitez que la variable soit modifiable au moment
d’exécuter le processus.
Name Nommez à la variable. Une variable de contexte est généralement utilisée par
différents composants, vous évitant ainsi d’avoir à resaisir les mêmes données.
Prompt message Si vous avez coché la case Prompt, renseignez ce champs pour personnaliser le
message de la boite de dialogue.
Type Sélectionnez le type de données, dans la liste.
Default Saisissez la valeur par défaut de cette variable. Vous pouvez utiliser ce champ pour
mettre à jour la variable ou pour mettre à jour toutes les propriétés appelant cette
variable.
Comment Ce champ est un commentaire libre.
Script code Ce champ est en lecture seule. Un code script est généré selon le nom de paramètre
saisi. Ce format de variable apparaît dans la liste des variables accessible via
Ctrl+Espace, à partir des propriétés d’un composant.

Notez que la variable ou le nom de paramètre suit des règles de saisie, notamment liées au caractères
interdits, tels que l’espace.

Variables et alias

Dans tous les champs de l’onglet Properties définissant les propriétés d’un composant, vous pouvez
utiliser une variable globale définie ou des variables de contexte.
Appuyez sur les touches Ctrl+Space pour afficher la liste complète des variables globales des
variables de contexte utilisées dans les functions Perl prédéfinies. Les variables de contexte sont
créées par l’utilisateur pour un contexte d’utilisation particulière, tandis que les variables globales
sont des variables système.
La liste s’allonge au fur et à mesure des créations de variables de contexte (ou variables utilisateur).
Voir également : Définition d’un contexte et de variables de job, page 85

Création rapide de variables de contexte


Créez rapidement vos variables de contexte à l’aide de la touche F5:
• Placez votre curseur sur le champ que vous souhaitez entrer en paramètres de contexte.
• Appuyez sur F5 pour afficher la boîte de dialogue de création des paramètres de
contexte.

Copyright © 2007 Talend Open Studio 87


Conception d’un Job Design
Définition d’un contexte et de variables de job

• Donnez un nom (Name) à cette nouvelle variable et renseignez la zone Comment ainsi
que le Type.
• Saisissez la question de confirmation (Prompt) à afficher pour confirmer l’utilisation de
cette variable lors de l’exécution du job courant.
• Cochez la case Prompt for value pour afficher le champ en mode édition. Si vous avez
renseigner déjà le champ correspondant dans la vue Properties du composant, cette
valeur est automatiquement reprise dans le champ Default Value.
• Cliquez sur Finish pour valider. Cliquez dans l’espace de modélisation de votre job,
l’onglet Properties du job entier s’affiche. Remarquez que la liste des paramètres de
contexte intègre la variable nouvellement créée.

88 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Définition d’un contexte et de variables de job

Vous pouvez modifier la variable à n’importe quel moment.

Requêtes StoreSQL
StoreSQLQuery est une variable de contexte spécifique, dans le sens où elle est configurée par
l’utilisateur et non par le système. Cette variable est dédiée principalement au débogage.
StoreSQLQuery diffère des autres variables de contexte dans le fait qu’elle sert principalement
de paramètre pour une variable globale spécifique, dîte Query. Elle vous permet d’alimenter
dynamiquement la variable globale de requête.
La variable globale Query est disponible dans la liste d’autocomplétion (Ctrl+Espace) des
propriétés des composants de type DB input.
Pour plus d’informations sur le paramétrage de StoreSQLQuery, voir Composants page 95.

Exécuter un job dans un contexte défini

Vous pouvez sélectionner le contexte dans lequel vous souhaitez exécuter votre job.

Cliquez sur l’onglet Run Job, et dans la partie Context, sélectionnez le


contexte approprié.
Si vous n’avez pas créé de contexte, seul le contexte par défaut, Default,
est proposé dans la liste.
Toutes les variables de contexte que vous avez créées pour le contexte en
sélection, ainsi que leur valeur associée apparaissent dans un tableau. Si

Copyright © 2007 Talend Open Studio 89


Conception d’un Job Design
Exécution d’un job

vous avez coché la case Prompt lors de la définition du contexte, une boîte de dialogue s’affiche
pour vous demander de confirmer ou modifier la valeur de la variable utilisée pour cette exécution.
Pour rendre permanente une modification de valeur de variable, vous devez la changer dans le
paramètre de contexte correspondant. Voir également : Définir les paramètres de contexte, page 86.

Exécution d’un job

Vous disposez de plusieurs manières pour exécuter votre processus. Le choix du type d’exécution
dépend de l’objectif ainsi que de votre niveau Perl (ou celui de l’utilisateur).
Si vous avez un niveau Perl avancé et souhaitez exécuter votre projet pas à pas, consultez la section
Exécuter en mode debug, page 92.
Si vous n’avez pas de connaissances Perl avancées et souhaitez exécuter votre job en mode normal,
consultez la section Exécuter en mode normal, page 90 .

Exécuter en mode normal

Veillez à sauvegarder votre job avant de l’exécuter afin que toutes les propriétés puissent être prises
en compte.
• Cliquez sur l’onglet Run Job pour accéder au panneau.
• Dans la zone Context, sélectionnez le contexte approprié pour ce processus. Vérifiez
également les valeurs de variables si necéssaire.
Si vous n’avez pas défini de contexte d’exécution, le tableau des paramètres de contexte est vide et
le contexte est défini sur default.
Voir également: Définition d’un contexte et de variables de job, page 85
• Cliquez sur Run pour lancer l’exécution.
• Sur le même panneau, la console de log affiche la progression de l’exécution. La log inclut
les messages d’erreurs ainsi que les messages de début et de fin de processus. Elle affiche
également le résultat du processus si le composant terminal le prévoit, par exemple
tLogRow.
Avant d’exécuter à nouveau un processus, vous pouvez vider le contenu de la log, en cliquant sur
la case à cocher Clear before run. A chaque exécution, la log sera désormais vidée.
Si pour une raison quelconque, vous souhaitez stopper la progression du job, cliquez simplement sur
le bouton Kill. Vous devrez cliquer sur Run à nouveau pour reprendre l’exécution du job.
Talend Open Studio offre d’autres fonctionnalités informatives, telles que Stastistics ou Traces, qui
facilitent la supervision du job ainsi que le travail de débogage.

Afficher les statistiques


La fonction Statistics affiche le taux de performance de chacun des composants, sous son icone
dans l’éditeur graphique.

90 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Exécution d’un job

Sont indiqués le nombre de lignes traitées et la vitesse de traitement en ligne par seconde. Vous
pouvez ainsi plus facilement repérer d’éventuels goulots d’étranglement dans le traitement de
votre flux de données.
Note: Cette option est disponible pour tous les composants à l’exception des composants
externes qui ne peuvent offrir cette fonctionnalité que si leur conception le prévoit.
Cochez la case Statistics pour activer la fonction stats et décochez la case pour la désactiver.
Le calcul des statistiques ne commence qu’au début de l’exécution du processus et s’arrête
lorsque l’exécution s’arrête.
Cliquez sur le bouton Clear pour effacer les stats affichées. Cochez la case Clear before Run
pour que la fonction de statistiques se réinitialise automatiquement avant chaque exécution.
Note: Les statistiques peuvent ralentir sensiblement les performances d’exécution du
processus car le processus doit envoyer ces données à l’application afin qu’elle
soient affichées.

Afficher les traces


La fonctionnalité de suivi est relativement simple dans TOS, pour l’instant. Mais cette
fonctionnalité devrait être améliorée à l’avenir.
Cette option fournit un aperçu ligne à ligne du comportement du composant et affiche le résultat
dynamique de cette vue à côté de la connexion Row.

Cette fonctionnalité vous permet de superviser tous les composants d’un job, sans avoir besoin
de passer en mode Debug, et par conséquent sans avoir besoin de connaissances Perl
particulières.
La fonction Traces affiche le contenu des lignes traitées dans un tableau. Cochez la case Clear
before Run pour que la fonction de trace se réinitialise automatiquement avant chaque
exécution.
Note: Les composants externes ne peuvent offrir cette fonctionnalité que si leur
conception le prévoit.

Copyright © 2007 Talend Open Studio 91


Conception d’un Job Design
Enregistrement ou Exportation de jobs

Cochez la case Traces pour activer la fonction de suivi du traitement et décochez pour la
désactiver.
La fonction trace ne s’exécute qu’à l’exécution du job, et ne s’arrête qu’à la fin de celui-ci.
Cliquez sur Clear pour effacer les traces affichées.
Note: Le tableau est limité horizontalement, néanmoins si vous passez votre souris
au-dessus du tableau, la totalité des informations s’affiche. A contrario, il n’existe
aucune limitation verticale de ce tableau. Cela peut poser problème si le tableau
est très long.

Exécuter en mode debug

Avant d’exécuter un job en mode Debug, vérifiez que le module EPIC est installé.
Dans un premier temps nous vous recommandons d’ajouter des points de pause au niveau des étapes
principales de votre processus.

De cette manière, le processus s’arrêtera automatiquement régulièrement, vous


permettant ainsi de vérifier pas à pas les composants et leurs variables respectives et
de corriger les bugs éventuels.
Pour ajouter des pauses (breakpoints) au niveau d’un composant, cliquez droit sur le
composant dans l’espace de modélisation puis sélectionnez Add breakpoint dans
le menu contextuel.
L’icone pause d’affiche à gauche du composant dans l’éditeur graphique.
Pour passer en mode debug, cliquez sur le bouton Debug dans le panneau Run Job. Talend Open
Studio ouvre l’éditeur en mode de débogage.
Vous pouvez exécuter le job pas à pas et vérifier le comportement de chacun des composants ainsi
que les valeurs des variables utilisées.
Pour revenir en mode normal Talend Open Studio, cliquez sur Window, puis Perspective et
sélectionnez Talend Open Studio.

Enregistrement ou Exportation de jobs

Enregistrement d’un Job

Lorsque vous fermez l’application Talend Open Studio, une boîte de dialogue vous demande de
sauvegarder les jobs courants si vous ne l’avez pas déjà fait.
Cochez la case correspondant aux jobs que vous souhaitez sauvegarder. Le job est enregistré dans
le dossier du projet dont il fait partie, dans le répertoire Workspace.
Vous pouvez également cliquer sur menu File > Save ou appuyer sur Ctrl+S pour enregistrer vos
jobs.

92 Talend Open Studio Copyright © 2007


Conception d’un Job Design
Raccourcis clavier

Exportation de job scripts

A l’aide de la fonction Export de Talend, vous pouvez conserver et archiver vos fichiers script de
vos jobs dans un fichier d’archivage.
Cliquez-droit sur le job correspondant dans le Repository et sélectionnez Export Job Scripts.

Sélectionnez les fichiers que vous souhaitez ajouter à votre archive, et donnez un nom à ce fichier
zip. Cliquez sur Finish lorsque vous avez terminé.
Le fichier créé est une archive que vous pouvez stocker, envoyer et redéployer selon vos besoins. Il
contient les run.bat et les run.sh requis pour l’exécution des scripts.

Raccourcis clavier

Le tableau ci-dessous rassemble tous les raccourcis clavier utilisés dans TOS :

Copyright © 2007 Talend Open Studio 93


Conception d’un Job Design
Raccourcis clavier

Pour... Contexte Raccourci


Afficher la vue Properties Application globale F3
Afficher la vue Run Job Application globale F4
Exécuter le job courant ou afficher la vue Run Application globale F6
Job si aucun job n’est ouvert.
Afficher la vue Module Application globale Ctrl + F2
Afficher la vue Problems Application globale Ctrl + F3
Revenir à la vue Job Design courante Application globale Ctrl + H
Afficher l’onglet Code du job courant Application globale Ctrl + G
Synchroniser les templates perljet des Application globale Ctrl + Maj + F3
composants et les classes java associées
Passez en mode Debug Dans la vue Run Job F7
Créer une variable de contexte à partir d’un Dans la vue Properties d’un job F5
champ Properties
Tuer le job courant Dans la vue Run Job F8
Rafraichir le statut d’installation des Modules Dans la vue Modules F5

Quel que soit le paramètre de propriétés du job, vous pouvez utiliser Ctrl+Space pour paramétrer la
valeur du champ comme variable de contexte.

94 Talend Open Studio Copyright © 2007


—Composants—

Composants

Ce chapître détaille les propriétés des composants principaux fournis en standard dans Talend Open
Studio. Chaque composant possède sa propre liste de propriétés et de paramètres, éditables dans l’onglet
Properties du panneau Properties.
Cliquez sur l’un des liens suivants pour consulter sa fiche technique:

tMsgBox tFileInputDelimited
tFileInputPositional tFileOutputXML
tLogRow tFileList
tFTP tSendMail
tPerl tSystem
tFileInputRegex tDBInput
tMap tRowGenerator
tAggregateRow tSortRow
tUniqRow tFileInputXML
tCatcher, tWarn & tDie tDBOutput
tFileInputMail tFileOutputLDIF
tStatCatcher tRunJob

Copyright © 2007 Talend Open Studio 95


Composants
tMsgBox

tMsgBox

Propriétés de tMsgBox

Famille du composant Misc


Fonction Ouvre une boîte de dialogue avec un bouton OK. Requiert une action de
la part de l’utilisateur.
Objectif tMsgBox est une pause graphique dans le cours du traitement.
Propriétés Title Le texte saisi s’affiche dans la barre de titre de la
boite de dialogue.
Buttons Liste des boutons que vous souhaitez inclure dans
la boite de dialogue. Les combinaisons de bouton
sont restreintes et ne peuvent être changées.
Icon Icone de la barre de titre de la boite de dialogue.
Message Texte libre à afficher dans la boîte de dialogue. Le
texte peut être dynamique (ex: reprendre un nom
de fichier)
Utilisation Ce composant peut etre utilisé comme étape intermédiaire du traitement
ou comme composant de début ou de fin d’un job design. Il peut être
connecté à l’aide d’un lien Row ou Iterate.
Limitation tMsgBox ne fonctionne que sur Windows OS.

Scénario test de type ‘Hello World’

Le scénario suivant crée un job à composant unique où tMsgBox est utilisé pour afficher le pid
(Process id unique généré par le système) en lieu et place du tradionnel message “Hello World!”.
• Cliquez et déposez un composant tMsgBox dans le workspace
• Définissez les propriétés d’affichage du message

96 Talend Open Studio Copyright © 2007


Composants
tMsgBox

• ‘My Title’ est le titre de la boîte de message, vous pouvez utiliser une variable Perl.
• Dans le champ Message, saisissez le texte entre guillemets simples concaténé à l’aide de la
variable scalaire Perl ($$) contenant le pid.
• Appuyez sur F6 pour exécuter le job et passer à l’onglet Run Job de la console.
Le message affiche le texte défini précédemment et requiert une action de l’utilisateur pour
disparaître.

Après que l’utilisateur a cliqué sur le bouton OK, le log de l’onglet Run Job est mis à jour.
Voir également: Exécution d’un job, page 90

Copyright © 2007 Talend Open Studio 97


Composants
tFileInputDelimited

tFileInputDelimited

Propriétés de tFileInputDelimited

Famille du composant File


Fonction tFileInputDelimited lit un fichier ligne à ligne et sépare des champs simples.
Objectif Ouvre un fichier et le lit ligne à ligne afin de le diviser en champs et d’envoyer les
champs définis par le Schéma au composant suivant, via un lien Row.
Propriétés Property type Peut être Built-in ou Repository.
Built-in: Propriétés utilisées ponctuellement.
Repository: Sélectionnez le fichier de propriétés du
composant. Les champs suivants sont alors pré-remplis à
l’aide des données collectées.
File Name Nom du fichier à traiter.
Voir également :Variables et alias, page 87
Field separator Caractère, chaine ou expression régulière séparant les champs.
Row separator Caractères (ex: “\n”sur Unix) séparant les lignes
Header Nombre de lignes à ignorer au début d’un fichier.
Footer Nombre de lignes à ignorer à la fin d’un fichier.
Limit Nombre max. de lignes à traiter. Si Limit = 0, aucune ligne
n’est lue ni traitée.
Schema type et Edit Un schéma est une description de ligne, i.e. il définit le
Schema nombre de champs qui seront traités et passés au composant
suivant. Le schéma est soit local (built-in) soit distant dans le
Repository.
Built-in: Le schéma sera créé et conservé ponctuellement pour
ce composant seulement. Voir également : Paramétrage d’un
schéma built-in, page 43
Repository: Le schéma existe déjà et est stocké dans le
Repository. Il peut être réutilisé dans divers projets et job
design. Voir également : Paramétrage d’un schéma
repository, page 43
Skip empty rows Cochez cette case pour ignorer les lignes vides.
Extract random Cochez cette case pour définir un nombre de lignes à extraire
number of lines de façon aléatoire
Encoding Champ texte libre. Talend ne peut pour l’instant vérifier
l’encodage, mais cette fonction devrait être ajoutée à l’avenir.
Utilisation Utilisez ce composant pour lire un fichier et séparer les champs à l’aide du séparateur
spécifié.

98 Talend Open Studio Copyright © 2007


Composants
tFileInputDelimited

Scénario: Affichage du contenu d’un fichier délimité

Le scénario suivant est un job de deux composants ayant pour objectif de lire les lignes d’un fichier,
de sélectionner des données délimitées et d’afficher la sortie dans la console (onglet Run Job).

• Cliquez et déposez un composant tFileInputDelimited de la Palette vers le workspace.


• De la même manière, cliquez et déposez un composant tLogRow.
• Cliquez droit sur le composant tFileInputDelimited et sélectionnez Row > Main dans le
menu contextuel. Puis glissez ce lien vers le tLogRow et relâchez lorsque le symbole de
prise de courant apparaît.
• Sélectionnez le composant tFileInputDelimited à nouveau et définissez ses propriétés :

• Renseignez le chemin d’accès au fichier dans le champ File Name. Ce champ est obligatoire.
• Définissez le séparateur de lignes dans le champ Row Separator afin d’identifier la fin
d’une ligne. Puis définissez le séparateur de champs dans Field Separator pour délimiter les
champs composant une ligne.
• Dans ce scénario, l’entête (Header) et le pied de page (Footer) n’ont pas besoin d’être
définis. Et la limite de lignes lues (Limit) est de 50 pour cet exemple.
• Vous pouvez charger et/ou éditer le schéma à l’aide de la fonction Edit Schema.
Voir également : Paramétrage d’un schéma built-in et Paramétrage d’un schéma repository, page
43.

Copyright © 2007 Talend Open Studio 99


Composants
tFileInputDelimited

• Assurez-vous que la case Skip empty rows est cochée afin d’ignorer les lignes vierges.
• Saisissez l’encodage utilisé dans le fichier d’entrée défini. Ce paramètre permet d’assurer
l’homogénéité de l’encodage dans tous les fichiers d’entrée et de sortie.
• Sélectionnez le composant tLogRow et définissez le séparateur de champs de la sortie
affichée. Voir également: tLogRow, page 108
• Passez sur l’onglet Run Job et cliquez sur Run pour exécuter le job.
Le fichier est lu ligne à ligne et les champs extraits sont affichés dans la console, tel que défini dans
les Properties des composants.

La console affiche l’en-tête suivis des données lues par le job.

100 Talend Open Studio Copyright © 2007


Composants
tFileInputPositional

tFileInputPositional

Propriétés de tFileInputPositional

Famille du composant File


Fonction tFileInputPositional lit un fichier ligne à ligne et extrait les champs selon un pattern.
Objectif Ouvre un fichier qu’il lit ligne à ligne et sépare les champs tels que definis par le schéma,
puis passe ces données extraites au composant suivant via un lien Row.
Propriétés Property type Peut être Built-in ou Repository.
Built-in: Propriétés utilisées ponctuellement.
Repository: Sélectionnez le fichier où sont stockées les
propriétés du composant. Les champs suivants sont alors
pré-remplis à l’aide des données collectées.
File Name Nom du fichier à traiter. Voir également:Variables et alias,
page 87
Field separator Caractère, chaîne ou expression régulière séparant les
champs.
Row separator Caractères (ex: “\n”sur Unix) séparant les lignes
Header Nombre de lignes à ignorer au début d’un fichier.
Footer Nombre de lignes à ignorer à la fin d’un fichier.
Limit Nombre max. de lignes à traiter. Si Limit = 0, aucune ligne
n’est lue ni traitée.
Schema type and Edit Un schéma est une description de ligne, i.e. il définit le
Schema nombre de champs qui seront traités et passés au composant
suivant. Le schéma est soit local (built-in) soit distant dans le
Repository.
Built-in: Le schéma sera créé et conservé ponctuellement
pour ce composant seulement. Voir également : Paramétrage
d’un schéma built-in, page 43
Repository: Le schéma existe déjà et est stocké dans le
Repository. Il peut être réutilisé dans divers projets et job
designs. Voir également : Paramétrage d’un schéma
repository, page 43
Skip empty rows Cochez cette case pour ignorer les lignes vides.
Pattern Longueurs séparées par des virgules, interprétées comme une
chaîne de caractères entre guillemets. Vérifiez que les valeurs
saisies dans ce champ sont cohérentes avec le schéma défini.
Encoding Champ texte libre. Talend ne peut pour l’instant vérifier
l’encodage, mais cette fonction devrait être ajoutée à l’avenir.
Utilisation Utilisez ce composant pour lire un fichier et séparer les champs à l’aide du séparateur
spécifié.

Copyright © 2007 Talend Open Studio 101


Composants
tFileInputPositional

Scénario: Transformation d’un fichier positionnel en XML

Le scénario suivant construit un job à deux composants, qui a pour objectif de lire les données d’un
fichier positionnel en entrée et de rendre en sortie des données sélectionnées (selon leur position)
dans un fichier XML.

• Cliquez et déposez un composant tFileInputPositional de la Palette de composants vers


l’espace de modélisation.
• Cliquez et déposez un composant tFileOutputXML. Ce fichier recevra les références
structurées.
• Cliquez droit sur le composant tFileInputPositional et sélectionnez le lien Row > Main.
Glissez ce lien vers le second composant en maintenant le bouton de la souris enfoncée et
relâchez la souris lorsque le symbole de prise de courant apparaît.
• Sélectionnez le composant d’entrée à nouveau et définissez ses propriétés :
• Les propriétés de ce job sont de type built-in pour ce scénario. Par conséquent les
informations de propriétés sont renseignées pour ce job seulement et ne peuvent être
réutilisées pour un autre job, contrairement à des propriétés de type Repository.

• Renseignez le chemin d’accès au fichier dans le champ File Name. Ce champ est obligatoire.

102 Talend Open Studio Copyright © 2007


Composants
tFileInputPositional

• Puis définissez le pattern de délimitation des champs dans une ligne, dans le champ Pattern.
Le pattern est une série de longueurs correspondant aux valeurs de champs du fichier en
entrée. Les valeurs doivent être saisies entre guillemets simples et séparées par une virgule.
Veillez à ce que les valeurs saisies correspondent aux longueurs de champs du schéma défini.
• Dans ce scénario, les champs entête (Header), pied de page (Footer) et limite (Limit) n’ont
pas besoin d’être définis.
• Sélectionnez le type de Schéma, dans ce cas Built-in, et définissez les données à transmettre.
Vous pouvez charger et/ou modifier le schéma via la fonction Edit Schema. Pour ce schéma,
définissez trois colonnes, respectivement Contracts, CustomerRef et InsuranceNr
correspondant aux trois valeurs de longueurs définies.

Puis définissez les propriétés du composant de sortie :

Copyright © 2007 Talend Open Studio 103


Composants
tFileInputPositional

• Saisissez une (ou plusieurs) balise racine (Root tag) pour envelopper la structure en sortie
XML, dans ce cas, la balise est ContractList.
• Définissez la balise de ligne (Row tag) qui définit chaque ligne. Dans ce cas, la balise de
ligne est ContractRef.
• Cochez la case Column name as tag name pour réutiliser le libellé des colonnes du schéma
d’entrée comme nom de balises de la structure de sortie. A défaut, le nom de balise est field
quel que soit le type de valeur dans les colonnes.
• Saisissez un encodage (Encoding) standard du fichier d’entrée.
Note: Remarque: Pour l’instant, la vérification d’encodage n’est pas fonctionnemllement
supportée.
• Sélectionnez le type de schéma, dans Schema type. Si vous avez déjà mis en place le lien
de connexion entre composant d’entrée et de sortie du job, la propagation de schéma est
automatique. Si besoin est, cliquez sur Sync columns pour les synchroniser.
• Passez à l’onglet Run Job et cliquez sur Run pour exécuter le job.
Le fichier est lu ligne à ligne et divisé en champs basés sur les longueurs définies précédemment
dans le champ Pattern. Vous pouvez l’ouvrir dans n’importe quel éditeur XML standard.

104 Talend Open Studio Copyright © 2007


Composants
tFileInputPositional

Copyright © 2007 Talend Open Studio 105


Composants
tFileOutputXML

tFileOutputXML

Propriétés de tFileOutputXML

Famille du composant File


Fonction tFileOutputXML produit en sortie un fichier de données de type XML.
Objectif tFileOutputXML écrit dans un fichier XML des données séparées selon un
schéma spécifié.
Propriétés File name Nom ou chemin d’accès du fichier de sortie. Voir
également : Variables et alias, page 87
Root tag Enveloppe les données et la structure entière du
fichier de sortie
Row tag Enveloppe les données et la structure de chaque
ligne.
Column name as tag Cochez cette case pour récupérer les libellés de
name colonnes du schéma d’entrée et les utiliser comme
balise xml.
Split output in files Si le fichier XML en sortie est volumineux, vous
pouvez scinder ce fichier en plusieurs parties.
Schema type and Edit Un schéma est une description de ligne, i.e. il définit
Schema le nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local
(built-in) soit distant dans le Repository (référentiel).
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans
le Repository. Il peut être réutilisé dans divers projets
et job designs. Voir également : Paramétrage d’un
schéma repository, page 43
Sync columns Cliquez pour synchroniser le schéma de sortie avec le
schéma d’entrée. La fonction Sync ne s’affiche que si
une connexion de type Row est liée au composant de
sortie.
Encoding Champ texte libre. Talend ne peut pour l’instant
vérifier l’encodage, mais cette fonction devrait être
ajoutée à l’avenir.
Utilisation Utilisez ce composant pour écrire dans un fichier XML des données
récupérées d’autres composants à l’aide d’un lien Row.
Limitation n/a

106 Talend Open Studio Copyright © 2007


Composants
tFileOutputXML

Scénario: Utilisation d’un format de sortie XML

Un scénario utilisant le composant tFileOutputXML est décrit dans Scénario: Transformation d’un
fichier positionnel en XML, page 102.

Copyright © 2007 Talend Open Studio 107


Composants
tLogRow

tLogRow

Propriétés de tLogRow

Famille du composant GUI


Fonction Affiche les données ou les résultats dans la console Run Job.
Objectif tLogRow permet de superviser les donnés traitées.
Propriétés Separator Saisissez le séparateur qui permet de délimiter les
données dans la console.
Utilisation Ce composant peut être utilisé comme étape intermédiaire dans le flux de
données ou comme composant de fin de job. Il sert généralement à
vérifier la cohérence et la qualité des données en sortie, en vue de
d’alimenter une base de données par exemple.
Limitation n/a

Scénario: Affichage dans la console

Un cas d’utilisation utilisant un composant tLogRow est décrit dans la section: Scénario: Affichage
du contenu d’un fichier délimité, page 99.

108 Talend Open Studio Copyright © 2007


Composants
tFileList

tFileList

Propriétés de tFileList

Famille du composant File


Fonction tFileList boucle sur les fichiers d’un répertoire donné.
Objectif tFileList récupère un groupe de fichiers suivant un masque donné, et
boucle sur chacun des fichiers.
Propriétés Directory Chemin d’accès au répertoire de fichiers.
Filemask Nom de fichier ou masque de fichier utilisant un
caractère spécial (*) .
Case sensitive Crée (ou non) un filtre selon la casse des noms de
fichiers.
Utilisation tFilelist fournit une liste de fichiers à partir d’un répertoire donné, sur
lequel il boucle.

Scénario: Itération sur un répertoire

Le scénario suivant décrit un job de trois composants, qui a pour objectif de répertorier les fichiers
d’un répertoire défini, de lire chaque fichier par itération, de sélectionner les données délimitées et
d’afficher ces données dans la sortie standard de l’onglet Run Job.

• Cliquez et déposez les composants suivants: tFileList, tFileInputDelimited et tLogRow


dans l’espace de modélisation.
• Cliquez-droit sur le tFileList et tirez un lien Row > Iterate vers le composant
tFileInputDelimited. Puis tirez un lien Row > Main du tFileInputDelimited vers le
composant de sortie, tLogRow.
• Puis définissez les propriétés respectives des composants.
• Sélectionnez le composant tFileList, dans l’onglet Properties :

Copyright © 2007 Talend Open Studio 109


Composants
tFileList

• Dans le champ Directory, parcourez votre système de fichier jusqu’au répertoire d’itération.
• Pour faire apparaître ce chemin d’accès dans le job lui-même, utilisez le nom de champ
(__Directory__) qui apparaît en bulle info lorsque vous passez la souris sur le champ
Directory. Saisissez cette reférence de le champ Label Format de l’onglet View.
• Dans l’onglet Properties, indiquez un masque de fichier dans le champ FileMask. Utilisez
les caractères joker si besoin est.
• Définissez le champ Case sensitive sur Yes pour ce scénario pour prendre en compte la
casse.
• Cliquez sur le second composant (tFileInputDelimited) pour en définir les propriétés :

• Saisissez un nom de fichier dans File Name à l’aide d’une variable contenant le chemin
d’accès au fichier, tel que vous l’avez renseigné dans les propriétés du tFileList. Appuyez
sur Ctrl+Espace pour accéder à la liste d’autocomplétion des variables et obtenir facilement
la variable globale d’itération.
• Renseignez les autres champs comme pour un fichier délimité standard. Voir également:
tFileInputDelimited, page 98.

110 Talend Open Studio Copyright © 2007


Composants
tFileList

• Sélectionnez le composant de sortie, tLogRow, et renseignez le séparateur de champs qui


s’affichera dans la console de l’onglet Run Job. Pour plus d’infos sur les propriétés du
tLogRow, voir également: tLogRow, page 108
• Passez à l’onglet Run Job et exécutez le job.
L’itération s’effectue sur le répertoire défini en entrée. Chacun des fichiers contenus dans ce
répertoire est lu. Puis les données délimitées sélectionnées sont transmises au composant de sortie
qui les affiche dans la sortie standard.

Copyright © 2007 Talend Open Studio 111


Composants
tFTP

tFTP

Propriétés de tFTP

Famille du composant Internet


Fonction Cet objet transmet des fichiers via une connexion FTP.
Objectif Les utilisations de tFTP varient selon l’action sélectionnée. .
Propriétés Host Addresse IP du site FTP
Port Port d’écoute du site FTP
Username and Données d’authentification FTP de l’utilisateur
Password
Local directory Chemin d’accès au fichier. L’usage de ce champ
dépend de l’action sélectionnée.
Remote directory Chemin d’accès au fichier. L’usage de ce champ
dépend de l’action sélectionnée.
Action Liste des actions disponibles pour transférer des
fichiers. Voir également : tFTP put, tFTP get,
tFTP rename, tFTP delete, page 113.
Files Masque de fichier et Nouveau Nom en cas de
renommage d’une action. Caractère jocker (*)
peut être utilisé pour transférer un groupe de
fichiers. Ou cliquez droit pour ajouter des lignes
au tableau.
Utilisation Ce composant est généralement utilisé seul comme sous-processus mais
peut également servir de composant de fin ou de sortie.
Limitation tFTP ne peut pas gérer en même temps, une action Get et une action Put.
Afin de pouvoir réaliser les deux actions en parallèle, il est recommandé
de dupliquer le composant tFTP dans le job et de les paramétrer chacun
pour une action.

tFTP put

Objectif tFTP put copie des fichiers sélectionnés à partir d’un répertoire local
vers un répertoire FTP distant.
Local directory Chemin d’accès à l’emplacement source des fichiers.
Remote directory Chemin d’accès au répertoire de destination des fichiers.
Filemask Noms de fichiers ou chemin d’accès aux fichiers à transférer.

Note: Si vous saisissez un chemin d’accès dans le champ Filemask, il est dans ce cas, inutile
de renseigner le champ du répertoire local.

112 Talend Open Studio Copyright © 2007


Composants
tFTP

tFTP get

Objectif tFTP get récupère les fichiers sélectionnés d’un répertoire FTP distant
et les dépose dans un répertoire local.
Local directory Chemin d’accès à l’emplacement de destination des fichiers
Remote directory Chemin d’accès du répertoire source où les fichiers sont récupérés.
Filemask Noms de fichiers ou chemin d’accès aux fichiers à transférer.

Note: Si vous saisissez un chemin d’accès dans le champ Filemask, il est dans ce cas, inutile
de renseigner le champ du répertoire local.

tFTP rename

Objectif tFTP rename renomme ou déplace des fichiers d’un système à distance.
Local directory Inutilisé pour cette action.
Remote directory Répertoire source où se trouvent les fichiers à renommer ou à déplacer.
Filename Noms de fichiers ou chemin d’accès aux fichiers à renommer.
New name Saisissez le nouveau nom de fichier.

Note: Si vous saisissez un chemin d’accès dans le champ Filemask, il est dans ce cas, inutile
de renseigner le champ du répertoire local.

tFTP delete

Objectif tFTP delete supprime des fichiers d’un système distant


Local directory Inutilisé pour cette action.
Remote directory Répertoire source où se trouvent les fichiers à supprimer.
Filename Noms de fichiers ou chemin d’accès aux fichiers à supprimer.

Note: Si vous saisissez un chemin d’accès dans le champ Filemask, il est dans ce cas, inutile
de renseigner le champ du répertoire local.

Scénario: Charger des fichiers sur un serveur distant

Ce scénario est constitué d’un seul composant et a pour objectif de déposer des fichiers spécifiés sur
un serveur distant.
• Cliquez et déposez un composant tFTP de la Palette de composants vers l’espace de
modélisation.
• Dans l’onglet Properties de ce composant, définissez ses propriétés FTP.

Copyright © 2007 Talend Open Studio 113


Composants
tFTP

• Renseignez l’adresse IP source dans Host, le port d’écoute dans Port ainsi que le reste des
informations de connexion.
• Renseignez les informations de répertoire local si tous les fichiers sont présents dans le
même répertoire. Vous pouvez renseigner cette information pour chaque fichier dans les
divers masques de fichiers (Filemask) du champ Files.
• Renseignez les informations de connexion au serveur distant dans Remote directory.
• Sélectionnez l’action à effectuer, dans cet exemple, une action Put.
• Cliquez-droit dans la zone Files pour ajouter des lignes nouvelles et renseignez les masques
de fichiers si besoin est.
• Appuyez sur F6 pour exécuter le job.
Les fichiers désignés dans le champ Filemask, sont ainsi copiés sur le répertoire défini du serveur
distant.

114 Talend Open Studio Copyright © 2007


Composants
tSendMail

tSendMail

Propriétés de tSendMail

Famille du composant Internet


Fonction tSendMail envoie des emails et des pièces jointes aux destinataires
spécifiés.
Objectif tSendMail a pour objectif de notifier les destinataires d’un état
particulier du job ou de possibles erreurs.
Propriétés To Adresse email du destinataire principal.
From Adresse email du serveur d’envoi
Cc Copie carbone destinataire
Subject Entête du message
Message Corps du message de l’email. Appuyez sur
Ctrl+Espace pour afficher la liste des variables
disponibles.
Attachment Masque de fichier ou chemin d’accès au fichier à
envoyer en pièce jointe, le cas échéant.
SMTP server Adresse IP du serveur SMTP d’envoi de mails.
Utilisation Ce composant est généralement utilisé comme sous-processus mais peut
également servir de composant de sortie ou de fin. Il peut être connecté
à d’autres composants à l’aide de connexion Row ou Iterate.
Limitation Les envois d’emails avec ou sans pièce jointe requièrent des modules
Perl différents.

Scénario: Envoi de notification d’erreur par email

Ce scénario est constitué de trois composants et a pour objectif d’envoyer un email aux destinataires
en cas d’erreur sur le job.

• Cliquez et déposez les composants suivants de la Palette vers l’espace de modélisation :


tFileInputDelimited, tFileOutputXML et tSendMail

Copyright © 2007 Talend Open Studio 115


Composants
tSendMail

• Définissez les propriétés du composant d’entrée tFileInputDelimited. Voir également:


tFileInputDelimited, page 98
• Cliquez droit sur ce composant et sélectionnez Row > main pour connecter le composant
d’entrée avec le composant de sortie tFileOutputXML. Relâchez la souris lorsque le
symbole de prise de courant apparaît.
• Définissez les propriétés du composant de sortie tFileOutputXML; Voir également:
tFileOutputXML, page 106
• Cliquez-droit à nouveau sur le composant tFileInputDelimited en entrée, et sélectionnez un
lien Trigger, Run if Error et connectez -le au composant tSendMail.
• Définissez les destinataires du mail, les informations de transmission.

• Saisissez l’adresse des destinataires (To) et de l’expéditeur (From), ainsi que l’objet du mail
(Subject).
• Saisissez un message contenant par exemple, le code erreur produit en utilisant la variable
globale appropriée. Accédez à la liste d’autocomplétion des variables via Ctrl+Espace.
• Ajoutez les éventuelles pièces à joindre ainsi que l’adresse IP du serveur SMTP.

116 Talend Open Studio Copyright © 2007


Composants
tSendMail

Dans ce scénario, le fichier en entrée est introuvable. tSendMail est donc chargé d’envoyer un mail
de notification d’erreur aux destinataires définis.

Copyright © 2007 Talend Open Studio 117


Composants
tPerl

tPerl

Propriétés de tPerl

Famille du composant Processing


Fonction tPerl transforme toute donnée saisie en argument de commande Perl.
Objectif tPerl est un éditeur Perl qui peut être utilisé comme un outil très flexible
dans un job.
Propriétés Code Saisissez le code Perl approprié selon la
commande et les tâches que vous souhaitez
effectuer. Pour plus d’informations concernant la
syntaxe des fonctions Perl, voir Talend Open
Studio online Help, sous Talend Open Studio
User Guide > Perl.
Utilisation Sert généralement au debogage mais peut également servir à afficher le
contenu de variables.
Limitation Ce composant requiert un niveau de connaissance Perl avancé et est
généralement utilisé plutôt de façon ponctuelle. Il n’est pas conçu pour
une utilisation avec une connexion de type Row.

Scénario: Affichage du nombre de lignes traitées

Ce scénario est constitué de trois composants affichant dans la console le nombre de lignes traitées
en sortie XML.
• Cliquez et déposez trois composants de la Palette des composants dans l’espace de
modélisation : tFileInputDelimited, tFileOutputXML et tPerl.
• Cliquez-droit sur le composant tFileInputDelimited et connectez-le au composant de sortie
tFileOutputXML par un lien Row > Main.
• Cliquez-droit à nouveau sur le composant d’entrée, et reliez-le au composant tPerl à l’aide
d’un lien déclencheur, Trigger > Run Before. Ce lien signifie que le composant
tFileInputDelimited s’exécutera avant le composant tPerl.
• Définissez les propriétés du composant d’entrée tFileInputDelimited.

118 Talend Open Studio Copyright © 2007


Composants
tPerl

• Les propriétés n’étant pas stockées dans le Repository, elles sont définies de façon unique
pour ce job, par conséquent de type Built-in.
• Saisissez un chemin d’accès ou parcourez votre système de fichiers jusqu’au fichier
contenant les données à traiter. Dans cet exemple, le fichier contient deux champs: les noms
et leur adresse email respective.
• Définissez les séparateurs de lignes et de champs. Pour ce scénario, les lignes sont délimitées
par un retour à la ligne et les champs par un point-virgule.
• La première ligne du fichier contient les libellés des colonnes, qui devront donc être ignorés
dans le traitement. Définissez l’entête (Header) à 1.
• Aucun pied de page (Footer) ni limite ne sont définis pour ce scénario.
• Comme les propriétés, le type de schéma est built-in pour ce scénario. Cliquez sur Edit
Schema pour décrire le contenu du fichier d’entrée: Deux colonnes libellées Names et
Emails de type chaîne de caractères (String).
• Sélectionnez le composant tFileOutputXML dans votre job, et définissez les données en
sortie.
• Créez une balise racine (Root tag) et nommez-la List, et créez une balise ligne (Row tag)
que vous nommez Entry. Cliquez sur Sync Columns pour dupliquer le schéma d’entrée en
sortie.
• Puis définissez le sous-job tPerl afin d’obtenir le nombre de lignes transférées vers la sortie
XML définie précédemment.

Copyright © 2007 Talend Open Studio 119


Composants
tPerl

• Dans l’onglet Properties, saisissez la commande Perl print pour obtenir la variable
contenant le nombre de lignes lues dans le fichier d’entrée. Pour accéder à la liste des
variables globales, appuyez sur Ctrl+Espace.
• Ajoutez une ligne de signes égal avant et après les lignes de commande, pour améliorer la
lisibilité des résultats dans la console. Notez également que les commandes, chaînes de
caractères et variables sont de couleurs différentes.
• Passez à l’onglet Run Job et exécutez le job.

Le job s’exécute et, comme prévu, crée un fichier XML correspondant au schéma défini. Dans la
console, le résultat de la commande Perl indique le nombre de lignes traitées.

120 Talend Open Studio Copyright © 2007


Composants
tSystem

tSystem

Propriétés de tSystem

Famille du composant System


Fonction tSystem exécute une ou plusieurs commandes système.
Objectif tSystem appelle d’autres commandes de traitement, qui peuvent être déjà
mises en place et opérationnelles dans un job plus important.
Propriétés Command Saisissez la commande système. Note : la
vérification syntaxique n’est pas prise en charge.
Output Sélectionnez le type de sortie de la donnée traitée.
to console: Sortie standard qui transmet les
données pour affichage dans la console.
to global variable: Les données sont placées
dans une variable de sortie liée au composant
tsystem
Utilisation Ce composant est généralement utilisé lorsqu’une entreprise a déjà mis
en place des applications qu’elle souhaite intégrer au flux de traitement
dans Talend.
Limitation n/a

Scénario: Affichage message dans sortie système

Ce scénario est constitué de deux composants et a pour objectif d’afficher un message dans la
console de log sans utiliser le composant tLogRow.
• Cliquez et déposez un composant tSystem et tPerl dans l’espace de modélisation.
• Cliquez-droit sur le composant tSystem, et sélectionnez le déclencheur Trigger > Run
Before link et reliez les deux composants. Lors de l’exécution du job, le premier composant
s’exécutera avant le second.
• Cliquez sur tSystem et sélectionnez l’onglet Properties:

Copyright © 2007 Talend Open Studio 121


Composants
tSystem

• Saisissez la commande echo et la chaîne de caractères “Hello World!” dans le champ


Command.
• Sélectionnez l’option To global variable dans le champ Output pour intégrer la valeur de
sortie de la commande dans une variable.
• Puis sélectionnez le composant tPerl

• Saisissez une commande Perl pour afficher la valeur de sortie du tSystem dans la console.
• Passez à l’onglet Run Job et exécutez le job.

Le job exécute une commande echo telle que définie dans le tSystem, stocke le résultat de cette
commande dans une variable qui s’affiche dans la sortie standard Run Job via la commande du
composant tPerl.

122 Talend Open Studio Copyright © 2007


Composants
tFileInputRegex

tFileInputRegex

Propriétés de tFileInputRegex

Famille du composant File


Fonction Puissante fonctionnalité qui peut remplacer bon nombre des composants File.
Requiert des connaissances avancées en rédaction d’expressions régulières.
Objectif Ouvre un fichier et le lit ligne à ligne afin de le diviser en champs à l’aide
d’expressions régulières et d’envoyer les champs définis dans le Schéma, au
composant suivant, via un lien Row.
Propriétés Property type Peut être Built-in ou Repository.
Built-in: Propriétés utilisées ponctuellement.
Repository: Sélectionnez le fichier de propriétés du
composant. Les champs suivants sont alors
pré-remplis à l’aide des données collectées.
File Name Nom du fichier à traiter. Voir également : Variables et
alias, page 87
Row separator Chaînes de caractères (ex: “\n”sous Unix) pour
distinguer les lignes.
Regex Ce champ est compatible Perl et peut contenir
plusieurs lignes. Intégrez à vos expressions
régulières le subpattern correspondant aux champs à
extraire.
Header Nombre de lignes à ignorer en début de fichier.
Footer Nombre de lignes à ignorer en fin de fichier.
Limit Nombre de ligne max.à traiter. Si Limit = 0, aucune
ligne n’est lue ni traitée.
Schema type and Edit Un schéma est une description de ligne, i.e. il définit
Schema le nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local (built-in)
soit distant (Repository).
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans
le Repository. Il peut être réutilisé dans divers projets
et job designs. Voir également : Paramétrage d’un
schéma repository, page 43
Skip empty rows Cochez cette case pour ignorer les lignes vides.

Copyright © 2007 Talend Open Studio 123


Composants
tFileInputRegex

Encoding Champ texte libre. Talend ne peut pour l’instant


vérifier l’encodage, mais cette fonction devrait être
ajoutée à l’avenir.
Utilisation Ce composant sert à lire un fichier et à en séparer les champs selon les Regex
définies.
Limitation n/a

Scénario: Transformation de fichier Regex en XML

Le scénario suivant est formé de deux composants et a pour objectif de lire les données d’un fichier
d’entrée basé sur des expressions régulières et transformant les données ainsi délimitées en sortie
XML.

• Cliquez et déposez un composant tFileInputRegex et tFileOutputXML de la Palette dans


l’espace de modélisation.
• Cliquez-droit sur le composant tFileInputRegex et sélectionnez Row > Main. Faites glisser
ce lien vers le composant tFileOutputXML et relachez lorsque le symbole approprié
apparaît.
• Sélectionnez tFileInputRegex à nouveau, et définissez les informations de l’onglet
Properties:

• Les propriétés de ce job sont de type built-in. Par conséquent, elles ne sont définies que pour
ce job et ne peuvent être partagées avec d’autres utilisateurs.

124 Talend Open Studio Copyright © 2007


Composants
tFileInputRegex

• Indiquez le chemin d’accès au fichier dans le champ File Name. Ce champ est obligatoire.
• Définissez le séparateur de lignes dans le champ Row separator afin d’identifier la fin d’une
ligne.
• Puis définissez l’expression régulière à utiliser pour délimiter les champs d’une ligne dans
Regular expression. Vous pouvez utiliser du code Perl et saisir une expression régulière
multiligne si vous en avez besoin.
• Assurez-vous d’inclure dans cette expression tous les sous-patterns des champs à extraire.
• Dans ce scénario, les champs entête (Header), pied de page (Footer) et limite (Limit) sont
ignorés.
• Sélectionnez le type de schéma local (Built-in) dans le champ Schema type.
• Vous pouvez créer ou charger un schéma via la fonction Edit Schema.
• Puis définissez les propriétés du second composant.

• Saisissez le chemin d’accès au fichier de sortie


• Saisissez le standard d’encodage dans le champ Encoding. Notez que pour l’instant, la
vérification de l’homogénéité de l’encodage d’un job n’est pas supportée.
• Sélectionnez le type de schéma dans Schema type.Dans cet exemple, le schéma est built-in,
cliquez sur Sync columns pour récupérer en sortie le schéma d’entrée.
• Passez à l’onglet Run Job, et cliquez sur Run pour exécuter le job.
Le fichier d’entrée est lu ligne à ligne puis divisé en champs délimités selon la valeur de l’expression
régulière définie. Vous pouvez ouvrir le fichier de sortie avec tout éditeur XML standard.

Copyright © 2007 Talend Open Studio 125


Composants
tFileInputRegex

126 Talend Open Studio Copyright © 2007


Composants
tDBInput

tDBInput

Propriétés de tDBInput

Famille du composant Database


Fonction tDBInput lit une base de données et en extrait des champs basés sur une requête.
Objectif tDBInput exécute une requête BDD dont l’ordre exact doit correspondre à la
définition de schéma. Puis la liste des champs est transmise au composant
suivant via un lien Row Main.
Propriétés Property type Peut être Built-in ou Repository.
Built-in: Propriétés utilisées ponctuellement.
Repository: Sélectionnez le fichier de propriétés du
composant. Les champs suivants sont alors pré-remplis
à l’aide des données collectées.
DB driver SGBD tels que MySQL, MS SQL ou PostgreSQL
Host Addresse IP du serveur de BDD.
Port Port d’écoute du serveur BDD.
Database Nom de la base de donnée
Username and Données d’authentification BDD utilisateur
Password
Schema type and Edit Un schéma est une description de ligne, i.e. il définit le
Schema nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local (built-in)
soit distant (Repository).
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans le
Repository. Il peut être réutilisé dans divers projets et
job designs. Voir également : Paramétrage d’un
schéma repository, page 43
Skip empty rows Cochez cette case pour ignorer les lignes vides.
Query Saisissez votre requête de BDD en faisant attention à
ce que l’ordre des champs corresponde à celui défini
dans le schéma.
Encoding Champ texte libre. Talend ne peut pour l’instant
vérifier l’encodage, mais cette fonction devrait être
ajoutée à l’avenir.
Utilisation Ce composant offre l’avantage de la flexibilité des requêtes de BDD et couvre
toutes les requêtes SQL possibles.

Copyright © 2007 Talend Open Studio 127


Composants
tDBInput

Scénario 1: Transformation de données de Bdd en XML

Le scénario suivant est constitué de deux composants et a pour objectif de lire les données d’une
base à l’aide d’une requête de BDD et de sortir les données délimitées ainsi sélectionnées dans un
fichier XML.

• Cliquez et déposez un composant tDBInput et tLogRow de la Palette de composants dans


l’espace de modélisation.
• Cliquez-droit sur un composant tDBInput et sélectionnez le lien Row > Main. Liez-le au
composant tLogRow.
• Sélectionnez le composant tDBInput à nouveau et dans l’onglet Properties, définissez les
paramètres du composant :

• Les informations de propriétés sont built-in pour ce job (stockées localement et non
partageables).
• Sélectionnez Mysql comme base de données.
• Renseignez les données de connexion à la base de données dans les champs Host, Port ainsi
que le nom de la base de données (Database name), nom d’utilisateur, et le mot de passe
(password).
• Le schéma est de type Built-In également.
• Cliquez sur Edit schema et créez un schéma de 2 colonnes conprenant les codes magasins
(shop code) et les ventes (sales) pour cet exemple.

128 Talend Open Studio Copyright © 2007


Composants
tDBInput

• Saisissez la requête en vous assurant qu’elle inclut toutes les colonnes dans l’ordre défini
dans le schéma. Dans cet exemple, nous pouvons utiliser le caractère astérisque car nous
souhaitons sélectionner toutes les colonnes.
• Saisissez les informations d’encodage. Et cliquez sur le second composant tLogRow, pour
le définir.
• Saisissez le séparateur de champs. Dans ce cas, utilisez une barre verticale.
• Passez à l’onglet Run Job, et cliquez sur Run pour exécuter le job.
La base de données est parsée et les données définies dans la requête sont extraites et transmises à
la console. Vous pouvez visualiser le fichier de sortie sur la console.

Scénario 2: Utilisation de StoreSQLQuery

StoreSQLQuery est un paramètre de variable qui peut être utilisé pour le débogage d’un scénario
tDBInput qui semble ne pas fonctionner correctement. Il vous permet d’alimenter dynamiquement
votre requête SQL définie dans le composant tDBInput.
• Reprenez le scénario 1 ci-dessus, et ajoutez un composant tPerl.
• Connectez le composant tDBInput au composant tPerl à l’aide d’un déclencheur Run
before, afin que l’exécution du composant tPerl commence immédiatement après la fin de
l’exécution du tDBInput.

Copyright © 2007 Talend Open Studio 129


Composants
tDBInput

• Paramétrez les deux composants tDBInput et tLogRow comme décrit dans le scénario 1.
• Cliquez dans l’espace de modélisation pour faire apparaître le panneau de propriétés de
Contexte.
• Dans la fenêtre de contexte, créez un nouveau paramètre et appelez-le exactement
StoreSQLQuery. Saisissez une valeur par défaut de 1. Cette valeur de 1 signifie que ce
paramètre est considéré exact (“true”) quand il est utilisé dans une variable globale QUERY.
• Revenez au composant tPerl et affichez ses propriétés. Saisissez la commande Print pour
afficher le contenu d’une requête et appuyez sur Ctrl+ Space pour accéder à la liste
d’autocomplétion des variables et sélectionnez la variable globale QUERY.

• Passez à l’onglet Run Job et exécutez le job.


• La requête saisie dans le composant tDBInput affiche les résultats dans la console:

130 Talend Open Studio Copyright © 2007


Composants
tMap

tMap

Propriétés de tMap

Famille du composant Processing


Fonction tMap un composant avancé qui s’intègre à Talend Open Studio
comme un plugin. Ce composant est un composant d’aiguillage et
de transformation et, pour cette raison, ne peut commencer ni
terminer un job.
Objectif tMap transforme et dirige les données à partir d’une ou de
plusieurs sources et vers une ou plusieurs destinations.
Propriétés Preview L’aperçu est un instantané des données du
Mapper. Il n’est visible que lorsque les propriétés
Mapper sont renseignées. La synchronisation de
l’aperçu ne prend effet qu’après la sauvegarde
des modifications.
Map editor Le Mapper ou tMap editor est un éditeur
graphique. Il vous permet de définir les propriétés
aiguillage et de transformation des données.
Utilisation Plusieurs utilisations sont possibles, de la simple réorganisation
des champs de données aux transformations les plus complexes,
telles que multiplexage et demultiplexage des données,
concaténation, inversion, filtrage etc...
Limitation L’utilisation du composant tMap requiert un niveau moyen de
connaissances Perl afin d’exploiter au mieux les fonctionnalités de
ce puissant composant.

Note: Pour plus d’informations, voir Mapping de données page 70.

Jeux de Scénarios

Les scénarios suivants sont des exemples d’utilisation du composant tMap.

Scénario 1 : Mapping simple


Le job décrit ci-dessous a pour objectif de lire des données d’un fichier csv stocké dans le
Repository, de rechercher des données d’un fichier de référence distant puis d’extraire des
données de ces deux fichiers en fonction de filtres et d’envoyer ces données vers le fichier de
sortie et de rejet.
• Cliquez sur File dans la Palette des composants, sélectionnez tFileInputCSV et
déposez-le dans l’espace de modélisation. Changez le libellé en Cars (véhicules), soit en
double-cliquant sur le libellé directement dans le workspace, soit via l’onglet View du
panneau Properties.

Copyright © 2007 Talend Open Studio 131


Composants
tMap

• Répétez cette opération et renommez ce second composant d’entrée en Owners


(propriétaires).
• Cliquez sur Processing dans la Palette de composants et cliquez-déposez le composant
tMap dans le workspace.
• Reliez les deux composants d’entrée, owners et cars au composant tMap et renommez
les libellés des connexions respectives.

• Les fichiers délimités Cars et Owners sont chargés et décrits en détails dans le
gestionnaire Metadata du Repository. Utilisez directement leur référence du
Repository dans Properties.
• Double-cliquez sur Cars, pour paramétrer les propriétés.

• Sélectionnez Repository dans les champs Property type et Schema type pour récupérer
les informations de propriétés stockées dans le référentiel. Le reste des champs est
automatiquement renseigné lorsque vous sélectionnez la métadonnée appropriée dans la
liste. Si vous n’avez pas créé de métadonnées liées aux informations de connexion à
votre fichier, vous pouvez aussi définir manuellement chacune des propriétés.
• Double-cliquez sur le composant Owners et définissez à nouveau les informations de
propriétés et de schéma, à l’aide des métadonnées si elles existent ou manuellement.
Pour plus d’informations concernant la création de métadonnées dans le Repository, voir
également Définition des schémas de métadonnées, page 45.

132 Talend Open Studio Copyright © 2007


Composants
tMap

• Puis double-cliquez sur le composant tMap pour ouvrir le Mapper. La zone Input
(données en entrée) est déjà renseignée avec les schémas des composants d’entrée (cars
et owners) qui sont liés au tMap.
• Notez que la première table (la plus haute dans la zone) correspond au flux principal
(Main row) du job en cours tandis que l’autre table d’entrée correspond à la table
référence (Lookup) du flux secondaire.
• Remarquez également que les libellés de chacune des connexions d’entrée apparaissent
en tête des tables.
• Créez un lien Join entre les deux tables d’entrée en faisant simplement glisser le champ
ID_Owner de la table principale vers le champ équivalent de la table de référence.

• Définissez le lien en Inner Join en cochant la case correspondante.


• Cliquez sur le signe Plus dans la zone Output (sortie) du Mapper et ajoutez trois tables
de sortie: Insured, Reject_NoInsur, Reject_Inner.

Copyright © 2007 Talend Open Studio 133


Composants
tMap

• Glissez et déposez le contenu de la table principale d’entrée vers la première table de


sortie. Pour plus d’informations concernant le mapping de données, voir Mapping de
données page 70.
• Cliquez sur la flèche dotée d’un plus pour ajouter une ligne de filtre. La table Insured
rassemble les données des tables Cars et Owners qui intègrent un ID Insurance.

134 Talend Open Studio Copyright © 2007


Composants
tMap

• Par conséquent, glissez-déposez le champ ID_Insurance vers la ligne de filtre qui vient
d’être créée et saisissez la formule suivante d’exclusion des valeurs non définies :
$Owners_data[ID_Insurance] ne ''
• La table Reject_NoInsur est un flux de rejet standard regroupant les données qui ne
satisfont pas la condition de filtre définie. Cliquez sur la flèche orange, pour définir cette
table comme table de rejet standard.

• La troisième et dernière table est une table de rejets spécifiques pour les liens Inner Join
qui ne peuvent être établis. Il s’agit par exemple du cas où un champ Owners_ID de la
table Cars ne correspond à aucune entrée du fichier Owners.

Copyright © 2007 Talend Open Studio 135


Composants
tMap

• Cliquez sur la flèche de couleur violet pour définir cette table comme table de rejet Inner
Join.
• Cliquez sur OK pour valider et revenir à l’espace de modélisation.
• Ajoutez trois composants tFileOutputDelimited au job, et reliez les au job à partir du
composant tMap à l’aide d’un lien Row>Main.
• Reutilisez les trois libellés définis précédemment dans le Mapper.

• Puis double-cliquez sur chacun des composants de sortie afin de définir les propriétés
respectives des flux de sortie (principale, rejet et rejet Inner Join). Si vous souhaitez
qu’un nouveau fichier soit créé pour contenir une sortie, parcourez votre système de
fichiers jusqu’au dossier de destination et saisissez le nom de fichier avec son extension.
• Cochez la case Include header pour réutiliser les libellés de colonne du schéma comme
ligne d’entête du fichier de sortie.

• Appuyez sur F6 pour exécuter le job ou passez à l’onglet Run Job et cliquez Run.

136 Talend Open Studio Copyright © 2007


Composants
tMap

• Le fichier de sortie est créé, et les fichiers de rejet également le cas échéant.

Scénario 2 : Mapping avancé


Ce scénario, basé sur le scénario 1, requiert l’ajoût d’un fichier d’entrée, Resellers, contenant
les informations revendeurs ainsi que des champs supplémentaires dans le fichier de sortie
principal. Deux filtres sur des connexions internes, Inner Joins, permettent de récupérer les
rejets spécifiques.
• Cliquez sur File dans la Palette de composants et déposez un composant tFileInputCSV
sur le workspace.
• Connectez ce nouveau composant au mapper, et ajoutez un libellé à cette connexion:
Resellers.

• Double-cliquez sur le composant Resellers, pour en définir les propriétés d’entrée.

Copyright © 2007 Talend Open Studio 137


Composants
tMap

• Parcourez votre système de fichier jusqu’au Resellers.csv. Editez le schéma et ajoutez


les colonnes pour refléter la structure du fichier d’entrée.

• Vous pouvez également créer une entrée de métadonnée pour conserver cette
description de fichier dans le Repository et avoir la possibilité de partager les
informations de propriétés et de schéma. Pour plus d’informations concernant la création
de métadonnées, voir Définition des schémas de métadonnées page 45.
• Double-cliquez sur le composant tMap et remarquez sur le schéma est automatiquement
ajouté à la zone des schémas d’entrée Input.

• Créez un lien Join entre le flux d’entrée principal (Row Main) et l’entrée de référence
(Lookup), Resellers. Cochez la case Inner Join pour définir le type de Join créé.

138 Talend Open Studio Copyright © 2007


Composants
tMap

• Glissez et déposez les champs de la table Resellers vers la table de sortie principale.

Note: Lorsque deux Inner Joins sont définis, vous avez la possibilité de distinguer les
deux types de rejets à condition de créer deux tables de rejet Inner Join Reject
pour les sorties respectives. Alternativement vous pouvez rassembler les deux
types de rejets dans une seule et même table de sortie.
• Dans la zone de sorties Output, cliquez sur le signe plus pour ajouter une nouvelle table
de sortie.
• Donnez un nom à cette nouvelle connexion, Reject_ResellerID.
• Cliquez sur le bouton Inner Join Reject (flèche violette) pour définir cette nouvelle sortie
en table de rejet Inner Join.
• Glissez-déposez deux champs de la table d’entrée principale (Cars) dans cette nouvelle
table. Par conséquent, dans cet exemple, si le lien Inner Join ne peut être établi pour une
entrée, les données sélectionnées (ID_Cars & ID_resellers) seront rejetées dans le
fichier de sortie approprié et permettront d’identifier rapidement le goulot
d’étranglement.

Copyright © 2007 Talend Open Studio 139


Composants
tMap

• Appliquez maintenant un filtre sur chacune des sorties d’Inner Join Reject, afin de
distinguer les deux types de rejets.
• Dans la première table de rejet (Reject_OwnerID), cliquez sur la flèche dotée d’un signe
plus, pour ajouter une ligne de filtre et renseignez ce champ avec la formule suivante
pour ne recueillir que les rejets liés au champ OwnerID non défini: not defined
$Owners_data[ID_Owner]
• Dans la seconde table de rejet Inner Join (Reject_ResellerID), renouvelez l’opération et
utilisez la formule suivante : not defined $Resellers_data[ID_Reseller]

• Cliquez sur OK pour valider et fermer le Mapper.


• Cliquez-droit sur le composant tMap, cliquez sur Row et sélectionnez
Reject_ResellerID dans la liste.
• Connectez le flux principal du Mapper vers le composant de sortie Reseller

140 Talend Open Studio Copyright © 2007


Composants
tMap

• Dans ce scénario, retirez du fichier Resellers.csv les lignes correspondant aux Reseller
ID 5 et 8.
• Puis exécutez le job via la touche F6 du clavier, ou à partir de l’onglet Run Job.

Copyright © 2007 Talend Open Studio 141


Composants
tMap

• Les quatre fichiers de sortie sont tous créés dans le dossier définis dans les Properties
des composants de sortie (Outputs).
• Remarquez que dans le fichier de sortie en rejet lié à l’Inner Join, NoResellerID.csv,
le champ ID_Owners correspond aux entrées du fichier Cars dont le Reseller ID est égal
5 et 8 tel que défini précédemment.

142 Talend Open Studio Copyright © 2007


Composants
tMap

Scénario 3 : Mapping de join en cascade


Un troisième scénario plus avancé, basé sur le scénario 2, requiert l’ajoût d’une nouvelle entrée
contenant les informations d’assurance par exemple.
Mettez en place un lien Inner Join entre les deux tables de référence (Lookup) des flux
secondaires, Owners et Insurance dans le Mapper afin de gérer les références en cascade et par
conséquent de récupérer les informations de la table Insurance via les données de la table
Owners.

Copyright © 2007 Talend Open Studio 143


Composants
tRowGenerator

tRowGenerator

Propriétés de tRowGenerator

Famille du composant Misc


Fonction tRowGenerator génère autant de lignes et de champs que vous souhaitez
alimentés par des valeurs prises de façon aléatoire dans une liste définie.
Objectif Peut être utilisé à des fins de test, pour créer un flux d’entrée dans le
cadre de jeux de tests en cas limite.
Propriétés Schema type and Un schéma est une description de ligne, i.e. il
Edit Schema définit le nombre de champs qui seront traités et
passés au composant suivant. Le schéma est soit
local (built-in) soit distant dans le Repository.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement.
Voir également : Paramétrage d’un schéma
built-in, page 43
Repository: Le schéma existe déjà et est stocké
dans le Repository. Il peut être réutilisé dans
divers projets et job design. Voir également :
Paramétrage d’un schéma repository, page 43
Number of rows Paramétrez le nombre de lignes à générer. La
valeur est de type entier.
Values tRowGenerator affecte à chaque champ une
valeur prise aléatoirement dans une liste
paramétrée.
Columns: Champs repris du schéma défini (qu’il
soit de type Built-in ou Repository)
Perl array: réunit la plage de valeurs parmi
lesquels une valeur est reprise de façon aléatoire.
Ex: 'foo', 'bar' donnera pour résultat un mélange
aléatoire de 'foo' et de 'bar'.
1..10 permet de choisir de façon aléatoire un
chiffre entre 1 et 10. Pour plus d’infos sur les
formules concises, voir les fiches de ref rapides
Perl.
Encoding Champ texte libre. Talend ne peut pour l’instant
vérifier l’encodage, mais cette fonction devrait
être ajoutée à l’avenir.
Utilisation tRowGenerator peut prendre la place d’un composant start d’un job. Il
alimente le job avec un flux de données qui peut être de toute taille ou
de toute nature.
Limitation n/a

144 Talend Open Studio Copyright © 2007


Composants
tRowGenerator

Scénario: Génération aléatoire de fichiers de test

Le scénario suivant décrit un job de deux composants, générant 50 lignes composées de deux
champs, l’un est constitué de 5 chiffres compris entre 1 et 1000, et le champ date est défini par un
mois et une année.

• Cliquez et déposez un composant tRowGenerator et tLogRow sur le workspace.


• Cliquez droit sur le composant tRowGenerator et sélectionnez le lien Row > Main. Faites
glisser ce lien jusqu’au composant tLogRow.
• Double-cliquez sur le composant tRowGenerator pour afficher le panneau Properties.
• Pour ce scénario, le schéma est de type built-in. Mais vous pouvez également créer une
entrée de métadonnées dans le Repository et charger ainsi le schéma dans les propriétés de
schéma du composant tRowGenerator de votre job.
• Cliquez sur Edit Schema pour définir les champs à générer.

• Cliquez sur OK et cliquez sur Yes pour accepter la propagation dans la table Values.
• Paramétrez le nombre de lignes à 50 pour cet exercice, dans le champ Number of rows.
• Dans la table Values, Column reprend du schéma tous les champs à générer. Dans ce
scénario, deux champs sont utilisés Code et Date.
• Dans la colonne Perl Array, saisissez la plage ou la liste de valeurs à attribuer de façon
aléatoire.
• Pour le champ défini Code, saisissez la plage de valeurs Perl telle que: '00001' .. '01000' de
sorte que des valeurs à 5 chiffres soient sélectionnées dans cette plage de façon aléatoire.

Copyright © 2007 Talend Open Studio 145


Composants
tRowGenerator

• Dans la cellule Perl Array pour le champ Date, vous pouvez utiliser une fonction Perl telle
que: sub{'2006/11/'.getRandomString(1, ['01'..'30'])}
• Mais vous avez également la possibilité d’utiliser la routine getDate pour couvrir des cas
plus complexes. Pour plus d’informations, voir Code page 12.

146 Talend Open Studio Copyright © 2007


Composants
tAggregateRow

tAggregateRow

Propriétés de tAggregateRow

Famille du composant Processing


Fonction Reçoit un flux de données, et en fait l’aggrégation basée sur une ou
plusieurs colonnes. Pour chacune des lignes en sortie, une clé
d’aggrégation et le résultat de l’opération d’ensemble appropriée (min,
max, sum...) sont fournis.
Objectif Permet d’établir des métriques et des statistiques basées sur des valeurs
ou des calculs.
Propriétés Schema type et Edit Un schéma est une description de ligne, i.e. il
Schema définit le nombre de champs qui seront traités et
passés au composant suivant. Le schéma est soit
local (built-in) soit distant dans le Repository.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement.
Voir également : Paramétrage d’un schéma
built-in, page 43
Repository: Le schéma existe déjà et est stocké
dans le Repository. Il peut être réutilisé dans
divers projets et job design. Voir également :
Paramétrage d’un schéma repository, page 43
Group by Définit les ensembles d’aggrégation, dont les
valeurs sont utilisées pour les calculs.
Output Column: Sélectionnez le libellé de
colonne dans la liste fournie basée sur la structure
de schéma que vous avez définie. Vous pouvez
ajouter autant de colonnes de sortie que vous
souhaitez afin d’affiner les aggrégations.
Ex: Sélectionnez Pays, pour calculer la moyenne
des valeurs pour chaque pays ou sélectionnez
Pays et Région pour comparer les résultats des
régions d’un pays par rapport aux régions d’un
autre pays.
Input Column: Faites la correspondance entre le
libellé des colonnes d’entrée avec ceux des
colonnes de sortie, dans le cas où vous souhaitez
que les libellés du schéma de sortie soient
différents du schéma d’entrée.
Operations Sélectionnez le type d’opération à effectuer ainsi
que la valeur à utiliser pour le calcul et le champ
de sortie.
Output Column: Sélectionnez le champ de
destination dans la liste.

Copyright © 2007 Talend Open Studio 147


Composants
tAggregateRow

Function: Sélectionnez l’opérateur parmi :


count, min, max, avg
Input column: Sélectionnez la colonne d’entrée
à partir de laquelle les valeurs sont collectées
pour l’aggrégation.
Utilisation Ce composant est un composant intermédiaire car il traite un flux de
données, par conséquent il requiert des composants en entrée comme en
sortie. Généralement, l’utilisation du composant tAggregateRow est
combinée au composant tSortRow.
Limitation n/a

Scénario: Aggrégation de valeurs et tri des données

Le scénario suivant décrit un job de quatre composants. Le composant d’entrée, un fichier délimité
csv, contient des noms de pays et des valeurs de notation à trier par ordre décroissant de moyenne.
Ce composant d’entrée est connecté à un opérateur tAggregateRow qui se charge de calculer les
moyennes puis à un composant tSortRow qui se charge du tri. Le flow de sortie est dirigé dans un
nouveau fichier csv.

• A partir de la Palette, cliquez et déposer un composant tFileInputCSV.


• Cliquez sur le libellé du composant et renommez-le en Countries. Ou passez dans l’onglet
View pour le changer.
• Dans l’onglet Properties, définissez le chemin d’accès ainsi que les critères de délimitation.
Ou sélectionnez l’entrée de métadonnée correspondant à votre fichier d’entrée, si vous en
avez défini une.
• Cliquez sur Edit schema... et paramétrez les colonnes : Countries et Points correspondant
à la structure du fichier. Si la description du fichier est conservée dans les Metadata du
Repository, le schéma est automatiquement chargé lorsque vous cliquez sur Repository
dans le champ Schema type.

148 Talend Open Studio Copyright © 2007


Composants
tAggregateRow

• Puis dans le dossier Processing de la Palette, sélectionnez un composant tAggregateRow.


Renommez-le en Calculation.
• Cliquez-droit et connectez Countries à Calculation à l’aide d’un lien Row > Main.
• Double-cliquez sur Calculation (composant tAggregateRow) pour définir les propriétés.
Cliquez sur Edit schema et définissez le schéma de sortie. Vous pouvez ajouter autant de
colonnes que vous voulez selon le nombre d’opérations d’ensemble que vous souhaitez
obtenir en sortie.

• Dans cet exemple, les calculs requis sont: moyenne de la notation par pays, valeur min et
max par pays étant donné que chaque pays possède plusieurs notes. Cliquez sur OK lorsque
le schéma est terminé.
• Définissez à présent les différentes opérations d’ensemble à effectuer. Dans le champ Group
By de la fenêtre Properties du composant tAggregateRow, définissez les ensembles sur
lesquels les opérations sont effectuées . En l’occurence, sélectionnez Country. Note : dans
la colonne de sortie, un champ clé doit être défini dans le schéma. La première colonne citée
comme de sortie (Output), dans la table Group By devient l’ensemble principal de calcul.
Toutes les autres sorties deviennent alors secondaires dans l’ordre d’affichage.
• Sélectionnez la colonne d’entrée (Input) dont sont extraites les valeurs.
• Puis renseignez les diverses opérations réalisées. Les fonctions utilisées dans cet exemple
sont moyenne (average), min, max. Sélectionnez la colonne d’entrée dont sont extraites les
valeurs de calcul.

Copyright © 2007 Talend Open Studio 149


Composants
tAggregateRow

• Cliquez et déposez un composant tSortRow dans le workspace. Pour plus d’informations


sur ce composant, voir tSortRow, page 152
• Connectez-le au composant tAggregateRow à l’aide d’un lien Row>Main.
• Dans l’onglet Properties du composant tSortRow, Définissez la colonne de tri, le type ainsi
que l’ordre de tri.

• Dans ce scénario, la colonne à trier est Country, le type de tri est alphabétique et l’ordre est
ascendant.

150 Talend Open Studio Copyright © 2007


Composants
tAggregateRow

• Ajoutez un composant de sortie à ce job. Cliquez et déposez un composant


tFileOutputDelimited et paramétrez-le.
• Connectez le composant tSortRow à ce composant de sortie.
• Dans la vue Properties, saisssez le chemin d’accès au fichier de sortie. Cliquez sur Edit
schema pour le configurer si nécessaire. Dans ce scénario, le fichier délimité est de type csv.
Cochez la case Include Header afin de réutiliser les libellés de colonnes du schéma dans le
flux de sortie.
• Appuyez sur F6 pour exécuter le job. Le fichier csv ainsi créé contient les résultats des
opérations d’aggrégation.

Copyright © 2007 Talend Open Studio 151


Composants
tSortRow

tSortRow

Propriétés de tSortRow

Famille du composant Processing


Fontion Trie les données d’entrée basées sur une ou plusieurs colonnes, selon un
type de tri et un ordre.
Objectif Permet d’établir des métriques et des tables de classification.
Propriétés Schema type et Edit Un schéma est une description de ligne, i.e. il
Schema définit le nombre de champs qui seront traités et
passés au composant suivant. Le schéma est soit
local (built-in) soit distant dans le Repository.
Cliquez sur Edit Schema pour modifier le
schéma. Notez que si vous modifiez le schéma
dans cette vue, le schéma devient
automatiquement ponctuel (built-in).
Cliquez sur Sync columns pour récupérer le
schéma à partir du composant précédent dans le
job.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement.
Voir également : Paramétrage d’un schéma
built-in, page 43
Repository: Le schéma existe déjà et est stocké
dans le Repository. Il peut être réutilisé dans
divers projets et job designs. Voir également :
Paramétrage d’un schéma repository, page 43
Criteria Cliquez sur + pour ajouter autant de lignes que
nécessaire pour mettre en place le tri. Par défaut,
la première colonne définie dans le schéma est
sélectionnée.
Schema column: Sélectionnez la colonne de
votre schéma sur laquelle vous souhaitez baser
votre tri. Notez que l’ordre est important car il
détermine la priorité de tri.
Sort type: Numérique ou Alphabetique. D’autres
types de tri sont à venir.
Order: Ordre ascendant ou descendant.
Utilisation Ce composant manipule le flux de données et par conséquent requiert un
composant en entrée et un composant en sortie. Il s’agit donc d’un
composant intermédiaire.
Limitation n/a

152 Talend Open Studio Copyright © 2007


Composants
tSortRow

Scénario: Tri de données

Le scénario suivant décrit un job constitué de trois composants. Un composant tRowGenerator est
utilisé pour créer de façon aléatoire des entrées, qui seront envoyées au composant tSortRow afin
d’être triées selon une valeur définie. Dans ce scénario, le flux d’entrée contient des noms de
vendeurs ainsi que leur volume de vente respectif et leur nombre d’années d’ancienneté dans
l’entreprise. Le résultat de l’opération de tri est affiché dans la console Run Job.

• Cliquez et déposez les trois composants requis pour ce scénario : tRowGenerator,


tSortRow et tLogRow.
• Connectez -les à l’aide de liens Row>Main.
• Dans l’onglet Properties du tRowGenerator, définissez les valeurs de création des entrées
aléatoires qui seront triées ensuite par le tSortRow. Pour plus d’informations concernant
l’utilisation du tRowGenerator, voir tRowGenerator page 144.

• Dans ce scénario, chaque vendeur est classé en fonction de la valeur de ses Ventes et du
nombre d’années dans l’entreprise.
• Double-cliquez sur tSortRow pour afficher la vue Properties.

Copyright © 2007 Talend Open Studio 153


Composants
tSortRow

• Paramétrez la priorité de tri sur la valeur des ventes, puis en critère secondaire, sur le nombre
d’années dans l’entreprise.
• Utilisez le bouton + pour ajouter le nombre de lignes de critères requis. Paramétrez le type
de tri, dans ce cas, le tri est numérique. Enfin, étant donné que la sortie est une classification,
définissez l’ordre de tri comme descendant.
• Assurez-vous que ce flux est connecté au composant de sortie tLogRow, afin d’afficher le
résultat dans la console Run Job.
• Appuyez sur F6 pour exécuter le Job ou passez sur la vue Run Job et cliquez sur Run. Le
classement est basé d’abord sur la valeur des ventes puis sur le nombre d’années
d’ancienneté.

154 Talend Open Studio Copyright © 2007


Composants
tUniqRow

tUniqRow

Propriétés de tUniqRow

Famille du composant Processing


Fonction Compare les entrées et supprime la première duplication rencontrée dans
le flux d’entrée.
Objectif Assure la qualité des données en entrée ou en sortie d’un job.
Propriétés Schema type et Edit Un schéma est une description de ligne, i.e. il
Schema définit le nombre de champs qui seront traités et
passés au composant suivant. Le schéma est soit
local (built-in) soit distant dans le Repository.
Cliquez sur Edit Schema pour modifier le
schéma. Notez que si vous modifiez le schéma
dans cette vue, le schéma devient
automatiquement ponctuel (built-in).
Cliquez sur Sync columns pour récupérer le
schéma à partir du composant précédent dans le
job.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement.
Voir également : Paramétrage d’un schéma
built-in, page 43
Repository: Le schéma existe déjà et est stocké
dans le Repository. Il peut être réutilisé dans
divers projets et job designs. Voir également :
Paramétrage d’un schéma repository, page 43
Case sensitive Cochez cette case pour prendre en compte la
casse (majuscule, minuscule).
Utilisation Ce composant manipule le flux de données et par conséquent requiert un
composant en entrée et un composant en sortie. Il s’agit donc d’un
composant intermédiaire.
Limitation n/a

Scénario: Dédoublonnage d’entrées

A partir du scénario tSortRow, ajoutez le composant tUniqRow afin de trier les entrées unifiées
dans le flux de sortie.

Copyright © 2007 Talend Open Studio 155


Composants
tUniqRow

• Dans la vue Properties du composant tUniqRow, cliquez sur Edit Schema... pour
paramétrer la clé (Key) sur le champ Names afin de dédoublonner le flux de sortie sur ce
critère.
• Cochez la case Case Sensitive pour différencier la casse.
• Appuyez sur F6 pour exécuter le job à nouveau. La console affiche les résultats
dédoublonnés et triés.

156 Talend Open Studio Copyright © 2007


Composants
tFileInputXML

tFileInputXML

Propriétés de tFileInputXML

Famille du composant File


Fonction tFileInputDelimited lit un fichier structuré et en extrait les données ligne à
ligne.
Objectif Ouvre un fichier structuré XML et le lit ligne à ligne pour le scinder en
champs et envoie les champs tels que définis dans le Schéma au composant
suivant du job, via un lien Row.
Propriétés Property type Peut être Built-in ou Repository.
Built-in: Propriétés utilisées ponctuellement.
Repository: Sélectionnez le fichier de propriétés du
composant. Les champs suivants sont alors
pré-remplis à l’aide des données collectées.
Schema type et Edit Un schéma est une description de ligne, i.e. il définit
Schema le nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local (built-in)
soit distant dans le Repository.
Cliquez sur Edit Schema pour modifier le schéma.
Notez que si vous modifiez le schéma dans cette vue,
le schéma devient automatiquement ponctuel
(built-in).
Cliquez sur Sync columns pour récupérer le schéma
à partir du composant précédent dans le job.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans
le Repository. Il peut être réutilisé dans divers projets
et job design. Voir également : Paramétrage d’un
schéma repository, page 43
File Name Nom du fichier à traiter.
Voir également :Variables et alias, page 87
Loop XPath query Noeud de l’arborescence sur lequel la boucle est
basée.
Mapping Column: Colonnes à mapper. Elles reflètent le
column/XPath Query schéma défini par le champ Schema type
XPath Query: Saisissez les champs à extraire de
l’entrée structurée.
Limit Nombre de ligne maximum à traiter. Si Limit = 0,
aucune ligne n’est lue ni traitée.

Copyright © 2007 Talend Open Studio 157


Composants
tFileInputXML

Encoding Champ texte libre. Talend ne peut pour l’instant


vérifier l’encodage, mais cette fonction devrait être
ajoutée à l’avenir.
Limitation n/a

Scénario: Extraction d’adresses XML

Ce scénario très basique est constitué de deux composants. Un composant tFileInputXML extrait
des données du fichier xml répertoriant des adresses et le résultat de cette opération est affiché dans
la console Run Job via le composant tLogRow.

• Sélectionnez un composant tFileInputXML dans le dossier File de la Palette. Cliquez et


déposez également un composant tLogRow et connectez les deux composants à l’aide d’un
lien Row>Main.
• Dans la vue Properties du composant tFileInputXML, définissez les paramètres:

158 Talend Open Studio Copyright © 2007


Composants
tFileInputXML

• Le fichier XML contenant les adresses a été préalablement défini dans la zone Metadata, par
conséquent récupérez ses propriétés en sélectionnant Repository dans Property type. Pour
plus d’informations sur la création de métadonnées, voir Définition des schémas de
métadonnées page 45.
• De la même manière, sélectionnez le schéma approprié dans la liste de métadonnées du
Repository. Cliquez sur Edit schema si vous souhaitez apporter des modifications au
schéma chargé. Notez que dans ce cas, le schéma est redéfini en built-in.
• Dans le champ Filename, indiquez le fichier structuré d’entrée.
• Dans le champ Loop XPath query, modifiez le noeud de boucle si nécessaire.
• Dans la table de Mapping, renseignez les champs à extraire et à afficher dans la sortie.
• Si le fichier est volumineux, paramétrez une limite (Limit) de lignes à traiter.
• Saisissez les informations d’Encoding si nécessaire. puis double-cliquez sur tLogRow pour
définir le caractère séparateur.
• Puis appuyez sur F6 ou cliquez sur Run dans la vue Run Job pour exécuter le job. Dans la
console, les champs définis sont extraits du fichier XML structuré et sont affichés.

Copyright © 2007 Talend Open Studio 159


Composants
tCatcher, tWarn & tDie

tCatcher, tWarn & tDie

Les deux composants tDie et tWarn sont étroitement liés au tCatcher. L’un comme l’autre sont
généralement utilisés avec un tCatcher afin de collecter les données de traitement, les encapsuler et les
transmettre au composant suivant.

160 Talend Open Studio Copyright © 2007


Composants
tCatcher, tWarn & tDie

Propriétés de tCatcher

Famille du composant Log/Error


Fonction Récupère les champs définis ainsi que les messages provenant d’un PerlDie,
tDie et/ou tWarn et transfère ces informations au composant suivant.
Objectif Fonctionne comme un outil de log qui est déclenché un PerlDie, tDie ou un
tWarn, pour collecter et transférer les données de log.
Schema type et Edit Un schéma est une description de ligne, i.e. il définit
Schema le nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local (built-in)
soit distant dans le Repository.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans
le Repository. Il peut être réutilisé dans divers projets
et job design. Voir également : Paramétrage d’un
schéma repository, page 43.
Catch PerlDie Cochez cette case pour déclencher la fonction tCatch
lorsqu’un PerlDie se produit dans le job.
Catch tDie Cochez cette case pour déclencher la fonction tCatch
lorsqu’un tDie est appelé dans un job.
Catch tWarn Cochez cette case pour déclencher la fonction tCatch
lorsqu’un tWarn est appelé dans un job.
Utilisation Ce composant est le composant start d’un job secondaire qui se déclenche
automatiquement à la fin d’un job principal.
Limitation n/a

Propriétés de tWarn

Famille du composant Log/Error


Fonction Fournit un message d’avertissement , avec niveau de priorité, au composant
suivant
Objectif Déclenche un avertissement généralement récupéré par le composant
tCatcher pour composer un fichier log exhaustif.
Warn message Saisissez un message d’avertissement
Priority Paramétrez le niveau de priorité sous la forme d’un
entier.
Utilisation Ne peut être utilisé comme composant start. Si un composant est connnecté en
sortie, un composant d’entrée doit nécessairement être connecté également.
Limitation n/a

Copyright © 2007 Talend Open Studio 161


Composants
tCatcher, tWarn & tDie

Propriétés de tDie

Famille du composant Log/Error


Fonction Tue le job courant. Généralement utilisé aux côtés d’un tCatch afin de notifier
la fin anormale du job.
Objectif Déclenche le composant tCatcher pour composer un fichier de log exhaustif
avant de tuer le job..
Die message Saisissez le message à transmettre avant que le job ne
soit tué.
Error code Saisissez le code d’erreur si nécessaire, sous la forme
d’un entier
Priority Paramétrez le niveau de priorité sous la forme d’un
entier
Utilisation Ne peut pas être utilisé comme un composant start
Limitation n/a

Scénario1: warning & log sur un flux entrant

Dans ce scénario simple constitué de trois composants, un tRowGenerator crée des entrées de
façon aléatoire (id à incrémenter). Le flux d’entrée rencontre un composant tWarn qui déclenche
le sous-job tCatcher. Ce sous-job récupère le message d’avertissement ainsi que l’information
standard de log prédéfinie et transfère ces informations au composant tLogRow pour un affichage
rapide de données de log.

• Cliquez et déposez un tRowGenerator, un tWarn, un tCatch et un tLogRow de la Palette


vers votre workspace
• Connectez les composants tRowGenerator et tWarn.
• Connectez séparément les composants tCatcher et tLogRow.
• Dans la vue Properties du composant tRowGenerator, paramétrez la création aléatoire
d’entrées à l’aide d’une fonction Perl basique:

162 Talend Open Studio Copyright © 2007


Composants
tCatcher, tWarn & tDie

• Dans la vue Properties du tWarn, saisissez votre message de notification et le niveau de


priorité. Pour ce scénario, le message dit simplement : “this is a warning”.
• Une fonction Perl concaténée au message ci-dessus permet de collecter la première valeur
de la table d’entrée.

• Dans la vue Properties du tCatcher, cochez la case tWarn afin que le message paramétré
dans ce composant soit récupéré dans le sous-job.
• Cliquez sur Edit Schema pour visualiser le schéma utilisé en sortie.

Exécutez lejob et remarquez que le fichier de log est complet.

Copyright © 2007 Talend Open Studio 163


Composants
tCatcher, tWarn & tDie

Scénario 2: log & kill un job

Ce scénario utilise les composants tCatcher et tDie. Un composant tRowGenerator est connecté
à un composant de sortie tFileOutputDelimited à l’aide d’un lien Row. En cas d’erreur, le
composant tDie déclenche le sous-job du tcatcher qui affiche le contenu de la log dans la sortie
standard (Run Job).

• Cliquez et déposez tous les composants requis des divers répertoires de la Palette:
tRowGenerator, tFileOutputDelimited, tDie, tCatcher, tLogRow.
• Dans la vue Properties du tRowGenerator, définissez le paramétrage des colonnes en
entrée à traiter.

• Cliquez sur Edit schema et définissez les colonnes comme suit afin de créer des échantillons
aléatoires de données à traiter : id, name, quantity, flag et creation.
• Paramétrez le nombre de lignes (Number of rows) sur 0. Cela constituera l’erreur sur
laquelle est basé le déclenchement du tDie.
• Dans le tableau Values, définissez les fonctions Perl, dans le champ Perl array, qui
permettront d’alimenter le flux d’entrée.

164 Talend Open Studio Copyright © 2007


Composants
tCatcher, tWarn & tDie

• Configurez le composant tFileOutputDelimited. La connexion Row partant du


tRowGenerator alimente automatiquement le schéma en sortie. Le séparateur est un simple
point-virgule.
• Connectez ce composant de sortie au tDie à l’aide d’un lien Trigger > If. Double-cliquez
sur la connexion nouvellement créée pour définir la condition:
$_globals{tRowGenerator_1}{NB_LINE} <= 0
• Puis double-cliquez sur le tDie pour configurer ses propriétés.

• Saisissez le message Die à transmettre au tCatcher avant que l’opération kill soit exécutée.
• Séparément, cliquez et déposez un composant tCatcher et connectez-le à un composant
tLogRow.
• Définissez les propriétés du tCatcher. Assurez-vous que la case tDie est cochée afin
d’ajouter le message Die à l’information complète de log qui sera transmise au composant
final.

• Appuyez sur F6 pour exécuter le job et remarquez que la log est composé d’un message
rouge et d’un message noir.

Copyright © 2007 Talend Open Studio 165


Composants
tCatcher, tWarn & tDie

• L’information de log de couleur noire provient du tDie et est transmise par le composant
tCatcher. Le message en rouge est le message standard d’un PerlDie qui s’affiche
habituellement lorsqu’un job se finit de façon anormale.

166 Talend Open Studio Copyright © 2007


Composants
tDBOutput

tDBOutput

Propriétés de tDBOutput

Famille du composant Database


Fonction tDBOutput écrit, modifie ou supprime les entrées de base de données.
Objectif tDBOutput exécute l’action définie sur la table et/ou sur les données d’une
table.
Propriétés Property type Peut être Built-in ou Repository.
Built-in: Propriétés utilisées ponctuellement.
Repository: Sélectionnez le fichier de propriétés du
composant. Les champs suivants sont alors
pré-remplis à l’aide des données collectées.
Database driver SGBD disponibles incluent MySQL, MS SQL et
PostgreSQL.
Host Adresse IP du serveur de base de données
Port Numéro de port d’écoute du serveur BDD.
Database Nom de la base de données
Username et Données d’authentification d’utilisateur BDD.
Password
Table Nom de la table à écrire. Notez qu’une seule table
peut être écrite à la fois.
Action on table Vous pouvez effectuer les opérations suivantes sur la
table définie ;
None: Aucune opération sur la table
Drop and create the table: Supprime la table et la
crée à nouveau
Create a table: La table n’existe pas et doit être créée.
Clear a table: Le contenu de la table est supprimé
Action on data Vous pouvez effectuer les opérations suivantes sur les
données de la table sélectionnée :
Insert: Ajoute de nouvelles entrées de table. Si des
doublons sont détectés, le job s’arrête.
Update: Met à jour les entrées existantes
Insert or update: Ajoute des entrées ou met à jour les
entrées existantes.
Update or insert: Met à jour les entrées existantes ou
en crée si elles n’existent pas.
Delete: Supprime les entrées correspondantes au flux
d’entrée.

Copyright © 2007 Talend Open Studio 167


Composants
tDBOutput

Schema type et Edit Un schéma est une description de ligne, i.e. il définit
Schema le nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local (built-in)
soit distant dans le Repository.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans
le Repository. Il peut être réutilisé dans divers projets
et job designs. Voir également : Paramétrage d’un
schéma repository, page 43.
Encoding Champ texte libre. L’encodage n’est pour l’instant pas
vérifié, mais cette fonction devrait être ajoutée à
l’avenir.
Utilisation Ce composant offre la flexibilité .des requêtes de base de données et couvre
toutes les possibilités de requête SQL.

Scénario: Affichage d’une sortie DB

Le scénario suivant constitué de trois composants a pour objectif de créer une nouvelle table dans
une base de données définie et de la renseigner avec des données. Le composant
tFileInputdelimited transmet le flux d’entrée au composant tDBoutput. Le contenu de la base de
données n’étant pas visualisable facilement, un composant tLogRow permet d’afficher le contenu
du flux principal dans la console Run Job.

• Cliquez et déposez les trois composants nécessaire pour ce job.


• Dans la vue Properties du composant tFileInputDelimited, définissez les paramètres du
flux d’entrée. Dans ce scénario, le fichier contient des identifiants de propriétaires de
véhicules, la marque, la couleur et les références d’immatriculation qui s’organisent comme
suit: un point-virgule comme séparateur de champ, un retour chariot comme séparateur de
ligne. Le fichier d’entrée contient une ligne d’en-tête à prendre en compte dans le schéma.
Si ce fichier est déjà décrit dans les métadonnées (Metadata) du Repository, vous pouvez
retrouver facilement ses propriétés en sélectionnant l’élément approprié dans la liste.

168 Talend Open Studio Copyright © 2007


Composants
tDBOutput

• Et de la même façon, si votre schéma est déjà chargé dans le Repository, sélectionnez
Repository dans le champ Schema type puis l’entrée de métadonnées appropriée. Dans le
cas contraire, définissez manuellement le schéma built-in.
• Limitez l’extraction à 10 lignes, pour cet exemple.
• Puis configurez un composant tDBOutput pour définir le flux de sortie. Sélectionnez la base
de données de sortie. Notez que vous pouvez conserver les informations de connexion à la
base de données dans différentes variables de contexte. Pour plus d’information sur la
création et l’utilisation des variables de contexte, voir Définition d’un contexte et de
variables de job page 85.

• Renseignez le nom de la table dans le champ Table. Puis sélectionnez les opérations à
effectuer :

Copyright © 2007 Talend Open Studio 169


Composants
tDBOutput

• Dans le champ Action on table, sélectionnez Drop and create table dans la liste. Cette
action permet d’écraser une table existante avec la nouvelle table. Alternativement, vous
pouvez ignorer cette étape et n’insérer que les nouvelles lignes dans la table existante à l’aide
d’une Action on data, mais notez que la gestion des doublons n’est pas gérée nativement
dans ce composant. Voir tUniqRow, page 155 pour plus d’information.
• Dans le champ Action on data, sélectionnez Insert. Le flux de données entrant est ainsi
ajouté à la table nouvellement créé.
• Pour visualiser le flux de sortie facilement, connectez le composant DBOuput au composant
tLogRow. Définissez le séparateur de champ, dans ce scénario, utilisez la barre verticale.
• Appuyez sur F6 pour exécuter le job.
• Etant donné que le traitement peut prendre un peu de temps, nous vous recommandons
d’activer la fonction Statistics dans la console Run Job.

170 Talend Open Studio Copyright © 2007


Composants
tFileInputMail

tFileInputMail

Propriétés de tFileInputMail

Famille du composant File


Fonction Lit l’en-tête et le contenu d’un fichier email défini
Objectif Permet d’extraire les données clé standard des emails.
Propriétés File name Entrez le fichier email source
Schema type et Edit Un schéma est une description de ligne, i.e. il
Schema définit le nombre de champs qui seront traités et
passés au composant suivant. Le schéma est soit
local (built-in) soit distant dans le Repository.
Cliquez sur Edit Schema pour modifier le
schéma. Notez que si vous modifiez le schéma
dans cette vue, le schéma devient
automatiquement ponctuel (built-in).
Cliquez sur Sync columns pour récupérer le
schéma à partir du composant précédent dans le
job.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement.
Voir également : Paramétrage d’un schéma
built-in, page 43
Repository: Le schéma existe déjà et est stocké
dans le Repository. Il peut être réutilisé dans
divers projets et job designs. Voir également :
Paramétrage d’un schéma repository, page 43
Mail parts Column: Ce champ est automatiquement
renseigné avec les colonnes définies dans le
schéma que vous avez propagé.
Mail part: Saisissez l’étiquette d’en-tête ou de
corps de message à afficher dans la sortie.
Utilisation Ce composant traite un flux de données et par conséquent requiert un
composant d’entrée et de sortie.
Limitation n/a

Scénario: Extraction des champs clé d’un email

Ce scénario constitué de deux composants a pour objectif d’extraire certains champs clé et d’en
afficher les valeurs dans la console Run Job.

Copyright © 2007 Talend Open Studio 171


Composants
tFileInputMail

• Cliquez et déposez les composants tFileInputMail et tLogRow


• Dans la vue Properties, définissez les paramètres d’email :

• Entrez le fichier email à traiter. Définissez le schéma en incluant toutes les colonnes que vous
souhaitez retrouver dans le flux de sortie.
• Une fois que le schéma est défini, cliquez sur OK pour le propager dans le tableau Mail
parts
• Dans la colonne Mail part du tableau, saisissez les clés standard des parties header (en-tête)
et body (corps de message) qui seront utilisées pour retrouver les valeurs à envoyer en sortie.
• Définissez le composant tLogRow afin que les valeurs affichées soient séparées par un
retour chariot. Sous Windows, saisissez \n entre double apostrophes.
• Appuyez sur F6 pour exécuter le job et afficher le flux en sortie dans la console d’exécution.

172 Talend Open Studio Copyright © 2007


Composants
tFileInputMail

Les valeurs clés d’en-tête sont extraites comme spécifié dans le tableau Mail parts. En effet
l’auteur, le sujet, la date de réception et le nombre de lignes sont affichés.

Copyright © 2007 Talend Open Studio 173


Composants
tFileOutputLDIF

tFileOutputLDIF

Propriétés de tFileOutputLDIF

Famille du composant File


Fonction tFileOutputLDIF extrait des données vers un fichier LDIF qui peut ensuite
être chargé dans un annuaire LDAP.
Objectif tFileOutputLDIF écrit ou modifie un fichier LDIF avec des données
délimitées en entrées selon le schéma défini. Peut également supprimer le
contenu d’un fichier LDIF.
Propriétés File name Nom ou chemin d’accès au fichier de sortie. Voir
également: Variables and aliases, page 82
Wrap Place un retour à la ligne après le nombre de
caractères défini.
Change type Sélectionnez Add, Modify ou Delete pour
respectivement créer un nouveau fichier LDIF,
modifier ou supprimer un fichier LDIF. En cas de
modification, paramétrez le type de modification
apportée.
Change on attributes Sélectionnez Add, Modify ou Delete pour
respectivement ajouter un nouvel attribut au fichier,
remplacer les attributs existants ou supprimer les
attributs d’un fichier défini.
Schema type et Edit Un schéma est une description de ligne, i.e. il définit
Schema le nombre de champs qui seront traités et passés au
composant suivant. Le schéma est soit local (built-in)
soit distant dans le Repository.
Built-in: Le schéma sera créé et conservé
ponctuellement pour ce composant seulement. Voir
également : Paramétrage d’un schéma built-in, page
43
Repository: Le schéma existe déjà et est stocké dans
le Repository. Il peut être réutilisé dans divers projets
et job designs. Voir également : Paramétrage d’un
schéma repository, page 43
Sync columns Cliquez pour synchroniser le schéma du fichier de
sortie avec le schéma du fichier d’entrée. La fonction
Sync n’apparaît qu’une fois la connexion Row mise
en place entre les composants d’entrée et de sortie.
Encoding Champ texte libre. Talend ne peut pour l’instant
vérifier l’encodage, mais cette fonction devrait être
ajoutée à l’avenir.
Utilisation Utilisez ce composant pour écrire un fichier XML à l’aide les données
provenant d’autres composants liés par connexion Row.

174 Talend Open Studio Copyright © 2007


Composants
tFileOutputLDIF

Scénario: Ecriture de données dans un fichier LDIF

Ce job très simple est constitué de deux composants, et a pour objectif d’extraire les données d’une
table de base de données puis écrit les données dans un fichier LDIF de sortie.

• Cliquez et déposez les composants tDBInput et tFileOutputLDIF de la Palette vers


l’espace de modélisation. Connectez les deux composants à l’aide d’un lien Row > Main.
• Sélectionnez un composant tDBInput, et dans la vue Properties cliquez sur l’onglet
Properties.
• Si vous conservez les informations de connexion à votre base de données dans la zone
Metadata du référentiel, sélectionnez Repository dans le champ Property type. De même
sélectionnez le schéma de métadonnée correspondant si votre schéma est également stocké
dans le Repository. Tous les paramètres de connexion comme de schéma sont ainsi
récupérés.

• Alternativement, sélectionnez Built-in dans les champs Property type et Schema type et
définissez manuellement votre connexion DB et les informations de schéma.
• Puis double-cliquez sur tFileOutpuLDIF et configurez ses Properties.
• Entrez le nom ou chemin d’accès au fichier LDIF. S’il n’existe pas, le job se chargera de le
créer.
• Dans le champ Wrap, saisissez le nombre de caractères contenus sur une ligne. Les
caractères qui suivent seront ensuite automatiquement placés sur la ligne suivante.

Copyright © 2007 Talend Open Studio 175


Composants
tFileOutputLDIF

• Sélectionnez Add dans le champ Change Type puisque, par définition, un fichier
nouvellement créé est vide. Dans le cas d’une modification, vous devrez définir la nature de
la modification que vous souhaitez effectuer dans le fichier.
• Dans le champ Schema Type, sélectionnez Built-in et cliquez sur Sync Columns pour
récupérer la définition du schéma d’entrée.
• Appuyez sur F6 pour exécuter le job.

Le fichier LDIF créé comporte les données de la table de base de données et le type de changement
effectué sur le fichier est, dans ce cas, défini comme: addition.

176 Talend Open Studio Copyright © 2007


Composants
tStatCatcher

tStatCatcher

Propriétés de tStatCatcher

Famille du composant Log/Error


Fonction Basé sur un schéma standard prédéfini, ce composant collecte les
métadonnées de traitement du job, au niveau de ce job mais également au
niveau de chacun des composants utilisés.
Objectif Fonctionne comme un outil de log déclenché par l’activation de l’option
StatsCatcher Statistics dans chacun des composants utilisés dans le job, puis
collecte et tranfère ces données de log standard vers la sortie spécifiée.
Schema type Un schéma est une description de ligne, i.e. il définit
le nombre de champs qui seront traités et passés au
composant suivant. Dans ce cas particulier, le
schéma est en lecture seule car l’information
collectée est standard et comprend :
Moment: Date et heure de traitement
Pid: Identifiant système du job
Job:Nom du job courant
Context: Nom du contexte actif
Origin:Nom du composant le cas échéant
Message: Begin (début) ou End (fin).
Utilisation Ce composant est le composant start d’un job secondaire qui se déclenche
automatiquement à la fin du job principal. Le temps de traitement est
également affiché à la fin du fichier de log.
Limitation n/a

Scénario: Affichage des informations de log d’un job

Ce scénario est constitué de quatre composants, et a pour objectif d’afficher dans la console Run
Job les informations de log standard collectées par le composant tStatCatcher lors de la génération
d’un fichier.

Copyright © 2007 Talend Open Studio 177


Composants
tStatCatcher

• Cliquez et déposez les composants nécessaires : tRowGenerator, tFileOutputDelimited,


tStatCatcher et tLogRow
• Dans la vue Properties du composant tRowGenerator, configurez les données à générer de
façon aléatoire. Pour ce job, le schéma est composé de trois colonnes : ID_Owners,
Name_Customer et ID_Insurance, dont les données sont générées à l’aide d’un script Perl.

• Le nombre de lignes est restreinte à 100.


• Cliquez sur l’onglet Main de la vue Properties.

• Et cochez la case tStatCatcher Statistics pour activer l’opération de collecte d’informations


de log.

178 Talend Open Studio Copyright © 2007


Composants
tStatCatcher

• Puis définissez les propriétés du composant de sortie. Dans la vue Properties du composant
tFileOutputDelimited, parcourez votre système jusqu’au fichier ou saisissez le nom du
fichier à créer. Configurez les séparateurs et l’encoding.
• Cliquez sur Edit schema et assurez-vous que le schéma de sortie correspond au schéma
d’entrée. Si nécessaire, cliquez sur Sync Columns.
• Puis cliquez sur l’onglet Main de la vue Properties, et cochez également la case
tStatCatcher Statistics pour activer la collecte d’informations de log.
• Dans le job secondaire, double-cliquez sur le composant tStatCatcher. Notez que les
informations Properties sont en lecture seule et sont fournies pour information seulement.

• Définissez ensuite le composant tLogRow, notamment le séparateur à afficher dans la


console.
• Enfin, appuyez sur F6 pour exécuter le job et afficher les résultats de log.

Le fichier de log affiche les informations de début (Begin) et de fin (End) du job lui-même ainsi que
chaque composant utilisé.

Copyright © 2007 Talend Open Studio 179


Composants
tRunJob

tRunJob

Propriétés de RunJob

Famille du composant System


Fonction Exécute le job appelé dans les propriétés du composant, dans le contexte
spécifié.
Objectif tRunJob permet de contrôler les systèmes complexes notamment lors de
l’exécution de jobs successive.
Propriétés Process Sélectionnez le job à appeler et traiter.
Assurez-vous que le job appelé a déjà été exécuté
une fois afin de s’assurer que l’exécution via le
tRunJob s’effectue parfaitement.
Context Si vous avez défini des contextes et des variables
pour le job appelé, sélectionnez l’entrée
appropriée dans la liste.
Utilisation Ce composant peut être utilisé comme job autonome et permet de
simplifier la gestion de sous-job dans une implémentation complexe.
Limitation n/a

Scénario: Exécution d’un job distant

Ce scénario est particulier dans le fait qu’il est constitué de deux jobs, un job appelé et un job
appelant. Le job appelé lit un fichier delimité basique et en affiche le contenu dans la sortie standard
Run Job. Le job appelant est constitué d’un seul composant, tRunJob, et utilise une variable de
contexte variable pour afficher un message de confirmation préalable à l’éxécution.

Créez d’abord le job appelé.


• Cliquez et déposez les composants tFileInputDelimited et tLogRow dans l’espace de
modélisation.
• Paramétrez le composant d’entrée, dans la vue Properties.
• Le champ Property type est défini sur Built-In pour ce job.

180 Talend Open Studio Copyright © 2007


Composants
tRunJob

• Dans le champ File Name, parcourez votre système jusqu’au fichier d’entrée. Dans cet
exemple, le fichier d’entrée est de type texte et se nomme Comprehensive.
• Sélectionnez ce File Name, et appuyez sur F5 pour ouvrir la fenêtre de configuration des
variables.
• Saisissez un nom pour la nouvelle variable de contexte, par exemple, File.

• Inutile de cocher la case Prompt for value ni d’écrire un message pour ce cas car la valeur
par défaut est celle qui sera utilisée.

Copyright © 2007 Talend Open Studio 181


Composants
tRunJob

• Cliquez sur Finish pour valider et appuyez à nouveau sur la touche Entrée pour valider la
mise en variable du champ File Name.
• De retour dans la vue Properties, saisissez les séparateurs de champ et de ligne utilisés dans
le fichier d’entrée.
• Dans ce cas d’utilisation, aucun header ni footer n’est requis. Néanmoins limitez le nombre
de lignes à traiter, dans le champ Limit, à 50.
• Dans le champ Schema type, sélectionnez Built-in pour ce scénario. Configurez le schéma
manuellement.
• Ajoutez deux colonnes et attribuez-leur un libellé selon le nom des colonnes de votre fichier
d’entrée. Dans cet exemple, ID et Registration.
• Si vous conservez votre schéma dans le Repository, sélectionnez simplement l’entrée de
métadonnées correspondant à la structure de votre fichier d’entrée.
• Puis reliez le composant d’entrée au composant de sortie, tLogRow.
Créez ensuite le job appelant qui jouera le rôle de master job.
• Dans la vue Properties du composant tRunJob, sélectionnez le job à exécuter.
• Nous vous recommandons d’exécuter au moins une fois, au préalable, le job appelé avant de
l’exécuter via le tRunJob.

• Dans le champ Context, sélectionnez le contexte approprié. Dans ce scénario, seul le


contexte Default est disponible, il contient la variable créée précédemment.
• Sauvegarder le master job puis appuyez sur F6 pour l’exécuter.

182 Talend Open Studio Copyright © 2007


Composants
tRunJob

Le job appelé lit les données contenues dans le fichier d’entrée et la console Run Job en affiche
directement les résultats.

Copyright © 2007 Talend Open Studio 183


Composants
tRunJob

184 Talend Open Studio Copyright © 2007


A
Activation .................................................................................................................................84
Appearance ..............................................................................................................................27

B
Breakpoint ................................................................................................................................92
Business Model ............................................................................................................12, 19, 20
Arranger .............................................................................................................................26
Ouvrir .................................................................................................................................20
Business Modeler .....................................................................................................................21
Business Models
Créer ...................................................................................................................................20

C
Code .........................................................................................................................................12
Code Viewer ............................................................................................................................17
Vue .....................................................................................................................................18
Code viewer .............................................................................................................................18
Component ...............................................................................................................................33
Composant .........................................................................................................................33, 95
Activer ...............................................................................................................................40
Start ....................................................................................................................................44
Connexion ................................................................................................................................36
Iterate .................................................................................................................................38
Lookup ...............................................................................................................................36
Main ...................................................................................................................................36
Output ................................................................................................................................36
Row ....................................................................................................................................36
Contexte .....................................................................................................................86, 90, 180
Configuration .....................................................................................................................86
Corbeille .............................................................................................................................14, 30

D
Database
tDBOutput ........................................................................................................................167
Debug mode .............................................................................................................................92
Déclencheur .............................................................................................................................39
Delimited .................................................................................................................................49
Désactivation ...........................................................................................................................84
Documentation .........................................................................................................................13

E
Edit Schema .............................................................................................................................43
Exécution d’un Job ..................................................................................................................14
Expression régulière ................................................................................................................60

Copyright © 2007 Talend Open Studio i


F
File
tFileInputMail ..................................................................................................................171
tFileInputXML .................................................................................................................157
tFileOutputLDIF ..............................................................................................................174
File XML
Loop limit ..........................................................................................................................66
FilePositional ...........................................................................................................................55
Forme .......................................................................................................................................22

G
Generation language ..................................................................................................................6
Grid ..........................................................................................................................................26

I
Iterate .......................................................................................................................................38

J
Job
Designer .............................................................................................................................33
Exécuter .......................................................................................................................89, 90
Job Design ..........................................................................................................................31, 32
Job design ................................................................................................................................12
Job script
Exportation .........................................................................................................................92

L
LDIFfile ...................................................................................................................................61
Lien ..........................................................................................................................................23
Log/error
tCatcher ............................................................................................................................160
tDie ...................................................................................................................................160
tStatCatcher ......................................................................................................................177
tWarn ...............................................................................................................................160
Logs
Vue .....................................................................................................................................14
Lookup .....................................................................................................................................37

M
Main .........................................................................................................................................30
Metadata .............................................................................................................................13, 45
Db Connection ...................................................................................................................46
File delimited .....................................................................................................................49
File positional ....................................................................................................................56
File regex ...............................................................................................................59, 61, 64

ii Talend Open Studio Copyright © 2007


Métadonnées ........................................................................................13, 46, 49, 56, 59, 61, 64
Schéma
FileDelimited 49
Schema FileLDIF ...............................................................................................................61
Schéma FilePositional ........................................................................................................55
Schema FileXML ...............................................................................................................63
Mode
Debug .................................................................................................................................92
Model
Affecter ..............................................................................................................................29
Commenter .........................................................................................................................25
Copier .................................................................................................................................30
Déplacer .............................................................................................................................30
Réarranger ..........................................................................................................................25
Sauvegarder .......................................................................................................................30
Supprimer ...........................................................................................................................30
Modeler ....................................................................................................................................21
Multiple Input/Output ..............................................................................................................39

O
Objet .........................................................................................................................................22
Onglet
Appearance ........................................................................................................................27
Code Viewer ................................................................................................................17, 18
Logs ...................................................................................................................................14
Outline .........................................................................................................................17, 18
Properties ...........................................................................................................................14
Scheduler ...........................................................................................................................17
Outline ...............................................................................................................................17, 18
View ...................................................................................................................................17
Vue .....................................................................................................................................18
Output ......................................................................................................................................38

P
Palette .....................................................................................................................14, 22, 25, 34
Note ....................................................................................................................................25
Note attachment .................................................................................................................25
Select ..................................................................................................................................25
Zoom ..................................................................................................................................25
Processing
tSortRow ..........................................................................................................................152
tUniqRow .........................................................................................................................155
Projet
Nom technique .....................................................................................................................6
Properties ...........................................................................................................................22, 26

Copyright © 2007 Talend Open Studio iii


Main ...................................................................................................................................30
Onglet .................................................................................................................................14
Vue .....................................................................................................................................14
Propriétés ...............................................................................................................14, 22, 26, 30
Comment ............................................................................................................................42
Properties ...........................................................................................................................42
Rulers & Grid .....................................................................................................................26
View ...................................................................................................................................40

R
Recycle bin ........................................................................................................................14, 30
Référentiel ........................................................................................................4, 5, 8, 11, 19, 31
Refresh .......................................................................................................................................5
Regular Expressions ................................................................................................................60
Relationship .............................................................................................................................23
Repository ........................................................................................................4, 5, 8, 11, 19, 31
Requête
SQLBuilder ........................................................................................................................67
Routine .....................................................................................................................................12
Row ..........................................................................................................................................36
Main ...................................................................................................................................36
Rulers .......................................................................................................................................26
Run Job ........................................................................................................................14, 89, 90

S
Scheduler .................................................................................................................................17
Schéma
Built-in ...............................................................................................................................44
Schéma de métadonnées ..........................................................................................................45
Shape ........................................................................................................................................22
SQLBuilder ..............................................................................................................................67
Start ..........................................................................................................................................44
Statistics ...................................................................................................................................90
StoreSQLQuery .....................................................................................................................129
Sync columns ...........................................................................................................................43
System
tRunJob ............................................................................................................................180

T
Table d’Affectation ..................................................................................................................29
Technical name ..........................................................................................................................6
tMapper ....................................................................................................................................39
Traces .......................................................................................................................................92
Trigger
Run After ...........................................................................................................................39

iv Talend Open Studio Copyright © 2007


Run Before .........................................................................................................................39
Run if .................................................................................................................................39
Run if Error ........................................................................................................................39
Run if OK ...........................................................................................................................39

V
Variable ..................................................................................................................................180
StoreSQLQuery ...............................................................................................................129
Vue
Appearance ........................................................................................................................27

W
Workspace ...............................................................................................................................14

X
XMLFile ..................................................................................................................................63

Copyright © 2007 Talend Open Studio v


vi Talend Open Studio Copyright © 2007