Consulta los conectores compatibles con Application Integration.
Invoca una integración para un evento de captura de datos modificados (CDC) de Salesforce
Obtén información para crear una integración de muestra en Application Integration con el activador de Salesforce. En los siguientes pasos, se describe cómo configurar el activador de Salesforce, las tareas, los conectores y las asignaciones de datos necesarios para ejecutar una integración completa.
En esta guía de inicio rápido, usarás el activador de Salesforce para invocar una integración en Application Integration para un evento de Captura de datos modificados (CDC) de Salesforce, como se muestra en la siguiente figura:
Un activador de Salesforce está suscrito al canal de oportunidades de Salesforce. Los cambios de datos en la oportunidad de Salesforce invocan una integración de aplicaciones que extrae el estado de la oportunidad de Salesforce. Si el estado está cerrado, la integración extrae los detalles de la oportunidad y escribe los datos en una instancia de Cloud SQL con un conector. Si hay un cambio de datos, pero el estado permanece abierto, la integración envía un mensaje a un tema de Pub/Sub mediante un conector.
En los siguientes pasos, se describe cómo configurar el activador, las tareas, los perfiles de autenticación, los bordes, las variables y la asignación de datos necesarios para ejecutar una integración exitosa.
Antes de comenzar
- Confirma que tu cuenta de desarrollador de Salesforce tenga habilitada la captura de datos modificados (CDC). En este instructivo, se supone que tienes una cuenta de desarrollador de Salesforce existente con la configuración del usuario y el conjunto de permisos necesarios. Para obtener información sobre la configuración de usuarios y el conjunto de permisos de Salesforce, consulta Configura un activador de Salesforce.
- Asigna los siguientes roles de IAM al agente de servicio de Application Integration(
service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
) en tu proyecto de Google Cloud.- Editor de Pub/Sub
- Administrador de conectores
- Invocador de Application Integration
- Crea la tabla Cloud SQL para almacenar los datos de los CDC de Salesforce.
- En la consola de Google Cloud, ve a la página Instancias de Cloud SQL y conéctate a tu instancia de MySQL. Consulta Conéctate a Cloud SQL para MySQL desde Cloud Shell
- Crea la siguiente base de datos de MySQL en tu instancia de 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;
- Verifica que se haya creado la tabla mediante la ejecución del siguiente comando.
SELECT * FROM OPPORTUNITIES;
- Crea una conexión de Cloud SQL para MySQL en los conectores. Consulta Crea una conexión de Cloud SQL para MySQL a fin de obtener información detallada.
- Crea una conexión de Cloud Pub/Sub en Conectores. Consulta Crea una conexión de Cloud Pub/Sub para obtener información detallada.
Cómo crear una integración nueva
Para crear una integración nueva, sigue estos pasos:
- En la consola de Google Cloud, ve a la página Application Integration.
- En el menú de navegación, haz clic en Integraciones. Aparecerá la página Integraciones.
- Haz clic en Crear integración.
- Ingresa un nombre y una descripción en el diálogo Crear integración. Por ejemplo,
Demo-CDC-Opportunities
- Selecciona una región para la integración.
- Haz clic en Crear para abrir el diseñador de integración.
Agrega y configura el activador de Salesforce
Para agregar un activador de Salesforce a la integración y configurarlo, sigue estos pasos:
- En el diseñador de integración, selecciona Agregar una tarea/activador > Activadores para ver una lista de los activadores disponibles.
- Haz clic y coloca el elemento activador de Salesforce en el diseñador de integración.
- Haz clic en el elemento Activador de Salesforce en el recuadro para abrir el panel de configuración del activador.
- Configura los siguientes campos en Entrada de activador:
- Tipo de evento: Selecciona Cambiar captura de datos (CDC) de la lista desplegable.
- Configuración de instancia de Salesforce: Haz clic en la opción + Agregar nueva configuración de instancia de Salesforce de la lista desplegable.
Aparecerá el cuadro de diálogo Agregar configuración de la instancia de Salesforce.
- Nombre de conexión de la instancia de Salesforce: ingresa un nombre de conexión para la instancia de Salesforce. Por ejemplo,
CDC-PlatformUser
- Dominio de Salesforce: Ingresa el nombre de dominio de Salesforce. Puedes encontrar esta información en la página Cuenta de Salesforce > Ver perfil.
- Perfil de autenticación: Selecciona un perfil de autenticación. Si no tienes un perfil de autenticación, crea uno nuevo. Para obtener más información, consulta Crea un perfil de autenticación nuevo.
- Haga clic en Agregar.
- Nombre de conexión de la instancia de Salesforce: ingresa un nombre de conexión para la instancia de Salesforce. Por ejemplo,
- Configuración del canal de Salesforce: Haz clic en la opción + Agregar nueva configuración del canal de Salesforce de la lista desplegable.
Aparecerá el cuadro de diálogo Agregar canal de Salesforce.
- Nombre del objeto de Salesforce: ingresa
Opportunity
. - Haga clic en Agregar.
- Nombre del objeto de Salesforce: ingresa
- Operación: Selecciona Actualizar en la lista desplegable
Los cambios en las propiedades se guardan de forma automática.
Agrega y configura tareas
En este instructivo, se usan las tareas de conectores y asignación de datos. Los detalles de configuración para cada una de estas tareas se describen de la siguiente manera.
Configura una tarea de conectores con una conexión de Cloud SQL para MySQL
Realiza los siguientes pasos a fin de configurar una tarea de Conectores para insertar registros en una tabla de Cloud SQL existente con la conexión de Cloud SQL para MySQL:
- Selecciona Agregar una tarea/activador > Tareas en el diseñador de integración para ver la lista de tareas disponibles.
- Haz clic y coloca el elemento Conectores en el diseñador de integración.
- Haz clic en el elemento de tarea Conectores en el diseñador para ver el panel de configuración de tarea de Conectores.
- Haz clic en
Insert row to Cloud SQL
.
y cambia el nombre de los Conectores como - Haz clic en Configurar tarea.
Aparecerá el cuadro de diálogo Configurar tarea de conector.
- Haz lo siguiente en el cuadro de diálogo Configurar tarea de conector:
- Selecciona la región de conexión.
- Una vez que eliges una región, aparece la columna Conexión. Selecciona tu conexión de Cloud SQL para MySQL de la lista de conexiones disponibles.
- Una vez que se elige una conexión, aparece la columna Tipo. Selecciona Entidades y, luego, OPERACIONES en la lista de entidades disponibles.
- Una vez que se elige un tipo, aparece la columna Operación. Selecciona Crear.
- Haz clic en Listo para completar la configuración de conexión y cerrar el panel.
Configura una tarea de Conectores con una conexión de Cloud Pub/Sub
Sigue los siguientes pasos para configurar una tarea de Conectores a fin de publicar un mensaje de Pub/Sub con la conexión de Cloud Pub/Sub:
- Selecciona Agregar una tarea/activador > Tareas en el diseñador de integración para ver la lista de tareas disponibles.
- Haz clic y coloca el elemento Conectores en el diseñador de integración.
- Haz clic en el elemento de tarea Conectores en el diseñador para ver el panel de configuración de tarea de Conectores.
- Haz clic en
Publish to cloud pub/sub
.
y cambia el nombre de los Conectores como - Haz clic en Configurar tarea.
Aparecerá el cuadro de diálogo Configurar tarea de conector.
- Haz lo siguiente en el cuadro de diálogo Configurar tarea de conector:
- Selecciona la región de conexión.
- Una vez que eliges una región, aparece la columna Conexión. Selecciona tu conexión de Pub/Sub de la lista de conexiones disponibles.
- Una vez que se elige una conexión, aparece la columna Tipo. Selecciona Acciones y, luego, publicar mensaje de la lista de acciones disponibles.
- Haz clic en Listo para completar la configuración de conexión y cerrar el panel.
Configura la tarea Asignación de datos
Sigue estos pasos para configurar una tarea de asignación de datos:
- Selecciona Agregar una tarea/activador > Tareas para ver una lista de tareas disponibles.
- Haz clic y coloca el elemento Asignación de datos en el diseñador de integración.
- Haz clic en el elemento Asignación de datos en el diseñador para abrir el panel de configuración de la tarea.
- Haz clic en Abrir editor de asignación de datos.
El Editor de asignación de datos te permite asignar variables de entrada a las variables de salida deseadas con las funciones de transformación disponibles. Entonces, el resultado está disponible como una variable para cualquier otra tarea o activador de integración. Para obtener más detalles pasando datos como variables, consulta Cómo usar variables en Application Integration.
- Haz clic en + Add new variable y crea las siguientes variables de salida:
Nombre de la variable de resultado Data type OpportunityIsClosed
Boolean
OpportunityId
String
PubSubMessage
String
- Crea el siguiente mapeo entre la variable SalesforceTriggerCdcPayload y las variables de carga útil de entrada del conector, como se muestra en la siguiente tabla:
Input Salida 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)
Una vez que hayas completado la asignación, cierra el panel. Los cambios se guardarán automáticamente.
Agregar conexión perimetral
Un perímetro es una conexión entre dos elementos de una integración y una condición perimetral te permite especificar las condiciones que se deben cumplir para que una integración pase a la tarea conectada por el perímetro. Para obtener más información sobre los perímetros y las condiciones perimetrales, consulta Perímetros.
- Agrega una conexión perimetral del elemento Activador de Salesforce al elemento Asignación de datos.
- Agrega una conexión perimetral desde el elemento Asignación de datos al elemento Insertar fila al conector de Cloud SQL con la siguiente condición perimetral:
$OpportunityIsClosed$ = TRUE
- Agrega otra conexión perimetral desde el elemento Asignación de datos al elemento Conector de Cloud Pub/Sub con la siguiente condición perimetral:
$OpportunityIsClosed$ = FALSE
Prueba la integración
Para probar la nueva integración, sigue estos pasos:
- Haz clic en Probar en la barra de herramientas del diseñador de integración y, luego, selecciona Activador de Salesforce.
Aparecerá el cuadro de diálogo Probar integración.
- Haz clic en Probar integración.
Acceda a la instancia de Salesforce y cambie el estado de la oportunidad a “cerrado” para probar la tarea de Cloud SQL.
Para probar la tarea de Pub/Sub, acceda a la instancia de Salesforce y cambie otros detalles sobre la oportunidad, pero deje el estado de la oportunidad “abierta”.
Para obtener más información sobre las pruebas, consulta Prueba y publica integraciones.
Para verificar el éxito de la integración, haz lo siguiente:
- Ir a la página Cloud SQL Verifica tu base de datos y registros de Cloud SQL para confirmar la inserción de la fila nueva.
- Ir a la página de Pub/Sub Selecciona tu tema de Pub/Sub y haz clic en Ver mensajes para confirmar la recepción del mensaje enviado por la integración.
- Inspecciona los registros de integración de aplicaciones para ver el estado de una integración determinada. Para ver los registros, haz lo siguiente:
- Haz clic en Registros en la barra de herramientas del diseñador de integración.
- En la página Registros de ejecución, puedes ver los detalles de cada intento para ejecutar una integración.
Cada entrada incluye detalles para el intento de ejecución, incluidos los siguientes:
- Nombre de la integración
- ID de ejecución
- Estado
- Hora de inicio
- Duración
- Versión de la integración
- ID de activador
- Haz clic en la flecha desplegable (>) junto a la integración ejecutada para ver una lista expandida de tareas y variables en la integración, junto con el estado de la tarea y las cargas útiles de la variable.