Technik suchen

  • Gelber Gürtel
  • Standard
  • Tipp 148

Schleifen beim Testen mit take() kürzen

Quizfrage

Was liefert take(array, 5), wenn das Array nur drei Einträge hat?

Auflösung

  1. A) Alle drei Einträge, ohne FehlerRichtig. take() nimmt höchstens die angegebene Anzahl. Sind es weniger, kommen alle vorhandenen Einträge zurück.
  2. B) Einen Fehler, weil Einträge fehlenFalsch. take() bricht nicht ab, wenn das Array kürzer ist als die gewünschte Anzahl.
  3. C) Drei Einträge und zwei leere dazuFalsch. take() füllt nichts auf. Es schneidet nur ab, was über die Anzahl hinausgeht.

Worum es geht

Eine Schleife über Hunderte Einträge zu testen, kostet bei jedem Lauf Zeit und Aktionen. Mit take() verarbeitest du beim Testen nur die ersten Einträge. Du ersetzt die Eingabe von Apply to each durch einen Ausdruck wie take(outputs('Select'), 5). Die Schleife läuft dann genau fünfmal, egal wie gross das Array ist. Hat das Array weniger Einträge, liefert take() einfach alle, ohne Fehler. So prüfst du die Logik in der Schleife an wenigen echten Datensätzen. Stimmt alles, nimmst du take() wieder heraus und wählst die ursprüngliche Ausgabe neu aus. Der Aufbau des Flows bleibt dabei unverändert.

Der Ausdruck aus dem Tipp

take(outputs('Select'), 5)

Wann einsetzen, wann nicht

Einsetzen

Beim Testen von Schleifen über grosse Listen oder Tabellen, bevor du den Flow auf alle Daten loslässt.

Lieber nicht

Im Betrieb. Bleibt take() im Flow, verarbeitet er dauerhaft nur die ersten Einträge.

Häufigster Fehler

take() nach dem Test im Flow vergessen. Ein Hinweis in der Aktion erinnert dich daran, es wieder zu entfernen.

Lizenz

Standard Läuft ohne Premium-Connector, also mit der Lizenz aus Microsoft 365. Beleg bei Microsoft Learn: Power Automate licensing FAQ. Für deinen ganzen Flow: Lizenz-Check.

Ganzer Tipp mit Screenshots auf powerplatformtip.comPowerPlatformTip #148, auf Englisch

Teilen

Kurzadresse: powerautomate.ninja/148

Quelle: PowerPlatformTip #148, Microsoft Learn: Reference for functions in workflow expressions.