Páginas filhas
  • Manual de Integração Protheus X TOTVS CRM

I. Validação do Checklist e Criação do RAC e Connector


        Ao receber o checklist pela abertura do chamado ou por e-mail, é necessário validar se estão com todos os dados necessários para integração, de acesso ao sistema do cliente, de acesso ao sistema CRM, dos pré-requisitos do CRM já configurados como solicitado no checklist e o ambiente REST funcionando.

1. Versões e Atualizações do Sistema


        Verificar as versões do sistema do Cliente e solicitar para aplicar as versões mínimas de funcionamento da integração conforme checklist, as versões podem ser verificadas acessando o sistema do cliente e clicando nas teclas Shift+F6, caso não atendam pedir para o cliente atualizar os itens que estão em desacordo além das atualizações que já devem ser enviadas para o cliente aplicar para a integração padrão.

        Aplicação Expedição Continua Estoque (o mais atual)
        Aplicação Expedição Continua Faturamento (o mais atual)
        Aplicação Pacote de Customizações Analytics ver documentação (Atualização do Protheus - Integração do Protheus x TOTVS CRM / Analytics)
        Executar em modo exclusivo rotina para criação do campo S.T.A.M.P (Configurações Analytics.pptx)

          Além das atualizações acima, caso o cliente esteja com mais alguma versão mínima em desacordo com as versões mínimas solicitadas, já enviar para ele que faça as atualizações antes de dar início ao processo de integração, caso contrário terá problemas no processo de integração.


2. Dados do cliente para criação do RAC e Connector.



3. Solicitação da criação do RAC e Connector


          Enviar e-mail com o texto abaixo solicitando a criação do RAC e Connector, utilizando os dados do cliente que estão no checklist conforme imagem acima. Exemplo de E-mail para Criação:

3.1. Criação da senha do RAC

          Quando criado o RAC, o e-mail colocado em E-mail do Analista de Integração (com o perfil “Admin”) irá receber um e-mail conforme abaixo para fazer a criação da senha do RAC. Clicar em Definir senha e colocar uma senha. Caso seja feito pelo e-mail do cliente, solicitar que ele crie a senha e envie a senha para o analista que está fazendo a configuração, caso o e-mail seja do próprio analista passar para o próximo item para configurar o RAC.


4. Acesso do ERP do Cliente


4.1. Acesso ao sistema ERP

          Validar o acesso ao sistema do cliente com as informações passada no checklist, pela forma que ele
passou, caso não consiga o acesso entrar em contato com o cliente informando e pedindo para revisar a forma de acesso.

4.2. Acesso do REST

          Verificar o REST do cliente, caso não esteja acessando já relatar ao analista responsável para verificar com o cliente, também solicitar ao cliente para verificar o INI do serviço REST se foi feito as configurações solicitadas no checklist conforme imagem abaixo, ao acessar o link deve abrir a página conforme exemplo abaixo.


5. Acesso e configuração sistema CRM


          Verificar se o sistema está acessando com pelo link e usuário e senha que devem ter sido criados pelo analista do CRM que preencheu o checklist.

5.1. Tipo de Documento IR

          Verificar no TOTVS CRM se foi criado o tipo de documento IR em “Administrativo\Configuração\Documentos de Identificação”. Estando criado, clicar em Editar para
pegar o Id do registro, que será usado no Configuration.

5.2. Vínculos de Documentos

          Verificar se foram feitos todos os vínculos de documento conforme é solicitado no checklist. São 11 vínculos. Contas\Configurações\Documentos do cliente.

5.3. Tipos de Frete

          Verificar se foi configurado os Tipos de Frete, são 6 tipos de frete, 4 além dos 2 padrões que já veem no CRM. Precisa ficar configurado conforme está abaixo e no checklist em Vendas\Configurações\Tipos de frete.

5.4. Tipos de Ordem de Venda


          Caso seja usado o Pedido de Venda, que está no item 1 do checklist, será necessário configurar os Tipos de Ordem de Venda em Vendas\Configurações\Tipos de ordem de venda.

5.4.1. TES Inteligente:

5.4.2. TES Padrão:



II. Criação do Configuration e SyncControl


1. Autenticando no Swagger


          Para fazer a criação do Configuration é preciso primeiro pegar o RAC Token da base para fazer o acesso via Swaager. Para obter ele iremos usar o Postman.

          Abra o Postman e crie uma Request de Post, e coloque o endereço do RAC do cliente criado

          Na aba Authorization coloque em Type: Bearer Token e ao lado direito coloque a variável {{rac-token}}

       

          Na aba Headers acrescente a Key: Content-Type com o Value: application/x-www-form-urlencoded

          Na aba Body acrescente as Key abaixo com seus respectivos valores, username e password são os criados no usuário Integração do RAC.

          Com estes dados preenchidos clicar no Botão SEND irá ter um retorno conforme abaixo, copiar a informação dentro do Token para utilizarmos no Swagger.

          Com a informação do Token acessar o site https://master-crm-api.totvs.app/swagger/index.html e clicar no botão Authorize para inserir o Token. Digitar a palavra Bearer dar um espaço e colar o Token que foi gerado no Postman.

          Para validar se está no ambiente correto, clicar em Application e ir no segundo Get e clicar no botão Try it Out após clicar em Execute. Se tudo tiver sido criado corretamente irá trazer um retorno com código 200, e com as informações do cliente que está logado no Swagger.


