Pay-as-you-go in Power Automate erklärt
Was das Pay-as-you-go-Modell in Power Automate kostet und wie es sich von Premium- und Process-Lizenzen unterscheidet.
Variablen in Power Automate einfach erklärt: Initialisieren, Festlegen, Erhöhen und Anfügen – die wichtigsten Aktionen auf Deutsch.
Variablen sind in Power Automate benannte Speicherplätze, die ein Cloud-Flow während seines Laufs mit sich führt. Sie zählen Schleifendurchläufe, sammeln Zwischenergebnisse oder merken sich einen Status bis zum Ende des Flows.
Verwirrend ist für Einsteiger vor allem die deutsche Terminologie. Im Aktionskatalog stehen fünf ähnlich klingende Bausteine nebeneinander: Initialisieren, Festlegen, Erhöhen, Verringern und Anfügen.
Dieser Artikel ordnet sie nach der offiziellen Microsoft-Dokumentation ein. Er zeigt den passenden Datentyp, den Gültigkeitsbereich, den JSON-Code hinter den Aktionen und die typischen Fehlerquellen.
Eine Variable ist ein benannter Speicherplatz innerhalb eines Cloud-Flows mit festem Datentyp und Wert. Sie brauchen sie überall dort, wo ein Wert über mehrere Aktionen oder Schleifendurchläufe hinweg erhalten bleiben muss.
Laut der Dokumentation zum Speichern und Verwalten von Werten in Variablen unterstützt Power Automate sechs Datentypen: Integer, Float, Boolean, String, Array und Objekt.
Typische Einsatzfälle sind:
Wichtig ist der Gültigkeitsbereich. Eine Variable existiert nur innerhalb des Cloud-Flows, der sie erstellt, bleibt aber über sämtliche Schleifeniterationen bestehen. Beim Zugriff referenzieren Sie den Namen der Variablen als Token, nicht den Namen der erzeugenden Aktion.
Power Automate kennt sechs Datentypen, und der gewählte Typ entscheidet darüber, welche Folgeaktionen überhaupt zur Auswahl stehen. Die folgende Tabelle fasst zusammen, was pro Typ möglich ist.
Datentyp | Auswahl im Feld „Typ" | Beispiel-Startwert | Erhöhen und Verringern | Anfügen
Datentyp: Integer · Auswahl im Feld „Typ": Integer · Beispiel-Startwert: 0 · Erhöhen und Verringern: ja · Anfügen: nein
Datentyp: Float · Auswahl im Feld „Typ": Float · Beispiel-Startwert: 1.99999 · Erhöhen und Verringern: ja · Anfügen: nein
Datentyp: Boolean · Auswahl im Feld „Typ": Boolean · Beispiel-Startwert: false · Erhöhen und Verringern: nein · Anfügen: nein
Datentyp: String · Auswahl im Feld „Typ": Zeichenfolge · Beispiel-Startwert: "" · Erhöhen und Verringern: nein · Anfügen: ja, als Zeichenfolge
Datentyp: Array · Auswahl im Feld „Typ": Array · Beispiel-Startwert: [] · Erhöhen und Verringern: nein · Anfügen: ja, als Element
Datentyp: Object · Auswahl im Feld „Typ": Objekt · Beispiel-Startwert: {} · Erhöhen und Verringern: nein · Anfügen: nein
Für Zähler nehmen Sie also Integer. Für gesammelte Listen nehmen Sie Array, nicht String, sonst müssen Sie den Text später wieder zerlegen.
Es gibt sechs Aktionen, und jede hat genau einen Zweck: anlegen, ersetzen, hochzählen, runterzählen, Text anhängen, Listenelement anhängen. Die Spalte „JSON-Typ" hilft Ihnen später beim Lesen der Code-Ansicht.
Aktion im deutschen Designer | JSON-Typ | Wirkung | Erlaubte Datentypen | Wert Pflichtfeld
Aktion im deutschen Designer: Variable initialisieren · JSON-Typ: InitializeVariable · Wirkung: legt Name, Typ und Startwert an · Erlaubte Datentypen: alle sechs · Wert Pflichtfeld: nein
Aktion im deutschen Designer: Variable festlegen · JSON-Typ: SetVariable · Wirkung: ersetzt den kompletten Wert · Erlaubte Datentypen: alle sechs · Wert Pflichtfeld: ja
Aktion im deutschen Designer: Variable erhöhen · JSON-Typ: IncrementVariable · Wirkung: addiert einen konstanten Wert · Erlaubte Datentypen: Integer, Float · Wert Pflichtfeld: nein, Standard ist 1
Aktion im deutschen Designer: Variable verringern · JSON-Typ: DecrementVariable · Wirkung: subtrahiert einen konstanten Wert · Erlaubte Datentypen: Integer, Float · Wert Pflichtfeld: nein, Standard ist 1
Aktion im deutschen Designer: An Zeichenfolgenvariable anfügen · JSON-Typ: AppendToStringVariable · Wirkung: hängt Text hinten an · Erlaubte Datentypen: String · Wert Pflichtfeld: ja
Aktion im deutschen Designer: An Arrayvariable anfügen · JSON-Typ: AppendToArrayVariable · Wirkung: hängt ein Element hinten an · Erlaubte Datentypen: Array · Wert Pflichtfeld: ja
Jede Variable muss vor der ersten Verwendung mit der Aktion Variable initialisieren angelegt werden, die Name, Datentyp und optional einen Startwert in einem Schritt festlegt.
Zwei Einschränkungen sollten Sie vorher kennen. Erstens erstellt eine einzelne Aktion immer nur eine Variable, obwohl der interne Abschnitt variables als Array aufgebaut ist. Für jede weitere Variable brauchen Sie eine eigene Aktion.
Zweitens lassen sich Variablen ausschließlich auf globaler Ebene deklarieren, also nicht innerhalb von Bereichen, Bedingungen oder Schleifen. Möchten Sie in einer Bedingung einen Zähler nutzen, gehört die Initialisierung davor auf die oberste Ebene.
Mit Variable festlegen überschreiben Sie den kompletten Inhalt einer bestehenden Variablen durch einen neuen Wert. Anders als beim Initialisieren ist der Wert hier ein Pflichtfeld, weil die Aktion keinen Standardwert kennt.
Neuer Wert und Variable müssen denselben Datentyp haben. Eine Integer-Variable akzeptiert also keinen Zeichenfolgenwert.
Die Aktion passt immer dann, wenn Sie einen Wert vollständig ersetzen wollen, etwa beim Wechsel eines Status oder beim Überschreiben eines Zwischenergebnisses.
Für Zähler gibt es zwei eigene Aktionen, die den aktuellen Stand selbst fortschreiben, sodass Sie keinen Ausdruck bauen müssen. Beide arbeiten laut Dokumentation ausschließlich mit Integer- und Float-Variablen.
Erhöhen addiert einen Wert zur bestehenden Variablen, standardmäßig eins. Verringern subtrahiert einen Wert, ebenfalls standardmäßig eins.
Das Beispiel aus der Microsoft-Dokumentation ist ein Schleifenzähler. Sie initialisieren eine Integer-Variable mit 0, platzieren die Erhöhen-Aktion innerhalb der Apply-to-each-Schleife und lesen danach die Anzahl der verarbeiteten Elemente aus.
Anfügen ergänzt einen Wert als letztes Element einer bestehenden Zeichenfolge oder eines bestehenden Arrays, ohne den bisherigen Inhalt zu überschreiben. Es gibt zwei getrennte Aktionen, eine für Zeichenfolgen und eine für Arrays.
Der anzufügende Wert ist ein Pflichtfeld und kann grundsätzlich jeden Typ haben. Praktisch ist das beim Sammeln von IDs innerhalb einer Schleife, die Sie am Ende gemeinsam ausgeben.
Der Designer schreibt hinter jede Variablen-Aktion ein JSON-Objekt, das Sie über die Code-Ansicht einer Aktion einsehen können. Das folgende Beispiel zählt Anhänge und sammelt gleichzeitig deren Dateinamen.
1"actions": {2 "Variable_initialisieren_Anzahl": {3 "type": "InitializeVariable",4 "inputs": {5 "variables": [6 { "name": "Anzahl", "type": "integer", "value": 0 }7 ]8 },9 "runAfter": {}10 },11 "Variable_initialisieren_Dateinamen": {12 "type": "InitializeVariable",13 "inputs": {14 "variables": [15 { "name": "Dateinamen", "type": "array", "value": [] }16 ]17 },18 "runAfter": { "Variable_initialisieren_Anzahl": ["Succeeded"] }19 },20 "Auf_alle_anwenden": {21 "type": "Foreach",22 "foreach": "@triggerOutputs()?['body/attachments']",23 "actions": {24 "Variable_erhoehen": {25 "type": "IncrementVariable",26 "inputs": { "name": "Anzahl", "value": 1 },27 "runAfter": {}28 },29 "An_Arrayvariable_anfuegen": {30 "type": "AppendToArrayVariable",31 "inputs": {32 "name": "Dateinamen",33 "value": "@items('Auf_alle_anwenden')?['name']"34 },35 "runAfter": { "Variable_erhoehen": ["Succeeded"] }36 }37 },38 "runAfter": { "Variable_initialisieren_Dateinamen": ["Succeeded"] },39 "runtimeConfiguration": { "concurrency": { "repetitions": 1 } }40 }41}Die Zeile "repetitions": 1 erzwingt die sequenzielle Ausführung der Schleife. Genau darauf kommt es an, sobald Variablen im Spiel sind.
Sie lesen den Inhalt einer Variablen mit der Funktion variables('<Variablenname>'), die den Wert unabhängig vom Datentyp zurückgibt. Nachzulesen ist das im Referenzhandbuch zu Workflowausdrucksfunktionen.
Diese Ausdrücke tragen Sie im Designer im Reiter Ausdruck ein:
1variables('Anzahl')2string(variables('Dateinamen'))3join(variables('Dateinamen'), ', ')4length(variables('Dateinamen'))5concat('Verarbeitete Anhänge: ', string(variables('Anzahl')))6int(triggerOutputs()?['body/Menge'])Der letzte Ausdruck wandelt einen Text in einen Integer um, bevor Sie ihn einer Integer-Variablen zuweisen. Mehr zu Vergleichsoperatoren wie and, or oder equals steht in Verwenden von Ausdrücken in Bedingungen.
Weil bei paralleler Ausführung mehrere Durchläufe gleichzeitig auf denselben Variablenwert zugreifen und sich gegenseitig überschreiben. Zählerstände fallen dann zu niedrig aus, angefügte Listeneinträge fehlen oder stehen in falscher Reihenfolge.
Apply-to-each-Schleifen laufen in Power Automate standardmäßig sequenziell. Wer die Nebenläufigkeit für mehr Tempo einschaltet, muss laut Dokumentation auf Variablen innerhalb der Schleife verzichten, wenn die Ergebnisse vorhersagbar bleiben sollen.
Fünf Fehlerbilder erklären fast alle Probleme mit Variablen. Jeder Eintrag nennt die Ursache, die Lösung und die passende Stelle in der Herstellerdokumentation.
1. Die Aktion „Variable initialisieren" lässt sich in einer Bedingung nicht speichern.
Ursache: Variablen dürfen nur auf globaler Ebene deklariert werden, nicht in Bereichen, Bedingungen oder Schleifen. Lösung: Initialisierung auf die oberste Ebene des Flows verschieben und in der Bedingung nur noch Variable festlegen verwenden. Quelle: Werte in Variablen speichern und verwalten.
2. Der Zähler steht am Ende auf einem zu niedrigen Wert.
Ursache: Die Apply-to-each-Schleife wurde auf parallele Ausführung umgestellt. Lösung: Nebenläufigkeitssteuerung einschalten und den Grad der Parallelität auf 1 setzen, oder im Code-View runtimeConfiguration.concurrency.repetitions auf 1 stellen. Quelle: Schleifen in Workflows.
3. Die gewünschte Variable erscheint bei „Variable erhöhen" nicht in der Namensliste.
Ursache: Die Aktionen zum Erhöhen und Verringern arbeiten nur mit Integer und Float. Lösung: Datentyp der Variablen prüfen und bei Bedarf auf Integer ändern. Quelle: Werte in Variablen speichern und verwalten.
4. „Variable festlegen" schlägt zur Laufzeit fehl.
Ursache: Der neue Wert hat einen anderen Datentyp als die Variable, etwa ein Text aus einem Formularfeld für eine Integer-Variable. Lösung: Wert vorher mit int(), float() oder string() umwandeln. Quelle: Referenz zu Workflowausdrucksfunktionen.
5. Eine Array-Variable erscheint in der E-Mail als JSON statt als Liste.
Ursache: Das Array wurde unverändert in ein Textfeld gelegt und dabei serialisiert. Lösung: mit join(variables('Dateinamen'), ', ') in eine lesbare Aufzählung umwandeln. Quelle: Referenz zu Workflowausdrucksfunktionen.
Sie setzen Power Automate produktiv für mehrere Abteilungen ein und brauchen Flows mit komplexerer Variablenlogik, verschachtelten Schleifen oder größeren Datenmengen? Bei Aufbau, Testing und Betrieb unterstützt Sie die Power-Automate-Beratung von NordFlux. Sie behalten die Kontrolle über Ihre Flows, während die technische Feinarbeit an erfahrene Hände geht.
Genau eine. Der interne Abschnitt variables ist zwar als Array aufgebaut, die Aktion erstellt laut Dokumentation trotzdem nur eine Variable. Für jede weitere brauchen Sie eine eigene Aktion Variable initialisieren.
Nein. Variablen lassen sich nur auf globaler Ebene deklarieren. Platzieren Sie die Aktion Variable initialisieren deshalb immer auf der obersten Ebene, auch wenn Sie die Variable erst in einer Schleife befüllen.
Nein, beide Aktionen arbeiten ausschließlich mit Integer- und Float-Variablen. Für Zeichenfolgen und Arrays nutzen Sie stattdessen die passende Anfügen-Aktion.
Variable festlegen ersetzt den kompletten Inhalt. Variable anfügen behält den bisherigen Inhalt und ergänzt einen Wert als letztes Element, was nur bei Zeichenfolgen und Arrays möglich ist.
Nein, das Feld ist optional. Microsoft empfiehlt einen Startwert trotzdem ausdrücklich, damit der Ausgangszustand nachvollziehbar bleibt. Das gilt besonders für Zähler, die bei 0 beginnen sollen.
Gründer von NordFlux. Sieben Jahre Erfahrung von Web und SEO bis zur Automatisierung im Konzern-Maßstab, heute pragmatisch für den Mittelstand und mit deutscher Datenhoheit.
Zertifizierungen
Was das Pay-as-you-go-Modell in Power Automate kostet und wie es sich von Premium- und Process-Lizenzen unterscheidet.
Alle Power-Automate-Trigger-Arten auf Deutsch erklärt: automatisiert, sofort, geplant und Trigger-Bedingungen im FAQ-Glossar.
Die drei Power-Automate-Aktionslimits 6.000, 40.000 und 250.000 pro Tag erklärt: welche Lizenz welches Limit bringt.
Variablen sind das Rückgrat komplexer Power-Automate-Flows, aber falsch gesetzte Werte oder Stolperfallen in parallelen Schleifen führen schnell zu schwer auffindbaren Fehlern. NordFlux baut Ihre Flow-Logik von Grund auf sauber auf oder überarbeitet bestehende Prozesse, damit Variablen zuverlässig die richtigen Werte tragen. Im ersten Gespräch sehen wir uns Ihre Flow-Struktur an und zeigen, wo sich Fehlerquellen verstecken.