Saltar al contenido

Configurar mensajes salientes con extremos HTTP alojados 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 Extremo HTTP alojado cuando un objeto cambia (en este ejemplo, el objeto Account). Un proyecto de Design Studio procesa el mensaje saliente de Salesforce, asigna los datos del objeto y los guarda en una base de datos. Los Extremos HTTP alojados solo se pueden usar con agentes privados.

Nota

No se recomienda el uso de Extremos HTTP alojados. El patrón de diseño de integración recomendado para agentes privados y en la nube se describe en Configuración de mensajes salientes con una API de API Manager para configurar este patrón, siga estas secciones en orden:

  • Parte 1: En Design Studio, cree una nueva operación y copie la URL de su servicio web alojado.
  • Parte 2: En Salesforce, configure una regla de flujo de trabajo para enviar un mensaje saliente a la URL del servicio web cuando un objeto cambia y descargue el archivo WSDL que define el mensaje.
  • Parte 3: En Design Studio, expanda la nueva operación para recibir y confirmar el mensaje saliente de Salesforce, y asigne y almacene los valores modificados en una base de datos.
  • Parte 4: Regrese a Salesforce para activar el mensaje saliente y luego pruebe el patrón de diseño de integración completado.

Parte 1: URL del extremo del servicio web de Design Studio

  1. Crea un nuevo proyecto de Design Studio.

  2. En la lista de elementos del proyecto a la izquierda, haga clic derecho en Operaciones y luego seleccione Nueva operación.

  3. En el cuadro de diálogo Seleccionar tipo, seleccione Servicio web alojado y haga clic en Continuar.
  4. En la ventana Nueva operación, establezca el nombre de la nueva operación en Aceptar solicitud de Salesforce.
  5. Haga clic en la flecha hacia abajo junto al nombre de la operación y luego seleccione Ver URL del servicio web alojado.
  6. En el cuadro de diálogo URL del servicio web alojado, en el campo Servidor, ingrese el nombre de host o la dirección IP donde se ejecuta su agente privado (123.456.789.001 en este ejemplo).

    Parte 1 URL del servicio web

    Nota

    Si el agente se ejecuta detrás de un firewall, debe configurar un túnel o proxy de acceso público y abrir el puerto HTTP 46908 (o 46909 para HTTPS).

  7. Haga clic en Copiar al portapapeles para guardar la URL de la Parte 2, luego haga clic en Cerrar.

  8. En la ventana Nueva operación, haga clic en Guardar.

    La operación Aceptar solicitud de Salesforce incompleta:

    Parte 1 URL del servicio web

Parte 2: Configurar una regla de flujo de trabajo de Salesforce y descargar el archivo WSDL

  1. En Salesforce, seleccione Configuración > Herramientas de plataforma > Automatización de procesos > Reglas de Flujo de trabajo.
  2. 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 flujos, haga clic en Continuar con las reglas de Flujo de trabajo.

    Regla de Flujo de trabajo 2

  3. En la página Nueva regla de Flujo de trabajo, haga clic en el menú Objeto, seleccione Cuenta y luego haga clic en Siguiente.

    Regla de Flujo de trabajo 3

  4. En la página Cuenta, ingrese valores para lo siguiente y luego haga 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: 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.

    Regla de Flujo de trabajo 4

  5. 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).

    Regla de Flujo de trabajo 5

  6. En la página Nuevo mensaje saliente, ingrese 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 nombres del campo.
    • Descripción: (Opcional) Una descripción para este mensaje saliente.
    • URL del Extremo: Pegue la URL del servicio web alojado copiada en la Parte 1.
    • Usuario de envío: 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 que desea enviar. En este ejemplo, solo se seleccionaron Nombre y Teléfono. El campo Id se selecciona automáticamente, ya que es el campo clave del objeto.

    Regla de Flujo de trabajo 6

  7. En la página Editar regla, haga clic en Listo.

    Regla de Flujo de trabajo 7

  8. 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).

    Regla de Flujo de trabajo 8

  9. 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).

    Regla de Flujo de trabajo 9

  10. Se abrirá 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 cambiar la extensión del archivo de .xml a .wsdl Después de descargarlo.

