Ce tutoriel à pour but d'effectuer des agrégation de données et des calcul de somme.
Ce tutoriel à pour but d'effectuer des agrégation de données et des calcul de somme.
Dans ce tutoriel nous allons utiliser un fichier csv représentant des commandes. Ce fichier va contenir différentes colonnes qui sont :
Ce fichier sera lu par le composant 'tFileInputDelimited'. Les données seront transmise au composant 'tAggregateRow' qui sera utilisé pour calculer la somme des prix unitaire et des quantité par article.
Ci-dessous vous trouverez à gauche le fichier csv utilisé, et à droite un exemple de contrôle réalisé sur Excel.
L'objectif est d'obtenir les même résultats avec Talend.
Nous allons dans un premier temps créer un job et y ajouter un composant 'tFileInputDelimited'. Il doit être configuré de sorte a récupérer les données issues du fichier.
Maintenant nous allons ajouter le composant 'tAggregateRow'. Assurez vous que ce composant posséde l'ensemble des colonnes du composant précédent. Si ce n'est pas le cas, synchronisez les schémas.
Nous souhaitons effectuer la somme des prix_unitaire et quantité pour chaque articles. Pour se faire nous allons dans un premier temps définir la colonne utilisée dans le champ 'group by'. Cette colonne devra donc être 'nom' car c'est elle qui contient le nom des articles.
Nous allons ensuite ajouter deux opérations de type 'somme' sur les colonnes PU (prix_unitaire) et QTE (quantite).
Ajoutez un 'tLogRow' et exécutez votre job, vous devriez avoir les mêmes résultats que dans le contrôle présenté en début de tutoriel.
On remarque dans cette exécution que la colonne 'id' n'est plus utilisée (null). Nous pourrions nous en servir afin de compter le nombre d'occurrence d'article.
Je vous propose donc une petite amélioration en ajoutant une opération de type 'count' sur la colonne 'nom'.