Consultez la liste des connecteurs compatibles avec Application Integration.

Appeler une intégration pour un événement Salesforce Change Data Capture (CDC)

Découvrez comment créer un exemple d'intégration dans Application Integration à l'aide du déclencheur Salesforce. Les étapes suivantes décrivent comment configurer le déclencheur, les tâches, les connecteurs et les mappages de données requis pour exécuter une intégration complète.

Dans ce guide de démarrage rapide, vous allez utiliser le déclencheur Salesforce afin d'appeler une intégration dans Application Integration pour un événement de capture de données modifiées (CDC, Change Data Capture) Salesforce, comme illustré dans la figure suivante:

Exemple de diagramme séquentiel Exemple de diagramme séquentiel

Un déclencheur Salesforce est abonné au canal d'opportunité Salesforce. Les modifications des données de l'opportunité Salesforce invoque une Application Integration qui extrait le statut de l'opportunité Salesforce. Si l'état est fermé, l'intégration extrait les détails de l'opportunité et écrit les données dans une instance Cloud SQL à l'aide d'un connecteur. Si des données sont modifiées, mais que l'état reste ouvert, l'intégration envoie un message à un sujet Pub/Sub à l'aide d'un connecteur.

Les étapes suivantes décrivent comment configurer le déclencheur, les tâches, les profils d'authentification, les périphéries, les variables et le mappage des données afin de garantir une intégration réussie.

Avant de commencer

  • Vérifiez que la capture des données modifiées (CDC, Change Data Capture) est activée dans votre compte de développeur Salesforce. Dans ce tutoriel, nous partons du principe que vous disposez déjà d'un compte de développeur Salesforce avec les paramètres d'autorisation et de configuration utilisateur requis. Pour en savoir plus sur la configuration utilisateur et l'ensemble d'autorisations Salesforce, consultez la page Configurer un déclencheur Salesforce.
  • Attribuez les rôles IAM suivants à l'agent de service Application Integration(service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com) dans votre projet Google Cloud.
    • Éditeur Pub/Sub
    • Administrateur Connectors
    • Demandeur Application Integration
    Pour en savoir plus sur l'attribution de rôles IAM, consultez la page Rôles et autorisations IAM.
  • Créez la table Cloud SQL pour stocker les données CDC Salesforce.
    1. Dans la console Google Cloud, accédez à la page Instances Cloud SQL et connectez-vous à votre instance MySQL. Consultez la page Se connecter à Cloud SQL pour MySQL depuis Cloud Shell.

      Accéder à la page Instances Cloud SQL

    2. Créez la base de données MySQL suivante sur votre instance Cloud SQL :
      CREATE DATABASE SALESFORCE_TRIGGER_DEMO;
      USE SALESFORCE_TRIGGER_DEMO;
      
      CREATE TABLE OPPORTUNITIES
      (
           ID              INT NOT NULL AUTO_INCREMENT,
           NAME            VARCHAR(150) NOT NULL,
           AMOUNT          DOUBLE NOT NULL,
           DT_CLOSE        VARCHAR(150) NOT NULL,
           PRIMARY KEY     (ID)
      );
      COMMIT;
      
    3. Vérifiez que la table est créée en exécutant la commande suivante.
      SELECT * FROM OPPORTUNITIES;
  • Créez une connexion Cloud SQL pour MySQL dans les connecteurs. Pour en savoir plus, consultez la page Créer une connexion Cloud SQL pour MySQL.
  • Créez une connexion Cloud Pub/Sub dans les connecteurs. Consultez la page Créer une connexion Cloud Pub/Sub pour en savoir plus.

Créer une intégration

Pour créer une intégration, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Application Integration.

    Accéder à Application Integration

  2. Dans le menu de navigation, cliquez sur Integrations (Intégrations). La page Liste des intégrations s'affiche.
  3. Cliquez sur Créer une intégration.
  4. Saisissez un nom et une description dans la boîte de dialogue Créer une intégration. Exemple :Demo-CDC-Opportunities
  5. Sélectionnez une région pour l'intégration.
  6. Cliquez sur Create (Créer) pour ouvrir le concepteur d'intégration.

Ajouter et configurer le déclencheur Salesforce

