Introducción
En esta publicación del blog, vamos a aprender como configurar el iFlow ‘Replicate Business Partner to SAP Marketing’, en la integración SAP Marketing Cloud con SAP Cloud for Customer para el traspaso de información con campos personalizados (de extensión) por parte de SAP Marketing Cloud y SAP Cloud for Customer.
Tras una de las actualizaciones de SAP Cloud Platform Integration, los iFlows estándar presentan pre-salidas y post-salidas en los flujos de integración. Esto significa que los flujos de integración estándar entregados previamente permanecen intactos a medida que los amplía. Y esto obviamente significa que ya no necesita preocuparse por las actualizaciones y realizar sus actividades de extensión una y otra vez. Pero en este caso, vamos a realizar los ajustes dentro del iFlow estándar para que la conexión se establezca correctamente ya que tras intentar crear un nuevo iFlow para estas extensiones, pero la conexión no se establecía correctamente.

Ilustración 1: Concepto de Pre-Exit y Post-Exit
Visión general

Ilustración 2: iFlow estándar con Pre-Exit y Post-Exit
Esta figura de flujo de integración estándar tiene pre-salida y post-salida, nos centraremos en el concepto de post-salida porque casi todos los flujos de integración de SAP Marketing solo tienen post-salidas
Contexto Empresarial
Para este escenario, usaremos el paquete de integración estándar
“SAP Cloud for Customer Integration with SAP Marketing” en SAP Cloud Platform Integration. Y vamos a extender el flujo de integración
“Replicate Business Partner to SAP Marketing”. Este flujo de integración tiene un flujo de proceso como el siguiente.

Ilustración 3: iFlow estándar
En nuestro caso, la llamada a un nuevo nuevo iFlow será modificada por un nuevo mapeo con los nuevos campos.
Por lo que el iFlow quedaría de la siguiente manera:

Ilustración 4: Nuestro iFlow con los nuevos ajustes
Visto de una manera más sencilla sería así:

Ilustración 6: Nuestro iFlow simplificado
Teniendo en cuenta esta imagen, vamos a seguir las notaciones de la figura, por lo que necesitamos saber el significado de cada una de estas:
Mensaje A: este mensaje representa la carga útil original (extendida) procedente del sistema de origen. En nuestro escenario, el sistema de origen (Sender) es C4C. Por lo tanto, este mensaje debe tener los metadatos extendidos del servicio SOAP
BusinessPartnerReplicationSelfIniticatedOut.
Mensaje B: este mensaje representa el resultado de la operación de mapeo estándar en el flujo de integración estándar. Por lo tanto, son solo metadatos estándar del servicio OData de SAP Marketing.
Mensaje A, B: este mensaje es la combinación de los mensajes A y B. Recuerde que el
mensaje B representa el mensaje mapeado (metadatos estándar del servicio OData en SAP Marketing) después de la operación de mapeo estándar en el flujo de integración estándar. Eso significa que solo contiene campos estándar asignados. Por otro lado, el
Mensaje A también contiene campos estándar no asignados, así como campos personalizados, ya que representa el mensaje original (carga útil) de C4C.
Mensaje C: son los metadatos extendidos del servicio OData en SAP Marketing. Estos metadatos extendidos deben incluir nuestros campos personalizados en SAP Marketing. Y esto es exactamente lo que nuestro
mensaje C va a ser similares. En otras palabras, podría decir aproximadamente que el
Mensaje C será una especie de versión extendida del
Mensaje B.
Damos forma al
Mensaje C con nuestra propia operación de mapeo donde también mapeamos nuestros campos personalizados en el flujo de integración posterior a la salida. En consecuencia, este mensaje es básicamente el mensaje final mapeado que queremos entregar al receptor (SAP Marketing). Para que el
mensaje C se entregue al receptor (SAP Marketing) en lugar del
mensaje B en un escenario de extensión.
Actividades de Configuración
Tienes que entrar en tu ambiente de HCI y dentro de tu paquete de “SAP Cloud for Customer Integration with SAP Marketing” ir al iFlow “Replicate Business Partner to SAP Marketing”
En primer lugar, es necesario configurar la extensión.
Para ello, modificaremos “
Extension Implemented” a “
true”, tal y como se muestra en la siguiente imagen:

Ilustración 6: Extension Implemented
Diseño de la actividad Post-Exist
Dentro del iFlow estándar eliminaremos la llamada hacia un nuevo iFlow, ya que vamos a realizar los cambios dentro del iFlow estándar. En lugar de esta llamada, colocaremos un nuevo “Message Mapping”

Ilustración 7: Parte que vamos a eliminar
Por lo que el nuevo subproceso del iFlow quedaría de la siguiente manera:

Ilustración 8: Nuevo sub-proceso
Dentro de este subproceso, crearemos el archivo de mapeo:

Ilustración 9: Creación del nuevo archivo de mapeo
Una vez creado, tenemos que añadir los mensajes A, B y C para poder realizar el mapeo.
Obtención del mensaje A
Para descargar los metadatos a través del servicio SOAP, iniciaremos sesión en C4C, donde de los acuerdos de comunicación nos descargaremos el iFlow correspondiente para este iFlow

Ilustración 10: Mensaje A
Obtención del mensaje B
Dado que disponemos de este mensaje porque viene en el flujo de integración estándar solo tenemos que descargarlo de la pestaña “Recursos”.
Para buscar el nombre del archivo tenemos que entrar dentro del mapeo estándar

Ilustración 11: Buscamos el nombre del archivo
Una vez dentro, tenemos que mirar el nombre del archivo que se está mapeando.

Ilustración 12: Acceso al nombre del archivo
Dentro de "Target Messages" colocamos el ratón encima de "ImportHeaders" y aparecerá el nombre del archivo que necesitamos.

Nombre del archivo
Este es el nombre del archivo que necesitamos, el cual podemos verlo desde “Recursos”

Ilustración 14: Archivo en Recursos
Obtención del mensaje C
Este mensaje lo obtendremos a través del servicio OData

Ilustración 15: Servicio OData
Primero establecemos la conexión

Ilustración 16: Establecimiento de la conexión
Después seleccionamos los campos que necesitamos obtener, tanto los estándar como los campos personalizados.

Ilustración 17: Campos seleccionados
Una vez terminando esto creará un archivo automáticamente que será el que tenemos que actualizar en el iFlow

Ilustración 18: Nuevo campo creado
Realización del mapeo
Una vez que tenemos todos los mensajes, los subimos en el nuevo mapeo

Ilustración 19: Carga de los mensajes A, B y C
Subiendo los archivos dentro del mapeo con el siguiente orden:

Ilustración 20: Orden de los mensajes
En el mapeo del mensaje A mapearemos únicamente los campos personalizados.

Ilustración 21: Mapeo
Por otro lado, el resto de los campos estándar se mapearan con el mensaje B, estos campos pueden mapearse dándole a la opción de auto mapear, lo cual será más rápido.
Una vez terminado este mapeo, ya es posible guardar el iFlow y comenzar a realizar el traspaso de información.
Conclusión
Esta es una de las posibles formas de ajustar este iFlow para que los campos personalizados se puedan pasar de un sistema a otro, como ya hemos mencionado la desventaja de esta forma es que, en caso de que este iFlow se actualice, necesitaremos descargarlo de nuevo y volver a realizar todos estos pasos.
¡Espero que esta publicación pueda ayudarte!
Acceso a las imágenes 1 y 2 y su respectiva documentación:
https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/41b238c5331a4b1fbd3a0ccd342...l