Esquemas de mensaje para operaciones de tRFC
Las llamadas a funciones remotas (TRFC) de Transactiostructnal se usan para ejecutar llamadas RFC en una unidad lógica de trabajo (LUW). El adaptador de SAP admite varios TRFC por LUW para llamadas tRFC entrantes. En el caso de las llamadas tRFC salientes (cliente), el adaptador solo puede admitir un tRFC único en un LUW; por lo tanto, para crea un LUW en SAP para cada llamada tRFC de cliente. Para obtener más información sobre cómo el adaptador de SAP admite operaciones tRFC, consulte Operaciones en TRFC en SAP. En esta sección se describen los esquemas de mensajes y las acciones para las operaciones de tRFC.
Estructura de mensajes para las operaciones de tRFC
Cada operación tRFC consta de un mensaje de solicitud y un mensaje de respuesta (respuesta). El adaptador de SAP asocia un GUID con el identificador de transacción del sistema SAP (TID) que identifica el LUW en el sistema SAP. Este GUID puede estar presente en los mensajes de solicitud y respuesta tRFC en el <elemento TransactionalRfcOperationIdentifier> .
En el caso de las llamadas tRFC salientes, puede pasar un GUID al adaptador en el mensaje de solicitud tRFC. Si no proporciona un GUID, el adaptador genera uno automáticamente. El adaptador siempre devuelve el GUID en el mensaje de respuesta tRFC. Pase este GUID en la operación RfcConfirmTransID para confirmar el TID en el sistema SAP.
Para las llamadas tRFC entrantes, el adaptador pasa un GUID que ha generado y asignado al TID de SAP en el mensaje de solicitud tRFC. Opcionalmente, puede devolver este GUID en el mensaje de respuesta.
Importante
En algunos escenarios, por ejemplo, para solucionar un problema en el sistema SAP, es posible que necesite el valor real del TID de SAP que identifica el tRFC en el sistema SAP. Puede obtener el valor del TID de SAP asociado a un GUID mediante una llamada al método ConvertGuidToTid . Para obtener más información sobre ConvertGuidToTid, vea Operaciones especiales.
En la tabla siguiente se muestran los esquemas de mensaje usados para las operaciones tRFC y para la operación RfcConfirmTransID. El adaptador expone la operación RfcConfirmTransID para que pueda confirmar el TID de SAP en las llamadas tRFC del cliente.
Operación | Estructura XML | Descripción |
---|---|---|
tRFC ([RFC_NAME]) |
<[RFC_NAME] xmlns="[VERSION]/Trfc/"> <IN1_PARAM_NAME>v1</IN1_PARAM_NAME> <IN2_PARAM_NAME>v2</IN2_PARAM_NAME> … <INOUT1_PARAM_NAME>v3</INOUT1_PARAM_NAME> <INOUT2_PARAM_NAME>v4</INOUT2_PARAM_NAME> … <TABLE1_PARAM_NAME xmlns="[VERSION]/Types/Trfc/"> <STRUCT1_PARAM_NAME> <[FIELD1_NAME]>value1</[FIELD1_NAME]> <[FIELD2_NAME]>value2</[FIELD2_NAME]> … </STRUCT1_PARAM_NAME> … </TABLE1_PARAM_NAME> … <TransactionalRfcOperationIdentifier>GUID </TransactionalRfcOperationIdentifier> </[RFC_NAME]> |
Invoca un tRFC en el sistema SAP. - Se admiten los parámetros de importación, cambio y tabla. - Los parámetros de importación y cambio pueden ser tipos de datos SAP STRUCTURE, TIPOS DE TABLA de SAP o tipos de datos simples de SAP. - Las llamadas de cliente tRFC no tienen valores devueltos en el lado de salida. SAP los ejecuta de forma asincrónica solo con valores de entrada. El <elemento TransactionalRfcOperationIdentifier> : - Para las llamadas de tRFC salientes, opcionalmente puede especificar un GUID que se debe asignar al TID de SAP mediante el adaptador de este elemento. Si no se especifica un GUID, el adaptador de SAP genera uno y lo asigna al TID de SAP para el tRFC. - Para las llamadas tRFC entrantes, el adaptador pasa el GUID asignado al TID de SAP en este elemento. |
Respuesta tRFC ([RFC_NAME]Respuesta) |
<[RFC_NAME]Response xmlns="[VERSION]/Trfc/"> <TransactionalRfcOperationIdentifier>GUID </TransactionalRfcOperationIdentifier> </[RFC_NAME]Response> |
Indica que la RFC se ha enviado al sistema SAP. - Las llamadas de cliente tRFC no tienen valores devueltos en el lado de salida. SAP los ejecuta de forma asincrónica solo con valores de entrada. El <elemento TransactionalRfcOperationIdentifier> : - Para las llamadas de tRFC salientes, el adaptador envía el GUID asociado con el TID de SAP para el tRFC en este elemento. - Para las llamadas tRFC entrantes, puede devolver opcionalmente el GUID enviado por el adaptador en el mensaje de solicitud. |
RfcConfirmTransID (RfcConfirmTransID) |
<RfcConfirmTransID xmlns="[VERSION]/Trfc/"> <TransactionalRfcOperationIdentifier>GUID </TransactionalRfcOperationIdentifier> </RfcConfirmTransID> |
La operación RfcConfirmTransID confirma el TID usado en una operación tRFC saliente en el sistema SAP. El <elemento TransactionalRfcOperationIdentifier> contiene el GUID asignado al TID asociado a la llamada tRFC saliente. Debe establecerlo en el valor del GUID devuelto por el adaptador en el mensaje de respuesta tRFC. Para obtener más información sobre la operación RfcConfirmTransID, consulte Operaciones especiales. |
RfcConfirmTransIDResponse (RfcConfirmTransIDResponse) |
<RfcConfirmTransIDResponse xmlns="[VERSION]/Trfc/"> </RfcConfirmTransIDResponse> |
Indica que el adaptador de SAP ha confirmado el TID en el sistema SAP. |
[VERSION] = La cadena de versión del mensaje; por ejemplo, http://Microsoft.LobServices.Sap/2007/03
.
[RFC_NAME] = Nombre de la RFC; por ejemplo, RFC_CUSTOMER_GET.
[IN_PARAM_NAME] = El nombre del parámetro RFC Import.
[INOUT_PARAM_NAME] = El nombre de un parámetro RFC Changing.
[TABLE_PARAM_NAME] = Nombre de un parámetro Table RFC.
[STRUCT_PARAM_NAME] = El nombre de un parámetro De estructura RFC.
GUID = UN GUID que identifica el TID de SAP asociado al tRFC.
Acciones de mensaje para las operaciones de tRFC
En la tabla siguiente se muestran las acciones de mensaje que se usan para las operaciones de tRFC.
Operación | Acción del mensaje | Ejemplo |
---|---|---|
[RFC_NAME] | [VERSION]/Trfc/[RFC_NAME] | http://Microsoft.LobServices.Sap/2007/03/Trfc/RFC_CUSTOMER_GET |
[RFC_NAME] Respuesta | [VERSION]/Trfc/[RFC_NAME]/response | http://Microsoft.LobServices.Sap/2007/03/Trfc/RFC_CUSTOMER_GET/response |
RfcConfirmTransID | [VERSION]/Trfc/RfcConfirmTransID | http://Microsoft.LobServices.Sap/2007/03/Trfc/RfcConfirmTransID |
Respuesta rfcConfirmTransID | [VERSION/Trfc/RfcConfirmTransID/response | http://Microsoft.LobServices.Sap/2007/03/Trfc/RfcConfirmTransID/response |
[VERSION] = La cadena de versión del mensaje; por ejemplo, http://Microsoft.LobServices.Sap/2007/03
.
[RFC_NAME] = Nombre del RFC que se va a invocar; por ejemplo, RFC_CUSTOMER_GET.
Consulte también
Mensajes y esquemas de mensajes para el adaptador de BizTalk para mySAP Business Suite