FtpRename verschiebt nicht korrekt

Hallo zusammen,

aus irgendeinem Grund scheint das Verschieben der Dateien per FtpRename nicht korrekt zu funktionieren.

Ich erhalte für einen Kunde EDI-Dateien von mehreren seiner Partner. Die Übertragungsdateien werden allerdings immer als fortlaufende Zahlenkombination geschickt und in einem Ordner auf einem FTP abgelegt, so dass eine Unterscheidung des Partners an Hand des Dateinamens nicht möglich ist.

Ich lese also in einem separaten Flow die Datei aus, indentifiziere den Partner und schreibe in einen HTMLWRITER den Ordner als Prefix, in den die Datei soll, auf den dann der jeweilige Flow für den partner zugreift.

Allerdings bekomme ich immer eine Fehlermeldung, dass das Verschieben/Umbenennen der Datei nicht möglich ist. Mache ich es ohne HTMLWRITER verschiebt er zwar, aber immer nur ins Hauptverzeichnis des FTP nicht in den mit /… genannten Ordner.

Muss ich das irgendwie anders angeben? Ich denke es ist nur ein kleines Problem, noch bin ich aber auf keine Lösung gekommen.

Danke und Grüße
Enrico

Ich vermute das ist ein Problem mit dem Ursprung. Entweder den kompletten Pfad angeben oder einen Punkt am Anfang des Pfades (./Ordner/datei.edi). Nur eine spontane Idee.

Hm,

so konnte ich es auch nicht lösen.

Noch jemand eine idee?

Kannst du ggf. mal noch ein paar Screenshots schicken? oder mal an einem konkreten Beispiel (tabellarisch) aufschreiben, damit man mal genau sieht, welcher Dateiname und Wert wann wie genau aussieht / aussehen soll.

z.B. so hier?

Dateien auf FTP

/foo/upload/datei1.csv
/foo/upload/datei2.csv

Zielverzeichnis nach Verschieben:

/foo/upload/archiv/datei1.csv
/foo/upload/archiv/datei2.csv

Was genau macht dein HTMLWriter, und welchen Wert gibt er aus?
Wo gibts du das Ergebnis des HTMLWriters rein?

Manchmal kann ein Slash an der falschen Stelle schon eine Ursache sein.

Guten Morgen,

also die Daten liegen auf einem FTP, die Daten habe ich als Verbindung gespeichert.

Datei wird geholt:

/in

  • es wird immer die älteste Datei verwendet: Beispiel: 63430561.mes

Im Mapper prüfe ich nun welcher Kunde bestellt hat und je nach Ergebnis setzte ich in eine Spalte den Wert:

/KundeX/ oder /KundeY/

Über den TextHTMLWriter hole ich mir die Spalte und nutze diesen String im Step FTPrename als „newRemoteFilenamePrefix“.

Das sieht dann so aus:

Folgende Meldung erhalte ich:

Renaming from 63430561.mes to /KundeX/63430561.mes did not work

Guten Morgen Enrico,

die Ordner (/KundeX/, /KundeY/) hast du vor der Ausführung angelegt bzw. sind vorhanden? Der FTPRename Step kann noch keine neuen Ordner erstellen.

Du kannst auch gerne mal den Debug Modus im Flow aktivieren und uns den Log per Ticket schicken. Im Log sollte jetzt auch der gesamte FTP Log enthalten sein. Vielleicht finden wir darin die Ursache für das Problem.

VG Torsten

Hallo Torsten,

den Log schicke ich dir per Ticket. Die Ordner gab es vorher schon, ja.

VG
Enrico

1 Like

Hi Enrico,

vielen Dank für die Log Datei. Kannst du bitte mal probieren folgendes im newRemoteFilenamePrefix Input zu verwenden:

..${TEMPLATE_OUTPUT_STRING@TextHTMLWriter_5!?trim}

?trim da offenbar noch ein Leerzeichen vor /KundeX/ enthalten ist und .. um aus /in den Überordner zu wechseln.

VG Torsten

1 Like

Hallo Torsten,

das war es scheinbar tatsächlich, vielen Dank für den Tipp!

VG
Enrico

1 Like