Scénario 1 : Filtrer une liste de noms à l'aide de conditions simples - 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

Le scénario suivant décrit un Job qui utilise des conditions simples pour filtrer une liste d'enregistrements. Le Job écrit deux tables de sortie : la première liste toutes les personnes de sexe masculin dont le nom de famille contient moins de neuf caractères et âgées de 10 à 80 ans. La seconde liste tous les enregistrements rejetés. Un message d'erreur s'affichera dans la table pour chaque enregistrement rejeté, afin d'expliquer pourquoi l'enregistrement a été rejeté.

Construire le Job

  1. A partir de la Palette, cliquez-déposez les composants suivants dans l'éditeur graphique : un tFixedFlowInput, un tFilterRow et un tLogRow.

  2. Connectez le tFixedFlowInput au tFilterRow à l'aide d'un lien Row > Main. Ensuite, connectez le tFilterRow au tLogRow, à l'aide d'un lien Row > Filter.

  3. Déposez de la Palette dans l'espace de modélisation graphique un nouveau tLogRow et renommez-le reject. Reliez le tFilterRow à ce tLogRow à l'aide d'un lien Row > Reject.

  4. Renommez les autres composants afin de mieux identifier leur rôle au sein du Job.

Configurer les composants

  1. Dans l'espace graphique, cliquez sur le composant tFixedFlowInput afin d'afficher sa vue Basic settings et définir ses propriétés.

  2. Cliquez sur le bouton [...] à côté du champ Edit schema afin de définir le schéma des données d'entrée. Dans cet exemple, le schéma se composant des quatre colonnes suivantes : LastName (type String), Gender (type String), Age (type Integer) et City (type String).

    Cela fait, cliquez sur OK afin de valider les paramètres du schéma et fermer la boîte de dialogue. Une nouvelle boîte de dialogue s'ouvre et vous propose de propager le schéma. Cliquez sur Yes.

  3. Dans les champs Row separator et Field separator, saisissez respectivement le séparateur de lignes et le séparateur de champs, si nécessaire. Dans cet exemple, utilisez les paramètres par défaut pour les deux champs, respectivement un retour chariot et un point-virgule.

  4. Sélectionnez l'option Use Inline Content(delimited file) dans la zone Mode et saisissez les données d'entrée dans le champ Content.

    Les données d'entrée utilisées dans cet exemple sont les suivantes :

    Van Buren;M;73;Chicago
    Adams;M;40;Albany
    Jefferson;F;66;New York
    Adams;M;9;Albany
    Jefferson;M;30;Chicago
    Carter;F;26;Chicago
    Harrison;M;40;New York
    Roosevelt;F;15;Chicago
    Monroe;M;8;Boston
    Arthur;M;20;Albany
    Pierce;M;18;New York
    Quincy;F;83;Albany
    McKinley;M;70;Boston
    Coolidge;M;4;Chicago
    Monroe;M;60;Chicago
  5. Double-cliquez sur le composant tFilterRow pour afficher sa vue Basic settings et définir ses propriétés.

  6. Dans le tableau Conditions, ajoutez quatre conditions et renseignez les paramètres de filtre.

    • Pour la première ligne, dans la colonne InputColumn, dans la première ligne, sélectionnez LastName. Dans la colonne Function, sélectionnez Length. Dans la colonne Operator, sélectionnez Lower than et, dans la colonne Value, saisissez 9 afin de limiter la longueur les noms de famille à 9 caractères.

    • Pour la deuxième ligne, dans la colonne InputColumn, sélectionnez Gender. Dans la colonne Operator, sélectionnez Equals et, dans la colonne Value, saisissez M entre guillemets doubles afin de filtrer les enregistrement des personnes de sexe masculin.

      Avertissement

      Dans la colonne Value, vous devez saisir vos valeurs entre guillemets doubles pour tous les types de valeurs, sauf pour les valeurs de type Integer, qui ne nécessitent pas de guillemet.

    • Dans la troisième ligne, dans la colonne InputColumn, sélectionnez Age. Dans la colonne Operator, sélectionnez Greater than et, dans la colonne Value, saisissez 10 afin de configurer l'âge minimum à 10 ans.

    • Dans la dernière ligne, dans la colonne InputColumn, sélectionnez Age. Dans la colonne Operator, sélectionnez Lower than et, dans la colonne Value saisissez 80 pour configurer l'âge maximum à 80 ans.

  7. Pour combiner les deux conditions, sélectionnez l'opérateur logique And dans la liste Logical operator used to combine conditions, pour accepter uniquement les enregistrement répondant aux deux conditions.

  8. Dans la vue Basic settings des composants tLogRow, sélectionnez l'option Table (print values in cells of a table) dans la zone Mode.

Exécuter le Job

  • Sauvegardez votre Job puis appuyez sur F6 pour l'exécuter.

La première table liste les enregistrements des personnes de sexe masculin, âgées de 10 à 80 ans, dont le nom de famille comprend moins de 9 caractères. La seconde affiche tous les enregistrements ne correspondant pas aux conditions de filtre. A chaque enregistrement rejeté correspond un message d'erreur expliquant la raison du rejet.