Sebastian Koers
In 6 Schritten zu effizienteren PowerAutomate-Flows
Mit PowerAutomate kannst Du diverse manuelle Prozesse Deiner Organisation in die digitale Zeit integrieren und vor allem automatisieren. Manuelle Prozesse sollten für den Einzeln nicht aufwändig ausführbar und weitestgehend so optimiert sein, dass diese binnen weniger Minuten erledigt sind und Diesem Spaß machen.
Ohne tiefgehende Programmierkenntnisse kann jeder mit ein wenig Übung solche Prozesse über Microsoft PowerAutomate "gestalten.
Um, aber den Überblick über Prozess und Resultat zu behalten, solltest Du ein paar Punkte beachten:
Flows in Solutions bündeln Um den Überblick über Deine Flows zu behalten, solltest Du diese abhängig nach Prozess, in unterschiedliche sog. "Solution" (deutsch: "Projektmappen") bündeln. Sofern Du auf der Seite "flow.microsoft.com" angemeldet bist, siehst Du auf der linken Seite (in der Navigation) den Eintrag "Solutions". Hierunter kannst Du Dir zunächst ein leeres Lösungspaket erstellen, worin Du dann Flows, PowerApps, Datentabellen und weiteres aufbauen kannst. All diese Elemente gelten nun für Deine "Solution" und können hierin immer bearbeitet und beobachtet werden.
Steuere parallele Läufe Deiner Flows Um ggf. Wartezeiten in Deinen einzelnen Prozessen zu optimieren, kannst Du in einem Flow die Parallelität konfigurieren. Im Standard eines Flow laufen diese nacheinander, sofern ein Flow nicht abgeschlossen ist reihen sich weitere in einer Warteliste ein. Ein ganz einfaches Beispiel: Mitarbeiter:in A schickt seinen Urlaubsantrag ab, sofern dieser nicht bearbeitet wird. Bleiben die Urlaubsanträge von den Mtarbeiter:innen B und C in einer Warteschlange und können nicht bearbeitet werden. PowerAutomate ermöglicht Dir dies ganz einfach zu konfigurieren, sodass Du bis max. 25 Prozesse gleichzeitig starten kannst. An einem Trigger (das oberste Element in einem Flow) siehst Du am Rand 3 Punkte welche Dir mit einem Klick darauf ein Menü anzeigen. In diesem Menü wählst Du "Einstellungen".
Lass Deine Flows erst bei erfolgreicher Bedienung triggern Wenn Du beispielsweise einen Flow über eine Daten-Tabelle (DataVerse, SharePoint-Liste/-Bibliothek) legen oder nur auf Eingang bestimmter E-Mails mit festem Ausschnitt im Betreff reagieren möchtest, solltest Du dies über eine "Wenn-Dann"-Bedienung lösen. Zunächst hört sich eine "Wenn-Dann"-Bedienung hier zwar recht sinnig an, führt aber später dazu, dass Du einzelne Läufe eines Flows nicht mehr übersichtlich zur Verfügung hast. Keine Gute Idee Du kannst zwar eine "Wenn-Dann"-Bedienung als erste Aktion erstellen und in dieser deine Erfolgsbedienung abrufen (bspw. Betreff "enthält" Rechnung). Kommt jetzt eine E-Mail mit dem Betreff "Rechnung XYZ" an springt Dein Flow an und läuft auch in den Erfolgszweig der Bedienung. Kommt hingegen in Deinem Postfach eine Mail mit dem Betreff "interner Newsletter" an, springt der Flow ebenfalls an. In diesem Fall läuft der Flow zwar in die Negativ-Bedienung und sofern hier nichts implementiert ist, ist der Flow auch direkt abgeschlossen. Obwohl Du eig. nur Rechnungen verarbeiten möchtest wird Deine Historie des Flows bei jeder Mail erweitert und Du siehst nicht mehr auf einen Blick welcher Lauf bezog sich jetzt auf eine Rechnung. Besser Lass Die "Wenn-Dann"-Bedienung weg und den Flow nur triggern, wenn auch eine Mail mit dem Betreff "Rechnung" eingeht. Die erste Aktion Deines Flows ist immer der Trigger und hat wie jede weitere Aktion auch "3 Punkte" an der rechten Seite. Klickst Du auf diese, dann öffnet sich eine kleines Menü mit dem Eintrag "Einstellungen".

