ÍNDICE

  1. Visão Geral
  2. Exemplo de utilização
  3. Tela - Integração para Aplicações Externas
  4. Tela - Aplicações
  5. Tela - Entidades para Integração
  6. Tela - Inclusão de Campo Extra
  7. Exemplo de API utilizando webservice


01. VISÃO GERAL

Ferramenta para configuração e execução de integrações de dados para aplicações externas, utiliza APIs desenvolvidas com tecnologia Progress que são executadas em um agendador de tarefas (RPW).

As integrações disponibilizadas pela TOTVS estão pré-cadastradas e suas APIs de integração de dados estão prontas para uso, um exemplo é a integração padrão com a MasterSales

É possível cadastrar manualmente integrações com outras aplicações e definir seus parâmetros de execução, porém será necessário desenvolver APIs customizadas seguindo as especificações desse documento.


02. EXEMPLO DE UTILIZAÇÃO

03. TELA - INTEGRAÇÃO PARA APLICAÇÕES EXTERNAS

Essa interface pode ser acessada no menu do Datasul com o nome de "Integração para Aplicações Externas", ela permite listar, editar, remover e cadastrar integrações disponibilizadas pela TOTVS e integrações customizadas.


Ações Disponíveis

AçãoDescrição
AdicionarInclusão de integrações.
EditarEdição de integrações.
ExcluirExclusão de integração e seus registros relacionados (Aplicações, Entidades e  Campos Extras).
AplicaçõesAbre a interface que lista as Aplicações cadastradas para a integração.
PesquisaPesquisa por nome e descrição de integrações.

Lista de Integrações

CampoDescrição
Nome IntegraçãoNome da integração.
DescriçãoDescrição da integração.
Tipo Integração

Tipo da integração, possui dois tipos disponíveis: 

EAI - Integração que utiliza a ferramente EAI para comunicação de dados (Exige o uso de adapters para o EAI).

WEBSERVICE - Integrações que utiliza webservices (Exige API de comunicação exemplificadas neste documento).

Campo Descrição
IntegraçõesCombo que permite ao usuário escolher cadastrar uma nova aplicação ou utilizar uma disponibilizada pela TOTVS.
Nome IntegraçãoPermite definir o nome de uma integração. Campo habilitado apenas para o cadastro\edição de uma nova integração.
Descrição Permite definir a descrição de uma integração. Campo habilitado apenas para o cadastro\edição de uma nova integração.
Tipo IntegraçãoTipo da integração que será utilizada. Campo habilitado apenas para o cadastro de uma nova integração.


04. TELA - APLICAÇÕES

Essa interface é acessada por meio do botão "Aplicações" da interface "Integração para Aplicações Externas", seu objetivo é permitir o cadastro e visualização de aplicações com o qual uma integração se comunica.


Ações Disponíveis

AçãoDescrição
Nova AplicaçãoInclusão de aplicação.
PesquisaPesquisa por nome de aplicações.
Executar IntegraçãoPermite executar todas as entidades de integração para uma aplicação.
EntidadesAbre a interface de lista de entidades.
Outras açõesExibe ações: Editar, Copiar e Excluir aplicação.
Exibir detalhesExibe os detalhes de uma aplicação e os campos extras adicionados.
EditarPermite edição de uma aplicação.
CopiarPermite cópia de uma aplicação.
ExcluirPermite exclusão de uma aplicação.


Lista de Aplicações

CampoDescrição
NomeNome da aplicação.
ExecutadoData e hora da última execução de integração da aplicação.
Ativo

Indica se a aplicação esta habilitada para execução.

Servidor de Agendamento (RPW)

Nome do servidor de agendamento (RPW) que executará a integração dos dados.

Para execução é necessário que o servidor esteja ativo. 