2. Criando o Configuration


          Após autenticado no ambiente clicar em Configuration na opção Post e clicar em Try it Out.

          Segue abaixo o Configuration padrão, devem ser alterados os campos em vermelho com as informações do ERP do cliente e do CRM.

{
 "erpName": "ERP PROTHEUS-CRM - APELIDO",
 "erpClientId": "",
 "erpClientSecret": "",
 "erpCompanyId": "",
 "erpBranchId": "",
 "erpurl": "http://IPREST:Porta/rest/totvseai/standardmessage/v1/transactions/",
 "erpURLAnalyticsSyncControls": "http://IPREST:Porta/rest/",
 "masterCRMName": "apelido",
 "masterCRMClientId": "[email protected]",
 "masterCRMClientSecret": "",
 "masterCRMDefaultDocumentTypeIR": "",
 "hubUrlapi": "https://master-crm-api.totvs.app/",
 "masterCRMDefaultURL": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLCustomer": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLLogin": "https://app2.mastercrm.ws/api/login",
 "masterCRMURLCity": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLState": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLCountry": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLMeasurementUnit": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLPriceTable": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLProductGroup": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLOrder": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLRegion": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLRegionUser": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLRegionCustomer": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLCurrency": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLCurrencyQuotation": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLPriceTableItem": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLPaymentMethod": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLFreight": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMURLPaymentTerms": "https://app2.mastercrm.ws/api/v1/integration/record",
 "masterCRMDefaultEmailType": "301f0e6e-4270-472b-aa96-45ab017bcbb1",
 "masterCRMDefaultPhoneType": "d870427c-bbad-4eb8-9af5-5183b47f648f",
 "masterCRMDefaultNaturalPersonType": "8cea3c86-1984-4c77-acf5-3f622c1efe5b",
 "masterCRMDefaultLegalPersonType": "40694c1a-44f9-4c3b-a5a8-aa63e0742c75",
 "masterCRMDefaultDocumentTypeIM": "195e4d51-21fb-4721-a249-ea0aa89fc52f",
 "masterCRMDefaultDocumentTypeSUF": "41eed97d-4e6e-49de-b7a2-eb8a772f80bf",
 "masterCRMDefaultDocumentTypeCNPJ": "651b2c32-aeca-4373-9cb9-96b132ba5020",
 "masterCRMDefaultDocumentTypeCPF": "95839570-6791-49f4-88fe-68efd115213d",
 "masterCRMDefaultDocumentTypeRG": "9aabec6d-a88b-4d09-8ce6-d0eaf5b16d3c",
 "masterCRMDefaultDocumentTypeIE": "a564151a-931e-43ba-959b-47bab27e274a",
 "masterCRMDefaultAddressType": "b604f287-36bf-4e6d-ae83-c75c46a2fbeb",
 "hubURLAnalyticsSyncControls": "https://master-crm-api.totvs.app/",
 "masterCRMURLAnalyticsSyncControls": "https://app2.mastercrm.ws/",
 "erpWarehouseCode": null,
 "erpDefaultCurrencySymbol": "R$"
}

          Copiar o Json e colar dentro da janela de Value, conforme imagem abaixo e clicar em Executar

          

          Deverá ter um retorno de Código 201 com sucesso na criação no Configuration.


3. Criando o SyncControl

          Segue abaixo o SyncControl padrão, copiar ele e colar na janela Value e clicar em Executar, irá ter o retorno do Código 201 com sucesso na criação dele.

