PUBLICAÇÃO WEB SERVICE REST DO CADASTRO DE CONTAMINANTES

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Supply Chain - Agroindústria

Módulo:

SIGAAGR

Rotinas:

Rotina

Nome Técnico

Cadastro de contaminantes

UBAA040

País:

Brasil

Bancos de Dados:

Todos

Tabelas Utilizadas:

N76 e N77

Sistemas Operacionais:

Todos


Pré-requisito

  No que diz respeito ao sistema, a funcionalidade de integração está funcional. Porém, é necessário configurar o AppServer para que o Protheus disponibilize a URL de acesso ao serviço de Web Service REST do sistema. Uma vez configurado o serviço, a integração está pronta para ser utilizada.

  Para isso, segue link para consulta: 1. Configuração do REST do Protheus


Descrição

  Para os usuários que possuem algum aplicativo customizado, e que precisam consultar os contaminantes já cadastrados no produto Gestão Agroindústria (SIGAAGR), foi disponibilizado o método Web Service REST. 

Método Publicado

Fonte

UBAA040

Exemplo de Utilização

Para realizar testes, pode-se utilizar qualquer programa de sua preferência, que teste API Web Service REST. O SoapUI e a extensão Postman do Navegador Chrome são exemplos de bons programas para isso. 




OBSERVAÇÃO: ATÉ O MOMENTO, APENAS A CONSULTA DOS CONTAMINANTES JÁ CADASTRADOS ANTERIORMENTE ESTÁ DISPONÍVEL.



Consultando informações

O cadastro de contaminantes é composto por duas tabelas: N76(cabeçalho) e N77(dados). Isso torna obrigatório a passagem de um parâmetro específico (FIRSTLEVEL = FALSE) para a consulta, senão, a consulta retorna apenas a tabela N76.

Abaixo, uma consulta dos contaminantes através do método GET.


Existem várias possibilidades de se restringir quais dados o GET irá retornar. Segue link da documentação relativa a este assunto: http://tdn.totvs.com.br/pages/viewpage.action?pageId=271671548



Segue, para consulta, a estrutura JSON dos dados que a consulta trouxe no exemplo acima.