Endereço (Host)Endereço (domínio ou ip) do servidor da aplicação externa que será realizado a integração de dados. 
PortaPorta do servidor da aplicação externa - Informação utilizada conforme necessidade da aplicação externa.
Tempo Limite para RequisiçãoTempo limite para completar uma requisição de integração - Informação utilizada conforme necessidade da aplicação externa.
Registros por RequisiçãoQuantidade de registros por requisição - Informação utilizada conforme necessidade da aplicação externa.
Usuário IntegraçãoUsuário para autenticar em webservices de aplicações externas - quando utilizado autenticação básica .
Senha Usuário IntegraçãoSenha de usuário para autenticar em webservices de aplicações externas - quando utilizado autenticação básica  (A senha fica escondida, para visualizar o usuário deve clicar no ícone com formato de olho ).
Token (Chave de Acesso Fixa)Token para autenticar em webservices de aplicações externas - quando utilizado autenticação básica.
Campos extrasSerão apresentados campos extras e seus dados, se forem adicionados no cadastro da aplicação.


Adicionar Aplicações (Web Service)

CampoDescrição
Nome (Descrição)Informe o nome da aplicação
Servidor de AgendamentoSelecione o servidor de agendamento (RPW) que executará a integração dos dados.
AtivoIndique se a aplicação está habilitada ou desabilitada para execução.
EndereçoEndereço (domínio ou ip) do servidor da aplicação externa que sera realizado a integração de dados. NÃO deve conter o prefixo como http\\ ou https\\. 
PortaPorta do servidor da aplicação externa - Informação utilizada conforme necessidade da aplicação externa.
Tempo Limite para Requisição (Segundos)Tempo limite para completar uma requisição de integração - Informação utilizada conforme necessidade da aplicação externa.
Registros por RequisiçãoQuantidade de registros por requisição - Informação utilizada conforme necessidade da aplicação externa.
Usuário IntegraçãoUsuário para autenticar em webservices de aplicações externas - quando utilizado autenticação básica. 
Senha Usuário IntegraçãoSenha de usuário para autenticar em webservices de aplicações externas - quando utilizado autenticação básica (A a senha fica escondida para visualizar o usuário deve clicar no ícone com formato de olho ).
Token (Chave de Acesso Fixa)Token para autenticar em webservices de aplicações externas - quando utilizado autenticação básica. 
Inclusão de Campo ExtraBotão que abre a interface para inclusão de campos extras, esses campos são utilizados para armazenar informações customizadas e podem ser recuperadas na API de execução de integração (veja exemplo de API em anexo).


05. TELA - ENTIDADES PARA INTEGRAÇÃO

Essa interface é acessada por meio do botão "Entidades" disponível em uma aplicação, cadastrada na interface "Aplicações", seu objetivo é permitir o cadastro e visualização de entidades (webservices), que serão utilizados para enviar ou receber dados de uma integração. Cada entidade pode executar uma API desenvolvida com linguagem Progress OpenEdge que pode ser parte do produto padrão Datasul ou customizada seguindo os exemplos em anexo nesta documentação. As APIs que são responsáveis por realizar a busca, inclusão, alteração ou exclusão de dados.


Ações Disponíveis

AçãoDescrição
Executar EntidadeRealiza agendamento no servidor de execução (RPW) para execução da API da entidade, que executará a integração de dados.
Incluir EntidadeAbre o formulário para cadastro de uma entidade (Integrações disponibilizadas pela TOTVS podem conter campos bloqueados)
EditarAbre o formulário para edição de uma entidade (Integrações disponibilizadas pela TOTVS podem conter campos bloqueados)
ExcluirAbre confirmação de exclusão de uma entidade (Integrações disponibilizadas pela TOTVS podem conter campos bloqueados)
CopiarAbre confirmação de exclusão de uma entidade (Integrações disponibilizadas pela TOTVS podem conter campos bloqueados)
Executar IntegraçãoRealiza agendamento no servidor de execução (RPW) para execução das APIs de todas as entidades da aplicação selecionada.


Lista de Entidades

