Generación de esquemas para artefactos de SAP en Azure Logic Apps
Se aplica a: Azure Logic Apps (consumo + estándar)
En esta guía paso a paso se muestra cómo crear un flujo de trabajo de aplicación lógica de ejemplo que genera esquemas para artefactos de SAP. El flujo de trabajo comienza con un desencadenador de Solicitudes que puede recibir solicitudes HTTP POST del servidor SAP. A continuación, el flujo de trabajo genera esquemas para el IDoc y BAPI especificados mediante la acción de SAP denominada Generar esquemas que envía una solicitud al servidor SAP. Para enviar esta solicitud, puede usar la acción genérica del conector administrado de SAP denominada Enviar mensaje a SAP, o bien puede usar la acción integrada o administrada de SAP específica denominada [BAPI] Llamar método en SAP. Esta acción de SAP devuelve un esquema XML, no el contenido o los datos del propio documento XML. Los esquemas que se devuelven en la respuesta se cargan en una cuenta de integración mediante el conector de Azure Resource Manager. Los esquemas contienen las siguientes partes:
Componente | Descripción |
---|---|
Estructura del mensaje de solicitud | Use esta información para formar la lista get de BAPI. |
Estructura del mensaje de respuesta | Utilice esta información para analizar la respuesta. |
Tanto los flujos de trabajo de aplicaciones lógicas estándar como de consumo ofrecen el conector de administrado SAP que se hospeda y se ejecuta en Azure multiinquilino. Los flujos de trabajo estándar también ofrecen la versión preliminar del conector integrado de SAP hospedado y ejecutado en Azure Logic Apps de un solo inquilino, pero este conector está actualmente en versión preliminar y está sujeto a las Condiciones de uso complementarias para las versiones preliminares de Microsoft Azure. Para más información, consulte la referencia técnica del conector.
Requisitos previos
Antes de empezar, asegúrese de revisar y cumplir los requisitos del conector de SAP para su escenario específico.
Si desea cargar los esquemas generados en un repositorio, como una cuenta de integración, asegúrese de que el repositorio ya exista.
Instale o use una herramienta que envíe solicitudes HTTP para probar la solución. Por ejemplo:
- Visual Studio Code con una extensión de Visual Studio Marketplace
- Invoke-RestMethod de PowerShell
- Microsoft Edge: herramienta de consola de red
- Bruno
- curl
Precaución
En escenarios en los que tiene datos confidenciales, como credenciales, secretos, tokens de acceso, claves de API y otra información similar, asegúrese de usar una herramienta que proteja los datos con las características de seguridad necesarias, funcione sin conexión o localmente, no sincronice los datos en la nube y no requiera que inicie sesión en una cuenta en línea. De este modo, se reduce el riesgo de exponer datos confidenciales al público.
Generación de esquemas para un artefacto de SAP
El siguiente flujo de trabajo de aplicación lógica de ejemplo se desencadena cuando el desencadenador SAP del flujo de trabajo recibe una solicitud de un servidor SAP. A continuación, el flujo de trabajo ejecuta una acción de SAP que genera esquemas para el artefacto de SAP especificado.
Adición del desencadenador Request
Para que el flujo de trabajo reciba solicitudes del servidor SAP en HTTP, puede usar el Desencadenador de solicitudes integrado. Este desencadenador crea un punto de conexión con una dirección URL en la que el servidor SAP puede enviar solicitudes HTTP POST al flujo de trabajo. Cuando el flujo de trabajo recibe estas solicitudes, el desencadenador se activa y ejecuta el paso siguiente en el flujo de trabajo.
En función de si tiene un flujo de trabajo de consumo en Azure Logic Apps multiinquilino o un flujo de trabajo estándar en Azure Logic Apps de un solo inquilino, siga los pasos correspondientes:
En Azure Portal, cree un recurso de aplicación lógica de consumo y un flujo de trabajo en blanco, lo que abre el diseñador.
En el diseñador, siga estos pasos generales para buscar y agregar el Desencadenador de solicitudes integrado denominado Cuando se recibe una solicitud HTTP.
Guarde el flujo de trabajo. En la barra de herramientas del diseñador, seleccione Save (Guardar).
Este paso genera una dirección URL de punto de conexión en la que el desencadenador puede recibir solicitudes del servidor SAP, por ejemplo:
Adición de una acción de SAP para generar esquemas
En función de si tiene un flujo de trabajo de consumo en Azure Logic Apps multiinquilino o un flujo de trabajo estándar en Azure Logic Apps de un solo inquilino, siga los pasos correspondientes:
En el diseñador de flujo de trabajo, en el Desencadenador de solicitudes, seleccione Nuevo paso.
En el diseñador, siga estos pasos generales para buscar y agregar la acción administrada de SAP denominada Generar esquemas.
Para obtener más información sobre esta acción administrada de SAP, consulte Generar esquemas.
Si se le solicita, proporcione la información de conexión del servidor SAP local. Seleccione Crear cuando haya terminado. De lo contrario, continúe con el paso siguiente para configurar la acción de SAP.
De manera predeterminada, al crear una conexión para una operación administrada de SAP, se usa el tipado fuerte para comprobar si hay valores no válidos; para ello, se realiza la validación de XML con respecto al esquema. Este comportamiento puede ayudarlo a detectar problemas con antelación. Obtenga más información sobre la Configuración de tipado seguro. Para ver otros parámetros de conexión disponibles opcionales, consulte Información de conexión predeterminada.
Después de que Azure Logic Apps configure y pruebe la conexión, aparece el cuadro de información de acción. Para obtener más información sobre los problemas de conexión que puedan producirse, consulte Solución de problemas de conexiones.
En la acción Generar esquemas, proporcione una ruta de acceso al artefacto para el que desea generar el esquema seleccionando una acción de SAP disponible en el servidor SAP.
En el cuadro de edición del parámetro Body ActionUri, seleccione el icono de carpeta. En la lista que se abre, seleccione BAPI, IDOC, RFC o TRFC. En este ejemplo se selecciona IDOC. Si selecciona otro tipo, las acciones de SAP disponibles cambian en función de la selección.
Nota
Si recibe un error de Puerta de enlace incorrecta (500) o un error de Solicitud incorrecta (400), consulte 500 Puerta de enlace incorrecta o 400 Error de solicitud incorrecta.
Examine las carpetas de tipos de acciones de SAP mediante las flechas para buscar y seleccionar la acción de SAP que desea usar.
En este ejemplo se selecciona ORDERS>ORDERS05>720>Send.
Si no encuentra la acción que quiere, puede escribir manualmente una ruta de acceso, por ejemplo:
Sugerencia
Para el parámetro Body ActionUri, puede usar el editor de expresiones para proporcionar el valor del parámetro. De este modo, puede usar la misma acción de SAP para diferentes tipos de mensajes.
Para obtener más información sobre esta acción de SAP, consulte Esquemas de mensaje para operaciones de IDoc.
Para generar esquemas para más de un artefacto, en la sección Body ActionUri, seleccione Agregar nuevo elemento.
Para cada artefacto, proporcione la acción de SAP que desea usar para la generación de esquemas, por ejemplo:
Guarde el flujo de trabajo. En la barra de herramientas del diseñador, seleccione Save (Guardar).
Prueba del flujo de trabajo para la generación de esquemas
En función de si tiene un flujo de trabajo de consumo en Azure Logic Apps multiinquilino o un flujo de trabajo estándar en Azure Logic Apps de un solo inquilino, siga los pasos correspondientes:
Si el recurso de la aplicación lógica de consumo no está ya habilitado, en el menú de la aplicación lógica, seleccione Información general. En la barra de herramientas, seleccione Enable (Habilitar).
Seleccione Ejecutar>Ejecutar en la barra de herramientas del diseñador para iniciar manualmente el flujo de trabajo.
Para simular una carga del desencadenador de webhook y desencadenar el flujo de trabajo, envíe una solicitud HTTP a la dirección URL del punto de conexión creada por el desencadenador de Solicitud del flujo de trabajo, incluyendo el método que espera el desencadenador de Solicitud, mediante la herramienta de solicitud HTTP y sus instrucciones. Asegúrese de incluir el contenido de su mensaje con la solicitud.
En este ejemplo se usa el método POST y la dirección URL del punto de conexión para enviar un archivo IDoc, que debe estar en formato XML e incluir el espacio de nombres para la acción de SAP que seleccionó. Por ejemplo:
<?xml version="1.0" encoding="UTF-8" ?> <Send xmlns="http://Microsoft.LobServices.Sap/2007/03/Idoc/2/ORDERS05//720/Send"> <idocData> <...> </idocData> </Send>
Después de enviar la solicitud HTTP, espere la respuesta del flujo de trabajo.
Nota
El flujo de trabajo puede agotar el tiempo de espera si todos los pasos necesarios para la respuesta no finalizan dentro del límite de tiempo de espera de la solicitud. Si se produce esta situación, es posible que se bloqueen las solicitudes. Para ayudar a diagnosticar problemas, obtenga información sobre cómo puede comprobar y supervisar el flujo de trabajo de las aplicaciones lógicas.
En el panel Información general de la aplicación lógica, en Historial de ejecuciones, busque y abra la ejecución del flujo de trabajo.
Busque la acción Generar esquemas y revise las salidas de la acción.
Las salidas muestran los esquemas generados para los mensajes especificados.
Para obtener más información sobre cómo revisar el historial de ejecución del flujo de trabajo, consulte Supervisión de flujos de trabajo de aplicaciones lógicas.
Carga de esquemas en una cuenta de integración
De manera opcional, puede descargar o almacenar los esquemas generados en repositorios, como una cuenta de integración o una cuenta de almacenamiento de Azure, por ejemplo, en un contenedor de blobs. Las cuentas de integración proporcionan una experiencia de primera clase con acciones XML para flujos de trabajo en Azure Logic Apps. Tiene la opción de cargar esquemas generados en una cuenta de integración existente dentro del mismo flujo de trabajo que genera esos esquemas mediante la acción de Azure Resource Manager denominada Crear o actualizar un recurso.
Nota
Los esquemas usan el formato codificado en Base64. Para cargar esquemas en una cuenta de integración, primero deben descodificarse mediante la función base64ToString()
. En el ejemplo siguiente se muestra el código del elemento properties
:
"properties": {
"Content": "@base64ToString(items('For_each')?['Content'])",
"ContentType": "application/xml",
"SchemaType": "Xml"
}
Para esta tarea, necesitará una cuenta de integración, si aún no tiene una. En función de si tiene un flujo de trabajo de consumo en Azure Logic Apps multiinquilino o un flujo de trabajo estándar en Azure Logic Apps de inquilino único, siga los pasos correspondientes para cargar esquemas en una cuenta de integración desde el flujo de trabajo después de la generación de esquemas.
En el diseñador del flujo de trabajo, en la acción administrada de SAP denominada Generar esquemas, seleccione Nuevo paso.
Siga estos pasos generales para buscar y agregar la acción administrada de Azure Resource Manager denominada Crear o actualizar un recurso. Si se le pide que inicie sesión con sus credenciales, hágalo.
Después de que Azure Logic Apps configure y pruebe la conexión, aparece el cuadro de información de acción.
En la acción Crear o actualizar un recurso, proporcione la información necesaria.
Para incluir las salidas de los pasos anteriores en el flujo de trabajo, seleccione dentro del parámetro en el que desea incluir la salida, abra la lista de contenido dinámico y seleccione la salida que desea incluir.
En la lista Agregar nuevo parámetro, seleccione los parámetros Ubicación y Propiedades.
Proporcione los valores de estos parámetros agregados, por ejemplo:
La acción Generar esquemas genera esquemas como una colección, de modo que el diseñador agrega automáticamente un bucle For each a la acción de Azure Resource Manager, por ejemplo:
Guarde el flujo de trabajo. En la barra de herramientas del diseñador, seleccione Save (Guardar).
Prueba del flujo de trabajo
En función de si tiene un flujo de trabajo de aplicación lógica de consumo o estándar, siga los pasos generales para probar y ejecutar manualmente el flujo de trabajo.
Tras ejecutarse correctamente, vaya a la cuenta de integración y compruebe que existen los esquemas generados.
Esquemas XML de ejemplo
Si está aprendiendo a generar un esquema XML para usarlo en la creación de un documento de ejemplo, consulte los ejemplos siguientes. En estos ejemplos se muestra cómo puede trabajar con muchos tipos de cargas, entre las que se incluyen:
- Solicitudes RFC
- Solicitudes BAPI
- Solicitudes IDoc
- Tipos de datos de esquemas XML simples o complejos
- Parámetros de tabla
- Comportamientos XML opcionales
Puede comenzar el esquema XML con un prólogo XML opcional. El conector de SAP funciona con o sin el prólogo XML.
<?xml version="1.0" encoding="utf-8">
Ejemplos XML para solicitudes de RFC
En el ejemplo siguiente se muestra una llamada RFC básica donde el nombre RFC es STFC_CONNECTION
. Esta solicitud usa el espacio de nombres predeterminado denominado xmlns=
. Sin embargo, puede asignar y usar alias de espacio de nombres como xmmlns:exampleAlias=
. El valor del espacio de nombres es el espacio de nombres para todas las RFC en SAP para los servicios de Microsoft. La solicitud tiene un parámetro de entrada simple denominado <REQUTEXT>
.
<STFC_CONNECTION xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
<REQUTEXT>exampleInput</REQUTEXT>
</STFC_CONNECTION>
El ejemplo siguiente muestra una llamada RFC con un parámetro de tabla. Esta llamada de ejemplo y su grupo de RFC de prueba están disponibles en todos los sistemas SAP. El parámetro de tabla se denomina TCPICDAT
. El tipo de línea de tabla es ABAPTEXT
y este elemento se repite para cada fila de la tabla. Este ejemplo contiene una sola línea, que se denomina LINE
. Las solicitudes con un parámetro de tabla pueden contener cualquier número de campos, donde el número es un entero positivo (n).
<STFC_WRITE_TO_TCPIC xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
<RESTART_QNAME>exampleQName</RESTART_QNAME>
<TCPICDAT>
<ABAPTEXT xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/">
<LINE>exampleFieldInput1</LINE>
</ABAPTEXT>
<ABAPTEXT xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/">
<LINE>exampleFieldInput2</LINE>
</ABAPTEXT>
<ABAPTEXT xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/">
<LINE>exampleFieldInput3</LINE>
</ABAPTEXT>
</TCPICDAT>
</STFC_WRITE_TO_TCPIC>
Sugerencia
Para revisar el resultado de RFC STFC_WRITE_TO_TCPIC, use el Explorador de datos de inicio de sesión de SAP (código T SE16) y la tabla denominada TCPIC.
En el ejemplo siguiente se muestra una llamada RFC con un parámetro de tabla que tiene un campo anónimo, que es un campo sin un nombre asignado. Los tipos complejos se declaran en un espacio de nombres independiente, en el que la declaración establece un nuevo valor predeterminado para el nodo actual y todos sus elementos secundarios. En el ejemplo se usa el código hexadecimal x002F
como carácter de escape para el símbolo / porque este símbolo está reservado en el nombre de campo de SAP.
<RFC_XML_TEST_1 xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
<IM_XML_TABLE>
<RFC_XMLCNT xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
<_x002F_AnonymousField>AQIDBAU=</_x002F_AnonymousField>
</RFC_XMLCNT>
</IM_XML_TABLE>
</RFC_XML_TEST_1>
En el ejemplo anterior también se muestra cómo codificar matrices binarias para los tipos de datos de SAP byte
y XString
. Las matrices binarias están codificadas en base64 en XML (tipo de datos binario XSD xs:base64Binary
). En el ejemplo, el valor de cadena de base64 de ejemplo AQIDBAU=
se descodifica como la matriz binaria [01][02][03][04]
. Esta codificación difiere y es más eficaz que la codificación hexadecimal del conector de SAP .NET subyacente. Con la codificación hexadecimal, el mismo valor se codifica como la cadena 01020304
.
Nota
Tenga cuidado al utilizar la codificación de matriz binaria porque la codificación hexadecimal utiliza un subconjunto del intervalo base64 y aparece como valores base64 válidos. Por ejemplo, el valor 01020304
de cadena también descodifica como un valor codificado en base64 válido, pero da como resultado una matriz binaria diferente [d3][5d][36][d3][7d][38]
, no como matriz binaria [01][02][03][04]
.
En el ejemplo siguiente se incluyen los prefijos de los espacios de nombres. Puede declarar todos los prefijos a la vez o puede declarar un número de ellos como atributos de un nodo. El alias del espacio de nombres de RFC denominado ns0
se utiliza como la raíz y los parámetros para el tipo básico.
Nota
Los tipos complejos se declaran en otro espacio de nombres para tipos de RFC con el alias ns3
en lugar del espacio de nombres de RFC normal con el alias ns0
.
<ns0:BBP_RFC_READ_TABLE xmlns:ns0="http://Microsoft.LobServices.Sap/2007/03/Rfc/" xmlns:ns3="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/">
<ns0:DELIMITER>0</ns0:DELIMITER>
<ns0:QUERY_TABLE>KNA1</ns0:QUERY_TABLE>
<ns0:ROWCOUNT>250</ns0:ROWCOUNT>
<ns0:ROWSKIPS>0</ns0:ROWSKIPS>
<ns0:FIELDS>
<ns3:RFC_DB_FLD>
<ns3:FIELDNAME>KUNNR</ns3:FIELDNAME>
</ns3:RFC_DB_FLD>
</ns0:FIELDS>
</ns0:BBP_RFC_READ_TABLE>
Ejemplos XML para solicitudes de BAPI
Los siguientes ejemplos XML son solicitudes de ejemplo para llamar al método BAPI.
Nota
SAP pone los objetos comerciales a disposición de los sistemas externos mediante su descripción en respuesta a RFC RPY_BOR_TREE_INIT
, que Azure Logic Apps emite sin un filtro de entrada. Azure Logic Apps inspecciona la tabla de salida BOR_TREE
.
El campo SHORT_TEXT
se utiliza para los nombres de objetos comerciales. Azure Logic Apps no puede acceder a los objetos comerciales no devueltos por SAP en la tabla de salida.
Si usa objetos comerciales personalizados, asegúrese de publicar y liberar estos objetos comerciales en SAP. De lo contrario, SAP no muestra los objetos comerciales personalizados en la tabla de salida BOR_TREE
. No se puede acceder a los objetos comerciales personalizados en Azure Logic Apps hasta que se expongan los objetos comerciales desde SAP.
En el ejemplo siguiente se obtiene una lista de bancos mediante el método de BAPI GETLIST
. Este ejemplo contiene el objeto comercial de un banco denominado BUS1011
.
<GETLIST xmlns="http://Microsoft.LobServices.Sap/2007/03/Bapi/BUS1011">
<BANK_CTRY>US</BANK_CTRY>
<MAX_ROWS>10</MAX_ROWS>
</GETLIST>
En el ejemplo siguiente se crea un objeto de banco mediante el método CREATE
. En este ejemplo se usa el mismo objeto comercial denominado BUS1011
que en el ejemplo anterior. Cuando use el método CREATE
para crear un banco, asegúrese de confirmar los cambios porque este método no se confirma de manera predeterminada.
Sugerencia
Asegúrese de que el documento XML sigue las reglas de validación configuradas en el sistema SAP. Por ejemplo, en este documento de referencia, en EE. UU., la clave del banco (<BANK_KEY>
) debe ser un número de enrutamiento bancario, que también se conoce como ABA.
<CREATE xmlns="http://Microsoft.LobServices.Sap/2007/03/Bapi/BUS1011">
<BANK_ADDRESS>
<BANK_NAME xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc">ExampleBankName</BANK_NAME>
<REGION xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc">ExampleRegionName</REGION>
<STREET xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc">ExampleStreetAddress</STREET>
<CITY xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc">Redmond</CITY>
</BANK_ADDRESS>
<BANK_CTRY>US</BANK_CTRY>
<BANK_KEY>123456789</BANK_KEY>
</CREATE>
En el ejemplo siguiente se obtienen detalles de un banco mediante el número de enrutamiento bancario, que es el valor de <BANK_KEY>
.
<GETDETAIL xmlns="http://Microsoft.LobServices.Sap/2007/03/Bapi/BUS1011">
<BANKCOUNTRY>US</BANKCOUNTRY>
<BANKKEY>123456789</BANKKEY>
</GETDETAIL>
Ejemplos de XML para solicitudes de IDoc
Para generar un esquema XML de IDoc para SAP sin formato, use la aplicación Inicio de sesión de SAP y el código T WE60
. Acceda a la documentación de SAP a través de la interfaz de usuario y genere esquemas XML en formato XSD para sus tipos y extensiones de IDoc. Para obtener más información sobre los formatos y las cargas de SAP genéricos y sus cuadros de diálogo integrados, consulte la documentación de SAP.
En este ejemplo se declaran los espacios de nombres y el nodo raíz. El URI del código de ejemplo (http://Microsoft.LobServices.Sap/2007/03/Idoc/3/ORDERS05//700/Send
) declara la siguiente configuración:
/IDoc
es el nodo raíz para todos los IDoc./3
es la versión de tipos de registro para definiciones de segmento comunes./ORDERS05
es el tipo de IDoc.//
es un segmento vacío porque no hay ninguna extensión IDoc./700
es la versión de SAP./Send
es la acción para enviar la información a SAP.
<ns0:Send xmlns:ns0="http://Microsoft.LobServices.Sap/2007/03/Idoc/3/ORDERS05//700/Send" xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization" xmlns:ns1="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/Common/" xmlns:ns2="http://Microsoft.LobServices.Sap/2007/03/Idoc/3/ORDERS05//700">
<ns0:idocData>
Puede repetir el nodo idocData
para enviar un lote de IDoc en una sola llamada. En el ejemplo siguiente, hay un registro de control denominado EDI_DC40
y varios registros de datos.
<...>
<ns0:idocData>
<ns2:EDI_DC40>
<ns1:TABNAM>EDI_DC40</ns1:TABNAM>
<...>
<ns1:ARCKEY>Cor1908207-5</ns1:ARCKEY>
</ns2:EDI_DC40>
<ns2:E2EDK01005>
<ns2:DATAHEADERCOLUMN_SEGNAM>E23DK01005</ns2:DATAHEADERCOLUMN_SEGNAM>
<ns2:CURCY>USD</ns2:CURCY>
</ns2:E2EDK01005>
<ns2:E2EDK03>
<...>
</ns0:idocData>
El ejemplo siguiente muestra un registro de control de IDoc de ejemplo, que usa un prefijo denominado EDI_DC
. Debe actualizar los valores para que coincidan con la instalación de SAP y el tipo de IDoc. Por ejemplo, el código de cliente de IDoc puede no ser 800
. Póngase en contacto con su equipo de SAP para asegurarse de que está usando los valores correctos para la instalación de SAP.
<ns2:EDI_DC40>
<ns:TABNAM>EDI_DC40</ns1:TABNAM>
<ns:MANDT>800</ns1:MANDT>
<ns:DIRECT>2</ns1:DIRECT>
<ns:IDOCTYP>ORDERS05</ns1:IDOCTYP>
<ns:CIMTYP></ns1:CIMTYP>
<ns:MESTYP>ORDERS</ns1:MESTYP>
<ns:STD>X</ns1:STD>
<ns:STDVRS>004010</ns1:STDVRS>
<ns:STDMES></ns1:STDMES>
<ns:SNDPOR>SAPENI</ns1:SNDPOR>
<ns:SNDPRT>LS</ns1:SNDPRT>
<ns:SNDPFC>AG</ns1:SNDPFC>
<ns:SNDPRN>ABAP1PXP1</ns1:SNDPRN>
<ns:SNDLAD></ns1:SNDLAD>
<ns:RCVPOR>BTSFILE</ns1:RCVPOR>
<ns:RCVPRT>LI</ns1:RCVPRT>
El ejemplo siguiente muestra un registro de datos de ejemplo con segmentos sin formato. En este ejemplo se usa el formato de fecha de SAP. Los documentos fuertemente tipados pueden utilizar formatos de fecha XML nativos, como 2020-12-31 23:59:59
.
<ns2:E2EDK01005>
<ns2:DATAHEADERCOLUMN_SEGNAM>E2EDK01005</ns2:DATAHEADERCOLUMN_SEGNAM>
<ns2:CURCY>USD</ns2:CURCY>
<ns2:BSART>OR</ns2:BSART>
<ns2:BELNR>1908207-5</ns2:BELNR>
<ns2:ABLAD>CC</ns2:ABLAD>
</ns2>
<ns2:E2EDK03>
<ns2:DATAHEADERCOLUMN_SEGNAM>E2EDK03</ns2:DATAHEADERCOLUMN_SEGNAM>
<ns2:IDDAT>002</ns2:IDDAT>
<ns2:DATUM>20160611</ns2:DATUM>
</ns2:E2EDK03>
El ejemplo siguiente muestra un registro de datos con segmentos agrupados. El registro incluye un nodo primario de grupo denominado E2EDKT1002GRP
y varios nodos secundarios, como E2EDKT1002
y E2EDKT2001
.
<ns2:E2EDKT1002GRP>
<ns2:E2EDKT1002>
<ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT1002</ns2:DATAHEADERCOLUMN_SEGNAM>
<ns2:TDID>ZONE</ns2:TDID>
</ns2:E2EDKT1002>
<ns2:E2EDKT2001>
<ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT2001</ns2:DATAHEADERCOLUMN_SEGNAM>
<ns2:TDLINE>CRSD</ns2:TDLINE>
</ns2:E2EDKT2001>
</ns2:E2EDKT1002GRP>
El método recomendado es crear un identificador de IDoc para su uso con tRFC. Puede establecer este identificador de transacción denominado tid
mediante la Operación de envío de IDoc en el conector administrado de SAP.
El ejemplo siguiente muestra un método alternativo para establecer el identificador de la transacción, o tid
. En este ejemplo, el último nodo de segmento de registro de datos y el nodo de datos de IDoc están cerrados. A continuación, el GUID (guid
) se usa como el identificador de tRFC para detectar duplicados.
</E2STZUM002GRP>
</idocData>
<guid>8820ea40-5825-4b2f-ac3c-b83adc34321c</guid>
</Send>