Versão

 Disponível à partir da versão 12.1.8 da linha RM.

GetAll com filtro

Retorna os registros do dataserver representado pelo identificador da URL {id}. Tal qual no método Get, no json retornado será acrescentado o campo id para cada registro. O registro inicial,a quantidade de registros a serem retornados, e um filtro podem ser definidos na url.

Parâmetros

  • start - Registro inicial a ser retornado. (padrão = "0")
  • limit - Quantidade máxima de registros a serem retornados. (padrão = "0", retorna todos os registros)
  • filter - Filtro para ser aplicado na leitura dos registros. (padrão = não possui filtro padrão)

Regras para utilização do filtro

Para montar o parâmetro "filter" devemos obedecer as seguintes regras:

    • O objeto filter deve ser um array.
    • O índice 0(zero) desse array deve ser o schema do filtro, o schema segue o mesmo padrão já adotado na lib (CODCOLIGADA =:CODCOLIGADA)
    • O índice 0(zero) não aceita comandos : DLL, DML, DCL, TCL (create,alter,truncate,comment,rename,select,insert,update,delete,call,explain plan,lock table,grant,revoke,commit,savepoint,rollback,'," )
    • Para cada parâmetro adicionado schema do filtro, deverá ser um novo registro no array com o respectivo valor.
    • É extremamente necessário serilizar o filtro em json antes de fazer a chamada.

Para a montagem de um filtro com mais de um parâmetro siga esses passos:

[...] filter =  ["NOME_DO_CAMPO_1 = :NOME_DO_PARAMETRO_1 (AND/OR) NOME_DO_CAMPO_2 = :NOME_DO_PARAMETRO_2 (AND/OR) NOME_DO_CAMPO_N = :NOME_DO_PARAMETRO_N", "VALOR_1", "VALOR_2", "VALOR_3"]

Exemplo (Filtro Único)

Método: GET

Parâmetros Utilizados: 

  • start = 3;
  • limit = 2;
  • filter = ["CODCOLIGADA =:codcoligada", "1"];

URL: http://localhost:8051/rmsrestdataserver/rest/EstLOCData?start=3&limit=2&filter=%5B%22CODCOLIGADA+%3D+:CODCOLIGADA%22


Resposta (Filtro Único)
{
   "messages": [],
   "length": 21,
   "data":    [
            {
         "id": "1$_$1$_$01",
         "CODFILIAL": 1,
         "CODCOLIGADA": 1,
         "CODLOC": "01",
         "NOME": "RM Suprimentos MTZ",
         "NIVELESTOQUE": 1,
         "RUA": null,
         "NUMERO": null,
         "COMPLEMENTO": null,
         "BAIRRO": null,
         "CODETD": null,
         "CIDADE": null,
         "CEP": null,
         "PAIS": null,
         "TELEFONE": null,
         "DDD": null,
         "FAX": null,
         "CONTATO": null,
         "EMAIL": null,
         "INATIVO": 0,
         "IDUNDNEGOCIO": null
      },
            {
         "id": "1$_$1$_$02",
         "CODFILIAL": 1,
         "CODCOLIGADA": 1,
         "CODLOC": "02",
         "NOME": "FILIAL BELO HORIZONTE",
         "NIVELESTOQUE": 1,
         "RUA": null,
         "NUMERO": null,
         "COMPLEMENTO": null,
         "BAIRRO": null,
         "CODETD": null,
         "CIDADE": null,
         "CEP": null,
         "PAIS": null,
         "TELEFONE": null,
         "DDD": null,
         "FAX": null,
         "CONTATO": null,
         "EMAIL": null,
         "INATIVO": 0,
         "IDUNDNEGOCIO": null
      },
            {
         "id": "1$_$1$_$03",
         "CODFILIAL": 1,
         "CODCOLIGADA": 1,
         "CODLOC": "03",
         "NOME": "FILIAL RIO DE JANEIRO",
         "NIVELESTOQUE": 1,
         "RUA": null,
         "NUMERO": null,
         "COMPLEMENTO": null,
         "BAIRRO": null,
         "CODETD": null,
         "CIDADE": null,
         "CEP": null,
         "PAIS": null,
         "TELEFONE": null,
         "DDD": null,
         "FAX": null,
         "CONTATO": null,
         "EMAIL": null,
         "INATIVO": 0,
         "IDUNDNEGOCIO": null
      },
            {
         "id": "1$_$1$_$04",
         "CODFILIAL": 1,
         "CODCOLIGADA": 1,
         "CODLOC": "04",
         "NOME": "FILIAL SAO PAULO",
         "NIVELESTOQUE": 1,
         "RUA": null,
         "NUMERO": null,
         "COMPLEMENTO": null,
         "BAIRRO": null,
         "CODETD": null,
         "CIDADE": null,
         "CEP": null,
         "PAIS": null,
         "TELEFONE": null,
         "DDD": null,
         "FAX": null,
         "CONTATO": null,
         "EMAIL": null,
         "INATIVO": 0,
         "IDUNDNEGOCIO": null
      },
            {
         "id": "1$_$1$_$05",
         "CODFILIAL": 1,
         "CODCOLIGADA": 1,
         "CODLOC": "05",
         "NOME": "Empenho de Materia-prima",
         "NIVELESTOQUE": 1,
         "RUA": null,
         "NUMERO": null,
         "COMPLEMENTO": null,
         "BAIRRO": null,
         "CODETD": null,
         "CIDADE": null,
         "CEP": null,
         "PAIS": null,
         "TELEFONE": null,
         "DDD": null,
         "FAX": null,
         "CONTATO": null,
         "EMAIL": null,
         "INATIVO": 0,
         "IDUNDNEGOCIO": null
      }
   ]
}

Exemplo (Filtro com mais de um Parâmetro)

         Iremos utilizar o mesmo dataserver (EstLOCData) como exemplo, porém iremos utilizar os seguintes parâmetros:

         OBS: Observe que vamos utilizar três filtros, em vez de um, como no exemplo anterior.


Método: GET

Parâmetros Utilzados:

  • start = 0;
  • limit = 5;
  • filter = ["CODCOLIGADA =:codcoligada AND CODLOC =:codloc AND CODFILIAL =:codfilial", "1", "01", "1"]

URL: http://localhost:8051/rmsrestdataserver/rest/EstLOCData?start=0&limit=5&filter=%5B%22CODCOLIGADA%20%3D%3Acodcoligada%20AND%20CODLOC%20%3D%3Acodloc%20AND%20CODFILIAL%20%3D%3Acodfilial%22%2C%20%221%22%2C%20%2201%22%2C%20%221%22%5D


Resposta (Filtro com mais de um Parâmetro)
{
   "messages": [],
   "length": 1,
   "data": [   {
      "id": "1$_$1$_$01",
      "CODFILIAL": 1,
      "CODCOLIGADA": 1,
      "CODLOC": "01",
      "NOME": "RM Suprimentos MTZ",
      "NIVELESTOQUE": 1,
      "RUA": null,
      "NUMERO": null,
      "COMPLEMENTO": null,
      "BAIRRO": null,
      "CODETD": null,
      "CIDADE": null,
      "CEP": null,
      "PAIS": null,
      "TELEFONE": null,
      "DDD": null,
      "FAX": null,
      "CONTATO": null,
      "EMAIL": null,
      "INATIVO": 0,
      "IDUNDNEGOCIO": null
   }]
}

Exemplo (Filtro com Like)

Iremos utilizar o mesmo dataserver (EstLOCData) como exemplo, porém iremos utilizar os seguintes parâmetros:


Método: GET

Parâmetros Utilzados:

  • filter = ["NOME LIKE :NOME", "%SAO PAULO%"]

URL: http://localhost:8051/rmsrestdataserver/rest/EstLOCData?filter=%5B%22NOME%20LIKE%20%3ANOME%22%2C%20%22%25SAO%20PAULO%25%22%5D


Resposta (Filtro com Like)
{
    "messages": [],
    "length": 1,
    "data": [
        {
            "id": "1$_$1$_$04",
            "CODFILIAL": 1,
            "CODCOLIGADA": 1,
            "CODLOC": "04",
            "NOME": "FILIAL SAO PAULO",
            "NIVELESTOQUE": 1,
            "RUA": null,
            "NUMERO": null,
            "COMPLEMENTO": null,
            "BAIRRO": null,
            "CODETD": null,
            "CIDADE": null,
            "CEP": null,
            "PAIS": null,
            "TELEFONE": null,
            "DDD": null,
            "FAX": null,
            "CONTATO": null,
            "EMAIL": null,
            "INATIVO": 0,
            "IDUNDNEGOCIO": null
        }
    ]
}

Exemplo (Implementação em Código)

  

  1. Adicione os disclaimers que desejar:

  • Crie o schema do filtro e adicione os respectivos valores.
  • Na chamada do findRecords, o parâmetro filter deve ser serializado em JSON.

                 


       3. A segunda opção pode ser substituída por essa: