cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Anonymous_Hippo
Super User
Super User

PowerApps Gallery Scrolling and filtering performance help

Hello All,

 

I built a canvas app with a data connection to SharePoint list which has 18 columns and 63 rows. I connected this data source to my canvas gallery and i am pulling 16 rows and all rows. I have also setup multiple filters so that users can filter based on four categories.

 

I noticed that when i select the first filters it takes about 2-3 seconds for it to work. Also when I do vertical scrolling this gallery takes about 1-2 seconds. Because of the lag i tried using a collection but there was no performance improvements

 

Anonymous_Hippo_1-1624027461786.png

Here is my on start rule :-

 

Concurrent(
    ClearCollect(
        Masterdata,
        '2021 Worldwide RA Milestone Dashboard'
    ),
    Set(
        Currentuser,
        Lower(Office365Users.MyProfile().GivenName)
    )
);
If(
    Or(
        Currentuser = "amber",
        Currentuser = "vineet"
    ),
    Set(
        ReadEditcontrol,
        DisplayMode.Edit
    ) && Set(
        AdminView,
        true
    ),
    Set(
        ReadEditcontrol,
        DisplayMode.Disabled
    ) && Set(
        AdminView,
        false
    )
)

 

Here is my gallery item formula

 

 

Filter(
Masterdata,
IsBlank(FranchiseComboboxFilter_1.SelectedItems.Result) || IsEmpty(FranchiseComboboxFilter_1.SelectedItems) || Franchise in FranchiseComboboxFilter_1.SelectedItems,
IsBlank(RegionFilter_1.SelectedItems.Result) || IsEmpty(RegionFilter_1.SelectedItems) || Region in RegionFilter_1.SelectedItems,
IsBlank(CountryFIlter_1.SelectedItems.Result) || IsEmpty(CountryFIlter_1.SelectedItems) || Market.Value in CountryFIlter_1.SelectedItems,
IsBlank('RA Contact Filter_1'.SelectedItems.Result) || IsEmpty('RA Contact Filter_1'.SelectedItems) || 'RA Contact' in 'RA Contact Filter_1'.SelectedItems
)

 

 

Would appreciate any help 🙂

Thank you in advance !!

1 ACCEPTED SOLUTION

Accepted Solutions
WarrenBelz
Super User
Super User

Hi @Anonymous_Hippo ,

This is the structure I use (not much different to yours except SelectedItems is deprecated so use Selected and I have also added a true/false argument in one go). Also are these multi-select or single select combo boxes?

Filter(
   MasterData, 
   (
      Len(FranchiseComboboxFilter_1.Selecteds.Result)=0  || 
      Franchise in FranchiseComboboxFilter_1.SelectedItems
   ) &&
   (
      Len(RegionFilter_1.Selected.Result)=0  || 
      Region in RegionFilter_1.SelectedItems
   ) &&
   (
      Len(CountryFilter_1.Selected.Result)=0 || 
      Market.Value in CountryFIlter_1.SelectedItems
   ) &&
   (
      Len('RA Contact Filter_1'.Selected.Result)=0 || 
      'RA Contact' in 'RA Contact Filter_1'.SelectedItems
   )
)

 

Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

View solution in original post

5 REPLIES 5
WarrenBelz
Super User
Super User

Hi @Anonymous_Hippo ,

This is the structure I use (not much different to yours except SelectedItems is deprecated so use Selected and I have also added a true/false argument in one go). Also are these multi-select or single select combo boxes?

Filter(
   MasterData, 
   (
      Len(FranchiseComboboxFilter_1.Selecteds.Result)=0  || 
      Franchise in FranchiseComboboxFilter_1.SelectedItems
   ) &&
   (
      Len(RegionFilter_1.Selected.Result)=0  || 
      Region in RegionFilter_1.SelectedItems
   ) &&
   (
      Len(CountryFilter_1.Selected.Result)=0 || 
      Market.Value in CountryFIlter_1.SelectedItems
   ) &&
   (
      Len('RA Contact Filter_1'.Selected.Result)=0 || 
      'RA Contact' in 'RA Contact Filter_1'.SelectedItems
   )
)

 

Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

Thankyou @WarrenBelz  for your help

 

I modified my Items property with your formula but unfortunately i'm still am seeing 2-3 seconds delay once I select a filter vs when the filter actually gets selected. - But i think the performance did slightly improve 🙂 Please note that all the combo boxes that i am using are multiselect.

 

Do you think reducing the number of columns that i am pulling will improve the performance ? I really can't remove much information but would love to know what I need to keep in mind when designing something in the future.

 

Or do you think i am doing something wrong ? Also do you recommend using a collection since the data that i'm querying isn't that big ?? Also is there any tips on improving scrolling performance - I see that this was already reported by some other people as well  but MS doesn't seem to have fixed this issue 😞

 

https://powerusers.microsoft.com/t5/Building-Power-Apps/Gallery-scrolling-performance-issues/td-p/39...

THANKS !!!

 

 

Hi @Anonymous_Hippo ,

Firstly, I would stick with the collection as that avoids any accessing of the data source (which would slow it down more). Other than that, I cannot see anything else that will speed it up - I have some filters I put a loading spinner on and 2-3 seconds is quick for many.

 

Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

Anonymous_Hippo
Super User
Super User

@WarrenBelz 

Really appreciate your help 🙂 My users are very demanding 😄 they cannot wait for 2-3 seconds- therefore i replaced my beautiful gallery control with the oldie Data Table and everything seems to be very smooth and fast- Normally data table is pretty much useless since we cannot wrap text or  change alignment but in this scenario it looks good (definitely not ideal but i will survive of this haha)

 

Good day !

Thanks @Anonymous_Hippo ,

My users are grateful to have something better than the Excel spreadsheet they were using previously . . . I just give them this hypnotic spinner to calm the nerves

Spin-1s-200px.gif

 

Helpful resources

Announcements
Power Apps News & Annoucements carousel

Power Apps News & Announcements

Keep up to date with current events and community announcements in the Power Apps community.

Power Apps Community Blog Carousel

Power Apps Community Blog

Check out the latest Community Blog from the community!

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