{
 "lastSyncMasterCRMCustomer": "2000-01-01",
 "lastSyncMasterCRMCustomerIntegration": "2000-01-01",
 "lastSyncPageMasterCRMCustomer": 0,
 "lastSyncMasterCRMCity": "1900-01-01",
 "lastSyncMasterCRMCityIntegration": "1900-01-01",
 "lastSyncPageMasterCRMCity": 0,
 "lastSyncMasterCRMState": "1900-01-01",
 "lastSyncMasterCRMStateIntegration": "1900-01-01",
 "lastSyncPageMasterCRMState": 0,
 "lastSyncMasterCRMCountry": "1900-01-01",
 "lastSyncMasterCRMCountryIntegration": "1900-01-01",
 "lastSyncPageMasterCRMCountry": 0,
 "lastSyncERPPriceTable": "1900-01-01",
 "lastSyncERPPriceTableIntegration": "1900-01-01",
 "lastSyncPageERPPriceTable": 0,
 "lastSyncERPMeasurementUnit": "1900-01-01",
 "lastSyncERPMeasurementUnitIntegration": "1900-01-01",
 "lastSyncPageERPMeasurementUnit": 0,
 "lastSyncERPProductGroup": "1900-01-01",
 "lastSyncERPProductGroupIntegration": "1900-01-01",
 "lastSyncPageERPProductGroup": 0,
 "lastSyncERPProduct": "1900-01-01",
 "lastSyncERPProductIntegration": "1900-01-01",
 "lastSyncPageERPProduct": 0,
 "lastSyncMasterCRMURLMeasurementUnit": "1900-01-01",
 "lastSyncMasterCRMURLMeasurementUnitIntegration": "1900-01-01",
 "lastSyncMasterCRMOrderIntegration": "1900-01-01",
 "lastSyncMasterCRMOrder": "1900-01-01",
 "lastSyncPageMasterCRMOrder": 0,
 "lastSyncERPCompany": "1900-01-01",
 "lastSyncERPCompanyIntegration": "1900-01-01",
 "lastSyncPageERPCompany": 0,
 "lastSyncERPUser": "1900-01-01",
 "lastSyncERPUserIntegration": "1900-01-01"
 "lastSyncPageERPUser": 0,
 "lastSyncERPCustomer": "1900-01-01",
 "lastSyncERPCustomerIntegration": "1900-01-01",
 "lastSyncPageERPCustomer": 0,
 "lastSyncERPCurrency": "1900-01-01",
 "lastSyncERPCurrencyIntegration": "1900-01-01",
 "lastSyncPageERPCurrency": 0,
 "lastSyncERPCurrencyQuotation": "1900-01-01",
 "lastSyncERPCurrencyQuotationIntegration": "1900-01-01",
 "lastSyncPageERPCurrencyQuotation": 0,
 "lastSyncERPPriceTableItem": "1900-01-01",
 "lastSyncERPPriceTableItemIntegration": "1900-01-01",
 "lastSyncPageERPPriceTableItem": 0,
 "lastSyncERPCarrier": "1900-01-01",
 "lastSyncERPCarrierIntegration": "1900-01-01",
 "lastSyncPageERPCarrier": 0,
 "lastSyncERPRegion": "1900-01-01",
 "lastSyncERPRegionIntegration": "1900-01-01",
 "lastSyncPageERPRegion": 0,
 "lastSyncERPRegionUser": "1900-01-01",
 "lastSyncERPRegionUserIntegration": "1900-01-01",
 "lastSyncPageERPRegionUser": 0,
 "lastSyncERPRegionCustomer": "1900-01-01",
 "lastSyncERPRegionCustomerIntegration": "1900-01-01",
 "lastSyncPageERPRegionCustomer": 0,
 "lastSyncERPFinancialSecurity": "1900-01-01",
 "lastSyncERPFinancialSecurityIntegration": null,
 "lastSyncPageERPFinancialSecurity": 0,
 "lastSyncERPPaymentMethod": "1900-01-01",
 "lastSyncPageERPPaymentMethod": 0,
 "lastSyncERPPaymentMethodIntegration": null,
 "lastSyncERPFreight": "1900-01-01",
 "lastSyncPageERPFreight": 0,
 "lastSyncERPFreightIntegration": null,
 "lastSyncERPOrderStatus": "0001-01-01T00:00:00+00:00",
 "lastSyncPageOrderStatus": 0,
 "lastSyncERPOrderStatusIntegration": null
}

III. Criações Manuais via Swagger


          Na integração Protheus-CRM é necessário fazer algumas criações de dados manualmente pelo swagger, será feito a criação de Status de Pedido no CRM e o vínculo entre o Id da Moeda do TOTVS CRM com o código do Protheus no HUB de integração.

1. Autenticando no Swagger


          Para fazer a criação do Configuration é preciso primeiro pegar o RAC Token da base para fazer o acesso via Swaager. Para obter ele iremos usar o Postman.

          Abra o Postman e crie uma Request de Post, e coloque o endereço do RAC do cliente criado.

          Na aba Authorization coloque em Type: Bearer Token e ao lado direito coloque a variável {{rac-token}}

          Na aba Headers acrescente a Key: Content-Type com o Value: application/x-www-form-urlencoded

          Na aba Body acrescente as Key abaixo com seus respectivos valores, username e password são os criados no usuário Integração do RAC.

          Com estes dados preenchidos clicar no Botão SEND irá ter um retorno conforme abaixo, copiar a informação dentro do Token para utilizarmos no Swagger.

          Com a informação do Token acessar o site https://master-crm-api.totvs.app/swagger/index.html e clicar no botão Authorize para inserir o Token. Digitar a palavra Bearer dar um espaço e colar o Token que foi gerado no Postman.

          Para validar se está no ambiente correto, clicar em Application e ir no segundo Get e clicar no botão Try it Out após clicar em Execute. Se tudo tiver sido criado corretamente irá trazer um retornocom código 200, e com as informações do cliente que está logado no Swagger.


2. Criação dos Status de Pedido no CRM via Swagger


          Após fazer a autenticação localizar no Swagger a entidade OrderStatus e ir na opção de Post conforme imagem abaixo selecionada.

          Copiar os Json abaixo um de cada vez e clicar em executar, terá o retorno 201 criado com sucesso, repetir o processo para todos eles.

{
 "externalId": "1",
 "deleted": false,
 "active": true,
 "description": "Pedido em aberto",
 "acronym": "1"
}
{
 "externalId": "2",
 "deleted": false,
 "active": true,
 "description": "Pedido encerrado",
 "acronym": "2"
}
{
 "externalId": "3",
 "deleted": false,
 "active": true,
 "description": "Pedido liberado",
 "acronym": "3"
}
{
 "externalId": "4",
 "deleted": false,
 "active": true,
 "description": "Pedido bloqueado por regra",
 "acronym": "4"
}
{
 "externalId": "5",
 "deleted": false,
 "active": true,
 "description": "Pedido bloqueado por verba",
 "acronym": "5"
}
{
 "externalId": "6",
 "deleted": false,
 "active": true,
 "description": "Não Transmitida",
 "acronym": "6"
}
{
 "externalId": "7",
 "deleted": false,
 "active": true,
 "description": "Transmitida",
 "acronym": "7"
}
{
 "externalId": "IN",
 "deleted": false,
 "active": true,
 "description": "Integrado",
 "acronym": "IN"
}

