Compartir a través de


Introducción a la arquitectura del adaptador de BizTalk para mySAP Business Suite

El adaptador de Microsoft BizTalk para mySAP Business Suite implementa un enlace personalizado de Windows Communication Foundation (WCF), que contiene un único elemento de enlace de transporte personalizado que permite la comunicación con un sistema SAP. El adaptador de SAP está encapsulado por el entorno de ejecución del SDK del adaptador de línea de negocio (LOB) de Microsoft Windows Communication Foundation (WCF) y se expone a las aplicaciones a través de la arquitectura del canal WCF. El adaptador de SAP se comunica con el sistema SAP a través de la versión de 64 o 32 bits del SDK de RFC de SAP Unicode (librfc32u.dll).

En la ilustración siguiente se muestra la arquitectura de un extremo a otro para las soluciones desarrolladas mediante el adaptador de SAP.

Arquitectura de un extremo a otro de SAP

Consumo del adaptador

El adaptador de SAP expone el sistema SAP como un servicio WCF a las aplicaciones cliente. Las aplicaciones cliente intercambian mensajes SOAP con el adaptador de SAP a través de canales WCF para realizar operaciones y acceder a datos en el sistema SAP. En la ilustración anterior se muestran cuatro maneras en las que se puede consumir el adaptador de SAP.

  • A través de una aplicación de canal WCF que realiza operaciones en el sistema SAP mediante el modelo de canal WCF para intercambiar mensajes SOAP directamente con el adaptador de SAP. Para obtener más información sobre el desarrollo de soluciones para el adaptador de SAP mediante la programación de modelos de canal WCF, consulte Desarrollo de aplicaciones con el modelo de canal WCF.

  • A través de una aplicación de modelo de servicio WCF que llama a métodos en un cliente WCF para realizar operaciones en el sistema SAP. Un cliente WCF modela las operaciones expuestas por el adaptador de SAP como métodos de .NET. Puede usar el SDK del adaptador de línea de negocio (LOB) de Microsoft Windows Communication Foundation (WCF) o la herramienta de svcutil.exe para crear una clase de cliente WCF a partir de metadatos expuestos por el adaptador de SAP. Para obtener más información sobre la programación del modelo de servicio WCF y el adaptador de SAP, consulte Desarrollo de aplicaciones con el modelo de servicio WCF.

  • A través de un puerto de BizTalk configurado para usar el adaptador de WCF-Custom de BizTalk con el enlace de SAP configurado como enlace para el tipo de transporte WCF-Custom en una aplicación de BizTalk Server. El adaptador de WCF-Custom de BizTalk permite la comunicación entre una aplicación de BizTalk Server y un servicio WCF. El adaptador de WCF-Custom de BizTalk admite enlaces WCF personalizados a través de su tipo de transporte WCF-Custom, lo que le permite configurar cualquier enlace WCF expuesto al sistema de configuración como el enlace utilizado por el adaptador de WCF-Custom de BizTalk. Para obtener más información sobre cómo usar el adaptador de SAP en BizTalk Server soluciones, vea Desarrollar aplicaciones de BizTalk. Las transacciones de BizTalk son compatibles con el elemento de enlace de canal por capas de BizTalk que se puede cargar estableciendo una propiedad de enlace en el enlace de SAP.

  • A través de un servicio web hospedado en IIS. En este escenario, el adaptador de SAP se expone a través de un proxy de servicio WCF, que se hospeda en IIS mediante uno de los enlaces HTTP estándar de WCF.

  • A través del proveedor de datos de .NET Framework para mySAP Business Suite. El proveedor de datos para SAP se ejecuta sobre el adaptador de SAP y proporciona una interfaz ADO.NET a un sistema SAP.

    El adaptador de SAP y la biblioteca RFC de SAP siempre se hospedan en proceso con la aplicación o el servicio que consume el adaptador.

Adaptador de SAP y WCF

WCF presenta un modelo de programación basado en el intercambio de mensajes SOAP a través de canales entre clientes y servicios. Estos mensajes se envían entre puntos de conexión expuestos por un cliente y un servicio de comunicación.

Un punto de conexión consta de una dirección de extremo que especifica la ubicación en la que se reciben los mensajes, un enlace que especifica los protocolos de comunicación utilizados para intercambiar mensajes y un contrato que especifica las operaciones y los tipos de datos expuestos por el punto de conexión. Un enlace consta de uno o varios elementos de enlace que se apilan entre sí para definir cómo se intercambian los mensajes con el punto de conexión.

Como mínimo, un enlace debe especificar el transporte y la codificación utilizados para intercambiar mensajes con el punto de conexión. El intercambio de mensajes entre puntos de conexión se produce a través de una pila de canales que se compone de uno o varios canales. Cada canal es una implementación concreta de uno de los elementos de enlace del enlace configurado para el punto de conexión.

