Easy Directory 2.0
Easy Directory 2.0 - entdecke die neuen Funktionen & Verbesserungen Wir freuen uns, dir die neueste Version von Easy Directory präsentieren zu dürfen! Diese ...
Cascading Dropdowns und Galleries – PowerApps Vol2 : In diesem Teil der PowerApps-Serie beschäftigen wir uns mit Cascading Dropdowns und Galleries. Damit die Gallery nicht alle Datensätze lädt und dadurch unübersichtlich wird, lässt man sich nur noch die Datensätze anzeigen, die benötigt werden. Wie dies im Fall von PowerApps geht, zeige ich Ihnen in diesem Beitrag.
Bei einem Kaskadierenden Dropdown erstellt man Abhängigkeiten, ahnhand deren passende Werte angezeigt werden. Beispielsweise hat man zwei Dropdowns und abhängig davon was im ersten angewählt wurde, werden im zweiten die dazu passenden Werte angezeigt.
Kaskadierende Dropdowns einzusetzen ergibt in so ziemlich jedem Kontext Sinn. Hier einige mögliche Use-Cases aufgelistet:
Ich werde Ihnen anhand einer Immobilienverwaltung zeigen, wie sich nur die Immobilen anzeigen lassen, die einem bestimmten Gebäude zugeordnet sind.
Im ersten Dropdown lassen wir alle Siedlungen aus der SharePoint-Liste anzeigen. Damit jede Siedlung nur einmal angezeigt wird, verwenden wir die Distinct Funktion.
Somit sieht die Funktion für die Items des Dropdowns folgendendermassen aus:
Sort(Distinct(Liegenschaften, Siedlung), Result)
Im zweiten Dropdown lassen wir nun nur noch die Strassen anzeigten, die zur gewählten Siedlung gehören. Neu kann die Abhängigkeit einfach in den Eigenschaften des Dropdowns angewählt werden. Ich werde Ihnen in diesem Beitrag jedoch zeigen, wie es manuell mitels einer Kombination von Funktionen gelöst wird.
Dazu werden in der Items-Property der Combobox die Funktionen Sort, Distinct und Filter verwendet.
Sort(Distinct(Filter(Liegenschaften, Siedlung = ComboBoxSiedlung.Selected.Result), Strasse),Result)
Als Resultat dieser Funktion stehen nun nur noch die Strassen zur Auswahl, die zu der im ersten Dropdown ausgewählten Siedlung gehören.
Um nun die Objekte anzuzeigen, wird ein Gallery-Modul verwendet. Solange keine Strasse ausgewählt wurde, wird ein Standardwert ausgegeben. In diesem Fall wird beim App-Start die Collection colDefaultItem deklariert und mit den entsprechenden Parametern initialisiert. Sie müssen den Default-Value nicht unbedingt individuell deklarieren, Sie können per Default auch einfach alle Objekte anzeigen lassen.
Wurde nun im zweiten Dropdown die Strasse ausgewählt, werden sämtliche Wohnungen, die zu dieser Liegenschaft gehören aufgelistet.
Die Funktion der Items-Property lautet:
If( IsEmpty(ComboBoxStrasse.SelectedItems.Result), colDefaultItem, Filter( Liegenschaften, Strasse = ComboBoxStrasse.Selected.Result ) )
Erklärung:
Wenn also keine Strasse ausgewählt wurde, zeigt es die Collection colDefaultItem an, ansonsten werden alle Objekte aufgelistet, welche die Condition – Strasse = ComboBoxStrasse.Selected.Result – erfüllen.
Wie Sie sehen, kann die Usability einer App mit wenig Aufwand massiv verbessert werden.
Benötigen Sie unterstützung bei der Erstellung Ihrer Business-Applikation?
Kontaktieren Sie uns ungeniert.
Abonniere unseren Blog und verpasse keinen Beitrag mehr. Wir spammen Dich nicht zu, sondern informieren Dich nur über neue Beiträge.
Easy Directory 2.0 - entdecke die neuen Funktionen & Verbesserungen Wir freuen uns, dir die neueste Version von Easy Directory präsentieren zu dürfen! Diese ...
Übersicht des Microsoft Teams Update Nov24 Geschätze Kundschaft Sie telefonieren mit uns über Microsoft Teams ins öffentliche Netz, wofür wir uns herzlich bedanken. Aus ...
Teams Telefonie mit eSIM auf deinem Handy, ohne Teamsapp! Du kennst die Situation: Du hast eine Festnetznummer in Microsoft Teams im Büro. Unterwegs musst ...
Printix ist neu Tungsten Printix Cloud Wir freuen uns, Ihnen mitteilen zu können, dass Printix nun Tungsten Printix Cloud heisst. Der Name wurde geändert, ...
Buche einen Microsoft Teams Meeting Termin bei Christoph Schoch. Nach der Buchung erhälst du eine Termineinladung. Dort findest du einen Link für das Teams Meeting. Natürlich kannst du uns auch gerne eine E-Mail schreiben oder uns direkt anrufen.
Wenn du Fragen hast, nutze dazu unser Helpcenter und/oder eröffne eine Ticket für dein Anliegen.