Hallo Team,
folgende Ausgangssituation: Auf einem FTP wird die Menge n an .csv Dateien abgelegt. Der Spaltenaufbau ist identisch. Da ich nur weiß, wie die Dateien benannt sind, jedoch nicht wie viele Dateien abgelegt werden, kann ich nicht mit dem FileFromFilelist-Step arbeiten.
Ich versuche mich daher nun am TextHTMLWriter und habe der Einfachheit halber erstmal mit nur einem Spreadsheet als Quelle angefangen. Mit dem u.g. Code konnte ich einen String erzeugen und per StringToFile diesen weiter verarbeiten.
Position,Bestelldatum,Bestellnummer,Artikelnummer_Haendler,Artikelanzahl,Artikel,Rechnungsbetrag,Vermittlungsgebuehr,Verkaufsgebuehr,Auszahlungsbetrag <#list spreadsheet@SpreadsheetMapper_10.getRows() as row> ${row.get("Position")},${row.get("Bestelldatum")},${row.get("Bestellnummer")},${row.get("Artikelnummer_Haendler")},${row.get("Artikelanzahl")},${row.get("Artikel")},${row.get("Rechnungsbetrag")},${row.get("Vermittlungsgebuehr")},${row.get("Verkaufsgebuehr")},${row.get("Auszahlungsbetrag")} </#list>
Ich weiß jedoch nicht, wie ich auf den Inhalt der Dateien aus dem Filelist-Output vom FTPDownload zugreifen kann. Und wie greife ich auf n Dateien zu und beende die Schleife sobald keine weitere Datei gefunden wird?
Ein Ansatz wäre vielleicht die Anzahl der Dateien zu zählen
${LOCAL_DOWLOADED_FILELISTOBJECT@FTPDownload_16.size()}
und dann einen Zähler einzubauen der von 0 bis zur Anzahl der Dateien hochzählt. Die Benennung der Dateien müsste dann vielleicht so lauten?
Testfile_+("counter"), ".csv"
Dann könnte ich jedenfalls schon mal dynamisch die Anzahl der Dateien abgreifen. Wie jedoch greife ich nun auf den Inhalt der einzelnen Dateien zu? Und wie kann ich dann nacheinander die einzelnen Inhalte in einem String zusammenführen? Per <#list> Direktive iterieren lassen?
Ich glaube der Ansatz könnte klappen, bin da aber noch zu wenig in Freemarker drin :(
Gruß,
Marc