AAl configurar el servidor Rest, la API de SalesTaxes está disponible para consultar valores e impuestos en el pedido de ventaa.

Producto:

Microsiga Protheus®

Entorno:

Todos 

Ocurrencia:

API para la consulta de valores e impuestos del pedido de venta.

Paso a Paso:

Configurando el servidor Rest en el Protheus, la API de SalesTaxes está disponible. Esta API devuelve los valores e impuestos del pedido de venta, y está disponible en los verbos GET y POST.

{{host}}/index/salestaxes 

Verbo Get:

Devuelve una lista de los valores e impuestos de un Pedido de Venta ya registrada en el Protheus, es decir, el Pedido de Venta existente en el sistema.

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

Observación:  La URL se complementa con el código del pedido de venta que queremos la información, y no es necesario montar un Json con informaciones para esta consulta.

Después de esto, se genera la devolución con la información del pedido de venta:

Verbo Post:

Devuelve una lista de los valores e impuestos de una simulación de un pedido de venta en Json.

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

Utilizamos la herramienta Postman para simular el envío del Verbo Post al servidor Rest del Protheus.

La imagen muestra un cuadro que apunta al método Post y la dirección del servidor Rest con el complemento de la API SalesTaxes.

A continuación, se muestra que el contenido de la Json con sus respectivas informaciones que se envían para que Protheus  incluya las informaciones:


Al final, tenemos un Json de devolución enviado por el Protheus. Este archivo, contiene la información que se ha enviado e incluido en el sistema..


Validación de campos obligatorios

El parámetro MV_VLCPAPI establece la validación de campos obligatorios para la generación de pedidos.

Cuando se configura con el valor .T., el sistema realiza la verificación de campos obligatorios durante la consulta de tributos por medio de la API SalesTaxes.


Importante

Al enviar el JSON, es fundamental que las tags de datos compuestos por caracteres contengan la misma cantidad de caracteres definida en el diccionario de datos, aunque esto implique en el envío de espacios.
Por ejemplo, los campos de cliente en el estándar tienen el tamaño de 6 caracteres, consecuentemente, para un cliente registrado con solamente 5 espacios ("00001"), la tag "CustomerIdDelivery" debe enviarse con el espacio vacío, totalizando 6 caracteres ( "00001 "). Este comportamiento busca evitar que el proceso "manipule" el dato complementando el valor, lo que podría acarrear en asumir valores indebidos en el procesamiento, además del tiempo de procesamiento de los datos que sería extendido generando riesgo en el timming de devolución de integraciones y servicios.

El Protheus devolverá un Json después de que se ejecute la API de SalesTaxes y ahora generará la tag "codigo_produto" con el tamaño del campo de código de producto (B1_COD) contenido en la tabla SB1.  Si el código no completa el tamaño total del campo, se incluirán espacios en blanco para completar su tamaño.

Ejemplo:

Campo B1_COD → tamaño 30

Código del Producto → "WFRS-12"

Tag "codigo_produto" → "WFRS-12                      "

Puede ser de su interés:

Habilite el servicio de las API para el producto Protheus.

API para la consulta de valores e impuestos (Sales Taxes) en Pedidos de Venta TOTVS