Funções, predicados e fontes de dados são combinados para determinar a delegação

Concluído

Descobrir quando a delegação se aplica depende de vários fatores, começando pela própria fonte de dados. Confira esta tabela para funções do Microsoft Dataverse e seu suporte de delegação:

  • Sim: a fonte de dados trata do processamento em todos os registros.

  • Não: a fonte de dados envia apenas os 500 registros iniciais (padrão) para o Power Apps, que, então, processa a função localmente.

Captura de tela da tabela com diferentes funções de delegação do Dataverse.

  1. Números com expressões aritméticas como Filter(table, field + 10 > 100) não são delegáveis. Idioma e fuso horário não são delegáveis.

  2. Não dá suporte a Trim[Ends] ou Len. Dá suporte a outras funções, como Left, Mid, Right, Upper, Lower, Replace e Substitute.

  3. DateTime pode ser delegado, exceto para as funções DateTime Now() e Today().

  4. Dá suporte a comparações. Por exemplo, Filter(TableName, MyCol = Blank()).

  5. As funções de agregação são limitadas a uma coleção de 50.000 registros. Se necessário, use a função Filter para selecionar 50.000 registros de um conjunto maior antes de usar a função de agregação.

O Dataverse tem mais informações sobre como usar o Dataverse como fonte de dados e sobre suas funções delegáveis.

Essa tabela será apenas para funções delegáveis com suporte se você usar o Dataverse como uma fonte de dados. Porém, e se você usar uma fonte de dados diferente, como o SharePoint ou o SQL?

Outras fontes de dados: SharePoint e SQL

Ao trabalhar com o SharePoint ou o SQL como fonte de dados, é crucial verificar as funções delegáveis com suporte consultando a documentação associada. Conforme mencionado anteriormente, cada fonte de dados tem seu próprio conjunto de funções delegáveis e não delegáveis.

Antes de se aprofundar na criação de aplicativos, é altamente recomendável explorar essas diferenças entre as fontes de dados. Isso ajuda a compreender antecipadamente suas capacidades e limitações. Cada projeto do Power Apps tem necessidades de negócios exclusivas; portanto, é fundamental garantir que a fonte de dados escolhida dê suporte a essas necessidades e às funções necessárias para seu volume de dados.

Além disso, se usar a função Filter ou LookUp, você também usará um predicado. O predicado é o que permite avaliar a fórmula. A função FirstName = "Rob" 1 usa o predicado =. Algumas fontes de dados não dão suporte a determinados predicados. Por exemplo, o Salesforce não dá suporte ao predicado IsBlank. Portanto, embora a fórmula Filter(SalesforceCustomers, Name = "Contoso") seja delegável, a fórmula Filter(SalesforceCustomers, IsBlank(Name)) não é.

O tipo de Coluna também pode ser considerado

Os tipos de colunas exercem uma influência surpreendente nas possibilidades de delegação. Considere colunas complexas, como colunas de pesquisa do SharePoint: para elas, a delegação não é fácil. Sua lógica complexa significa que o Power Apps só pode processá-los localmente.

O lado positivo? O Power Apps está ao seu lado! Ele oferece avisos visuais para esses problemas. Imagine um sublinhado azul realçando uma fórmula no aplicativo: essa é sua indicação! Isso sinaliza um problema de delegação que pode significar a não obtenção de todos os seus registros. Corrigi-lo garante que seu aplicativo funcione perfeitamente.

Na próxima seção, você aprenderá mais sobre avisos de delegação, limites e como contorná-los se você tiver um problema de delegação.