Parte 3: Operaciones del Design Studio

Definir un método de servicio web

  1. En el proyecto Design Studio iniciado en Parte 1, en los elementos del proyecto de la izquierda, haga clic derecho en Métodos de servicio web y seleccione Nuevo método de servicio web.
  2. En la ventana Nuevo método de servicio web, seleccione Seleccionar un archivo WSDL local, haga clic en Explorar, seleccione el archivo WSDL descargado previamente, haga clic en Siguiente > y espere a que se valide el archivo.

    Método de servicio web 1

  3. En el paso Operación, haga clic en Siguiente >.

    Método de servicio web 2

  4. En el paso Detalles, haga clic en Finalizar.

    Método de servicio web 3

  5. Cierre la ventana Nuevo método de servicio web.

    Método de servicio web 4

Definir una llamada de servicio web

  1. En la ventana de la operación Aceptar solicitud de Salesforce, haga doble clic en la actividad Llamada de servicio web.
  2. En el cuadro de diálogo Seleccionar llamada de servicio web, seleccione Nuevo método de servicio web y haga clic en Aceptar.

    Llamada al servicio web 1

  3. Haga doble clic en la actividad de transformación final y luego haga clic en Crear nueva Transformación.

  4. En la ventana Nueva Transformación, establezca valores para lo siguiente y luego haga clic en Finalizar:

    • Nombre: Salesforce Response.
    • Fuente: (Ninguna)
  5. En la ventana de transformación Respuesta de Salesforce, expanda todos los nodos de destino hasta que el elemento [EV?] Ack (Boolean)Si está visible, haga doble clic en él.

    Llamada al servicio web 2

  6. En la ventana 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>
    

    Llamada de servicio web 3

  7. En la ventana de transformación Salesforce Response, haga clic en Guardar y luego cierre la ventana.

    Llamada al servicio web 4

  8. Haga doble clic en la actividad de transformación del medio y luego haga clic en Crear nueva Transformación.

  9. En la ventana Nueva Transformación, establezca valores para lo siguiente y luego haga clic en Siguiente >:

    • Nombre: Solicitud de Salesforce
    • Objetivo: Texto

    Llamada al servicio web 5

  10. En el paso Objetivo, haga clic en Definiciones de formatos de archivo disponibles y seleccione Crear nuevo.

  11. Establezca los siguientes valores y haga clic en Crear manualmente.

    • Nombre: Formato de solicitud de Salesforce
    • Seleccionar tipo de documento: Documento de texto simple
    • Seleccionar formato de documento: Delimitado por caracteres

    Llamada al servicio web 6

  12. En la sección Definir propiedades del segmento, haga clic en el botón Nuevo para crear un nuevo campo.

  13. En Nombre del campo, introduzca En blanco y haga clic en Finalizar.

    Llamada al servicio web 7

  14. Cierre la ventana de transformación Solicitud de Salesforce.

    La operación Aceptar solicitud de Salesforce incompleta:

    Llamada al servicio web 8