La documentación de WCF incluye más detalles sobre WCF y el modelo de programación de WCF.

El adaptador de Microsoft BizTalk para mySAP Business Suite expone un enlace personalizado de WCF, el enlace de SAP (Microsoft.Adapters.SAP.SAP.SAPBinding). De forma predeterminada, este enlace contiene un único elemento de enlace de transporte personalizado, el elemento de enlace del adaptador de SAP (Microsoft.Adapters.SAP.SAPAdapter), que habilita las operaciones en un sistema SAP. Al usar el adaptador de SAP con BizTalk Server, puede establecer la propiedad de enlace EnableBizTalkCompatibilityMode para cargar un elemento de enlace personalizado, el elemento de enlace de canal superpuesta de BizTalk, encima del elemento de enlace del adaptador de SAP. El adaptador de SAP implementa internamente el elemento de enlace de canal por capas de BizTalk y no se expone fuera del enlace de SAP.

Microsoft.Adapters.SAP.SAPBinding (enlace de SAP) y Microsoft.Adapters.SAP.SAPAdapter (el elemento de enlace del adaptador de SAP) son clases públicas y también se exponen al sistema de configuración. Dado que el elemento de enlace del adaptador de SAP se expone públicamente, puede crear sus propios enlaces WCF personalizados capaces de extender la funcionalidad del adaptador de SAP. Por ejemplo, podría implementar un enlace personalizado para admitir enterprise Single Sign-On (SSO) en un canal WCF o una solución de programación de modelos de servicio WCF, para agregar operaciones de base de datos en una sola operación multifunción o para realizar la transformación de esquemas entre operaciones implementadas por una aplicación personalizada y operaciones en el sistema SAP.

El adaptador de SAP se basa en el SDK del adaptador de línea de negocio (LOB) de Microsoft Windows Communication Foundation (WCF) y se ejecuta sobre el entorno de ejecución del SDK del adaptador de LOB de WCF. El SDK del adaptador de LOB de WCF proporciona un marco de software y una infraestructura de herramientas que el adaptador de SAP aprovecha para proporcionar un amplio conjunto de características a los usuarios y clientes de adaptadores.

Adaptador de SAP y el SDK del adaptador de LOB de WCF

El adaptador de Microsoft BizTalk para mySAP Business Suite implementa un conjunto de componentes principales que aprovechan la funcionalidad proporcionada por el SDK del adaptador de línea de negocio (LOB) de Microsoft Windows Communication Foundation (WCF) y proporciona conectividad al sistema SAP a través de la biblioteca del SDK de RFC de SAP (librfc32u.dll).

El SDK del adaptador de LOB de WCF actúa como capa de software a través de la cual el adaptador de SAP interactúa con Windows Communication Foundation (WCF) y el SDK de RFC actúa como la capa a través de la cual el adaptador de SAP interactúa con el sistema SAP. En la ilustración siguiente se muestran las relaciones entre los componentes internos del adaptador de SAP y entre estos componentes y el SDK de RFC.

La relación de los componentes del adaptador interno

Conexión al sistema SAP

El adaptador de SAP se conecta con el sistema SAP a través de la biblioteca del SDK de RFC de SAP Unicode (librfc32u.dll). El adaptador de SAP admite las versiones de 32 y 64 bits del SDK de RFC de SAP. El SDK de RFC de SAP permite a los programas externos llamar a funciones de ABAP en un sistema SAP.

Para establecer una conexión a un sistema SAP, proporcione un URI de conexión al adaptador de SAP. El adaptador de SAP admite los siguientes tipos de conexiones a un sistema SAP:

  • Una conexión basada en host de aplicación (A), en la que el adaptador de SAP se conecta directamente a un servidor de aplicaciones de SAP.

  • Una conexión de equilibrio de carga (B), en la que el adaptador de SAP se conecta a un servidor de mensajería de SAP.

  • Una conexión basada en destino (D), en la que un destino especifica la conexión al sistema SAP en el archivo de configuración de saprfc.ini. Se admiten conexiones de tipo A, B y R.

  • Una conexión del agente de escucha (R), en la que el adaptador recibe RFC, tRFC e IDOC a través de un destino RFC en el sistema SAP especificado por un host de agente de escucha, un servicio de puerta de enlace de escucha y un identificador de programa de escucha, ya sea directamente en el URI de conexión o mediante un destino basado en R en el archivo de configuración de saprfc.ini.

    Para obtener más información sobre el archivo saprfc.ini, vea "The SAPRFC.INI File" (El archivo SAPRFC.INI) en la documentación de SAP.

    Para obtener más información sobre cómo se conecta el adaptador de SAP a un sistema SAP, consulte Creación de una conexión al sistema SAP.

Consulte también

Definición del adaptador de BizTalk para mySAP Business Suite