0% acharam este documento útil (0 voto)
23 visualizações4 páginas

Configuração da API Rest Protheus

A documentação descreve a configuração necessária para o funcionamento da API REST do Protheus, incluindo ajustes no arquivo appserver.ini e a criação de uma User Function específica. O exemplo de uso da API envolve o envio de dados JSON via método PUT para uma rota específica, com tratamento de erros e configuração de cabeçalhos e itens da solicitação. Após a execução do processo, é verificado se houve erros, retornando um status apropriado conforme o resultado da operação.

Enviado por

Allax Souza
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
23 visualizações4 páginas

Configuração da API Rest Protheus

A documentação descreve a configuração necessária para o funcionamento da API REST do Protheus, incluindo ajustes no arquivo appserver.ini e a criação de uma User Function específica. O exemplo de uso da API envolve o envio de dados JSON via método PUT para uma rota específica, com tratamento de erros e configuração de cabeçalhos e itens da solicitação. Após a execução do processo, é verificado se houve erros, retornando um status apropriado conforme o resultado da operação.

Enviado por

Allax Souza
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd

Documentação API Rest Protheus

Primeiramente é necessário configurar todas as informações do


[Link]. Para teste foi criado appserver homologação API e o ambiente
API, acessado através de [Link]

De maneira geral o appserver do Protheus deve possuir as TAGS abaixo


para funcionar o REST API. Onde o Port é a porta da nossa rota e a URL é o
endereço pós porta.

Abaixo temos os includes necessários, também temos a User Function


wsSolCom() que reserva a chamada da execução da API. Logo abaixo temos
o chamado WSRESTFUL wsSolCom (é importante o nome que procede o
WSRESTFUL tem que ser igual ao nome da User Function.
A primeira “description” é a descrição da API em geral. No exemplo
acima a descrição da API é “Serviço REST para inclusão de Solicitação de
Compra”.

A segunda “description” é a descrição do método da API. No exemplo


acima a descrição do método, que é PUT, é “WS Inclusão de compras”. E
WSSYNTAX, que procede a descrição do método da API, é a sintaxe para
formar a rota de requisição do webservice em questão.

Para rota de teste passa enviar informações JSON para o link


[Link] através do método PUT. Pelo Insomnia
temos o seguinte exemplo teste, onde o array de envio é composto pelas
propriedades “Solicitante” e “Items”, onde a propriedade “items” é
representada por um array de “produto” e “quantidade”.

Abaixo temos as variáveis, algumas delas merecem destaque como o


cJson (Local cJson := Self:GetContent()), que é a variável que irá receber o
JSON da requisição. Além do que estamos definindo o recebimento como
JSON e fazemos tratativa para gerar o número de solicitação de compras, que
precisa ser exclusivamente único)
Continuando nosso código temos tratativa, para verificar se há
algum erro com Json. Caso tenha ele retorna status 500 com mensagem
‘Parser Json Error’. Também configurados o cabeçalho com informações como
“C1_NUM”, “C1_SOLICIT” e “C1_EMISSAO”, onde o primeiro é codificado para
ser gerado (observar imagem acima), o “C1_SOLICIT” que é recebido via
JSON e o “C1_EMISSAO” que pega a data do banco.

Mais a frente também é configurado os itens das linhas, onde


temos “C1_ITEM” que é a linha do item na solicitação, o “C1_PRODUTO” que
é o produto recebido pelo JSON, o “C1_QUANT” que é a quantidade do
produto recebida pelo JSON e o “C1_ORIGEM” que foi configurado para ser
‘WSHELLO’.

E logo depois de configurado o cabeçalho e os itens é executado


o MSExecAuto.

Após a execução do MSExecAuto é verificado se há algum erro,


retornando status 500 com mensagem ‘erro’.
Caso esteja tudo nos conformes teremos o retorno abaixo:

Você também pode gostar