Páginas filhas
  • ER_PCREQ-9642_Mensageria TOTVS - Mudanças no businessContent

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

3) Direção das mensagens 

...


                     Origem –> ERP    /     Destino -> Vertical

Image Added

Mensagem de negócio - BusinessMessage/Event

<TOTVSMessage>

 <MessageInformation version="1.000">

      <UUID>40c65ac2-7ed2-4394-b778-964534b12450</UUID>

      <Type>BusinessMessage</Type>

      <Transaction>NomeERP/objetoNegocioERP</Transaction>

      <StandardVersion>1.000</StandardVersion>

      <SourceApplication>Origem</SourceApplication>

      <CompanyId>1</CompanyId>

      <BranchId>1</BranchId>

      <Product name="Destino" version="12.1.9" />

      <GeneratedOn>2016-02-02T16:20:00</GeneratedOn>

      <DeliveryType>Sync</DeliveryType>

   </MessageInformation>

   <BusinessMessage>

      <BusinessEvent>

         <Entity> NomeERP/ObjetoNegocioERP</Entity>

         <Event>upsert</Event>

         <Identification>

         </Identification>

      </BusinessEvent>

      <BusinessContent>

        <DADOSERP>

           <IDERP>-1</IDERP>

           <CODDIGOERP>001</CODDIGOERP>

           <NOMEERP>TESTE2</NOMEERP>

           <TIPOERP>6</TIPOERP>

           <CAMPO9ERP></CAMPO9ERP>

           <CAMPO10ERP></CAMPO10>

         </DADOSERP>

      </BusinessContent>

  </BusinessMessage>

</TOTVSMessage>

Mensagem de negócio - BusinessMessage/Request

<TOTVSMessage>

 <MessageInformation version="1.000">

      <UUID>40c65ac2-7ed2-4394-b778-964534b12451</UUID>

      <Type>BusinessMessage</Type>

      <Transaction>NomeERP/ProcessoObjetoNegocioERP</Transaction>

      <StandardVersion>1.000</StandardVersion>

      <SourceApplication>Origem</SourceApplication>

      <CompanyId>1</CompanyId>

      <BranchId>1</BranchId>

      <Product name="Destino" version="12.1.9" />

      <GeneratedOn>2016-02-02T16:20:00</GeneratedOn>

      <DeliveryType>Sync</DeliveryType>

   </MessageInformation>

   <BusinessMessage>

     <BusinessRequest>

        <Operation>NomeERP/ProcessoObjetoNegocioERP</Operation>

     </BusinessRequest>

      <BusinessContent>

        <PARAMETROS>

         <PAR1>1</PAR1>

          <PAR2>2</PAR2>

          <PAR3>3</PAR3>

        </PARAMETROS>

      </BusinessContent>

  </BusinessMessage>

</TOTVSMessage>

 

Mensagem de resposta / ResponseMessage

<ResponseMessage>

   <ReceiveMessage>

      <SentBy>Destino</SentBy>

      <UUID>0fdf65b2-9f1e-4913-96c8-d4236628ff7d</UUID>

      <Event>upsert</Event>

      <MessageContent> </MessageContent>

   </ReceiveMessage>

   <ProcessingInformation>

       <ProcessedOn>2016-01/01</ProcessedOn>

       <Status>OK</Status>

       <ListOfMessages> </ListOfMessages>

   </ProcessingInformation>

   <ReturnContent>

     <XMLContent>

        <DADOSERP>

           <IDERP>1094</IDERP>

           <CODDIGOERP>001</CODDIGOERP>

           <NOMEERP>TESTE2</NOMEERP>

           <TIPOERP>6</TIPOERP>

           <CAMPO9ERP>184</CAMPO9ERP>

           <CAMPO10ERP>18587</CAMPO10>

         </DADOSERP>

     </XMLContent>

   </ReturnContext>

</ReturnContext>

</ResponseMessage>

 

Detalhamento dos processos:

  • Origem da mensagem:
    • O aplicativo do ERP chama o EAI(ERP) passando as seguintes informações:
      • Nome da mensagem (mensagem única ou mensagem nativa);
        • Deve ser adicionado no início do nome da mensagem o “nome do ERP” separado por “/”.
          •  Ex: Protheus/SA1, sendo:
            • Protheus -> nome do ERP;
            • SA1 -> nome do objeto de negócio;
      • Versão da mensagem (somente em caso de mensagem única);
      • Xml dos dados no formato do ERP.
    • O EAI(ERP) inclui a mensagem na fila;
    • O EAI(ERP) recupera a mensagem da fila;
    • O EAI(ERP) cria a mensagem TotvsMessage (incluindo na tag “BusinessContent” o xml recebido com os dados no formato nativos do ERP);
    • O EAI(ERP) envia para o WebServices EAI(Vertical) a mensagem no formato “TotvsMessage”;
  • Destino da mensagem:
    • O EAI (vertical) inclui a mensagem na fila;
    • O EAI(Vertical) recupera a mensagem da fila;
    • O EAI(Vertical) recupera a primeira parte do nome da mensagem (até a posição da barra “/”) recuperando com isso o nome do ERP. Se o mesmo emparelhar com o nome do ERP em questão, trata-se de um receptor ERP. Caso contrário, trata-se de um vertical;
    • O EAI(vertical) solicita os seguintes serviços do seguimento vertical:
      • Execução do serviço de transformação da mensagem (formato nativo do ERP) para o formato nativo do segmento vertical;
      • Execução do objeto de negócio do segmento mapeado com o nome do objeto de negócio enviado pelo ERP;
      • Atualização dos valores de De/Para contendo informações das chaves de origem/destino;
        • Deve ser localizado na própria mensagem de origem os valores das chaves;
      • Retorno para o EAI(vertical) um xml contendo os dados atuais após a execução do objeto de negócio;

        Informações

        A partir de agora, os EAI’s não serão mais responsáveis em transformar mensagens e controlar informações de De/para. Esses serviços ficarão a cargo dos seguimentos.

        Informações

        Serviços genéricos poderão ser disponibilizados no EAI para facilitar o trabalho dos segmentos.

  • Origem da mensagem:
    • O EAI(ERP), no retorno da mensagem, grava as informações da mensagem de resposta (ResponseMessage);

 

 

 

 

Links dos principais conceitos e processos.

...