Configurar mensajes salientes con una API de API Manager en Jitterbit Design Studio
Introducción
Este patrón de diseño de integración configura un Salesforce regla de flujo de trabajo que envía un mensaje saliente a un API Manager API cuando cambia un objeto (en este ejemplo, el objeto Cuenta). Un proyecto de Design Studio procesa el mensaje saliente de Salesforce, asigna los datos del objeto y los guarda en una base de datos.
Nota
Enviar registros de objetos de Salesforce modificados a una base de datos a través del API Manager es un patrón de diseño de integración similar que utiliza Integration Studio.
Para configurar este patrón, siga estas secciones en orden:
- Parte 1: En Salesforce, configure una regla de flujo de trabajo para enviar un mensaje saliente cuando un objeto cambia y descargue el archivo WSDL que define el mensaje.
- Parte 2: En Design Studio, configure una cadena de operación para recibir el mensaje saliente de Salesforce y almacene los valores asignados en una base de datos.
- Parte 3: En API Manager, configure una API como extremo para Salesforce.
- Parte 4: Regrese a Salesforce para actualizar la URL del extremo del mensaje saliente, active el mensaje saliente y luego pruebe el patrón de diseño de integración completado.
Parte 1: Configurar una regla de flujo de trabajo de Salesforce y descargar el archivo WSDL
- En Salesforce, seleccione Configuración > Herramientas de la plataforma > Automatización de procesos > Reglas de Flujo de trabajo.
-
En la página Reglas de Flujo de trabajo, haga clic en el botón Nueva regla (resaltado en la imagen a continuación). Si se abre el cuadro de diálogo Pruébelo en el generador de flujo, haga clic en Continuar con las reglas de Flujo de trabajo.
-
En la página Nueva regla de Flujo de trabajo, haga clic en el menú Objeto, seleccione Cuenta y luego haga clic en Siguiente.
-
En la página Cuenta, ingrese los valores para lo siguiente y luego haga clic en Guardar y siguiente:
- Nombre de la regla: El nombre que elijas.
- Descripción: (Opcional) Una descripción para esta regla.
- Criterios de evaluación: Creado y cada vez que se edita.
- Criterios de la regla: Haga clic en Ejecutar esta regla si, luego seleccione La fórmula se evalúa como verdadera.
- En el campo de fórmula, ingrese true.
-
En la página Editar regla, haga clic en Agregar acción de Flujo de trabajo y luego seleccione Nuevo mensaje saliente (resaltado en la imagen a continuación).
-
En la página Nuevo mensaje saliente, ingrese los valores para lo siguiente y luego haga clic en Guardar:
- Nombre: El nombre que elijas.
- Nombre único: Este nombre se genera automáticamente en función del valor de Nombre y las reglas de nomenclatura del campo.
- Descripción: (Opcional) Una descripción para este mensaje saliente.
- URL del Extremo: example.com. Esta URL temporal se actualiza más adelante.
- Usuario para enviar como: Ingrese el usuario que envía el mensaje saliente. El valor predeterminado es su nombre de usuario de Salesforce.
- Componente protegido: No seleccionado.
- Enviar ID de sesión: No seleccionado.
- Campos de cuenta para enviar: Seleccione los campos del objeto para 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 Editar regla, haga clic en Listo.
-
En la página Regla de Flujo de trabajo, en la sección Acciones inmediatas del Flujo de trabajo, haga clic en el enlace de descripción del mensaje saliente (resaltado en la imagen a continuación).
-
En la página Detalles del mensaje saliente del Flujo de trabajo del mensaje, haga clic en el enlace Haga clic para WSDL en la fila denominada WSDL del Extremo (resaltado en la imagen a continuación).
-
Se abre un archivo XML en una nueva ventana del navegador. Guarde el archivo con un
.wsdl
extensión. Dependiendo de su sistema operativo, es posible que tenga que configurar la extensión del archivo después de descargarlo.
Parte 2: Operaciones del Design Studio
Definir la operación 'Mensaje saliente de Salesforce '
-
Crea un nuevo proyecto de Design Studio.
-
En la lista de elementos del proyecto a la izquierda, haga clic derecho en Operaciones y luego seleccione Nueva operación.
- En el cuadro de diálogo Seleccionar tipo, seleccione Secuencia de comandos y haga clic en Continuar.
-
En la ventana Operaciones, establezca el nombre de la operación en Mensaje saliente de Salesforce.
-
Haga doble clic en la actividad Secuencia de comandos de la operación y, a continuación, haga clic en Crear nuevo Jitterbit Script.
-
En la ventana Nuevo Secuencia de comandos, establezca los valores para lo siguiente, haga clic en Guardar y luego cierre la ventana del secuencia de comandos:
- Nombre: Recibir mensaje saliente de Salesforce
-
Edite el secuencia de comandos para que coincida con lo siguiente:
<trans> $org.api.salesforce.request=$jitterbit.api.request.body; </trans>
Esto crea una variable global y lo establece en el valor de la variable global predefinida
jitterbit.api.request.body
. -
En la ventana de operación Mensaje saliente de Salesforce, haga clic en Guardar.
-
En la lista de elementos del proyecto a la izquierda, haga clic derecho en Fuentes y luego seleccione Nueva fuente.
- En el cuadro de diálogo Seleccionar tipo, seleccione Variable global y haga clic en Continuar.
-
En la ventana Nueva fuente, establezca los valores para lo siguiente, haga clic en Guardar y luego cierre la ventana de la fuente:
- Nombre: Solicitud de API de Salesforce
- Tipo: Variable global
- Nombre de variable global: org.api.salesforce.request
Definir la operación 'Enviar respuesta API '
-
Cree una nueva operación de tipo Transformación. Establezca el nombre de la operación como Enviar respuesta de API.
-
Haga doble clic en Transformación. En el cuadro de diálogo Seleccionar Transformación, haga clic en Crear nueva Transformación.
-
En el paso NOMBRE de la ventana Nueva Transformación, ingrese valores para lo siguiente y luego haga clic en Siguiente >:
- Nombre: Enviar respuesta API.
- Fuente: (Ninguna).
- Objetivo: Respuesta SOAP/WSDL.
-
En el paso TARGET, seleccione Seleccionar un archivo WSDL local, haga clic en Explorar..., seleccione el archivo WSDL descargado previamente, luego haga clic en Siguiente > y espere la validación del archivo.
-
En el paso TARGET, haga clic en Siguiente >.
-
En la página Opciones, haga clic en Finalizar.
-
En la ventana de transformación Enviar respuesta de API, expanda todos los nodos hasta que aparezca el elemento
[EV?] Ack (Boolean)
es visible, luego haga doble clic en él. -
En el Generador de fórmulas, edite el secuencia de comandos para que coincida con lo siguiente y luego haga clic en Aceptar para cerrar el editor de secuencia de comandos:
<trans> true </trans>
Esta es la respuesta a la solicitud SOAP de Salesforce.
-
En la ventana de transformaciones Enviar respuesta de API, haga clic en Guardar y luego cierre la ventana.
-
En la ventana de operación Enviar respuesta de API, haga clic con el botón derecho en el elemento Destino, seleccione Usar respuesta de API y, a continuación, haga clic en Guardar:
La operación Mensaje saliente de Salesforce:
-
Abra la operación Mensaje saliente de Salesforce, seleccione la flecha hacia abajo junto al nombre de la operación y luego seleccione En caso de éxito > Operación > Seleccionar existente....
-
En el cuadro de diálogo Seleccionar operación exitosa, seleccione Enviar respuesta de API y luego haga clic en Aceptar.
-
En la ventana de operación Mensaje saliente de Salesforce, haga clic en Guardar.
Definir la operación 'Upsert Database'
-
Cree una nueva operación de tipo Transformación. Establezca el nombre de la operación en Upsert Database.
-
Haga doble clic en la actividad Fuente.
-
En el cuadro de diálogo Seleccionar fuente, seleccione Solicitud de API de Salesforce y luego haga clic en Aceptar.
-
Haga doble clic en el elemento Target.
-
En el cuadro de diálogo Seleccionar objetivo, haga clic en Crear nuevo objetivo.
-
En la ventana Nuevo destino, establezca los valores para lo siguiente, haga clic en Probar conexión y luego cierre la ventana Base de datos:
- Nombre: Punto final de la base de datos.
- Tipo: Base de datos.
- Parámetros de conexión: Establezca los parámetros para su base de datos. (En este ejemplo se muestra una conexión a un servidor PostgreSQL).
-
Haga doble clic en el elemento Transformación.
-
En el cuadro de diálogo Seleccionar Transformación, haga clic en Crear nueva Transformación.
-
En la ventana Nueva Transformación, ingrese valores para lo siguiente y luego haga clic en Siguiente >:
- Nombre: Upsert Base de Datos.
- Fuente: Solicitud SOAP/WSDL.
-
En el paso FUENTE, seleccione Seleccionar un archivo WSDL existente, luego seleccione el archivo WSDL cargado anteriormente, luego haga clic en Siguiente > y espere la validación del archivo.
-
Cuando el archivo esté validado, haga clic en Siguiente >.
-
En la página de opciones, haga clic en Siguiente >.
-
En el paso TARGET, haga clic en Descargar lista de tablas. Seleccione la tabla de la base de datos de destino, haga clic en la flecha derecha para moverla a la lista Tablas seleccionadas y, a continuación, haga clic en Siguiente >.
-
En el paso TARGET, asegúrese de que esté seleccionado Insertar/Actualizar y, luego, haga clic en Finalizar.
-
En la ventana de transformación Upsert Database, expanda los árboles de origen y destino, asigne los campos arrastrándolos y soltándolos, luego haga clic en Guardar y cierre la ventana de transformación.
-
En la ventana de operación Upsert Database, haga clic en Guardar y cierre la ventana.
- En la operación Mensaje saliente de Salesforce, haga doble clic en la actividad Recibir mensaje saliente de Salesforce.
-
En la ventana de secuencia de comandos, edite el secuencia de comandos para que coincida con lo siguiente, luego haga clic en Guardar y cierre la ventana:
<trans> $org.api.salesforce.request=$jitterbit.api.request.body; RunOperation("<TAG>Operations/Upsert Database</TAG>") </trans>
-
En la ventana de operación Mensaje saliente de Salesforce, haga clic en Guardar.
-
Seleccione Acciones > Desplegar. En el cuadro de diálogo Desplegar, en Seleccionar un tipo de despliegue, seleccione Todo y, a continuación, haga clic en Desplegar.
Parte 3: API de API Manager
- En API Manager, seleccione APIs, luego haga clic en Nueva API.
-
En el paso 1 de la página Publicar nueva API, ingrese valores para lo siguiente y luego haga clic en Siguiente:
- Nombre de la API: Ingrese un nombre para la API.
- Ambiente: Seleccione el ambiente donde se implementó el proyecto de Design Studio.
- Raíz del servicio: Deje el valor inicial derivado del nombre de la API.
- Número de versión: (opcional) Ingrese un número de versión de API.
- Descripción: (Opcional) Ingrese una descripción para esta API.
-
En el paso 2, seleccione API personalizada como Tipo de servicio y luego haga clic en Agregar servicio API. Para el nuevo servicio API, ingrese estos valores en los siguientes campos, haga clic en Guardar y luego en Siguiente:
-
Método de solicitud: Utiliza el menú para seleccionar el método de solicitud POST para el servicio API. De manera predeterminada, el método de solicitud está configurado como GET.
-
Nombre del servicio: Ingrese un nombre de servicio.
-
En la pestaña Operación, seleccione estos valores:
-
Asignar proyecto: Desde el menú, selecciona tu Integration Studio proyecto.
-
Operación(es) asignada(s):
-
Operación: Seleccione la operación Mensaje saliente de Salesforce.
-
Tipo de respuesta: Seleccione Objetivo final como tipo de respuesta.
-
-
-
-
En el paso 3, haga clic en Omitir este paso.
-
En el paso 4, haga clic en Guardar y publicar.
-
En el cuadro de diálogo titulado Todo listo, ¡su API está activa!, haga clic en Copiar URL y luego en Descartar.
Parte 4: Actualizar la URL del extremo de Salesforce y activar
- En Salesforce, seleccione Configuración > Herramientas de la plataforma > Automatización de procesos > Acciones de Flujo de trabajo > Mensajes salientes.
- En la página Mensajes salientes, haga clic en Editar para su mensaje saliente.
-
Reemplace el contenido del campo URL del Extremo (resaltado en la imagen a continuación) con la URL copiada al final de la sección anterior, luego haga clic en Guardar.
-
En la sección Reglas de Flujo de trabajo que usan este mensaje saliente, haga clic en Activar para la regla (resaltada en la imagen a continuación).
Probar la integración
Para probar este patrón de diseño de integración, siga estos pasos:
- En Salesforce, abra la aplicación Servicio y seleccione la pestaña Cuentas.
- Edite un contacto de la cuenta y luego guárdelo.
- Inicie sesión en su base de datos y consultar la tabla de destino.