Inizia a utilizzare l'Apigee Integration e un trigger Salesforce

Scopri come creare un'integrazione di esempio in Apigee Integration utilizzando il trigger di Salesforce. I passaggi seguenti spiegano come configurare l'attivatore, le attività, i connettori e le mappature dei dati necessari per eseguire un'integrazione completa.

In questa guida rapida, utilizzerai il trigger di Salesforce per richiamare un'integrazione in Apigee Integration per un evento Change Data Capture (CDC) di Salesforce, come mostrato nella figura seguente:

Diagramma di sequenza di esempio Diagramma di sequenza di esempio

Un attivatore Salesforce è iscritto al canale opportunità Salesforce. Le modifiche ai dati dell'opportunità Salesforce richiamano un'Apigee Integration che estrae lo stato dell'opportunità Salesforce. Se lo stato è chiuso, l'integrazione estrae i dettagli dell'opportunità e scrive i dati in un'istanza Cloud SQL utilizzando un connettore. Se viene apportata una modifica ai dati, ma lo stato rimane aperto, l'integrazione invia un messaggio a un argomento Pub/Sub utilizzando un connettore.

I passaggi seguenti spiegano come configurare trigger, attività, profili di autenticazione, margini, variabili e mappatura dei dati necessari per eseguire un'integrazione corretta.

Prima di iniziare

  • Verifica che nel tuo account sviluppatore Salesforce sia attivata la funzionalità Change Data Capture (CDC). Questo tutorial presuppone che tu abbia un account sviluppatore Salesforce esistente con la configurazione utente e il set di autorizzazioni richiesti. Per informazioni sulla configurazione degli utenti di Salesforce e sul set di autorizzazioni, consulta Configurare un trigger Salesforce.
  • Assegna i seguenti ruoli IAM all'agente di servizio di integrazione Apigee(service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com) nel tuo progetto Google Cloud.
    • Editor Pub/Sub
    • Amministratore connettori
    • Invoker integrazioni Apigee
    Per saperne di più sull'assegnazione dei ruoli IAM, consulta Ruoli e autorizzazioni IAM.
  • Crea la tabella Cloud SQL per archiviare i dati CDC di Salesforce.
    1. Nella console Google Cloud, vai alla pagina Istanze Cloud SQL e connettiti all'istanza MySQL. Vedi Connettersi a Cloud SQL per MySQL da Cloud Shell.

      Vai alle istanze Cloud SQL

    2. Crea il seguente database MySQL sulla tua istanza 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. Verifica che la tabella venga creata eseguendo questo comando.
      SELECT * FROM OPPORTUNITIES;
  • Crea una connessione Cloud SQL per MySQL in Connettori. Per informazioni dettagliate, consulta Creare una connessione Cloud SQL per MySQL .
  • Crea una connessione Cloud Pub/Sub in Connectors. Per informazioni dettagliate, consulta Creare una connessione Cloud Pub/Sub .

Creazione di una nuova integrazione

Per creare una nuova integrazione:

  1. Nell'UI di Apigee, seleziona la tua organizzazione Apigee.
  2. Fai clic su Sviluppa > Integrazioni.
  3. Fai clic su Crea integrazione.
  4. Inserisci un nome e una descrizione nella finestra di dialogo Crea integrazione. Ad esempio, Demo-CDC-Opportunities.
  5. Seleziona una regione per l'integrazione.
  6. Fai clic su Crea per aprire il designer dell'integrazione.

Aggiungi e configura l'attivatore Salesforce

