A integração entre TOTVS Datasul e TOTVS CRM utiliza o iPaaS com o HUB (base intermediária).
A localização do repositório iPaaS standard mudou
- Agora deve-se importar os diagramas a partir do Tenant CRM PROJETOS no projeto Standard - TOTVS CRM-DATASUL
- Caso não tenha permissão, solicitar ao William Mello ou Everton Pedrolo.
Abaixo segue o fluxo das integrações:
IMPORTAÇÃO
Formato: Cada entidade possui 02 diagramas para realizar a importação: ERPtoHUB e HUBtoCRM, ou seja, um diagrama importa do ERP para o HUB e outro do HUB para o CRM.
Nomenclatura: NÚMERO-NOME-DIREÇÃO. Exemplo: 02-Company-ERPtoHUB
- Número: os diagramas seguem uma ordem de execução, do menor para o maior;
- Nome: é o nome da entidade;
- Direção: de onde para onde.
Agendamento: Cada diagrama é executado via timer (agendamento) conforme a necessidade de cada empresa.
OBS: os diagramas vem com agendamentos pré-definidos, contudo não é mandatório.
EXPORTAÇÃO
Formato: Existem apenas 02 diagramas de exportação: 16-Customer-Exportation e 18-Order-Exportation.
Agendamento: 16-Customer-Exportation é executado via timer (agendamento) e o 18-Order-Exportation é disparado pelo Workflow do CRM.
DIAGRAMAS DA INTEGRAÇÃO
Abaixo estão todos os diagramas que a integração trabalha, abaixo desta tabela temos a explicação da utilização das variáveis de importação e exportação.
Diagrama | Tipo | Variável iPaaS | Descrição |
---|---|---|---|
01-OrderSituation | Importação | ||
01-Timer-City | Importação | ||
01-Timer-Country | Importação | ||
01-Timer-State | Importação | ||
02-Company-ERPtoHUB | Importação | totvs_crm_importation_company | Variável para realizar a filtragem de registros no ERP |
02-Company-HUBtoCRM | Importação | ||
03-UnitOfMeasure-ERPtoHUB | Importação | totvs_crm_importation_unitofmeasure | Variável para realizar a filtragem de registros no ERP |
03-UnitOfMeasure-HUBtoCRM | Importação | ||
04-ProductGroup-ERPtoHUB | Importação | totvs_crm_importation_productgroup | Variável para realizar a filtragem de registros no ERP |
04-ProductGroup-HUBtoCRM | Importação | ||
05-Currency-ERPtoHUB | Importação | totvs_crm_importation_currency | Variável para realizar a filtragem de registros no ERP |
05-Currency-HUBtoCRM | Importação | ||
06-CurrencyQuotation-ERPtoHUB | Importação | totvs_crm_importation_currencyquotation | Variável para realizar a filtragem de registros no ERP |
06-CurrencyQuotation-HUBtoCRM | Importação | ||
07-OperationType-ERPtoHUB | Importação | totvs_crm_importation_operationtype | Variável para realizar a filtragem de registros no ERP |
07-OperationType-HUBtoCRM | Importação | ||
08-PaymentCondition-ERPtoHUB | Importação | totvs_crm_importation_paymentcondition | Variável para realizar a filtragem de registros no ERP |
08-PaymentCondition-HUBtoCRM | Importação | ||
09-Carrier-ERPtoHUB | Importação | totvs_crm_importation_carrier | Variável para realizar a filtragem de registros no ERP |
09-Carrier-HUBtoCRM | Importação | ||
10-User-ERPtoHUB | Importação | totvs_crm_importation_user | Variável para realizar a filtragem de registros no ERP |
10-User-HUBtoCRM | Importação | ||
11-Product-ERPtoHUB | Importação | totvs_crm_importation_product | Variável para realizar a filtragem de registros no ERP |
11-Product-HUBtoCRM | Importação | ||
12-PriceTable-ERPtoHUB | Importação | totvs_crm_importation_pricetable | Variável para realizar a filtragem de registros no ERP |
12-PriceTable-HUBtoCRM | Importação | ||
13-PriceTableItem-ERPtoHUB | Importação | totvs_crm_importation_pricetableitem | Variável para realizar a filtragem de registros no ERP |
13-PriceTableItem-HUBtoCRM | Importação | ||
14-Stock-ERPtoHUB | Importação | ||
14-Stock-HUBtoCRM | Importação | ||
15-Customer-ERPtoHUB | Importação | totvs_crm_importation_customer | Variável para realizar a filtragem de registros no ERP |
15-Customer-HUBtoCRM | Importação | ||
15-Customer-UpdateLists-CRMtoHUB | Importação-Contigência | ||
16-Customer-Exportation | Exportação | totvs_crm_exportation_customer_custom_fields | Variável que envia campos customizados para o ERP |
17-OrderStatus-ERPtoHUB | Importação | ||
17-OrderStatus-HUBtoCRM | Importação | ||
18-Order-Error-Exportation | Exportação | totvs_crm_exportation_order_header_custom_fields totvs_crm_exportation_order_item_custom_fields | Variável que envia campos customizados para o ERP Variável que envia campos customizados para o ERP |
18-Order-Exportation | Exportação-Contingência |
VARIÁVEIS DA INTEGRAÇÃO
Existem dois tipos de variáveis nesta integração entre Datasul e CRM: totvs_crm_exportation_* e totvs_crm_importation_*
Após você importar o projeto, elas estarão localizadas nas variáveis do iPaaS, segue uma imagem de exemplo:
VARIÁVEIS DE IMPORTAÇÃO
Caso o cliente tenha um grande volume de dados e você queira filtrar apenas dados relevantes para ir para o CRM, basta acessar a coluna valor e fazer o filtro conforme a api do Datasul.
VARIÁVEIS DE EXPORTAÇÃO
Caso você tenha campos customizados ou fixos que queria exportar ao Datasul, agora não é necessário mais editar os diagramas, basta configurar as variáveis de exportação respeitando as seguintes propriedades:
CRM=CAMPO_CRM#HUB=CAMPO_HUB#ERP=CAMPO_DATASUL#TYPE=TIPO#SIZE=TAMANHO#DEFAULT=VALOR_PADRAO
Caso você tenha mais de um campo customizado utilize o caractere @ para separar:
CRM=CAMPO_CRM#HUB=CAMPO_HUB#ERP=CAMPO_DATASUL#TYPE=TIPO#SIZE=TAMANHO#DEFAULT=VALOR_PADRAO@CRM=CAMPO_CRM#HUB=CAMPO_HUB#ERP=CAMPO_DATASUL#TYPE=TIPO#SIZE=TAMANHO#DEFAULT=VALOR_PADRAO
As definições de cada propriedade são:
CRM: é o campo standard ou customizado do CRM
HUB: é o de/para do campo do CRM que será inserido no HUB
ERP: é o campo que será inserido no Datasul
TYPE: valores possíveis: boolean, string, integer e numeric
SIZE: tamanho do campo (somente para string, do contrário coloque 99)
DEFAULT: valor padrão caso o campo venha null ou vazio
Cenários possíveis:
Enviar um campo customizado do CRM para o Datasul:
CRM=_teste#HUB=extraText1#ERP=Teste#TYPE=string#SIZE=80#DEFAULT=Sem Valor
Enviar um campo fixo sem que o mesmo exista no CRM, mas que o ERP exige:
CRM=#HUB=#ERP=CodigoTes#TYPE=integer#SIZE=10#DEFAULT=5102
Note que neste cenário não é necessário preencher as tags CRM e HUB
EXPORTAÇÃO DE PEDIDOS E CLIENTES
Para exportar pedidos utilizamos um recurso do TOTVS CRM chamado de Workflow
Abaixo está explicitado como configurar o recurso de workflow com as condições de filtragem para que o diagrama execute conforme esperado:
- A exportação de clientes ainda ficará como timer, pois é necessário evoluir uma funcionalidade no cadastro de cliente.
- Reabertura do cadastro de ordem de venda e cliente no TOTVS CRM evitando as tentativas ilimitadas de envio e erro;
- Quando uma ordem de venda retorna erro ao exportar para o Datasul (seja de negócio ou não), é alterado seu status para reaberto, ficando como rascunho;
- Quando um cliente retorna erro ao exportar para o Datasul (seja de negócio ou não), é alterado apenas a data de sincronia;
- Gravação do retorno da exportação do Datasul no campo personalizado Observação da Integração (observacaoDaIntegracao) em ordem de venda e cliente
- Reabertura do cadastro de ordem de venda e cliente no TOTVS CRM evitando as tentativas ilimitadas de envio e erro;
ERRO:
SUCESSO: