Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Produto:Microsiga Protheus®
Ambiente:Todos 
Ocorrência:API para a consulta de valores e tributos do Pedido de venda.
Passo a Passo:

Configurando o Servidor Rest no Protheus, está disponível a API SalesTaxes. Essa API retorna os valores e Tributos do pedido de venda, sendo disponível nos verbos GET e POST.

{{host}}/index/salestaxes 

Verbo Get:

Retorna uma lista com os Valores e Tributos de um Pedido de Venda já gravado no Protheus, ou seja, o Pedido de Venda existente no sistema.

{{host}}/api/fat/v1/SalesTaxes/{SalesOrderId}

Observação:  A URL é complementada com o código do Pedido de Venda que desejamos as informações, não sendo necessário montar um Json com informações para essa consulta.

Após isto, é gerado o retorno com as informações do pedido de venda:

Verbo Post:

Retorna uma lista com os Valores e Tributos de uma Simulação de Pedido de Venda em Json.

{{host}}/api/fat/v1/SalesTaxes

Utilizamos a Ferramenta Postman para simular o envio do verbo Post para o Servidor Rest do Protheus.

A imagem demonstra um box apontando o método Post eo endereço do Servidor Rest com o complemento da API SalesTaxes.

Logo abaixo, é demonstrado o conteúdo do Json com suas respectivas informações que serão enviadas para que o Protheus inclua as informações:


Ao final, temos um Json de retorno enviado pelo Protheus. Neste arquivo, contém as informações que foram enviadas e incluídas no sistema.



Aviso
titleImportante

No envio do JSON, é fundamental que as tags de dados compostos por caracteres contenham a mesma quantidade de caracteres definida no dicionário de dados, mesmo que isto implique no envio de espaços.
Por exemplo,
a tag "CustomerIdDelivery": "000000" possui 6 caracteres, enquanto no dicionário de dados o campo A1_COD tem um tamanho de 8 caracteres. Isso impedirá a recuperação dos dados do imposto, pois o registro não será localizado no banco. Para evitar esse problema, é necessário preencher a tag com o mesmo tamanho especificado no dicionário.

Campo A1_COD → Tamanho 8

Código do Produto → "000000"

Tag "CustomerIdDelivery" → "000000  "     

os campos de cliente no padrão possuem tamanho de 6 caracteres, logo para um cliente cadastrado com apenas 5 posições ("00001") a tag CustomerIdDelivery" eve ser enviada contendo o espaço vazio, totalizando 6 caracteres ( "00001 "). Este comportamento visa evitar que o processo "manipule" o dado complementando o valor, o que poderia acarretar em assumir valores indevidos no processamento, alem do tempo de processamento dos dados que seria estendido gerando risco no timming de retorno de integrações e serviços.

O Protheus retornará um Json após a execução da API SalesTaxes e, neste momento, gerará a tag "codigo_produto" com o tamanho do campo de código de produto (B1_COD) contido na tabela SB1.  Caso o código não preencha o tamanho total do campo, serão incluídos espaços em branco para completar o seu tamanho.

Exemplo:

Campo B1_COD → Tamanho 30

Código do Produto → "WFRS-12"

Tag "codigo_produto" → "WFRS-12                      "

Pode lhe interessar:

Habilitar o Serviço de APIs para o produto Protheus.

API para Consulta de Valores e Tributos (SalesTaxes) em Pedidos de Venda TOTVS

...