Gérer un fichier en utilisant SCP - 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

Dans ce scénario, un Job de six composants vérifie qu'un fichier défini existe dans un répertoire spécifié sur un serveur SCP distant, puis retourne un message indiquant le résultat de cette vérification. Si le fichier n'existe pas dans ce répertoire, le Job met le fichier local sur le serveur SCP puis récupère le fichier depuis le serveur SCP vers un autre répertoire local défini afin de vérifier que le fichier a été correctement chargé.

Déposer et relier les composants

  1. Ajoutez les six composants suivants en saisissant leur nom dans l'espace de modélisation graphique ou en les déposant depuis la Palette : tSCPConnection, tSCPFileExists, tJava, tSCPPut, tSCPGet et tSCPClose.

  2. Reliez le tSCPConnection au tSCPFileExists à l'aide d'un lien Trigger > On Subjob Ok.

  3. Reliez le tSCPFileExists au tJava à l'aide d'un lien Trigger > On Component Ok et au tSCPPut à l'aide d'un lien Trigger > Run if.

  4. Reliez le tSCPPut au tSCPGet à l'aide d'un lien Trigger > On Subjob Ok.

  5. Reliez le tSCPGet au tSCPClose à l'aide d'un lien Trigger > On Subjob Ok.

Configurer le composant tSCPConnection

  1. Double-cliquez sur le tSCPConnection afin d'ouvrir sa vue Basic settings.

  2. Saisissez le nom d'hôte ou l'adresse IP du serveur SCP ainsi que le numéro de port dans les champs correspondants.

  3. Saisissez le nom d'utilisateur utilisé pour cette connexion dans le champ Username.

  4. Dans la liste Authentication method, sélectionnez Password.

  5. Cliquez sur le bouton [...] à côté du champ Password puis, dans la boîte de dialogue [Enter a new password] qui s'ouvre, saisissez le mot de passe entre guillemets doubles et cliquez sur OK pour sauvegarder les changements.

Configurer la vérification de l'existence du fichier

  1. Double-cliquez sur le tSCPFileExists afin d'ouvrir sa vue Basic settings.

  2. Cochez la case Use an existing connection puis, dans la liste Component List, sélectionnez la connexion que vous avez configurée.

  3. Dans le champ Filename, saisissez le nom du fichier à vérifier entre guillemets doubles, "testscp.txt" dans cet exemple.

  4. Double-cliquez sur le tJava afin d'ouvrir sa vue Basic settings.

  5. Dans le champ Code, saisissez le code suivant :

    System.out.println((String)globalMap.get("tSCPFileExists_1_FILENAME"));
    System.out.println((String)globalMap.get("tSCPFileExists_1_STATUS"));
  6. Sélectionnez l'onglet Component et cliquez sur le connexion If afin d'ouvrir sa vue Basic settings.

  7. Dans le champ Condition, saisissez le code suivant :

    !((String)globalMap.get("tSCPFileExists_1_STATUS")).equals("File exists.")

    Ainsi, si le fichier n'existe pas dans le répertoire défini, le reste du Job s'exécute.

Configurer le composant tSCPPut

  1. Double-cliquez sur le tSCPPut afin d'ouvrir sa vue Basic settings.

  2. Cochez la case Use an existing connection puis, dans la liste Component List, sélectionnez la connexion que vous avez configurée.

  3. Cliquez sur le bouton [+] afin d'ajouter une ligne à la table Filelist puis saisissez le chemin complet vers le fichier local que vous souhaitez charger dans la colonne Source correspondante, "D:/SCPPut/testscp.txt" dans cet exemple.

Configurer le composant tSCPGet

  1. Double-cliquez sur le tSCPGet afin d'ouvrir sa vue Basic settings.

  2. Cochez la case Use an existing connection puis, dans la liste Component List, sélectionnez la connexion que vous avez configurée.

  3. Dans le champ Local directory, saisissez le chemin ou parcourez votre système vers le dossier dans lequel vous souhaitez stocker le fichier, "D:/SCPGet" dans cet exemple.

  4. Dans la liste Overwrite or Append, sélectionnez append.

  5. Cliquez sur le bouton [+] afin d'ajouter une ligne dans la table Filelist puis saisissez le chemin complet vers le fichier que vous souhaitez récupérer depuis le serveur SCP dans la colonne Source correspondante, "./testscp.txt" dans cet exemple.

Configurer le composant tSCPClose

  1. Double-cliquez sur le tSCPClose afin d'ouvrir sa vue Basic settings.

  2. Dans la liste Component List, sélectionnez la connexion que vous avez configurée.

Exécuter le Job

  1. Appuyez sur Ctrl+S pour sauvegarder le Job.

  2. Assurez-vous que le fichier testscp.txt existe dans le répertoire local D:/SCPPut et qu'il n'existe ni dans le répertoire local D:/SCPGet ni dans le répertoire racine du serveur SCP.

  3. Appuyez sur F6 afin d'exécuter le Job.

    Les informations concernant la vérification du fichier s'affichent dans la console Run.

  4. Ouvrez le répertoire local D:/SCPGet et le répertoire racine du serveur SCP afin de constater la présence du fichier testscp.txt.