In meinen Projekten sehe ich immer wieder, dass Power Automate Flows direkt in einer Umgebung erstellt werden. Damit stehen diese außerhalb einer Lösung bzw. Solution. Dem Flow ist es erst einmal gleich, wo dieser läuft, aber es gibt zumindest drei gute Gründe Flows in eine Lösung zu verpacken und damit zu arbeiten. Dieser Artikel stellt diese drei Vorteile vor. Diese gelten auch,  wenn Sie nicht mehrere Umgebungen haben, was oft der Grund ist überhaupt mit Lösungen zu arbeiten.

Achtung: Die hier beschriebenen Vorteile sind nur dann möglich, wenn Sie mit der URL https://make.powerautomate.com arbeiten. In allen anderen Oberflächen, auch in https://make.powerapps.com geht es nicht! Außerdem müssen Sie zwingend den (schon nicht mehr ganz) neuen Editor verwenden. Leider gibt es einige Trigger, mit welchen dies nicht möglich ist. Außerdem benötigen Sie unbedingt eine Dataverse Datenbank in Ihrer Umgebung.

Was sind Lösungen bzw. Solutions?

Lösungen sind ein logischer Container, welcher Artefakte aus der Power Platform enthält. Diese Artefakte können Power Apps, Flows, Dataverse Inhalte und vieles mehr sein. Die Lösungen können aus einer Umgebung exportiert und in eine Zielumgebung importiert werden. Damit ist es auch möglich eine Übersicht zu erhalten, welche Anpassungen zu welchem Zeitraum durchgeführt wurden. Lösungen können auch versioniert werden, was die Verwaltung noch einmal einfach macht. Lösungen erfordern zwingend eine Dataverse Datenbank.

Erster Vorteil: Mehr Aktionen

Wenn sich ein Flow außerhalb einer Lösung befindet und Sie versuchen darin einen weiteren Flow zu starten, so ist dies mit sehr hohem Aufwand verbunden oder sogar komplett unmöglich. Wenn sich der Flow in einer Lösung befindet, gibt es dafür eine entsprechende Aktion. Wir finden diese Aktion mit den Namen Run a Child Flow in der Gruppe Flows. Dort ist dies die einzige Aktion.

Gestartet werden kann dabei nur ein Flow, welcher sich in der gleichen Solution befinden und auf dem Sie Rechte haben.

Achtung: Aktuell ist es mir nicht möglich, die Aktion im neuen Editor zu konfigurieren, dies gelingt mir nur im klassischen Editor. Im neuem Editor läßt sich mir kein untergeordneter Workflow auswählen. Man muss also in der Entwicklung hin- und herschalten.

Es gibt bei dem Thema noch einiges mehr zu beachten, der folgende Artikel erläutert dies: https://learn.microsoft.com/en-us/power-automate/create-child-flows Dazu noch eine Ergänzung: Der Subworkflow benötigt zwingend die Aktion „Respond to a Power App or flow“. Diese Aktion ist allerdings nicht einfach zu finden. Sie müssen in der Suche nach einem Konnektor „Power Apps“ eingeben und zwar genau so. Wenn Sie nach PowerApps (ohne Leerzeichen) suchen, finden Sie einige Konnektoren für Power Apps, aber der von uns gewünschte ist nicht dabei.

Zweiter Vorteil: Einen Flow versionieren

Wenn ein Flow in einer Lösung erstellt wird, so wird dieser versioniert. Dabei können Entwürfe gespeichert und Flows selektiv veröffentlicht werden. Ebenso ist es möglich auf eine Vorgängerversion zurückzuspringen. Ein Flow wird einer Lösung wie jedes andere Artefakt hinzugefügt beziehungsweise erstellt.

Achtung: Ich habe immer wieder das Problem, dass wenn ich einen Flow in der Solution erstelle, den alten Editor angeboten bekomme. Die Alternative ist, den Flow zuerst außerhalb der Lösung zu erstellen und dann in diese zu importieren.

Die Steuerelemente der Versionierung finden sich oben rechts, wo sich auch schon Speichern, Test, etc. befinden.

Wenn jetzt ein Flow gespeichert wird, wird eine Nebenversion bzw. Entwurf gespeichert. Dieser kann nicht ausgeführt, sondern muss mit Publish erst veröffentlicht werden. Dies bedeutet auch, wenn Sie schon eine Version veröffentlicht haben, speichern und dann testen, wird NICHT das ausgeführt, was Sie eben gespeichert haben, sondern die letzte veröffentlichte Version. Vor einem Test muss via Publish der Flow veröffentlicht werden.

Über das Uhrensymbol, links neben dem Flow checker, können Sie in eine frühere Version wieder zurückspringen.

Dritter Vorteil: (Co)Besitzer eines Flow ändern

In einem Flow außerhalb einer Lösung kann ich Konten angeben, welche den Flow mit ändern können, aber nicht den Besitzer ändern. Nur ein Besitzer kann die Rechte eines Flows ändern und diese auch löschen. Mit einem Flow in einer Lösung kann ich aber auch den Besitzer ändern. Dazu wird auf die Verwaltungsseite des Flows gegangen und dort unter dem Punkt Co-owners mit einem Klick auf Set primary owner der Mitbesitzer eingetragen oder geändert.

Achten Sie darauf, dass der neue Besitzer auch die richtigen Lizenzen für den Flow besitzt. In meinen Screenshot ist dies nicht der Fall.

Fazit

Wenn Flows entwickelt werden, sollte diese immer in einer Solution verwendet werden. Es hat keine Nachteile und bringt nur Vorteile mit sich. Haben Sie schon mit Flow in Lösungen gearbeitet?

Wenn Sie mehr über Microsoft Flow lernen möchten, können Sie auch gern ein Seminar von mir besuchen. Diese biete ich einmal als Seminar für Personen mit IT Hintergrund an und einmal für Personen ohne IT Hintergrund. Nehmen Sie Kontakt mit mir auf.

Kommentar verfassen