CampoDescrição
AtivoDefine se a integração está ativada, integrações desativadas não serão executadas ao clicar no botão "Executar Entidade" ou "Executar Integração"
NomeNome da integração, esse nome pode ser utilizado na API da entidade para identificá-la
Transação/ServiçoNome da transação quanto utilizado o tipo de integração EAI. Para as integrações do tipo WEBSERVICE será a URL do serviço (sem o nome do host da aplicação ).
Versão Transação/ServiçoVersão da transação ou do webservice.
API Execução RPWNome do programa progress que define a API que fará a integração dos dados.
BancoNome do banco de dados que será utiizado pela API para integração com EAI.
Modo SuportadoModos de operação disponíveis para integração do tipo EAI (ENVIO, RECEBIMENTO, AMBOS). Para integração do tipo WEBSERVICE será sempre AMBOS.
Modo Habilitado

Modo de operação da entidade.

PadrãoDefine se a entidade pertence a uma integração padrão disponibilizada pela TOTVS.

Incluir\Alterar Entidades

CampoDescrição
NomeNome da integração, esse nome pode ser utilizado na API da entidade para identificá-la Transação/Serviço.
Transação/ServiçoNome da transação quanto utilizado o tipo de integração EAI. Para as integrações do tipo WEBSERVICE sera a URL  do serviço (sem o nome do host da aplicação ).
Versão Transação/ServiçoVersão da transação ou do WEBSERVICE.
API Execução RPWNome do programa progress que define a API que fará a integração dos dados. Esse programa progress deve estar no propath do Datasul. Exemplo: apicustomizada/integracliente.p.
BancoNome do banco de dados que será utiizado pela API para integração com EAI. Opcional para integrações com WEBSERVICES.
Modo SuportadoModos de operação disponíveis para integração do tipo EAI (ENVIO, RECEBIMENTO, AMBOS). Para integração do tipo WEBSERVICE será sempre AMBOS.
Modo Habilitado

Modo de operação para integração do tipo EAI poderão ser ENVIO, RECEBIMENTO ou AMBOS.

Modo de operação para integração do tipo WEBSERVICE poderão ser GET, PUT, POST, PATCH ou DELETE.

AtivoDefine se a integração esta ativada, integrações desativadas não serão executadas ao clicar no botão "Executar Entidade" ou "Executar Integração".
Inclusão de Campo ExtraBotão que abre a interface para inclusão de campos extras, esses campos são utilizados para armazenar informações customizadas e podem ser recuperadas na API de execução de integração (veja exemplo de API em anexo).
SalvarGrava os dados da entidade e dos campos extras.

06. TELA - INCLUSÃO DE CAMPO EXTRA


Ações Disponíveis

Campo Descrição
Tipo do Campo

Tipo do campo que será adicionado ao formulário.

Tipo disponíveis:

CHARACTER para guardar informações de texto.

PESQUISA (Zoom) pesquisa de registros em uma tabela de banco de dados, gera uma interface de pesquisa.

NÚMERO INTEIRO para números do tipo inteiro sem ponto ou vírgula.

DATA para informar datas.

CAIXA DE SELEÇÃO (Checkbox) para guardar informações do tipo SIM ou NÃO.


IdentificadorNome interno do campo, utilize essa informação para buscar um campo especifico na API (Veja exemplo de API  em anexo). 
Título do CampoTítulo do campo que será exibido no formulário.
Sequência no FormulárioSequência do campo extra no formulário, será adicionado após os campos fixos.
CampoDisponível apenas para campos do tipo PESQUISA, permite informar o campo de uma tabela de banco de dados para gerar a pesquisa. Deve ser igual ao nome na tabela do banco de dados.
Campo Descrição do ZoomDisponível apenas para campos do tipo PESQUISA, permite informar o campo de uma tabela de banco de dados para gerar a pesquisa. Deve ser igual ao nome na tabela do banco de dados. Esse campo será a descrição do campo de pesquisa.
Nome da tabela no banco de dadosDisponível apenas para campos do tipo PESQUISA, permite informar o nome da tabela do banco de dados que será utilizada para gerar a interface de pesquisa.
Nome lógico do banco de dadosDisponível apenas para campos do tipo PESQUISA, nome lógico do banco de dados que será utilizado para gerar a interface de pesquisa.
SalvarAdiciona o campo extra no formulário da entidade ou da aplicação.


07. EXEMPLO DE API UTILIZANDO WEBSERVICE