Feinheiten von Power Automate- und Logik-Apps. Citizen Developer'a Referenzhandbuch # 1

Guten Tag allerseits! In einem meiner vorherigen Artikel habe ich darüber gesprochen, welche Funktionen die Cloud-Dienste von Power Automate und Logic Apps bieten. Wir haben die Hauptunterschiede zwischen ihnen untersucht, untersucht, in welchen Fällen der eine oder andere Dienst verwendet werden sollte, und uns auch mit einigen Nutzungsszenarien vertraut gemacht. Heute möchte ich eine neue Artikelserie zu verschiedenen Life-Hacks und Workarounds starten, mit denen Sie eine Reihe von Geschäftsszenarien mit den verfügbaren Tools implementieren können.



Verschwenden wir keine Zeit und schauen uns eines der heutigen Szenarien an, nämlich:

Starten Sie den Logic Apps-Stream über die Schaltfläche von Power Apps


In einigen Fällen ist es beim Entwurf und der Konfiguration verschiedener Systemmodule rentabler, Logic Apps als Power Automate zu verwenden. Es mag viele Gründe dafür geben, aber einer der beliebtesten ist das Vorhandensein von Premium-Konnektoren in Logic Apps, ohne zusätzliche Pläne wie Power Automate zu kaufen. In einem Stream müssen Sie möglicherweise einen HTTP-Webdienstaufruf durchführen und eine Verbindung zu SQL Server herstellen. In Power Automate sind diese Connectors jedoch nicht verfügbar, ohne einen speziellen Plan für Benutzer oder Streams zu erwerben. In diesem Fall helfen uns Logic Apps, bei denen ein etwas anderer Tarifmechanismus verwendet wird und alle Konnektoren, einschließlich Premium, zunächst verfügbar sind. Weitere Informationen zu den Funktionen von Logic Apps finden Sie in diesem Artikel .

Es gibt jedoch eine Funktion: Der Logic Apps-Stream kann im Gegensatz zum Power Automate-Stream nicht über eine Schaltfläche aus einem Formular oder einer Power Apps-Anwendung gestartet werden. Wie kann man dieses Problem lösen? In der Tat ist die Lösung recht einfach. Betrachten Sie diesen Fall als Beispiel für die Beantragung von technischem Support.

In unserem Fall haben wir also eine SharePoint-Liste mit „Anwendungen für den technischen Support“:



Zusätzlich kann das Formular mithilfe von Power Apps angepasst werden:



Wie Sie sehen können, gibt es im Formularkopf einen Übergang zu einem zusätzlichen Bildschirm mit Aktionsschaltflächen für die ausgewählte Anwendung:



Klicken Sie auf "Bewerbung delegieren" und füllen Sie die zusätzlichen Felder aus:



Über die Schaltfläche "Bestätigen" muss der Logic Apps-Stream gestartet werden. Wir können diesen Vorgang jedoch nicht direkt ausführen. Deshalb werden wir versuchen, etwas anders zu machen.

Erstellen Sie eine zusätzliche Aktionsliste auf der SharePoint-Website und fügen Sie mehrere Felder hinzu:

  1. ActionType - Art der aufzurufenden Aktion
  2. Kommentare - Kommentare
  3. ParentItemID - Kennung des übergeordneten Elements (Anwendung)
  4. DelegateTo - zusätzliches Feld zum Speichern des Delegaten
  5. CompleteProcessFlag - Aktionsverarbeitungsflag



Jetzt erstellen wir in PowerApps ein Element in der ActionsList-Liste, indem wir auf die Schaltfläche "Confirm" klicken:



Erstellen Sie mit der Patch-Funktion ein neues Element in der ActionsList-Liste mit dem Typ "Delegate" und übertragen Sie die verbleibenden Steuerwerte aus dem Formular. Überprüfen Sie, ob das Element erstellt wurde:



Jetzt können wir zu Logic Apps gehen. Wir gehen zu Azure, erstellen einen neuen Logic Apps-Stream und geben den Auslöser "Beim Erstellen eines Elements in der SharePoint-Liste" an:



Wir erstellen den Stream mit dem Schalter:



Die Logik dieses Streams lautet wie folgt:

Beim Erstellen eines Elements in der ActionsList-Liste steigt der Fluss an, überprüft den Wert des Felds "ActionType" des neuen Elements und wechselt je nach Art der Aktion zu einem der Switch-Zweige, in denen die erforderliche Logik verarbeitet wird. Auf diese Weise können wir in einem Thread beliebig viele Zweige für den Switch erstellen und alle Ereignisse innerhalb desselben Threads verarbeiten. Es müssen nur noch Elemente in der ActionsList-Liste mit den gewünschten Ereignistypen erstellt und dem Stream Unterstützung für diese Typen in Form zusätzlicher Switch-Zweige hinzugefügt werden.
Lassen Sie uns beispielsweise eine weitere Ereigniserstellung aus PowerApps durchführen, um eine Anwendung abzubrechen:



In diesem Fall wird in der Liste "ActionsList" ein neues Ereignis mit dem Typ "Ablehnen" und Kommentaren zum Abbrechen angezeigt. Stellen Sie sicher, dass Sie den Wert des Bezeichners des übergeordneten Elements übergeben, da es sonst sehr problematisch ist, die erforderliche Reihenfolge später aus dem Stream zu ermitteln. Fügen Sie als Nächstes Unterstützung für den neuen Ereignistyp im Logic Apps-Stream hinzu. Wir machen noch einen Zweig im Switch:



Und es bleibt noch am Ende des Streams eine Aktualisierung des Verarbeitungsflags hinzuzufügen, um zu verstehen, welche Ereignisse von unserem Stream verarbeitet werden und welche nicht:



Dieses Flag hilft bei unvorhergesehenen Situationen, in denen die Verarbeitung des Ereignisses durch den Thread nicht erfolgreich ist. Es ist möglich, einen Thread zu erstellen, der beispielsweise zweimal täglich gemäß einem Zeitplan aufgerufen wird, und Ereignisse in der ActionsList-Liste zu verarbeiten, deren Flag "CompleteProcessFlag" "Nein" lautet.

Der in diesem Artikel beschriebene Mechanismus wurde erfolgreich implementiert und funktioniert für mehrere Clients stabil. Abschließend möchte ich sagen, dass die Power Platform viele interessante Funktionen enthält, die auf den ersten Blick möglicherweise nicht sichtbar sind, aber bei der Implementierung verschiedener Fälle sehr hilfreich sein können. In den folgenden Artikeln werde ich versuchen, Ihnen noch mehr Möglichkeiten aufzuzeigen. Vielen Dank für Ihre Aufmerksamkeit!

All Articles