Partilhar via


Gerar esquemas para artefatos SAP nos Aplicativos Lógicos do Azure

Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Padrão)

Este guia de instruções mostra como criar um fluxo de trabalho de aplicativo lógico de exemplo que gera esquemas para artefatos SAP. O fluxo de trabalho começa com um gatilho de solicitação que pode receber solicitações HTTP POST do seu servidor SAP. Em seguida, o fluxo de trabalho gera esquemas para o IDoc e o BAPI especificados usando a ação SAP chamada Gerar esquemas que envia uma solicitação ao servidor SAP. Para enviar essa solicitação, você pode usar a ação genérica do conector gerenciado SAP chamada Enviar mensagem para o SAP, ou pode usar a ação gerenciada ou interna específica do SAP chamada método de chamada [BAPI] no SAP. Essa ação SAP retorna um esquema XML, não o conteúdo ou os dados do documento XML em si. Os esquemas retornados na resposta são carregados em uma conta de integração usando o conector do Azure Resource Manager. Os esquemas contêm as seguintes partes:

Componente Description
Estrutura da mensagem de solicitação Use essas informações para formar sua lista BAPI get .
Estrutura da mensagem de resposta Use essas informações para analisar a resposta.

Os fluxos de trabalho do aplicativo lógico Standard e Consumption oferecem o conector gerenciado SAP hospedado e executado no Azure multilocatário. Os fluxos de trabalho padrão também oferecem o conector integrado SAP de visualização hospedado e executado em Aplicativos Lógicos do Azure de locatário único, mas esse conector está atualmente em visualização e sujeito aos Termos de Uso Suplementares para Visualizações do Microsoft Azure. Para obter mais informações, consulte Referência técnica do conector.

Pré-requisitos

  • Antes de começar, certifique-se de revisar e atender aos requisitos do conector SAP para seu cenário específico.

  • Se você quiser carregar os esquemas gerados em um repositório, como uma conta de integração, verifique se o repositório já existe.

  • Instale ou use uma ferramenta que possa enviar solicitações HTTP para testar sua solução, por exemplo:

    Atenção

    Para cenários em que você tem dados confidenciais, como credenciais, segredos, tokens de acesso, chaves de API e outras informações semelhantes, certifique-se de usar uma ferramenta que proteja seus dados com os recursos de segurança necessários, funcione offline ou localmente, não sincronize seus dados com a nuvem e não exija que você entre em uma conta online. Dessa forma, você reduz o risco de exposição de dados confidenciais ao público.

Gerar esquemas para um artefato SAP

O exemplo de fluxo de trabalho do aplicativo lógico a seguir é acionado quando o gatilho SAP do fluxo de trabalho recebe uma solicitação de um servidor SAP. Em seguida, o fluxo de trabalho executa uma ação SAP que gera esquemas para o artefato SAP especificado.

Adicionar o gatilho de solicitação

Para que seu fluxo de trabalho receba solicitações do servidor SAP por HTTP, você pode usar o gatilho interno Solicitação. Esse gatilho cria um endpoint com uma URL onde o servidor SAP pode enviar solicitações HTTP POST para seu fluxo de trabalho. Quando o fluxo de trabalho recebe essas solicitações, o gatilho é acionado e executa a próxima etapa do fluxo de trabalho.

Com base no facto de ter um fluxo de trabalho de Consumo em Aplicações Lógicas do Azure multiinquilino ou um fluxo de trabalho Padrão em Aplicações Lógicas do Azure de inquilino único, siga os passos correspondentes:

  1. No portal do Azure, crie um recurso de aplicativo lógico de consumo e um fluxo de trabalho em branco, que é aberto no designer.

  2. No designer, siga estas etapas gerais para localizar e adicionar o gatilho interno de solicitação chamado Quando uma solicitação HTTP é recebida.

    A captura de tela mostra o gatilho Solicitação para um fluxo de trabalho de Consumo.

  3. Salve seu fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.

    Esta etapa gera uma URL de endpoint onde seu gatilho pode receber solicitações do seu servidor SAP, por exemplo:

    A captura de tela mostra a URL de ponto de extremidade gerada pelo gatilho Solicitação para receber solicitações em um fluxo de trabalho de Consumo.

Adicionar uma ação SAP para gerar esquemas

