Especificação de Requisitos |
Projeto/Versão: PDR_SER_TUR001-P12 | Requisito/Módulo: PCREQ-2774/SIGATUR |
Sub-Requisito/Função: | Tarefa/Chamado: |
País: All | Data Especificação: 11/09/2015 |
Rotinas Envolvidas |
Rotina | Tipo de Operação | Opção de Menu |
TURI034CAN.PRW | Criação | |
Estratégia de Desenvolvimento e Liberação |
Produto | Microsiga Protheus |
Release que está sendo desenvolvido | Versão 12 |
Possui Réplica? | ( ) Sim ( X ) Não |
Qual a versão? | 12.1.7 |
Integração Front – Cancelamento de Item de Venda
Objetivo
Integrar o cancelamento de item de venda do FrontOffice da agência de viagem para o ERP Microsiga Protheus. A integração possibilitará que os sistemas se comuniquem através de uma Mensagem Única, utilizando o schema XSD da TotvsMessage SaleItemCancelation.
Definição da Regra de Negócio
Os sistemas de FrontOffice da agências de viagem irão se comunicar com o ERP Microsiga Protheus para sincronismo das informações entre as respectivas bases de dados. Para isso, se faz necessária a utilização da tecnologia Enterprise Application Integration (EAI).
Essa comunicação utilizará o padrão SOAP para envio e recebimento de arquivos XML, além de seguir um conjunto de regras definidas para o padrão de Mensagem Única da TOTVS. Os dados que serão sincronizados entre os sistemas integrados estarão contidos no arquivo XML, que deverá estar no padrão definido no esquema da Mensagem Única conforme XSD da TotvsMessage SaleItemCancelation.
Na integração, as mensagens recebidas e enviadas pelo BackOffice serão processadas pelo adapter EAI do respectivo cadastro. O adapter é o responsável por processar essas mensagens e, se estiver configurada, acionar a rotina de integração para inclusão, alteração e/ou exclusão desse cadastro. Por sua vez, essa rotina será responsável por validar e gravar os dados de acordo com a operação que estiver sendo realizada e retornar para o adapter a mensagem de retorno do processamento (êxito ou falha) que, por fim, envia a mensagem de resposta ao sistema requisitante.
O cancelamento de item de um registro de venda será feita tanto pelo sistema de FrontOffice para o BackOffice, replicando os dados mutuamente. Portanto, o sistema de FrontOffice deverá levar em consideração a regra de negócio do cadastro.
Definição Técnica
- A rotina TURI034CAN deve ser Criada para ser utilizada para processar a Mensagem Única SaleItemCancelation. Para isso, deverá ser implementada a função IntegDef que deverá ser "Static", conforme definição da equipe de FrameWork.
Static Function IntegDef( cXML, nTypeTrans, cTypeMessage )
Local aRet := {}
aRet:= TURI034CAN ( cXml, nTypeTrans, cTypeMessage )
Return aRet
- Desenvolver o fonte TURI034CAN, que fará todo o tratamento para o recebimento do XML, da seguinte forma:
Function TURI034CAN ( cXML, nTypeTrans, cTypeMessage )
Local lRet := .T.
Local cXMLRet := ""
If nTypeTrans == TRANS_RECEIVE
If cTypeMessage == EAI_MESSAGE_BUSINESS
cXMLRet := '<TAGX>TESTE DE RECEPCAO BUSINESS MESSAGE</TAGX>'
ElseIf cTypeMessage == EAI_MESSAGE_RESPONSE
cXMLRet := '<TAGX>TESTE DE RECEPCAO RESPONSE MESSAGE</TAGX>'
ElseIf cTypeMessage == EAI_MESSAGE_WHOIS
cXMLRet := ' <Version>1.0 </Version>'
Endif
ElseIf nTypeTrans == TRANS_SEND
cXMLRet := '<TAGX>TESTE DE ENVIO</TAGX>'
EndIf
Return { lRet, cXMLRet }
- Essa mensagem será do Tipo Request
- No fonte TURI034CAN, deve ser adicionado a diretiva de include para o arquivo FWADAPTEREAI.CH;
- Microsigra Protheus recebe Mensagem Única:
- Ao receber a mensagem de negócio (BusinessRequest), o EAI verificará se a rotina TURI034CAN está cadastrada no "Adapter EAI" e se a mesma está configurada para o recebimento de mensagem no método Síncrono. Caso a rotina esteja cadastrada e configurada corretamente, a função IntegDef deverá chamar a rotina TURI034CAN que fará o tratamento do XML recebido, e efetuar a busca dos dados;
- No final do processamento, deverá será enviada a mensagem de resposta (ResponseMessage) ao sistema requisitante com o status do processamento e, no caso de sucesso da operação, enviar os dados chaves conforme informado abaixo:
<ReturnContent>
< Status>Success/Fail</ Status>
<Observation>Observações caso falhe</Observation>
</ReturnContent>
- Depois da criação do fonte TURI034CAN, acessar o módulo Configurador e cadastrar o adapter através do menu Ambiente -> Schedule -> Adapter E.a.i da seguinte forma:
- Mensagem única: Sim;
- Rotina: TURI034CAN;
- Mensagem: SaleItemCancelation;
- Descrição: Cancelamento de um Item de venda ;
- Envia: Não;
- Recebe: Sim;
- Método: Síncrono;
- Versão Envio: 1.000;
- A seguir, detalhe das Tags necessárias para a Busca do Item de Venda:
Tag Superior | TAG | Campo | Observação |
BusinessContentType | CompanyId | | Código da Empresa |
BusinessContentType | BranchId | G3P_FILIAL | Código da Filial |
BusinessContentType | CompanyIternalId | | InternalId da chave Empresa+Filial |
BusinessContentType | SaleRegistryCode | G3P_NUMID | Código do Registro de Venda |
BusinessContentType | SaleRegistryInternalId | | InternalId do Registro de Venda |
BusinessContentType | SaleItemCode | G3Q_IDITEM+G3Q_NUMSEQ | Codigo do item de venda |
BusinessContentType | SaleItemInternalId | | InternalId do registro de venda |
Fluxo do Processo
Protótipo de Tela (Figuras meramente ilustrativas)
Browser do cadastro de Adpater E.a.i
Formulário de Cadastro do Adapter E.a.i – TURI034CAN