Pour ajouter un déclencheur Salesforce à l'intégration et le configurer, procédez comme suit :

  1. Dans le concepteur d'intégration, sélectionnez Ajouter une tâche/déclencheur > Déclencheurs pour afficher la liste des déclencheurs disponibles.
  2. Cliquez et placez l'élément Déclencheur Salesforce dans le concepteur d'intégration.
  3. Cliquez sur l'élément Déclencheur Salesforce sur le canevas pour ouvrir le volet de configuration du déclencheur.
  4. Configurez les champs suivants sous Entrée du déclencheur :
    • Type d'événement : sélectionnez Capture des données modifiées (CDC) dans la liste déroulante.
    • Configuration de l'instance Salesforce : cliquez sur l'option + Ajouter une configuration d'instance Salesforce dans la liste déroulante.

      La boîte de dialogue Ajouter une configuration d'instance Salesforce s'affiche.

      • Nom de connexion de l'instance Salesforce : saisissez un nom de connexion pour l'instance Salesforce. Par exemple, CDC-PlatformUser.
      • Domaine Salesforce : saisissez le nom de votre domaine Salesforce. Vous trouverez ces informations sur la page Compte Salesforce > Afficher le profil.
      • Profil d'authentification : sélectionnez un profil d'authentification. Si vous ne possédez pas de profil d'authentification, créez-en un. Pour en savoir plus, consultez la page Créer un profil d'authentification.
      • Cliquez sur Ajouter.
    • Configuration du canal Salesforce : cliquez sur l'option + Ajouter une configuration de canal Salesforce dans la liste déroulante.

      La boîte de dialogue Ajouter un canal Salesforce s'affiche.

      • Nom de l'objet Salesforce : saisissez Opportunity.
      • Cliquez sur Ajouter.
    • Opération : sélectionnez Mettre à jour dans la liste déroulante.

    Les modifications que vous avez apportées aux propriétés sont enregistrées automatiquement.

Ajouter et configurer des tâches

Ce tutoriel utilise les tâches Connecteurs et Mappage de données. Les détails de configuration de chacune de ces tâches sont décrits ci-dessous.

Configurer une tâche de connecteur avec une connexion Cloud SQL pour MySQL

Pour configurer une tâche de connecteur afin d'insérer des enregistrements dans une table Cloud SQL existante à l'aide de la connexion Cloud SQL pour MySQL, utilisez la procédure suivante :

  1. Sélectionnez + Ajouter une tâche/déclencheur > Tâches dans le concepteur d'intégrations pour afficher la liste des tâches disponibles.
  2. Cliquez sur l'élément Connecteurs et placez-le dans le concepteur d'intégration.
  3. Cliquez sur l'élément de tâche Connecteurs dans le concepteur pour afficher le volet de configuration de la tâche Connecteurs.
  4. Cliquez sur et remplacez le nom des connecteurs par Insert row to Cloud SQL.
  5. Cliquez sur Configurer la tâche.

    La boîte de dialogue Configurer la tâche de connecteur s'affiche.

  6. Procédez comme suit dans la boîte de dialogue Configurer la tâche de connecteur :
    1. Sélectionnez la région de la connexion.
    2. Une fois la région choisie, la colonne Connexion s'affiche. Sélectionnez votre connexion Cloud SQL pour MySQL dans la liste des connexions disponibles.
    3. Une fois la connexion sélectionnée, la colonne Type s'affiche. Sélectionnez Entités, puis OPPORTUNITÉS dans la liste des entités disponibles.
    4. Une fois le type choisi, la colonne Opération s'affiche. Sélectionnez Créer.
    5. Cliquez sur Terminé pour terminer la configuration de la connexion et fermer le volet.

Créer une tâche de connecteurs avec une connexion Cloud Pub/Sub

Procédez comme suit pour configurer une tâche Connectors afin de publier un message Pub/Sub à l'aide de la connexion Cloud Pub/Sub :

  1. Sélectionnez + Ajouter une tâche/déclencheur > Tâches dans le concepteur d'intégrations pour afficher la liste des tâches disponibles.
  2. Cliquez sur l'élément Connecteurs et placez-le dans le concepteur d'intégration.
  3. Cliquez sur l'élément de tâche Connecteurs dans le concepteur pour afficher le volet de configuration de la tâche Connecteurs.
  4. Cliquez sur et remplacez le nom des connecteurs par Publish to cloud pub/sub.
  5. Cliquez sur Configurer la tâche.

    La boîte de dialogue Configurer la tâche de connecteur s'affiche.

  6. Procédez comme suit dans la boîte de dialogue Configurer la tâche de connecteur :
    1. Sélectionnez la région de la connexion.
    2. Une fois la région choisie, la colonne Connexion s'affiche. Sélectionnez votre connexion Pub/Sub dans la liste des connexions disponibles.
    3. Une fois la connexion sélectionnée, la colonne Type s'affiche. Sélectionnez Actions, puis publishMessage dans la liste des actions disponibles.
    4. Cliquez sur Terminé pour terminer la configuration de la connexion et fermer le volet.

Configurer la tâche Mappage de données