Definir la fuente de 'Solicitud entrante'

  1. En la lista de elementos del proyecto a la izquierda, haga clic con el botón derecho en Fuentes y seleccione Nueva fuente.
  2. En el cuadro de diálogo Seleccionar tipo, seleccione Almacenamiento temporal y haga clic en Continuar.

  3. En la ventana Nueva fuente, introduzca los siguientes valores:

    • Nombre: Solicitud entrante
    • Obtener archivos: IncomingRequest[fileGUID].xml

    Solicitud entrante 1

  4. Haga clic en Guardar y cierre la ventana.

  5. En la lista de elementos del proyecto a la izquierda, haga clic con el botón derecho en el nuevo origen de Solicitud entrante y seleccione Copiar a nuevo destino.

  6. En la ventana de destino de Solicitud entrante, haga clic en Guardar y cierre la ventana.

    Solicitud entrante 2

  7. En la ventana de operación Aceptar solicitud de Salesforce, haga doble clic en la transformación Solicitud de Salesforce.

  8. En la ventana de transformación Solicitud de Salesforce, haga doble clic en el campo En blanco en el árbol de destino.

    Solicitud entrante 3

  9. En la ventana Generador de fórmulas, edite la fórmula para que coincida con lo siguiente y luego haga clic en Aceptar para cerrar el editor de secuencia de comandos:

    <trans>
    $fileGUID=GUID();
    WriteFile("<TAG>Targets/Incoming Request</TAG>", GetXmlString([root$], true]));
    </trans>
    

    Solicitud entrante 4

  10. En la ventana de transformación Solicitud de Salesforce, haga clic en Guardar y luego cierre la ventana.

    Solicitud entrante 5

Crear la operación 'Upsert Database'

  1. En la ventana de la operación Aceptar solicitud de Salesforce, seleccione la flecha hacia abajo junto al nombre de la operación y, luego, seleccione En caso de éxito > Operación > Crear nueva operación.
  2. En el cuadro de diálogo Seleccionar tipo, seleccione Transformación y haga clic en Continuar.

  3. Establezca el nombre de la nueva operación en Upsert Database.

    Insertar base de datos 1

  4. En la operaciónUpsert Database, haga doble clic en Source.

  5. En la ventana Seleccionar origen, seleccione Solicitud entrante y haga clic en Aceptar.

    Insertar base de datos 2

  6. En la operaciónUpsert Database, haga doble clic en Target.

  7. En la ventana Seleccionar objetivo, haga clic en Crear nuevo objetivo.
  8. En la ventana Nuevo destino, establezca valores para lo siguiente, haga clic en Probar conexión y luego cierre la ventana Base de datos:

    • Nombre: Base de datos
    • Tipo: Base de datos
    • Parámetros de conexión: Establezca los parámetros de su base de datos. (En este ejemplo se muestra una conexión a un servidor PostgreSQL).

    Insertar base de datos 3

  9. En la operaciónUpsert Database, haga doble clic en Transformación.

  10. En la ventana Seleccionar Transformación, seleccione Crear nueva Transformación.
  11. En la ventana Nueva Transformación, ingrese valores para lo siguiente y luego haga clic en Siguiente >:

    • Nombre: Salesforce a base de datos
    • Fuente: Solicitud de servicio web alojado

    Insertar base de datos 4

  12. En el paso Origen, haga clic en Siguiente >.

    Upsert database 5

  13. 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 >.

    Upsert database 6

  14. En el paso Objetivo, haga clic en Finalizar.

    Upsert database 7

  15. En la ventana de transformación Salesforce a base de datos, 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.

    Insertar base de datos 8

  16. En la ventana de operación Aceptar solicitud de Salesforce, haga clic en Guardar.

    Finalizado aceptar solicitud de Salesforce

  17. En el menú principal, seleccione Acciones > Desplegar. En el cuadro de diálogo Desplegar, en Seleccionar un tipo de despliegue, seleccione Todo y haga clic en Desplegar.

Parte 4: Actualizar la URL del extremo de Salesforce y activar

  1. En Salesforce, seleccione Configuración > Herramientas de plataforma > Automatización de procesos > Reglas de Flujo de trabajo.
  2. En la página Todas las reglas de Flujo de trabajo, haga clic en Activar para su mensaje saliente (resaltado en la imagen a continuación).

    Regla de Flujo de trabajo

Probar la integración

Para probar este patrón de diseño de integración, siga estos pasos:

  1. En Salesforce, abra la aplicación Servicio y seleccione la pestaña Cuentas.
  2. Edite un contacto de la cuenta y luego guárdelo.
  3. Inicie sesión en su base de datos y consultar la tabla de destino.