Desmontar array en un puerto de Biztalk

less than 1 minute read

Después de crear mi primera aplicación con Biztalk estoy viendo infinidad de formas de mejorarla. Aquí explicaré como me "ahorro" toda una orquestación configurando un puerto y un schema de una manera determinada

ANTES:

Había que pedir un array de mensajes a un servicio y luego desmontarlo, mi solución fue un clásico bucle



DESPUÉS:

Gracias a este artículo, vi como conseguir que entraran los mensajes uno por uno. Básicamente los pasos necesarios son:

- Crear un ReceivePort del tipo Scheduler que vaya generando llamadas
- Crear un SendPort TwoWay que ataque al servicio, con un filtro para que le vayan entrando las llamas creadas por el Scheduler
- Recibir los mensajes de respuesta directamente en la orquestación con un Direct Port y un Receive Message con filtro
- Editar los esquemas del paquete en cuestión, de la siguiente forma:

El nodo Schema le activamos el modo Envelope

2010.4.8sql12

Editamos el XPATH del nodo raiz y le hacemos apuntar al nodo superior al nodo leaf

2010.4.8sql13

Finalmente, el nodo leaf le cambiamos el MaxOccurrence a 1

Saludos!



Tags: , ,

Updated:

Leave a comment