Procédez comme suit pour configurer une tâche de mappage de données :

  1. Sélectionnez Ajouter une tâche/un déclencheur > Tâches pour afficher la liste des tâches disponibles.
  2. Cliquez sur l'élément Mappage de données et placez-le dans le concepteur d'intégration.
  3. Cliquez sur l'élément Mappage de données dans le concepteur pour ouvrir le volet de configuration de la tâche.
  4. Cliquez sur Ouvrir l'éditeur de mappage de données.

    L'éditeur de mappage de données vous permet de mapper les variables d'entrée avec les variables de sortie souhaitées à l'aide des fonctions de transformation disponibles. Le résultat est ensuite disponible en tant que variable pour toute autre tâche ou tout autre déclencheur d'intégration. Pour en savoir plus sur la transmission de données en tant que variables, consultez Utiliser des variables dans Application Integration.

  5. Cliquez sur + Ajouter une variable et créez les variables de sortie suivantes :
    Nom des variables de sortie Type de données
    OpportunityIsClosed Boolean
    OpportunityId String
    PubSubMessage String
  6. Créez le mappage suivant entre la variable SalesforceTriggerCdcPayload et les variables de charge utile d'entrée de connecteur, comme indiqué dans le tableau suivant :
    Input Résultat
    SalesforceTriggerCdcPayload.GET_PROPERTY("IsClosed").TO_BOOLEAN() OpportunityIsClosed
    SalesforceTriggerCdcPayload.GET_PROPERTY("Id").TO_STRING() OpportunityId
    OpportunityId.TO_DOUBLE() connectorInputPayload.ID(Insert row to Cloud SQL)
    SalesforceTriggerCdcPayload.GET_PROPERTY("Name").TO_STRING() connectorInputPayload.NAME(Insert row to Cloud SQL)
    SalesforceTriggerCdcSnapshot.GET_PROPERTY("Amount").TO_DOUBLE() connectorInputPayload.AMOUNT(Insert row to Cloud SQL)
    SalesforceTriggerCdcSnapshot.GET_PROPERTY("CloseDate").TO_STRING() connectorInputPayload.DT_CLOSE(Insert row to Cloud SQL)
    OpportunityId.CONCAT(" is still open") PubSubMessage
    PubSubMessage connectorInputPayload.message(Publish to cloud pub/sub)
  7. Une fois le mappage terminé, fermez le volet. Toutes les modifications seront enregistrées automatiquement.

Ajouter une connexion périphérique

Une périphérie est une connexion entre deux éléments d'une intégration et une condition périphérique vous permet de spécifier les conditions à remplir pour que le contrôle d'une intégration passe à la tâche connectée par la périphérie. Pour plus d'informations sur les périphérie et les conditions périphériques, consultez la section Périphéries.

  1. Ajoutez une connexion périphérique à partir de l'élément Déclencheur Salesforce vers l'élément Mappage de données.
  2. Ajoutez une connexion périphérique de l'élément Mappage de données à l'élément Insérer une ligne dans le connecteur Cloud SQL avec la condition périphérique suivante :
      $OpportunityIsClosed$ = TRUE
  3. Ajoutez une autre connexion périphérique de l'élément Mappage de données à l'élément Connecteur Cloud Pub/Sub avec la condition périphérique suivante :
      $OpportunityIsClosed$ = FALSE
Exemple d'image montrant les connexions périphériques Exemple d'image montrant les connexions périphériques

Tester l'intégration

Pour tester la nouvelle intégration, procédez comme suit :

  1. Cliquez sur Test dans la barre d'outils du concepteur d'intégration, puis sélectionnez le déclencheur Salesforce.

    La boîte de dialogue Tester l'intégration s'affiche.

  2. Cliquez sur Tester l'intégration.

Testez la tâche Cloud SQL en vous connectant à l'instance Salesforce et en remplaçant l'état d'une opportunité par "fermé".

Testez la tâche Pub/Sub en vous connectant à l'instance Salesforce et en modifiant un autre détail de l'opportunité, mais conservez l'état de l'opportunité sur "ouvert".

Pour en savoir plus sur les tests, consultez la page Tester et publier des intégrations.

Pour vérifier si votre intégration a réussi, procédez comme suit :

  • Accéder à la page Cloud SQL.

    Accéder à Cloud SQL

    Dans les journaux de votre base de données et Cloud SQL, vérifiez l'insertion de la nouvelle ligne.
  • Accéder à la page Pub/Sub.

    Accéder à Pub/Sub

    Sélectionnez votre sujet Pub/Sub, puis cliquez sur Afficher les messages pour confirmer la réception du message envoyé par l'intégration.
  • Inspectez les journaux Application Integration pour afficher l'état d'une intégration donnée. Pour afficher les journaux :
    1. Cliquez sur Journaux dans la barre d'outils du concepteur d'intégration.
    2. La page Journaux d'exécution vous permet d'afficher les détails de chaque tentative d'exécution d'une intégration. Chaque entrée inclut les détails de la tentative d'exécution, y compris les suivants :
      • Nom de l'intégration
      • ID d'exécution
      • État
      • Start time
      • Durée
      • Version d'intégration
      • ID du déclencheur
    3. Cliquez sur la flèche de développement (>) à côté de l'intégration exécutée pour afficher une liste développée des tâches et des variables dans l'intégration, ainsi que l'état de la tâche et les charges utiles variables.