3. Vínculo de moeda


          Ainda autenticado no Swagger localizar o componente Currency – Post, conforme imagem abaixo.

          Localizar na listagem abaixo os Json das moedas utilizadas pelo cliente copiar ele e colar no Swagger e executar, antes substituir os Campos "erpReferenceKey" e "ERPCode" pelo código da moeda do Protheus, Exemplo MV_MOEDA1 substituir nos dois campos o valor por 1. Também substituir as datas pela data que
está sendo feito o processo. Na listagem já tem o Id da Moeda no CRM, só é necessário colocar nos 2 campos acima o código da moeda no Protheus para enviar o vínculo para o HUB de integração.

          Fazer este processo somente para as moedas que o cliente tem configurado no Protheus, abaixo está a 4 principais moedas utilizadas, caso tenha alguma moeda além destas que o cliente utiliza será necessário solicitar ao CRM o Id da Moeda no CRM para fazer o vínculo.

→ Real Brasileiro
{
 "erpReferenceKey": "1",
 "erpCreateDate": "2020-11-26",
 "erpLastChange": "2020-11-26",
 "erpSyncPending": false,
 "masterCRMReferenceKey": "5ebcc87b-af5d-42ad-85ad-df620844055f",
 "masterCRMCreateDate": "2020-11-26",
 "masterCRMLastChange": "2020-11-26",
 "masterCRMSyncPending": false,
 "description": "Real Brasileiro",
 "symbol": "R$",
 "code": "BRL",
 "active": true,
 "erpDefaultCurrency": true,
 "ERPCode": "1"
}

→ Dólar Americano
{
 "erpReferenceKey": "2",
 "erpCreateDate": "2020-11-26",
 "erpLastChange": "2020-11-26",
 "erpSyncPending": false,
 "masterCRMReferenceKey": "67828a92-1503-4adb-c31b-c5416ad47c73",
 "masterCRMCreateDate": "2020-11-26",
 "masterCRMLastChange": "2020-11-26",
 "masterCRMSyncPending": false,
 "description": "Dólar Americano",
 "symbol": "US$",
 "code": "USD",
 "active": true,
 "erpDefaultCurrency": true,
 "ERPCode": "2"
}

→ Euro
{
 "erpReferenceKey": "3",
 "erpCreateDate": "2020-11-26",
 "erpLastChange": "2020-11-26",
 "erpSyncPending": false,
 "masterCRMReferenceKey": "c702a70a-a0fa-4b3d-b8fd-f2e7d3030b21",
 "masterCRMCreateDate": "2020-11-26",
 "masterCRMLastChange": "2020-11-26",
 "masterCRMSyncPending": false,
 "description": "Euro",
 "symbol": "€",
 "code": "EUR",
 "active": true,
 "erpDefaultCurrency": true,
 "ERPCode": "3"
}

→ Iene Japonês
{
 "erpReferenceKey": "4",
 "erpCreateDate": "2020-11-26",
 "erpLastChange": "2020-11-26",
 "erpSyncPending": false,
 "masterCRMReferenceKey": "162bde99-0026-4bf4-ffdc-fcad383ddcf9",
 "masterCRMCreateDate": "2020-11-26",
 "masterCRMLastChange": "2020-11-26",
 "masterCRMSyncPending": false,
 "description": "Iene Japonês",
 "symbol": "¥",
 "code": "JPY",
 "active": true,
 "erpDefaultCurrency": true,
 "ERPCode": "4"
}




IV. Configurando os Diagramas para um novo cliente


1. Baixar ou solicitar os diagramas


          Baixar do Git ou solicitar para alguém os diagramas de um cliente que já esteja em produção. Com os diagramas em mãos, acessar o Eclipse e criar um projeto com o nome do cliente.


2. Importar os diagramas no Eclipse


          Clicar com o botão direito no nome do projeto e ir à opção de Import

          Selecionar a opção File System.

          Em Browse localizar a pasta principal dos diagramas, marcar o check box a esquerda para
selecionar todos os diagramas. Mais abaixo marca o check box Overwrite existing .. e clicar em Finish


3. Alterar dados do diagrama


          Com os diagramas carregados no eclipse, é necessário alterar a url do RAC em todos os diagramas, e caso necessário o usuário, senha e tenant do body no RAC. Esta alteração pode ser feita uma a uma pelos
diagramas, ou também acessando pelo NotePad++ alterando todos de uma vez.

3.1. Manual por diagrama

3.2. Pelo NotePad++

          Acessar a janela de busca com o Ctrl+F. Na aba Find in Files digitar em Find what a palavra modelo e em Replace with colocar o apelido do cliente que está sendo usado no endereço do RAC e no Tenant. Em Directory localizar a pasta principal dos diagramas que foram carregados no Eclipse e clicar em Replace All. Caso queira garantir estar no lugar correto, pode clicar antes em Find All que irá trazer tudo que será alterado. Com este comando já será trocado o apelido na URL do RAC e o Tenant. Caso o usuário e senha sejam diferentes do padrão que está no diagrama, pode ser feito o mesmo processo para alteração do usuário e senha.


