Árvore de páginas

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/08/2015

Rotinas Envolvidas

Rotina

Tipo de Operação

Opção de Menu

TURA008.PRW

Alteração

Atualizações-> Cadastros-> Cartões de Clientes

TURI004.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 – Cartões de Clientes

Objetivo


Integrar o cadastro de Cartões de Clientes do ERP Microsiga Protheus com o sistema de FrontOffice da agência de viagem. A integração possibilitará que os sistemas se comuniquem através de uma Mensagem Única, utilizando o schema XSD da TotvsMessage CustomerCreditCard.

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 CustomerCreditCard.
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.
A manutenção (inclusão, alteração ou exclusão) de um registro desse cadastro será feita tanto pelo sistema de FrontOffice como pelo 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 TURA008 deve ser alterada para realizar a chamada para a rotina TURI004, que será utilizada para processar a Mensagem Única CustomerCreditCard. 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:= TURI004( cXml, nTypeTrans, cTypeMessage )
Return aRet

  • Desenvolver o fonte TURI004, que fará todo o tratamento para o envio e recebimento do XML, da seguinte forma:


Function TURI004 ( 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 }

  • No fonte TURI004, deve ser adicionado a diretiva de include para o arquivo FWADAPTEREAI.CH;
  • Microsigra Protheus envia Mensagem Única:
    • Ao ser efetuada uma inclusão, alteração ou exclusão, será disparado um evento que verificará se a rotina TURA008 está cadastrada no "Adapter EAI" e se a mesma está configurada para o envio de mensagem no método Assíncrono. Caso a rotina esteja cadastrada e configurada corretamente, a função IntegDef retornará o XML (BusinessMessage) ao EAI, que o enviará a mensagem ao sistema requisitante;
    • Após o sistema requisitante receber e processar a mensagem, deverá enviar a mensagem de resposta (ResponseMessage) ao Microsiga Protheus com o o status do processamento e, no caso de sucesso da operação INSERT, o valor da chave da entidade para atualização do respectivo DE/PARA;
  • Microsigra Protheus recebe Mensagem Única:
    • Ao receber a mensagem de negócio (BusinessMessage), o EAI verificará se a rotina TURA008 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 TURI004 que fará o tratamento do XML recebido, e efetuar a gravação 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 INSERT, o valor da chave da entidade para atualização do respectivo DE/PARA;
  • Depois da alteração do fonte TURA008 e do desenvolvimento do fonte TURI004, 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: TURA008;
    • Mensagem: CustomerCreditCard;
    • Descrição: Cartões de Clientes;
    • Envia: Sim;
    • Recebe: Sim;
    • Método: Assíncrono;
    • Operação: Todas;
    • Versão Envio: 1.000;
  • A seguir, detalhe dos campos do cadastro de Cartões de Clientes (tabela G3J) com as respectivas TAGS do TotvsMessage CustomerCreditCard:

 

Tag Superior

TAG

Campo

Observação

BusinessContentType

CompanyId

 

Código da Empresa

BusinessContentType

BranchId

G3J_FILIAL

Código da Filial

BusinessContentType

CompanyIternalId

 

InternalId da chave Empresa+Filial

BusinessContentType

Code

G3J_CODIGO

Código

BusinessContentType

InternalId

 

InternalId da Classe de Serviço

BusinessContentType

CustomerCode

G3J_CODCLI + G3J_LOJA

Código do Cliente + Loja

BusinessContentType

CustomerInternalId

 

InternalID do Cliente e Loja

BusinessContentType

Description

G3J_DESCR

Descrição do Cartão

BusinessContentType

CardClassificationCode

G3J_TIPO

Código da Calssificação do Cartão

BusinessContentType

CardClassificationInternalId

 

InternalId da Classificação do Cartão

BusinessContentType

CardNumber

G3J_NCARD

Número do Cartão

BusinessContentType

SecurityCode

G3J_CODSEG

Código de Segurança do Cartão

BusinessContentType

CardComapny

G3J_CODBAN

Código da Bandeira do Cartão

BusinessContentType

CardHolderName

G3J_TITULA

Nome do Titular do Cartão

BusinessContentType

ExpirationMonth

G3J_MVALID

Mês de Validade do Cartão

BusinessContentType

ExpirationYear

G3J_AVALID

Ano de Validade do Cartão

BusinessContentType

UseDayOf

G3J_DIADE

Dia inicial para utilização do Cartão

BusinessContentType

UseDayUntil

G3J_DIAATE

Dia final para utilização do Cartão

BusinessContentType

InvoiceClosingDay

G3J_DFECHA

Dia de Fechamento da Fatura do Cartão

BusinessContentType

InvoiceExpirationDay

G3J_DVENC

Dia de Vencimento da Fatura do Cartão

BusinessContentType

VendorCode

G3J_CODFOR + G3J_LJFOR

Código do Fornecedor + Loja

BusinessContentType

VendorInternalId

 

InternalID do Fornecedor e Loja

BusinessContentType

Corporate

G3J_CORP

Cartão no Corporativo ( "1"-Sim / "2"-Não )

BusinessContentType

Event

G3J_EVENTO

Cartão no Eventos ( "1"-Sim / "2"-Não )

BusinessContentType

Recreation

G3J_LAZER

Cartão no Lazer ( "1"-Sim / "2"-Não )

BusinessContentType

Situation

G3J_MSBLQL

Bloqueado ( "1"-Sim / "2"-Não )

 

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 – TURA008