В Powerapps, как отфильтровать галерею, включая вариант Все?

Мое приложение имеет 3 кнопки, отмеченные Male, Female и All, которые передают критерии поиска переменной, используемой в фильтре галереи.

Все должны вернуть как мужчины, так и женщины.

Я сохранил текстовое поле поиска, добавленное мастером, чтобы пользователи могли осуществлять поиск в рекламных акциях, начинающихся с "Лето" && Category = "Мужской". Но пользователи также хотят искать все Акции, начинающиеся с "Лето", независимо от категории Мужчины / Женщины. У меня тоже есть сборщик дат.

Эта формула применяется к свойству BrowseGallry Items:- SortByColumns(Filter('Promotions', StartsWith(PromoTitle, TxtSearch.Text) && StartDate>=DatePick.SelectedDate && PromoCategory=searchTerm), "PromoTitle", If(SortDcending, If (SortDcending) По возрастанию))

Формула выше работает, пока я не изменю категорию на Все. Я попытался ввести "" и "" в переменную searchTerm через UpdateContext, но ни одна из них не работает. Любая помощь приветствуется.

1 ответ

Решение

Есть несколько альтернатив, которые вы можете использовать для этого.

Вы можете использовать другой StartsWith и установите условие поиска на "", Если возможные значения PromoCategory являются Male а также Femaleтогда это должно работать (так как все начинается с пустой строки):

SortByColumns(
    Filter(
        'Promotions',
        StartsWith(PromoTitle, TxtSearch.Text) &&
            StartDate >= DatePick.SelectedDate &&
            StartsWith(PromoCategory, searchTerm)),
    "PromoTitle",
    If(SortDescending1, Descending, Ascending))

Другой вариант заключается в использовании If условие, так что если поисковый термин пуст, то

SortByColumns(
    Filter(
        'Promotions',
        StartsWith(PromoTitle, TxtSearch.Text) &&
            StartDate >= DatePick.SelectedDate &&
            If(searchTerm = "", true, PromoCategory = searchTerm)),
    "PromoTitle",
    If(SortDescending1, Descending, Ascending))

Надеюсь это поможет!

Другие вопросы по тегам