Kaskadowe listy rozwijane w aplikacjach kanwy

W tym samouczku porozmawiamy o tym, jak działają kaskadowe listy rozwijane.

Kaskadowe listy rozwijane to dwie lub więcej list rozwijanych, które są od siebie zależne.

Kaskadowe listy rozwijane używane w Power Apps mogą poprawić komfort pracy użytkownika końcowego, zwłaszcza w przypadku filtrowania ogromnych ilości danych.

Spis treści

Dodawanie tabeli wyszukiwania klientów

Zacznijmy od dodania listy rozwijanej na nowym ekranie.

Zamierzamy dodać nowy ekran, powielając ekran główny, technikę omówioną w poprzednim samouczku . Nazwiemy ten ekran Wyszukiwaniem elementu.

Kaskadowe listy rozwijane w aplikacjach kanwy

Następnie dodajmy tabelę danych do ekranu.

Kaskadowe listy rozwijane w aplikacjach kanwy

Musimy dodać źródło danych do naszej tabeli, aby zacząć wyświetlać potrzebne nam rekordy. Dodajmy Table1 jako źródło danych za pomocą okienka Właściwości po prawej stronie.

Kaskadowe listy rozwijane w aplikacjach kanwy

Następnie dodajmy potrzebne pola, klikając „Edytuj pola”. W tej tabeli użyjemy Imienia, Nazwiska, Lokalizacji i poziomu VIP.

Kaskadowe listy rozwijane w aplikacjach kanwy

Teraz, gdy nasza tabela zawiera potrzebne nam rekordy, będzie ona służyć jako nasza tabela wyszukiwania klientów.

Kaskadowe listy rozwijane w aplikacjach kanwy

Teraz celem jest, abyśmy mogli filtrować rekordy tutaj w tej tabeli na podstawie lokalizacji i poziomu VIP. Właśnie tam pojawiają się nasze listy rozwijane.

Dodanie pierwszego menu rozwijanego

Przejdźmy do wejścia pod wstążką Wstaw i kliknij menu rozwijane.

Kaskadowe listy rozwijane w aplikacjach kanwy

Domyślnie listy rozwijane będą miały wartości 1, 2 i 3.

Kaskadowe listy rozwijane w aplikacjach kanwy

Możemy zmienić pozycje na liście rozwijanej, przechodząc do prawego okienka i łącząc źródło danych, którego użyliśmy dla naszej tabeli wyszukiwania klientów, czyli Tabela1.

Kaskadowe listy rozwijane w aplikacjach kanwy

Następnie w obszarze Wartość wybieramy kolumnę, której chcemy użyć z listy rozwijanej. W takim przypadku użyjmy lokalizacji.

Kaskadowe listy rozwijane w aplikacjach kanwy

Gdy to zrobisz, zobaczymy wszystkie możliwe lokalizacje na liście rozwijanej. Widzimy jednak również wiele duplikatów.

Kaskadowe listy rozwijane w aplikacjach kanwy

Dzieje się tak dlatego, że w tej chwili pobierane są tylko wszystkie rekordy z kolumny Lokalizacja, niezależnie od tego, ile razy dany rekord się pojawi. Aby pozbyć się tych duplikatów, użyjemy funkcji Distinct.

Funkcja Distinct ocenia rekordy w określonej kolumnie i usuwa wszelkie duplikaty.

Podświetlmy więc listę rozwijaną i wybierzmy właściwość Items. Następnie użyjemy funkcji Distinct i odniesiemy się do Table1 i Location.

Kaskadowe listy rozwijane w aplikacjach kanwy

Kiedy zablokujemy tę formułę, nasza lista rozwijana zawiera teraz tylko unikalne przedmioty bez żadnych duplikatów.

Kaskadowe listy rozwijane w aplikacjach kanwy

Aby ułatwić nam przeglądanie rekordów w tym menu rozwijanym, posortujmy elementy tak, aby pojawiały się w porządku alfabetycznym. Użyjemy funkcji SortByColumn, która zwykle wymaga podania źródła. W tym przykładzie źródłem byłaby nasza lista odrębnych elementów w kolumnie Lokalizacja.