Hier hast Du die Möglichkeit eine sog. Trigger-Bedienung zu formulieren. Diese bewirkt, dass der Flow nur bei erfolgreicher Bedienung ausgeführt wird und keine überflüssige Läufe generiert.

Keine Wiederholungsrichtline Verwendest Du Daten-Connectoren in Deinem Flow, kann es bei einem Fehler im Connector (bspw. Ungültige Verbindung/ Verbindungsreferenz) zu längeren Laufzeiten als unbedingt nötigt kommen. Im Standard ist von Microsoft eine Wiederholungsrichtlinie von 4 Versuchen eingestellt, erst wenn alle Versuche fehlschlagen geht Flow zur nächsten Aktion. Oft macht es aber gar keinen Sinn diese 4 Versuche abzuwarten. Wenn einer Fehler in der Verbindung existiert, wie ungültige Zugangsdaten oder nicht erreichbare Schnittstelle, wird es beim nächsten Versuch höchstwahrscheinlich auch nicht klappen. Daher kannst Du auch hier an einer Aktion das kleine Menü über die 3 Punkte öffnen und in die Einstellungen wechseln. Hier gibt es den Bereich der sog. Wiederholungsrichtline. Mit einem klickt, kannst Du hier aus diverse Einträgen wählen. Wähle hier "Ohne" aus und der Flow geht bei einem Fehler in der Aktion direkt weiter zur Nächsten.

Fange Fehler ab und lasse Dich informieren Läuft eine Aktion in einem Flow auf einen Fehler, muss die nicht zwangsläufig schlecht sein. Damit Du bei einem Fehler aber rechtzeitig informiert wirst, kannst Du wie folgt vor gehen. Nach Deinem Connector, welcher evtl auf einen Fehler laufen kann, erstellst Du einen sog. parallelen Branch. Somit kannst Du nach Deiner Aktion zwei Stränge parallel abarbeiten oder Du fängst Fehler ab. In einem der zwei entstandenen Bereiche folgt Dein Prozess weiter, in dem anderen lässt Du Dir eine Mail schicken. Hinweis: Sobald Du einen parallelen Branch erstellt hast, solltest Du temporär in jedem der zwei Bereiche eine Aktion hinzufügen (bspw. ein "Verfassen" oder engl. "Compose"). Damit Du diesen Flow speichern kannst, andernfalls lässt dieser sich nicht speichern und Deine Änderungen könnten verlorene gehen. In dem Bereich, wo Dein Flow im Prozess weitergehen soll, klickst Du auf die 3 Punkte der ersten Aktion. Hier wählst Du den Eintrag "Erfolgreich" und alle anderen bleiben abgewählt. Nun klickst Du auf speichern.

In dem Bereich, wo Du auf den Fehler reagieren möchtest, klickst Du ebenfalls auf die 3 Punkte des ersten Elementes. Du wählst hier die restlichen 3 Eigenschaften und "Erfolgreich" wählst Du ab. Klicke wieder auf speichern. Nun sollte sich der Pfeil zu Deinem "Fehler"-Branch rot-gestrichelt markiert haben und Dein Flow reagiert für diese Aktion nun auf einen Fehler.
Geschickt selektieren anstelle von "Wenn-Dann's" In PowerAutomate lassen sich derzeit nur max. 8 Elemente (Wenn-Danns, Schleifen,...) in einander Schachteln. Jedoch nach Komplexität deines Flows kannst Du schnell an die Grenzen stoßen. Du brauchst, aber möglichst gar nicht "Schachteln", wenn Du Deine Abfragen geschickter selektierst. Bei DataVerse/-SharePoint-Connectoren kannst Du unteranderem im Filter-Feld mit ODATA Deine Ergebnis weiter eingrenzen. Andernfalls steht eine Connector "Datenvorgang" zur Verfügung, welcher Dir diverse Möglichkeiten bietet Resultate zu filtern.
Bei Euch läufts noch nicht rund? Fragen gerne an: Sebastian Koers sebastian.koers@hec.de