Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El adaptador de SAP muestra las RFC expuestas por un sistema SAP como operaciones que un cliente de adaptador puede invocar. En esta sección se proporcionan instrucciones sobre cómo invocar una RFC en un sistema SAP mediante el adaptador de SAP con Microsoft BizTalk Server. Para obtener más información sobre cómo el adaptador de SAP admite la invocación de una RFC en un sistema SAP, consulte Operaciones en RFC en SAP. Para obtener más información sobre la estructura del mensaje SOAP para invocar una RFC, vea Esquemas de mensajes para operaciones RFC.
¿Cómo invocar una RFC en un sistema SAP?
La realización de una operación en un sistema SAP mediante el adaptador de SAP con BizTalk Server implica tareas de procedimientos descritas en Bloques de creación para crear aplicaciones SAP. Para invocar una RFC en un sistema SAP, estas tareas son:
Cree un proyecto de BizTalk y genere el esquema para la RFC que desea invocar en el sistema SAP.
Cree mensajes en el proyecto de BizTalk para enviar y recibir mensajes desde el sistema SAP.
Cree una orquestación para invocar una RFC en el sistema SAP.
Compile e implemente el proyecto de BizTalk.
Configure la aplicación de BizTalk mediante la creación de puertos de envío y recepción físicos.
Inicie la aplicación de BizTalk.
En este tema se proporcionan instrucciones para realizar estas tareas.
Generar esquema
En este tema, para demostrar cómo invocar una RFC en un sistema SAP, generamos el esquema para RFC_CUSTOMER_GET. Consulte Examinar, buscar y obtener metadatos para operaciones rfC en SAP para obtener más información sobre cómo generar esquema.
Definición de mensajes y tipos de mensajes
El esquema que generó anteriormente describe los "tipos" necesarios para los mensajes de la orquestación. Normalmente, un mensaje es una variable, el tipo para el que se define mediante el esquema correspondiente. Debe vincular el esquema que generó a los mensajes de la vista Orquestación del proyecto de BizTalk.
Para este tema, debe crear dos mensajes: uno para enviar una solicitud al sistema SAP y al otro para recibir una respuesta.
Realice los pasos siguientes para crear mensajes y vincularlos al esquema.
Para crear mensajes y vincular al esquema
Abra la vista de orquestación del proyecto de BizTalk, si aún no está abierto. Haga clic en Ver, seleccione Otras ventanas y haga clic en Vista de orquestación.
En la vista Orquestación, haga clic con el botón derecho en Mensajes y, a continuación, haga clic en Nuevo mensaje.
Haga clic con el botón derecho en el mensaje recién creado y seleccione Ventana Propiedades.
En el panel Propiedades de Message_1, haga lo siguiente.
Usa esto Para Identificador Escriba Solicitud. Tipo de mensaje En la lista desplegable, expanda Esquemas y seleccione InvokeRFC.SAPBindingSchema.RFC_CUSTOMER_GET, donde InvokeRFC es el nombre del proyecto de BizTalk. SAPBindingSchema es el esquema generado para RFC_CUSTOMER_GET. Repita el paso anterior para crear un nuevo mensaje. En el panel Propiedades del nuevo mensaje, haga lo siguiente.
Usa esto Para Identificador Escriba Respuesta. Tipo de mensaje En la lista desplegable, expanda Esquemas y seleccione InvokeRFC.SAPBindingSchema.RFC_CUSTOMER_GETResponse.
Configuración de la orquestación
Debe crear una orquestación de BizTalk para usar BizTalk Server para invocar RFC en el sistema SAP. En esta orquestación, se deja un mensaje de solicitud en una ubicación de recepción definida. El adaptador de SAP consume el mensaje y lo pasa al sistema SAP. La respuesta del sistema SAP se guarda en otra ubicación. Una orquestación típica para invocar RFC en un sistema SAP contendrá:
Enviar y recibir formas para enviar mensajes al sistema SAP y recibir respuestas.
Puerto de recepción unidireccional para recibir mensajes de solicitud que se van a enviar al sistema SAP.
Puerto de envío bidireccional para enviar mensajes de solicitud al sistema SAP y recibir respuestas.
Un puerto de envío unidireccional para enviar las respuestas desde el sistema SAP a una carpeta.
Una orquestación de ejemplo es similar a la siguiente:
Agregar formas de mensaje
Asegúrese de especificar las siguientes propiedades para cada una de las formas de mensaje. Los nombres enumerados en la columna Shape son los nombres de las formas de mensaje tal como se muestran en la orquestación anterior.
Forma | Tipo de forma | Propiedades |
---|---|---|
Recibir_Solicitud | Recibir | - Establecer nombreen Receive_Request - Establecer Activar en True |
Enviar_LOB | Enviar | - Establecer Nombre a Send_LOB |
Receive_LOB | Recibir | - Establecer nombreen Receive_LOB - Establecer Activar en False |
Enviar_Respuesta | Enviar | - Asigne Nombre a Send_Response |
Agregar puertos
Especifique las siguientes propiedades para cada uno de los puertos lógicos. Los nombres enumerados en la columna Puerto son los nombres de los puertos tal como se muestran en la orquestación.
Puerto | Propiedades |
---|---|
ReceiveMsgPort | - Establece Identificador en ReceiveMsgPort - Establecer Tipo en ReceiveMsgPortType - Establecer el patrón de comunicación en unidireccional - Establecer la dirección de comunicación para recibir |
SendToLOBPort | - Establecer Identificador en SendToLOBPort - Establecer Tipo en SendToLOBPortType - Establecer el patrón de comunicación en Request-Response - Establecer la dirección de comunicación en enviar y recibir |
SendMsgPort | - Establece identificador en SendMsgPort - Configurar Tipo como SendMsgPortType - Establecer el patrón de comunicación en unidireccional - Establecer la dirección de comunicación en Enviar |
Especificar mensajes para formas de acción y conectarse a puertos
En la tabla siguiente se especifican las propiedades y sus valores que se van a establecer para especificar mensajes para las formas de acción y vincularlos a los puertos. Los nombres enumerados en la columna Shape son los nombres de las formas de mensaje tal como se muestran en la orquestación anterior.
Forma | Propiedades |
---|---|
Recibir_Solicitud | - Establecer mensaje en solicitud - Configurar Operación en ReceiveMsgPort.Operation_1.Request |
Enviar_LOB | - Establecer mensaje en solicitud - Establecer Operación en SendToLOBPort.Operation_1.Request |
Receive_LOB | - Establecer mensaje en respuesta - Establezca Operation en SendToLOBPort.Operation_1.Response |
Enviar_Respuesta | - Establecer mensaje en respuesta - Establecer Operación en SendMsgPort.Operation_1.Request |
Una vez que haya especificado estas propiedades, las formas de mensaje y los puertos están conectados y se completa la orquestación.
Ahora debe compilar la solución de BizTalk e implementarla en un servidor de BizTalk Server. Para obtener más información, vea Compilar y ejecutar orquestaciones.
Configuración de la aplicación de BizTalk
Después de implementar el proyecto de BizTalk, la orquestación que creó anteriormente aparece en el panel Orquestaciones de la consola de administración de BizTalk Server. Debe usar la consola de administración de BizTalk Server para configurar la aplicación. Para obtener más información sobre cómo configurar una aplicación, consulte How to Configure an Application (Cómo configurar una aplicación).
La configuración de una aplicación implica:
Selección de un host para la aplicación.
Asignación de los puertos que creó en la orquestación a puertos físicos en la consola de administración de BizTalk Server. Para esta orquestación, debes:
Defina una ubicación en el disco duro y un puerto de archivo correspondiente donde dejará un mensaje de solicitud. La orquestación de BizTalk consumirá el mensaje de solicitud y lo enviará al sistema SAP.
Defina una ubicación en el disco duro y un puerto de archivos correspondiente donde la orquestación de BizTalk dejará el mensaje de respuesta con la respuesta del sistema SAP.
Defina un puerto de envío físico WCF-Custom o WCF-SAP para enviar mensajes al sistema SAP. También debe especificar la acción en el puerto de envío. Para obtener información sobre cómo crear puertos, consulte Configuración manual de un enlace de puerto físico al adaptador de SAP.
Nota:
La generación del esquema mediante el complemento del proyecto de BizTalk para consumir servicio de adaptador también crea un archivo de enlace que contiene información sobre los puertos y las acciones que se van a establecer para esos puertos. Puede importar este archivo de enlace desde la consola de administración de BizTalk Server para crear puertos de envío (para llamadas salientes) o puertos de recepción (para llamadas entrantes). Para obtener más información, consulte Configuración de un enlace de puerto físico mediante un archivo de enlace de puertos en SAP.
Iniciar la aplicación
Debe iniciar la aplicación de BizTalk para invocar una RFC en el sistema SAP. Para obtener instrucciones sobre cómo iniciar una aplicación de BizTalk, vea Cómo iniciar una orquestación o cómo iniciar una aplicación.
En esta fase, asegúrese de:
El puerto de recepción FILE para recibir mensajes de solicitud para la orquestación está en funcionamiento.
El puerto de envío "FILE" para recibir los mensajes de respuesta de la orquestación está en funcionamiento.
El puerto de envío WCF-Custom o WCF-SAP para enviar mensajes al sistema SAP está activo.
La orquestación de BizTalk para la operación se está ejecutando.
Ejecución de la operación
Después de ejecutar la aplicación, debe dejar un mensaje de solicitud de la orquestación en una ubicación predefinida. Consulte Esquemas de mensajes para operaciones RFC para conocer el esquema del mensaje de solicitud para invocar una RFC en un sistema SAP. Por ejemplo, el mensaje de solicitud para invocar RFC_CUSTOMER_GET es:
<RFC_CUSTOMER_GET xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
<KUNNR>0000001390</KUNNR>
<NAME1>*</NAME1>
<CUSTOMER_T/>
</RFC_CUSTOMER_GET>
La orquestación consume el mensaje y lo envía al sistema SAP. La respuesta del sistema SAP se guarda en otra ubicación de archivo definida como parte de la orquestación. Por ejemplo, la respuesta del sistema SAP para el mensaje de solicitud anterior es:
<?xml version="1.0" encoding="utf-8" ?>
<RFC_CUSTOMER_GETResponse xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
<CUSTOMER_T>
<RFCCUST xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/">
<KUNNR>0000001390</KUNNR>
<ANRED>Firma</ANRED>
<NAME1>Contoso, Ltd.</NAME1>
<PFACH />
<STRAS>4567 Main Street</STRAS>
<PSTLZ>98052</PSTLZ>
<ORT01>USA</ORT01>
<TELF1>555-0101</TELF1>
<TELFX>555-0102</TELFX>
</RFCCUST>
</CUSTOMER_T>
</RFC_CUSTOMER_GETResponse>
Posibles excepciones
Para obtener información sobre las excepciones que puede encontrar al invocar una RFC en un sistema SAP mediante BizTalk Server, vea Excepciones y control de errores con el adaptador de SAP.
Procedimientos recomendados
Después de implementar y configurar el proyecto de BizTalk, puede exportar opciones de configuración a un archivo XML denominado archivo de enlaces. Una vez que genere un archivo de enlaces, puede importar los valores de configuración del archivo para que no sea necesario crear los puertos de envío, los puertos de recepción, etc. para la misma orquestación. Para obtener más información sobre archivos de vinculación, consulte Reuse SAP adapter bindings.