Como Criar um Webservice REST em ADVPL para Consulta de Estoque no Protheus

💡 Se gostou deste conteúdo, compartilhe com quem precisa
Neste artigo técnico, você aprenderá como criar um Webservice RESTful em ADVPL utilizando recursos nativos do TOTVS Protheus. O objetivo é desenvolver um endpoint para consulta de saldo em estoque, com base em parâmetros como produto, filial e armazém, utilizando GET e integração JSON.

 

Visão geral: Criando um Webservice RESTful no Protheus

Para muitas empresas que utilizam o TOTVS Protheus, disponibilizar informações de forma integrada com outras aplicações é essencial. Este exemplo apresenta uma estrutura funcional de um serviço RESTful que retorna o estoque disponível de um determinado produto.A criação desse tipo de webservice permite o consumo por sistemas terceiros, como e-commerce, ERPs externos, WMS e aplicativos, tornando o ecossistema da empresa mais integrado e eficiente.

##

Estrutura básica do Webservice REST

O serviço é iniciado com uma função principal e a definição do Webservice usando a diretiva WSRESTFUL. Veja como é feita essa configuração básica:

###

Principais pontos dessa estrutura

– **WSRESTFUL**: Define a classe do Webservice.
– **WSDATA**: Mapeia os parâmetros que serão recebidos via URL.
– **WSMETHOD GET**: Define o método HTTP e a rota que será exposta.

##

Tratamento da Requisição GET

O método GET implementa a lógica para extrair os parâmetros, consultar o banco de dados e devolver os dados em formato JSON:

###

O que está acontecendo aqui?

– Validação da chave de segurança com u_FBSegApp.
– Chamada da função FBESTA02, responsável pela consulta de dados.
– Serialização dos dados usando FWJsonSerialize.
– Resposta JSON formatada enviada ao cliente via SetResponse.

##

Consulta ao banco de dados: a função FBESTA02

Esta função é responsável por montar a SQL dinamicamente, respeitando os filtros recebidos via URL.

##

Implementação Completa

Veja abaixo o código completo implementado conforme descrito ao longo do artigo:

##

Conclusão

Ao estruturar um Webservice RESTful em ADVPL, como demonstrado neste artigo, é possível oferecer serviços modernos e seguros para integração de sistemas. Essa abordagem é ideal para conectar o Protheus a aplicativos e ferramentas externas, automatizando rotinas e garantindo agilidade operacional.

Precisa de ajuda com este assunto no Protheus? Fale comigo.