Enviar registros de objetos de Salesforce cambiados a una base de datos a través de una regla de flujo de Salesforce utilizando Jitterbit Integration Studio y API Manager
Introducción
Este patrón de diseño de integración configura una regla de flujo de Salesforce que envía un mensaje saliente a un API de API Manager cuando un objeto cambia (en este ejemplo, el objeto Cuenta). Un proyecto de Integration Studio procesa el mensaje saliente de Salesforce, mapea los datos del objeto y los guarda en una base de datos.
Nota
Configurar un mensaje saliente de Salesforce con un API de API Manager es un patrón de diseño de integración similar que utiliza Design Studio. Enviar registros de objetos de Salesforce cambiados a una base de datos a través de flujo de Salesforce y API Manager es un patrón de integración idéntico que utiliza un Flujo de Salesforce en lugar de una Regla de Flujo.
Para configurar este patrón, sigue estas secciones en orden:
- Parte 1: En Salesforce, configura una regla de flujo para enviar un mensaje saliente cuando un objeto cambie y descarga el archivo WSDL que define el mensaje.
- Parte 2: En Integration Studio, configura una cadena de operación para recibir el mensaje saliente de Salesforce y almacenar los valores mapeados en una base de datos.
- Parte 3: En API Manager, configura un API como un punto final para Salesforce.
- Parte 4: Regresa a Salesforce para actualizar la URL del punto final del mensaje saliente, activa el mensaje saliente y luego prueba el patrón de diseño de integración completado.
Parte 1: Regla de flujo de Salesforce y archivo WSDL
- En Salesforce, selecciona Configuración > Herramientas de Plataforma > Automatización de Procesos > Reglas de Flujo.
-
En la página de Reglas de Flujo, haz clic en el botón Nueva Regla (resaltado en la imagen a continuación). Si se abre un diálogo de Probar en Flow Builder, haz clic en Continuar con Reglas de Flujo.
-
En la página de Nueva Regla de Flujo de Trabajo, haz clic en el menú Objeto, selecciona Cuenta, y luego haz clic en Siguiente.
-
En la página de Cuenta, ingresa valores para lo siguiente, y luego haz clic en Guardar y Siguiente:
- Nombre de la Regla: Tu elección de nombre.
- Descripción: (Opcional) Una descripción para esta regla.
- Criterios de Evaluación: Creado, y Cada Vez que se Edita.
- Criterios de la Regla: Haz clic en Ejecutar Esta Regla Si, luego selecciona La Fórmula Evalúa a Verdadero.
- En el campo de fórmula, ingresa true.
-
En la página de Editar Regla, haz clic en Agregar Acción de Flujo de Trabajo, luego selecciona Nuevo Mensaje Saliente (destacado en la imagen a continuación).
-
En la página de Nuevo Mensaje Saliente, ingresa valores para lo siguiente, y luego haz clic en Guardar:
- Nombre: Tu elección de nombre.
- Nombre Único: Este nombre se genera automáticamente basado en el valor de Nombre y las reglas de nomenclatura del campo.
- Descripción: (Opcional) Una descripción para este mensaje saliente.
- URL de Endpoint: example.com. Esta URL temporal se actualiza más tarde.
- Usuario para Enviar Como: Ingresa el usuario que envía el mensaje saliente. El valor predeterminado es tu nombre de usuario de Salesforce.
- Componente Protegido: No seleccionado.
- Enviar ID de Sesión: No seleccionado.
- Campos de Cuenta a Enviar: Selecciona los campos del objeto a enviar. En este ejemplo, solo se seleccionan Nombre y Teléfono. El campo Id se selecciona automáticamente, porque es el campo clave para el objeto.
-
En la página de Editar Regla, haz clic en Listo.
-
En la página de Regla de Flujo de Trabajo, en la sección de Acciones de Flujo de Trabajo Inmediatas, haz clic en el enlace de descripción para el mensaje saliente (resaltado en la imagen a continuación).
-
En la página de Detalles del Mensaje Saliente de Flujo de Trabajo del mensaje, haz clic en el enlace Haz clic para WSDL en la fila etiquetada como Endpoint WSDL (resaltado en la imagen a continuación).
-
Se abre un archivo XML en una nueva ventana del navegador. Guarda el archivo con una extensión
.wsdl
. Dependiendo de tu sistema operativo, es posible que debas establecer la extensión del archivo después de descargarlo.
Parte 2: Operaciones de Integration Studio
Definir la operación 'Mensaje Saliente de Salesforce'
-
Crea un nuevo proyecto de Integration Studio.
-
Arrastra una actividad de Solicitud SOAP desde la paleta de componentes de diseño y suéltala en una operación vacía en el lienzo de diseño.
- Establece el nombre de la operación como Mensaje Saliente de Salesforce.
- Haz doble clic en la instancia de actividad Solicitud SOAP en la operación para abrir su pantalla de configuración.
- En el paso 1, selecciona Subir Archivo, haz clic en Examinar, selecciona el archivo WSDL descargado previamente y luego haz clic en Subir.
- Haz clic en Puerto y selecciona Notificación (la única opción). Los campos restantes se completan automáticamente y no necesitan más edición.
-
Haz clic en Siguiente.
-
En el paso 2, haz clic en Finalizado.
-
Agrega una nueva transformación a la derecha de la actividad SOAP Request.
- Para el esquema de destino, haz clic en Mirror Source Schema.
- Haz clic en Automap Exact Matches, o mapea manualmente los campos de origen a los de destino.
-
En el esquema de destino, haz clic en Edit Schema, establece el nombre del esquema como Upsert Schema, y luego haz clic en Save Changes.
-
Cierra la transformación para regresar al flujo de trabajo.
-
En la categoría Connectors de la paleta de componentes, encuentra y haz clic en el conector Variable.
- Deja los nombres de conexión y variable con sus valores predeterminados, y luego haz clic en Save Changes.
- Arrastra una Variable write activity desde la paleta de componentes y suéltala en la operación Salesforce Outbound Message, a la derecha de la transformación.
- Haz doble clic en la actividad Write.
-
En el paso 1, selecciona Yes, Use Saved Schema, haz clic en Saved Schemas, selecciona Upsert Schema, y luego haz clic en Next.
-
En el paso 2, haz clic en Finished.
La operación Salesforce Outbound Message:
Define la operación 'Salesforce Response'
- Arrastra una SOAP Response activity desde la paleta de componentes y suéltala en una operación vacía en el lienzo de diseño.
- Establece el nombre de la operación como Salesforce Response.
- Haz doble clic en la actividad SOAP Response.
-
En el paso 1, selecciona Select Existing, selecciona el archivo WSDL previamente cargado, y luego haz clic en Next.
-
En el paso 2, haz clic en Finalizado.
-
Agrega una nueva transformación a la izquierda de la actividad SOAP Response en la operación Salesforce Response.
-
Agrega un valor personalizado al campo Ack con el valor true, luego cierra la transformación para regresar al flujo de trabajo.
La operación Salesforce Response:
Definir la operación 'Database Upsert'
- Arrastra una actividad de lectura de variable desde la paleta de componentes y suéltala en una operación vacía en el lienzo de diseño.
- Establece el nombre de la operación como Database Upsert.
- Haz doble clic en la actividad Read.
-
En el paso 1, selecciona Sí, Usar Esquema Guardado, haz clic en Esquemas Guardados, selecciona Esquema de Upsert, luego haz clic en Siguiente.
-
En el paso 2, haz clic en Finalizado.
-
Configura una conexión a la base de datos para tu base de datos de destino, luego haz clic en Guardar Cambios. (Se muestra una conexión a un servidor PostgreSQL en este ejemplo.)
-
Arrastra una actividad Database Upsert desde la paleta de componentes y suéltala en la operación Database Upsert, a la derecha de la actividad Read.
- Haz doble clic en la actividad Upsert.
-
En el paso 1, haz clic en Actualizar, selecciona la tabla de base de datos de destino, luego haz clic en Siguiente.
-
En el paso 2, selecciona las columnas que se actualizarán, luego haz clic en Siguiente.
-
En el paso 3, haz clic en Finalizado.
-
En la operación de Upsert de Base de Datos, agrega una nueva transformación entre las actividades de Leer y Upsert.
-
Mapea manualmente los campos del objeto fuente de Salesforce a las columnas de la base de datos de destino, luego cierra la transformación para regresar al flujo de trabajo.
La operación de Upsert de Base de Datos:
Acciones de operación y despliegue
- Abre la pantalla de configuración para la operación de Mensaje Saliente de Salesforce.
- Selecciona la pestaña Acciones, luego establece los siguientes valores de campo:
- Condición: En Éxito.
- Acción: Ejecutar Operación.
- Operación: Respuesta de Salesforce.
-
Haz clic en + Agregar Acción, luego cierra la pantalla de configuración de la operación.
-
Abre la pantalla de configuración para la operación de Respuesta de Salesforce.
- Selecciona la pestaña Acciones, luego establece los siguientes valores de campo:
- Condición: En Éxito.
- Acción: Ejecutar Operación.
- Operación: Upsert de Base de Datos.
-
Haz clic en + Agregar Acción, luego cierra la pantalla de configuración de la operación.
El proyecto completado, antes del despliegue:
-
Desplegar el proyecto.
Parte 3: API Manager API
- En API Manager, selecciona APIs, luego haz clic en Nueva API.
-
En el paso 1 de la página Publicar Nueva API, ingresa valores para lo siguiente, luego haz clic en Siguiente:
- Nombre de la API: Ingresa un nombre para la API.
- Entorno: Selecciona el entorno donde se desplegó el proyecto de Integration Studio.
- Raíz del Servicio: Deja el valor inicial derivado del nombre de la API.
- Número de Versión: (Opcional) Ingresa un número de versión de la API.
- Descripción: (Opcional) Ingresa una descripción para esta API.
-
En el paso 2, selecciona API Personalizada como el Tipo de Servicio y luego haz clic en Agregar Servicio API. Para el nuevo servicio API, ingresa estos valores para los siguientes campos, haz clic en Guardar, y luego haz clic en Siguiente:
-
Método de Solicitud: Usa el menú para seleccionar el método de solicitud POST para el servicio API. Por defecto, el método de solicitud está configurado en GET.
-
Nombre del Servicio: Ingresa un nombre de servicio.
-
En la pestaña Operación, selecciona estos valores:
-
Asignar Proyecto: Desde el menú, selecciona tu proyecto de Integration Studio.
-
Asignar Operación(es):
-
Operación: Selecciona la operación Mensaje Saliente de Salesforce.
-
Tipo de Respuesta: Selecciona Destino Final como el tipo de respuesta.
-
-
-
-
En el paso 3, haz clic en Saltar Este Paso.
-
En el paso 4, haz clic en Guardar y Publicar.
-
En el diálogo titulado ¡Todo Listo, Tu API está Activa!, haz clic en Copiar URL, luego haz clic en Descartar.
Parte 4: Actualizar la URL del endpoint de Salesforce y activar
- En Salesforce, selecciona Configuración > Herramientas de Plataforma > Automatización de Procesos > Acciones de Flujo de Trabajo > Mensajes Salientes.
- En la página de Mensajes Salientes, haz clic en Editar para tu mensaje saliente.
-
Reemplaza el contenido del campo URL de Endpoint (resaltado en la imagen a continuación) con la URL copiada al final de la sección anterior, luego haz clic en Guardar.
-
En la sección de Reglas de Flujo de Trabajo que Usan Este Mensaje Saliente, haz clic en Activar para la regla (resaltada en la imagen a continuación).
Prueba la integración
Para probar este patrón de diseño de integración, sigue estos pasos:
- En Salesforce, abre la aplicación Servicio y selecciona la pestaña Cuentas.
- Edita un contacto de cuenta y luego guárdalo.
- Inicia sesión en tu base de datos y consulta la tabla de destino.