Per aggiungere e configurare un attivatore Salesforce per l'integrazione, segui questi passaggi:

  1. Nel progettista dell'integrazione, seleziona Aggiungi un'attività/un attivatore > Attivatori per visualizzare un elenco degli attivatori disponibili.
  2. Fai clic sull'elemento Trigger Salesforce e posizionalo nel progettista dell'integrazione.
  3. Fai clic sull'elemento Trigger Salesforce nel canvas per aprire il riquadro di configurazione dell'attivatore.
  4. Configura i seguenti campi in Input trigger:
    • Tipo di evento: seleziona Change Data Capture (CDC) dall'elenco a discesa.
    • Configurazione istanza Salesforce: fai clic sull'opzione + Aggiungi una nuova configurazione istanza Salesforce dall'elenco a discesa.

      Viene visualizzata la finestra di dialogo Aggiungi la configurazione dell'istanza Salesforce.

      • Nome connessione istanza Salesforce: inserisci un nome per la connessione per l'istanza Salesforce. Ad esempio, CDC-PlatformUser.
      • Dominio Salesforce: inserisci il nome del tuo dominio Salesforce. Puoi trovare queste informazioni nella pagina Account Salesforce > Visualizza profilo.
      • Profilo di autenticazione: seleziona un profilo di autenticazione. Se non hai un profilo di autenticazione, creane uno nuovo. Per informazioni, vedi Creare un nuovo profilo di autenticazione.
      • Fai clic su Aggiungi.
    • Configurazione del canale Salesforce: fai clic sull'opzione + Aggiungi nuova configurazione del canale Salesforce dall'elenco a discesa.

      Viene visualizzata la finestra di dialogo Aggiungi canale Salesforce.

      • Nome oggetto Salesforce: inserisci Opportunity.
      • Fai clic su Aggiungi.
    • Operazione: seleziona Aggiorna dall'elenco a discesa

    Le modifiche alle proprietà vengono salvate automaticamente.

Aggiungi e configura attività

Questo tutorial utilizza le attività Connettori e Mappatura dei dati. I dettagli di configurazione per ciascuna di queste attività sono descritti di seguito.

Configurare un'attività Connectors con una connessione Cloud SQL per MySQL

Esegui i seguenti passaggi per configurare un'attività Connettori in modo da inserire i record in una tabella Cloud SQL esistente utilizzando la connessione Cloud SQL per MySQL:

  1. Seleziona + Aggiungi un'attività/un attivatore > Tasks nel progettista dell'integrazione per visualizzare l'elenco delle attività disponibili.
  2. Fai clic sull'elemento Connectors e posizionalo nel progettista dell'integrazione.
  3. Fai clic sull'elemento attività Connettori nel designer per visualizzare il riquadro di configurazione dell'attività dei connettori.
  4. Fai clic su e modifica il nome dei connettori in Insert row to Cloud SQL.
  5. Fai clic su Configura attività.

    Viene visualizzata la finestra di dialogo Configura attività connettore.

  6. Esegui le seguenti operazioni nella finestra di dialogo Configura attività del connettore:
    1. Seleziona la regione della connessione.
    2. Dopo aver scelto una regione, viene visualizzata la colonna Connessione. Seleziona la connessione Cloud SQL per MySQL dall'elenco delle connessioni disponibili.
    3. Una volta scelta una connessione, viene visualizzata la colonna Tipo. Seleziona Entità, quindi OPPORTUNITÀ dall'elenco di entità disponibili.
    4. Una volta scelto un tipo, viene visualizzata la colonna Operazione. Seleziona Crea.
    5. Fai clic su Fine per completare la configurazione della connessione e chiudere il riquadro.

Configurare un'attività Connectors con una connessione Cloud Pub/Sub

Per configurare un'attività Connettori in modo da pubblicare un messaggio Pub/Sub utilizzando la connessione Cloud Pub/Sub, segui questi passaggi:

  1. Seleziona + Aggiungi un'attività/un attivatore > Tasks nel progettista dell'integrazione per visualizzare l'elenco delle attività disponibili.
  2. Fai clic sull'elemento Connectors e posizionalo nel progettista dell'integrazione.
  3. Fai clic sull'elemento attività Connettori nel designer per visualizzare il riquadro di configurazione dell'attività dei connettori.
  4. Fai clic su e modifica il nome dei connettori in Publish to cloud pub/sub.
  5. Fai clic su Configura attività.

    Viene visualizzata la finestra di dialogo Configura attività connettore.

  6. Esegui le seguenti operazioni nella finestra di dialogo Configura attività del connettore:
    1. Seleziona la regione della connessione.
    2. Dopo aver scelto una regione, viene visualizzata la colonna Connessione. Seleziona la connessione Pub/Sub dall'elenco delle connessioni disponibili.
    3. Una volta scelta una connessione, viene visualizzata la colonna Tipo. Seleziona Azioni e poi publishMessage dall'elenco delle azioni disponibili.
    4. Fai clic su Fine per completare la configurazione della connessione e chiudere il riquadro.

Configura l'attività di mappatura dei dati