Com base no facto de ter um fluxo de trabalho de Consumo em Aplicações Lógicas do Azure multiinquilino ou um fluxo de trabalho Padrão em Aplicações Lógicas do Azure de inquilino único, siga os passos correspondentes:

  1. No designer de fluxo de trabalho, no gatilho Solicitação, selecione Nova etapa.

  2. No designer, siga estas etapas gerais para localizar e adicionar a ação gerenciada do SAP chamada Gerar esquemas.

    Para obter mais informações sobre essa ação gerenciada pelo SAP, consulte Gerar esquemas.

  3. Se solicitado, forneça as informações de conexão para seu servidor SAP local. Quando tiver terminado, selecione Criar. Caso contrário, continue com a próxima etapa para configurar a ação SAP.

    Por padrão, quando você cria uma conexão para uma operação gerenciada pelo SAP, a digitação forte é usada para verificar valores inválidos executando a validação XML em relação ao esquema. Esse comportamento pode ajudá-lo a detetar problemas mais cedo. Saiba mais sobre a configuração de Digitação segura. Para outros parâmetros de conexão opcionais disponíveis, consulte Informações de conexão padrão.

    Depois que os Aplicativos Lógicos do Azure configurarem e testarem sua conexão, a caixa de informações da ação será exibida. Para obter mais informações sobre quaisquer problemas de conexão que possam acontecer, consulte Solucionar problemas de conexões.

    A captura de tela mostra o fluxo de trabalho de consumo e a ação gerenciada SAP chamada Gerar esquemas.

  4. Na ação Gerar esquemas, forneça um caminho para o artefato para o qual você deseja gerar o esquema selecionando uma ação SAP disponível no servidor SAP.

    1. Na caixa de edição do parâmetro Body ActionUri, selecione o ícone da pasta. Na lista que se abre, selecione BAPI, IDOC, RFC ou TRFC. Este exemplo seleciona IDOC. Se você selecionar um tipo diferente, as ações SAP disponíveis serão alteradas com base na sua seleção.

      Nota

      Se você receber um erro Bad Gateway (500) ou Bad request (400), consulte 500 Bad Gateway ou 400 Bad Request error.

      A captura de tela mostra o fluxo de trabalho de consumo, a ação Gerar esquemas e a seleção de IDOC.

    2. Navegue pelas pastas de tipos de ação SAP usando as setas para localizar e selecionar a ação SAP que deseja usar.

      Este exemplo seleciona ORDERS>ORDERS05>720>Send.

      A captura de tela mostra o fluxo de trabalho Consumo, a ação Gerar esquemas e a localização de uma ação Pedidos.

      Se não conseguir encontrar a ação desejada, insira manualmente um caminho, por exemplo:

      A captura de tela mostra o fluxo de trabalho de consumo e a inserção manual de um caminho para uma ação SAP.

      Gorjeta

      Para o parâmetro Body ActionUri , você pode usar o editor de expressão para fornecer o valor do parâmetro. Dessa forma, você pode usar a mesma ação SAP para diferentes tipos de mensagens.

      Para obter mais informações sobre essa ação SAP, consulte Esquemas de mensagem para operações de IDoc.

    3. Para gerar esquemas para mais de um artefato, na seção Body ActionUri , selecione Adicionar novo item.

      A captura de tela mostra a seleção da opção para adicionar um novo item.

    4. Para cada artefato, forneça a ação SAP que você deseja usar para a geração de esquema, por exemplo:

      A captura de tela mostra várias ações SAP a serem usadas para gerar vários esquemas.

  5. Salve seu fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.

Teste seu fluxo de trabalho para geração de esquema

