A integração de dados entre TOTVS CRM | SFA e Protheus se dá através de uma API (Application Programming Interface) que utiliza web service com arquitetura REST (Representation State Transfer) para importação de dados (Protheus → TOTVS CRM | SFA) e exportação de pedidos e clientes (TOTVS CRM | SFA → Protheus).
Esta API é nativa do Protheus.
A documentação técnica do mesmo está disponível aqui: PROTHEUS - API Nativa - Manual de Configurações
A IMPORTAÇÃO de dados do Protheus para o TOTVS CRM | SFA é realizada através de requisições ao método genericRecords presente no seguinte endereço da API de integração REST:
http://IP_SERVIDOR_PROTHEUS:PORTA/AMBIENTE_REST/api/framework/v1/genericRecords/SFA_CONSULTA_NGC
Este método retorna os registros das consultas .ngc previamente criadas e copiadas para a pasta raiz do Protheus.
Método de requisição: GET
URL base: IP e Porta
Nome do método: genericRecords
Autenticação: usuario e senha criado no Protheus, com permissoes totais aos módulos
Header: Authorization | Basic <usuario:senha> Usuário e senha do ERP criptografado em Base64
Result: Objeto JSON contendo os dados do retorno da consulta
A EXPORTAÇÃO de dados do TOTVS CRM | SFA para o Protheus é realizada através do TOTVS EAI Mensagem Padronizada no seguinte endereço da API de integração REST:
http://IP_SERVIDOR_PROTHEUS:PORTA/AMBIENTE_REST/totvseai/standardmessage/v1/transactions
Este método envia os pedidos e clientes cadastrados no SFA para o Protheus.
A documentação das rotas EAI estão aqui: Documentação de Order e CustomerVendor
Método de requisição: POST/PUT
URL base: IP e Porta
Nome do método: order | customerVendor
Autenticação: usuario e senha criado no Protheus, com permissoes totais aos módulos
Header: Authorization | Basic <usuario:senha> Usuário e senha do ERP criptografado em Base64
Body: Objeto JSON contendo o registro a ser inputado no Protheus
OBS: utilizar o mesmo usuario:senha para isso.
No SFA chamamos essa configuração de EMPRESA, onde cada ambiente REST possuirá um número, como padrão usamos: 01, 02, 03... etc.
Isso serve para diferir a origem de cada registro do Protheus.
Todas as rotinas de integração são executadas conforme um agendamento, que determina os horários em que as rotinas serão executadas.
Em servidores Windows, o agendamento é feito através da ferramenta Agendador de Tarefas, que é nativa do sistema operacional
Em servidores Linux o agendamento é feito através de um arquivo Cron, que é o equivalente do agendador de tarefas para sistemas Unix.
Por padrão, os agendamentos de execução das rotinas standard são feitos da seguinte forma:
importation_job_all.bat | importation_job_all.sh: responsável por executar todas as rotinas de importação.
importation_job_all_fim_do_dia.bat | importation_job_all_fim_do_dia.sh: responsável por executar todas as rotinas de importação e exportação com um período maior de histórico (pedidos, notas e titulos) ao fim do dia.
exportation_job_all.bat | exportation_job_all.sh: responsável por executar as rotinas de exportação de pedido e cliente.