У меня проблема с функцией PowerApps, которую я не могу решить самостоятельно.Ниже вы можете найти код, который работает (хотя я предполагаю, что он не очень хорошо оптимизирован).Как и в разделе, условие if выполняется внутри переключателя, как один из его аргументов, а не выполняется после переключателя AFTER.Конечный результат должен быть следующим: пользователь нажимает кнопку, которая применяет фильтр к таблице, и после этого, если условие вступает в игру и выполняет свою работу.
Основная часть - это условие if, когда пользователь выбирает критерии ввыпадающее меню, условие сортирует таблицу с именем или рейтингом.Внутри этого условия есть функции для поддержки поисковой системы и сортировки по возрастанию / убыванию кнопки.После этого я хотел добавить поддержку кнопок фильтра, и сами кнопки работают нормально, но условие if выполняется только тогда, когда нажата последняя кнопка (поэтому, например, когда я нажимаю кнопку, связанную с It, она устанавливает категорию на «1» ипереход к следующему экрану, но поиск / сортировка не работает).Я пытался разделить условия с помощью нескольких круглых скобок, добавив «;;» в конце переключателя, но это не решило проблему (дополнительно сломало приложение).
Switch(
category;
1;
Filter(
Table1_2;
'4. Area of training' = "IT-related"
);
//here is a bunch of filters for categories from 2 to 4
5; //no filter as it should display table without any filter
If( //the problematic if, that is executed only when category is "5"
dropdown_sort.Selected.Value = "Name of the training"; //check what the value of dropdown is, and the execute positive or negative case
SortByColumns(
Search(
Table1_2;
search_engine.Text; //takes text input and searches inside column below
"3_x002e__x0020_Name_x0020_of_x0020_the_x0020_training"
);
"3_x002e__x0020_Name_x0020_of_x0020_the_x0020_training"; //sorting on this column
If( //to change ascendin/descending on button press
sort;
Ascending;
Descending
)
);
//here is second part of if, that is basically identical to above (it sorts different column), and executes case when selected value of dropdown is different that "Name..."
)
)
Я хотел бы выполнить независимо отПереключатель.Кроме того, если есть способ сделать это лучше, пожалуйста, напишите свои предложения.Спасибо.