4. Servidor Connector do Cliente

          Para fazer a publicação dos diagramas primeiro é necessário fazer a criação de uma conexão entre o eclipse e o CONNECTOR do cliente. Na aba Connector Servers clicar com o botão direito em ServerFluig e Fluig Connector Server.

          Definir o nome para o servidor, colocar a url do Connector de produção na porta 443 conforme abaixo. Informar o usuário e senha do Connector, o mesmo utilizado para acessar o portal.



V. Publicando Diagrama EAIReceiver e EAIMessage


          Com o servidor criado, o próximo passo é publicar estes dois diagramas, EAIReceiver e depois o EAIMessage-HubToERP. Clicar com o botão direito em cima do diagrama e ir na opção Deploy to Fluig.

          Na tela selecionar o servidor que foi criado para o cliente, marcar a opção Create new diagram e clicar em Finish. Caso já tenha publicado alguma vez o diagrama, selecionar a opção Update e selecionar o diagrama no Description, se criar o mesmo diagrama mais de uma vez dará problema na integração.

          Caso o diagrama já tenha sido publicado uma alguma vez vai aparecer a opção de Update new diagram, caso não lembre se o diagrama já foi publicado, pode mudar para a opção de Update e em Description tentar localizar o diagrama na listagem, caso ele não se encontre voltar para a opção Create e clicar em Finish.

          Ao publicar o diagrama pode ser verificado no monitor do Connector se os endereços, usuários e senhas foram configurados corretamente. Quando configurado corretamente e sem registros para integrar terá uma mensagem com situação Processada, em Integração terá o nome do diagrama que publicou e como ainda não tem registros a integrar vai estar em componente GET-Middleware-ApplicationName.


VI. Configuração Schedule - Rota EAI – De/Para - Adapter


1. Configurando o Schedule


          Para que o envio e recebimento das mensagens assíncronas sejam realizados, é necessário efetuar o cadastro das rotinas FWEAIRECE, FWEAISEND e FWEAICLEAR no Schedule Protheus.

          Para realizar esse cadastro deve ser acessado o modulo SIGACFG, depois navegar em Ambiente/Schedule/Schedule e segue as configurações abaixo:

          Na imagem abaixo vamos parar os serviços do Schedule que são Task Manager e Queue Manager, conforme sequência da imagem.


         

          Na imagem abaixo vamos parar o serviço de todos os AGENT que tem configurado no cadastro de AGENT, conforme sequência da imagem.

          Na imagem abaixo vamos excluir todos os AGENT que tem configurado no cadastro de AGENT, conforme sequência da imagem.

          Na imagem abaixo vamos excluir todos os AGENT que tem configurado no cadastro de AGENT, conforme sequência da imagem.

          Na imagem abaixo vamos cadastrar todos os AGENT padrões que existem no ambiente do Protheus, conforme sequência da imagem.

          Observação: Após o cadastro dos AGENT e preciso parar o serviço de todos os AGENT.

         

          Na imagem abaixo vamos limpar as tabelas de Tarefas, EAI e Eventos, conforme sequência da imagem. Favor repedir o mesmo procedimento para as 3 tabelas.

          Agora vamos realizar o cadastro das rotinas FWEAIRECE, FWEAISEND, FWEAICLEAR e SCHEDESTMG para o agendamento do programa FWEAI Schedule.

          FWEAIRECE: A Rotina de recebimento das mensagens do EAI Protheus. Quando configurada esta rotina inicia o processamento das mensagens disponíveis para processamento na fila do EAI Protheus.

          FWEAISEND: Rotina de envio das mensagens do EAI Protheus. Quando configurada esta rotina inicia o envio das mensagens disponíveis na fila do EAI Protheus.

          FWEAICLEAR: Rotina de limpeza da fila do EAI Protheus. Quando configurada esta rotina faz a deleção física de todos os registros com o status de 'finalizado', na fila do EAI. Esta limpeza é importante devido ao volume de dados que a tabela XX3 (fila do EAI Protheus) pode atingir.

          Na imagem abaixo demostra as configurações das rotinas FWEAIRECE e FWEAISEND:

          Item 4 – Rotina: Deve ser preenchido com o nome da Rotina configurada no momento.

          Item 6 – Empresa/Filial: Deve ser selecionado a Empresa/Filial que vai ser integrada.

          Item 8 – Recorrência: Deve ser selecionado Sem data de término.

          Item 9 – Recorrência: Deve ser selecionado Sempre ativo

          Na imagem abaixo demostra a configuração da rotina FWEAICLEAR:

          Item 6 – Empresa/Filial: Deve ser selecionado a Empresa/Filial que vai ser integrada.

          Item 8 – Recorrência: Deve ser selecionado Sem data de término e N° Execuções no mesmo dia = 0001.

          Item 9 – Recorrência: Deve ser selecionado Mensal e Dia 1 de cada mês.

          Na imagem abaixo demostra a configuração da rotina SCHEDESTMG:

          Item 4 – Rotina: Deve ser preenchido com o nome da Rotina.

          Item 5 – Empresa/Filial: Deve ser selecionado a Empresa e depois a Filial que vai ser integrada o Estoque.

          Item 6 – Modulo: Deve ser selecionado o Modulo 04 Estoque/Custos.

          Item 8 – Recorrência: Deve ser selecionado Sem data de término.

          Item 9 – Recorrência: Deve ser selecionado Sempre ativo.