Com base no facto de ter um fluxo de trabalho de Consumo em Aplicações Lógicas do Azure multiinquilino ou um fluxo de trabalho Padrão em Aplicações Lógicas do Azure de inquilino único, siga os passos correspondentes:

  1. Se o recurso do aplicativo lógico de consumo ainda não estiver habilitado, no menu do aplicativo lógico, selecione Visão geral. Na barra de ferramentas, selecione Ativar.

  2. Na barra de ferramentas do designer, selecione Executar>Executar para iniciar manualmente o fluxo de trabalho.

  3. Para simular uma carga útil de gatilho de webhook e acionar o fluxo de trabalho, envie uma solicitação HTTP para a URL do ponto de extremidade criada pelo gatilho de solicitação do fluxo de trabalho, incluindo o método esperado pelo gatilho de solicitação, usando sua ferramenta de solicitação HTTP e suas instruções. Certifique-se de incluir o conteúdo da sua mensagem no seu pedido.

    Este exemplo usa o método POST e a URL do ponto de extremidade para enviar um arquivo IDoc, que deve estar no formato XML e incluir o namespace para a ação SAP selecionada, por exemplo:

    <?xml version="1.0" encoding="UTF-8" ?>
    <Send xmlns="http://Microsoft.LobServices.Sap/2007/03/Idoc/2/ORDERS05//720/Send">
      <idocData>
        <...>
      </idocData>
    </Send>
    
  4. Depois de enviar sua solicitação HTTP, aguarde a resposta do seu fluxo de trabalho.

    Nota

    Seu fluxo de trabalho pode atingir o tempo limite se todas as etapas necessárias para a resposta não forem concluídas dentro do limite de tempo limite da solicitação. Se essa condição acontecer, as solicitações podem ser bloqueadas. Para ajudá-lo a diagnosticar problemas, saiba como verificar e monitorar os fluxos de trabalho do aplicativo lógico.

  5. No painel Visão geral do aplicativo lógico, em Histórico de execuções, localize e abra a execução do fluxo de trabalho.

  6. Encontre a ação Gerar esquemas e revise as saídas da ação.

    As saídas mostram os esquemas gerados para as mensagens especificadas.

Para obter mais informações sobre como revisar o histórico de execução do fluxo de trabalho, consulte Monitorar fluxos de trabalho de aplicativos lógicos.

Carregar esquemas para uma conta de integração

Opcionalmente, você pode baixar ou armazenar os esquemas gerados em repositórios, como uma conta de integração ou uma conta de armazenamento do Azure, por exemplo, em um contêiner de blob. As contas de integração fornecem uma experiência de primeira classe com ações XML para fluxos de trabalho nos Aplicativos Lógicos do Azure. Você tem a opção de carregar esquemas gerados em uma conta de integração existente dentro do mesmo fluxo de trabalho que gera esses esquemas usando a ação do Gerenciador de Recursos do Azure chamada Criar ou atualizar um recurso.

Nota

Os esquemas usam o formato codificado em base64. Para carregar esquemas para uma conta de integração, você deve decodificá-los primeiro usando a base64ToString() função. O exemplo a seguir mostra o código para o properties elemento :

"properties": {
   "Content": "@base64ToString(items('For_each')?['Content'])",
   "ContentType": "application/xml",
   "SchemaType": "Xml"
}

Para esta tarefa, você precisará de uma conta de integração, se ainda não tiver uma. Com base no facto de ter um fluxo de trabalho de Consumo em Aplicações Lógicas do Azure multiinquilino ou um fluxo de trabalho Padrão em Aplicações Lógicas do Azure de inquilino único, siga os passos correspondentes para carregar esquemas para uma conta de integração a partir do seu fluxo de trabalho após a geração do esquema.

  1. No designer de fluxo de trabalho, na ação gerenciada SAP chamada Gerar esquemas, selecione Nova etapa.

  2. Siga estas etapas gerais para localizar e adicionar a ação gerenciada do Azure Resource Manager chamada Criar ou atualizar um recurso. Se lhe for pedido para iniciar sessão com as suas credenciais, prossiga e continue.

    Depois que os Aplicativos Lógicos do Azure configurarem e testarem sua conexão, a caixa de informações da ação será exibida.

    A captura de tela mostra o fluxo de trabalho de Consumo e uma ação do Azure Resource Manager chamada Criar ou atualizar um recurso.

  3. Na ação Criar ou atualizar um recurso, forneça as informações necessárias.

    1. Para incluir quaisquer saídas de etapas anteriores no fluxo de trabalho, selecione dentro do parâmetro onde deseja incluir a saída, abra a lista de conteúdo dinâmico e selecione a saída a ser incluída.

    2. Na lista Adicionar novo parâmetro, selecione os parâmetros Location e Properties.

    3. Forneça os valores para esses parâmetros adicionados, por exemplo:

      A captura de tela mostra o fluxo de trabalho de Consumo e a ação do Gerenciador de Recursos do Azure com parâmetros adicionados chamados Localização e Propriedades.

    A ação Gerar esquemas gera esquemas como uma coleção, para que o designer adicione automaticamente um Para cada loop em torno da ação do Azure Resource Manager, por exemplo:

    A captura de tela mostra o fluxo de trabalho de Consumo e para cada loop com a ação incluída do Azure Resource Manager.

  4. Salve seu fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.