{
     "total": 4,
     "count": 1,
     "startindex": 1,
     "resources": [
     {
          "id": "UBAA040",
          "operation": 1,
          "pk": "RCBNRyAwMSAwMDAwMDM=",
          "models": [
          {
               "id": "MdFieldN76",
               "modeltype": "FIELDS",
               "fields": [
               {
                    "id": "N76_FILIAL",
                    "order": 1,
                    "value": "D MG 01"
               },
               {
                    "id": "N76_CODIGO",
                    "order": 2,
                    "value": "000003"
               },
               {
                    "id": "N76_NMCON",
                    "order": 3,
                    "value": "AÇUCAR"
               },
               {
                    "id": "N76_DESCON",
                    "order": 4,
                    "value": "NIVEL DE CONTAMINAÇÃO DE AÇUCAR"
               },
               {
                    "id": "N76_SITCON",
                    "order": 5,
                    "value": "1"
               },
               {
                    "id": "N76_TPCON",
                    "order": 6,
                    "value": "5"
               },
               {
                    "id": "N76_TMCON",
                    "order": 7,
                    "value": "5"
               },
               {
                    "id": "N76_VLPRC",
                    "order": 8,
                    "value": "2"
               }
               ],
                    "models": [
                    {
                         "id": "MdGrdN77Lt",
                         "modeltype": "GRID",
                         "optional": 1,
                         "struct": [
                         {
                              "id": "N77_FILIAL",
                              "order": 1
                         },
                         {
                              "id": "N77_SEQ",
                              "order": 2
                         },
                         {
                              "id": "N77_RESULT",
                              "order": 3
                         },
                         {
                              "id": "N77_FAIINI",
                              "order": 4
                         },
                         {
                              "id": "N77_FAIFIM",
                              "order": 5
                         }
                         ],
                              "items": [
                              {
                                   "id": 1,
                                   "deleted": 0,
                                   "fields": [
                                   {
                                        "id": "N77_FILIAL",

                                        "value": "D MG 01"

                                   },

                                   {

                                        "id": "N77_SEQ",

                                        "value": "01"

                                   },

                                   {

                                        "id": "N77_RESULT",

                                        "value": "BAIXA"

                                   },

                                   {

                                        "id": "N77_FAIFIM",

                                        "value": "5.32000"

                                   }

                                   ]

                         },

                         {

                              "id": 2,

                              "deleted": 0,

                              "fields": [

                              {

                                   "id": "N77_FILIAL",

                                   "value": "D MG 01"

                              },

                              {

                                   "id": "N77_SEQ",

                                   "value": "02"

                              },

                              {

                                   "id": "N77_RESULT",

                                   "value": "MEDIO"

                              },

                              {

                                   "id": "N77_FAIINI",

                                   "value": "5.33000"

                              },

                              {

                                   "id": "N77_FAIFIM",

                                   "value": "8.00000"

                              }

                         ]

                         },

                         {

                              "id": 3,

                              "deleted": 0,

                              "fields": [

                              {

                                   "id": "N77_FILIAL",

                                   "value": "D MG 01"

                              },

                              {

                                   "id": "N77_SEQ",

                                   "value": "03"

                              },

                              {

                                   "id": "N77_RESULT",

                                   "value": "ALTO"

                              },

                              {

                                   "id": "N77_FAIINI",

                                   "value": "8.01000"

                              },

                              {

                                   "id": "N77_FAIFIM",

                                   "value": "20.00000"

                              }

                              ]

                         }

                         ]

                    },

                    {

                         "id": "MdGridN77Fa",

                         "modeltype": "GRID",

                         "optional": 1,

                         "struct": [

                         {

                              "id": "N77_FILIAL",

                              "order": 1

                         },

                         {

                              "id": "N77_SEQ",

                              "order": 2

                         },

                         {

                              "id": "N77_RESULT",

                              "order": 3

                         },

                         {

                              "id": "N77_FAIINI",

                              "order": 4

                         },

                         {

                              "id": "N77_FAIFIM",

                              "order": 5

                         }

                         ],

                    "items": [

                    {

                         "id": 1,

                         "deleted": 0,

                         "fields": [

                         {

                              "id": "N77_FILIAL",

                              "value": "D MG 01"

                         },

                         {

                              "id": "N77_SEQ",

                              "value": "01"

                         },

                         {

                              "id": "N77_RESULT",

                              "value": "BAIXA"

                         },

                         {

                              "id": "N77_FAIFIM",

                              "value": "5.32000"

                         }

                         ]

                    },

                    {

                         "id": 2,

                         "deleted": 0,

                         "fields": [

                         {

                              "id": "N77_FILIAL",

                              "value": "D MG 01"

                         },

                         {

                              "id": "N77_SEQ",

                              "value": "02"

                         },

                         {

                              "id": "N77_RESULT",

                              "value": "MEDIO"

                         },

                         {

                              "id": "N77_FAIINI",

                              "value": "5.33000"

                         },

                         {

                              "id": "N77_FAIFIM",

                              "value": "8.00000"

                         }

                         ]

                    },

                    {

                         "id": 3,

                         "deleted": 0,

                         "fields": [

                         {

                              "id": "N77_FILIAL",

                              "value": "D MG 01"

                         },

                         {

                              "id": "N77_SEQ",

                              "value": "03"

                         },

                         {

                              "id": "N77_RESULT",

                              "value": "ALTO"

                         },

                         {

                              "id": "N77_FAIINI",

                              "value": "8.01000"

                         },

                         {

                              "id": "N77_FAIFIM",

                              "value": "20.00000"

                         }

                         ]

                    }

                    ]

               }

               ]

          }

          ]

     }
     ]
}



Dados técnicos


Campo: N76_FILIAL, Tipo: Caracter, Tamanho: 2, Descrição: Filial do Sistema;

Campo: N76_CODIGO, Tipo: Caracter, Tamanho: 6, Descrição: Código do Contaminante;

Campo: N76_NMCON, Tipo: Caracter, Tamanho: 15, Descrição: Nome Contaminante ;

Campo: N76_DESCON, Tipo: Caracter, Tamanho: 50, Descrição: Descrição Contaminante;

Campo: N76_SITCON, Tipo: Caracter, Tamanho: 1, Descrição: Situação do Contaminante ;

Campo: N76_TPCON, Tipo: Caracter, Tamanho: 1, Descrição: Tipo de Resultado;

Campo: N76_TMCON, Tipo: Numérico, Tamanho: 3, Descrição: Tamanho do Resultado de Contaminante;

Campo: N76_VLPRC, Tipo: Numérico, Tamanho: 4, Descrição: Precisão do Resultado de Contaminante;

Campo: N77_FILIAL, Tipo: Caracter, Tamanho: 2, Descrição: Filial do Sistema;

Campo: N77_SEQ, Tipo: Caracter, Tamanho: 2, Descrição: Sequência;

Campo: N77_RESULT, Tipo: Caracter, Tamanho: 46, Descrição: Resultado;

Campo: N77_FAIINI, Tipo: Numérico, Tamanho: 16, Descrição: Faixa Inicial;

Campo: N77_FAIFIM, Tipo: Numérico, Tamanho: 16, Descrição: Faixa Final;