cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Qing
Helper I
Helper I

How can I Fix this Delegation Warning

Hey guys,
I'm having a "problem" with delegation. I've already gone through the numerous threads on this issue but they didn't help me find a workaround/other solution.
I'm currenly building a simple apps to query the data from sharepoint list.

For example, I'm using the following formula to filter the data by the user inputs. The warning occurs.How will I fix this? Any recommendations please. See the Screenshot for better understanding. Thank you very much

 

 

Set(
    Vstatus,
    Dropdown5.Selected.Ivalue
);
ClearCollect(
    MyRequestList,
    Filter(
        Contract,
        CurrentUserEmail = 'Requestor Mail',
        If(
            !IsBlank(Vstatus),
            Vstatus = 'Form Status',
            true
        ),
        If(
            !IsBlank(TextInput9.Text),
            StartsWith(
                'Form NO.',
                TextInput9.Text
            ),
            true
        )
    )
)

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
mdevaney
Super User III
Super User III

@Qing 

You'll need to recode those IF statements to do the same thing but using a slightly different method

Set(
    Vstatus,
    Dropdown5.Selected.Ivalue
);
ClearCollect(
    MyRequestList,
    Filter(
        Contract,
        CurrentUserEmail = 'Requestor Mail',
        !IsBlank(VStatus) = true Or Vstatus = 'Form Status',
        !IsBlank(TextInput9.Text) = true Or StartsWith('Form NO.',TextInput9.Text)
    )
)

 

Here's a link to my forum post a week ago where I helped with a similar issue.  I put my pattern for avoiding delegation there.  You can bookmark to it for future reference.

 https://powerusers.microsoft.com/t5/Building-Power-Apps-Formerly/Filtering-on-multiple-fields/m-p/40...

---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up.

View solution in original post

3 REPLIES 3
mdevaney
Super User III
Super User III

@Qing 

You'll need to recode those IF statements to do the same thing but using a slightly different method

Set(
    Vstatus,
    Dropdown5.Selected.Ivalue
);
ClearCollect(
    MyRequestList,
    Filter(
        Contract,
        CurrentUserEmail = 'Requestor Mail',
        !IsBlank(VStatus) = true Or Vstatus = 'Form Status',
        !IsBlank(TextInput9.Text) = true Or StartsWith('Form NO.',TextInput9.Text)
    )
)

 

Here's a link to my forum post a week ago where I helped with a similar issue.  I put my pattern for avoiding delegation there.  You can bookmark to it for future reference.

 https://powerusers.microsoft.com/t5/Building-Power-Apps-Formerly/Filtering-on-multiple-fields/m-p/40...

---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up.

View solution in original post

Pstork1
Dual Super User III
Dual Super User III

Another approach to fixing this that can be useful in complex filtering scenarios is to next the filters.  Since the delegation warning is only on one of the clauses in your filter you can also fix it by adding a filter within a filter.  Use the inner filter with the parts that don't cause a delegation warning.  If that will get your record count below the limit then you can safely ignore the warning.  In your case I suspect that the filter on current user alone may get you below the 500 record limit.  So you could try this filter.

Set(
    Vstatus,
    Dropdown5.Selected.Ivalue
);
ClearCollect(
    MyRequestList,
    Fliter(
        Filter(
            Contract,
            CurrentUserEmail = 'Requestor Mail'),
        If(
            !IsBlank(Vstatus),
            Vstatus = 'Form Status',
            true
        ),
        If(
            !IsBlank(TextInput9.Text),
            StartsWith(
                'Form NO.',
                TextInput9.Text
            ),
            true
        )
    )
)


-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

That is not a solution, if the collect ton give the warning neither should the source, Microsoft needs to fix this give us a toggle or something.

Helpful resources

Announcements
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

secondImage

Demo Extravaganza is Back!

We are excited to announce that Demo Extravaganza for 2021 has started!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

Power Apps June 2021

June Power Apps Community Call

Did you miss the call? Check out the recording here!

Top Solution Authors
Top Kudoed Authors
Users online (25,824)