3. Juli 2019 3kubik

Sind PowerApps wirklich so gut?

Oftmals wurden sie bereits von Microsoft, sowie deren MVPs (Most Valuable Professionals) als eierlegende Wollmilchsau angepriesen und als DER Nachfolger des abgekündigten Microsoft Infopaths betitelt. Dass InfoPath jedoch nicht einfach so zu ersetzen ist, bemerkte dann auch Microsoft, woraufhin der Support (ursprünglich bis 2023) um weitere drei Jahre (bis 2026) verlängert wurde. Damit ist aber dennoch ein Ende in Sicht.

Gerade mit Hinblick auf das sog. Modern Design von SharePoint wird einem schnell deutlich, dass mit InfoPath nicht mehr viel zu holen sein wird. Genau das war der Grund, weswegen wir als 3kubik uns mal ein bisschen intensiver mit den PowerApps beschäftigt haben. Und welches Aufgabenszenario motiviert da mehr als die Erstellung eines Urlaubsplaners?! Eigentlich keines, höchstens vielleicht der Urlaub selber. 😉

In unserem Tenant sind alle Benutzer mit der E3-Lizenz ausgestattet und haben somit PowerApps im Zugriff. In diesem Projekt haben wir zwei Apps (eine mobile App mit SharePoint als Datenbasis, sowie die Ansicht einzelner Elemente in der SharePoint-Liste) selber editiert und erstellt. Ein Hinweis vorab: Hierbei geht es nicht um eine detaillierte Anleitung zum Nachbasteln, sondern um einen Erfahrungsbericht zur Nutzung von PowerApps. Keiner von uns ist an der Stelle der neue PowerApps-Guru, sondern lediglich fortschrittsbegeisterter Nutzer (mit etwas technischem Background). Und gerade das scheint im Sinne von Microsoft zu liegen, wenn schließlich jeder Nutzer im Tenant sich in PowerApps austoben kann und soll. Ein Hinweis vorab: Es gibt keinen automatischen/einfachen Übersetzungsdienst in PowerApps. In SharePoint können die Spalten leicht übersetzt werden, indem die angezeigte Sprache geändert wird. Dies hat jedoch keinen Einfluss auf die angezeigten Spalten in PowerApps. Um einen Übersetzungsdienst zu nutzen, haben wir eine Lösung namens Microsoft Translator gefunden, jedoch noch nicht im Detail implementiert.

Bei der Anwendung von PowerApps muss man klar unterscheiden, ob mit einer „richtigen App“, die z.B. mit Hilfe der mobilen PowerApps-App (downloadbar in allen gängigen App-Stores) geöffnet werden kann, arbeiten möchte, oder ob man lediglich das Formular im SharePoint ändern möchte. PowerApps an sich können sehr viele unterschiedliche Datenquellen besitzen und haben standardmäßig erstmal rein gar nichts mit dem SharePoint zu tun! Nur in unserem Beispiel haben wir eine mobile App mit Hilfe von PowerApps erstellt und als zweiten Schritt die Formulare der Antragserstellung im SharePoint zusätzlich mit PowerApps editiert.

Abbildung 1 – SharePoint-Element-Ansicht (geändert mit Hilfe von PowerApps)

Um eine kleine Struktur zu geben, wie wir vorgegangen sind, folgen nun ein paar Randinformationen:

Die Datenbasis liegt komplett in unserem SharePoint, wo wir mit Hilfe von drei verschiedenen Listen arbeiten:

  • Antragsliste
  • Urlaubsstammdaten (verfügbare & übrige Urlaubstage der einzelnen Personen)
  • Urlaubskalender

Am Anfang der Entwicklung erfolgte die Umsetzung der Logik (inkl. Freigabeinstanz) mit Hilfe von SharePoint-Workflows. Im Zuge der Weiterentwicklung konnten wir bereits bei der Benutzung von PowerApps mehrere logische Abfragen des Workflows durch Formeln im Formular ersetzen.

Dies galt sowohl in der mobilen App, als auch in der Formularansicht im SharePoint. Es können Felder mit Hilfe von Formeln vordefinierte Daten erhalten, ein- und ausgeblendet werden, sowie selbstverständlich optisch formatiert als auch automatisch berechnet werden. Als kleines Beispiel haben wir hier in der App z.B. das Speichern bei null oder negativen restlichen Urlaubstagen deaktiviert.

