Histórico da Página
Dica | ||
---|---|---|
| ||
Abaixo iremos mostrar como configurar o Processo de Cliente no Protheus para integra-lo com o sistema Totvs Live. Siga o Passo a Passo. |
Aviso | ||
---|---|---|
| ||
|
Cadastrando o Processo de Cliente
Para integrarmos o Cliente com o Totvs Live primeiramente é necessário acessar o cadastro do Processo para verificar se o Cliente foi criado automaticamente no Protheus.
...
Chave: A1_FILIAL+A1_COD+A1_LOJA
Vinculando o Processo de Cliente ao Assinante Live
1- No módulo 12 (Controle de Lojas), acesse Atualizações/ RMI/ Cadastros/ Assinantes.
...
Ativo: Sim
Tipo Process: Busca
Filiais Proc: Informe o código das filiais que deseja Buscar o Processode apenas uma filial para buscar o Processo. (todas as lojas abaixo do sistema satélite serão retornadas)
Configuração: Preencha esta campo de acordo com a sua URL da API Cliente, como mostra o exemplo abaixo:
Obs: A tag ChaveUni pode processar um array de Tags XML ou Variável disponível no momento do processamento para formar a chave única do cliente que será gravado na tabela MHQ no campo MHQ_CHVUNI.
Bloco de código |
---|
{ "url": "http://xxxxxxx/xxxxxxxx/LiveConnector/FacadeIntegracao.svc?wsdl", "operacao": "RecuperarClienteLC_Integracao_Xml", "tagretorno": "<LC_TicketClienteSaida>", "documentoId": "LC_ClienteSaida", "ChaveUni": [ "Self:cConfirma", "CPF_CNPJ" ] } |
Layout Envio: Preencha este campo de acordo com o exemplo abaixo: Lembrando que é permitido utilizar macro execuções no Layout abaixo, após o &.
Bloco de código |
---|
&"<?xml version='1.0' encoding='UTF-8'?> <soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:liv='http://LiveConnector/'> <soapenv:Header /> <soapenv:Body> <liv:RecuperarClienteLC_Integracao_Xml> <liv:codigoSistemaSatelite>" + self:oConfAssin['sistemasatelite']oLive:getSatelite(self) + "</liv:codigoSistemaSatelite> <liv:xmlIdentificacao><![CDATA[<?xml version='1.0' encoding='utf-8'?><LC_Identificacao><Chave>" + self:cToken:oLive:getToken(self) + "</Chave><CodigoSistemaSatelite>" + self:oConfAssin['sistemasatelite']oLive:getSatelite(self) + "</CodigoSistemaSatelite><Data/><Hora/></LC_Identificacao>]]></liv:xmlIdentificacao> </liv:RecuperarClienteLC_Integracao_Xml> </soapenv:Body> </soapenv:Envelope>" |
...
Bloco de código |
---|
{ "A1_FILIAL": "&xFilial('SA1')", "A1_NOME": "&SubStr(self:oRegistro:_Nome_RazaoSocial:Text,1,TamSX3('A1_NREDUZNOME')[1])", "A1_TIPO": "&IIF(Alltrim(self:oRegistro:_TipoClassificacaoClienteCodigo:Text) == '2','R','F')", "A1_LOJA": "&SuperGetMV('MV_LOJAPAD',.F., '01')", "A1_NREDUZ": "&SubStr(self:oRegistro:_Nome_RazaoSocial:Text,1,TamSX3('A1_NREDUZ')[1])", "A1_CGC": "&self:oRegistro:_CPF_CNPJ:Text", "A1_PESSOA": "&IIF(UPPER(Alltrim(self:oRegistro:_TipoCliente:Text)) == 'JURIDICA','J','F')", "A1_BAIRRO": "&self:oRegistro:_LISTAENDERECOSSAIDA:_LC_ENDERECOSAIDA:_BAIRRO:Text", "A1_CEP": "&StrTran( self:oRegistro:_LISTAENDERECOSSAIDA:_LC_ENDERECOSAIDA:_CEP:TEXT, '-', '' )", "A1_COD_MUNEST": "&SUBSTR(self:oRegistro:_LISTAENDERECOSSAIDA:_LC_ENDERECOSAIDA:_Cidade_NumeroMunicipioIBGEEstado:Text,3,5)", "A1_COMPLEM": "&self:oRegistro:_LISTAENDERECOSSAIDA:_LC_ENDERECOSAIDA:_Complemento:Text", "A1_ESTEND": "&self:oRegistro:_LISTAENDERECOSSAIDA:_LC_ENDERECOSAIDA:_EstadoLOGRADOURO:Text", "A1_ENDCOD_MUN": "&SUBSTR(self:oRegistro:_LISTAENDERECOSSAIDA:_LC_ENDERECOSAIDA:_Cidade_LOGRADOURONumeroMunicipioIBGE:Text,3,5)", "A1_DDD": "&IIF(!EMPTY(self:oRegistro:_LISTATELEFONESSAIDA:TEXT),Iif(ValType(self:oRegistro:_LISTATELEFONESSAIDA:_LC_TELEFONESAIDA) == 'A',self:oRegistro:_LISTATELEFONESSAIDA:_LC_TELEFONESAIDA[1]:_DDD:TEXT,self:oRegistro:_LISTATELEFONESSAIDA:_LC_TELEFONESAIDA:_DDD:TEXT),'11')", "A1_TEL": "&IIF(!EMPTY(self:oRegistro:_LISTATELEFONESSAIDA:TEXT),Iif(ValType(self:oRegistro:_LISTATELEFONESSAIDA:_LC_TELEFONESAIDA) == 'A',self:oRegistro:_LISTATELEFONESSAIDA:_LC_TELEFONESAIDA[1]:_NUMERO:TEXT,self:oRegistro:_LISTATELEFONESSAIDA:_LC_TELEFONESAIDA:_NUMERO:TEXT),'31110300')", "A1_MSBLQL": "&IIF(UPPER(Alltrim(self:oRegistro:_Inativo:Text))=='FALSE','2','1')", "A1_DTNASC": "&self:oRegistro:_DataNascimento:Text", "A1_EMAIL": "&StrTran( IIF( XmlChildEx(self:oRegistro:_LISTAENDERECOSELETRONICOSAIDA, '_LC_ENDERECOELETRONICOSAIDA') <> Nil, IIF(ValType(self:oRegistro:_LISTAENDERECOSELETRONICOSAIDA:_LC_ENDERECOELETRONICOSAIDA) == 'A', self:oRegistro:_LISTAENDERECOSELETRONICOSAIDA:_LC_ENDERECOELETRONICOSAIDA[1]:_DESCRICAO:TEXT, self:oRegistro:_LISTAENDERECOSELETRONICOSAIDA:_LC_ENDERECOELETRONICOSAIDA:_DESCRICAO:TEXT), '' ), '´', '')" } |
Exemplo da configuração do Processo Cliente no assinante Live:
...