Consulta de Natureza

Regras de negócio

Para realizar o cadastro de natureza no sistema ERP deverá inicialmente configurar o parâmetro "Máscara para o Grupo de Naturezas - MASCGRUPONAT".
Após a configuração deste parâmetro é possível efetuar a configuração dos grupos de natureza.Nesta tela são cadastrados os grupos de natureza e nesses grupos é possível vincular as naturezas já existentes no sistema através da aba de naturezas.
Importante: O vínculo do Tipo de Natureza do Grupo de Naturezas deve ser feito antes de vincular as Naturezas que farão parte deste ou buscar somente as naturezas que condizem com o tipo de natureza vinculado ao Grupo.
OBS: Caso tenha alguma necessidade de configuração do ERP procure “Consultor” ou acesso o link de apoio:
https://ajuda.sankhya.com.br/hc/pt-br/articles/360044598514-Grupo-de-Naturezas

Dependências

Não possui dependências

Detalhes Técnicos

A entidade utilizada é a Natureza que por sua vez instancia a tabela TGFNAT 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 os campos CODNAT e CODNATPAI, 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.CODNAT = ? and this.CODNATPAI = ?" 
      },
      "parameters": [
         {
           "$": "1030000",
           "type": "I"
         },
         {
           "$": "1000000",
           "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 TGFNAT

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": "Natureza",
      "includePresentationFields": "S",
      "offsetPage": "0",
      "criteria": {
        "expression": {
          "$": "this.CODNAT = ? and this.CODNATPAI = ?" 
        },
        "parameters": [
           {
             "$": "1030000",
             "type": "I"
           },
           {
             "$": "1000000",
             "type": "I"
           }
        ]
      },                                       
      "entity": {
        "fieldset": {
          "list": "CODNAT,CODNATPAI,DESCRNAT"
        }
      }
    }
  }
}

Retorno em json:

{
    "serviceName": "CRUDServiceProvider.loadRecords",
    "status": "1",
    "pendingPrinting": "false",
    "transactionId": "45C1D0D33709B2BE0B302B84F9934778",
    "responseBody": {
        "entities": {
            "total": "1",
            "hasMoreResult": "false",
            "offsetPage": "0",
            "offset": "0",
            "metadata": {
                "fields": {
                    "field": [
                        {
                            "name": "CODNAT"
                        },
                        {
                            "name": "CODNATPAI"
                        },
                        {
                            "name": "DESCRNAT"
                        }
                    ]
                }
            },
            "entity": {
                "f0": {
                    "$": "1030000"
                },
                "f1": {
                    "$": "1000000"
                },
                "f2": {
                    "$": "Direito de uso"
                }
            }
        }
    }
}
Language
Click Try It! to start a request and see the response here!