VENTAS: 1-800-867-1389

Migrar soluciones EDI de BizTalk Server a los Servicios de BizTalk: Guía técnica

Actualizado: julio de 2015

Autor: Tim Wieman y Nitin Mehrotra

Revisores: Karthik Bharthy

Escrito con: Servicios de BizTalk de Microsoft Azure, versión de febrero de 2014.

El intercambio electrónico de datos (EDI) es uno de los medios más frecuentes mediante los que las empresas intercambian datos electrónicamente, lo que también se llaman transacciones de empresa a empresa o B2B. BizTalk Server lleva teniendo compatibilidad con EDI más de una década, desde la versión inicial de BizTalk Server. Con Servicios de BizTalk, Microsoft continúa la compatibilidad con las soluciones EDI en la plataforma de Microsoft Azure. Las transacciones B2B son mayormente externas a una organización, por lo que son más fáciles de implementar si se implementaron en una plataforma de la nube. Microsoft Azure proporciona esta capacidad a través de Servicios de BizTalk.

Aunque algunos clientes consideran Servicios de BizTalk como un plataforma “virgen” para las nuevas soluciones EDI, muchos otros tienen soluciones actuales EDI de BizTalk Server que pueden desear migrar a Azure. Dado que el EDI de Servicios de BizTalk está diseñado según las mismas entidades clave que la arquitectura EDI de BizTalk Server (socios comerciales, entidades, acuerdos), es posible migrar los artefactos EDI de BizTalk Server a Servicios de BizTalk.

En este documento se describen algunas de las diferencias de la migración de artefactos EDI de BizTalk Server a Servicios de BizTalk. En este documento se supone un conocimiento práctico del procesamiento EDI de BizTalk Server y de los acuerdos de socios comerciales. Para más información sobre el EDI de BizTalk Server, vea Administración de socios comerciales mediante BizTalk Server.

El módulo EDI de BizTalk Server se mejoró significativamente para BizTalk Server 2010, cuando se rediseñó para incluir socios, perfiles y acuerdos. Servicios de BizTalk usa el mismo modelo para organizar los socios comerciales y las divisiones empresariales dentro de esos socios comerciales. Como resultado, la migración de artefactos EDI de BizTalk Server 2010 y versiones posteriores a Servicios de BizTalk es un proceso mucho más sencillo. Para migrar artefactos EDI asociados a versiones anteriores a BizTalk Server 2010, los artefactos EDI deben actualizarse primero a BizTalk Server 2010 para migrarlos después a Servicios de BizTalk.

Al igual que con BizTalk Server, el procesamiento EDI en Servicios de BizTalk se crea alrededor de una solución de administración de socios comerciales (TPM). La solución TPM tiene los siguientes componentes clave:

  • Socios comerciales, que representan una organización en una transacción B2B.

  • Perfiles, que representan divisiones dentro de un socio comercial.

  • Acuerdos con socios comerciales (o simplemente, acuerdos), que representan el contrato de negocio entre dos socios o perfiles.

En la ilustración siguiente, se muestran las similitudes y las diferencias entre una solución EDI de BizTalk Server y una solución EDI de Servicios de BizTalk:

Diferencias y similitudes principales entre el flujo de una solución EDI en BizTalk Server y en Servicios de BizTalk:

  • Al igual que BizTalk Server usa una canalización EDIReceive para recibir un mensaje EDI y una canalización EDISend para enviar un mensaje EDI, Servicios de BizTalk usa un puente de recepción EDI para recibir y un puente de envío EDI para enviar los mensajes EDI. En BizTalk Server, las canalizaciones se asocian con un acuerdo mediante puertos de envío o de recepción. En Servicios de BizTalk, el propio acuerdo denota el puente de envío o recepción.

  • En BizTalk Server, después de que la canalización EDIReceive procesa el mensaje EDI, el mensaje se vuelca en una base de datos SQL Server. A continuación, la canalización EDISend recoge el mensaje de la base de datos SQL Server, lo procesa y lo envía al socio comercial.

    En Servicios de BizTalk, después de que el puente de recepción EDI procesa el mensaje EDI, lo redirige a un proceso externo. El proceso externo podría ejecutarse en Microsoft Azure o de forma local. El proceso externo debe redirigir el mensaje al puente de envío EDI; el puente de envío no lo extrae intrínsecamente. Después de procesar el mensaje, el puente de envío EDI lo redirige al socio comercial.

