cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
NielsL
Level: Powered On

Using filter delegable predicates and non-delegable predicates in conjunction

I'm creating an app that is connected to Dynamics 365 data. Currently I'm using Dynamics 365 connector but I can change that, if makes more sense to use the CDS connector going forward. 

 

I'm using the formula below to filter the items in the Gallery of my app:

 

Filter(
    Appointments,
    sem_owneremail = CurrentUser.Email,
    TextBoxSearch.Text in sem_dummyregarding || TextBoxSearch.Text in subject
)

I can see that the Filter function is on the list of Top-level delegable functions of both Dynamics 365 and CDS. Furthermore, looking at the list of Filter delegable predicates I can see that '=' is delegable to both Dynamics 365 and CDS - which is use in the first logical test of the formula.

 

However, 'in' (or 'StartsWith') is not delegable to either Dynamics 365 or CDS, which I'm using as the second logical test of the formula.

 

CurrentUser is a varibale set OnStart of the app. 

 

My question is now: 

How does these predicates work in conjunction with each other? Will the formula first evaluate the first logical test - e.g. check the email of the current user agains the records in Dynamics 365 (which is delegated to Dynamics 365) - and then run the second logical test (the search box - which is not delegated)? 

 

 

 

If not - is it possible to do it like that?

 

Right now I don't have enought test data to check it. However, it would make sense (at least to me), if Dynamics 365 could do the heavylifting by filtering the initials record set - and then the user could filter these records afterwards by using the search box.

2 REPLIES 2
Super User
Super User

Re: Using filter delegable predicates and non-delegable predicates in conjunction

Hi,
I have no experience with dynamics but powerapps evaluates formulas from the inside out. However, you may get a delegation warning anyway if any part of the formula contains a nondelegatable function. It can be ignored if the data set doesn't exceed 2000 items.
TopShelf-MSFT
Level 10

Re: Using filter delegable predicates and non-delegable predicates in conjunction

adding in @aorth to assist with this question

 

@TopShelf-MSFT

Helpful resources

Announcements
New Ranks and Rank Icons in April

'New Ranks and Rank Icons in April

Read the announcement for more information!

Better Together’ Contest Finalists Announced!

'Better Together’ Contest Finalists Announced!

Congrats to the finalists of our ‘Better Together’-themed T-shirt design contest! Click for the top entries.

Power Platform 2019 release wave 2 plan

Power Platform 2019 release wave 2 plan

Features releasing from October 2019 through March 2020

thirdimage

Community Summit North America

Innovate, Collaborate, Grow - The top training and networking event across the globe for Microsoft Business Applications

Top Solution Authors
Top Kudoed Authors
Users online (5,141)