Kaskadowe listy rozwijane w aplikacjach kanwy

Wymaga również kolumny. W tym przypadku chcemy, aby funkcja sortowała elementy na podstawie samego wyniku. Zasadniczo ten wynik pochodzi ze źródła, do którego właśnie się odnieśliśmy, czyli z naszej listy odrębnych elementów. Więc odwołamy się do Result.

Kaskadowe listy rozwijane w aplikacjach kanwy

Teraz mamy wszystkie nasze unikalne lokalizacje posortowane w tym menu.

Kaskadowe listy rozwijane w aplikacjach kanwy

Łączenie tabeli danych z listą rozwijaną

Następnym krokiem byłoby uzależnienie tej tabeli od listy rozwijanej. W tym celu użyjemy funkcji Filtruj.

Podświetlmy więc tabelę danych i przejdźmy do właściwości Items i użyjmy funkcji Filter. Funkcja filtru zwykle przyjmuje źródło i test logiczny. W tym przypadku naszym źródłem jest Tabela1. Jeśli chodzi o test logiczny, chcemy, aby był równoważny dowolnej wartości, którą użytkownik wybierze z listy rozwijanej.

Kaskadowe listy rozwijane w aplikacjach kanwy

Jeśli spojrzymy na lewy panel, zobaczymy, że lista rozwijana, do której chcemy się tutaj odnieść, to Dropdown4.

Kaskadowe listy rozwijane w aplikacjach kanwy

To jest element, którego użyjemy do naszego testu logicznego. Użyjemy Dropdown4.Selected.Result, ponieważ chcemy pokazać wyniki tylko na podstawie wybranego elementu.

Kaskadowe listy rozwijane w aplikacjach kanwy

Teraz, ponieważ z listy rozwijanej wybrano Australię, w tabeli są wyświetlane tylko rekordy, dla których Australia jest lokalizacją.

Kaskadowe listy rozwijane w aplikacjach kanwy

Dodanie drugiego menu rozwijanego

Ponieważ ostatecznie chcemy kaskadować nasze listy rozwijane, oznacza to, że potrzebujemy co najmniej dwóch list rozwijanych lub więcej. Dodajmy więc drugie menu. Tym razem posłuży do filtrowania naszych rekordów na podstawie poziomu VIP.

W tym przykładzie nową listą rozwijaną jest Dropdown5.

Kaskadowe listy rozwijane w aplikacjach kanwy

Ponownie będziemy musieli dotknąć źródła danych, którym jest Tabela1. Następnie użyjemy poziomu VIP jako wartości.

Kaskadowe listy rozwijane w aplikacjach kanwy

Ponieważ pozycje w kolumnie Poziom VIP najprawdopodobniej również będą miały duplikaty, ponownie użyjemy funkcji Distinct, odwołując się w procesie do Table1 i VIPLevel.

Kaskadowe listy rozwijane w aplikacjach kanwy

Gwarantuje to, że nie mamy duplikatów w naszym menu rozwijanym.

Kaskadowe listy rozwijane w aplikacjach kanwy

A teraz uporządkujmy te elementy. Podobnie jak w przypadku naszego pierwszego menu rozwijanego, użyjemy opcji Sortuj według kolumny, tym razem odwołując się do poziomu VIP zamiast lokalizacji.

Kaskadowe listy rozwijane w aplikacjach kanwy

Po wprowadzeniu tej formuły elementy w naszym menu rozwijanym są teraz we właściwej kolejności.

Kaskadowe listy rozwijane w aplikacjach kanwy

Następnie musimy wrócić do naszej tabeli danych, aby upewnić się, że filtrujemy nie tylko na podstawie pierwszej listy rozwijanej, ale także na podstawie drugiej. Zaletą tabel danych i funkcji filtrowania jest to, że możemy dodać dowolną liczbę kryteriów filtrowania.

Więc jeśli przejdziemy do oryginalnej formuły, wystarczy dodać VIPLevel = Dropdown5.Selected.Result.

Kaskadowe listy rozwijane w aplikacjach kanwy