Servicios de BizTalk proporciona una experiencia de configuración sencilla para crear e implementar rápidamente un acuerdo B2B entre socios comerciales sin configurar instancias de proceso de Microsoft Azure (roles web o de trabajo), ninguna Base de datos SQL de Microsoft Azure ni cuentas de almacenamiento de Microsoft Azure. Los escenarios más complejos requerirán enlazar flujos de trabajo u otro procesamiento de servicio “en torno a los extremos” de un acuerdo de socio comercial, es decir, antes o después del procesamiento de un puente EDI de un acuerdo de socio comercial. De forma detallada, las secuencias de eventos siguientes se producen durante un procesamiento de mensajes EDI en Servicios de BizTalk.

  1. Un mensaje EDI se recibe del asociado comercial, Fabrikam. Para recibir los mensajes EDI de los socios comerciales, Servicios de BizTalk admite protocolos de transporte como FTP, SFTP, AS2 y HTTP/S.

  2. El procesamiento de recepción de los acuerdos de asociados comerciales desensambla el mensaje EDI al formato XML. Puede redirigir el mensaje EDI desensamblado (en formato XML) a los extremos de CmdLets como un extremo de retransmisión de CmdLets, un tema CmdLets, una cola CmdLets o un puente Servicios de BizTalk.

  3. Los mensajes XML desensamblados pudieron recibirse entonces desde el extremo para someterse a un procesamiento personalizado adicional. Estos extremos pudieron procesarse con un componente local o una instancia de proceso de Microsoft Azure para seguir procesando el mensaje en un flujo de trabajo de Windows (WF) o un servicio de Windows Communication Foundation (WCF), por ejemplo.

  4. “El procesamiento de envío” del acuerdo de asociado comercial ensambla entonces el mensaje XML en el formato EDI y lo envía al asociado comercial, Contoso. Para enviar mensajes EDI a los asociados comerciales, Servicios de BizTalk admite los mismos protocolos que los utilizados para recibir los mensajes EDI.

En este documento se proporciona una guía conceptual sobre la migración de algunos de los diferentes artefactos EDI de BizTalk Server a Servicios de BizTalk.

En BizTalk Server, se configuran ubicaciones y puertos de recepción para recibir los mensajes EDI/XML de los socios comerciales, y se configuran puertos de envío para enviarles los mensajes EDI/XML. A continuación se asocian estos puertos a un acuerdo de socio comercial con la consola de administración de BizTalk Server. En Servicios de BizTalk, las ubicaciones donde se reciben los mensajes de los socios comerciales y donde se les envían los mensajes se configuran como parte del acuerdo de socios comerciales (como parte de la Configuración de transporte) en el Portal de servicios de BizTalk. En realidad no tiene el concepto de “puertos de envío” y “ubicaciones de recepción”, por sí mismos, en Servicios de BizTalk. Para más información, vea Creación de acuerdos.

En el EDI de BizTalk Server, las canalizaciones son entidades de procesamiento de mensajes que también pueden incluir una lógica personalizada para capacidades de procesamiento específicas, según los requisitos de la aplicación. Para Servicios de BizTalk, el equivalente sería un puente EDI. Sin embargo, en Servicios de BizTalk, los puentes EDI están "cerrados" por ahora. Esto significa que no puede agregar sus propias actividades personalizadas en un puente EDI. Cualquier procesamiento personalizado debe hacerse fuera del puente EDI en su aplicación, antes o después de que el mensaje acceda al puente configurado como parte del acuerdo de socio comercial. Los puentes EAI tienen la opción de hacer un procesamiento personalizado. Si desea un procesamiento personalizado, puede usar los puentes EAI antes o después de que el puente EDI procese el mensaje. Para obtener más información, consulte Cómo incluir un código personalizado en puentes.

Puede insertar un flujo de publicación/suscripción con código personalizado y/o usar los temas y las colas de mensajería de CmdLets antes de que el acuerdo de socio comercial reciba el mensaje o después de que el acuerdo lo procese y lo redirija a un extremo de CmdLets.

Vea Escenarios y flujo de mensajes para conocer el modelo de flujo de mensajes.

Si conoce los acuerdos de socio comercial de BizTalk Server 2010 utilizados para el procesamiento EDI, los acuerdos de socio comercial de Servicios de BizTalk le parecerán conocidos. La mayoría de las opciones de configuración de los acuerdos son las mismas y usan la misma terminología. En algunos casos, las opciones de configuración del acuerdo son mucho más simples en comparación con las mismas opciones de BizTalk Server. Servicios de BizTalk de Microsoft Azure es compatible con el transporte X12, EDIFACT y AS2.

Servicios de BizTalk de Microsoft Azure también proporciona una herramienta de migración de datos de TPM para migrar socios comerciales y acuerdos del módulo de socios comerciales de BizTalk Server al Portal de servicios de BizTalk. La herramienta de migración de datos de TPM está disponible como parte de un paquete de herramientas que se puede descargar desde http://go.microsoft.com/fwlink/?LinkId=235057. El paquete también incluye un archivo Léame con instrucciones sobre cómo usar la herramienta e información de resolución de problemas básicos de la herramienta.

Servicios de BizTalk proporciona los esquemas EDI que pueden utilizarse en soluciones de Servicios de BizTalk. Además, los esquemas EDI de BizTalk Server también se pueden usar con Servicios de BizTalk porque el nodo raíz del esquema EDI es el mismo en BizTalk Server y en Servicios de BizTalk. Por tanto, podrá tomar directamente sus esquemas EDI de BizTalk Server y usarlos en las soluciones EDI que desarrolle mediante Servicios de BizTalk. También puede descargar los esquemas desde http://go.microsoft.com/fwlink/?LinkId=235057.

