Die Filter-Funktion in Power Apps – Einstieg mit Ausblick
Wenn du mit Power Apps arbeitest, wirst du früher oder später auf die Filter
-Funktion stoßen – und vermutlich wirst du sie lieben oder verfluchen. Denn so simpel sie auf den ersten Blick auch wirkt, steckt doch eine Menge Power drin. Mit Filter
kannst du gezielt Daten aus einer Sammlung, einer SharePoint-Liste oder einer anderen Datenquelle herausziehen – und das basierend auf fast beliebigen Bedingungen. Egal ob du einfache Dropdown-Auswahlen baust oder komplexe Business-Logik umsetzt – Filter
ist dein Werkzeug der Wahl.
Die Möglichkeiten sind enorm vielfältig. Du kannst Listen nach Benutzer-Eingaben durchsuchen, dynamische Ansichten erstellen oder auch mehrere Filterbedingungen kombinieren. Gerade wenn es darum geht, deine App wirklich interaktiv und nutzerfreundlich zu machen, ist Filter
kaum wegzudenken.
In diesem Artikel schauen wir uns Schritt für Schritt an, wie du die Funktion sinnvoll einsetzt – und was du beachten solltest, um typische Stolperfallen zu vermeiden. Die Seite hier wird regelmäßig erweitert – neue Anwendungsfälle, kleine Tricks und tiefere Einblicke kommen laufend dazu. Es lohnt sich also, öfter mal vorbeizuschauen!
Textwerten
isMatch
Im folgenden Beispiel durchsuchen wir die AD-Gruppen und suchen nach Gruppen die einen bestimmten Suchwert beinhalten. Mit MatchOptions kann definiert werden in weit eine Übereinstimmung mit dem Suchwert stattfinden soll.
ClearCollect(
colAzureGroups,
Filter(
AddColumns(
MicrosoftEntraID.GetMemberGroups(
User().EntraObjectId,
false
) As _group,
displayName,
MicrosoftEntraID.GetGroup(_group.Value).displayName
),
IsMatch(
displayName,
"Security",
MatchOptions.Contains
)
)
);
//Sucht nach AD Gruppen wo der displayName Security beinhaltet
nach Datum und Zeit
Datum mit Uhrzeit nach Datum
Beim Filtern einer DateTime-Spalte mit einem reinen Datum, stoßt ihr an das Problem das ihr wohl nur in den wenigsten Fällen ein richtiges Ergebnis bekommt. Das liegt an dem Zeitfaktor, denn auch der muss mit eurem Filterkriterium übereinstimmen. Wenn ihr also eine solche Spalte nur nach einem Datum filtern wollt, könnt ihr wie folgt vorgehen.
With(
{
dawn: DateTimeValue(datePicker.SelectedDate),
dusk: DateTimeValue(
DateAdd(
datepicker.SelectedDate,
1,
TimeUnit.Days
)
)
},
Filter(
deineTabelle,
DateTimeSpalte > dawn,
DateTimeSpalte < dusk
)
)
Verfügbare Zeiträume von Ressourcen abfragen
Um zu ermitteln ob eine bestimme Ressource wie z.B.: ein Meetingraum, ausgewählte Geräte oder ein Fahrzeug, über einen gewissen Zeitraum verfügbar ist kann man wie folgt vorgehen.
With(
{
dawn: DateTimeValue(datePicker.SelectedDate),
dusk: DateTimeValue(
DateAdd(
datepicker.SelectedDate,
1,
TimeUnit.Days
)
)
},
Filter(
deineTabelle,
DateTimeSpalte > dawn,
DateTimeSpalte < dusk
)
)