Combinaison de fonctions, de prédicats et de sources de données pour déterminer la délégation

Effectué

Déterminer quand la délégation s’applique dépend de divers facteurs, à commencer par la source de données elle-même. Jetez un œil à ce tableau pour les fonctions Microsoft Dataverse et leur prise en charge de la délégation :

  • Oui : la source de données gère le traitement sur l’ensemble des enregistrements.

  • Non : la source de données envoie uniquement les 500 premiers enregistrements (par défaut) à Power Apps, qui traite ensuite la fonction localement.

Capture d’écran d’une table avec différentes fonctions de délégation Dataverse.

  1. Les valeurs numériques avec des expressions arithmétiques comme Filter(table, field + 10 > 100) ne sont pas délégables. Language et TimeZone ne sont pas délégables.

  2. Ne prend pas en charge Trim[Ends] ou Len. Prend en charge d’autres fonctions telles que Left, Mid, Right, Upper, Lower, Replace et Substitute.

  3. DateTime peut être déléguée à l’exception des fonctions DateTime Now() et Today().

  4. Prend en charge les comparaisons. Par exemple, Filter(TableName, MyCol = Blank()).

  5. Les fonctions d’agrégation sont limitées à une collection de 50 000 enregistrements. Si nécessaire, utilisez la fonction Filter pour sélectionner 50 000 enregistrements dans un ensemble plus volumineux avant d’utiliser la fonction d’agrégation.

Consultez Dataverse pour en savoir plus sur l’utilisation de Dataverse en tant que source de données et ses fonctions délégables.

Ce tableau n’indique que les fonctions délégables prises en charge si vous utilisez Dataverse en tant que source de données. Mais que se passe-t-il si vous utilisez une autre source de données telle que SharePoint ou SQL ?

Autres sources de données : SharePoint et SQL

Lorsque vous utilisez SharePoint ou SQL comme source de données, il est essentiel de vérifier leurs fonctions délégables prises en charge en vous référant à leur documentation associée. Comme indiqué précédemment, chaque source de données possède son propre ensemble de fonctions délégables et non délégables.

Avant de vous lancer dans la création d’applications, nous vous recommandons fortement d’explorer ces différences entre les sources de données. Cela vous permet de comprendre à l’avance leurs capacités et leurs limites. Chaque projet Power Apps comporte des besoins métier uniques. Il est donc essentiel de s’assurer que la source de données que vous avez choisie répond à ces besoins et aux fonctions requises pour votre volume de données.

De plus, si vous utilisez la fonction Filter ou LookUp, vous utilisez également un prédicat. Le prédicat vous permet d’évaluer la formule. La fonction FirstName = "Rob" utilise le prédicat =. Certaines sources de données ne prennent pas en charge certains prédicats. Par exemple, Salesforce ne prend pas en charge le prédicat IsBlank. Ainsi, même si la formule Filter(SalesforceCustomers, Name = "Contoso") est délégable, la formule Filter(SalesforceCustomers, IsBlank(Name)) ne l’est pas.

Le type de colonne peut aussi être un élément à prendre en compte

Les types de colonnes exercent une influence surprenante sur les possibilités de délégation. Prenez les colonnes complexes telles que les colonnes de recherche SharePoint : elles ne sont pas adaptées à la délégation. Leur logique complexe signifie que Power Apps ne peut les traiter que localement.

Le côté positif ? Power Apps vous soutient ! Il propose des avertissements visuels pour ces problèmes. Imaginez un soulignement bleu mettant en évidence une formule dans votre application : il s’agit de votre signal. Il indique un problème de délégation qui pourrait signifier ne pas récupérer tous vos enregistrements. Le corriger garantit que votre application fonctionne parfaitement.

Dans la section suivante, vous allez en savoir plus sur les avertissements de délégation et les limites, et découvrir comment les contourner en cas de problème de délégation.