Testar o fluxo de trabalho

  1. Com base no fato de você ter um fluxo de trabalho de aplicativo lógico Consumo ou Padrão, siga as etapas gerais para testar e executar manualmente seu fluxo de trabalho.

  2. Após uma execução bem-sucedida, vá para a conta de integração e verifique se os esquemas gerados existem.

Exemplos de esquemas XML

Se você estiver aprendendo como gerar um esquema XML para uso na criação de um documento de exemplo, revise os exemplos a seguir. Estes exemplos mostram como pode trabalhar com muitos tipos de cargas úteis, incluindo:

Você pode começar seu esquema XML com um prólogo XML opcional. O conector SAP funciona com ou sem o prólogo XML.

<?xml version="1.0" encoding="utf-8">

Exemplos de XML para pedidos RFC

O exemplo a seguir mostra uma chamada RFC básica onde o nome RFC é STFC_CONNECTION. Essa solicitação usa o namespace padrão chamado xmlns=. No entanto, você pode atribuir e usar aliases de namespace, como xmlns:exampleAlias=. O valor do namespace é o namespace de todas as RFCs nos serviços SAP for Microsoft. A solicitação tem um parâmetro de entrada simples chamado <REQUTEXT>.

<STFC_CONNECTION xmlns="http://Microsoft.LobServices.Sap/2007/03/Rfc/">
   <REQUTEXT>exampleInput</REQUTEXT>
</STFC_CONNECTION>

O exemplo a seguir mostra uma chamada RFC com um parâmetro table. Este exemplo de chamada e grupo de RFCs de teste estão disponíveis em todos os sistemas SAP. O parâmetro table é chamado TCPICDAT. O tipo de linha da tabela é ABAPTEXT, e esse elemento se repete para cada linha da tabela. Este exemplo contém uma única linha, chamada LINE. As solicitações com um parâmetro de tabela podem conter qualquer número de campos, onde o número é um inteiro 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>

Gorjeta

Para revisar o resultado do RFC STFC_WRITE_TO_TCPIC, use o navegador de dados do SAP Logon (T-Code SE16) e a tabela chamada TCPIC.

O exemplo a seguir mostra uma chamada RFC com um parâmetro table que tem um campo anônimo, que é um campo sem um nome atribuído. Tipos complexos são declarados em um namespace separado, onde a declaração define um novo padrão para o nó atual e todos os seus elementos filho. O exemplo usa o código x002F hexadecimal como um caractere de escape para o símbolo / porque esse símbolo é reservado no nome do campo 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>

O exemplo anterior também mostra como codificar matrizes binárias para os tipos byte de dados SAP e XString. As matrizes binárias são codificadas em base64 em XML (tipo xs:base64Binaryde dados binários XSD). No exemplo, o valor AQIDBAU= da cadeia de caracteres base64 de exemplo decodifica como a matriz [01][02][03][04]binária . Essa codificação difere e é mais eficiente em termos de espaço do que a codificação hexadecimal do SAP .NET Connector subjacente. Com a codificação hexadecimal, o mesmo valor é codificado como a cadeia de caracteres 01020304.

Nota

Tenha cuidado ao usar a codificação de matriz binária porque a codificação hexadecimal usa um subconjunto do intervalo base64 e aparece como valores válidos base64. Por exemplo, o valor 01020304 da cadeia de caracteres também decodifica como um valor codificado base64 válido, mas resulta em uma matriz [d3][5d][36][d3][7d][38]binária diferente, não uma matriz [01][02][03][04]binária.

O exemplo a seguir inclui prefixos para os namespaces. Você pode declarar todos os prefixos de uma só vez ou pode declarar qualquer número de prefixos como atributos de um nó. O alias de namespace RFC nomeado ns0 é usado como raiz e parâmetros para o tipo básico.

Nota

Tipos complexos são declarados em um namespace diferente para tipos RFC com o alias ns3 em vez do namespace RFC regular com o 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>

Exemplos de XML para pedidos BAPI

Os exemplos XML a seguir são solicitações de exemplo para chamar o método BAPI.

Nota

A SAP disponibiliza objetos de negócios para sistemas externos descrevendo-os em resposta à RFC RPY_BOR_TREE_INIT, que os Aplicativos Lógicos do Azure emitem sem um filtro de entrada. Os Aplicativos Lógicos do Azure inspecionam a tabela BOR_TREEde saída. O SHORT_TEXT campo é usado para nomes de objetos de negócios. Os objetos de negócios não retornados pelo SAP na tabela de saída não são acessíveis aos Aplicativos Lógicos do Azure.

