tConvertType - 6.1

Composants Talend Open Studio Guide de référence

EnrichVersion
6.1
EnrichProdName
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Fonction

Le composant tConvertType permet d'effectuer des conversions spécifiques du type de données Java vers un autre type de données Talend au cours de l'exécution.

Objectif

Le composant tConvertType permet de convertir automatiquement des données de type Java vers un autre type utilisé par Talend, ce qui permet d'éviter les erreurs de compilation.

Propriétés du tConvertType

Famille de composant

Processing

 

Basic settings

Schema et Edit Schema

Un schéma est une description de lignes, il définit le nombre de champs (colonnes) qui sont 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. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir le schéma.

  • Change to Built-In property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, sélectionnez No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre [Repository Content].

 

 

Built-In : Le schéma est créé et conservé ponctuellement pour ce composant seulement. Voir également le Guide utilisateur du Studio Talend.

 

 

Repository : Le schéma existe déjà et il est stocké dans le Repository. Ainsi, il peut être réutilisé. Voir également le Guide utilisateur du Studio Talend.

 

Auto Cast

Cette case est cochée par défaut. Elle permet de convertir automatiquement des données de type Java.

 

Manual Cast

Ce mode n'est pas visible si la case Auto Cast est cochée. Elle permet de préciser manuellement les colonnes où une conversion de type Java est nécessaire.

 

Set empty values to Null before converting

Cochez cette case pour définir les valeurs des éléments de type String ou Object comme null pour les données d'entrée.

 

Die on error

Cette case est cochée pour arrêter le Job lorsque survient une erreur.

Advanced settings

tStatCatcher Statistics

Cochez cette case pour collecter les données de log au niveau du composant.

Global Variables

ERROR_MESSAGE : message d'erreur généré par le composant lorsqu'une erreur survient. Cette variable est une variable After et retourne une chaîne de caractères. Cette variable fonctionne uniquement si la case Die on error est décochée, si le composant a cette option.

NB_LINE : nombre de lignes lues par un composant d'entrée ou passées à un composant de sortie. Cette variable est une variable After et retourne un entier.

Une variable Flow fonctionne durant l'exécution d'un composant. Une variable After fonctionne après l'exécution d'un composant.

Pour renseigner un champ ou une expression à l'aide d'une variable, appuyez sur les touches Ctrl+Espace pour accéder à la liste des variables. A partir de cette liste, vous pouvez choisir la variable que vous souhaitez utiliser.

Pour plus d'informations concernant les variables, consultez le Guide utilisateur du Studio Talend.

Utilisation

Ce composant ne peut être utilisé comme composant de début. Il requiert un flux d'entrée pour fonctionner.

Scénario : Convertir des types de données Java

Le scénario Java suivant permet de créer un Job à quatre composants dans lequel le tConvertType est utilisé pour convertir des données de type Java stockées dans trois colonnes différentes et le tMap est utilisé pour modifier le schéma : la première colonne reste intacte et les deux dernières colonnes du schéma d'entrée sont fusionnées en une seule colonne dans le schéma de sortie.

Note

Dans ce scénario, le schéma du fichier délimité utilisé en entrée est stocké dans le Repository, vous pouvez donc renseigner les propriétés du composant tFileInputDelimited d'un simple glisser-déposer du répertoire Repository > Metadata > File delimited vers l'espace de modélisation. Pour plus d'informations, consultez le Guide utilisateur du Studio Talend.

Déposer les composants

  1. Cliquez et déposez les composants suivants dans l'espace de modélisation : tConvertType, tMap et tLogRow.

  2. Dans le Repository, développez les nœuds Metadata > File Delimited et glissez-déposez la métadonnée correspondante dans l'espace de modélisation. Pour ce scénario, JavaTypes.

    La boîte de dialogue [Components] apparaît.

  3. Dans la boîte de dialogue, sélectionnez le tFileInputDelimited dans la liste des composants et cliquez sur Ok.

    Un composant tFileInputComponent appelé Java types apparaît dans l'espace de modélisation.

  4. Connectez les composants à l'aide de liens Row Main.

Configurer les composants

  1. Dans l'espace de modélisation, sélectionnez le composant tFileInputDelimited et cliquez sur la vue Component pour paramétrer ses propriétés de base.

  2. Dans l'onglet Basic settings, sélectionnez l'option Repository dans la liste Property Type puisque les propriétés du fichier sont stockées dans le Repository. Les autres champs sont alors renseignés automatiquement grâce aux données récupérées.

    Le fichier d'entrée utilisé pour ce scénario est un fichier texte appelé input contenant des données Java de type string (chaîne de caractères), integer (entier) et float.

    Renseignez les autres champs, si nécessaire. Pour plus d'informations, consultez tFileInputDelimited. Dans ce scénario, il n'y a ni en-tête ni pied de page et il n'y a pas de nombre limite de lignes à traiter.

  3. Cliquez sur Edit schema pour décrire la structure des données du fichier d'entrée. Dans ce scénario, le schéma est composé de trois colonnes : StringtoInteger, IntegerField et FloatToInteger.

  4. Cliquez sur OK pour fermer la boîte de dialogue.

  5. Dans l'espace de modélisation, sélectionnez le tConvertType et cliquez sur la vue Component pour paramétrer ses propriétés de base.

  6. Dans la liste Schema Type, sélectionnez l'option Built in et cliquez sur le bouton Sync columns pour récupérer automatiquement les colonnes du composant tFileInputDelimited.

  7. Si nécessaire, cliquez sur Edit schema pour décrire manuellement la structure des données de ce composant de traitement.

    Dans ce scénario, l'objectif est de convertir les données de type string (chaîne de caractères) en integer (entier) et des données de type float en integer.

    Cliquez sur OK pour fermer la boîte de dialogue [Schema of tConvertType].

  8. Dans l'espace de modélisation, double-cliquez sur le tMap pour ouvrir l'éditeur du tMap.

    L'éditeur du tMap s'ouvre et affiche les noms des colonnes du fichier d'entrée.

  9. Dans l'onglet Schema editor en bas de l'éditeur du tMap, cliquez sur le bouton [+] de la table de sortie pour ajouter deux lignes et nommez-les StringToInteger et Sum.

  10. Dans l'éditeur du tMap, glissez la ligne StringToInteger de la table d'entrée vers la ligne StringToInteger de la table de sortie.

  11. Dans l'éditeur du tMap, glissez les lignes IntegerField et FloatToInteger de la table d'entrée vers la ligne Sum de la table de sortie. Cliquez sur OK pour fermer l'éditeur du tMap.

  12. Dans l'espace de modélisation, sélectionnez le tLogRow et cliquez sur la vue Component pour paramétrer ses propriétés de base. Pour plus d'informations, consultez tLogRow.

Exécuter le Job

  1. Appuyez sur Ctrl+S pour enregistrer votre Job.

  2. Appuyez sur F6 pour l'exécuter.

Les données de type string sont converties en integer et affichées dans la colonne StringToInteger dans la console. Les données de type float sont converties en integer et ajoutées à la valeur IntegerField et leur somme est affichée dans la colonne Sum dans la console.