2. Configurando Rota EAI


          Para o Protheus enviar ou receber mensagens da integração é necessário que seja configurado uma Rota EAI e para realizar esse cadastro deve acessar o modulo SIGACFG, depois navega em Ambiente/Schedule/Cadastro de Rotas EAI e depois vai em incluir e preencha os seguintes campos com as informações abaixo:

          Observação: O endereço Rest pode deixar em branco para ser configurado os adapters, o preenchimento só é necessário quando for iniciar as cargas nos adapters depois das publicações dos diagramas.

                                                              PRODUTO = TOTVSCRM
                                                              APLICAÇÃO = TOTVSCRM
                                                              CANAL ENV = 2 – REST
                                                              NA ABA REST: Aplicar o endereço do Connector que tem essa estrutura:
                                                              https://connector.fluig.app/connector/api/v1/integrations/execute/{{appid}}/{{appkey}}
                                                              {{APPID}}: É o ID da publicação do diagrama EAIReceiver;
                                                              {{APPKEY}}: É o ID do API KEY do diagrama EAIRECEIVER;

          O código APPID é o código gerado pela publicação do diagrama EAIReceiver, acessando o Eclipse, dar 2 cliques no servidor do ambiente do cliente e na tela que abrir com os diagramas publicados copiar o ID do registro EAIReceiver, conforme imagem abaixo.

          Para geração do APPKEY, novamente duplo clique no servidor do ambiente do cliente, vai ter 2 abas, Diagrama e API Key na parte inferior, clicar na aba API Key conforme imagem abaixo. No campo de “Add API Key” buscar pelo diagrama “EAIReceiver”, e no campo ao lado em “Name” digitar o mesmo nome do diagrama “EAIReceiver” e clicar em adicionar. Quando adicionado na parte superior irá gerar o APP Key.


3. Configurar De/Para Empresa Mensagem Única


          No EAI Protheus existe a possibilidade de cadastrar as Mensagens Únicas TOTVS, um relacionamento entre a Empresa e Filial de processamento que chegou na mensagem com uma existente no Protheus. Isto se deve ao fato de que, na Mensagem Única TOTVS os valores trafegados na mensagem são sempre do sistema que enviou a mensagem, cabendo ao sistema receptor a tradução das informações trafegadas.

          Desta forma é enviada na mensagem o valor do correspondente a Empresa e Filial do sistema que originou a mensagem o que, em muitas vezes, não coincide com o código destas entidades no Protheus.

          A configuração De/Para Empresas Mensagem Única é feita dentro modulo SIGACFG acessando Ambiente/Schedule/Emp.Fil Msg. Unica.

          Na imagem abaixo demostra a configuração De/Para Empresas Mensagem Única;
          REFERÊNCIA= Deve ser preenchido com o mesmo nome que ficou configurado no produto na rota EAI, no caso TOTVSCRM.
          EMPRESA= Deve ser o código da empresa que efetuará a integração.
          FILIAL= Deve ser o código da filial que efetuará a integração.
          GRUPO EMP. PROTHEUS= Deve ser o código da empresa que efetuará a integração.
          FIL.PROTHEUS= Deve ser o código da filial que efetuará a integração.

                    1 – Empresa
                    2 – Filial
                    3 – Fil.Protheus
                    4 – Grupo Emp.Protheus


4. Configurando os Adapters para Integração com TOTVS CRM


          Pré-Requisitos:
          Para realizar o cadastro/configuração do adapter é necessário ter uma ROTA cadastrada, a qual foi cadastrada no item 2 deste documento.

          Importante:
          Informar a Rota de acordo com o Cadastro de Rotas EAI.
          1 – Mensagem e Descrição precisa ser colocado exatamente como está no quadro
          2 – Recomendado na configuração deixar tanto o “Envia” como o “Recebe” com “Não”, pois o cliente está em produção e existe uma sequência correta de cargas antes                      que se faça a integração de Vendedor, Produto e Cliente, deixando já ativo o diagrama começara a enviar para a integração estes cadastros com erro.
          3 – Para Integração de Transportadora é necessário criar o parâmetro abaixo:

          Cadastro de Adapters:

          O cadastro de Adapters são rotinas responsáveis por realizar o processamento das mensagens enviadas e recebidas, possibilitando a inclusão, alteração e exclusão do adapter no Protheus.

          As configurações dos Adapters são feitas dentro modulo SIGACFG acessando Ambiente/Schedule/ Adapter E.A.I. Configure a rotina do Adapter, de acordo com a tabela abaixo que já foram pré-estabelecidos para a integração.

         Observação: Todos os Adapters devem ser cadastrados com os seguintes padrões e dados:
         Mensagem única: Sim
         Rotina: Nome do adapter
         Mensagem: Nome da mensagem única que o Adapter EAI espera receber.
         Descrição: Identificação da mensagem.
         Envia: SIM (se envia a informação para o TOTVS CRM) ou NÃO (Se não envia nenhuma informação deste adapter para o TOTVS CRM).
         Recebe: SIM (se recebe a informação do TOTVS CRM) ou NÃO (Se não recebe nenhuma informação deste adapter do TOTVS CRM).
         Método: Assíncrono
         Operação: Todas
         Canal de Envio: Para TOTVS CRM = 3 – EAI – PAD. APP.
         Formato: JSON (Somente o Adapter de Carrier é utilizado tipo XML)
         Roteamento de mensagens: Informar a rota criada no cadastro de rota e se envia de acordo com a integração (ver tabela abaixo).