Se você usar objetos de negócios personalizados, certifique-se de publicar e liberar esses objetos de negócios no SAP. Caso contrário, o SAP não listará seus objetos de negócios personalizados na tabela BOR_TREEde saída. Você não pode acessar seus objetos de negócios personalizados nos Aplicativos Lógicos do Azure até expor os objetos de negócios do SAP.

O exemplo a seguir obtém uma lista de bancos usando o método GETLISTBAPI. Este exemplo contém o objeto comercial de um banco chamado BUS1011.

<GETLIST xmlns="http://Microsoft.LobServices.Sap/2007/03/Bapi/BUS1011">
   <BANK_CTRY>US</BANK_CTRY>
   <MAX_ROWS>10</MAX_ROWS>
</GETLIST>

O exemplo a seguir cria um objeto bank usando o CREATE método. Este exemplo usa o mesmo objeto de negócios chamado BUS1011, como o exemplo anterior. Quando você usa o CREATE método para criar um banco, certifique-se de confirmar suas alterações, pois esse método não é confirmado por padrão.

Gorjeta

Certifique-se de que seu documento XML siga todas as regras de validação configuradas em seu sistema SAP. Por exemplo, para este documento de exemplo, nos EUA, a chave bancária (<BANK_KEY>) deve ser um número de roteamento bancário, também conhecido como número 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>

O exemplo a seguir obtém detalhes de um banco usando o número de roteamento bancário, que é o valor de <BANK_KEY>.

<GETDETAIL xmlns="http://Microsoft.LobServices.Sap/2007/03/Bapi/BUS1011">
   <BANKCOUNTRY>US</BANKCOUNTRY>
   <BANKKEY>123456789</BANKKEY>
</GETDETAIL>

Exemplos de XML para pedidos IDoc

Para gerar um esquema XML simples do SAP IDoc, use o aplicativo SAP Logon e o WE60 T-Code. Acesse a documentação do SAP através da interface do usuário e gere esquemas XML no formato XSD para seus tipos e extensões de IDoc. Para obter mais informações sobre formatos e cargas úteis SAP genéricos e suas caixas de diálogo integradas, consulte a documentação do SAP.

Este exemplo declara o nó raiz e os namespaces. O URI no código de exemplo, http://Microsoft.LobServices.Sap/2007/03/Idoc/3/ORDERS05//700/Send, declara a seguinte configuração:

  • /IDoc é o nó raiz para todos os IDocs.

  • /3 é a versão de tipos de registro para definições de segmento comuns.

  • /ORDERS05 é o tipo IDoc.

  • // é um segmento vazio porque não há extensão IDoc.

  • /700 é a versão SAP.

  • /Send é a ação para enviar as informações para o 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>

Você pode repetir o idocData nó para enviar um lote de IDocs em uma única chamada. No exemplo a seguir, há um registro de controle chamado EDI_DC40, e vários registros de dados.

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

O exemplo a seguir mostra um registro de controle IDoc de exemplo, que usa um prefixo chamado EDI_DC. Você deve atualizar os valores para corresponder à instalação do SAP e ao tipo de IDoc. Por exemplo, o código do cliente IDoc pode não ser 800. Entre em contato com sua equipe SAP para certificar-se de que você está usando os valores corretos para sua instalação 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>

O exemplo a seguir mostra um registro de dados de exemplo com segmentos simples. Este exemplo usa o formato de data SAP. Documentos com tipagem forte podem usar formatos de data 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>

O exemplo a seguir mostra um registro de dados com segmentos agrupados. O registro inclui um nó pai do grupo chamado E2EDKT1002GRP, e vários nós filho, incluindo E2EDKT1002 e 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>

O método recomendado é criar um identificador IDoc para uso com tRFC. Você pode definir esse identificador de transação usando tid a operação Send IDoc no conector gerenciado SAP.

O exemplo a seguir mostra um método alternativo para definir o identificador de transação ou tid. Neste exemplo, o último nó de segmento de registro de dados e o nó de dados IDoc são fechados. Em seguida, o GUID, guid, é usado como o identificador tRFC para detetar duplicatas.

     </E2STZUM002GRP>
  </idocData>
  <guid>8820ea40-5825-4b2f-ac3c-b83adc34321c</guid>
</Send>

Próximos passos