Consulta de Produtos

Regras de negócio

Atualmente, em uma empresa de comercialização de itens palpáveis, o produto é considerado a ferramenta de cunho fundamental para os processos de Compra e Venda.
A instituição adquire o(s) produto(s) para revenda ou a(s) matéria(s) prima(s) para produção de itens próprios.
Além disso, temos em meio ao processo de Compras, as solicitações internas, que tem por objetivo sanar as deficiências de materiais nos vários setores da empresa.

Esta documentação permitirá que você tenha uma visão completa de como efetuar o cadastro de um produto. Servirá também de apoio à consultas futuras para esclarecimentos de dúvidas, quanto à parametrização, principais tipos de erros e as possíveis maneiras de corrigi-los.

Dependências

Não possui dependências

Detalhes Técnicos

A entidade utilizada é a Produto que por sua vez instancia a tabela TGFPRO mapeando os campos principais.
Para realizarmos a busca através do Json, utilizamos o serviço "CRUDServiceProvider.loadRecords".

O serviço CRUDServiceProvider.loadRecords é um otimo serviço para ser utilizado para consulta de dados através do JSON.

No exemplo abaixo foi utilizado como filtro o campo CODPROD, porém você pode utilizar outros campos da entidade .

Para utilizarmos o filtro, basta acrescentar no corpo da requisição o código abaixo utilizando o criteria:

    "criteria": {
                "expression": {
                  "$": "this.CODPROD = ?"
                },
                "parameters": [
                   {
                      "$": "7",
                      "type": "I"
                   }
                ]
              }

Para melhor performance sempre utilize nas suas consultas apenas os campos necessários, para evitar tráfego de dados que não serão utilizados.

Descritivo de campos da entidade

Acesse aqui o dicionário de dados da tabela TGFPRO

Exemplo de uso:


URL de chamada: https://api.sankhya.com.br/gateway/v1/mge/service.sbr?serviceName=CRUDServiceProvider.loadRecords&outputType=json

Corpo de requisição
{
  "serviceName": "CRUDServiceProvider.loadRecords",
  "requestBody": {
    "dataSet": {
      "rootEntity": "Produto",
      "includePresentationFields": "N",
      "offsetPage": "0",
      "criteria": {
        "expression": {
          "$": "this.CODPROD = ?"
        },
        "parameters": [
          {
            "$": "7",
            "type": "I"
          }
        ]
      },
      "entity": {
        "fieldset": {
          "list": "CODPROD,DESCRPROD,LOCAL,MARCA,CODVOL"
        }
      }
    }
  }
}

Retorno em json:

 {
    "serviceName": "CRUDServiceProvider.loadRecords",
    "status": "1",
    "pendingPrinting": "false",
    "transactionId": "7EC52EBA04CF6E5DB89BA44EE3C5A4CF",
    "responseBody": {
        "entities": {
            "total": "1",
            "hasMoreResult": "false",
            "offsetPage": "0",
            "offset": "0",
            "entity": {
                "f1": {
                    "$": "CANELA EM PO"
                },
                "f0": {
                    "$": "7"
                },
                "f3": {
                    "$": "UN"
                },
                "f2": {
                    "$": "JUNCO"
                },
                "f4": {
                    "$": "1000"
                }
            },
            "metadata": {
                "fields": {
                    "field": [
                        {
                            "name": "CODPROD"
                        },
                        {
                            "name": "DESCRPROD"
                        },
                        {
                            "name": "MARCA"
                        },
                        {
                            "name": "CODVOL"
                        },
                        {
                            "name": "CODLOCALPADRAO"
                        }
                    ]
                }
            }
        }
    }
}
Language
Click Try It! to start a request and see the response here!