tSalesforceOutputBulkExec - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
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
Talend Real-Time Big Data Platform
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Les composants tSalesforceOutputBulk et tSalesforceBulkExec sont généralement utilisés ensemble pour générer en sortie le fichier défini et exécuter ensuite les actions souhaitées sur votre fichier, dans votre Salesforce.com. Cette exécution en deux étapes est unifiée dans le composant tSalesforceOutputBulkExec. L'intérêt de proposer deux composants séparés réside dans le fait que cela permet de procéder à des transformations avant le changement des données dans la base de données.

Propriétés du tSalesforceOutputBulkExec

Famille du composant

Business/Cloud

 

Fonction

Le composant tSalesforceOutputBulkExec exécute les actions définies sur les données .csv pour Salesforce.com.

Objectif

En tant que composant dédié, le tSalesforceOutpuBulkExec permet d'optimiser les performances lors des opérations définies sur les données, dans votre Salesforce.com.

Basic settings

Use an existing connection

Cochez cette case et sélectionnez le composant de connexion adéquat à partir de la liste Component List pour réutiliser les paramètres d'une connexion que vous avez déjà définie.

Note

Lorsqu'un Job contient un Job parent et un Job enfant, la liste Component List présente uniquement les composants de connexion du Job du même niveau.

 

Login Type

Deux options sont disponibles :