Los mapas en BizTalk Server se llaman Transformaciones en Servicios de BizTalk. La migración de mapas de BizTalk Server a Servicios de BizTalk podría ser una de las tareas más complejas de realizar (según la complejidad del mapa). La herramienta de mapas utilizada para Servicios de BizTalk es diferente del mapeador de BizTalk. Aunque el mapeador mira básicamente lo mismo, el formato del mapa subyacente es diferente. Los functoids (denominados Operación de asignación en Servicios de BizTalk) disponibles para los usuarios también son diferentes. De hecho, no puede utilizarse directamente un mapa de BizTalk en Servicios de BizTalk. Además, no todos los functoids disponibles en BizTalk Server están disponibles como operaciones de mapa en Servicios de BizTalk.

Aunque la lista de operaciones de mapa de transformación disponibles puede ser muy diferente de las del mapeador de BizTalk Server, las transformaciones de Servicios de BizTalk ofrecen formas nuevas de realizar las mismas tareas. Por ejemplo, las transformaciones de Servicios de BizTalk disponen de operaciones de lista. Esto no estaba disponible en el mapeador de BizTalk. Las operaciones de lista permiten crear y operar en una “lista”, un conjunto de elementos (también conocidos como “filas”) en el que cada elemento tiene varios miembros (también conocidos como “columnas”). Puede ordenar la lista, seleccionar elementos según una condición, etc.

Otro ejemplo de la nueva funcionalidad de las transformaciones de Servicios de BizTalk son las operaciones de bucle. Es difícil crear bucles anidados en el mapeador de BizTalk Server. Por lo tanto, las operaciones de bucle se agregan para las transformaciones de Servicios de BizTalk.

Otro ejemplo más es la operación de mapa de la expresión If-Then-Else. La operación If-Then-Else era posible en el mapeador de BizTalk, pero requería que varios functoids llevaran a cabo una tarea en apariencia sencilla.

Servicios de BizTalk de Microsoft Azure proporciona una herramienta para migrar mapas de BizTalk Server a transformaciones de Servicios de BizTalk. BTMMigrationTool está disponible como parte del paquete de herramientas proporcionado con el SDK de Servicios de BizTalk y se puede descargar desde http://go.microsoft.com/fwlink/?LinkId=235057. Para más información sobre la herramienta, vea Convertir un mapa de BizTalk en una transformación de Servicios de BizTalk.

También se puede ver un ejemplo realizado por Sandro Pereira, MVP de BizTalk, sobre cómo migrar mapas de BizTalk Server a transformaciones de Servicios de BizTalk. El ejemplo está disponible aquí. Un artículo basado en este ejemplo está disponible aquí.

Si tiene que migrar el proceso de la orquestación de BizTalk Server a Microsoft Azure, las orquestaciones tendrían que reescribirse porque Microsoft Azure no admite las orquestaciones actuales de BizTalk Server. Puede volver a escribir la funcionalidad de la orquestación en un servicio de Windows Workflow Foundation 4.0 (WF4). Se trataría de una reescritura completa ya que en la actualidad no existe la posibilidad de migrar orquestaciones de BizTalk Server a WF4. A continuación se muestran algunos recursos del flujo de trabajo de Windows:

  • Integrar un servicio de flujo de trabajo WCF con temas y colas de Service Bus, de Paolo Salvatori. Vea aquí (http://go.microsoft.com/fwlink/?LinkId=237313).

  • Sesión Crear aplicaciones con Windows Workflow Foundation y Azure de la conferencia Build 2011. Vea aquí (http://go.microsoft.com/fwlink/?LinkId=237314).

  • Centro para desarrolladores de Windows Workflow Foundation en MSDN. Vea aquí (http://go.microsoft.com/fwlink/?LinkId=237315).

  • Documentación de Windows Workflow Foundation 4 (WF4) en MSDN. Vea aquí (http://go.microsoft.com/fwlink/?LinkId=237316).

A continuación se indican algunas cuestiones que se deben tener en cuenta al usar Servicios de BizTalk.

El procesamiento EDI de BizTalk Server tiene el concepto de «acuerdos de retroceso». Los Servicios de BizTalk no tienen un concepto de acuerdo de retroceso por ahora. Vea los temas de la documentación de BizTalk El rol de los acuerdos en el procesamiento EDI y Configurar las propiedades de los acuerdos de retroceso o globales para obtener información sobre cómo se usan los acuerdos de retroceso en BizTalk Server.

Los puentes de Servicios de BizTalk en su estado actual no admiten la redirección de mensajes a múltiples destinos mediante un modelo de publicación y suscripción. En lugar de ello, se pueden redirigir los mensajes de un puente de Servicios de BizTalk a un tema de CmdLets, que puede tener varias suscripciones para recibir el mensaje en más de un extremo.

Servicios de BizTalk de Microsoft Azure se actualiza a intervalos regulares para agregar más características y capacidades. Con cada actualización, esperamos admitir una mayor funcionalidad para facilitar la creación de soluciones de un extremo a otro mediante Servicios de BizTalk y otras tecnologías de Azure.

Vea también

¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios
Mostrar:
© 2016 Microsoft