Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 2 Próxima »

INFORMAÇÕES PROPRIETÁRIA


Este documento é de propriedade da Wealth Systems Informática Ltda. Todas as informações contidas aqui são confidenciais e não devem ser copiadas ou divulgadas para quaisquer terceiros sem antes um consentimento formal, por escrito, da Wealth Systems, podendo somente ser divulgada dentro do Cliente para os seus funcionários que estiverem diretamente envolvidos no projeto, o qual este documento relata.
A empresa Cliente será solenemente responsável por assegurar que todos seus funcionários envolvidos estejam de acordo e acatem estas condições e ainda, está intitulado para usar as informações contidas neste documento, somente para propósitos de avaliação. Este documento é versionado e sua estrutura não poderá ser alterada sem o consentimento do Gerente de Projetos da Wealth Systems.

HISTÓRICO DE REVISÃO

DataVersãoModificado porDescrição da mudança
29/03/20218.2.0William Rodrigues de MelloCriação documento. 

INTRODUÇÃO


1 INTEGRAÇÃO DE DADOS

A integração de dados entre TOTVS SFA e Datasul se dá através de uma API (Application Programming Interface) que utiliza web services com arquitetura REST (Representational State Transfer), tanto para a importação de dados (Datasul → TOTVS SFA) como para a exportação de Pedidos e Clientes (TOTVS SFA → Datasul).


1.1 Agendamento De Rotinas

O agendamento varia muito, conforme o poder de processamento de cada servidor, e da quantidade de registros de tráfego.
Foi criado agendamentos padrão nas rotinas de integração, porém, não necessariamente deve ser seguido à risca pelo motivo explicado acima. Nos cenários necessários, agendamos uma carga completa para ser executada durante a noite.


1.2 Importação De Dados

Abaixo estão descritas todas as entidades que são importadas na integração standard entre Datasul e TOTVS SFA, assim como informações relevantes sobre as APIs e transformações desenvolvidas no Pentaho Spoon pelo time de integração da TOTVS.

Método de requisição: GET 

URL base: http://{IP}:{PORTA}/dts/datasul-rest/resources/prg/{TIPO}/v1/{ENTIDADE}

A URL base acima é o endereço base de vários serviços, que serão listados mais abaixo como entidade.

As informações do IP e a PORTA dependem da configuração do ambiente do cliente. O campo TIPO se refere as divisões de serviços da API Nativa Datasul que são: cdp, cep, ftp, pdp, qop, finapi. 


1.3 Requisições De Autenticação

A autenticação utilizada pelas APIs é a Basic Auth que usa a autenticação por um usuário e senha do Datasul e é convertido em um token base 64 no seguinte modelo:

usuario:senha

Convertendo para base64 temos o seguinte resultado: dXN1YXJpbzpzZW5oYQ==

Adicionando a tag Basic na frente temos o token final:

Basic dXN1YXJpbzpzZW5oYQ==

Esta tag é passada no header Authorization do step do Pentaho ou Postman (se for o caso)

Considerações: de preferência, o usuário e senha deve ser minúsculo e sem nenhum caractere especial.


1.4 Requisições Count

Como o nome já sugere, antes de requisitarmos os dados, contamos os registros que nos retornaram nas chamadas a seguir. Dessa maneira dividimos os registros em páginas, limitando a quantidade total por página (geralmente mil registros por página, mas é possível ser configurado rotina a rotina).
Isso deve ser seguido, pois requisições com um volume de retorno muito grande além gerar lentidão, podem derrubar o serviço do plugin.
Para gerar as paginações fazemos uma primeira requisição com um parâmetro chamado totalCount com o valor true, sendo assim o retorno informa o total de registros na entidade no campo totalHits, conforme mostra o Código 1 para que possamos calcular a quantidade de páginas e o número de registros por requisição.

Segue o exemplo:
URL: http://IP:PORTA/dts/datasul-rest/resources/prg/cdp/v1/cityPublic?totalCount=true 

Resultado:

{
"total": 1,
"totalHits": 5595,
"hasNext": true,
"items": [
{
"IBGECode": 5200050,
"regionCode": "CENTRO",
"sigla": "GO246",
"city": "ABADIA DE GOIAS",
"stateCode": "GO",
"countryName": "BRASIL",
"_expandables": [
"state",
"country"
],
"microRegionCode": ""
}
]
}


2 ENTIDADES

2.1 CanalVenda

Os dados da tabela canal-venda do Datasul são acessados através do endpoint /dts/datasulrest/resources/prg/cdp/v1/salesChannelPublic e são gravados na tabela tipologia no TOTVS SFA, com os seguintes campos. 

TOTVS SFATIPODATASUL
CODIGOCANALVENDAINTEGERsalesChannelCode (canal-venda.cod-canal-venda)
DESCRICAOSTRINGsalesChannelDesc (canal-venda.descricao) 


2.2 Cidade

Os dados das tabelas cidade, pais e unid-feder do Datasul, são acessados através do endpoint /dts/datasulrest/resources/prg/cdp/v1/cityPublic e são salvos nas tabelas cidade, pais e unidadefederativa do TOTVS SFA com os seguintes campos: 

TOTVS SFA TIPODATASUL
CIDADE.CODIGOMUNICIPIOINTEGERIBGECode (cidade.cdn-munpio-ibge)
CIDADE.NOMEMUNICIPIOSTRINGCity (cidade.cidade)
IDUNIDADEFEDERATIVAINTEGERstateCode (cidade.estado)
UNIDADEFEDERATIVA.SIGLASTRINGstateCode (cidade.estado)
NOMEPAISSTRINGcountryName (cidade.pais)
SIGLAPAISSTRINGcountryName (cidade.pais)


2.3 Cliente

Os dados das tabelas emitente, cidade e loc-entr do Datasul, são acessados através do endpoint/dts/datasulrest/resources/prg/cdp/v1/customerPublic e são salvos nas tabelas parceiro, local, localtipolocal, parceirolocal, parceirotransportador, parceirogrupoparceiro, pessoafisica, pessoajuridica, localemail, parceirotipoparceiro, limitecredito, localtelefone, usuariolocal, localtipologia, localtabelapreco, localcandicaopagamento, contatopessoa, contatopessoaemail, contatopessoatelefone do TOTVS SFA com o seguintes campos:

  • Sem rótulos