Filtrar dados
No domínio dos aplicativos de negócios, a precisão na apresentação dos dados é crucial. Para isso, use funções como Filtro e Pesquisa. Delegando essas funções à fonte de dados para processamento, você agiliza o fluxo de informações.
Aqui, delegação significa que essas funções atuam como filtros seletivos no servidor. O resultado? Seu aplicativo pesquisa e processa seletivamente apenas os dados necessários, melhorando a experiência do usuário. Essa abordagem não apenas reduz a transmissão de dados, mas também otimiza a eficiência para os usuários.
No módulo anterior, você aprendeu a adicionar uma fonte de dados a uma galeria. Neste módulo, você expande esses conceitos moldando os dados para mostrar o que é relevante para o usuário.
Usar a função Filter para filtrar a tabela
Geralmente, a função Filter é a mais usada na modelagem de dados. Com Filter, você pode criar consultas simples para retornar apenas os dados necessários. Por exemplo, se sua fonte de dados tiver uma coluna de texto denominada IsActive com os valores Sim ou Não para acompanhar o status do projeto, você poderá filtrar seus dados usando a seguinte fórmula na propriedade Items da sua galeria.
Filter(YourDataSourcetable, IsActive = "Yes")
Em vez de exibir todas as linhas da tabela, a galeria mostrará apenas as linhas com Sim na coluna IsActive. Isso retorna menos linhas para os usuários classificarem e acelera o aplicativo, reduzindo a quantidade de dados baixados.
Operador And
Para levar a filtragem ao próximo patamar, é preciso usar operadores para criar filtros mais complexos. Um método comumente usado é empregar o operador And para mesclar vários critérios no filtro. Ao ser usado o operador And, todas as condições devem ser avaliadas como verdadeiras para que o filtro seja eficaz. Por exemplo, você pode ampliar o exemplo anterior para mostrar todas as linhas em que IsActive é Yes e Region é North usando a consulta a seguir.
Filter(YourDataSourcetable, IsActive = "Yes" And Region = "North")
Esta fórmula retornará todas as linhas em que IsActive é Sim e Region é North. O operador And deve ter a inicial maiúscula na fórmula.
Operador Or
Apresentando outro operador essencial para filtros: o operador Or. Diferentemente do operador And, o operador Or requer que apenas uma equação seja verdadeira para recuperar a linha. De forma semelhante ao operador And, é importante colocar o operador Or em maiúsculas para que ele funcione corretamente nos critérios de filtro.
Ao ampliar o exemplo anterior, talvez você queira ver todas as linhas em que Region é North ou West. Para criar essa consulta, você usa o operador Or.
Filter(YourDataSourcetable, Region = "North" Or Region = "West")
Esta fórmula retorna todas as linhas em que Region é igual a North ou West. Além disso, observe a sintaxe na fórmula: Region = "North" Or Region = "West". Um erro comum é escrever Region = "North" Or "West". Essa é uma fórmula incorreta.
Combinar operadores
Em cenários que exigem condições complexas, a combinação de operadores permite lógica mais sofisticada. Considere os exemplos anteriores: imagine um cenário em que você pretende filtrar sua fonte de dados para recuperar linhas em que IsActive é Sim e a Region é North ou West.
Para isso, torna-se essencial incorporar parênteses à fórmula. Veja como ficaria a fórmula:
Filter(YourDataSourcetable, IsActive = "Yes" And (Region = "North" Or Region = "West"))
A fórmula avaliará primeiro os parênteses. Esta fórmula determina primeiro se Region é North ou West. Se qualquer uma das avaliações for true, o lado certo será true. Em seguida, a fórmula verifica o valor da coluna IsActive. Se for igual a "Sim", a linha será correspondente, e a função Filter a retornará. O Microsoft Power Apps inclui uma ampla variedade de operadores e seus aninhamentos para formular seus dados.
Para saber mais sobre os diferentes operadores disponíveis no Power Apps, confira Operadores e tipos de dados em Power Apps, na documentação. Outros exemplos incluem greater than, less than, not, in, exact in e muito mais. Além disso, ao avaliar operadores, certifique-se de compreender a delegação. Diferentes operadores têm comportamentos de delegação diferentes com diferentes fontes de dados. Para obter uma lista de fontes de dados e seus operadores, consulte Noções básicas de delegação em um aplicativo de tela.