cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
JamesM
Helper V
Helper V

Remove items from Gallery based on value of label within Gallery item.

I have a Gallery of items. all of the controls within each gallery item are based on a single collection - allStoreSales. There is however, one label within each item (see screenshot below, the 'STORE_TRADING' label) which is sourced from a different collection called storeStateCollection.

 

forum1.png

 

The code for the store trading label within each gallery item is: 

 

LookUp(storeStateCollection,ServerName=ThisItem.ServerName).ProcessNextState

As you can see, the label looks up the processNextState value based on the server name within the gallery item. 

 

Now, my issue. I want to REMOVE all items from this gallery, where the processNextState within the storeStateCollection is NOT STORE_TRADING. I'm unsure how to do this, as the items are mostly made up from a different collection. How can I do this? 

1 ACCEPTED SOLUTION

Accepted Solutions

@JamesM

 

Try this

Filter(AddColumns(allStoreSales, "NextStat", LookUp(storeStateCollection,ServerName=ThisItem.ServerName).ProcessNextStat)
	, NextStat = "STORE_TRADING"
)

AddColumns adds the field to your dataset, which you then can filter on that field. This should work I would think.

 

Paul 

View solution in original post

3 REPLIES 3
KroonOfficeSol
Resident Rockstar
Resident Rockstar

@JamesM

 

I think you want to remove the items from allStoresSales and you can use something like this.

Remove(allStoreSales, Filter(allStoreSales, !(ServerName="STORE_TRADING")))

But why not just a filter instead off removing from the gallery. Like

Filter(allStoreSales, !(ServerName="STORE_TRADING"))

The gallery will now not show the other states.

 

Hope this helps.

 

Paul

This

 

Filter(allStoreSales, !(ServerName="STORE_TRADING"))

Won't work for me, as allStoreSales doesn't contain the 'STORE_TRADING' value. That's my problem. If you read the original post (and apologies if I wasn't clear) the allStoreSales items makes up most of the components in each Item within the gallery EXCEPT the 'STORE_TRADING' field, which is derived from a seperate collection, using the ThisItem.ServerName as a filter (from the allStoreSales collection). 

 

So I want to remove items from the gallery but based on the field which can be 'STORE_TRADING' or 'STORE_CLOSED' etc (which itself is derived from a different collection). 

 

I've worked around this issue by filtering out these items via a SQL view instead, but it'd be worth knowing if this is possible in PowerApps directly (essentially, filtering out items in a gallery based off the value of a field from a control WITHIN The gallery item that isn't associated to the Galleries items collection)

@JamesM

 

Try this

Filter(AddColumns(allStoreSales, "NextStat", LookUp(storeStateCollection,ServerName=ThisItem.ServerName).ProcessNextStat)
	, NextStat = "STORE_TRADING"
)

AddColumns adds the field to your dataset, which you then can filter on that field. This should work I would think.

 

Paul 

View solution in original post

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

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

secondImage

Are Your Ready?

Test your skills now with the Cloud Skill Challenge.

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

Top Solution Authors
Top Kudoed Authors
Users online (59,060)