EMBLOCAMENTO FÍSICO VIA WEB SERVICE REST

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Supply Chain - Agroindústria

Módulo:

SIGAAGR

Rotina:

Rotina

Nome Técnico

Emblocamento Físico API REST

UBAW09API

Rotina(s) envolvida(s)

Nome Técnico

Funções do emblocamento físicoUBAW09I

País(es):

Brasil

Banco(s) de Dados:

Todos

Tabelas Utilizadas:

DXI - Fardos de algodão em pluma

DXD - Blocos

Sistema(s) Operacional(is):

Windows, Linux, Unix


Descrição

Para os usuários que possuem algum aplicativo customizado, e que precisam realizar o emblocamento físico de fardinhos (SIGAAGR), foi disponibilizado o método Web Service REST.

Para utilização, é necessário a atualização do produto e a configuração do Web Service REST, conforme descrito nos pré-requisitos.


Método Publicado

FonteUBAW09API
Nome do ServiçoEmblocamento físico


Pré-requisitos para Utilização

  • Atualização do Microsiga Protheus com versão igual ou superior a 12.1.17.
  • Configuração do AppServer para disponibilizar as rotinas publicadas com o Web Service REST.
  • Após a configuração do Web Service REST, ao executar o appserver via console, será apresentada uma mensagem, informando que o Web Service REST está habilitado, vide imagem abaixo.


  • Pelo navegador de Internet, é possível visualizar todos os serviços disponíveis, inclusive a API UBAW09API

  • API UBAW09API.


Métodos disponíveis no API UBAW09API.


Exemplo de Utilização

Para realizar testes, pode ser utilizado qualquer programa de sua preferência, que teste API Web Service REST.

Como exemplos de programas, podemos citar o SoapUI ou a extensão Postman do Navegador Chrome. Ambos são excelentes aplicativos.


Utilizando o Postman para Realizar uma busca/manipulação de fardinhos

A API UBAW09API disponibiliza o método GET, onde é retornado o arquivo de exemplo no formato JSON, que poderá ser utilizado para executar o método POST.

Na ferramenta Postman, copie o exemplo retornado, altere para executar o PUT e cole o exemplo no Body (corpo).
Altere as informações dos campos para dados válidos da base de dados e execute a simulação (mais abaixo tem a explicação de cada campo do arquivo JSON).



Exemplo de arquivo JSON

Arquivo JSON de entrada para ser utilizado como base.

{
    "hasNext": true,
    "item": [
        {
            "warehouse": "02",
            "pack": "000010",
            "id": 1,
            "crop": "2018",
            "recno": 28,
            "sourcebranch": "D MG 01",
            "barCode": "00001020304 00000284",
            "embfis": "1"
        }
          ]
}


Arquivo JSON de resposta do GET

   URL: http://localhost:8080/rest/UBAW09API/v1/bales?Page=10&PageSize=5&SourceBranch=D MG 01

       Page: o número da página que será retornado (caso não informado, o sistema assume o valor 1) OPCIONAL

       PageSize: Quantidade de registros por página (caso não informado, o sistema assume o valor de 30) OPCIONAL

    SourceBranch: Filial do sistema usado na busca dos registros. Como a tabela em questão é exclusiva, caso este parâmetro não seja informado, a consulta retornará vazia. OBRIGATÓRIO

{
    "hasNext": true,
    "item": [
        {
            "branch": "D MG 01",
            "warehouse": "",
            "pack": "000002",
            "id": 1,
            "recno": 1,
            "barCode": "00078985358310000014"
        },
        {
            "branch": "D MG 01",
            "warehouse": "",
            "pack": "000002",
            "id": 2,
            "recno": 2,
            "barCode": "00078985358310000021"
        },
		{
            "maxRecno": 871,
            "lastRecno": 30
        }
    ]
}

Observações:

  1. Cada grupo de chave { } representa um registro do banco de dados.
  2. A tag "hasNext" significa que os ainda existem registros retornados além dos que foram retornados.
  3. A tag "lastRecno" representa o id do último registro retornado na consulta
  4. A tag "maxRecno" representa o último registro de toda a consulta, é o máximo que a busca pode retornar.

Dados técnicos: TODOS OS CAMPOS ABAIXO SÃO OBRIGATÓRIOS.

            "warehouse": local, tipo:char, tamanho: 2
            "pack": bloco, tipo: char, tamanho: 6
            "id": id, tipo: numérico, tamanho 2
            "crop": safra,tipo: char, tamanho: 15
            "sourcebranch": filial, tipo: char, tamanho: 8
            "barCode": etiqueta, tipo: char, tamanho: 20
            "embfis": emblocado físico?, tipo: char,tamanho: 1  (1 - sim, 2 - não)