Po zapisaniu tej formuły możemy teraz wybierać elementy z obu list rozwijanych, a nasza tabela danych będzie filtrować rekordy na podstawie obu z nich. Na przykład, jeśli wybierzemy Singapur z listy rozwijanej Lokalizacja i 1 z listy rozwijanej Poziom VIP, otrzymamy dwa wpisy pasujące do tych parametrów.

Kaskadowe listy rozwijane w aplikacjach kanwy

Możemy zmienić poziom VIP na 4, a wyświetli się jeden wynik pasujący do naszych filtrów.

Kaskadowe listy rozwijane w aplikacjach kanwy

Teraz zwróć uwagę, jak stół okazuje się pusty, gdy wybieramy poziom VIP 5 z Singapurem jako lokalizacją.

Kaskadowe listy rozwijane w aplikacjach kanwy

Oznacza to, że w Singapurze nie ma nikogo, kto należy do poziomu VIP 5. Chociaż jest to zrozumiałe, chcemy, aby 5 nie pojawiało się na drugim liście rozwijanej, jeśli nie ma pasującego rekordu. W końcu o to chodzi w kaskadowych listach rozwijanych.

Tworzenie kaskadowych list rozwijanych

W tej chwili właściwość Items dla naszego drugiego menu rozwijanego patrzy na Table1, pobiera różne elementy z kolumny VIPLevel i sortuje je na podstawie rzeczywistego wyniku.

Kaskadowe listy rozwijane w aplikacjach kanwy

Chcemy, aby źródło danych zostało zawężone do tego, co jest wybrane w pierwszym menu rozwijanym, zamiast patrzeć na całą tabelę Table1. Na przykład, jeśli użytkownik wybierze Singapur z listy rozwijanej Lokalizacja, lista rozwijana VIPLevel powinna wyświetlać tylko elementy pasujące do Singapuru, a nie całą tabelę.

Zamierzamy więc dodać tutaj funkcję filtrowania, upewniając się, że Tabela 1 jest filtrowana na podstawie warunku, że Lokalizacja powinna być równoważna z Dropdown4.Selected.Result.

Kaskadowe listy rozwijane w aplikacjach kanwy

Jeśli sprawdzimy teraz nasze menu rozwijane, zobaczymy, że drugie menu nie pokazuje już 5 z Singapurem wybranym na pierwszym menu.

Kaskadowe listy rozwijane w aplikacjach kanwy

Jeśli tym razem sprawdzimy Kanadę, okaże się, że nie ma 3 poniżej poziomu VIP.

Kaskadowe listy rozwijane w aplikacjach kanwy

Jeśli ponownie porównamy to z naszym oryginalnym źródłem danych, którym jest Tabela 1, zobaczymy, że tak naprawdę nie ma dopasowań dla VIPLevel 3 w Kanadzie. Oznacza to, że nasza formuła działa.

Kaskadowe listy rozwijane w aplikacjach kanwy


Wprowadzenie do Power Apps: definicja, funkcje, funkcje i znaczenie
Środowiska Power Apps: prawidłowe konfigurowanie elementów aplikacji
Funkcje i formuły PowerApps | Wstęp

Wniosek

Kaskadowe listy rozwijane mogą zdecydowanie poprawić wrażenia użytkownika końcowego, zwłaszcza jeśli masz do czynienia z dużą ilością danych. Ułatwia to użytkownikom końcowym szybsze znajdowanie potrzebnych rekordów, po prostu dlatego, że nie będą musieli zajmować się dodatkowymi elementami, które nic nie dają podczas filtrowania wyników.

Pamiętaj, że w razie potrzeby możesz upuścić inne listy rozwijane. Nie musisz ograniczać się tylko do dwóch list rozwijanych. Oznacza to, że jeśli masz więcej pól w swoim źródle danych, możesz dodać więcej list rozwijanych w zależności od tego, jak precyzyjne ma być filtrowanie.

Wszystkiego najlepszego,

Henz

Leave a Comment

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.

Funkcje zbierania w Microsoft Power Automate

Funkcje zbierania w Microsoft Power Automate

Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.

Oceń wydajność kodu DAX w DAX Studio

Oceń wydajność kodu DAX w DAX Studio

Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Jak zapisać i załadować plik RDS w R

Jak zapisać i załadować plik RDS w R

Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.