AdapterRotina ProtheusMensagem ÚnicaMensagem¹Descrição¹EnviaRecebeCondição de
envio
AliasFormatoRota*
Whois Mensagem
Única
APCFG0601 - SimWHOISWHOIS MENSAGEM
UNICA
SimSim

XML
Cadastro de filiaisAPCFG2301 - SimBRANCHFILIAISSimNão

JSONTOTVSCRM
Cadastro Unidade
de Medida
QIEA0301 - SimUNITOFMEASUREUNIDADE DE MEDIDASimNão

JSONTOTVSCRM
Cadastro Grupo de
Produtos
MATA0351 - SimFAMILYGRUPO DE
PRODUTOS
SimNão

JSONTOTVSCRM
Cadastro
Transportadora ²
MATA0501 - SimCARRIERTRANSPORTADORASimNão

XMLTOTVSCRM
Cadastro Condição
de Pagamento
MATA3601 - SimMATA360CONDICAO DE
PAGAMENTO
SimNão

JSONTOTVSCRM
Cadastro de
Vendedor
MATA0401 - SimSELLERVENDEDORSimNão

JSONTOTVSCRM
Cadastro de
Produto
MATA0101 - SimITEMPRODUTOSimSim

JSONTOTVSCRM
Cadastro de Tabela
de Preço
OMSA0101 - SimPRICELISTHEADERITEMTABELA DE PRECOSimNão

JSONTOTVSCRM
Cadastro de
Cliente/Fornecedor
MATA0301 - SimCUSTOMERVENDOR

CLIENTE/

FORNECEDOR

SimSim

JSONTOTVSCRM
Pedido de Venda
Faturamento
MATA4101 - SimORDERPEDIDO DE VENDASimSim

JSONTOTVSCRM
Cadastro de
Cotação de Moeda
MATA0901 - SimCURRENCYQUOTECOTACAO DE MOEDASimNão

JSONTOTVSCRM
Saldo de ProdutoMATA2251 - SimSTOCKLEVELSALDO DE ESTOQUESimNão
SB2JSONTOTVSCRM
Rastreabilidade de
Pedido ³
MATA410B1 - SimDOCUMENTTRACEABILITYORDERRASTREABILIDADE DE
PEDIDO
SimNãoRTRIM(SC5-
>C5_ORIGEM) =
'MSGEAI'

JSONTOTVSCRM


VII. Carga de Dados


          A integração deve seguir a ordem conforme abaixo, uma carga depende da outra, se as cargas de prérequisito não tiverem sido finalizadas não pode ser iniciada a carga subsequente. Segue abaixo a sequênciase cargas que deve ser seguida.

1. Integração de Country / País


          A carga de country é feita do CRM para o HUB de integração que será usado posteriormente no De/Para nas integrações que tenham a integração de País.
         Publicar o diagrama: “Country-MasterCRMToHUB”


2. Integração de State / Estado


          A carga de state é feita do CRM para o HUB de integração que será usado posteriormente no De/Para nas integrações que tenham a integração de Estado.
          Publicar o diagrama: “State-MasterCRMToHUB”


3. Integração de City / Cidade


          A carga de city é feita do CRM para o HUB de integração que será usado posteriormente no De/Para nas integrações que tenham a integração de Cidade.
          Publicar o diagrama: “City-MasterCRMToHUB”


4. Integração de FreightType / Tipo de Frete


          A carga de Tipo de Frete é feita do CRM para o HUB de integração que será usado posteriormente no De/Para nas integrações do Pedido de Venda.
          Publicar o diagrama: “FreightType-MasterCRMToHUB”


5. Integração de OrderStatus / Status Pedido


         A carga de Status Pedido é feita do CRM para o HUB de integração que será usado posteriormente no De/Para nas integrações do Pedido de venda para atualizar o status dos pedidos do Protheus para o CRM.
         Publicar o diagrama: “OrderStatus-MasterCRMToHUB”


6. Integração de Company / Filial


          A primeira carga a ser feita do Protheus é a de Empresas (Filiais), esta carga é feita de forma manual onde deve ser feita uma alteração simples no cadastro de cada Filial a ser integrada, onde ao salvar será gerada a mensagem de integração. Acessar em Configurador\Ambiente\Empresas\Filial.
          1) Ativar o Adapter Branch passando o Envia para 1 = Sim.
          2) Acessar: ERP\ Configurador \ Ambiente \ Empresas \ Filial
          3) Acessar o cadastro de Empesas\ Filial, selecionar a filial e clicar em ALTERAR.
          4) Colocar um carácter na descrição e clicar em SALVAR.
          5) Observação: Repetir o processo para todas as Filiais que serão integradas.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no “EAIReceiver” para o componente “POST-ERP-Company”, conforme imagem abaixo.


         Observação: As cargas podem ser acompanhadas pelo Postman se as quantidades de registros do Protheus chegaram no HUB de integração e já enviaram para o CRM):


7. Integração de Unit Of Measure / Unidade de Medida


          Ativar o Adapter QIEA030UNITOFMEASURE passando o Envia para 1 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter QIEA030 – UNITOFMEASURE e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga de Unidade de Medida.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP- UnitOfMeasure.

          Mensagem de Retorno:

          Publicar o diagrama: “UnitOfMeasure-HubToMasterCRM”