Per configurare un'attività di mappatura dei dati, segui questi passaggi:

  1. Seleziona Aggiungi un'attività/un attivatore > Tasks per visualizzare un elenco delle attività disponibili.
  2. Fai clic sull'elemento Mappatura dei dati e posizionalo nel progettista dell'integrazione.
  3. Fai clic sull'elemento Mappatura dei dati nel designer per aprire il riquadro di configurazione dell'attività.
  4. Fai clic su Apri editor di mappatura dei dati.

    L'editor di mappatura dei dati consente di mappare le variabili di input alle variabili di output desiderate utilizzando le funzioni di trasformazione disponibili. L'output è quindi disponibile come variabile per qualsiasi altra attività o trigger di integrazione. Per maggiori dettagli sul trasferimento dei dati come variabili, consulta Utilizzare le variabili nell'integrazione di Apigee.

  5. Fai clic su + Aggiungi nuova variabile e crea le seguenti variabili di output:
    Nome variabile di output Tipo di dati
    OpportunityIsClosed Boolean
    OpportunityId String
    PubSubMessage String
  6. Crea la seguente mappatura tra la variabile SalesforceTriggerCdcPayload e le variabili Connector input payload, come illustrato nella tabella seguente:
    Input Salvaguardie
    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. Una volta completata la mappatura, chiudi il riquadro. Eventuali modifiche verranno salvate automaticamente.

Aggiungi connessione perimetrale

Un perimetro è una connessione tra due elementi qualsiasi in un'integrazione e una condizione perimetrale consente di specificare le condizioni che devono essere soddisfatte affinché il controllo di un'integrazione passi all'attività connessa dal perimetro. Per ulteriori informazioni su bordi e condizioni per i bordi, consulta la sezione Perimetri.

  1. Aggiungi una connessione perimetrale dall'elemento trigger Salesforce all'elemento Data Mapping.
  2. Aggiungi una connessione perimetrale dall'elemento Data Mapping all'elemento Insert row to Cloud SQL Connector con la seguente condizione perimetrale:
      $OpportunityIsClosed$ = TRUE
  3. Aggiungi un'altra connessione perimetrale dall'elemento Data Mapping all'elemento Connettore Cloud Pub/Sub con la seguente condizione perimetrale:
      $OpportunityIsClosed$ = FALSE
Immagine di esempio che mostra le connessioni perimetrali Immagine di esempio che mostra le connessioni perimetrali

Testare l'integrazione

Per testare la nuova integrazione:

  1. Fai clic su Test (Test) nella barra degli strumenti del designer di integrazione, quindi seleziona l'attivatore Salesforce.

    Viene visualizzata la finestra di dialogo Testa integrazione.

  2. Fai clic su Testa integrazione.

Testa l'attività Cloud SQL accedendo all'istanza Salesforce e modificando lo stato dell'opportunità in "chiusa".

Testa l'attività Pub/Sub accedendo all'istanza di Salesforce e modificando un altro dettaglio sull'opportunità, ma lascia "aperto" lo stato dell'opportunità.

Per saperne di più sui test, consulta Testare e pubblicare le integrazioni.

Per verificare il successo dell'integrazione:

  • Vai alla pagina Cloud SQL.

    Vai a Cloud SQL

    Controlla il database e i log di Cloud SQL per confermare l'inserimento della nuova riga.
  • Vai alla pagina Pub/Sub.

    Vai a Pub/Sub

    Seleziona l'argomento Pub/Sub e fai clic su Visualizza i messaggi per confermare la ricezione del messaggio inviato dall'integrazione.
  • Controlla i log di Apigee Integration per visualizzare lo stato di una determinata integrazione. Per visualizzare i log:
    1. Fai clic su Log nella barra degli strumenti del designer dell'integrazione.
    2. Nella pagina Log di esecuzione puoi visualizzare i dettagli di ogni tentativo di eseguire un'integrazione. Ogni voce include i dettagli del tentativo di esecuzione, tra cui:
      • Nome integrazione
      • ID esecuzione
      • Stato
      • Ora di inizio
      • Durata
      • Versione integrazione
      • ID attivatore
    3. Fai clic sulla freccia di espansione (>) accanto all'integrazione eseguita per visualizzare un elenco espanso di attività e variabili nell'integrazione, oltre allo stato dell'attività e ai payload variabili.