Compartir a través de


Generación de esquemas para artefactos de SAP mediante flujos de trabajo 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 sin el contenido ni los datos del propio documento XML. A continuación, el flujo de trabajo carga los esquemas devueltos por la respuesta a una cuenta de integración mediante una operación de 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.

Los flujos de trabajo de aplicaciones lógicas estándar y de consumo ofrecen el conector administrado de SAP, que se hospeda y ejecuta en Azure multiinquilino. Los flujos de trabajo estándar también ofrecen el conector integrado de SAP, que se hospeda y ejecuta en Azure Logic Apps de un solo inquilino. Para más información, consulte la referencia técnica del conector.

Requisitos previos

  • Instale o use una herramienta que envíe solicitudes HTTP para probar la solución. Por ejemplo:

    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. La herramienta debe funcionar sin conexión o localmente y no requerir el inicio de sesión en una cuenta en línea o sincronizar datos en la nube. Cuando se usa una herramienta con estas características, 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 o estándar, siga los pasos correspondientes.

  1. En Azure Portal, abra su recurso de aplicación lógica de Consumo y el flujo de trabajo en blanco en el diseñador.

  2. En el diseñador, siga estos pasos generales para buscar y agregar el desencadenador integrado de solicitud denominado Cuando se recibe una solicitud HTTP.

    En la captura de pantalla se muestra el desencadenador de solicitud para un flujo de trabajo de consumo.

  3. 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:

    En la captura de pantalla se muestra la URL del punto de conexión generado por el desencadenador de solicitud para recibir solicitudes en un flujo de trabajo de consumo.

Adición de una acción de SAP para generar esquemas

En función de si tiene un flujo de trabajo de consumo o estándar, siga los pasos correspondientes.

  1. En el diseñador de flujo de trabajo, en el desencadenador de solicitud , 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.

  2. Si se le solicita, proporcione la información de conexión del servidor SAP local. Cuando haya terminado, seleccione Crear nuevo. 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. Para obtener más información sobre la escritura segura, consulte Configuración de escritura segura. Para ver otros parámetros de conexión disponibles, consulte Información de conexión predeterminada.

    Una vez que Azure Logic Apps configura y prueba la conexión, aparece el panel de información de acciones.

    En la captura de pantalla se muestra el flujo de trabajo de consumo y la acción administrada de SAP denominada Generar esquemas.

    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. Para obtener más información sobre los problemas de conexión que puedan producirse, consulte Solución de problemas de conexiones.

  3. En la acción Generar esquemas , proporcione una ruta de acceso a la acción de SAP para la que desea generar un esquema.

    En este ejemplo se usa la siguiente ruta de acceso de ejemplo para la acción de SAP denominada Enviar:

    http://Microsoft.LobServices.Sap/2007/03/Idoc/3/ORDERS05//720/Send

    En la captura de pantalla se muestra el flujo de trabajo de consumo, la acción Generar esquemas y la ruta de acceso a una acción de SAP.

    Sugerencia

    En la sección sapActionsUris , puede utilizar el editor de expresiones para proporcionar valores de parámetros. Este enfoque le permite utilizar la misma acción de SAP para diferentes tipos de mensajes.

    Para obtener más información sobre la acción Enviar SAP, consulte Esquemas de mensajes para operaciones de IDOC.

    Si tiene la opción de examinar y seleccionar las carpetas a lo largo de esta ruta, siga estos pasos:

    1. En la lista desplegable sapActionUris Item - 1 , seleccione BAPI,IDOC, RFC o TRFC.

      En este ejemplo se selecciona IDOC. Si selecciona un tipo de operación diferente, los parámetros disponibles cambian en función de su selección.

    2. Examine las carpetas de SAP con las flechas para buscar y seleccionar la acción de SAP que desea utilizar.

      En este ejemplo se selecciona ORDERS>ORDERS05>720>Send.

  4. Para generar esquemas para más de una acción, en la sección sapActionUris , seleccione Agregar nuevo elemento.

    La captura de pantalla muestra la selección de la opción para agregar un nuevo elemento.

  5. Para cada acción de SAP que desee generar un esquema, proporcione la ruta de acceso a esa acción, por ejemplo:

    En la captura de pantalla se muestran varias acciones de SAP que se van a utilizar para generar esquemas.

  6. 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 o estándar, siga los pasos correspondientes.

  1. 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).

  2. Seleccione Ejecutar>Ejecutar en la barra de herramientas del diseñador para iniciar manualmente el flujo de trabajo.

  3. 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>
    
  4. Después de enviar la solicitud HTTP, espere la respuesta del flujo de trabajo.

    Nota

    Es posible que se agote el tiempo de espera del flujo de trabajo 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 ayudarle a diagnosticar problemas, aprenda a comprobar el estado del flujo de trabajo y ver el historial de ejecuciones en Azure Logic Apps.

  5. En el menú de la aplicación lógica, seleccione Información general. En la pestaña Historial de ejecución , seleccione la ejecución del flujo de trabajo.

  6. Seleccione la acción Generar esquemas para revisar los resultados 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 Comprobar el estado del flujo de trabajo, ver el historial de ejecución y configurar alertas en Azure Logic Apps.