8. Integração de ProductGroup / Grupo de Produto


          Ativar o Adapter MATA035FAMILY passando o Envia para 1 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter MATA035FAMILY e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga de Grupo de Produtos.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-ProductGroup.

          Publicar o diagrama: "ProductGroup-HubToMasterCRM"


9. Integração de Carrier / Transportadora


          Ativar o Adapter MATA050CARRIER passando o Envia para 1 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter MATA050CARRIER e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga deTransportadora.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-Carrier.

         Publicar o diagrama: “Carrier-HubToMasterCRM”


10. Integração de PaymentCondition / Condição de Pagamento


          Ativar o Adapter MATA360 – MATA360 passando o Envia para 1 = Sim

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter MATA360 – MATA360 e clicar em Iniciar Sincronização.. Neste Adapter estamos fazendo a carga de Condição de Pagamento.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-PaymentCondition.

          Publicar o diagrama: “PaymentCondition-HubToMasterCRM”


11. Integração de Seller / Vendedor


          Ativar o Adapter MATA040SELLER passando o Envia para 1 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter MATA040SELLER e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga de Vendedor. O vendedor do Protheus irá criar o usuário do CRM, e a Região do CRM para o vínculo de carteira de cliente.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-User.

          Publicar o diagrama: “User-HubToMasterCRM”
          “Region-HubToMasterCRM” / “RegionUser-HubToMasterCRM”

           Observação: Para o APP3 não tem Publicação dos diagramas de Region e RegionUser


12. Integração de Item / Produto


          Ativar o Adapter MATA010 ITEM passando o Envia para 1 = Sim e Recebe para 1 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter MATA010 ITEM e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga de Produto, só pode ser iniciada quando finalizada unidade de medida e grupo de produto.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-Product.

       Publicar o diagrama: “Product-HubToMasterCRM”


13. Integração de PriceTable / Tabela de Preço


          Ativar o Adapter OMSA010PRICELISTHEADERITEM passando o Envia para 1 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter OMSA010PRICELISTHEADERITEM e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga de Tabela de Preço, só pode ser iniciada quando finalizada a carga de Produto.

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-PriceTable.

          Publicar o diagrama: “PriceTable-HubToMasterCRM” / “PriceTableItem-HubToMasterCRM”


14. Integração de Customer / Cliente


          Ativar o Adapter MATA030CUSTOMERVENDOR passando o Envia para 1 = Sim e Recebe para 2 = Sim.

          Iniciar a carga acessando Configurador\Schedule\Sinc.carga Inicial EAI selecionar o Adapter MATA030CUSTOMERVENDOR e clicar em Iniciar Sincronização. Neste Adapter estamos fazendo a carga de Cliente, só pode ser iniciada quando finalizada a carga de Vendedor, Condição de Pagamento e Tabela de Preço, pois é feito vínculo com as 3 na integração de cliente.  

          Acessando o monitor do Connector vai ter a mensagem de sucesso no EAIReceiver para o componente POST-ERP-Customer.

          Publicar o diagrama: “Customer-HubToMasterCRM” / “RegionCustomer-HubToMasterCRM”
          Observação: Para o APP3 não tem Publicação dos diagramas de RegionCustomer.


 15. Integração de StockLevel / Estoque


          Ativar o Adapter MATA225STOCKLEVEL passando o Envia para 1 = Sim.     

          Criar o agendamento SCHEDESTMG que é responsável por enviar os produtos que tiveram o estoque modificado.

          Na imagem abaixo demostra a configuração da rotina SCHEDESTMG:
          Item 4 – Rotina: SCHEDESTMG.
          Item 5 – Empresa/Filial: Deve ser selecionado a Empresa e depois a Filial que vai ser integrada o Estoque.
          Item 6 – Modulo: Deve ser selecionado o Modulo 04 Estoque/Custos.
          Item 8 – Recorrência: Deve ser selecionado Sem data de término.
          Item 9 – Recorrência: Deve ser selecionado Sempre ativo.

          Ao cadastrar o agendamento, já irá começar a processar o mesmo e gerar as mensagens para integração.

          Publicar o diagrama: “Stock-HubToMasterCRM”


16. Exportação de Customer / Cliente


         A exportação de Cliente do CRM para o Protheus é necessário fazer a publicação dos diagramas abaixo, os testes devem ser feitos pelo time do CRM, alteração em um cadastro integrado ou criação de um cadastro novo e acompanhar a integração via Connector.

         Publicar o diagrama: “Customer-MasterCRMToHub”
                                             “Customer-HubToERP”


17. Exportação de Order / Pedido de Venda


          A exportação de Pedido de Venda do CRM para o Protheus é necessário fazer a publicação dos diagramas abaixo, os testes devem ser feitos pelo time do CRM, incluindo um pedido de venda no CRM e acompanhar a integração via Connector.

      Publicar o diagrama: “Order-MasterCRMToHub”
                                             “Order-Status-HubToMasterCRM”
                                             “OrderByOrder-HubToERP”

         Finalizado as cargas, fazer o preenchimento do checklist com as quantidades de registros de cada entidade que integraram e enviar ao time do CRM encerrando o chamado.



Índice


  • Sem rótulos