Versões comparadas
Chave
- Esta linha foi adicionada.
- Esta linha foi removida.
- A formatação mudou.
Filtrar fonte de dados
Permite criar filtros para uma fonte de dados , visando o tratamento dos dados retornados.
Parâmetros de entrada
utilizando expressões OData que utilizam operadores de comparação e lógico.
Image Added
Figura 1 - Bloco Filtrar
Informações |
---|
Este bloco pode ser utilizado com fonte de dados offline em aplicações mobile. Para mais informações sobre esse recurso, verifique o tópico "Suporte a dados offline (mobile)" da documentação Componente visual fonte de dados. |
Informações |
---|
Também é possível filtrar fontes de dados a partir do bloco de programação Filtrar Dados. |
Compatibilidade
- Bloco cliente: cronapi.screen.filter()
- Bloco servidor: cronapi.screen.filter() - executado a partir da chamada do bloco cliente.
Retorno
Bloco sem retorno.
Parâmetros
Fonte de dadosFonte de dados
FonteSeleciona a fonte de dados que será
filtrada pelo blocoCompatibilidade
Image Removed Servidor
Image Removed Cliente
utilizada para realizar a filtragem.
Para selecionar uma fonte de dados é preciso vincular um formulário de referência ao arquivo do bloco, acesse o tópico "Propriedades do Blockly" da documentação Bloco de programação para mais detalhes.
- Posição: 1
- Inglês: Datasource
- Tipo: Objeto / Object
- Exemplo: Fonte de dados vinculada a classe User.
Caminho
Recebe uma expressão OData contendo atributos da fonte de dados selecionada e operadores de comparação e lógico.
Como o filtro é criado a partir de uma string, é possível utilizar o bloco Concatenar para montar a expressão. É necessário incluir aspas simples ('
) nos valores de alguns tipos, como String.
- Posição: 2
- Inglês: Path
- Tipo: Texto / String
- Exemplo:
modelo eq 'Clio' and donoUnico ne false
Características do bloco
Tanto o atributo da fonte de dados quanto o valor comparado devem ser compatíveis. Por exemplo, se o parâmetro atributo for uma data, o seu valor deve ser compatível com o tipo data.
Também é necessário ficar atento com os comparadores OData utilizados em atributos de determinados tipos. No caso dos tipos boleanos, não faz sentido utilizar outros comparadores que não seja Igual (eq
) ou Diferente (ne
).
Operadores de comparação OData
Os seguintes operadores de comparação podem ser utilizados no bloco:
- eq: testa se o campo é igual ao valor informado.
- ne: testa se o campo é diferente de valor informado
- gt: testa se o campo é maior que o valor informado.
- lt: testa se o campo é menor que o valor informado.
- ge: testa se o campo é maior ou igual a um valor informado.
- le: testa se o campo é menor ou igual a um valor informado.
Operadores lógicos OData
Os seguintes valores lógicos podem ser utilizados no bloco:
- and: operador binário que será avaliado como true se as duas subexpressões forem verdadeiras.
- or: operador binário que será avaliado como true se pelo menos uma das subexpressões forem verdadeiras.
- not: esse operador unário inverte o resultado boleano da expressão.
Exemplo
A função abaixo utiliza uma expressão OData para filtrar a fonte de dados Carro, exibindo somente os carros da marca Renault
que foram comprados com data superior a 16/09/2023
.
Image Added
Figura 2 - Função que busca registros baseados em dois parâmetros
A tabela abaixo exibe os dados antes da filtragem.
![](/download/attachments/176656780/blocoFiltrarRegistroAntes.png?version=1&modificationDate=1696272713000&api=v2)
Figura 2.1 - Dados antes da filtragem
Após a filtragem, apenas 2 registros se encaixam na descrição passada no segundo parâmetro do bloco.
Image Added
Figura 2.2 - Resultado do filtro aplicado na fonte de dados
Nesta página
Índice |
---|
Utilização da função
Para utilizar a função é necessário adicionar uma fonte de dados a uma view ( lembrando que é necessário adicionar uma fonte de dados OData). Além disso é preciso vincular o bloco de programação a view onde está a fonte de dados desejada, caso não saiba como fazer o vínculo clique aqui