Essa função é responsável por informar os parâmetros de busca que serão utilizados pelo bloco Filtrar dados e retorna um comparador OData.


Figura 1 - Bloco Filtrar Dados

Compatibilidade

  • Bloco cliente e servidor: cronapi.screen.createFilter()
  • Bloco servidor: cronapi.screen.createFilter() - executado a partir da chamada do bloco cliente.

Retorno

Retorna uma string com expressão de comparador OData.

Ex.: banda eq 'Pink Floyd'

Parâmetros

Campo

Local destinado a informar o atributo da fonte de dados que será filtrado.

  • Posição: 1
  • Inglês: Field
  • Tipo: Texto / String
  • Exemplo: Fonte de dados proveniente de uma classe.

Operador

Define o operador de comparação do filtro. 

  • Posição: 2
  • Inglês: Operator
  • Tipo: Texto / String
  • Exemplo: "Igual"
  • Opções:
    • Igual: testa se um campo é igual a um valor constante.

    • Diferente: testa se um campo é diferente de um valor constante.

    • Maior que: testa se um campo é maior que um valor constante.

    • Menor que: testa se um campo é menor que um valor constante.

    • Maior ou igual a: testa se um campo é superior ou igual a um valor constante.

    • Menor ou igual a: testa se um campo é inferior ou igual a um valor constante.

    • Contém: testa se um campo contém um elemento específico de um valor constante. Não funciona para o tipo de dado Data.

Valor

Informa o valor que será comparado com o conteúdo do parâmetro 1.

  • Posição: 3
  • Inglês: Filter or List of filters
  • Tipo: Texto / String
  • Exemplo: podemos utilizar o bloco Obter valor do campo.

Características do bloco

Os parâmetros 1 e 3 devem ter tipos de dados compatíveis para comparações corretas. Por exemplo: se o parâmetro Campo for uma data, o parâmetro Valor também deve ser do tipo data.

Salvo algumas exceções, o Cronapp fará conversões de tipo quando necessário para permitir a comparação. Por exemplo, ao usar o comparador "Contém" com um tipo de dado inteiro, o Cronapp detectará que o valor não é uma string e o converterá para realizar a comparação. Portanto, a expressão "ano contém 20", sendo o ano 2023, se tornará verdadeira, pois o inteiro é convertido em string e o valor '2023' possui a substring '20'.

O parâmetro Valor aceita blocos de lógica verdadeiro e falso, porém, seu uso só faz sentido com os comparadores Igual ou Diferente.

Exemplo 1

A função abaixo utiliza o bloco de programação Filtrar dados para realizar uma filtragem a partir da marca do carro. O bloco Criar Filtro está retornando a expressão: marca eq 'Renault'.


Figura 2: Bloco de programação Criar Filtro criando um filtro simples


A fonte de dados utilizada nesse exemplo contém várias características de carros, na figura 2.1 podemos ver a Grade dessa fonte de dados antes de ela ser filtrada.


Figura 2.1 - Dados antes da filtragem


Após a filtragem, perceba que somente cinco registros são exibidos.


Figura 2.2 - Dados depois da filtragem

Exemplo 2

Também é possível utilizar o bloco Criar Filtro para selecionar registros da fonte de dados a partir de dados do tipo data. O bloco Criar Filtro está retornando a expressão: dataCompra ge '16/09/2023'.


Figura 3: Bloco de programação Criar Filtro criando um filtro de data


Após a filtragem, perceba que somente valores com data igual ou superior ao conteúdo informado no campo Valor são apresentadas. Este tipo de dado funciona com todas as opções do parâmetro Operador, com exceção do parâmetro Contém.


Figura 3.1: Dados depois da filtragem por data

Nesta página