Abbildung 2 – Hier erfolgt der Hinweis auf die neg. restlichen Urlaubstage. Außerdem fehlt der Haken zur Speicherung des Elements. Zur Info: Die Tagesberechnung funktioniert, der 10.06.2019 ist jedoch Pfingstmontag.

Ähnlich wird auch die Erstellung im SharePoint dargestellt. Dass bedeutet, dass nach Anlage eines gültigen Antrags der Vorgesetzte eine Mail mit Link zum SharePoint-Element erhält. Die Freigabe eines Antrags erfolgt dabei über das Element direkt und nicht wie üblicherweise (aber user-unfreundlicher) über eine separate SharePoint-Aufgabe. In der folgenden Maske werden nun in Abhängigkeit der Person und des Status verschiedene Eigenschaften und Bearbeitungsmöglichkeiten bereitgestellt:

Abbildung 3 – Formeln & Regeln können ähnlich im wie im InfoPath hinterlegt werden

Parallel wurde übrigens ein Eintrag im Urlaubskalender erstellt. Dies ist ein SharePoint-Kalender (leider noch im klassischen Design), welcher wiederrum mit Outlook synchronisiert werden kann. Anträge, die in Prüfung sind, werden als Blocker im Kalender dargestellt. Nach erfolgreicher Freigabe wird das Zeitfenster mit dem Personennamen im Kalender hinterlegt und ist somit zentral im Unternehmen verfügbar.

Abbildung 4 – Kalender in der klassischen SharePoint-Ansicht

Abbildung 5 – Synchronisierter Outlook-Kalender mit freigegebenem Urlaub

Natürlich wird nach Freigabe automatisch der Antragssteller informiert.
Es folgen ein kleines Zwischen-Resümee und Anmerkungen zur Konfiguration: Die Erstellung und Bearbeitung von eigenen PowerApps wirkt anfangs etwas kompliziert und unübersichtlich. Man findet sich aber relativ schnell in der Bedienung zurecht. Vorteil auch hier: die Office-Ribbonbar, womit man bereits vom Start an einfache Änderungen vornehmen kann, wie z.B. Schriftformatierungen, Rahmen etc.

Abbildung 6 – Die Bildschirmaufteilung erinnert leicht an InfoPath. In der rechten Navigation können die spezifischen Feld-Details konfiguriert werden

Etwas detaillierter wird es bei der Umstellung der Feldeigenschaften, wie Schreibschutz, Sichtbarkeit, Kalkulationen oder Regeln. Hierbei wird versucht, mit einfachen Mitteln möglichst viel Funktion umzusetzen. Natürlich bedarf es anfangs einiger Geduld, die PowerApps stehen letztendlich aber InfoPath in nichts nach. Sicherlich gibt es Szenarien, bei denen mit Hilfe von PowerApps noch nicht alle Funktionen von InfoPath gleichwertig ausgeführt werden können, allerdings ist die Weiterentwicklung rapide schnell und wird früher oder später InfoPath ersetzen (können). Gerade mit Hinblick auf den Zeitraum bis 2026 sind wir als 3kubik sehr zuversichtlich, dass man bis dahin problemlos neue Maßstäbe gesetzt hat.

Abschließend lässt sich festhalten, dass PowerApps bereits jetzt eine gute Möglichkeit bietet, eigene Apps mit verschiedensten Datenquellen zu erstellen, sowie z.B. im SharePoint Formularanpassungen vorzunehmen, die Logiken in Workflows abfangen und erleichtern können. Die Handhabung ist anfangs etwas schwierig, aber nach 3-4 Stunden konzentrierter Arbeiten und Tests, erkennt man schnell die Vorteile. Jeder, der damals mit InfoPath angefangen hat, kennt den Prozess – und oftmals gestaltet dieser sich bekanntlich anfangs als „anstrengend“ bis man dann endlich den Mehrwert erkennt. Darum hier unser Tipp: Probiert PowerApps! Die Vorteile ergeben sich dann tatsächlich. Alle App- und Technikinteressierten sollten sich hier mal austoben und etwas Zeit für diese tolle Option der „code-losen“ Entwicklung blocken.

Denn wer nicht mit der Zeit geht, muss bekanntlich mit der Zeit gehen.