Zeilen eines Spreadsheets jeweils einzeln an schreibenden Step übergeben?

Hallo zusammen,

wir haben Flows die vorhandene Aufträge in einem Status abrufen, prüfen ob das Datum in einem Zeitrahmen liegt, und wenn ja verschieben.


Das ist ein simpler Flow, der läuft für 200 Aufträge 90 Sekunden in etwa. Aber zwischen initialem Abruf bis hin zur Änderung darf der Status nicht intern geändert werden, weil es sonst vom Flow wieder überschrieben wird. Das klappt oft, aber nicht immer ;-)


Die egtl Verarbeitung dauert keine 10 Sekunden, fast die ganze Laufzeit geht für die schreibenden Calls bei Plenty drauf, von daher bringt es auch wenig nochmal explizit die Aufträge aus dem Endergebnis abzurufen, ob sich ihr Status geändert hat. Dann ist das kritische Zeitfenster ab diesem Zeitpunkt, und immer noch bei 80 Sekunden im Beispiel.


Einzige Lösung wäre, das wirklich pro Zeile zu verarbeiten. Erste Zeile vom Spreadsheet. Status neu prüfen, wenn noch der selbe: ändern. Erst wenn der Call durch ist die zweite Zeile verarbeiten, usw.


Ja, damit verbrauchen wir viele Calls und verlieren die Vorteile der Bulkcalls, aber damit könnten wir leben. Ich seh nur keinen Weg wie ich das so gebaut bekomm? Schleife über n Steps quasi, und die jeweilige Zeile des Spreadsheets dabei durch den Datensatz iterieren.


Jemand ne Idee oder nen besseren Lösungsvorschlag?

Danke Daniel

Diese Möglichkeit gibt es aktuell nicht.


Wäre es eine Möglichkeit die Verarbeitung in mehrere kleine "Häppchen" aufzuteilen?

Vielleicht hilft ja ein Workaround mit dem FlowExecutingStep. D.h. man verschiebt die Verarbeitungslogik (Abruf, Schreiben) in einen extra Flow und ruft diesen mehrmals von einem anderen Flow auf. Als Parameter könnte man ein Limit übergeben.


Beispiel Aufrufer:


1. FlowExecutingStep (limit=10)

2. FlowExecutingStep (limit=10)

3. FlowExecutingStep (limit=10)


In der Summe würden 30 Datensätz abgerufen und verarbeitet, aber immer nur in 10-er Blöcken.
Man muss sicher mit den Filtern bissl spielen, dass immer die noch nicht verarbeiteten Daten abgerufen werden.