Carga de esquemas en una cuenta de integración

Opcionalmente, puede descargar o almacenar los esquemas generados en repositorios, como una cuenta de integración o una cuenta de almacenamiento de Azure, como 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. Opcionalmente, puede cargar los 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, necesita una cuenta de integración, si aún no tiene una. Siga los pasos correspondientes en función de si tiene un flujo de trabajo de consumo o estándar. El procedimiento carga esquemas a una cuenta de integración desde el flujo de trabajo después de la generación del esquema.

  1. En el diseñador de flujos de trabajo, en la acción Generar esquemas , siga estos pasos generales para agregar la acción administrada de Azure Resource Manager denominada Crear o actualizar un recurso.

  2. Si se te pide que inicies sesión, hazlo ahora y continúa.

    Una vez que Azure Logic Apps configura y prueba la conexión, aparece el panel de información de acción:

    En la captura de pantalla se muestra el flujo de trabajo de consumo y una acción de Azure Resource Manager denominada Crear o actualizar un recurso.

  3. En la acción Crear o actualizar un recurso, proporcione la información necesaria.

    1. Puede incluir cualquier salida de los pasos anteriores en el flujo de trabajo. Seleccione dentro del parámetro donde desea incluir la salida. Seleccione el icono de rayo para abrir la lista de contenido dinámico y seleccione la salida que desea incluir.

    2. Si los parámetros Ubicación y Propiedades no aparecen en la pestaña Parámetros , abra la lista Parámetros avanzados y agregue esos parámetros.

    3. Proporcione valores para los parámetros agregados, por ejemplo:

      En la captura de pantalla se muestra el flujo de trabajo de consumo y la acción de Azure Resource Manager con parámetros agregados denominados Ubicación y Propiedades.

    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:

    En la captura de pantalla se muestra el flujo de trabajo de consumo y para cada bucle con la acción de Azure Resource Manager incluida.

  4. Guarde el flujo de trabajo. En la barra de herramientas del diseñador, seleccione Save (Guardar).

Prueba del flujo de trabajo

  1. Siga estos pasos generales para probar y ejecutar manualmente su flujo de trabajo. Use el procedimiento que corresponda al flujo de trabajo de consumo en Azure Logic Apps multiinquilino o al flujo de trabajo estándar en Azure Logic Apps de un solo inquilino.

  2. Después de una ejecución correcta, vaya a la cuenta de integración y confirme que los esquemas generados existen.

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:

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 xmlns: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 denominada 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 utiliza el código x002F hexadecimal como carácter de escape para el símbolo / de barra diagonal 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.

Precaución

Tenga cuidado al utilizar la codificación de matrices binarias, ya que 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 se descodifica como un valor codificado en base64 válido, pero da como resultado una matriz [d3][5d][36][d3][7d][38]binaria diferente y no la matriz [01][02][03][04]binaria .

En el ejemplo siguiente se incluyen los prefijos de los espacios de nombres. Puede declarar todos los prefijos a la vez, o puede declarar cualquier número de prefijos 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 GETLISTBAPI . 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 bank mediante el CREATE método. 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 ruta del banco, 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 con nombre tid mediante la operación Enviar IDOC en el conector gestionado de SAP.

En el ejemplo siguiente se muestra un método alternativo para establecer el identificador de 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>