Mehrere CSV Dateien einzelnd einlesen?

Hallo Gemeinde,

ich möchte viele CSV-Dateien, die in einem Ordner liegen, einzelnd einlesen um die Daten in eine DB zu schreiben. Dabei möchte ich die Daten korregieren! Denn ich weiß, dass die CSV Dateien eine letzte (falsche) Zeile haben, die ich entfernen möchte.

Kann ich das mit FTPDownload(FileList) und dann FTPSingleDownload in einer Schleife abarbeiten lassen?
Oder irgendwie anders - z.b. auch das ein Flow sich diese Dateien alle einzeln holt und neu woanders hinspeichert?

Wenn ich die letzte (falsche) Zeile nicht entferne, arbeitet der FTPDownload und der CSVReader nicht korrekt, wenn ich im anschließenden Mapper auf die 3 zeiligen Datensätze zugreifen möchte.
Die Daten aus der 2 Datei verschieben sich dann und es kommen falsche Werte.

Vielen Dank für eure Unterstützung und Tipps

Hallo @TuningLifestyle-CW,

hat deine Zeile irgendeinen markanten Wert? Wenn ja, könntest du den FileLineFilter Step verwenden, um diese per RegEx zu entfernen. Der FileLineFilter funktioniert allerdings nur mit einem FILE, das heißt du musst den FTPSingleDownload verwenden. Wenn du die letzte Zeile dann gefiltert hast, kannst du die CSV mit dem CSVReader einlesen.
Hier ein Beispiel wie es aussehen könnte:

Viele Grüße
Lukas

Moin @synesty-Lukas

vielen Dank für Deinen Ansatz. Hab dein Beispiel getestet und den Content dann ausgetauscht und klappt auch.
Allerdings habe ich ein Ordner mit ca. 100 Dateien, wo dieser Fehler auftreten kann.

Hast du einen Ansatz wie ich das umsetzen kann?
Einen Schleifen-Step, der von einer FileList gefüllt wird, wo dann eine Gruppe von Steps durchlaufen wird!

Vielen Dank
Henry

Moin @synesty-Lukas ,

denn gibt es wohl sowas ‚noch‘ nicht.

Ich habe es jetzt mit deinem Ansatz und 2 Flows gelöst. Allerdings sehr Ressourcen fressend.
Da auch ein Trigger nicht auf sich selbst zeigen kann, ist ein 2 Flow notwendig.
Dann dort mit IF THEN gearbeitet und es klappt .

Viele Grüße
Henry