Nun gehen wir also eine Flow CSVs unbekannter Größe an.
Dafür brauchen wir 3 Variablen.
Integer, Array und Boolean.
Integer ist unser Skip Counter, Array ist unser initiales CSV Array und Boolean dient zur Prüfung ob das Array leer ist.
Wir bekommen also wieder unser CSV File und verarbeiten es als erstes mit 3 Compose und 1 Array filtern Aktion.
base64ToString(triggerBody()?[‘file’]?[‘contentBytes’])
split(outputs(‘Get_CSV’),outputs(‘Absatztrenner’))
Dann befüllen wir unsere Arrayvariable mit dem gefilterten Array.
Nun gehts in die “Do until” Aktion. Die “Do until” läuft bis die Boolean Variable true ist.
Im “Do until” nehmen wir uns nun die ersten 5000 Zeilen unserer Variable:
take(skip(variables(‘csv array’), variables(‘skipcounter’)), 5000)
Dann prüfen wir ob das Ergebnis dieser Aktion ein leeres Array ist.
empty(outputs(‘Nimm_5000_Zeilen,_überspringe_Skip_Counter_Zeilen’))
Und erhöhen im Anschluss den Skip Counter um 5000
Danach bauen wir eine Bedingung ein, dass die Folgeaktion nur ausgeführt wird, wenn das Array nicht leer ist.
Damit ist der Flow auch schon fertig.