fbpx

Talend mets a disposition plusieurs type de connexion (liaisons) entre les composants.

Celles qui vont être décrites dans ce tutoriel porte sur les liaisons de type 'Triggers'. Ces liaisons sont des déclencheurs conditionnels, elles ne permettent pas la transition de données d'un composant a un autre, mais plutôt de déclencher un sous job en fonction de conditions.

On retrouve les 5 liaisons suivantes :

  • On SubJob OK : S’exécute si le job c’est correctement réalisé.
  • On SubJob Error : S’exécute si le job a rencontré une erreur.
  • On Component OK : S’exécute si le composant c’est correctement exécuté.
  • On Component Error : S’exécute si le composant a rencontré une erreur.
  • Run if : S’exécute si une condition fixée est réalisée.

Pour illustrer ce tutoriel, nous allons prendre un job simple qui permet de lire des données depuis une base de données.

Ce job contient donc un 'tDBInput' ainsi qu'un 'tLogRow'. le tDBInput sera configuré avec des variables de contextes. Cela permet de renseigner des informations de connexions correctes sur un groupe de contexte, et des fausses sur un autre. Ainsi il sera aisé de déclencher une erreur.

 

Le job devrait ressembler à cela :


Afin de visualiser les différents types de liaisons, nous allons utiliser le composant 'tJava'.

Il sera utilisé pour afficher un message en console grâce au code java suivant : 'System.out.println(« Votre message ») ;'

OnComponentOk et OnComponentError

Les premières liaisons que nous allons voir sont les liaisons 'OnComponentOk' et 'OnComponentError'.

Elles peuvent être utilisée a partir de n'importe quel composant du studio et sont déclenchées respectivement si le composant s'exécute sans erreur (OnComponentOk) ou avec erreur (OnComponentError).

 

Ajoutez deux composant 'tJava' comme l'illustre les capture d'écran ci-dessous.


OnComponentOk


Exécution

OnComponentError


Exécution


OnSubJobOk et OnSubJobError

Nous allons maintenant poursuivre avec les liaisons 'OnSubJobOk' et 'OnSubJobError'.

Ces liaisons sont disponible uniquement sur le premier composant d'un sous job. Le mode de fonctionnement est identiques aux deux liaisons précédentes, mais au niveau du sous job et non du composant.

 

Ajoutez deux composant 'tJava' comme l'illustre la capture d'écran ci-dessous.



OnSubJobOk - Execution

OnSubJobError - Execution


On peut voir que la liaison « On component OK » s’exécute avant la liaison « On SubJob OK ».

Cela est tout à fait normal, puisque le composant termine de s’exécuter avant la fin du job.


Run if

La dernière liaisons de type trigger que j'ai a vous présenter est la liaisons  'Run If'.

Cette liaisons est paramétrable au même titre qu'un composant, il est donc possible de lui renseigner une condition. Elle sera donc exécutée uniquement si la condition est vérifiée.

 

Ajoutez un composant 'tJava' comme l'illustre la capture d'écran ci-dessous.



Configurez la liaison 'Run If' en cliquant dessus, puis en allant dans l'onglet 'composant'.

Renseignez une condition. Dans cet exemple nous testons le nombre de lignes récupérée par le composant 'tDBInput'.


Configuration de la liaison

Configurez également le 'tJava' et ajoutez le texte suivant : 'System.out.println('Il y a plus d'une ligne dans la réponse');'