cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
tuhriel
Frequent Visitor

Gallery items where the filter source is a different list

Hi,

I'm planning to do an simple event manager for a reccuring event and one part of it is the session backlog.

The data is located in two different sp lists: 'EMT.Sessions' and 'events'

One column 'EDD' within 'EMT.Session' looks up the data from the 'events' list.

The 'events' list has a colum (type choice) with the state of the event (planned, open for registration, done)

 

What I want to do now is to create a Gallery where it only shows sessions which are assigned to events that are not in the status 'done', but I really can't get my head around the syntax and the expected format.

 

At the moment the Items value of the Gallery has the following formula:

SortByColumns(Filter('EMT.Session', StartsWith(Title, TextSearchBox1.Text),EDD.Value = "2018-2"), "Title", If(SortDescending1, Descending, Ascending))

 

for what I plan to do the "2019-2" after EDD.Value should be replaced with something like this:

lookup(events, status != 'done')

But I can't get it to work as it always rejects either the operator and/or the returned result as wrong

 

1 ACCEPTED SOLUTION

Accepted Solutions

Okay that makes sense. There was still an argument missmatch, but I could figure that out:

 

SortByColumns(
    Filter(
        'EMT.Session',
        StartsWith(Title, TextSearchBox1.Text),
        EDD.Id in Filter(events, status.Value <> "done").ID),
    "Title",
    If(SortDescending1, Descending, Ascending))

Thanks a lot

 

View solution in original post

2 REPLIES 2
CarlosFigueira
Power Apps
Power Apps

You're looking for something along the lines of the expression below:

SortByColumns(
    Filter(
        'EMT.Session',
        StartsWith(Title, TextSearchBox1.Text),
        EDD.Id in Filter(events, status <> "done").ID),
    "Title",
    If(SortDescending1, Descending, Ascending))

The idea is to take the ID property of all events with status different than 'done', then filter the sessions list where the id of the lookup column is in the ids you found before.

Okay that makes sense. There was still an argument missmatch, but I could figure that out:

 

SortByColumns(
    Filter(
        'EMT.Session',
        StartsWith(Title, TextSearchBox1.Text),
        EDD.Id in Filter(events, status.Value <> "done").ID),
    "Title",
    If(SortDescending1, Descending, Ascending))

Thanks a lot

 

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

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

Don't miss the call this month on June 16th - 8a PDT

Top Solution Authors
Top Kudoed Authors
Users online (83,348)