Basic : sélectionnez cette option afin de vous connecter à Salesforce.com en saisissant vos identifiants (nom d'utilisateur et mot de passe) dans le tSalesforceConnection.

OAuth2 : sélectionnez cette option pour accéder à Salesforce.com en saisissant votre Consumer key/Consumer Secret dans le tSalesforceConnection. Ainsi, vos identifiants ne sont pas visibles dans le tSalesforceConnection, mais un effort supplémentaire est requis :

 

Salesforce Webservice URL

Saisissez l'URL du service Web permettant de se connecter à la base de données Salesforce.

 

Salesforce Version

Saisissez la version de Salesforce que vous utilisez.

 

Username et Password

Saisissez les informations d'authentification de l'utilisateur au service Web.

Pour saisir le mot de passe, cliquez sur le bouton [...] à côté du champ Password, puis, dans la boîte de dialogue qui s'ouvre, saisissez le mot de passe entre guillemets doubles, puis cliquez sur OK afin de sauvegarder les paramètres.

 

Consumer Key et Consumer Secret

Saisissez les détails de votre authentification OAuth. Ces informations sont disponibles dans la zone OAuth Settings de l'application connectée créée sur le site Salesforce.com.

Pour saisir le Secret du consumer, cliquez sur le bouton [...] à côté du champ Consumer Secret, puis, dans la boîte de dialogue qui s'ouvre, saisissez le Secret du consumer entre guillemets doubles puis cliquez sur OK afin de sauvegarder les paramètres.

Pour comprendre ce qu'est une application connectée, consultez Connected Apps (en anglais). Pour plus d'informations concernant la création d'une application connectée, consultez Defining Remote Access Applications (en anglais).

 

Callback Host et Callback Port

Saisissez l'URL de votre fonction de rappel pour l'authentification OAuth. Cette URL (contenant l'hôte et le port) est définie durant la création d'une application connectée et apparaît dans la zone OAuth Settings de l'application connectée.

 

Token File

Saisissez le nom du jeton de fichier. Il stocke le jeton de rafraîchissement utiliser pour récupérer le jeton d'accès sans autorisation.

 

Bulk file path

Chemin d'accès au répertoire où sont stockées les données de masse à traiter.

 

Action

Vous pouvez effectuer l'une des opérations suivantes sur les données de l'objet Salesforce :

Insert : insérer les données.

Update : mettre les données à jour.

Upsert : mettre à jour et insérer les données.

Delete : supprimer les données.

 Upsert Key Column

Spécifiez la colonne de clé pour l'opération d'upsert.

Disponible lorsque l'option Upsert et sélectionnée dans la liste Action.

 

Module

Sélectionnez l'objet adéquat dans la liste.

Custom Object : cette option fait apparaître le champ Custom Module Name dans lequel vous pouvez saisir l'objet auquel vous souhaitez vous connecter.

 

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.

Depuis la version 5.6, les modes Built-In et Repository sont disponibles dans toutes les solutions de Talend.

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].

Cliquez sur le bouton Sync columns pour récupérer le schéma du composant précédent.

Ce composant offre la fonction de schéma dynamique. Cela vous permet de récupérer des colonnes inconnues à partir de fichiers source ou de copier des lots de colonnes d'une source sans avoir à mapper individuellement ces colonnes. Pour plus d'informations concernant les schémas dynamiques, consultez le Guide utilisateur de Studio Talend.

Cette fonctionnalité de schéma dynamique est conçue pour permettre de récupérer des colonnes inconnues d'une table. Il est recommandé de l'utiliser uniquement à cet effet et non pour créer des tables.

Advanced settings

Rows to commit

Saisissez le nombre de lignes devant être traitées par lot de données.

 

Bytes to commit

Saisissez le nombre d'octets par lot de données devant être traités.

 Concurrency mode

Mode de simultanéité pour le Job :

Parallel : Traite les lots en mode parallèle.

Serial : Traite les lots en mode séquentiel.

 

Wait time for checking batch state(milliseconds)

Saisissez l'intervalle de temps entre les vérifications de traitement des lots de données d'un Job jusqu'à ce que tous les lots soient traités.

 

Use Socks Proxy

Cochez cette case si vous souhaitez utiliser un proxy. Dans ce cas, vous devez renseigner les paramètres du proxy dans les champs qui apparaissent, une fois la case cochée.

 Ignore NULL fields values

Cochez cette case pour ignorer les valeurs nulles en mode Update ou Upsert.

 Relationship mapping for upsert (pour upsert uniquement)

Cliquez sur le bouton [+] pour ajouter des lignes et spécifiez les champs d'ID externes du flux d'entrée, les champs de relations lookup dans le module d'upsert, le module de lookup ainsi que les champs d'ID externes dans le module de lookup.

De plus, la case Polymorphic doit être cochée uniquement lorsque les champs polymorphiques sont utilisés pour le mapping de relations. Pour plus d'informations concernant les champs polymorphiques, recherchez polymorphic sur http://www.salesforce.com/us/developer/docs/api_asynch/ (en anglais).

Column name of Talend schema : champ d'ID externe dans le flux d'entrée.

Lookup field name : champ de relation lookup dans le module d'upsert.

External id name : champ d'ID externe dans le module de lookup.

Polymorphic : cochez cette case uniquement lorsque les champs polymorphiques sont utilisés pour le mapping de relations.

Module name : nom du module de lookup.

Note

  • Column name of Talend schema fait référence aux champs du schéma du composant précédent le tSalesforceOutput. Ces colonnes sont mises en correspondance par rapport aux champs d'IDs externes spécifiés dans la colonne External id name. Ces champs sont ceux spécifiés dans la colonne Module name du module de lookup.

  • Lookup field name fait référence aux champs de relations lookup du module sélectionné dans la liste Module de la vue Basic settings. Ils servent à établir les relations avec le module de lookup spécifié dans le champ Module name.

  • Pour plus d'informations concernant la définition des champs de relation lookup et comment saisir le bon nom dans le champ Lookup field name, rendez-vous sur le site Web de Salesforce et lancez l'application Salesforce Data Loader.

  • Cochez la case Polymorphic uniquement pour les champs polymorphiques. Vous pouvez obtenir une erreur si vous ne cochez pas cette case pour un champ polymorphique. Vous pouvez également obtenir une erreur si vous la sélectionnez pour un champ qui n'est pas polymorphique.

 

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.

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 est utilisé comme composant de sortie. Il nécessite un composant d'entrée.

Limitation

Les données de masse à traiter dans Salesforce.com doivent être au format .csv

Scénario : Insérer des données de masse dans votre Salesforce.com

Ce scénario décrit un Job à quatre composants qui charge des données en masse dans Salesforce.com, exécute les actions définies, et affiche les résultats d'exécution du Job dans la console.

Avant de réaliser ce Job, vous devez préparer votre fichier d'entrée, contenant les données devant être traitées par le Job. Dans cet exemple, le fichier sforcebulk.txt, contient des informations relatives aux clients.

Afin de créer et exécuter le Job, procédez comme suit :

Configurer le Job

  1. Glissez-déposez de la Palette dans l'espace de modélisation graphique un composant tFileInputDelimited, un tSalesforceOutputBulkExec, et deux tLogRow.

  2. Utilisez un lien Row > Main pour connecter le tFileInputDelimited au tSalesforceOutputBulkExec.

  3. Utilisez un lien Row > Main et un lien Row > Reject afin de connecter le tSalesforceOutputBulkExec aux deux tLogRow respectifs.

Configurer les données d'entrée

  1. Double-cliquez sur le tFileInputDelimited afin d'afficher sa vue Component et définir ses propriétés.

  2. Dans la liste Property Type, sélectionnez Repository si vous avez déjà stocké votre connexion au serveur Salesforce dans le nœud Metadata de la vue Repository. Les propriétés sont automatiquement renseignées. Si vous n'avez pas défini la connexion au serveur localement dans le Repository, remplissez les champs manuellement, après avoir sélectionné Built-in dans la liste Property Type.

    Pour plus d'informations concernant la création des métadonnées de fichier délimité, consultez le Guide utilisateur du Studio Talend.

  3. A côté du champ File name/Stream, cliquez sur le bouton afin de sélectionner votre fichier d'entrée, par exemple sforcebulk.txt.

  4. Dans la liste Schema, sélectionnez Repository, puis cliquez sur le bouton [...] pour ouvrir une boîte de dialogue dans laquelle vous pourrez sélectionner le schéma à utiliser pour ce composant. Si vous n'avez pas défini votre schéma localement dans les métadonnées, sélectionnez Built-in dans la liste Schema, puis cliquez sur le bouton [...] à côté du champ Edit schema, afin d'ouvrir une boîte de dialogue où vous pourrez définir le schéma manuellement. dans ce scénario, le schéma se compose de quatre colonnes : Name, ParentId, Phone et Fax.

  5. Configurez les autres propriétés selon votre fichier d'entrée, comme Row Separator, Field Separator...

Configurer la connexion au serveur Salesforce

  1. Double-cliquez sur le composant tSalesforceOutputBulkExec afin d'afficher sa vue Component et définir ses propriétés.

  2. Dans le champ Salesforce WebService URL, utilisez l'URL par défaut du service Web Salesforce, ou saisissez l'URL à laquelle vous souhaitez accéder.

  3. Dans les champs Username et Password, saisissez votre identifiant et votre mot de passe de connexion au service Web.

  4. Dans le champ Bulk file path, parcourez votre répertoire jusqu'à l'emplacement où vous stockez les données .csv devant être traitées.

    Note

    Le fichier de masse à traiter doit être au format .csv.

  5. Dans la liste Action, sélectionnez l'action à effectuer sur les données de masse, insert dans cet exemple.

  6. Dans la liste Module, sélectionnez l'élément auquel vous souhaitez accéder, Account dans cet exemple.

  7. Dans la liste Schema, sélectionnez Repository, puis cliquez sur le bouton [...] afin d'ouvrir une boîte de dialogue dans laquelle vous pourrez sélectionner le schéma du Repository à utiliser pour ce composant. Si vous n'avez pas défini votre schéma localement dans les métadonnées, sélectionnez Built-in dans la liste Schema, puis cliquez sur le bouton [...] à côté du champ Edit schema afin d'ouvrir une boîte de dialogue où vous pourrez définir manuellement le schéma. Dans cet exemple, définissez le schéma comme précédemment.

Exécuter le Job

  1. Double-cliquez sur le tLogRow_1 afin d'afficher sa vue Component et définir ses propriétés.

  2. Cliquez sur le bouton Sync columns afin de récupérer le schéma du composant précédent.

  3. Sélectionnez le mode Table afin d'afficher les résultats d'exécution dans un tableau.

  4. Répétez l'opération pour le tLogRow_2.

  5. Sauvegardez votre Job et appuyez sur F6 afin de l'exécuter.

    Dans la console de la vue Run, vous pouvez vérifier les résultats d'exécution.

    Dans le tableau du tLogRow_1, vous pouvez lire les données insérées dans Salesforce.com.

    Dans le tableau du tLogRow_2, vous pouvez lire les données rejetées à cause d'une incompatibilité avec les éléments Account auxquels vous avez accédé.

    Si vous souhaitez transformer les données d'entrée avant de les charger, vous devez utiliser un tSalesforceOutputBulk et un tSalesforceBulkExec pour réaliser le Job complet. Pour plus d'informations à propos de l'utilisation de ces deux composants, consultez Scénario : Insérer des données de masse transformées dans votre Salesforce.com.